From 6bab3c23b135f1fc534177a172ba87fea5b1f856 Mon Sep 17 00:00:00 2001 From: Shigeki Ohtsu Date: Wed, 7 Mar 2018 21:18:52 +0900 Subject: [PATCH] deps: delete files of OpenSSL-1.0.2 They are no longer necessary. Fixes: https://github.com/nodejs/node/issues/4270 PR-URL: https://github.com/nodejs/node/pull/19794 Reviewed-By: James M Snell Reviewed-By: Rod Vagg Reviewed-By: Michael Dawson --- deps/openssl/asm/Makefile | 386 - deps/openssl/asm/arm-void-gas/aes/aes-armv4.S | 1177 --- .../openssl/asm/arm-void-gas/aes/aesv8-armx.S | 754 -- .../asm/arm-void-gas/aes/bsaes-armv7.S | 2528 ----- deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S | 203 - deps/openssl/asm/arm-void-gas/bn/armv4-mont.S | 580 -- .../asm/arm-void-gas/modes/ghash-armv4.S | 528 -- .../asm/arm-void-gas/modes/ghashv8-armx.S | 230 - .../asm/arm-void-gas/sha/sha1-armv4-large.S | 1455 --- .../asm/arm-void-gas/sha/sha256-armv4.S | 2775 ------ .../asm/arm-void-gas/sha/sha512-armv4.S | 1775 ---- .../asm/arm64-linux64-gas/aes/aesv8-armx.S | 747 -- .../arm64-linux64-gas/modes/ghashv8-armx.S | 227 - .../asm/arm64-linux64-gas/sha/sha1-armv8.S | 1211 --- .../asm/arm64-linux64-gas/sha/sha256-armv8.S | 1141 --- .../asm/arm64-linux64-gas/sha/sha512-armv8.S | 1021 -- deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s | 2534 ----- .../asm/x64-elf-gas/aes/aesni-mb-x86_64.s | 1435 --- .../asm/x64-elf-gas/aes/aesni-sha1-x86_64.s | 2985 ------ .../asm/x64-elf-gas/aes/aesni-sha256-x86_64.s | 4355 --------- .../asm/x64-elf-gas/aes/aesni-x86_64.s | 3551 ------- .../asm/x64-elf-gas/aes/bsaes-x86_64.s | 2498 ----- .../asm/x64-elf-gas/aes/vpaes-x86_64.s | 827 -- deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s | 1697 ---- deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s | 1873 ---- deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s | 291 - deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s | 1166 --- .../openssl/asm/x64-elf-gas/bn/x86_64-mont5.s | 3652 -------- .../asm/x64-elf-gas/camellia/cmll-x86_64.s | 1838 ---- .../asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s | 3517 ------- deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s | 668 -- .../asm/x64-elf-gas/modes/aesni-gcm-x86_64.s | 753 -- .../asm/x64-elf-gas/modes/ghash-x86_64.s | 1789 ---- .../asm/x64-elf-gas/rc4/rc4-md5-x86_64.s | 1259 --- deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s | 615 -- .../asm/x64-elf-gas/sha/sha1-mb-x86_64.s | 7221 --------------- .../openssl/asm/x64-elf-gas/sha/sha1-x86_64.s | 5396 ----------- .../asm/x64-elf-gas/sha/sha256-mb-x86_64.s | 7902 ---------------- .../asm/x64-elf-gas/sha/sha256-x86_64.s | 5358 ----------- .../asm/x64-elf-gas/sha/sha512-x86_64.s | 5365 ----------- .../asm/x64-elf-gas/whrlpool/wp-x86_64.s | 861 -- deps/openssl/asm/x64-elf-gas/x86_64cpuid.s | 275 - .../asm/x64-macosx-gas/aes/aes-x86_64.s | 2534 ----- .../asm/x64-macosx-gas/aes/aesni-mb-x86_64.s | 1434 --- .../x64-macosx-gas/aes/aesni-sha1-x86_64.s | 2984 ------ .../x64-macosx-gas/aes/aesni-sha256-x86_64.s | 4354 --------- .../asm/x64-macosx-gas/aes/aesni-x86_64.s | 3551 ------- .../asm/x64-macosx-gas/aes/bsaes-x86_64.s | 2497 ----- .../asm/x64-macosx-gas/aes/vpaes-x86_64.s | 826 -- .../openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s | 1697 ---- .../asm/x64-macosx-gas/bn/rsaz-x86_64.s | 1873 ---- .../asm/x64-macosx-gas/bn/x86_64-gf2m.s | 291 - .../asm/x64-macosx-gas/bn/x86_64-mont.s | 1166 --- .../asm/x64-macosx-gas/bn/x86_64-mont5.s | 3652 -------- .../asm/x64-macosx-gas/camellia/cmll-x86_64.s | 1838 ---- .../x64-macosx-gas/ec/ecp_nistz256-x86_64.s | 3516 ------- .../asm/x64-macosx-gas/md5/md5-x86_64.s | 667 -- .../x64-macosx-gas/modes/aesni-gcm-x86_64.s | 753 -- .../asm/x64-macosx-gas/modes/ghash-x86_64.s | 1789 ---- .../asm/x64-macosx-gas/sha/sha1-mb-x86_64.s | 7221 --------------- .../asm/x64-macosx-gas/sha/sha1-x86_64.s | 5396 ----------- .../asm/x64-macosx-gas/sha/sha256-mb-x86_64.s | 7902 ---------------- .../asm/x64-macosx-gas/sha/sha256-x86_64.s | 5357 ----------- .../asm/x64-macosx-gas/sha/sha512-x86_64.s | 5364 ----------- .../asm/x64-macosx-gas/whrlpool/wp-x86_64.s | 861 -- deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s | 275 - .../asm/x64-win32-masm/aes/aes-x86_64.asm | 2870 ------ .../x64-win32-masm/aes/aesni-mb-x86_64.asm | 1698 ---- .../x64-win32-masm/aes/aesni-sha1-x86_64.asm | 3234 ------- .../aes/aesni-sha256-x86_64.asm | 4654 ---------- .../asm/x64-win32-masm/aes/aesni-x86_64.asm | 4035 -------- .../asm/x64-win32-masm/aes/bsaes-x86_64.asm | 2734 ------ .../asm/x64-win32-masm/aes/vpaes-x86_64.asm | 1143 --- .../asm/x64-win32-masm/bn/rsaz-avx2.asm | 1931 ---- .../asm/x64-win32-masm/bn/rsaz-x86_64.asm | 2155 ----- .../asm/x64-win32-masm/bn/x86_64-gf2m.asm | 399 - .../asm/x64-win32-masm/bn/x86_64-mont.asm | 1404 --- .../asm/x64-win32-masm/bn/x86_64-mont5.asm | 3921 -------- .../x64-win32-masm/camellia/cmll-x86_64.asm | 2099 ----- .../x64-win32-masm/ec/ecp_nistz256-x86_64.asm | 3802 -------- .../asm/x64-win32-masm/md5/md5-x86_64.asm | 778 -- .../x64-win32-masm/modes/aesni-gcm-x86_64.asm | 948 -- .../asm/x64-win32-masm/modes/ghash-x86_64.asm | 2021 ---- .../asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm | 1374 --- .../asm/x64-win32-masm/rc4/rc4-x86_64.asm | 771 -- .../asm/x64-win32-masm/sha/sha1-mb-x86_64.asm | 7533 --------------- .../asm/x64-win32-masm/sha/sha1-x86_64.asm | 5720 ------------ .../x64-win32-masm/sha/sha256-mb-x86_64.asm | 8214 ----------------- .../asm/x64-win32-masm/sha/sha256-x86_64.asm | 5640 ----------- .../asm/x64-win32-masm/sha/sha512-x86_64.asm | 5595 ----------- .../asm/x64-win32-masm/whrlpool/wp-x86_64.asm | 974 -- .../asm/x64-win32-masm/x86_64cpuid.asm | 280 - deps/openssl/asm/x86-elf-gas/aes/aes-586.s | 3244 ------- deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s | 2448 ----- deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s | 661 -- deps/openssl/asm/x86-elf-gas/bf/bf-586.s | 896 -- deps/openssl/asm/x86-elf-gas/bn/bn-586.s | 1521 --- deps/openssl/asm/x86-elf-gas/bn/co-586.s | 1254 --- deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s | 343 - deps/openssl/asm/x86-elf-gas/bn/x86-mont.s | 471 - .../asm/x86-elf-gas/camellia/cmll-x86.s | 2375 ----- deps/openssl/asm/x86-elf-gas/cast/cast-586.s | 933 -- deps/openssl/asm/x86-elf-gas/des/crypt586.s | 875 -- deps/openssl/asm/x86-elf-gas/des/des-586.s | 1838 ---- deps/openssl/asm/x86-elf-gas/md5/md5-586.s | 679 -- .../openssl/asm/x86-elf-gas/modes/ghash-x86.s | 1265 --- deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s | 372 - deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s | 1965 ---- deps/openssl/asm/x86-elf-gas/sha/sha1-586.s | 3970 -------- deps/openssl/asm/x86-elf-gas/sha/sha256-586.s | 6783 -------------- deps/openssl/asm/x86-elf-gas/sha/sha512-586.s | 2829 ------ .../openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s | 1107 --- deps/openssl/asm/x86-elf-gas/x86cpuid.s | 362 - deps/openssl/asm/x86-macosx-gas/aes/aes-586.s | 3208 ------- .../asm/x86-macosx-gas/aes/aesni-x86.s | 2412 ----- .../asm/x86-macosx-gas/aes/vpaes-x86.s | 635 -- deps/openssl/asm/x86-macosx-gas/bf/bf-586.s | 858 -- deps/openssl/asm/x86-macosx-gas/bn/bn-586.s | 1520 --- deps/openssl/asm/x86-macosx-gas/bn/co-586.s | 1246 --- deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s | 344 - deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s | 476 - .../asm/x86-macosx-gas/camellia/cmll-x86.s | 2353 ----- .../asm/x86-macosx-gas/cast/cast-586.s | 927 -- .../openssl/asm/x86-macosx-gas/des/crypt586.s | 880 -- deps/openssl/asm/x86-macosx-gas/des/des-586.s | 1822 ---- deps/openssl/asm/x86-macosx-gas/md5/md5-586.s | 677 -- .../asm/x86-macosx-gas/modes/ghash-x86.s | 1251 --- deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s | 379 - .../asm/x86-macosx-gas/ripemd/rmd-586.s | 1963 ---- .../openssl/asm/x86-macosx-gas/sha/sha1-586.s | 3966 -------- .../asm/x86-macosx-gas/sha/sha256-586.s | 6785 -------------- .../asm/x86-macosx-gas/sha/sha512-586.s | 2831 ------ .../asm/x86-macosx-gas/whrlpool/wp-mmx.s | 1105 --- deps/openssl/asm/x86-macosx-gas/x86cpuid.s | 354 - .../asm/x86-win32-masm/aes/aes-586.asm | 3232 ------- .../asm/x86-win32-masm/aes/aesni-x86.asm | 2439 ----- .../asm/x86-win32-masm/aes/vpaes-x86.asm | 662 -- deps/openssl/asm/x86-win32-masm/bf/bf-586.asm | 902 -- deps/openssl/asm/x86-win32-masm/bn/bn-586.asm | 1529 --- deps/openssl/asm/x86-win32-masm/bn/co-586.asm | 1258 --- .../asm/x86-win32-masm/bn/x86-gf2m.asm | 361 - .../asm/x86-win32-masm/bn/x86-mont.asm | 491 - .../asm/x86-win32-masm/camellia/cmll-x86.asm | 2370 ----- .../asm/x86-win32-masm/cast/cast-586.asm | 947 -- .../asm/x86-win32-masm/des/crypt586.asm | 886 -- .../asm/x86-win32-masm/des/des-586.asm | 1836 ---- .../asm/x86-win32-masm/md5/md5-586.asm | 689 -- .../asm/x86-win32-masm/modes/ghash-x86.asm | 1274 --- .../asm/x86-win32-masm/rc4/rc4-586.asm | 388 - .../asm/x86-win32-masm/ripemd/rmd-586.asm | 1975 ---- .../asm/x86-win32-masm/sha/sha1-586.asm | 3987 -------- .../asm/x86-win32-masm/sha/sha256-586.asm | 6818 -------------- .../asm/x86-win32-masm/sha/sha512-586.asm | 2849 ------ .../asm/x86-win32-masm/whrlpool/wp-mmx.asm | 1124 --- deps/openssl/asm/x86-win32-masm/x86cpuid.asm | 365 - deps/openssl/asm_obsolete/Makefile | 376 - .../asm_obsolete/arm-void-gas/aes/aes-armv4.S | 1177 --- .../arm-void-gas/aes/aesv8-armx.S | 754 -- .../arm-void-gas/aes/bsaes-armv7.S | 2528 ----- .../asm_obsolete/arm-void-gas/bn/armv4-gf2m.S | 203 - .../asm_obsolete/arm-void-gas/bn/armv4-mont.S | 580 -- .../arm-void-gas/modes/ghash-armv4.S | 528 -- .../arm-void-gas/modes/ghashv8-armx.S | 230 - .../arm-void-gas/sha/sha1-armv4-large.S | 1455 --- .../arm-void-gas/sha/sha256-armv4.S | 2775 ------ .../arm-void-gas/sha/sha512-armv4.S | 1775 ---- .../arm64-linux64-gas/aes/aesv8-armx.S | 747 -- .../arm64-linux64-gas/modes/ghashv8-armx.S | 227 - .../arm64-linux64-gas/sha/sha1-armv8.S | 1211 --- .../arm64-linux64-gas/sha/sha256-armv8.S | 1141 --- .../arm64-linux64-gas/sha/sha512-armv8.S | 1021 -- .../asm_obsolete/x64-elf-gas/aes/aes-x86_64.s | 2534 ----- .../x64-elf-gas/aes/aesni-mb-x86_64.s | 506 - .../x64-elf-gas/aes/aesni-sha1-x86_64.s | 1682 ---- .../x64-elf-gas/aes/aesni-sha256-x86_64.s | 57 - .../x64-elf-gas/aes/aesni-x86_64.s | 3551 ------- .../x64-elf-gas/aes/bsaes-x86_64.s | 2498 ----- .../x64-elf-gas/aes/vpaes-x86_64.s | 827 -- .../asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s | 25 - .../asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s | 1219 --- .../asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s | 291 - .../asm_obsolete/x64-elf-gas/bn/x86_64-mont.s | 804 -- .../x64-elf-gas/bn/x86_64-mont5.s | 2328 ----- .../x64-elf-gas/camellia/cmll-x86_64.s | 1838 ---- .../x64-elf-gas/ec/ecp_nistz256-x86_64.s | 2014 ---- .../asm_obsolete/x64-elf-gas/md5/md5-x86_64.s | 668 -- .../x64-elf-gas/modes/aesni-gcm-x86_64.s | 15 - .../x64-elf-gas/modes/ghash-x86_64.s | 1318 --- .../x64-elf-gas/rc4/rc4-md5-x86_64.s | 1259 --- .../asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s | 615 -- .../x64-elf-gas/sha/sha1-mb-x86_64.s | 2934 ------ .../x64-elf-gas/sha/sha1-x86_64.s | 2591 ------ .../x64-elf-gas/sha/sha256-mb-x86_64.s | 3258 ------- .../x64-elf-gas/sha/sha256-x86_64.s | 3049 ------ .../x64-elf-gas/sha/sha512-x86_64.s | 1783 ---- .../x64-elf-gas/whrlpool/wp-x86_64.s | 861 -- .../asm_obsolete/x64-elf-gas/x86_64cpuid.s | 275 - .../x64-macosx-gas/aes/aes-x86_64.s | 2534 ----- .../x64-macosx-gas/aes/aesni-mb-x86_64.s | 505 - .../x64-macosx-gas/aes/aesni-sha1-x86_64.s | 1681 ---- .../x64-macosx-gas/aes/aesni-sha256-x86_64.s | 57 - .../x64-macosx-gas/aes/aesni-x86_64.s | 3551 ------- .../x64-macosx-gas/aes/bsaes-x86_64.s | 2497 ----- .../x64-macosx-gas/aes/vpaes-x86_64.s | 826 -- .../x64-macosx-gas/bn/rsaz-avx2.s | 24 - .../x64-macosx-gas/bn/rsaz-x86_64.s | 1219 --- .../x64-macosx-gas/bn/x86_64-gf2m.s | 291 - .../x64-macosx-gas/bn/x86_64-mont.s | 804 -- .../x64-macosx-gas/bn/x86_64-mont5.s | 2328 ----- .../x64-macosx-gas/camellia/cmll-x86_64.s | 1838 ---- .../x64-macosx-gas/ec/ecp_nistz256-x86_64.s | 2013 ---- .../x64-macosx-gas/md5/md5-x86_64.s | 667 -- .../x64-macosx-gas/modes/aesni-gcm-x86_64.s | 14 - .../x64-macosx-gas/modes/ghash-x86_64.s | 1318 --- .../x64-macosx-gas/sha/sha1-mb-x86_64.s | 2934 ------ .../x64-macosx-gas/sha/sha1-x86_64.s | 2591 ------ .../x64-macosx-gas/sha/sha256-mb-x86_64.s | 3258 ------- .../x64-macosx-gas/sha/sha256-x86_64.s | 3048 ------ .../x64-macosx-gas/sha/sha512-x86_64.s | 1783 ---- .../x64-macosx-gas/whrlpool/wp-x86_64.s | 861 -- .../asm_obsolete/x64-macosx-gas/x86_64cpuid.s | 275 - .../x64-win32-masm/aes/aes-x86_64.asm | 2870 ------ .../x64-win32-masm/aes/aesni-mb-x86_64.asm | 689 -- .../x64-win32-masm/aes/aesni-sha1-x86_64.asm | 1888 ---- .../aes/aesni-sha256-x86_64.asm | 65 - .../x64-win32-masm/aes/aesni-x86_64.asm | 4035 -------- .../x64-win32-masm/aes/bsaes-x86_64.asm | 2734 ------ .../x64-win32-masm/aes/vpaes-x86_64.asm | 1143 --- .../x64-win32-masm/bn/rsaz-avx2.asm | 29 - .../x64-win32-masm/bn/rsaz-x86_64.asm | 1501 --- .../x64-win32-masm/bn/x86_64-gf2m.asm | 399 - .../x64-win32-masm/bn/x86_64-mont.asm | 1019 -- .../x64-win32-masm/bn/x86_64-mont5.asm | 2550 ----- .../x64-win32-masm/camellia/cmll-x86_64.asm | 2099 ----- .../x64-win32-masm/ec/ecp_nistz256-x86_64.asm | 2226 ----- .../x64-win32-masm/md5/md5-x86_64.asm | 778 -- .../x64-win32-masm/modes/aesni-gcm-x86_64.asm | 19 - .../x64-win32-masm/modes/ghash-x86_64.asm | 1510 --- .../x64-win32-masm/rc4/rc4-md5-x86_64.asm | 1374 --- .../x64-win32-masm/rc4/rc4-x86_64.asm | 771 -- .../x64-win32-masm/sha/sha1-mb-x86_64.asm | 3112 ------- .../x64-win32-masm/sha/sha1-x86_64.asm | 2850 ------ .../x64-win32-masm/sha/sha256-mb-x86_64.asm | 3436 ------- .../x64-win32-masm/sha/sha256-x86_64.asm | 3270 ------- .../x64-win32-masm/sha/sha512-x86_64.asm | 1913 ---- .../x64-win32-masm/whrlpool/wp-x86_64.asm | 974 -- .../x64-win32-masm/x86_64cpuid.asm | 280 - .../asm_obsolete/x86-elf-gas/aes/aes-586.s | 3244 ------- .../asm_obsolete/x86-elf-gas/aes/aesni-x86.s | 2448 ----- .../asm_obsolete/x86-elf-gas/aes/vpaes-x86.s | 661 -- .../asm_obsolete/x86-elf-gas/bf/bf-586.s | 896 -- .../asm_obsolete/x86-elf-gas/bn/bn-586.s | 1521 --- .../asm_obsolete/x86-elf-gas/bn/co-586.s | 1254 --- .../asm_obsolete/x86-elf-gas/bn/x86-gf2m.s | 343 - .../asm_obsolete/x86-elf-gas/bn/x86-mont.s | 471 - .../x86-elf-gas/camellia/cmll-x86.s | 2375 ----- .../asm_obsolete/x86-elf-gas/cast/cast-586.s | 933 -- .../asm_obsolete/x86-elf-gas/des/crypt586.s | 875 -- .../asm_obsolete/x86-elf-gas/des/des-586.s | 1838 ---- .../asm_obsolete/x86-elf-gas/md5/md5-586.s | 679 -- .../x86-elf-gas/modes/ghash-x86.s | 1265 --- .../asm_obsolete/x86-elf-gas/rc4/rc4-586.s | 372 - .../asm_obsolete/x86-elf-gas/ripemd/rmd-586.s | 1965 ---- .../asm_obsolete/x86-elf-gas/sha/sha1-586.s | 2795 ------ .../asm_obsolete/x86-elf-gas/sha/sha256-586.s | 4577 --------- .../asm_obsolete/x86-elf-gas/sha/sha512-586.s | 2829 ------ .../x86-elf-gas/whrlpool/wp-mmx.s | 1107 --- .../asm_obsolete/x86-elf-gas/x86cpuid.s | 362 - .../asm_obsolete/x86-macosx-gas/aes/aes-586.s | 3208 ------- .../x86-macosx-gas/aes/aesni-x86.s | 2412 ----- .../x86-macosx-gas/aes/vpaes-x86.s | 635 -- .../asm_obsolete/x86-macosx-gas/bf/bf-586.s | 858 -- .../asm_obsolete/x86-macosx-gas/bn/bn-586.s | 1520 --- .../asm_obsolete/x86-macosx-gas/bn/co-586.s | 1246 --- .../asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s | 344 - .../asm_obsolete/x86-macosx-gas/bn/x86-mont.s | 476 - .../x86-macosx-gas/camellia/cmll-x86.s | 2353 ----- .../x86-macosx-gas/cast/cast-586.s | 927 -- .../x86-macosx-gas/des/crypt586.s | 880 -- .../asm_obsolete/x86-macosx-gas/des/des-586.s | 1822 ---- .../asm_obsolete/x86-macosx-gas/md5/md5-586.s | 677 -- .../x86-macosx-gas/modes/ghash-x86.s | 1251 --- .../asm_obsolete/x86-macosx-gas/rc4/rc4-586.s | 379 - .../x86-macosx-gas/ripemd/rmd-586.s | 1963 ---- .../x86-macosx-gas/sha/sha1-586.s | 2793 ------ .../x86-macosx-gas/sha/sha256-586.s | 4579 --------- .../x86-macosx-gas/sha/sha512-586.s | 2831 ------ .../x86-macosx-gas/whrlpool/wp-mmx.s | 1105 --- .../asm_obsolete/x86-macosx-gas/x86cpuid.s | 354 - .../x86-win32-masm/aes/aes-586.asm | 3232 ------- .../x86-win32-masm/aes/aesni-x86.asm | 2439 ----- .../x86-win32-masm/aes/vpaes-x86.asm | 662 -- .../asm_obsolete/x86-win32-masm/bf/bf-586.asm | 902 -- .../asm_obsolete/x86-win32-masm/bn/bn-586.asm | 1529 --- .../asm_obsolete/x86-win32-masm/bn/co-586.asm | 1258 --- .../x86-win32-masm/bn/x86-gf2m.asm | 361 - .../x86-win32-masm/bn/x86-mont.asm | 491 - .../x86-win32-masm/camellia/cmll-x86.asm | 2370 ----- .../x86-win32-masm/cast/cast-586.asm | 947 -- .../x86-win32-masm/des/crypt586.asm | 886 -- .../x86-win32-masm/des/des-586.asm | 1836 ---- .../x86-win32-masm/md5/md5-586.asm | 689 -- .../x86-win32-masm/modes/ghash-x86.asm | 1274 --- .../x86-win32-masm/rc4/rc4-586.asm | 388 - .../x86-win32-masm/ripemd/rmd-586.asm | 1975 ---- .../x86-win32-masm/sha/sha1-586.asm | 2813 ------ .../x86-win32-masm/sha/sha256-586.asm | 4612 --------- .../x86-win32-masm/sha/sha512-586.asm | 2849 ------ .../x86-win32-masm/whrlpool/wp-mmx.asm | 1124 --- .../asm_obsolete/x86-win32-masm/x86cpuid.asm | 365 - deps/openssl/buildinf.h | 7 - deps/openssl/config/Makefile | 61 - .../config/archs/BSD-x86/opensslconf.h | 270 - .../config/archs/BSD-x86_64/opensslconf.h | 270 - .../config/archs/VC-WIN32/opensslconf.h | 271 - .../config/archs/VC-WIN64A/opensslconf.h | 271 - .../config/archs/aix-gcc/opensslconf.h | 273 - .../config/archs/aix64-gcc/opensslconf.h | 273 - .../config/archs/darwin-i386-cc/opensslconf.h | 273 - .../archs/darwin64-x86_64-cc/opensslconf.h | 273 - .../config/archs/linux-aarch64/opensslconf.h | 270 - .../config/archs/linux-armv4/opensslconf.h | 270 - .../config/archs/linux-elf/opensslconf.h | 270 - .../config/archs/linux-ppc/opensslconf.h | 270 - .../config/archs/linux-ppc64/opensslconf.h | 270 - .../config/archs/linux-x32/opensslconf.h | 270 - .../config/archs/linux-x86_64/opensslconf.h | 270 - .../config/archs/linux32-s390x/opensslconf.h | 270 - .../config/archs/linux64-s390x/opensslconf.h | 270 - .../archs/solaris-x86-gcc/opensslconf.h | 270 - .../archs/solaris64-x86_64-gcc/opensslconf.h | 270 - deps/openssl/config/opensslconf.h | 154 - deps/openssl/doc/UPGRADING.md | 361 - deps/openssl/doc/openssl_define_list.pdf | Bin 85632 -> 0 bytes deps/openssl/fips/fipscc | 15 - deps/openssl/fips/fipsld | 8 - 336 files changed, 578863 deletions(-) delete mode 100644 deps/openssl/asm/Makefile delete mode 100644 deps/openssl/asm/arm-void-gas/aes/aes-armv4.S delete mode 100644 deps/openssl/asm/arm-void-gas/aes/aesv8-armx.S delete mode 100644 deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S delete mode 100644 deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S delete mode 100644 deps/openssl/asm/arm-void-gas/bn/armv4-mont.S delete mode 100644 deps/openssl/asm/arm-void-gas/modes/ghash-armv4.S delete mode 100644 deps/openssl/asm/arm-void-gas/modes/ghashv8-armx.S delete mode 100644 deps/openssl/asm/arm-void-gas/sha/sha1-armv4-large.S delete mode 100644 deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S delete mode 100644 deps/openssl/asm/arm-void-gas/sha/sha512-armv4.S delete mode 100644 deps/openssl/asm/arm64-linux64-gas/aes/aesv8-armx.S delete mode 100644 deps/openssl/asm/arm64-linux64-gas/modes/ghashv8-armx.S delete mode 100644 deps/openssl/asm/arm64-linux64-gas/sha/sha1-armv8.S delete mode 100644 deps/openssl/asm/arm64-linux64-gas/sha/sha256-armv8.S delete mode 100644 deps/openssl/asm/arm64-linux64-gas/sha/sha512-armv8.S delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/aesni-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/aesni-sha1-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/aesni-sha256-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/aesni-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/bsaes-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/aes/vpaes-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s delete mode 100644 deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s delete mode 100644 deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s delete mode 100644 deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s delete mode 100644 deps/openssl/asm/x64-elf-gas/camellia/cmll-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/modes/aesni-gcm-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/modes/ghash-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/rc4/rc4-md5-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/sha/sha1-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/sha/sha1-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/sha/sha256-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/sha/sha256-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/sha/sha512-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/whrlpool/wp-x86_64.s delete mode 100644 deps/openssl/asm/x64-elf-gas/x86_64cpuid.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/aes-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/aesni-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/aesni-sha1-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/aesni-sha256-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/aesni-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/bsaes-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/aes/vpaes-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/bn/rsaz-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/bn/x86_64-gf2m.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/camellia/cmll-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/ec/ecp_nistz256-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/md5/md5-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/modes/aesni-gcm-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/modes/ghash-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/sha/sha1-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/sha/sha1-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/sha/sha256-mb-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/sha/sha256-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/sha/sha512-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/whrlpool/wp-x86_64.s delete mode 100644 deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/aesni-mb-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/aesni-sha1-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/aesni-sha256-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/aesni-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/bsaes-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/aes/vpaes-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/bn/rsaz-avx2.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/bn/rsaz-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/bn/x86_64-gf2m.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/camellia/cmll-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/ec/ecp_nistz256-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/md5/md5-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/modes/aesni-gcm-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/modes/ghash-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/rc4/rc4-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/sha/sha1-mb-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/sha/sha1-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/sha/sha256-mb-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/sha/sha256-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/sha/sha512-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/whrlpool/wp-x86_64.asm delete mode 100644 deps/openssl/asm/x64-win32-masm/x86_64cpuid.asm delete mode 100644 deps/openssl/asm/x86-elf-gas/aes/aes-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s delete mode 100644 deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s delete mode 100644 deps/openssl/asm/x86-elf-gas/bf/bf-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/bn/bn-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/bn/co-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s delete mode 100644 deps/openssl/asm/x86-elf-gas/bn/x86-mont.s delete mode 100644 deps/openssl/asm/x86-elf-gas/camellia/cmll-x86.s delete mode 100644 deps/openssl/asm/x86-elf-gas/cast/cast-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/des/crypt586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/des/des-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/md5/md5-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/modes/ghash-x86.s delete mode 100644 deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/sha/sha1-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/sha/sha256-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/sha/sha512-586.s delete mode 100644 deps/openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s delete mode 100644 deps/openssl/asm/x86-elf-gas/x86cpuid.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/aes/aes-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/aes/aesni-x86.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/aes/vpaes-x86.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/bf/bf-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/bn/bn-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/bn/co-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/camellia/cmll-x86.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/cast/cast-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/des/crypt586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/des/des-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/md5/md5-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/modes/ghash-x86.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/ripemd/rmd-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/sha/sha1-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/sha/sha256-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/sha/sha512-586.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/whrlpool/wp-mmx.s delete mode 100644 deps/openssl/asm/x86-macosx-gas/x86cpuid.s delete mode 100644 deps/openssl/asm/x86-win32-masm/aes/aes-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/aes/aesni-x86.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/aes/vpaes-x86.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/bf/bf-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/bn/bn-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/bn/co-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/bn/x86-gf2m.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/cast/cast-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/des/crypt586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/des/des-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/md5/md5-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/modes/ghash-x86.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/whrlpool/wp-mmx.asm delete mode 100644 deps/openssl/asm/x86-win32-masm/x86cpuid.asm delete mode 100644 deps/openssl/asm_obsolete/Makefile delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/aes/aesv8-armx.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-gf2m.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-mont.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/modes/ghash-armv4.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/modes/ghashv8-armx.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/sha/sha1-armv4-large.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S delete mode 100644 deps/openssl/asm_obsolete/arm-void-gas/sha/sha512-armv4.S delete mode 100644 deps/openssl/asm_obsolete/arm64-linux64-gas/aes/aesv8-armx.S delete mode 100644 deps/openssl/asm_obsolete/arm64-linux64-gas/modes/ghashv8-armx.S delete mode 100644 deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha1-armv8.S delete mode 100644 deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha256-armv8.S delete mode 100644 deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha512-armv8.S delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/aes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha1-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/bsaes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/aes/vpaes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/camellia/cmll-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/ec/ecp_nistz256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/md5/md5-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/modes/aesni-gcm-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/modes/ghash-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-md5-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/sha/sha512-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/whrlpool/wp-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-elf-gas/x86_64cpuid.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/aes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha1-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/bsaes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/aes/vpaes-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-avx2.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-gf2m.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/camellia/cmll-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/ec/ecp_nistz256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/md5/md5-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/modes/aesni-gcm-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/modes/ghash-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-mb-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha512-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/whrlpool/wp-x86_64.s delete mode 100644 deps/openssl/asm_obsolete/x64-macosx-gas/x86_64cpuid.s delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/aes-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-mb-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha1-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha256-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/bsaes-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/aes/vpaes-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-avx2.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-gf2m.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/camellia/cmll-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/ec/ecp_nistz256-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/md5/md5-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/modes/aesni-gcm-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/modes/ghash-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-md5-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-mb-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-mb-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/sha/sha512-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/whrlpool/wp-x86_64.asm delete mode 100644 deps/openssl/asm_obsolete/x64-win32-masm/x86_64cpuid.asm delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/aes/aes-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/aes/aesni-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/aes/vpaes-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/bf/bf-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/bn/bn-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/bn/co-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-gf2m.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-mont.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/camellia/cmll-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/cast/cast-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/des/crypt586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/des/des-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/md5/md5-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/modes/ghash-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/rc4/rc4-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/ripemd/rmd-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/sha/sha1-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/sha/sha256-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/sha/sha512-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/whrlpool/wp-mmx.s delete mode 100644 deps/openssl/asm_obsolete/x86-elf-gas/x86cpuid.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/aes/aes-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/aes/aesni-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/aes/vpaes-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/bf/bf-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/bn/bn-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/bn/co-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-mont.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/camellia/cmll-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/cast/cast-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/des/crypt586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/des/des-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/md5/md5-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/modes/ghash-x86.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/rc4/rc4-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/ripemd/rmd-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha1-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha256-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha512-586.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/whrlpool/wp-mmx.s delete mode 100644 deps/openssl/asm_obsolete/x86-macosx-gas/x86cpuid.s delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/aes/aes-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/aes/aesni-x86.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/aes/vpaes-x86.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/bf/bf-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/bn/bn-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/bn/co-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-gf2m.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-mont.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/camellia/cmll-x86.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/cast/cast-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/des/crypt586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/des/des-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/md5/md5-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/modes/ghash-x86.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/rc4/rc4-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/ripemd/rmd-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/sha/sha1-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/sha/sha256-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/sha/sha512-586.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/whrlpool/wp-mmx.asm delete mode 100644 deps/openssl/asm_obsolete/x86-win32-masm/x86cpuid.asm delete mode 100644 deps/openssl/buildinf.h delete mode 100644 deps/openssl/config/Makefile delete mode 100644 deps/openssl/config/archs/BSD-x86/opensslconf.h delete mode 100644 deps/openssl/config/archs/BSD-x86_64/opensslconf.h delete mode 100644 deps/openssl/config/archs/VC-WIN32/opensslconf.h delete mode 100644 deps/openssl/config/archs/VC-WIN64A/opensslconf.h delete mode 100644 deps/openssl/config/archs/aix-gcc/opensslconf.h delete mode 100644 deps/openssl/config/archs/aix64-gcc/opensslconf.h delete mode 100644 deps/openssl/config/archs/darwin-i386-cc/opensslconf.h delete mode 100644 deps/openssl/config/archs/darwin64-x86_64-cc/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-aarch64/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-armv4/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-elf/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-ppc/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-ppc64/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-x32/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux-x86_64/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux32-s390x/opensslconf.h delete mode 100644 deps/openssl/config/archs/linux64-s390x/opensslconf.h delete mode 100644 deps/openssl/config/archs/solaris-x86-gcc/opensslconf.h delete mode 100644 deps/openssl/config/archs/solaris64-x86_64-gcc/opensslconf.h delete mode 100644 deps/openssl/config/opensslconf.h delete mode 100644 deps/openssl/doc/UPGRADING.md delete mode 100644 deps/openssl/doc/openssl_define_list.pdf delete mode 100755 deps/openssl/fips/fipscc delete mode 100755 deps/openssl/fips/fipsld diff --git a/deps/openssl/asm/Makefile b/deps/openssl/asm/Makefile deleted file mode 100644 index 5da1f3b99c8958..00000000000000 --- a/deps/openssl/asm/Makefile +++ /dev/null @@ -1,386 +0,0 @@ -PERL ?= perl -PERL += -I../openssl/crypto/perlasm -I../openssl/crypto/bn/asm - -# OPENSSL_IA32_SSE2 flag is needed for checking the sse2 feature on ia32 -# see https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-586.pl#L56 -SSE2 = -DOPENSSL_IA32_SSE2 - -OUTPUTS = \ - x86-elf-gas/aes/aes-586.s \ - x86-elf-gas/aes/aesni-x86.s \ - x86-elf-gas/aes/vpaes-x86.s \ - x86-elf-gas/bf/bf-586.s \ - x86-elf-gas/bn/bn-586.s \ - x86-elf-gas/bn/co-586.s \ - x86-elf-gas/bn/x86-mont.s \ - x86-elf-gas/bn/x86-gf2m.s \ - x86-elf-gas/camellia/cmll-x86.s \ - x86-elf-gas/cast/cast-586.s \ - x86-elf-gas/des/crypt586.s \ - x86-elf-gas/des/des-586.s \ - x86-elf-gas/md5/md5-586.s \ - x86-elf-gas/rc4/rc4-586.s \ - x86-elf-gas/ripemd/rmd-586.s \ - x86-elf-gas/sha/sha1-586.s \ - x86-elf-gas/sha/sha256-586.s \ - x86-elf-gas/sha/sha512-586.s \ - x86-elf-gas/whrlpool/wp-mmx.s \ - x86-elf-gas/modes/ghash-x86.s \ - x86-elf-gas/x86cpuid.s \ - x64-elf-gas/aes/aes-x86_64.s \ - x64-elf-gas/aes/aesni-mb-x86_64.s \ - x64-elf-gas/aes/aesni-sha256-x86_64.s \ - x64-elf-gas/aes/aesni-x86_64.s \ - x64-elf-gas/aes/vpaes-x86_64.s \ - x64-elf-gas/aes/bsaes-x86_64.s \ - x64-elf-gas/aes/aesni-sha1-x86_64.s \ - x64-elf-gas/bn/rsaz-avx2.s \ - x64-elf-gas/bn/rsaz-x86_64.s \ - x64-elf-gas/bn/x86_64-mont.s \ - x64-elf-gas/bn/x86_64-mont5.s \ - x64-elf-gas/bn/x86_64-gf2m.s \ - x64-elf-gas/camellia/cmll-x86_64.s \ - x64-elf-gas/ec/ecp_nistz256-x86_64.s \ - x64-elf-gas/md5/md5-x86_64.s \ - x64-elf-gas/rc4/rc4-x86_64.s \ - x64-elf-gas/rc4/rc4-md5-x86_64.s \ - x64-elf-gas/sha/sha1-mb-x86_64.s \ - x64-elf-gas/sha/sha1-x86_64.s \ - x64-elf-gas/sha/sha256-mb-x86_64.s \ - x64-elf-gas/sha/sha256-x86_64.s \ - x64-elf-gas/sha/sha512-x86_64.s \ - x64-elf-gas/whrlpool/wp-x86_64.s \ - x64-elf-gas/modes/aesni-gcm-x86_64.s \ - x64-elf-gas/modes/ghash-x86_64.s \ - x64-elf-gas/x86_64cpuid.s \ - arm-void-gas/aes/aes-armv4.S \ - arm-void-gas/aes/bsaes-armv7.S \ - arm-void-gas/aes/aesv8-armx.S \ - arm-void-gas/bn/armv4-mont.S \ - arm-void-gas/bn/armv4-gf2m.S \ - arm-void-gas/sha/sha1-armv4-large.S \ - arm-void-gas/sha/sha256-armv4.S \ - arm-void-gas/sha/sha512-armv4.S \ - arm-void-gas/modes/ghash-armv4.S \ - arm-void-gas/modes/ghashv8-armx.S \ - arm64-linux64-gas/aes/aesv8-armx.S \ - arm64-linux64-gas/modes/ghashv8-armx.S \ - arm64-linux64-gas/sha/sha1-armv8.S \ - arm64-linux64-gas/sha/sha256-armv8.S \ - arm64-linux64-gas/sha/sha512-armv8.S \ - x86-macosx-gas/aes/aes-586.s \ - x86-macosx-gas/aes/aesni-x86.s \ - x86-macosx-gas/aes/vpaes-x86.s \ - x86-macosx-gas/bf/bf-586.s \ - x86-macosx-gas/bn/bn-586.s \ - x86-macosx-gas/bn/co-586.s \ - x86-macosx-gas/bn/x86-mont.s \ - x86-macosx-gas/bn/x86-gf2m.s \ - x86-macosx-gas/camellia/cmll-x86.s \ - x86-macosx-gas/cast/cast-586.s \ - x86-macosx-gas/des/crypt586.s \ - x86-macosx-gas/des/des-586.s \ - x86-macosx-gas/md5/md5-586.s \ - x86-macosx-gas/rc4/rc4-586.s \ - x86-macosx-gas/ripemd/rmd-586.s \ - x86-macosx-gas/sha/sha1-586.s \ - x86-macosx-gas/sha/sha256-586.s \ - x86-macosx-gas/sha/sha512-586.s \ - x86-macosx-gas/whrlpool/wp-mmx.s \ - x86-macosx-gas/modes/ghash-x86.s \ - x86-macosx-gas/x86cpuid.s \ - x64-macosx-gas/aes/aes-x86_64.s \ - x64-macosx-gas/aes/aesni-x86_64.s \ - x64-macosx-gas/aes/vpaes-x86_64.s \ - x64-macosx-gas/aes/aesni-mb-x86_64.s \ - x64-macosx-gas/aes/aesni-sha256-x86_64.s \ - x64-macosx-gas/aes/bsaes-x86_64.s \ - x64-macosx-gas/aes/aesni-sha1-x86_64.s \ - x64-macosx-gas/bn/rsaz-avx2.s \ - x64-macosx-gas/bn/rsaz-x86_64.s \ - x64-macosx-gas/bn/x86_64-mont.s \ - x64-macosx-gas/bn/x86_64-mont5.s \ - x64-macosx-gas/bn/x86_64-gf2m.s \ - x64-macosx-gas/camellia/cmll-x86_64.s \ - x64-macosx-gas/ec/ecp_nistz256-x86_64.s \ - x64-macosx-gas/md5/md5-x86_64.s \ - x64-macosx-gas/sha/sha1-mb-x86_64.s \ - x64-macosx-gas/sha/sha1-x86_64.s \ - x64-macosx-gas/sha/sha256-mb-x86_64.s \ - x64-macosx-gas/sha/sha256-x86_64.s \ - x64-macosx-gas/sha/sha512-x86_64.s \ - x64-macosx-gas/whrlpool/wp-x86_64.s \ - x64-macosx-gas/modes/aesni-gcm-x86_64.s \ - x64-macosx-gas/modes/ghash-x86_64.s \ - x64-macosx-gas/x86_64cpuid.s \ - x86-win32-masm/aes/aes-586.asm \ - x86-win32-masm/aes/aesni-x86.asm \ - x86-win32-masm/aes/vpaes-x86.asm \ - x86-win32-masm/bf/bf-586.asm \ - x86-win32-masm/bn/bn-586.asm \ - x86-win32-masm/bn/co-586.asm \ - x86-win32-masm/bn/x86-mont.asm \ - x86-win32-masm/bn/x86-gf2m.asm \ - x86-win32-masm/camellia/cmll-x86.asm \ - x86-win32-masm/cast/cast-586.asm \ - x86-win32-masm/des/crypt586.asm \ - x86-win32-masm/des/des-586.asm \ - x86-win32-masm/md5/md5-586.asm \ - x86-win32-masm/rc4/rc4-586.asm \ - x86-win32-masm/ripemd/rmd-586.asm \ - x86-win32-masm/sha/sha1-586.asm \ - x86-win32-masm/sha/sha256-586.asm \ - x86-win32-masm/sha/sha512-586.asm \ - x86-win32-masm/whrlpool/wp-mmx.asm \ - x86-win32-masm/modes/ghash-x86.asm \ - x86-win32-masm/x86cpuid.asm \ - x64-win32-masm/aes/aes-x86_64.asm \ - x64-win32-masm/aes/aesni-mb-x86_64.asm \ - x64-win32-masm/aes/aesni-sha256-x86_64.asm \ - x64-win32-masm/aes/aesni-x86_64.asm \ - x64-win32-masm/aes/vpaes-x86_64.asm \ - x64-win32-masm/aes/bsaes-x86_64.asm \ - x64-win32-masm/aes/aesni-sha1-x86_64.asm \ - x64-win32-masm/bn/rsaz-avx2.asm \ - x64-win32-masm/bn/rsaz-x86_64.asm \ - x64-win32-masm/bn/x86_64-mont.asm \ - x64-win32-masm/bn/x86_64-mont5.asm \ - x64-win32-masm/bn/x86_64-gf2m.asm \ - x64-win32-masm/camellia/cmll-x86_64.asm \ - x64-win32-masm/ec/ecp_nistz256-x86_64.asm \ - x64-win32-masm/md5/md5-x86_64.asm \ - x64-win32-masm/rc4/rc4-x86_64.asm \ - x64-win32-masm/rc4/rc4-md5-x86_64.asm \ - x64-win32-masm/sha/sha1-mb-x86_64.asm \ - x64-win32-masm/sha/sha1-x86_64.asm \ - x64-win32-masm/sha/sha256-mb-x86_64.asm \ - x64-win32-masm/sha/sha256-x86_64.asm \ - x64-win32-masm/sha/sha512-x86_64.asm \ - x64-win32-masm/whrlpool/wp-x86_64.asm \ - x64-win32-masm/modes/aesni-gcm-x86_64.asm \ - x64-win32-masm/modes/ghash-x86_64.asm \ - x64-win32-masm/x86_64cpuid.asm \ - -# sha512 asm files for x86_64 need 512 in the filenames for outputs -# so that we add new rules to generate sha512 asm files with -# specifying its filename in the second argument. See -# https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-x86_64.pl#L137-L149 - -x64-elf-gas/sha/sha512-%.s: - $(PERL) $< elf $@ - -x64-elf-gas/%.s: - $(PERL) $< elf > $@ - -arm-void-gas/%.S: - $(PERL) $< void > $@ - -arm64-linux64-gas/sha/sha512-%.S: - $(PERL) $< linux64 $@ - -arm64-linux64-gas/%.S: - $(PERL) $< linux64 > $@ - -x64-macosx-gas/sha/sha512-%.s: - $(PERL) $< macosx $@ - -x64-macosx-gas/%.s: - $(PERL) $< macosx > $@ - -x64-win32-masm/sha/sha512-%.asm: - $(PERL) $< masm $@ - -x64-win32-masm/%.asm: - $(PERL) $< masm > $@ - -x86-elf-gas/%.s: - $(PERL) $< elf $(SSE2) > $@ - -x86-macosx-gas/%.s: - $(PERL) $< macosx $(SSE2) > $@ - -x86-win32-masm/%.asm: - $(PERL) $< win32 $(SSE2) > $@ - -.PHONY: all outputs clean check-cc check-asm -all: check-cc check-asm outputs - -outputs: $(OUTPUTS) - # strip trailing whitespace and final blank newline - $(PERL) -pi -e 's/\s+$$/\n/; s/^\n$$// if eof' $^ - -clean: - find . -iname '*.asm' -exec rm "{}" \; - find . -iname '*.s' -exec rm "{}" \; - find . -iname '*.S' -exec rm "{}" \; - -# CC and ASM enviroments are needed to genrate asm files from perl. -# Use gcc and nasm to run on unix. See -# https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-x86_64.pl#L112-L129 - -check-cc: -ifndef CC - $(error CC is not set.) -endif - -check-asm: -ifndef ASM - $(error ASM is not set.) -endif - -x64-elf-gas/aes/aes-x86_64.s: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-elf-gas/aes/aesni-x86_64.s: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-elf-gas/aes/aesni-mb-x86_64.s: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-elf-gas/aes/aesni-sha256-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-elf-gas/aes/vpaes-x86_64.s: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-elf-gas/aes/bsaes-x86_64.s: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-elf-gas/aes/aesni-sha1-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-elf-gas/bn/rsaz-avx2.s: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-elf-gas/bn/rsaz-x86_64.s: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-elf-gas/bn/x86_64-mont.s: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-elf-gas/bn/x86_64-mont5.s: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-elf-gas/bn/x86_64-gf2m.s: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-elf-gas/camellia/cmll-x86_64.s: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-elf-gas/ec/ecp_nistz256-x86_64.s: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-elf-gas/md5/md5-x86_64.s: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-elf-gas/rc4/rc4-x86_64.s: ../openssl/crypto/rc4/asm/rc4-x86_64.pl -x64-elf-gas/rc4/rc4-md5-x86_64.s: ../openssl/crypto/rc4/asm/rc4-md5-x86_64.pl -x64-elf-gas/sha/sha1-mb-x86_64.s: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-elf-gas/sha/sha1-x86_64.s: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-elf-gas/sha/sha512-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-elf-gas/sha/sha256-mb-x86_64.s: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-elf-gas/sha/sha256-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-elf-gas/whrlpool/wp-x86_64.s: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-elf-gas/modes/aesni-gcm-x86_64.s: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-elf-gas/modes/ghash-x86_64.s: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-elf-gas/x86_64cpuid.s: ../openssl/crypto/x86_64cpuid.pl -x64-macosx-gas/aes/aes-x86_64.s: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-macosx-gas/aes/aesni-x86_64.s: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-macosx-gas/aes/vpaes-x86_64.s: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-macosx-gas/aes/aesni-mb-x86_64.s: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-macosx-gas/aes/aesni-sha256-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-macosx-gas/aes/bsaes-x86_64.s: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-macosx-gas/aes/aesni-sha1-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-macosx-gas/bn/rsaz-avx2.s: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-macosx-gas/bn/rsaz-x86_64.s: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-macosx-gas/bn/x86_64-mont.s: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-macosx-gas/bn/x86_64-mont5.s: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-macosx-gas/bn/x86_64-gf2m.s: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-macosx-gas/camellia/cmll-x86_64.s: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-macosx-gas/ec/ecp_nistz256-x86_64.s: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-macosx-gas/md5/md5-x86_64.s: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-macosx-gas/sha/sha1-x86_64.s: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-macosx-gas/sha/sha1-mb-x86_64.s: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-macosx-gas/sha/sha256-mb-x86_64.s: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-macosx-gas/sha/sha256-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-macosx-gas/sha/sha512-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-macosx-gas/whrlpool/wp-x86_64.s: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-macosx-gas/modes/aesni-gcm-x86_64.s: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-macosx-gas/modes/ghash-x86_64.s: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-macosx-gas/x86_64cpuid.s: ../openssl/crypto/x86_64cpuid.pl -x64-win32-masm/aes/aes-x86_64.asm: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-win32-masm/aes/aesni-x86_64.asm: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-win32-masm/aes/aesni-mb-x86_64.asm: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-win32-masm/aes/aesni-sha256-x86_64.asm: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-win32-masm/aes/vpaes-x86_64.asm: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-win32-masm/aes/bsaes-x86_64.asm: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-win32-masm/aes/aesni-sha1-x86_64.asm: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-win32-masm/bn/rsaz-avx2.asm: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-win32-masm/bn/rsaz-x86_64.asm: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-win32-masm/bn/x86_64-mont.asm: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-win32-masm/bn/x86_64-mont5.asm: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-win32-masm/bn/x86_64-gf2m.asm: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-win32-masm/camellia/cmll-x86_64.asm: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-win32-masm/ec/ecp_nistz256-x86_64.asm: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-win32-masm/md5/md5-x86_64.asm: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-win32-masm/rc4/rc4-x86_64.asm: ../openssl/crypto/rc4/asm/rc4-x86_64.pl -x64-win32-masm/rc4/rc4-md5-x86_64.asm: ../openssl/crypto/rc4/asm/rc4-md5-x86_64.pl -x64-win32-masm/sha/sha1-mb-x86_64.asm: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-win32-masm/sha/sha1-x86_64.asm: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-win32-masm/sha/sha256-mb-x86_64.asm: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-win32-masm/sha/sha256-x86_64.asm: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-win32-masm/sha/sha512-x86_64.asm: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-win32-masm/whrlpool/wp-x86_64.asm: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-win32-masm/modes/aesni-gcm-x86_64.asm: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-win32-masm/modes/ghash-x86_64.asm: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-win32-masm/x86_64cpuid.asm: ../openssl/crypto/x86_64cpuid.pl -x86-elf-gas/aes/aes-586.s: ../openssl/crypto/aes/asm/aes-586.pl -x86-elf-gas/aes/aesni-x86.s: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-elf-gas/aes/vpaes-x86.s: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-elf-gas/bf/bf-586.s: ../openssl/crypto/bf/asm/bf-586.pl -x86-elf-gas/bn/bn-586.s: ../openssl/crypto/bn/asm/bn-586.pl -x86-elf-gas/bn/co-586.s: ../openssl/crypto/bn/asm/co-586.pl -x86-elf-gas/bn/x86-mont.s: ../openssl/crypto/bn/asm/x86-mont.pl -x86-elf-gas/bn/x86-gf2m.s: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-elf-gas/camellia/cmll-x86.s: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-elf-gas/cast/cast-586.s: ../openssl/crypto/cast/asm/cast-586.pl -x86-elf-gas/des/crypt586.s: ../openssl/crypto/des/asm/crypt586.pl -x86-elf-gas/des/des-586.s: ../openssl/crypto/des/asm/des-586.pl -x86-elf-gas/md5/md5-586.s: ../openssl/crypto/md5/asm/md5-586.pl -x86-elf-gas/rc4/rc4-586.s: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-elf-gas/rc5/rc5-586.s: ../openssl/crypto/rc5/asm/rc5-586.pl -x86-elf-gas/ripemd/rmd-586.s: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-elf-gas/sha/sha1-586.s: ../openssl/crypto/sha/asm/sha1-586.pl -x86-elf-gas/sha/sha256-586.s: ../openssl/crypto/sha/asm/sha256-586.pl -x86-elf-gas/sha/sha512-586.s: ../openssl/crypto/sha/asm/sha512-586.pl -x86-elf-gas/whrlpool/wp-mmx.s: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-elf-gas/modes/ghash-x86.s: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-elf-gas/x86cpuid.s: ../openssl/crypto/x86cpuid.pl -x86-macosx-gas/aes/aes-586.s: ../openssl/crypto/aes/asm/aes-586.pl -x86-macosx-gas/aes/aesni-x86.s: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-macosx-gas/aes/vpaes-x86.s: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-macosx-gas/bf/bf-586.s: ../openssl/crypto/bf/asm/bf-686.pl -x86-macosx-gas/bn/bn-586.s: ../openssl/crypto/bn/asm/bn-586.pl -x86-macosx-gas/bn/co-586.s: ../openssl/crypto/bn/asm/co-586.pl -x86-macosx-gas/bn/x86-mont.s: ../openssl/crypto/bn/asm/x86-mont.pl -x86-macosx-gas/bn/x86-gf2m.s: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-macosx-gas/camellia/cmll-x86.s: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-macosx-gas/cast/cast-586.s: ../openssl/crypto/cast/asm/cast-586.pl -x86-macosx-gas/des/crypt586.s: ../openssl/crypto/des/asm/crypt586.pl -x86-macosx-gas/des/des-586.s: ../openssl/crypto/des/asm/des-586.pl -x86-macosx-gas/md5/md5-586.s: ../openssl/crypto/md5/asm/md5-586.pl -x86-macosx-gas/rc4/rc4-586.s: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-macosx-gas/rc5/rc5-586.s: ../openssl/crypto/rc5/asm/rc5-586.pl -x86-macosx-gas/ripemd/rmd-586.s: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-macosx-gas/sha/sha1-586.s: ../openssl/crypto/sha/asm/sha1-586.pl -x86-macosx-gas/sha/sha256-586.s: ../openssl/crypto/sha/asm/sha256-586.pl -x86-macosx-gas/sha/sha512-586.s: ../openssl/crypto/sha/asm/sha512-586.pl -x86-macosx-gas/whrlpool/wp-mmx.s: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-macosx-gas/modes/ghash-x86.s: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-macosx-gas/x86cpuid.s: ../openssl/crypto/x86cpuid.pl -x86-win32-masm/aes/aes-586.asm: ../openssl/crypto/aes/asm/aes-586.pl -x86-win32-masm/aes/aesni-x86.asm: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-win32-masm/aes/vpaes-x86.asm: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-win32-masm/bf/bf-586.asm: ../openssl/crypto/bf/asm/bf-586.pl -x86-win32-masm/bn/bn-586.asm: ../openssl/crypto/bn/asm/bn-586.pl -x86-win32-masm/bn/co-586.asm: ../openssl/crypto/bn/asm/co-586.pl -x86-win32-masm/bn/x86-gf2m.asm: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-win32-masm/bn/x86-mont.asm: ../openssl/crypto/bn/asm/x86-mont.pl -x86-win32-masm/camellia/cmll-x86.asm: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-win32-masm/cast/cast-586.asm: ../openssl/crypto/cast/asm/cast-586.pl -x86-win32-masm/des/crypt586.asm: ../openssl/crypto/des/asm/crypt586.pl -x86-win32-masm/des/des-586.asm: ../openssl/crypto/des/asm/des-586.pl -x86-win32-masm/md5/md5-586.asm: ../openssl/crypto/md5/asm/md5-586.pl -x86-win32-masm/rc4/rc4-586.asm: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-win32-masm/ripemd/rmd-586.asm: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-win32-masm/sha/sha1-586.asm: ../openssl/crypto/sha/asm/sha1-586.pl -x86-win32-masm/sha/sha256-586.asm: ../openssl/crypto/sha/asm/sha256-586.pl -x86-win32-masm/sha/sha512-586.asm: ../openssl/crypto/sha/asm/sha512-586.pl -x86-win32-masm/whrlpool/wp-mmx.asm: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-win32-masm/modes/ghash-x86.asm: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-win32-masm/x86cpuid.asm: ../openssl/crypto/x86cpuid.pl -arm-void-gas/aes/aes-armv4.S: ../openssl/crypto/aes/asm/aes-armv4.pl -arm-void-gas/aes/bsaes-armv7.S: ../openssl/crypto/aes/asm/bsaes-armv7.pl -arm-void-gas/aes/aesv8-armx.S: ../openssl/crypto/aes/asm/aesv8-armx.pl -arm-void-gas/bn/armv4-mont.S: ../openssl/crypto/bn/asm/armv4-mont.pl -arm-void-gas/bn/armv4-gf2m.S: ../openssl/crypto/bn/asm/armv4-gf2m.pl -arm-void-gas/sha/sha1-armv4-large.S: ../openssl/crypto/sha/asm/sha1-armv4-large.pl -arm-void-gas/sha/sha512-armv4.S: ../openssl/crypto/sha/asm/sha512-armv4.pl -arm-void-gas/sha/sha256-armv4.S: ../openssl/crypto/sha/asm/sha256-armv4.pl -arm-void-gas/modes/ghash-armv4.S: ../openssl/crypto/modes/asm/ghash-armv4.pl -arm-void-gas/modes/ghashv8-armx.S: ../openssl/crypto/modes/asm/ghashv8-armx.pl -arm64-linux64-gas/aes/aesv8-armx.S: ../openssl/crypto/aes/asm/aesv8-armx.pl -arm64-linux64-gas/modes/ghashv8-armx.S: ../openssl/crypto/modes/asm/ghashv8-armx.pl -arm64-linux64-gas/sha/sha1-armv8.S: ../openssl/crypto/sha/asm/sha1-armv8.pl -arm64-linux64-gas/sha/sha256-armv8.S: ../openssl/crypto/sha/asm/sha512-armv8.pl -arm64-linux64-gas/sha/sha512-armv8.S: ../openssl/crypto/sha/asm/sha512-armv8.pl diff --git a/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S b/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S deleted file mode 100644 index bd01abddce1d55..00000000000000 --- a/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S +++ /dev/null @@ -1,1177 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ ==================================================================== - -@ AES for ARMv4 - -@ January 2007. -@ -@ Code uses single 1K S-box and is >2 times faster than code generated -@ by gcc-3.4.1. This is thanks to unique feature of ARMv4 ISA, which -@ allows to merge logical or arithmetic operation with shift or rotate -@ in one instruction and emit combined result every cycle. The module -@ is endian-neutral. The performance is ~42 cycles/byte for 128-bit -@ key [on single-issue Xscale PXA250 core]. - -@ May 2007. -@ -@ AES_set_[en|de]crypt_key is added. - -@ July 2010. -@ -@ Rescheduling for dual-issue pipeline resulted in 12% improvement on -@ Cortex A8 core and ~25 cycles per byte processed with 128-bit key. - -@ February 2011. -@ -@ Profiler-assisted and platform-specific optimization resulted in 16% -@ improvement on Cortex A8 core and ~21.5 cycles per byte. - -#ifndef __KERNEL__ -# include "arm_arch.h" -#else -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -#endif - -.text -#if __ARM_ARCH__<7 -.code 32 -#else -.syntax unified -# ifdef __thumb2__ -.thumb -# else -.code 32 -# endif -#endif - -.type AES_Te,%object -.align 5 -AES_Te: -.word 0xc66363a5, 0xf87c7c84, 0xee777799, 0xf67b7b8d -.word 0xfff2f20d, 0xd66b6bbd, 0xde6f6fb1, 0x91c5c554 -.word 0x60303050, 0x02010103, 0xce6767a9, 0x562b2b7d -.word 0xe7fefe19, 0xb5d7d762, 0x4dababe6, 0xec76769a -.word 0x8fcaca45, 0x1f82829d, 0x89c9c940, 0xfa7d7d87 -.word 0xeffafa15, 0xb25959eb, 0x8e4747c9, 0xfbf0f00b -.word 0x41adadec, 0xb3d4d467, 0x5fa2a2fd, 0x45afafea -.word 0x239c9cbf, 0x53a4a4f7, 0xe4727296, 0x9bc0c05b -.word 0x75b7b7c2, 0xe1fdfd1c, 0x3d9393ae, 0x4c26266a -.word 0x6c36365a, 0x7e3f3f41, 0xf5f7f702, 0x83cccc4f -.word 0x6834345c, 0x51a5a5f4, 0xd1e5e534, 0xf9f1f108 -.word 0xe2717193, 0xabd8d873, 0x62313153, 0x2a15153f -.word 0x0804040c, 0x95c7c752, 0x46232365, 0x9dc3c35e -.word 0x30181828, 0x379696a1, 0x0a05050f, 0x2f9a9ab5 -.word 0x0e070709, 0x24121236, 0x1b80809b, 0xdfe2e23d -.word 0xcdebeb26, 0x4e272769, 0x7fb2b2cd, 0xea75759f -.word 0x1209091b, 0x1d83839e, 0x582c2c74, 0x341a1a2e -.word 0x361b1b2d, 0xdc6e6eb2, 0xb45a5aee, 0x5ba0a0fb -.word 0xa45252f6, 0x763b3b4d, 0xb7d6d661, 0x7db3b3ce -.word 0x5229297b, 0xdde3e33e, 0x5e2f2f71, 0x13848497 -.word 0xa65353f5, 0xb9d1d168, 0x00000000, 0xc1eded2c -.word 0x40202060, 0xe3fcfc1f, 0x79b1b1c8, 0xb65b5bed -.word 0xd46a6abe, 0x8dcbcb46, 0x67bebed9, 0x7239394b -.word 0x944a4ade, 0x984c4cd4, 0xb05858e8, 0x85cfcf4a -.word 0xbbd0d06b, 0xc5efef2a, 0x4faaaae5, 0xedfbfb16 -.word 0x864343c5, 0x9a4d4dd7, 0x66333355, 0x11858594 -.word 0x8a4545cf, 0xe9f9f910, 0x04020206, 0xfe7f7f81 -.word 0xa05050f0, 0x783c3c44, 0x259f9fba, 0x4ba8a8e3 -.word 0xa25151f3, 0x5da3a3fe, 0x804040c0, 0x058f8f8a -.word 0x3f9292ad, 0x219d9dbc, 0x70383848, 0xf1f5f504 -.word 0x63bcbcdf, 0x77b6b6c1, 0xafdada75, 0x42212163 -.word 0x20101030, 0xe5ffff1a, 0xfdf3f30e, 0xbfd2d26d -.word 0x81cdcd4c, 0x180c0c14, 0x26131335, 0xc3ecec2f -.word 0xbe5f5fe1, 0x359797a2, 0x884444cc, 0x2e171739 -.word 0x93c4c457, 0x55a7a7f2, 0xfc7e7e82, 0x7a3d3d47 -.word 0xc86464ac, 0xba5d5de7, 0x3219192b, 0xe6737395 -.word 0xc06060a0, 0x19818198, 0x9e4f4fd1, 0xa3dcdc7f -.word 0x44222266, 0x542a2a7e, 0x3b9090ab, 0x0b888883 -.word 0x8c4646ca, 0xc7eeee29, 0x6bb8b8d3, 0x2814143c -.word 0xa7dede79, 0xbc5e5ee2, 0x160b0b1d, 0xaddbdb76 -.word 0xdbe0e03b, 0x64323256, 0x743a3a4e, 0x140a0a1e -.word 0x924949db, 0x0c06060a, 0x4824246c, 0xb85c5ce4 -.word 0x9fc2c25d, 0xbdd3d36e, 0x43acacef, 0xc46262a6 -.word 0x399191a8, 0x319595a4, 0xd3e4e437, 0xf279798b -.word 0xd5e7e732, 0x8bc8c843, 0x6e373759, 0xda6d6db7 -.word 0x018d8d8c, 0xb1d5d564, 0x9c4e4ed2, 0x49a9a9e0 -.word 0xd86c6cb4, 0xac5656fa, 0xf3f4f407, 0xcfeaea25 -.word 0xca6565af, 0xf47a7a8e, 0x47aeaee9, 0x10080818 -.word 0x6fbabad5, 0xf0787888, 0x4a25256f, 0x5c2e2e72 -.word 0x381c1c24, 0x57a6a6f1, 0x73b4b4c7, 0x97c6c651 -.word 0xcbe8e823, 0xa1dddd7c, 0xe874749c, 0x3e1f1f21 -.word 0x964b4bdd, 0x61bdbddc, 0x0d8b8b86, 0x0f8a8a85 -.word 0xe0707090, 0x7c3e3e42, 0x71b5b5c4, 0xcc6666aa -.word 0x904848d8, 0x06030305, 0xf7f6f601, 0x1c0e0e12 -.word 0xc26161a3, 0x6a35355f, 0xae5757f9, 0x69b9b9d0 -.word 0x17868691, 0x99c1c158, 0x3a1d1d27, 0x279e9eb9 -.word 0xd9e1e138, 0xebf8f813, 0x2b9898b3, 0x22111133 -.word 0xd26969bb, 0xa9d9d970, 0x078e8e89, 0x339494a7 -.word 0x2d9b9bb6, 0x3c1e1e22, 0x15878792, 0xc9e9e920 -.word 0x87cece49, 0xaa5555ff, 0x50282878, 0xa5dfdf7a -.word 0x038c8c8f, 0x59a1a1f8, 0x09898980, 0x1a0d0d17 -.word 0x65bfbfda, 0xd7e6e631, 0x844242c6, 0xd06868b8 -.word 0x824141c3, 0x299999b0, 0x5a2d2d77, 0x1e0f0f11 -.word 0x7bb0b0cb, 0xa85454fc, 0x6dbbbbd6, 0x2c16163a -@ Te4[256] -.byte 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5 -.byte 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76 -.byte 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0 -.byte 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0 -.byte 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc -.byte 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15 -.byte 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a -.byte 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75 -.byte 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0 -.byte 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84 -.byte 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b -.byte 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf -.byte 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85 -.byte 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8 -.byte 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5 -.byte 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2 -.byte 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17 -.byte 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73 -.byte 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88 -.byte 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb -.byte 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c -.byte 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79 -.byte 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9 -.byte 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08 -.byte 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6 -.byte 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a -.byte 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e -.byte 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e -.byte 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94 -.byte 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf -.byte 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68 -.byte 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16 -@ rcon[] -.word 0x01000000, 0x02000000, 0x04000000, 0x08000000 -.word 0x10000000, 0x20000000, 0x40000000, 0x80000000 -.word 0x1B000000, 0x36000000, 0, 0, 0, 0, 0, 0 -.size AES_Te,.-AES_Te - -@ void AES_encrypt(const unsigned char *in, unsigned char *out, -@ const AES_KEY *key) { -.global AES_encrypt -.type AES_encrypt,%function -.align 5 -AES_encrypt: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_encrypt -#else - adr r3,. -#endif - stmdb sp!,{r1,r4-r12,lr} - mov r12,r0 @ inp - mov r11,r2 - sub r10,r3,#AES_encrypt-AES_Te @ Te -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - orr r3,r3,r5,lsl#16 - orr r3,r3,r6,lsl#24 -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif -#endif - bl _armv4_AES_encrypt - - ldr r12,[sp],#4 @ pop out -#if __ARM_ARCH__>=7 -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r12,#0] - str r1,[r12,#4] - str r2,[r12,#8] - str r3,[r12,#12] -#else - mov r4,r0,lsr#24 @ write output in endian-neutral - mov r5,r0,lsr#16 @ manner... - mov r6,r0,lsr#8 - strb r4,[r12,#0] - strb r5,[r12,#1] - mov r4,r1,lsr#24 - strb r6,[r12,#2] - mov r5,r1,lsr#16 - strb r0,[r12,#3] - mov r6,r1,lsr#8 - strb r4,[r12,#4] - strb r5,[r12,#5] - mov r4,r2,lsr#24 - strb r6,[r12,#6] - mov r5,r2,lsr#16 - strb r1,[r12,#7] - mov r6,r2,lsr#8 - strb r4,[r12,#8] - strb r5,[r12,#9] - mov r4,r3,lsr#24 - strb r6,[r12,#10] - mov r5,r3,lsr#16 - strb r2,[r12,#11] - mov r6,r3,lsr#8 - strb r4,[r12,#12] - strb r5,[r12,#13] - strb r6,[r12,#14] - strb r3,[r12,#15] -#endif -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_encrypt,.-AES_encrypt - -.type _armv4_AES_encrypt,%function -.align 2 -_armv4_AES_encrypt: - str lr,[sp,#-4]! @ push lr - ldmia r11!,{r4-r7} - eor r0,r0,r4 - ldr r12,[r11,#240-16] - eor r1,r1,r5 - eor r2,r2,r6 - eor r3,r3,r7 - sub r12,r12,#1 - mov lr,#255 - - and r7,lr,r0 - and r8,lr,r0,lsr#8 - and r9,lr,r0,lsr#16 - mov r0,r0,lsr#24 -.Lenc_loop: - ldr r4,[r10,r7,lsl#2] @ Te3[s0>>0] - and r7,lr,r1,lsr#16 @ i0 - ldr r5,[r10,r8,lsl#2] @ Te2[s0>>8] - and r8,lr,r1 - ldr r6,[r10,r9,lsl#2] @ Te1[s0>>16] - and r9,lr,r1,lsr#8 - ldr r0,[r10,r0,lsl#2] @ Te0[s0>>24] - mov r1,r1,lsr#24 - - ldr r7,[r10,r7,lsl#2] @ Te1[s1>>16] - ldr r8,[r10,r8,lsl#2] @ Te3[s1>>0] - ldr r9,[r10,r9,lsl#2] @ Te2[s1>>8] - eor r0,r0,r7,ror#8 - ldr r1,[r10,r1,lsl#2] @ Te0[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r5,r8,ror#8 - and r8,lr,r2,lsr#16 @ i1 - eor r6,r6,r9,ror#8 - and r9,lr,r2 - ldr r7,[r10,r7,lsl#2] @ Te2[s2>>8] - eor r1,r1,r4,ror#24 - ldr r8,[r10,r8,lsl#2] @ Te1[s2>>16] - mov r2,r2,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Te3[s2>>0] - eor r0,r0,r7,ror#16 - ldr r2,[r10,r2,lsl#2] @ Te0[s2>>24] - and r7,lr,r3 @ i0 - eor r1,r1,r8,ror#8 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r6,r9,ror#16 - and r9,lr,r3,lsr#16 @ i2 - ldr r7,[r10,r7,lsl#2] @ Te3[s3>>0] - eor r2,r2,r5,ror#16 - ldr r8,[r10,r8,lsl#2] @ Te2[s3>>8] - mov r3,r3,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Te1[s3>>16] - eor r0,r0,r7,ror#24 - ldr r7,[r11],#16 - eor r1,r1,r8,ror#16 - ldr r3,[r10,r3,lsl#2] @ Te0[s3>>24] - eor r2,r2,r9,ror#8 - ldr r4,[r11,#-12] - eor r3,r3,r6,ror#8 - - ldr r5,[r11,#-8] - eor r0,r0,r7 - ldr r6,[r11,#-4] - and r7,lr,r0 - eor r1,r1,r4 - and r8,lr,r0,lsr#8 - eor r2,r2,r5 - and r9,lr,r0,lsr#16 - eor r3,r3,r6 - mov r0,r0,lsr#24 - - subs r12,r12,#1 - bne .Lenc_loop - - add r10,r10,#2 - - ldrb r4,[r10,r7,lsl#2] @ Te4[s0>>0] - and r7,lr,r1,lsr#16 @ i0 - ldrb r5,[r10,r8,lsl#2] @ Te4[s0>>8] - and r8,lr,r1 - ldrb r6,[r10,r9,lsl#2] @ Te4[s0>>16] - and r9,lr,r1,lsr#8 - ldrb r0,[r10,r0,lsl#2] @ Te4[s0>>24] - mov r1,r1,lsr#24 - - ldrb r7,[r10,r7,lsl#2] @ Te4[s1>>16] - ldrb r8,[r10,r8,lsl#2] @ Te4[s1>>0] - ldrb r9,[r10,r9,lsl#2] @ Te4[s1>>8] - eor r0,r7,r0,lsl#8 - ldrb r1,[r10,r1,lsl#2] @ Te4[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r8,r5,lsl#8 - and r8,lr,r2,lsr#16 @ i1 - eor r6,r9,r6,lsl#8 - and r9,lr,r2 - ldrb r7,[r10,r7,lsl#2] @ Te4[s2>>8] - eor r1,r4,r1,lsl#24 - ldrb r8,[r10,r8,lsl#2] @ Te4[s2>>16] - mov r2,r2,lsr#24 - - ldrb r9,[r10,r9,lsl#2] @ Te4[s2>>0] - eor r0,r7,r0,lsl#8 - ldrb r2,[r10,r2,lsl#2] @ Te4[s2>>24] - and r7,lr,r3 @ i0 - eor r1,r1,r8,lsl#16 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r9,r6,lsl#8 - and r9,lr,r3,lsr#16 @ i2 - ldrb r7,[r10,r7,lsl#2] @ Te4[s3>>0] - eor r2,r5,r2,lsl#24 - ldrb r8,[r10,r8,lsl#2] @ Te4[s3>>8] - mov r3,r3,lsr#24 - - ldrb r9,[r10,r9,lsl#2] @ Te4[s3>>16] - eor r0,r7,r0,lsl#8 - ldr r7,[r11,#0] - ldrb r3,[r10,r3,lsl#2] @ Te4[s3>>24] - eor r1,r1,r8,lsl#8 - ldr r4,[r11,#4] - eor r2,r2,r9,lsl#16 - ldr r5,[r11,#8] - eor r3,r6,r3,lsl#24 - ldr r6,[r11,#12] - - eor r0,r0,r7 - eor r1,r1,r4 - eor r2,r2,r5 - eor r3,r3,r6 - - sub r10,r10,#2 - ldr pc,[sp],#4 @ pop and return -.size _armv4_AES_encrypt,.-_armv4_AES_encrypt - -.global private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,%function -.align 5 -private_AES_set_encrypt_key: -_armv4_AES_set_encrypt_key: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_set_encrypt_key -#else - adr r3,. -#endif - teq r0,#0 -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - moveq r0,#-1 - beq .Labrt - teq r2,#0 -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - moveq r0,#-1 - beq .Labrt - - teq r1,#128 - beq .Lok - teq r1,#192 - beq .Lok - teq r1,#256 -#if __ARM_ARCH__>=7 - itt ne @ Thumb2 thing, sanity check in ARM -#endif - movne r0,#-1 - bne .Labrt - -.Lok: stmdb sp!,{r4-r12,lr} - sub r10,r3,#_armv4_AES_set_encrypt_key-AES_Te-1024 @ Te4 - - mov r12,r0 @ inp - mov lr,r1 @ bits - mov r11,r2 @ key - -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - str r0,[r11],#16 - orr r3,r3,r5,lsl#16 - str r1,[r11,#-12] - orr r3,r3,r6,lsl#24 - str r2,[r11,#-8] - str r3,[r11,#-4] -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r11],#16 - str r1,[r11,#-12] - str r2,[r11,#-8] - str r3,[r11,#-4] -#endif - - teq lr,#128 - bne .Lnot128 - mov r12,#10 - str r12,[r11,#240-16] - add r6,r10,#256 @ rcon - mov lr,#255 - -.L128_loop: - and r5,lr,r3,lsr#24 - and r7,lr,r3,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r3,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r3 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r5,r5,r4 - eor r0,r0,r5 @ rk[4]=rk[0]^... - eor r1,r1,r0 @ rk[5]=rk[1]^rk[4] - str r0,[r11],#16 - eor r2,r2,r1 @ rk[6]=rk[2]^rk[5] - str r1,[r11,#-12] - eor r3,r3,r2 @ rk[7]=rk[3]^rk[6] - str r2,[r11,#-8] - subs r12,r12,#1 - str r3,[r11,#-4] - bne .L128_loop - sub r2,r11,#176 - b .Ldone - -.Lnot128: -#if __ARM_ARCH__<7 - ldrb r8,[r12,#19] - ldrb r4,[r12,#18] - ldrb r5,[r12,#17] - ldrb r6,[r12,#16] - orr r8,r8,r4,lsl#8 - ldrb r9,[r12,#23] - orr r8,r8,r5,lsl#16 - ldrb r4,[r12,#22] - orr r8,r8,r6,lsl#24 - ldrb r5,[r12,#21] - ldrb r6,[r12,#20] - orr r9,r9,r4,lsl#8 - orr r9,r9,r5,lsl#16 - str r8,[r11],#8 - orr r9,r9,r6,lsl#24 - str r9,[r11,#-4] -#else - ldr r8,[r12,#16] - ldr r9,[r12,#20] -#ifdef __ARMEL__ - rev r8,r8 - rev r9,r9 -#endif - str r8,[r11],#8 - str r9,[r11,#-4] -#endif - - teq lr,#192 - bne .Lnot192 - mov r12,#12 - str r12,[r11,#240-24] - add r6,r10,#256 @ rcon - mov lr,#255 - mov r12,#8 - -.L192_loop: - and r5,lr,r9,lsr#24 - and r7,lr,r9,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r9,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r9 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r9,r5,r4 - eor r0,r0,r9 @ rk[6]=rk[0]^... - eor r1,r1,r0 @ rk[7]=rk[1]^rk[6] - str r0,[r11],#24 - eor r2,r2,r1 @ rk[8]=rk[2]^rk[7] - str r1,[r11,#-20] - eor r3,r3,r2 @ rk[9]=rk[3]^rk[8] - str r2,[r11,#-16] - subs r12,r12,#1 - str r3,[r11,#-12] -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - subeq r2,r11,#216 - beq .Ldone - - ldr r7,[r11,#-32] - ldr r8,[r11,#-28] - eor r7,r7,r3 @ rk[10]=rk[4]^rk[9] - eor r9,r8,r7 @ rk[11]=rk[5]^rk[10] - str r7,[r11,#-8] - str r9,[r11,#-4] - b .L192_loop - -.Lnot192: -#if __ARM_ARCH__<7 - ldrb r8,[r12,#27] - ldrb r4,[r12,#26] - ldrb r5,[r12,#25] - ldrb r6,[r12,#24] - orr r8,r8,r4,lsl#8 - ldrb r9,[r12,#31] - orr r8,r8,r5,lsl#16 - ldrb r4,[r12,#30] - orr r8,r8,r6,lsl#24 - ldrb r5,[r12,#29] - ldrb r6,[r12,#28] - orr r9,r9,r4,lsl#8 - orr r9,r9,r5,lsl#16 - str r8,[r11],#8 - orr r9,r9,r6,lsl#24 - str r9,[r11,#-4] -#else - ldr r8,[r12,#24] - ldr r9,[r12,#28] -#ifdef __ARMEL__ - rev r8,r8 - rev r9,r9 -#endif - str r8,[r11],#8 - str r9,[r11,#-4] -#endif - - mov r12,#14 - str r12,[r11,#240-32] - add r6,r10,#256 @ rcon - mov lr,#255 - mov r12,#7 - -.L256_loop: - and r5,lr,r9,lsr#24 - and r7,lr,r9,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r9,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r9 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r9,r5,r4 - eor r0,r0,r9 @ rk[8]=rk[0]^... - eor r1,r1,r0 @ rk[9]=rk[1]^rk[8] - str r0,[r11],#32 - eor r2,r2,r1 @ rk[10]=rk[2]^rk[9] - str r1,[r11,#-28] - eor r3,r3,r2 @ rk[11]=rk[3]^rk[10] - str r2,[r11,#-24] - subs r12,r12,#1 - str r3,[r11,#-20] -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - subeq r2,r11,#256 - beq .Ldone - - and r5,lr,r3 - and r7,lr,r3,lsr#8 - ldrb r5,[r10,r5] - and r8,lr,r3,lsr#16 - ldrb r7,[r10,r7] - and r9,lr,r3,lsr#24 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#8 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r11,#-48] - orr r5,r5,r9,lsl#24 - - ldr r7,[r11,#-44] - ldr r8,[r11,#-40] - eor r4,r4,r5 @ rk[12]=rk[4]^... - ldr r9,[r11,#-36] - eor r7,r7,r4 @ rk[13]=rk[5]^rk[12] - str r4,[r11,#-16] - eor r8,r8,r7 @ rk[14]=rk[6]^rk[13] - str r7,[r11,#-12] - eor r9,r9,r8 @ rk[15]=rk[7]^rk[14] - str r8,[r11,#-8] - str r9,[r11,#-4] - b .L256_loop - -.align 2 -.Ldone: mov r0,#0 - ldmia sp!,{r4-r12,lr} -.Labrt: -#if __ARM_ARCH__>=5 - bx lr @ .word 0xe12fff1e -#else - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size private_AES_set_encrypt_key,.-private_AES_set_encrypt_key - -.global private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,%function -.align 5 -private_AES_set_decrypt_key: - str lr,[sp,#-4]! @ push lr - bl _armv4_AES_set_encrypt_key - teq r0,#0 - ldr lr,[sp],#4 @ pop lr - bne .Labrt - - mov r0,r2 @ AES_set_encrypt_key preserves r2, - mov r1,r2 @ which is AES_KEY *key - b _armv4_AES_set_enc2dec_key -.size private_AES_set_decrypt_key,.-private_AES_set_decrypt_key - -@ void AES_set_enc2dec_key(const AES_KEY *inp,AES_KEY *out) -.global AES_set_enc2dec_key -.type AES_set_enc2dec_key,%function -.align 5 -AES_set_enc2dec_key: -_armv4_AES_set_enc2dec_key: - stmdb sp!,{r4-r12,lr} - - ldr r12,[r0,#240] - mov r7,r0 @ input - add r8,r0,r12,lsl#4 - mov r11,r1 @ ouput - add r10,r1,r12,lsl#4 - str r12,[r1,#240] - -.Linv: ldr r0,[r7],#16 - ldr r1,[r7,#-12] - ldr r2,[r7,#-8] - ldr r3,[r7,#-4] - ldr r4,[r8],#-16 - ldr r5,[r8,#16+4] - ldr r6,[r8,#16+8] - ldr r9,[r8,#16+12] - str r0,[r10],#-16 - str r1,[r10,#16+4] - str r2,[r10,#16+8] - str r3,[r10,#16+12] - str r4,[r11],#16 - str r5,[r11,#-12] - str r6,[r11,#-8] - str r9,[r11,#-4] - teq r7,r8 - bne .Linv - - ldr r0,[r7] - ldr r1,[r7,#4] - ldr r2,[r7,#8] - ldr r3,[r7,#12] - str r0,[r11] - str r1,[r11,#4] - str r2,[r11,#8] - str r3,[r11,#12] - sub r11,r11,r12,lsl#3 - ldr r0,[r11,#16]! @ prefetch tp1 - mov r7,#0x80 - mov r8,#0x1b - orr r7,r7,#0x8000 - orr r8,r8,#0x1b00 - orr r7,r7,r7,lsl#16 - orr r8,r8,r8,lsl#16 - sub r12,r12,#1 - mvn r9,r7 - mov r12,r12,lsl#2 @ (rounds-1)*4 - -.Lmix: and r4,r0,r7 - and r1,r0,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r1,r4,r1,lsl#1 @ tp2 - - and r4,r1,r7 - and r2,r1,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r2,r4,r2,lsl#1 @ tp4 - - and r4,r2,r7 - and r3,r2,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r3,r4,r3,lsl#1 @ tp8 - - eor r4,r1,r2 - eor r5,r0,r3 @ tp9 - eor r4,r4,r3 @ tpe - eor r4,r4,r1,ror#24 - eor r4,r4,r5,ror#24 @ ^= ROTATE(tpb=tp9^tp2,8) - eor r4,r4,r2,ror#16 - eor r4,r4,r5,ror#16 @ ^= ROTATE(tpd=tp9^tp4,16) - eor r4,r4,r5,ror#8 @ ^= ROTATE(tp9,24) - - ldr r0,[r11,#4] @ prefetch tp1 - str r4,[r11],#4 - subs r12,r12,#1 - bne .Lmix - - mov r0,#0 -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_set_enc2dec_key,.-AES_set_enc2dec_key - -.type AES_Td,%object -.align 5 -AES_Td: -.word 0x51f4a750, 0x7e416553, 0x1a17a4c3, 0x3a275e96 -.word 0x3bab6bcb, 0x1f9d45f1, 0xacfa58ab, 0x4be30393 -.word 0x2030fa55, 0xad766df6, 0x88cc7691, 0xf5024c25 -.word 0x4fe5d7fc, 0xc52acbd7, 0x26354480, 0xb562a38f -.word 0xdeb15a49, 0x25ba1b67, 0x45ea0e98, 0x5dfec0e1 -.word 0xc32f7502, 0x814cf012, 0x8d4697a3, 0x6bd3f9c6 -.word 0x038f5fe7, 0x15929c95, 0xbf6d7aeb, 0x955259da -.word 0xd4be832d, 0x587421d3, 0x49e06929, 0x8ec9c844 -.word 0x75c2896a, 0xf48e7978, 0x99583e6b, 0x27b971dd -.word 0xbee14fb6, 0xf088ad17, 0xc920ac66, 0x7dce3ab4 -.word 0x63df4a18, 0xe51a3182, 0x97513360, 0x62537f45 -.word 0xb16477e0, 0xbb6bae84, 0xfe81a01c, 0xf9082b94 -.word 0x70486858, 0x8f45fd19, 0x94de6c87, 0x527bf8b7 -.word 0xab73d323, 0x724b02e2, 0xe31f8f57, 0x6655ab2a -.word 0xb2eb2807, 0x2fb5c203, 0x86c57b9a, 0xd33708a5 -.word 0x302887f2, 0x23bfa5b2, 0x02036aba, 0xed16825c -.word 0x8acf1c2b, 0xa779b492, 0xf307f2f0, 0x4e69e2a1 -.word 0x65daf4cd, 0x0605bed5, 0xd134621f, 0xc4a6fe8a -.word 0x342e539d, 0xa2f355a0, 0x058ae132, 0xa4f6eb75 -.word 0x0b83ec39, 0x4060efaa, 0x5e719f06, 0xbd6e1051 -.word 0x3e218af9, 0x96dd063d, 0xdd3e05ae, 0x4de6bd46 -.word 0x91548db5, 0x71c45d05, 0x0406d46f, 0x605015ff -.word 0x1998fb24, 0xd6bde997, 0x894043cc, 0x67d99e77 -.word 0xb0e842bd, 0x07898b88, 0xe7195b38, 0x79c8eedb -.word 0xa17c0a47, 0x7c420fe9, 0xf8841ec9, 0x00000000 -.word 0x09808683, 0x322bed48, 0x1e1170ac, 0x6c5a724e -.word 0xfd0efffb, 0x0f853856, 0x3daed51e, 0x362d3927 -.word 0x0a0fd964, 0x685ca621, 0x9b5b54d1, 0x24362e3a -.word 0x0c0a67b1, 0x9357e70f, 0xb4ee96d2, 0x1b9b919e -.word 0x80c0c54f, 0x61dc20a2, 0x5a774b69, 0x1c121a16 -.word 0xe293ba0a, 0xc0a02ae5, 0x3c22e043, 0x121b171d -.word 0x0e090d0b, 0xf28bc7ad, 0x2db6a8b9, 0x141ea9c8 -.word 0x57f11985, 0xaf75074c, 0xee99ddbb, 0xa37f60fd -.word 0xf701269f, 0x5c72f5bc, 0x44663bc5, 0x5bfb7e34 -.word 0x8b432976, 0xcb23c6dc, 0xb6edfc68, 0xb8e4f163 -.word 0xd731dcca, 0x42638510, 0x13972240, 0x84c61120 -.word 0x854a247d, 0xd2bb3df8, 0xaef93211, 0xc729a16d -.word 0x1d9e2f4b, 0xdcb230f3, 0x0d8652ec, 0x77c1e3d0 -.word 0x2bb3166c, 0xa970b999, 0x119448fa, 0x47e96422 -.word 0xa8fc8cc4, 0xa0f03f1a, 0x567d2cd8, 0x223390ef -.word 0x87494ec7, 0xd938d1c1, 0x8ccaa2fe, 0x98d40b36 -.word 0xa6f581cf, 0xa57ade28, 0xdab78e26, 0x3fadbfa4 -.word 0x2c3a9de4, 0x5078920d, 0x6a5fcc9b, 0x547e4662 -.word 0xf68d13c2, 0x90d8b8e8, 0x2e39f75e, 0x82c3aff5 -.word 0x9f5d80be, 0x69d0937c, 0x6fd52da9, 0xcf2512b3 -.word 0xc8ac993b, 0x10187da7, 0xe89c636e, 0xdb3bbb7b -.word 0xcd267809, 0x6e5918f4, 0xec9ab701, 0x834f9aa8 -.word 0xe6956e65, 0xaaffe67e, 0x21bccf08, 0xef15e8e6 -.word 0xbae79bd9, 0x4a6f36ce, 0xea9f09d4, 0x29b07cd6 -.word 0x31a4b2af, 0x2a3f2331, 0xc6a59430, 0x35a266c0 -.word 0x744ebc37, 0xfc82caa6, 0xe090d0b0, 0x33a7d815 -.word 0xf104984a, 0x41ecdaf7, 0x7fcd500e, 0x1791f62f -.word 0x764dd68d, 0x43efb04d, 0xccaa4d54, 0xe49604df -.word 0x9ed1b5e3, 0x4c6a881b, 0xc12c1fb8, 0x4665517f -.word 0x9d5eea04, 0x018c355d, 0xfa877473, 0xfb0b412e -.word 0xb3671d5a, 0x92dbd252, 0xe9105633, 0x6dd64713 -.word 0x9ad7618c, 0x37a10c7a, 0x59f8148e, 0xeb133c89 -.word 0xcea927ee, 0xb761c935, 0xe11ce5ed, 0x7a47b13c -.word 0x9cd2df59, 0x55f2733f, 0x1814ce79, 0x73c737bf -.word 0x53f7cdea, 0x5ffdaa5b, 0xdf3d6f14, 0x7844db86 -.word 0xcaaff381, 0xb968c43e, 0x3824342c, 0xc2a3405f -.word 0x161dc372, 0xbce2250c, 0x283c498b, 0xff0d9541 -.word 0x39a80171, 0x080cb3de, 0xd8b4e49c, 0x6456c190 -.word 0x7bcb8461, 0xd532b670, 0x486c5c74, 0xd0b85742 -@ Td4[256] -.byte 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38 -.byte 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb -.byte 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87 -.byte 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb -.byte 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d -.byte 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e -.byte 0x08, 0x2e, 0xa1, 0x66, 0x28, 0xd9, 0x24, 0xb2 -.byte 0x76, 0x5b, 0xa2, 0x49, 0x6d, 0x8b, 0xd1, 0x25 -.byte 0x72, 0xf8, 0xf6, 0x64, 0x86, 0x68, 0x98, 0x16 -.byte 0xd4, 0xa4, 0x5c, 0xcc, 0x5d, 0x65, 0xb6, 0x92 -.byte 0x6c, 0x70, 0x48, 0x50, 0xfd, 0xed, 0xb9, 0xda -.byte 0x5e, 0x15, 0x46, 0x57, 0xa7, 0x8d, 0x9d, 0x84 -.byte 0x90, 0xd8, 0xab, 0x00, 0x8c, 0xbc, 0xd3, 0x0a -.byte 0xf7, 0xe4, 0x58, 0x05, 0xb8, 0xb3, 0x45, 0x06 -.byte 0xd0, 0x2c, 0x1e, 0x8f, 0xca, 0x3f, 0x0f, 0x02 -.byte 0xc1, 0xaf, 0xbd, 0x03, 0x01, 0x13, 0x8a, 0x6b -.byte 0x3a, 0x91, 0x11, 0x41, 0x4f, 0x67, 0xdc, 0xea -.byte 0x97, 0xf2, 0xcf, 0xce, 0xf0, 0xb4, 0xe6, 0x73 -.byte 0x96, 0xac, 0x74, 0x22, 0xe7, 0xad, 0x35, 0x85 -.byte 0xe2, 0xf9, 0x37, 0xe8, 0x1c, 0x75, 0xdf, 0x6e -.byte 0x47, 0xf1, 0x1a, 0x71, 0x1d, 0x29, 0xc5, 0x89 -.byte 0x6f, 0xb7, 0x62, 0x0e, 0xaa, 0x18, 0xbe, 0x1b -.byte 0xfc, 0x56, 0x3e, 0x4b, 0xc6, 0xd2, 0x79, 0x20 -.byte 0x9a, 0xdb, 0xc0, 0xfe, 0x78, 0xcd, 0x5a, 0xf4 -.byte 0x1f, 0xdd, 0xa8, 0x33, 0x88, 0x07, 0xc7, 0x31 -.byte 0xb1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xec, 0x5f -.byte 0x60, 0x51, 0x7f, 0xa9, 0x19, 0xb5, 0x4a, 0x0d -.byte 0x2d, 0xe5, 0x7a, 0x9f, 0x93, 0xc9, 0x9c, 0xef -.byte 0xa0, 0xe0, 0x3b, 0x4d, 0xae, 0x2a, 0xf5, 0xb0 -.byte 0xc8, 0xeb, 0xbb, 0x3c, 0x83, 0x53, 0x99, 0x61 -.byte 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26 -.byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d -.size AES_Td,.-AES_Td - -@ void AES_decrypt(const unsigned char *in, unsigned char *out, -@ const AES_KEY *key) { -.global AES_decrypt -.type AES_decrypt,%function -.align 5 -AES_decrypt: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_decrypt -#else - adr r3,. -#endif - stmdb sp!,{r1,r4-r12,lr} - mov r12,r0 @ inp - mov r11,r2 - sub r10,r3,#AES_decrypt-AES_Td @ Td -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - orr r3,r3,r5,lsl#16 - orr r3,r3,r6,lsl#24 -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif -#endif - bl _armv4_AES_decrypt - - ldr r12,[sp],#4 @ pop out -#if __ARM_ARCH__>=7 -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r12,#0] - str r1,[r12,#4] - str r2,[r12,#8] - str r3,[r12,#12] -#else - mov r4,r0,lsr#24 @ write output in endian-neutral - mov r5,r0,lsr#16 @ manner... - mov r6,r0,lsr#8 - strb r4,[r12,#0] - strb r5,[r12,#1] - mov r4,r1,lsr#24 - strb r6,[r12,#2] - mov r5,r1,lsr#16 - strb r0,[r12,#3] - mov r6,r1,lsr#8 - strb r4,[r12,#4] - strb r5,[r12,#5] - mov r4,r2,lsr#24 - strb r6,[r12,#6] - mov r5,r2,lsr#16 - strb r1,[r12,#7] - mov r6,r2,lsr#8 - strb r4,[r12,#8] - strb r5,[r12,#9] - mov r4,r3,lsr#24 - strb r6,[r12,#10] - mov r5,r3,lsr#16 - strb r2,[r12,#11] - mov r6,r3,lsr#8 - strb r4,[r12,#12] - strb r5,[r12,#13] - strb r6,[r12,#14] - strb r3,[r12,#15] -#endif -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_decrypt,.-AES_decrypt - -.type _armv4_AES_decrypt,%function -.align 2 -_armv4_AES_decrypt: - str lr,[sp,#-4]! @ push lr - ldmia r11!,{r4-r7} - eor r0,r0,r4 - ldr r12,[r11,#240-16] - eor r1,r1,r5 - eor r2,r2,r6 - eor r3,r3,r7 - sub r12,r12,#1 - mov lr,#255 - - and r7,lr,r0,lsr#16 - and r8,lr,r0,lsr#8 - and r9,lr,r0 - mov r0,r0,lsr#24 -.Ldec_loop: - ldr r4,[r10,r7,lsl#2] @ Td1[s0>>16] - and r7,lr,r1 @ i0 - ldr r5,[r10,r8,lsl#2] @ Td2[s0>>8] - and r8,lr,r1,lsr#16 - ldr r6,[r10,r9,lsl#2] @ Td3[s0>>0] - and r9,lr,r1,lsr#8 - ldr r0,[r10,r0,lsl#2] @ Td0[s0>>24] - mov r1,r1,lsr#24 - - ldr r7,[r10,r7,lsl#2] @ Td3[s1>>0] - ldr r8,[r10,r8,lsl#2] @ Td1[s1>>16] - ldr r9,[r10,r9,lsl#2] @ Td2[s1>>8] - eor r0,r0,r7,ror#24 - ldr r1,[r10,r1,lsl#2] @ Td0[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r8,r5,ror#8 - and r8,lr,r2 @ i1 - eor r6,r9,r6,ror#8 - and r9,lr,r2,lsr#16 - ldr r7,[r10,r7,lsl#2] @ Td2[s2>>8] - eor r1,r1,r4,ror#8 - ldr r8,[r10,r8,lsl#2] @ Td3[s2>>0] - mov r2,r2,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Td1[s2>>16] - eor r0,r0,r7,ror#16 - ldr r2,[r10,r2,lsl#2] @ Td0[s2>>24] - and r7,lr,r3,lsr#16 @ i0 - eor r1,r1,r8,ror#24 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r9,r6,ror#8 - and r9,lr,r3 @ i2 - ldr r7,[r10,r7,lsl#2] @ Td1[s3>>16] - eor r2,r2,r5,ror#8 - ldr r8,[r10,r8,lsl#2] @ Td2[s3>>8] - mov r3,r3,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Td3[s3>>0] - eor r0,r0,r7,ror#8 - ldr r7,[r11],#16 - eor r1,r1,r8,ror#16 - ldr r3,[r10,r3,lsl#2] @ Td0[s3>>24] - eor r2,r2,r9,ror#24 - - ldr r4,[r11,#-12] - eor r0,r0,r7 - ldr r5,[r11,#-8] - eor r3,r3,r6,ror#8 - ldr r6,[r11,#-4] - and r7,lr,r0,lsr#16 - eor r1,r1,r4 - and r8,lr,r0,lsr#8 - eor r2,r2,r5 - and r9,lr,r0 - eor r3,r3,r6 - mov r0,r0,lsr#24 - - subs r12,r12,#1 - bne .Ldec_loop - - add r10,r10,#1024 - - ldr r5,[r10,#0] @ prefetch Td4 - ldr r6,[r10,#32] - ldr r4,[r10,#64] - ldr r5,[r10,#96] - ldr r6,[r10,#128] - ldr r4,[r10,#160] - ldr r5,[r10,#192] - ldr r6,[r10,#224] - - ldrb r0,[r10,r0] @ Td4[s0>>24] - ldrb r4,[r10,r7] @ Td4[s0>>16] - and r7,lr,r1 @ i0 - ldrb r5,[r10,r8] @ Td4[s0>>8] - and r8,lr,r1,lsr#16 - ldrb r6,[r10,r9] @ Td4[s0>>0] - and r9,lr,r1,lsr#8 - - add r1,r10,r1,lsr#24 - ldrb r7,[r10,r7] @ Td4[s1>>0] - ldrb r1,[r1] @ Td4[s1>>24] - ldrb r8,[r10,r8] @ Td4[s1>>16] - eor r0,r7,r0,lsl#24 - ldrb r9,[r10,r9] @ Td4[s1>>8] - eor r1,r4,r1,lsl#8 - and r7,lr,r2,lsr#8 @ i0 - eor r5,r5,r8,lsl#8 - and r8,lr,r2 @ i1 - ldrb r7,[r10,r7] @ Td4[s2>>8] - eor r6,r6,r9,lsl#8 - ldrb r8,[r10,r8] @ Td4[s2>>0] - and r9,lr,r2,lsr#16 - - add r2,r10,r2,lsr#24 - ldrb r2,[r2] @ Td4[s2>>24] - eor r0,r0,r7,lsl#8 - ldrb r9,[r10,r9] @ Td4[s2>>16] - eor r1,r8,r1,lsl#16 - and r7,lr,r3,lsr#16 @ i0 - eor r2,r5,r2,lsl#16 - and r8,lr,r3,lsr#8 @ i1 - ldrb r7,[r10,r7] @ Td4[s3>>16] - eor r6,r6,r9,lsl#16 - ldrb r8,[r10,r8] @ Td4[s3>>8] - and r9,lr,r3 @ i2 - - add r3,r10,r3,lsr#24 - ldrb r9,[r10,r9] @ Td4[s3>>0] - ldrb r3,[r3] @ Td4[s3>>24] - eor r0,r0,r7,lsl#16 - ldr r7,[r11,#0] - eor r1,r1,r8,lsl#8 - ldr r4,[r11,#4] - eor r2,r9,r2,lsl#8 - ldr r5,[r11,#8] - eor r3,r6,r3,lsl#24 - ldr r6,[r11,#12] - - eor r0,r0,r7 - eor r1,r1,r4 - eor r2,r2,r5 - eor r3,r3,r6 - - sub r10,r10,#1024 - ldr pc,[sp],#4 @ pop and return -.size _armv4_AES_decrypt,.-_armv4_AES_decrypt -.asciz "AES for ARMv4, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm/arm-void-gas/aes/aesv8-armx.S b/deps/openssl/asm/arm-void-gas/aes/aesv8-armx.S deleted file mode 100644 index fd979d078f46ba..00000000000000 --- a/deps/openssl/asm/arm-void-gas/aes/aesv8-armx.S +++ /dev/null @@ -1,754 +0,0 @@ -#include "arm_arch.h" - -#if __ARM_MAX_ARCH__>=7 -.text -.arch armv7-a -.fpu neon -.code 32 -.align 5 -rcon: -.long 0x01,0x01,0x01,0x01 -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d @ rotate-n-splat -.long 0x1b,0x1b,0x1b,0x1b - -.globl aes_v8_set_encrypt_key -.type aes_v8_set_encrypt_key,%function -.align 5 -aes_v8_set_encrypt_key: -.Lenc_key: - mov r3,#-1 - cmp r0,#0 - beq .Lenc_key_abort - cmp r2,#0 - beq .Lenc_key_abort - mov r3,#-2 - cmp r1,#128 - blt .Lenc_key_abort - cmp r1,#256 - bgt .Lenc_key_abort - tst r1,#0x3f - bne .Lenc_key_abort - - adr r3,rcon - cmp r1,#192 - - veor q0,q0,q0 - vld1.8 {q3},[r0]! - mov r1,#8 @ reuse r1 - vld1.32 {q1,q2},[r3]! - - blt .Loop128 - beq .L192 - b .L256 - -.align 4 -.Loop128: - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - bne .Loop128 - - vld1.32 {q1},[r3] - - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - veor q3,q3,q10 - vst1.32 {q3},[r2] - add r2,r2,#0x50 - - mov r12,#10 - b .Ldone - -.align 4 -.L192: - vld1.8 {d16},[r0]! - vmov.i8 q10,#8 @ borrow q10 - vst1.32 {q3},[r2]! - vsub.i8 q2,q2,q10 @ adjust the mask - -.Loop192: - vtbl.8 d20,{q8},d4 - vtbl.8 d21,{q8},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {d16},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - - vdup.32 q9,d7[1] - veor q9,q9,q8 - veor q10,q10,q1 - vext.8 q8,q0,q8,#12 - vshl.u8 q1,q1,#1 - veor q8,q8,q9 - veor q3,q3,q10 - veor q8,q8,q10 - vst1.32 {q3},[r2]! - bne .Loop192 - - mov r12,#12 - add r2,r2,#0x20 - b .Ldone - -.align 4 -.L256: - vld1.8 {q8},[r0] - mov r1,#7 - mov r12,#14 - vst1.32 {q3},[r2]! - -.Loop256: - vtbl.8 d20,{q8},d4 - vtbl.8 d21,{q8},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q8},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - vst1.32 {q3},[r2]! - beq .Ldone - - vdup.32 q10,d7[1] - vext.8 q9,q0,q8,#12 - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q8,q8,q9 - vext.8 q9,q0,q9,#12 - veor q8,q8,q9 - vext.8 q9,q0,q9,#12 - veor q8,q8,q9 - - veor q8,q8,q10 - b .Loop256 - -.Ldone: - str r12,[r2] - mov r3,#0 - -.Lenc_key_abort: - mov r0,r3 @ return value - - bx lr -.size aes_v8_set_encrypt_key,.-aes_v8_set_encrypt_key - -.globl aes_v8_set_decrypt_key -.type aes_v8_set_decrypt_key,%function -.align 5 -aes_v8_set_decrypt_key: - stmdb sp!,{r4,lr} - bl .Lenc_key - - cmp r0,#0 - bne .Ldec_key_abort - - sub r2,r2,#240 @ restore original r2 - mov r4,#-16 - add r0,r2,r12,lsl#4 @ end of key schedule - - vld1.32 {q0},[r2] - vld1.32 {q1},[r0] - vst1.32 {q0},[r0],r4 - vst1.32 {q1},[r2]! - -.Loop_imc: - vld1.32 {q0},[r2] - vld1.32 {q1},[r0] - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - vst1.32 {q0},[r0],r4 - vst1.32 {q1},[r2]! - cmp r0,r2 - bhi .Loop_imc - - vld1.32 {q0},[r2] - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - vst1.32 {q0},[r0] - - eor r0,r0,r0 @ return value -.Ldec_key_abort: - ldmia sp!,{r4,pc} -.size aes_v8_set_decrypt_key,.-aes_v8_set_decrypt_key -.globl aes_v8_encrypt -.type aes_v8_encrypt,%function -.align 5 -aes_v8_encrypt: - ldr r3,[r2,#240] - vld1.32 {q0},[r2]! - vld1.8 {q2},[r0] - sub r3,r3,#2 - vld1.32 {q1},[r2]! - -.Loop_enc: - .byte 0x00,0x43,0xb0,0xf3 @ aese q2,q0 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q0},[r2]! - subs r3,r3,#2 - .byte 0x02,0x43,0xb0,0xf3 @ aese q2,q1 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q1},[r2]! - bgt .Loop_enc - - .byte 0x00,0x43,0xb0,0xf3 @ aese q2,q0 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q0},[r2] - .byte 0x02,0x43,0xb0,0xf3 @ aese q2,q1 - veor q2,q2,q0 - - vst1.8 {q2},[r1] - bx lr -.size aes_v8_encrypt,.-aes_v8_encrypt -.globl aes_v8_decrypt -.type aes_v8_decrypt,%function -.align 5 -aes_v8_decrypt: - ldr r3,[r2,#240] - vld1.32 {q0},[r2]! - vld1.8 {q2},[r0] - sub r3,r3,#2 - vld1.32 {q1},[r2]! - -.Loop_dec: - .byte 0x40,0x43,0xb0,0xf3 @ aesd q2,q0 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q0},[r2]! - subs r3,r3,#2 - .byte 0x42,0x43,0xb0,0xf3 @ aesd q2,q1 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q1},[r2]! - bgt .Loop_dec - - .byte 0x40,0x43,0xb0,0xf3 @ aesd q2,q0 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q0},[r2] - .byte 0x42,0x43,0xb0,0xf3 @ aesd q2,q1 - veor q2,q2,q0 - - vst1.8 {q2},[r1] - bx lr -.size aes_v8_decrypt,.-aes_v8_decrypt -.globl aes_v8_cbc_encrypt -.type aes_v8_cbc_encrypt,%function -.align 5 -aes_v8_cbc_encrypt: - mov ip,sp - stmdb sp!,{r4-r8,lr} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldmia ip,{r4-r5} @ load remaining args - subs r2,r2,#16 - mov r8,#16 - blo .Lcbc_abort - moveq r8,#0 - - cmp r5,#0 @ en- or decrypting? - ldr r5,[r3,#240] - and r2,r2,#-16 - vld1.8 {q6},[r4] - vld1.8 {q0},[r0],r8 - - vld1.32 {q8-q9},[r3] @ load key schedule... - sub r5,r5,#6 - add r7,r3,r5,lsl#4 @ pointer to last 7 round keys - sub r5,r5,#2 - vld1.32 {q10-q11},[r7]! - vld1.32 {q12-q13},[r7]! - vld1.32 {q14-q15},[r7]! - vld1.32 {q7},[r7] - - add r7,r3,#32 - mov r6,r5 - beq .Lcbc_dec - - cmp r5,#2 - veor q0,q0,q6 - veor q5,q8,q7 - beq .Lcbc_enc128 - - vld1.32 {q2-q3},[r7] - add r7,r3,#16 - add r6,r3,#16*4 - add r12,r3,#16*5 - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - add r14,r3,#16*6 - add r3,r3,#16*7 - b .Lenter_cbc_enc - -.align 4 -.Loop_cbc_enc: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vst1.8 {q6},[r1]! -.Lenter_cbc_enc: - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x04,0x03,0xb0,0xf3 @ aese q0,q2 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q8},[r6] - cmp r5,#4 - .byte 0x06,0x03,0xb0,0xf3 @ aese q0,q3 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r12] - beq .Lcbc_enc192 - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q8},[r14] - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r3] - nop - -.Lcbc_enc192: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - subs r2,r2,#16 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - moveq r8,#0 - .byte 0x24,0x03,0xb0,0xf3 @ aese q0,q10 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x26,0x03,0xb0,0xf3 @ aese q0,q11 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.8 {q8},[r0],r8 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - veor q8,q8,q5 - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r7] @ re-pre-load rndkey[1] - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - veor q6,q0,q7 - bhs .Loop_cbc_enc - - vst1.8 {q6},[r1]! - b .Lcbc_done - -.align 5 -.Lcbc_enc128: - vld1.32 {q2-q3},[r7] - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - b .Lenter_cbc_enc128 -.Loop_cbc_enc128: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vst1.8 {q6},[r1]! -.Lenter_cbc_enc128: - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - subs r2,r2,#16 - .byte 0x04,0x03,0xb0,0xf3 @ aese q0,q2 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - moveq r8,#0 - .byte 0x06,0x03,0xb0,0xf3 @ aese q0,q3 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x24,0x03,0xb0,0xf3 @ aese q0,q10 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x26,0x03,0xb0,0xf3 @ aese q0,q11 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.8 {q8},[r0],r8 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - veor q8,q8,q5 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - veor q6,q0,q7 - bhs .Loop_cbc_enc128 - - vst1.8 {q6},[r1]! - b .Lcbc_done -.align 5 -.Lcbc_dec: - vld1.8 {q10},[r0]! - subs r2,r2,#32 @ bias - add r6,r5,#2 - vorr q3,q0,q0 - vorr q1,q0,q0 - vorr q11,q10,q10 - blo .Lcbc_dec_tail - - vorr q1,q10,q10 - vld1.8 {q10},[r0]! - vorr q2,q0,q0 - vorr q3,q1,q1 - vorr q11,q10,q10 - -.Loop3x_cbc_dec: - .byte 0x60,0x03,0xb0,0xf3 @ aesd q0,q8 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x62,0x03,0xb0,0xf3 @ aesd q0,q9 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q9},[r7]! - bgt .Loop3x_cbc_dec - - .byte 0x60,0x03,0xb0,0xf3 @ aesd q0,q8 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q4,q6,q7 - subs r2,r2,#0x30 - veor q5,q2,q7 - movlo r6,r2 @ r6, r6, is zero at this point - .byte 0x62,0x03,0xb0,0xf3 @ aesd q0,q9 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q9,q3,q7 - add r0,r0,r6 @ r0 is adjusted in such way that - @ at exit from the loop q1-q10 - @ are loaded with last "words" - vorr q6,q11,q11 - mov r7,r3 - .byte 0x68,0x03,0xb0,0xf3 @ aesd q0,q12 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x68,0x23,0xb0,0xf3 @ aesd q1,q12 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x68,0x43,0xf0,0xf3 @ aesd q10,q12 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q2},[r0]! - .byte 0x6a,0x03,0xb0,0xf3 @ aesd q0,q13 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x6a,0x23,0xb0,0xf3 @ aesd q1,q13 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6a,0x43,0xf0,0xf3 @ aesd q10,q13 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q3},[r0]! - .byte 0x6c,0x03,0xb0,0xf3 @ aesd q0,q14 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x6c,0x23,0xb0,0xf3 @ aesd q1,q14 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6c,0x43,0xf0,0xf3 @ aesd q10,q14 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q11},[r0]! - .byte 0x6e,0x03,0xb0,0xf3 @ aesd q0,q15 - .byte 0x6e,0x23,0xb0,0xf3 @ aesd q1,q15 - .byte 0x6e,0x43,0xf0,0xf3 @ aesd q10,q15 - vld1.32 {q8},[r7]! @ re-pre-load rndkey[0] - add r6,r5,#2 - veor q4,q4,q0 - veor q5,q5,q1 - veor q10,q10,q9 - vld1.32 {q9},[r7]! @ re-pre-load rndkey[1] - vst1.8 {q4},[r1]! - vorr q0,q2,q2 - vst1.8 {q5},[r1]! - vorr q1,q3,q3 - vst1.8 {q10},[r1]! - vorr q10,q11,q11 - bhs .Loop3x_cbc_dec - - cmn r2,#0x30 - beq .Lcbc_done - nop - -.Lcbc_dec_tail: - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q9},[r7]! - bgt .Lcbc_dec_tail - - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - .byte 0x68,0x23,0xb0,0xf3 @ aesd q1,q12 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x68,0x43,0xf0,0xf3 @ aesd q10,q12 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - cmn r2,#0x20 - .byte 0x6a,0x23,0xb0,0xf3 @ aesd q1,q13 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6a,0x43,0xf0,0xf3 @ aesd q10,q13 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q5,q6,q7 - .byte 0x6c,0x23,0xb0,0xf3 @ aesd q1,q14 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6c,0x43,0xf0,0xf3 @ aesd q10,q14 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q9,q3,q7 - .byte 0x6e,0x23,0xb0,0xf3 @ aesd q1,q15 - .byte 0x6e,0x43,0xf0,0xf3 @ aesd q10,q15 - beq .Lcbc_dec_one - veor q5,q5,q1 - veor q9,q9,q10 - vorr q6,q11,q11 - vst1.8 {q5},[r1]! - vst1.8 {q9},[r1]! - b .Lcbc_done - -.Lcbc_dec_one: - veor q5,q5,q10 - vorr q6,q11,q11 - vst1.8 {q5},[r1]! - -.Lcbc_done: - vst1.8 {q6},[r4] -.Lcbc_abort: - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r8,pc} -.size aes_v8_cbc_encrypt,.-aes_v8_cbc_encrypt -.globl aes_v8_ctr32_encrypt_blocks -.type aes_v8_ctr32_encrypt_blocks,%function -.align 5 -aes_v8_ctr32_encrypt_blocks: - mov ip,sp - stmdb sp!,{r4-r10,lr} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldr r4, [ip] @ load remaining arg - ldr r5,[r3,#240] - - ldr r8, [r4, #12] - vld1.32 {q0},[r4] - - vld1.32 {q8-q9},[r3] @ load key schedule... - sub r5,r5,#4 - mov r12,#16 - cmp r2,#2 - add r7,r3,r5,lsl#4 @ pointer to last 5 round keys - sub r5,r5,#2 - vld1.32 {q12-q13},[r7]! - vld1.32 {q14-q15},[r7]! - vld1.32 {q7},[r7] - add r7,r3,#32 - mov r6,r5 - movlo r12,#0 -#ifndef __ARMEB__ - rev r8, r8 -#endif - vorr q1,q0,q0 - add r10, r8, #1 - vorr q10,q0,q0 - add r8, r8, #2 - vorr q6,q0,q0 - rev r10, r10 - vmov.32 d3[1],r10 - bls .Lctr32_tail - rev r12, r8 - sub r2,r2,#3 @ bias - vmov.32 d21[1],r12 - b .Loop3x_ctr32 - -.align 4 -.Loop3x_ctr32: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x20,0x43,0xf0,0xf3 @ aese q10,q8 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x22,0x43,0xf0,0xf3 @ aese q10,q9 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.32 {q9},[r7]! - bgt .Loop3x_ctr32 - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x83,0xb0,0xf3 @ aesmc q4,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0xa3,0xb0,0xf3 @ aesmc q5,q1 - vld1.8 {q2},[r0]! - vorr q0,q6,q6 - .byte 0x20,0x43,0xf0,0xf3 @ aese q10,q8 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.8 {q3},[r0]! - vorr q1,q6,q6 - .byte 0x22,0x83,0xb0,0xf3 @ aese q4,q9 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x22,0xa3,0xb0,0xf3 @ aese q5,q9 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - vld1.8 {q11},[r0]! - mov r7,r3 - .byte 0x22,0x43,0xf0,0xf3 @ aese q10,q9 - .byte 0xa4,0x23,0xf0,0xf3 @ aesmc q9,q10 - vorr q10,q6,q6 - add r9,r8,#1 - .byte 0x28,0x83,0xb0,0xf3 @ aese q4,q12 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x28,0xa3,0xb0,0xf3 @ aese q5,q12 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - veor q2,q2,q7 - add r10,r8,#2 - .byte 0x28,0x23,0xf0,0xf3 @ aese q9,q12 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - veor q3,q3,q7 - add r8,r8,#3 - .byte 0x2a,0x83,0xb0,0xf3 @ aese q4,q13 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x2a,0xa3,0xb0,0xf3 @ aese q5,q13 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - veor q11,q11,q7 - rev r9,r9 - .byte 0x2a,0x23,0xf0,0xf3 @ aese q9,q13 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - vmov.32 d1[1], r9 - rev r10,r10 - .byte 0x2c,0x83,0xb0,0xf3 @ aese q4,q14 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x2c,0xa3,0xb0,0xf3 @ aese q5,q14 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - vmov.32 d3[1], r10 - rev r12,r8 - .byte 0x2c,0x23,0xf0,0xf3 @ aese q9,q14 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - vmov.32 d21[1], r12 - subs r2,r2,#3 - .byte 0x2e,0x83,0xb0,0xf3 @ aese q4,q15 - .byte 0x2e,0xa3,0xb0,0xf3 @ aese q5,q15 - .byte 0x2e,0x23,0xf0,0xf3 @ aese q9,q15 - - veor q2,q2,q4 - vld1.32 {q8},[r7]! @ re-pre-load rndkey[0] - vst1.8 {q2},[r1]! - veor q3,q3,q5 - mov r6,r5 - vst1.8 {q3},[r1]! - veor q11,q11,q9 - vld1.32 {q9},[r7]! @ re-pre-load rndkey[1] - vst1.8 {q11},[r1]! - bhs .Loop3x_ctr32 - - adds r2,r2,#3 - beq .Lctr32_done - cmp r2,#1 - mov r12,#16 - moveq r12,#0 - -.Lctr32_tail: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.32 {q9},[r7]! - bgt .Lctr32_tail - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.8 {q2},[r0],r12 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x28,0x23,0xb0,0xf3 @ aese q1,q12 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.8 {q3},[r0] - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2a,0x23,0xb0,0xf3 @ aese q1,q13 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - veor q2,q2,q7 - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2c,0x23,0xb0,0xf3 @ aese q1,q14 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - veor q3,q3,q7 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - .byte 0x2e,0x23,0xb0,0xf3 @ aese q1,q15 - - cmp r2,#1 - veor q2,q2,q0 - veor q3,q3,q1 - vst1.8 {q2},[r1]! - beq .Lctr32_done - vst1.8 {q3},[r1] - -.Lctr32_done: - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r10,pc} -.size aes_v8_ctr32_encrypt_blocks,.-aes_v8_ctr32_encrypt_blocks -#endif diff --git a/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S b/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S deleted file mode 100644 index aa15709abb403a..00000000000000 --- a/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S +++ /dev/null @@ -1,2528 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ -@ Specific modes and adaptation for Linux kernel by Ard Biesheuvel -@ . Permission to use under GPL terms is -@ granted. -@ ==================================================================== - -@ Bit-sliced AES for ARM NEON -@ -@ February 2012. -@ -@ This implementation is direct adaptation of bsaes-x86_64 module for -@ ARM NEON. Except that this module is endian-neutral [in sense that -@ it can be compiled for either endianness] by courtesy of vld1.8's -@ neutrality. Initial version doesn't implement interface to OpenSSL, -@ only low-level primitives and unsupported entry points, just enough -@ to collect performance results, which for Cortex-A8 core are: -@ -@ encrypt 19.5 cycles per byte processed with 128-bit key -@ decrypt 22.1 cycles per byte processed with 128-bit key -@ key conv. 440 cycles per 128-bit key/0.18 of 8x block -@ -@ Snapdragon S4 encrypts byte in 17.6 cycles and decrypts in 19.7, -@ which is [much] worse than anticipated (for further details see -@ http://www.openssl.org/~appro/Snapdragon-S4.html). -@ -@ Cortex-A15 manages in 14.2/16.1 cycles [when integer-only code -@ manages in 20.0 cycles]. -@ -@ When comparing to x86_64 results keep in mind that NEON unit is -@ [mostly] single-issue and thus can't [fully] benefit from -@ instruction-level parallelism. And when comparing to aes-armv4 -@ results keep in mind key schedule conversion overhead (see -@ bsaes-x86_64.pl for further details)... -@ -@ - -@ April-August 2013 -@ -@ Add CBC, CTR and XTS subroutines, adapt for kernel use. -@ -@ - -#ifndef __KERNEL__ -# include "arm_arch.h" - -# define VFP_ABI_PUSH vstmdb sp!,{d8-d15} -# define VFP_ABI_POP vldmia sp!,{d8-d15} -# define VFP_ABI_FRAME 0x40 -#else -# define VFP_ABI_PUSH -# define VFP_ABI_POP -# define VFP_ABI_FRAME 0 -# define BSAES_ASM_EXTENDED_KEY -# define XTS_CHAIN_TWEAK -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -# define __ARM_MAX_ARCH__ __LINUX_ARM_ARCH__ -#endif - -#ifdef __thumb__ -# define adrl adr -#endif - -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.text -.syntax unified @ ARMv7-capable assembler is expected to handle this -#ifdef __thumb2__ -.thumb -#else -.code 32 -#endif - -.type _bsaes_decrypt8,%function -.align 4 -_bsaes_decrypt8: - adr r6,. - vldmia r4!, {q9} @ round 0 key - add r6,r6,#.LM0ISR-_bsaes_decrypt8 - - vldmia r6!, {q8} @ .LM0ISR - veor q10, q0, q9 @ xor with round0 key - veor q11, q1, q9 - vtbl.8 d0, {q10}, d16 - vtbl.8 d1, {q10}, d17 - veor q12, q2, q9 - vtbl.8 d2, {q11}, d16 - vtbl.8 d3, {q11}, d17 - veor q13, q3, q9 - vtbl.8 d4, {q12}, d16 - vtbl.8 d5, {q12}, d17 - veor q14, q4, q9 - vtbl.8 d6, {q13}, d16 - vtbl.8 d7, {q13}, d17 - veor q15, q5, q9 - vtbl.8 d8, {q14}, d16 - vtbl.8 d9, {q14}, d17 - veor q10, q6, q9 - vtbl.8 d10, {q15}, d16 - vtbl.8 d11, {q15}, d17 - veor q11, q7, q9 - vtbl.8 d12, {q10}, d16 - vtbl.8 d13, {q10}, d17 - vtbl.8 d14, {q11}, d16 - vtbl.8 d15, {q11}, d17 - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q4, #1 - veor q10, q10, q7 - veor q11, q11, q5 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #1 - veor q5, q5, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q3 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q3, q3, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q5, #2 - vshr.u64 q11, q4, #2 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q7, q7, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q5, q5, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q3 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q3, q3, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q3, #4 - vshr.u64 q11, q2, #4 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q6, q6, q11 - vshl.u64 q11, q11, #4 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q5 - veor q11, q11, q4 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q4, q4, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - sub r5,r5,#1 - b .Ldec_sbox -.align 4 -.Ldec_loop: - vldmia r4!, {q8-q11} - veor q8, q8, q0 - veor q9, q9, q1 - vtbl.8 d0, {q8}, d24 - vtbl.8 d1, {q8}, d25 - vldmia r4!, {q8} - veor q10, q10, q2 - vtbl.8 d2, {q9}, d24 - vtbl.8 d3, {q9}, d25 - vldmia r4!, {q9} - veor q11, q11, q3 - vtbl.8 d4, {q10}, d24 - vtbl.8 d5, {q10}, d25 - vldmia r4!, {q10} - vtbl.8 d6, {q11}, d24 - vtbl.8 d7, {q11}, d25 - vldmia r4!, {q11} - veor q8, q8, q4 - veor q9, q9, q5 - vtbl.8 d8, {q8}, d24 - vtbl.8 d9, {q8}, d25 - veor q10, q10, q6 - vtbl.8 d10, {q9}, d24 - vtbl.8 d11, {q9}, d25 - veor q11, q11, q7 - vtbl.8 d12, {q10}, d24 - vtbl.8 d13, {q10}, d25 - vtbl.8 d14, {q11}, d24 - vtbl.8 d15, {q11}, d25 -.Ldec_sbox: - veor q1, q1, q4 - veor q3, q3, q4 - - veor q4, q4, q7 - veor q1, q1, q6 - veor q2, q2, q7 - veor q6, q6, q4 - - veor q0, q0, q1 - veor q2, q2, q5 - veor q7, q7, q6 - veor q3, q3, q0 - veor q5, q5, q0 - veor q1, q1, q3 - veor q11, q3, q0 - veor q10, q7, q4 - veor q9, q1, q6 - veor q13, q4, q0 - vmov q8, q10 - veor q12, q5, q2 - - vorr q10, q10, q9 - veor q15, q11, q8 - vand q14, q11, q12 - vorr q11, q11, q12 - veor q12, q12, q9 - vand q8, q8, q9 - veor q9, q6, q2 - vand q15, q15, q12 - vand q13, q13, q9 - veor q9, q3, q7 - veor q12, q1, q5 - veor q11, q11, q13 - veor q10, q10, q13 - vand q13, q9, q12 - vorr q9, q9, q12 - veor q11, q11, q15 - veor q8, q8, q13 - veor q10, q10, q14 - veor q9, q9, q15 - veor q8, q8, q14 - vand q12, q4, q6 - veor q9, q9, q14 - vand q13, q0, q2 - vand q14, q7, q1 - vorr q15, q3, q5 - veor q11, q11, q12 - veor q9, q9, q14 - veor q8, q8, q15 - veor q10, q10, q13 - - @ Inv_GF16 0, 1, 2, 3, s0, s1, s2, s3 - - @ new smaller inversion - - vand q14, q11, q9 - vmov q12, q8 - - veor q13, q10, q14 - veor q15, q8, q14 - veor q14, q8, q14 @ q14=q15 - - vbsl q13, q9, q8 - vbsl q15, q11, q10 - veor q11, q11, q10 - - vbsl q12, q13, q14 - vbsl q8, q14, q13 - - vand q14, q12, q15 - veor q9, q9, q8 - - veor q14, q14, q11 - veor q12, q5, q2 - veor q8, q1, q6 - veor q10, q15, q14 - vand q10, q10, q5 - veor q5, q5, q1 - vand q11, q1, q15 - vand q5, q5, q14 - veor q1, q11, q10 - veor q5, q5, q11 - veor q15, q15, q13 - veor q14, q14, q9 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q2 - veor q12, q12, q8 - veor q2, q2, q6 - vand q8, q8, q15 - vand q6, q6, q13 - vand q12, q12, q14 - vand q2, q2, q9 - veor q8, q8, q12 - veor q2, q2, q6 - veor q12, q12, q11 - veor q6, q6, q10 - veor q5, q5, q12 - veor q2, q2, q12 - veor q1, q1, q8 - veor q6, q6, q8 - - veor q12, q3, q0 - veor q8, q7, q4 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q0 - veor q12, q12, q8 - veor q0, q0, q4 - vand q8, q8, q15 - vand q4, q4, q13 - vand q12, q12, q14 - vand q0, q0, q9 - veor q8, q8, q12 - veor q0, q0, q4 - veor q12, q12, q11 - veor q4, q4, q10 - veor q15, q15, q13 - veor q14, q14, q9 - veor q10, q15, q14 - vand q10, q10, q3 - veor q3, q3, q7 - vand q11, q7, q15 - vand q3, q3, q14 - veor q7, q11, q10 - veor q3, q3, q11 - veor q3, q3, q12 - veor q0, q0, q12 - veor q7, q7, q8 - veor q4, q4, q8 - veor q1, q1, q7 - veor q6, q6, q5 - - veor q4, q4, q1 - veor q2, q2, q7 - veor q5, q5, q7 - veor q4, q4, q2 - veor q7, q7, q0 - veor q4, q4, q5 - veor q3, q3, q6 - veor q6, q6, q1 - veor q3, q3, q4 - - veor q4, q4, q0 - veor q7, q7, q3 - subs r5,r5,#1 - bcc .Ldec_done - @ multiplication by 0x05-0x00-0x04-0x00 - vext.8 q8, q0, q0, #8 - vext.8 q14, q3, q3, #8 - vext.8 q15, q5, q5, #8 - veor q8, q8, q0 - vext.8 q9, q1, q1, #8 - veor q14, q14, q3 - vext.8 q10, q6, q6, #8 - veor q15, q15, q5 - vext.8 q11, q4, q4, #8 - veor q9, q9, q1 - vext.8 q12, q2, q2, #8 - veor q10, q10, q6 - vext.8 q13, q7, q7, #8 - veor q11, q11, q4 - veor q12, q12, q2 - veor q13, q13, q7 - - veor q0, q0, q14 - veor q1, q1, q14 - veor q6, q6, q8 - veor q2, q2, q10 - veor q4, q4, q9 - veor q1, q1, q15 - veor q6, q6, q15 - veor q2, q2, q14 - veor q7, q7, q11 - veor q4, q4, q14 - veor q3, q3, q12 - veor q2, q2, q15 - veor q7, q7, q15 - veor q5, q5, q13 - vext.8 q8, q0, q0, #12 @ x0 <<< 32 - vext.8 q9, q1, q1, #12 - veor q0, q0, q8 @ x0 ^ (x0 <<< 32) - vext.8 q10, q6, q6, #12 - veor q1, q1, q9 - vext.8 q11, q4, q4, #12 - veor q6, q6, q10 - vext.8 q12, q2, q2, #12 - veor q4, q4, q11 - vext.8 q13, q7, q7, #12 - veor q2, q2, q12 - vext.8 q14, q3, q3, #12 - veor q7, q7, q13 - vext.8 q15, q5, q5, #12 - veor q3, q3, q14 - - veor q9, q9, q0 - veor q5, q5, q15 - vext.8 q0, q0, q0, #8 @ (x0 ^ (x0 <<< 32)) <<< 64) - veor q10, q10, q1 - veor q8, q8, q5 - veor q9, q9, q5 - vext.8 q1, q1, q1, #8 - veor q13, q13, q2 - veor q0, q0, q8 - veor q14, q14, q7 - veor q1, q1, q9 - vext.8 q8, q2, q2, #8 - veor q12, q12, q4 - vext.8 q9, q7, q7, #8 - veor q15, q15, q3 - vext.8 q2, q4, q4, #8 - veor q11, q11, q6 - vext.8 q7, q5, q5, #8 - veor q12, q12, q5 - vext.8 q4, q3, q3, #8 - veor q11, q11, q5 - vext.8 q3, q6, q6, #8 - veor q5, q9, q13 - veor q11, q11, q2 - veor q7, q7, q15 - veor q6, q4, q14 - veor q4, q8, q12 - veor q2, q3, q10 - vmov q3, q11 - @ vmov q5, q9 - vldmia r6, {q12} @ .LISR - ite eq @ Thumb2 thing, sanity check in ARM - addeq r6,r6,#0x10 - bne .Ldec_loop - vldmia r6, {q12} @ .LISRM0 - b .Ldec_loop -.align 4 -.Ldec_done: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q3, #1 - vshr.u64 q11, q2, #1 - veor q10, q10, q5 - veor q11, q11, q7 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #1 - veor q7, q7, q11 - vshl.u64 q11, q11, #1 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q4 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q4, q4, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q7, #2 - vshr.u64 q11, q2, #2 - veor q10, q10, q5 - veor q11, q11, q3 - vand q10, q10, q9 - vand q11, q11, q9 - veor q5, q5, q10 - vshl.u64 q10, q10, #2 - veor q3, q3, q11 - vshl.u64 q11, q11, #2 - veor q7, q7, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q4 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q4, q4, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q4, #4 - vshr.u64 q11, q6, #4 - veor q10, q10, q5 - veor q11, q11, q3 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q3, q3, q11 - vshl.u64 q11, q11, #4 - veor q4, q4, q10 - veor q6, q6, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q7 - veor q11, q11, q2 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q2, q2, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - vldmia r4, {q8} @ last round key - veor q6, q6, q8 - veor q4, q4, q8 - veor q2, q2, q8 - veor q7, q7, q8 - veor q3, q3, q8 - veor q5, q5, q8 - veor q0, q0, q8 - veor q1, q1, q8 - bx lr -.size _bsaes_decrypt8,.-_bsaes_decrypt8 - -.type _bsaes_const,%object -.align 6 -_bsaes_const: -.LM0ISR: @ InvShiftRows constants - .quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -.LISR: - .quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -.LISRM0: - .quad 0x01040b0e0205080f, 0x0306090c00070a0d -.LM0SR: @ ShiftRows constants - .quad 0x0a0e02060f03070b, 0x0004080c05090d01 -.LSR: - .quad 0x0504070600030201, 0x0f0e0d0c0a09080b -.LSRM0: - .quad 0x0304090e00050a0f, 0x01060b0c0207080d -.LM0: - .quad 0x02060a0e03070b0f, 0x0004080c0105090d -.LREVM0SR: - .quad 0x090d01050c000408, 0x03070b0f060a0e02 -.asciz "Bit-sliced AES for NEON, CRYPTOGAMS by " -.align 6 -.size _bsaes_const,.-_bsaes_const - -.type _bsaes_encrypt8,%function -.align 4 -_bsaes_encrypt8: - adr r6,. - vldmia r4!, {q9} @ round 0 key - sub r6,r6,#_bsaes_encrypt8-.LM0SR - - vldmia r6!, {q8} @ .LM0SR -_bsaes_encrypt8_alt: - veor q10, q0, q9 @ xor with round0 key - veor q11, q1, q9 - vtbl.8 d0, {q10}, d16 - vtbl.8 d1, {q10}, d17 - veor q12, q2, q9 - vtbl.8 d2, {q11}, d16 - vtbl.8 d3, {q11}, d17 - veor q13, q3, q9 - vtbl.8 d4, {q12}, d16 - vtbl.8 d5, {q12}, d17 - veor q14, q4, q9 - vtbl.8 d6, {q13}, d16 - vtbl.8 d7, {q13}, d17 - veor q15, q5, q9 - vtbl.8 d8, {q14}, d16 - vtbl.8 d9, {q14}, d17 - veor q10, q6, q9 - vtbl.8 d10, {q15}, d16 - vtbl.8 d11, {q15}, d17 - veor q11, q7, q9 - vtbl.8 d12, {q10}, d16 - vtbl.8 d13, {q10}, d17 - vtbl.8 d14, {q11}, d16 - vtbl.8 d15, {q11}, d17 -_bsaes_encrypt8_bitslice: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q4, #1 - veor q10, q10, q7 - veor q11, q11, q5 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #1 - veor q5, q5, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q3 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q3, q3, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q5, #2 - vshr.u64 q11, q4, #2 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q7, q7, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q5, q5, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q3 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q3, q3, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q3, #4 - vshr.u64 q11, q2, #4 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q6, q6, q11 - vshl.u64 q11, q11, #4 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q5 - veor q11, q11, q4 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q4, q4, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - sub r5,r5,#1 - b .Lenc_sbox -.align 4 -.Lenc_loop: - vldmia r4!, {q8-q11} - veor q8, q8, q0 - veor q9, q9, q1 - vtbl.8 d0, {q8}, d24 - vtbl.8 d1, {q8}, d25 - vldmia r4!, {q8} - veor q10, q10, q2 - vtbl.8 d2, {q9}, d24 - vtbl.8 d3, {q9}, d25 - vldmia r4!, {q9} - veor q11, q11, q3 - vtbl.8 d4, {q10}, d24 - vtbl.8 d5, {q10}, d25 - vldmia r4!, {q10} - vtbl.8 d6, {q11}, d24 - vtbl.8 d7, {q11}, d25 - vldmia r4!, {q11} - veor q8, q8, q4 - veor q9, q9, q5 - vtbl.8 d8, {q8}, d24 - vtbl.8 d9, {q8}, d25 - veor q10, q10, q6 - vtbl.8 d10, {q9}, d24 - vtbl.8 d11, {q9}, d25 - veor q11, q11, q7 - vtbl.8 d12, {q10}, d24 - vtbl.8 d13, {q10}, d25 - vtbl.8 d14, {q11}, d24 - vtbl.8 d15, {q11}, d25 -.Lenc_sbox: - veor q2, q2, q1 - veor q5, q5, q6 - veor q3, q3, q0 - veor q6, q6, q2 - veor q5, q5, q0 - - veor q6, q6, q3 - veor q3, q3, q7 - veor q7, q7, q5 - veor q3, q3, q4 - veor q4, q4, q5 - - veor q2, q2, q7 - veor q3, q3, q1 - veor q1, q1, q5 - veor q11, q7, q4 - veor q10, q1, q2 - veor q9, q5, q3 - veor q13, q2, q4 - vmov q8, q10 - veor q12, q6, q0 - - vorr q10, q10, q9 - veor q15, q11, q8 - vand q14, q11, q12 - vorr q11, q11, q12 - veor q12, q12, q9 - vand q8, q8, q9 - veor q9, q3, q0 - vand q15, q15, q12 - vand q13, q13, q9 - veor q9, q7, q1 - veor q12, q5, q6 - veor q11, q11, q13 - veor q10, q10, q13 - vand q13, q9, q12 - vorr q9, q9, q12 - veor q11, q11, q15 - veor q8, q8, q13 - veor q10, q10, q14 - veor q9, q9, q15 - veor q8, q8, q14 - vand q12, q2, q3 - veor q9, q9, q14 - vand q13, q4, q0 - vand q14, q1, q5 - vorr q15, q7, q6 - veor q11, q11, q12 - veor q9, q9, q14 - veor q8, q8, q15 - veor q10, q10, q13 - - @ Inv_GF16 0, 1, 2, 3, s0, s1, s2, s3 - - @ new smaller inversion - - vand q14, q11, q9 - vmov q12, q8 - - veor q13, q10, q14 - veor q15, q8, q14 - veor q14, q8, q14 @ q14=q15 - - vbsl q13, q9, q8 - vbsl q15, q11, q10 - veor q11, q11, q10 - - vbsl q12, q13, q14 - vbsl q8, q14, q13 - - vand q14, q12, q15 - veor q9, q9, q8 - - veor q14, q14, q11 - veor q12, q6, q0 - veor q8, q5, q3 - veor q10, q15, q14 - vand q10, q10, q6 - veor q6, q6, q5 - vand q11, q5, q15 - vand q6, q6, q14 - veor q5, q11, q10 - veor q6, q6, q11 - veor q15, q15, q13 - veor q14, q14, q9 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q0 - veor q12, q12, q8 - veor q0, q0, q3 - vand q8, q8, q15 - vand q3, q3, q13 - vand q12, q12, q14 - vand q0, q0, q9 - veor q8, q8, q12 - veor q0, q0, q3 - veor q12, q12, q11 - veor q3, q3, q10 - veor q6, q6, q12 - veor q0, q0, q12 - veor q5, q5, q8 - veor q3, q3, q8 - - veor q12, q7, q4 - veor q8, q1, q2 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q4 - veor q12, q12, q8 - veor q4, q4, q2 - vand q8, q8, q15 - vand q2, q2, q13 - vand q12, q12, q14 - vand q4, q4, q9 - veor q8, q8, q12 - veor q4, q4, q2 - veor q12, q12, q11 - veor q2, q2, q10 - veor q15, q15, q13 - veor q14, q14, q9 - veor q10, q15, q14 - vand q10, q10, q7 - veor q7, q7, q1 - vand q11, q1, q15 - vand q7, q7, q14 - veor q1, q11, q10 - veor q7, q7, q11 - veor q7, q7, q12 - veor q4, q4, q12 - veor q1, q1, q8 - veor q2, q2, q8 - veor q7, q7, q0 - veor q1, q1, q6 - veor q6, q6, q0 - veor q4, q4, q7 - veor q0, q0, q1 - - veor q1, q1, q5 - veor q5, q5, q2 - veor q2, q2, q3 - veor q3, q3, q5 - veor q4, q4, q5 - - veor q6, q6, q3 - subs r5,r5,#1 - bcc .Lenc_done - vext.8 q8, q0, q0, #12 @ x0 <<< 32 - vext.8 q9, q1, q1, #12 - veor q0, q0, q8 @ x0 ^ (x0 <<< 32) - vext.8 q10, q4, q4, #12 - veor q1, q1, q9 - vext.8 q11, q6, q6, #12 - veor q4, q4, q10 - vext.8 q12, q3, q3, #12 - veor q6, q6, q11 - vext.8 q13, q7, q7, #12 - veor q3, q3, q12 - vext.8 q14, q2, q2, #12 - veor q7, q7, q13 - vext.8 q15, q5, q5, #12 - veor q2, q2, q14 - - veor q9, q9, q0 - veor q5, q5, q15 - vext.8 q0, q0, q0, #8 @ (x0 ^ (x0 <<< 32)) <<< 64) - veor q10, q10, q1 - veor q8, q8, q5 - veor q9, q9, q5 - vext.8 q1, q1, q1, #8 - veor q13, q13, q3 - veor q0, q0, q8 - veor q14, q14, q7 - veor q1, q1, q9 - vext.8 q8, q3, q3, #8 - veor q12, q12, q6 - vext.8 q9, q7, q7, #8 - veor q15, q15, q2 - vext.8 q3, q6, q6, #8 - veor q11, q11, q4 - vext.8 q7, q5, q5, #8 - veor q12, q12, q5 - vext.8 q6, q2, q2, #8 - veor q11, q11, q5 - vext.8 q2, q4, q4, #8 - veor q5, q9, q13 - veor q4, q8, q12 - veor q3, q3, q11 - veor q7, q7, q15 - veor q6, q6, q14 - @ vmov q4, q8 - veor q2, q2, q10 - @ vmov q5, q9 - vldmia r6, {q12} @ .LSR - ite eq @ Thumb2 thing, samity check in ARM - addeq r6,r6,#0x10 - bne .Lenc_loop - vldmia r6, {q12} @ .LSRM0 - b .Lenc_loop -.align 4 -.Lenc_done: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q3, #1 - veor q10, q10, q5 - veor q11, q11, q7 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #1 - veor q7, q7, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q3, q3, q11 - vshr.u64 q10, q4, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q6 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q6, q6, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q4, q4, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q7, #2 - vshr.u64 q11, q3, #2 - veor q10, q10, q5 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q5, q5, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q7, q7, q10 - veor q3, q3, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q6 - veor q11, q11, q4 - vand q10, q10, q9 - vand q11, q11, q9 - veor q6, q6, q10 - vshl.u64 q10, q10, #2 - veor q4, q4, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q6, #4 - vshr.u64 q11, q4, #4 - veor q10, q10, q5 - veor q11, q11, q2 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q2, q2, q11 - vshl.u64 q11, q11, #4 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q7 - veor q11, q11, q3 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q3, q3, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - vldmia r4, {q8} @ last round key - veor q4, q4, q8 - veor q6, q6, q8 - veor q3, q3, q8 - veor q7, q7, q8 - veor q2, q2, q8 - veor q5, q5, q8 - veor q0, q0, q8 - veor q1, q1, q8 - bx lr -.size _bsaes_encrypt8,.-_bsaes_encrypt8 -.type _bsaes_key_convert,%function -.align 4 -_bsaes_key_convert: - adr r6,. - vld1.8 {q7}, [r4]! @ load round 0 key - sub r6,r6,#_bsaes_key_convert-.LM0 - vld1.8 {q15}, [r4]! @ load round 1 key - - vmov.i8 q8, #0x01 @ bit masks - vmov.i8 q9, #0x02 - vmov.i8 q10, #0x04 - vmov.i8 q11, #0x08 - vmov.i8 q12, #0x10 - vmov.i8 q13, #0x20 - vldmia r6, {q14} @ .LM0 - -#ifdef __ARMEL__ - vrev32.8 q7, q7 - vrev32.8 q15, q15 -#endif - sub r5,r5,#1 - vstmia r12!, {q7} @ save round 0 key - b .Lkey_loop - -.align 4 -.Lkey_loop: - vtbl.8 d14,{q15},d28 - vtbl.8 d15,{q15},d29 - vmov.i8 q6, #0x40 - vmov.i8 q15, #0x80 - - vtst.8 q0, q7, q8 - vtst.8 q1, q7, q9 - vtst.8 q2, q7, q10 - vtst.8 q3, q7, q11 - vtst.8 q4, q7, q12 - vtst.8 q5, q7, q13 - vtst.8 q6, q7, q6 - vtst.8 q7, q7, q15 - vld1.8 {q15}, [r4]! @ load next round key - vmvn q0, q0 @ "pnot" - vmvn q1, q1 - vmvn q5, q5 - vmvn q6, q6 -#ifdef __ARMEL__ - vrev32.8 q15, q15 -#endif - subs r5,r5,#1 - vstmia r12!,{q0-q7} @ write bit-sliced round key - bne .Lkey_loop - - vmov.i8 q7,#0x63 @ compose .L63 - @ don't save last round key - bx lr -.size _bsaes_key_convert,.-_bsaes_key_convert -.extern AES_cbc_encrypt -.extern AES_decrypt - -.global bsaes_cbc_encrypt -.type bsaes_cbc_encrypt,%function -.align 5 -bsaes_cbc_encrypt: -#ifndef __KERNEL__ - cmp r2, #128 -#ifndef __thumb__ - blo AES_cbc_encrypt -#else - bhs 1f - b AES_cbc_encrypt -1: -#endif -#endif - - @ it is up to the caller to make sure we are called with enc == 0 - - mov ip, sp - stmdb sp!, {r4-r10, lr} - VFP_ABI_PUSH - ldr r8, [ip] @ IV is 1st arg on the stack - mov r2, r2, lsr#4 @ len in 16 byte blocks - sub sp, #0x10 @ scratch space to carry over the IV - mov r9, sp @ save sp - - ldr r10, [r3, #240] @ get # of rounds -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r10, lsl#7 @ 128 bytes per inner round key - add r12, #96 @ sifze of bit-slices key schedule - - @ populate the key schedule - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - mov sp, r12 @ sp is sp - bl _bsaes_key_convert - vldmia sp, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia sp, {q7} -#else - ldr r12, [r3, #244] - eors r12, #1 - beq 0f - - @ populate the key schedule - str r12, [r3, #244] - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - add r12, r3, #248 @ pass key schedule - bl _bsaes_key_convert - add r4, r3, #248 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} - -.align 2 -0: -#endif - - vld1.8 {q15}, [r8] @ load IV - b .Lcbc_dec_loop - -.align 4 -.Lcbc_dec_loop: - subs r2, r2, #0x8 - bmi .Lcbc_dec_loop_finish - - vld1.8 {q0-q1}, [r0]! @ load input - vld1.8 {q2-q3}, [r0]! -#ifndef BSAES_ASM_EXTENDED_KEY - mov r4, sp @ pass the key -#else - add r4, r3, #248 -#endif - vld1.8 {q4-q5}, [r0]! - mov r5, r10 - vld1.8 {q6-q7}, [r0] - sub r0, r0, #0x60 - vstmia r9, {q15} @ put aside IV - - bl _bsaes_decrypt8 - - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q14-q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q3, q3, q13 - vst1.8 {q6}, [r1]! - veor q5, q5, q14 - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - vst1.8 {q3}, [r1]! - vst1.8 {q5}, [r1]! - - b .Lcbc_dec_loop - -.Lcbc_dec_loop_finish: - adds r2, r2, #8 - beq .Lcbc_dec_done - - vld1.8 {q0}, [r0]! @ load input - cmp r2, #2 - blo .Lcbc_dec_one - vld1.8 {q1}, [r0]! -#ifndef BSAES_ASM_EXTENDED_KEY - mov r4, sp @ pass the key -#else - add r4, r3, #248 -#endif - mov r5, r10 - vstmia r9, {q15} @ put aside IV - beq .Lcbc_dec_two - vld1.8 {q2}, [r0]! - cmp r2, #4 - blo .Lcbc_dec_three - vld1.8 {q3}, [r0]! - beq .Lcbc_dec_four - vld1.8 {q4}, [r0]! - cmp r2, #6 - blo .Lcbc_dec_five - vld1.8 {q5}, [r0]! - beq .Lcbc_dec_six - vld1.8 {q6}, [r0]! - sub r0, r0, #0x70 - - bl _bsaes_decrypt8 - - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q3, q3, q13 - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - vst1.8 {q3}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_six: - sub r0, r0, #0x60 - bl _bsaes_decrypt8 - vldmia r9,{q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_five: - sub r0, r0, #0x50 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q15}, [r0]! - veor q4, q4, q10 - vst1.8 {q0-q1}, [r1]! @ write output - veor q2, q2, q11 - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_four: - sub r0, r0, #0x40 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q15}, [r0]! - veor q4, q4, q10 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_three: - sub r0, r0, #0x30 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q15}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_two: - sub r0, r0, #0x20 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q15}, [r0]! @ reload input - veor q1, q1, q8 - vst1.8 {q0-q1}, [r1]! @ write output - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_one: - sub r0, r0, #0x10 - mov r10, r1 @ save original out pointer - mov r1, r9 @ use the iv scratch space as out buffer - mov r2, r3 - vmov q4,q15 @ just in case ensure that IV - vmov q5,q0 @ and input are preserved - bl AES_decrypt - vld1.8 {q0}, [r9] @ load result - veor q0, q0, q4 @ ^= IV - vmov q15, q5 @ q5 holds input - vst1.8 {q0}, [r10] @ write output - -.Lcbc_dec_done: -#ifndef BSAES_ASM_EXTENDED_KEY - vmov.i32 q0, #0 - vmov.i32 q1, #0 -.Lcbc_dec_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r9 - bne .Lcbc_dec_bzero -#endif - - mov sp, r9 - add sp, #0x10 @ add sp,r9,#0x10 is no good for thumb - vst1.8 {q15}, [r8] @ return IV - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} -.size bsaes_cbc_encrypt,.-bsaes_cbc_encrypt -.extern AES_encrypt -.global bsaes_ctr32_encrypt_blocks -.type bsaes_ctr32_encrypt_blocks,%function -.align 5 -bsaes_ctr32_encrypt_blocks: - cmp r2, #8 @ use plain AES for - blo .Lctr_enc_short @ small sizes - - mov ip, sp - stmdb sp!, {r4-r10, lr} - VFP_ABI_PUSH - ldr r8, [ip] @ ctr is 1st arg on the stack - sub sp, sp, #0x10 @ scratch space to carry over the ctr - mov r9, sp @ save sp - - ldr r10, [r3, #240] @ get # of rounds -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r10, lsl#7 @ 128 bytes per inner round key - add r12, #96 @ size of bit-sliced key schedule - - @ populate the key schedule - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - mov sp, r12 @ sp is sp - bl _bsaes_key_convert - veor q7,q7,q15 @ fix up last round key - vstmia r12, {q7} @ save last round key - - vld1.8 {q0}, [r8] @ load counter - add r8, r6, #.LREVM0SR-.LM0 @ borrow r8 - vldmia sp, {q4} @ load round0 key -#else - ldr r12, [r3, #244] - eors r12, #1 - beq 0f - - @ populate the key schedule - str r12, [r3, #244] - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - add r12, r3, #248 @ pass key schedule - bl _bsaes_key_convert - veor q7,q7,q15 @ fix up last round key - vstmia r12, {q7} @ save last round key - -.align 2 -0: add r12, r3, #248 - vld1.8 {q0}, [r8] @ load counter - adrl r8, .LREVM0SR @ borrow r8 - vldmia r12, {q4} @ load round0 key - sub sp, #0x10 @ place for adjusted round0 key -#endif - - vmov.i32 q8,#1 @ compose 1<<96 - veor q9,q9,q9 - vrev32.8 q0,q0 - vext.8 q8,q9,q8,#4 - vrev32.8 q4,q4 - vadd.u32 q9,q8,q8 @ compose 2<<96 - vstmia sp, {q4} @ save adjusted round0 key - b .Lctr_enc_loop - -.align 4 -.Lctr_enc_loop: - vadd.u32 q10, q8, q9 @ compose 3<<96 - vadd.u32 q1, q0, q8 @ +1 - vadd.u32 q2, q0, q9 @ +2 - vadd.u32 q3, q0, q10 @ +3 - vadd.u32 q4, q1, q10 - vadd.u32 q5, q2, q10 - vadd.u32 q6, q3, q10 - vadd.u32 q7, q4, q10 - vadd.u32 q10, q5, q10 @ next counter - - @ Borrow prologue from _bsaes_encrypt8 to use the opportunity - @ to flip byte order in 32-bit counter - - vldmia sp, {q9} @ load round0 key -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x10 @ pass next round key -#else - add r4, r3, #264 -#endif - vldmia r8, {q8} @ .LREVM0SR - mov r5, r10 @ pass rounds - vstmia r9, {q10} @ save next counter - sub r6, r8, #.LREVM0SR-.LSR @ pass constants - - bl _bsaes_encrypt8_alt - - subs r2, r2, #8 - blo .Lctr_enc_loop_done - - vld1.8 {q8-q9}, [r0]! @ load input - vld1.8 {q10-q11}, [r0]! - veor q0, q8 - veor q1, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q10 - veor q6, q11 - vld1.8 {q14-q15}, [r0]! - veor q3, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q7, q13 - veor q2, q14 - vst1.8 {q4}, [r1]! - veor q5, q15 - vst1.8 {q6}, [r1]! - vmov.i32 q8, #1 @ compose 1<<96 - vst1.8 {q3}, [r1]! - veor q9, q9, q9 - vst1.8 {q7}, [r1]! - vext.8 q8, q9, q8, #4 - vst1.8 {q2}, [r1]! - vadd.u32 q9,q8,q8 @ compose 2<<96 - vst1.8 {q5}, [r1]! - vldmia r9, {q0} @ load counter - - bne .Lctr_enc_loop - b .Lctr_enc_done - -.align 4 -.Lctr_enc_loop_done: - add r2, r2, #8 - vld1.8 {q8}, [r0]! @ load input - veor q0, q8 - vst1.8 {q0}, [r1]! @ write output - cmp r2, #2 - blo .Lctr_enc_done - vld1.8 {q9}, [r0]! - veor q1, q9 - vst1.8 {q1}, [r1]! - beq .Lctr_enc_done - vld1.8 {q10}, [r0]! - veor q4, q10 - vst1.8 {q4}, [r1]! - cmp r2, #4 - blo .Lctr_enc_done - vld1.8 {q11}, [r0]! - veor q6, q11 - vst1.8 {q6}, [r1]! - beq .Lctr_enc_done - vld1.8 {q12}, [r0]! - veor q3, q12 - vst1.8 {q3}, [r1]! - cmp r2, #6 - blo .Lctr_enc_done - vld1.8 {q13}, [r0]! - veor q7, q13 - vst1.8 {q7}, [r1]! - beq .Lctr_enc_done - vld1.8 {q14}, [r0] - veor q2, q14 - vst1.8 {q2}, [r1]! - -.Lctr_enc_done: - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifndef BSAES_ASM_EXTENDED_KEY -.Lctr_enc_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r9 - bne .Lctr_enc_bzero -#else - vstmia sp, {q0-q1} -#endif - - mov sp, r9 - add sp, #0x10 @ add sp,r9,#0x10 is no good for thumb - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.align 4 -.Lctr_enc_short: - ldr ip, [sp] @ ctr pointer is passed on stack - stmdb sp!, {r4-r8, lr} - - mov r4, r0 @ copy arguments - mov r5, r1 - mov r6, r2 - mov r7, r3 - ldr r8, [ip, #12] @ load counter LSW - vld1.8 {q1}, [ip] @ load whole counter value -#ifdef __ARMEL__ - rev r8, r8 -#endif - sub sp, sp, #0x10 - vst1.8 {q1}, [sp,:64] @ copy counter value - sub sp, sp, #0x10 - -.Lctr_enc_short_loop: - add r0, sp, #0x10 @ input counter value - mov r1, sp @ output on the stack - mov r2, r7 @ key - - bl AES_encrypt - - vld1.8 {q0}, [r4]! @ load input - vld1.8 {q1}, [sp,:64] @ load encrypted counter - add r8, r8, #1 -#ifdef __ARMEL__ - rev r0, r8 - str r0, [sp, #0x1c] @ next counter value -#else - str r8, [sp, #0x1c] @ next counter value -#endif - veor q0,q0,q1 - vst1.8 {q0}, [r5]! @ store output - subs r6, r6, #1 - bne .Lctr_enc_short_loop - - vmov.i32 q0, #0 - vmov.i32 q1, #0 - vstmia sp!, {q0-q1} - - ldmia sp!, {r4-r8, pc} -.size bsaes_ctr32_encrypt_blocks,.-bsaes_ctr32_encrypt_blocks -.globl bsaes_xts_encrypt -.type bsaes_xts_encrypt,%function -.align 4 -bsaes_xts_encrypt: - mov ip, sp - stmdb sp!, {r4-r10, lr} @ 0x20 - VFP_ABI_PUSH - mov r6, sp @ future r3 - - mov r7, r0 - mov r8, r1 - mov r9, r2 - mov r10, r3 - - sub r0, sp, #0x10 @ 0x10 - bic r0, #0xf @ align at 16 bytes - mov sp, r0 - -#ifdef XTS_CHAIN_TWEAK - ldr r0, [ip] @ pointer to input tweak -#else - @ generate initial tweak - ldr r0, [ip, #4] @ iv[] - mov r1, sp - ldr r2, [ip, #0] @ key2 - bl AES_encrypt - mov r0,sp @ pointer to initial tweak -#endif - - ldr r1, [r10, #240] @ get # of rounds - mov r3, r6 -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r1, lsl#7 @ 128 bytes per inner round key - @ add r12, #96 @ size of bit-sliced key schedule - sub r12, #48 @ place for tweak[9] - - @ populate the key schedule - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - mov sp, r12 - add r12, #0x90 @ pass key schedule - bl _bsaes_key_convert - veor q7, q7, q15 @ fix up last round key - vstmia r12, {q7} @ save last round key -#else - ldr r12, [r10, #244] - eors r12, #1 - beq 0f - - str r12, [r10, #244] - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - add r12, r10, #248 @ pass key schedule - bl _bsaes_key_convert - veor q7, q7, q15 @ fix up last round key - vstmia r12, {q7} - -.align 2 -0: sub sp, #0x90 @ place for tweak[9] -#endif - - vld1.8 {q8}, [r0] @ initial tweak - adr r2, .Lxts_magic - - subs r9, #0x80 - blo .Lxts_enc_short - b .Lxts_enc_loop - -.align 4 -.Lxts_enc_loop: - vldmia r2, {q5} @ load XTS magic - vshr.s64 q6, q8, #63 - mov r0, sp - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q9, #63 - veor q9, q9, q6 - vand q7, q7, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q10, #63 - veor q10, q10, q7 - vand q6, q6, q5 - vld1.8 {q0}, [r7]! - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q11, #63 - veor q11, q11, q6 - vand q7, q7, q5 - vld1.8 {q1}, [r7]! - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q12, #63 - veor q12, q12, q7 - vand q6, q6, q5 - vld1.8 {q2}, [r7]! - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q13, #63 - veor q13, q13, q6 - vand q7, q7, q5 - vld1.8 {q3}, [r7]! - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q14, #63 - veor q14, q14, q7 - vand q6, q6, q5 - vld1.8 {q4}, [r7]! - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q15, #63 - veor q15, q15, q6 - vand q7, q7, q5 - vld1.8 {q5}, [r7]! - veor q4, q4, q12 - vadd.u64 q8, q15, q15 - vst1.64 {q15}, [r0,:128]! - vswp d15,d14 - veor q8, q8, q7 - vst1.64 {q8}, [r0,:128] @ next round tweak - - vld1.8 {q6-q7}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - veor q7, q7, q15 - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vld1.64 {q14-q15}, [r0,:128]! - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q2, q14 - vst1.8 {q10-q11}, [r8]! - veor q13, q5, q15 - vst1.8 {q12-q13}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - - subs r9, #0x80 - bpl .Lxts_enc_loop - -.Lxts_enc_short: - adds r9, #0x70 - bmi .Lxts_enc_done - - vldmia r2, {q5} @ load XTS magic - vshr.s64 q7, q8, #63 - mov r0, sp - vand q7, q7, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q9, #63 - veor q9, q9, q7 - vand q6, q6, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q10, #63 - veor q10, q10, q6 - vand q7, q7, q5 - vld1.8 {q0}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_1 - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q11, #63 - veor q11, q11, q7 - vand q6, q6, q5 - vld1.8 {q1}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_2 - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q12, #63 - veor q12, q12, q6 - vand q7, q7, q5 - vld1.8 {q2}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_3 - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q13, #63 - veor q13, q13, q7 - vand q6, q6, q5 - vld1.8 {q3}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_4 - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q14, #63 - veor q14, q14, q6 - vand q7, q7, q5 - vld1.8 {q4}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_5 - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q15, #63 - veor q15, q15, q7 - vand q6, q6, q5 - vld1.8 {q5}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_6 - veor q4, q4, q12 - sub r9, #0x10 - vst1.64 {q15}, [r0,:128] @ next round tweak - - vld1.8 {q6}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vld1.64 {q14}, [r0,:128]! - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q2, q14 - vst1.8 {q10-q11}, [r8]! - vst1.8 {q12}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_6: - veor q4, q4, q12 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q5, q5, q13 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - vst1.8 {q10-q11}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done - -@ put this in range for both ARM and Thumb mode adr instructions -.align 5 -.Lxts_magic: - .quad 1, 0x87 - -.align 5 -.Lxts_enc_5: - veor q3, q3, q11 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q4, q4, q12 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - vst1.8 {q10}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_4: - veor q2, q2, q10 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q3, q3, q11 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vst1.8 {q8-q9}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_3: - veor q1, q1, q9 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q2, q2, q10 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - vst1.8 {q8}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_2: - veor q0, q0, q8 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q1, q1, q9 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - vst1.8 {q0-q1}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_1: - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_encrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r8]! - mov r3, r4 - - vmov q8, q9 @ next round tweak - -.Lxts_enc_done: -#ifndef XTS_CHAIN_TWEAK - adds r9, #0x10 - beq .Lxts_enc_ret - sub r6, r8, #0x10 - -.Lxts_enc_steal: - ldrb r0, [r7], #1 - ldrb r1, [r8, #-0x10] - strb r0, [r8, #-0x10] - strb r1, [r8], #1 - - subs r9, #1 - bhi .Lxts_enc_steal - - vld1.8 {q0}, [r6] - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_encrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r6] - mov r3, r4 -#endif - -.Lxts_enc_ret: - bic r0, r3, #0xf - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifdef XTS_CHAIN_TWEAK - ldr r1, [r3, #0x20+VFP_ABI_FRAME] @ chain tweak -#endif -.Lxts_enc_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r0 - bne .Lxts_enc_bzero - - mov sp, r3 -#ifdef XTS_CHAIN_TWEAK - vst1.8 {q8}, [r1] -#endif - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.size bsaes_xts_encrypt,.-bsaes_xts_encrypt - -.globl bsaes_xts_decrypt -.type bsaes_xts_decrypt,%function -.align 4 -bsaes_xts_decrypt: - mov ip, sp - stmdb sp!, {r4-r10, lr} @ 0x20 - VFP_ABI_PUSH - mov r6, sp @ future r3 - - mov r7, r0 - mov r8, r1 - mov r9, r2 - mov r10, r3 - - sub r0, sp, #0x10 @ 0x10 - bic r0, #0xf @ align at 16 bytes - mov sp, r0 - -#ifdef XTS_CHAIN_TWEAK - ldr r0, [ip] @ pointer to input tweak -#else - @ generate initial tweak - ldr r0, [ip, #4] @ iv[] - mov r1, sp - ldr r2, [ip, #0] @ key2 - bl AES_encrypt - mov r0, sp @ pointer to initial tweak -#endif - - ldr r1, [r10, #240] @ get # of rounds - mov r3, r6 -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r1, lsl#7 @ 128 bytes per inner round key - @ add r12, #96 @ size of bit-sliced key schedule - sub r12, #48 @ place for tweak[9] - - @ populate the key schedule - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - mov sp, r12 - add r12, #0x90 @ pass key schedule - bl _bsaes_key_convert - add r4, sp, #0x90 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} -#else - ldr r12, [r10, #244] - eors r12, #1 - beq 0f - - str r12, [r10, #244] - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - add r12, r10, #248 @ pass key schedule - bl _bsaes_key_convert - add r4, r10, #248 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} - -.align 2 -0: sub sp, #0x90 @ place for tweak[9] -#endif - vld1.8 {q8}, [r0] @ initial tweak - adr r2, .Lxts_magic - - tst r9, #0xf @ if not multiple of 16 - it ne @ Thumb2 thing, sanity check in ARM - subne r9, #0x10 @ subtract another 16 bytes - subs r9, #0x80 - - blo .Lxts_dec_short - b .Lxts_dec_loop - -.align 4 -.Lxts_dec_loop: - vldmia r2, {q5} @ load XTS magic - vshr.s64 q6, q8, #63 - mov r0, sp - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q9, #63 - veor q9, q9, q6 - vand q7, q7, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q10, #63 - veor q10, q10, q7 - vand q6, q6, q5 - vld1.8 {q0}, [r7]! - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q11, #63 - veor q11, q11, q6 - vand q7, q7, q5 - vld1.8 {q1}, [r7]! - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q12, #63 - veor q12, q12, q7 - vand q6, q6, q5 - vld1.8 {q2}, [r7]! - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q13, #63 - veor q13, q13, q6 - vand q7, q7, q5 - vld1.8 {q3}, [r7]! - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q14, #63 - veor q14, q14, q7 - vand q6, q6, q5 - vld1.8 {q4}, [r7]! - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q15, #63 - veor q15, q15, q6 - vand q7, q7, q5 - vld1.8 {q5}, [r7]! - veor q4, q4, q12 - vadd.u64 q8, q15, q15 - vst1.64 {q15}, [r0,:128]! - vswp d15,d14 - veor q8, q8, q7 - vst1.64 {q8}, [r0,:128] @ next round tweak - - vld1.8 {q6-q7}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - veor q7, q7, q15 - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vld1.64 {q14-q15}, [r0,:128]! - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q3, q14 - vst1.8 {q10-q11}, [r8]! - veor q13, q5, q15 - vst1.8 {q12-q13}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - - subs r9, #0x80 - bpl .Lxts_dec_loop - -.Lxts_dec_short: - adds r9, #0x70 - bmi .Lxts_dec_done - - vldmia r2, {q5} @ load XTS magic - vshr.s64 q7, q8, #63 - mov r0, sp - vand q7, q7, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q9, #63 - veor q9, q9, q7 - vand q6, q6, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q10, #63 - veor q10, q10, q6 - vand q7, q7, q5 - vld1.8 {q0}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_1 - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q11, #63 - veor q11, q11, q7 - vand q6, q6, q5 - vld1.8 {q1}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_2 - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q12, #63 - veor q12, q12, q6 - vand q7, q7, q5 - vld1.8 {q2}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_3 - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q13, #63 - veor q13, q13, q7 - vand q6, q6, q5 - vld1.8 {q3}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_4 - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q14, #63 - veor q14, q14, q6 - vand q7, q7, q5 - vld1.8 {q4}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_5 - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q15, #63 - veor q15, q15, q7 - vand q6, q6, q5 - vld1.8 {q5}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_6 - veor q4, q4, q12 - sub r9, #0x10 - vst1.64 {q15}, [r0,:128] @ next round tweak - - vld1.8 {q6}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vld1.64 {q14}, [r0,:128]! - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q3, q14 - vst1.8 {q10-q11}, [r8]! - vst1.8 {q12}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_6: - vst1.64 {q14}, [r0,:128] @ next round tweak - - veor q4, q4, q12 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q5, q5, q13 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - vst1.8 {q10-q11}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_5: - veor q3, q3, q11 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q4, q4, q12 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - vst1.8 {q10}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_4: - veor q2, q2, q10 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q3, q3, q11 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vst1.8 {q8-q9}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_3: - veor q1, q1, q9 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q2, q2, q10 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - vst1.8 {q8}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_2: - veor q0, q0, q8 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q1, q1, q9 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - vst1.8 {q0-q1}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_1: - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r5, r2 @ preserve magic - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r8]! - mov r3, r4 - mov r2, r5 - - vmov q8, q9 @ next round tweak - -.Lxts_dec_done: -#ifndef XTS_CHAIN_TWEAK - adds r9, #0x10 - beq .Lxts_dec_ret - - @ calculate one round of extra tweak for the stolen ciphertext - vldmia r2, {q5} - vshr.s64 q6, q8, #63 - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vswp d13,d12 - veor q9, q9, q6 - - @ perform the final decryption with the last tweak value - vld1.8 {q0}, [r7]! - mov r0, sp - veor q0, q0, q9 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q9 - vst1.8 {q0}, [r8] - - mov r6, r8 -.Lxts_dec_steal: - ldrb r1, [r8] - ldrb r0, [r7], #1 - strb r1, [r8, #0x10] - strb r0, [r8], #1 - - subs r9, #1 - bhi .Lxts_dec_steal - - vld1.8 {q0}, [r6] - mov r0, sp - veor q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r6] - mov r3, r4 -#endif - -.Lxts_dec_ret: - bic r0, r3, #0xf - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifdef XTS_CHAIN_TWEAK - ldr r1, [r3, #0x20+VFP_ABI_FRAME] @ chain tweak -#endif -.Lxts_dec_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r0 - bne .Lxts_dec_bzero - - mov sp, r3 -#ifdef XTS_CHAIN_TWEAK - vst1.8 {q8}, [r1] -#endif - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.size bsaes_xts_decrypt,.-bsaes_xts_decrypt -#endif diff --git a/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S b/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S deleted file mode 100644 index ad71aa0b667d94..00000000000000 --- a/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S +++ /dev/null @@ -1,203 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 -.type mul_1x1_ialu,%function -.align 5 -mul_1x1_ialu: - mov r4,#0 - bic r5,r1,#3<<30 @ a1=a&0x3fffffff - str r4,[sp,#0] @ tab[0]=0 - add r6,r5,r5 @ a2=a1<<1 - str r5,[sp,#4] @ tab[1]=a1 - eor r7,r5,r6 @ a1^a2 - str r6,[sp,#8] @ tab[2]=a2 - mov r8,r5,lsl#2 @ a4=a1<<2 - str r7,[sp,#12] @ tab[3]=a1^a2 - eor r9,r5,r8 @ a1^a4 - str r8,[sp,#16] @ tab[4]=a4 - eor r4,r6,r8 @ a2^a4 - str r9,[sp,#20] @ tab[5]=a1^a4 - eor r7,r7,r8 @ a1^a2^a4 - str r4,[sp,#24] @ tab[6]=a2^a4 - and r8,r12,r0,lsl#2 - str r7,[sp,#28] @ tab[7]=a1^a2^a4 - - and r9,r12,r0,lsr#1 - ldr r5,[sp,r8] @ tab[b & 0x7] - and r8,r12,r0,lsr#4 - ldr r7,[sp,r9] @ tab[b >> 3 & 0x7] - and r9,r12,r0,lsr#7 - ldr r6,[sp,r8] @ tab[b >> 6 & 0x7] - eor r5,r5,r7,lsl#3 @ stall - mov r4,r7,lsr#29 - ldr r7,[sp,r9] @ tab[b >> 9 & 0x7] - - and r8,r12,r0,lsr#10 - eor r5,r5,r6,lsl#6 - eor r4,r4,r6,lsr#26 - ldr r6,[sp,r8] @ tab[b >> 12 & 0x7] - - and r9,r12,r0,lsr#13 - eor r5,r5,r7,lsl#9 - eor r4,r4,r7,lsr#23 - ldr r7,[sp,r9] @ tab[b >> 15 & 0x7] - - and r8,r12,r0,lsr#16 - eor r5,r5,r6,lsl#12 - eor r4,r4,r6,lsr#20 - ldr r6,[sp,r8] @ tab[b >> 18 & 0x7] - - and r9,r12,r0,lsr#19 - eor r5,r5,r7,lsl#15 - eor r4,r4,r7,lsr#17 - ldr r7,[sp,r9] @ tab[b >> 21 & 0x7] - - and r8,r12,r0,lsr#22 - eor r5,r5,r6,lsl#18 - eor r4,r4,r6,lsr#14 - ldr r6,[sp,r8] @ tab[b >> 24 & 0x7] - - and r9,r12,r0,lsr#25 - eor r5,r5,r7,lsl#21 - eor r4,r4,r7,lsr#11 - ldr r7,[sp,r9] @ tab[b >> 27 & 0x7] - - tst r1,#1<<30 - and r8,r12,r0,lsr#28 - eor r5,r5,r6,lsl#24 - eor r4,r4,r6,lsr#8 - ldr r6,[sp,r8] @ tab[b >> 30 ] - - eorne r5,r5,r0,lsl#30 - eorne r4,r4,r0,lsr#2 - tst r1,#1<<31 - eor r5,r5,r7,lsl#27 - eor r4,r4,r7,lsr#5 - eorne r5,r5,r0,lsl#31 - eorne r4,r4,r0,lsr#1 - eor r5,r5,r6,lsl#30 - eor r4,r4,r6,lsr#2 - - mov pc,lr -.size mul_1x1_ialu,.-mul_1x1_ialu -.global bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,%function -.align 5 -bn_GF2m_mul_2x2: -#if __ARM_MAX_ARCH__>=7 - ldr r12,.LOPENSSL_armcap -.Lpic: ldr r12,[pc,r12] - tst r12,#1 - bne .LNEON -#endif - stmdb sp!,{r4-r10,lr} - mov r10,r0 @ reassign 1st argument - mov r0,r3 @ r0=b1 - ldr r3,[sp,#32] @ load b0 - mov r12,#7<<2 - sub sp,sp,#32 @ allocate tab[8] - - bl mul_1x1_ialu @ a1·b1 - str r5,[r10,#8] - str r4,[r10,#12] - - eor r0,r0,r3 @ flip b0 and b1 - eor r1,r1,r2 @ flip a0 and a1 - eor r3,r3,r0 - eor r2,r2,r1 - eor r0,r0,r3 - eor r1,r1,r2 - bl mul_1x1_ialu @ a0·b0 - str r5,[r10] - str r4,[r10,#4] - - eor r1,r1,r2 - eor r0,r0,r3 - bl mul_1x1_ialu @ (a1+a0)·(b1+b0) - ldmia r10,{r6-r9} - eor r5,r5,r4 - eor r4,r4,r7 - eor r5,r5,r6 - eor r4,r4,r8 - eor r5,r5,r9 - eor r4,r4,r9 - str r4,[r10,#8] - eor r5,r5,r4 - add sp,sp,#32 @ destroy tab[8] - str r5,[r10,#4] - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r10,pc} -#else - ldmia sp!,{r4-r10,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.align 5 -.LNEON: - ldr r12, [sp] @ 5th argument - vmov.32 d26, r2, r1 - vmov.32 d27, r12, r3 - vmov.i64 d28, #0x0000ffffffffffff - vmov.i64 d29, #0x00000000ffffffff - vmov.i64 d30, #0x000000000000ffff - - vext.8 d2, d26, d26, #1 @ A1 - vmull.p8 q1, d2, d27 @ F = A1*B - vext.8 d0, d27, d27, #1 @ B1 - vmull.p8 q0, d26, d0 @ E = A*B1 - vext.8 d4, d26, d26, #2 @ A2 - vmull.p8 q2, d4, d27 @ H = A2*B - vext.8 d16, d27, d27, #2 @ B2 - vmull.p8 q8, d26, d16 @ G = A*B2 - vext.8 d6, d26, d26, #3 @ A3 - veor q1, q1, q0 @ L = E + F - vmull.p8 q3, d6, d27 @ J = A3*B - vext.8 d0, d27, d27, #3 @ B3 - veor q2, q2, q8 @ M = G + H - vmull.p8 q0, d26, d0 @ I = A*B3 - veor d2, d2, d3 @ t0 = (L) (P0 + P1) << 8 - vand d3, d3, d28 - vext.8 d16, d27, d27, #4 @ B4 - veor d4, d4, d5 @ t1 = (M) (P2 + P3) << 16 - vand d5, d5, d29 - vmull.p8 q8, d26, d16 @ K = A*B4 - veor q3, q3, q0 @ N = I + J - veor d2, d2, d3 - veor d4, d4, d5 - veor d6, d6, d7 @ t2 = (N) (P4 + P5) << 24 - vand d7, d7, d30 - vext.8 q1, q1, q1, #15 - veor d16, d16, d17 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d17, #0 - vext.8 q2, q2, q2, #14 - veor d6, d6, d7 - vmull.p8 q0, d26, d27 @ D = A*B - vext.8 q8, q8, q8, #12 - vext.8 q3, q3, q3, #13 - veor q1, q1, q2 - veor q3, q3, q8 - veor q0, q0, q1 - veor q0, q0, q3 - - vst1.32 {q0}, [r0] - bx lr @ bx lr -#endif -.size bn_GF2m_mul_2x2,.-bn_GF2m_mul_2x2 -#if __ARM_MAX_ARCH__>=7 -.align 5 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-(.Lpic+8) -#endif -.asciz "GF(2^m) Multiplication for ARMv4/NEON, CRYPTOGAMS by " -.align 5 - -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm/arm-void-gas/bn/armv4-mont.S b/deps/openssl/asm/arm-void-gas/bn/armv4-mont.S deleted file mode 100644 index 71fc296fcab181..00000000000000 --- a/deps/openssl/asm/arm-void-gas/bn/armv4-mont.S +++ /dev/null @@ -1,580 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -#if __ARM_MAX_ARCH__>=7 -.align 5 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-bn_mul_mont -#endif - -.global bn_mul_mont -.type bn_mul_mont,%function - -.align 5 -bn_mul_mont: - ldr ip,[sp,#4] @ load num - stmdb sp!,{r0,r2} @ sp points at argument block -#if __ARM_MAX_ARCH__>=7 - tst ip,#7 - bne .Lialu - adr r0,bn_mul_mont - ldr r2,.LOPENSSL_armcap - ldr r0,[r0,r2] - tst r0,#1 @ NEON available? - ldmia sp, {r0,r2} - beq .Lialu - add sp,sp,#8 - b bn_mul8x_mont_neon -.align 4 -.Lialu: -#endif - cmp ip,#2 - mov r0,ip @ load num - movlt r0,#0 - addlt sp,sp,#2*4 - blt .Labrt - - stmdb sp!,{r4-r12,lr} @ save 10 registers - - mov r0,r0,lsl#2 @ rescale r0 for byte count - sub sp,sp,r0 @ alloca(4*num) - sub sp,sp,#4 @ +extra dword - sub r0,r0,#4 @ "num=num-1" - add r4,r2,r0 @ &bp[num-1] - - add r0,sp,r0 @ r0 to point at &tp[num-1] - ldr r8,[r0,#14*4] @ &n0 - ldr r2,[r2] @ bp[0] - ldr r5,[r1],#4 @ ap[0],ap++ - ldr r6,[r3],#4 @ np[0],np++ - ldr r8,[r8] @ *n0 - str r4,[r0,#15*4] @ save &bp[num] - - umull r10,r11,r5,r2 @ ap[0]*bp[0] - str r8,[r0,#14*4] @ save n0 value - mul r8,r10,r8 @ "tp[0]"*n0 - mov r12,#0 - umlal r10,r12,r6,r8 @ np[0]*n0+"t[0]" - mov r4,sp - -.L1st: - ldr r5,[r1],#4 @ ap[j],ap++ - mov r10,r11 - ldr r6,[r3],#4 @ np[j],np++ - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[j]*bp[0] - mov r14,#0 - umlal r12,r14,r6,r8 @ np[j]*n0 - adds r12,r12,r10 - str r12,[r4],#4 @ tp[j-1]=,tp++ - adc r12,r14,#0 - cmp r4,r0 - bne .L1st - - adds r12,r12,r11 - ldr r4,[r0,#13*4] @ restore bp - mov r14,#0 - ldr r8,[r0,#14*4] @ restore n0 - adc r14,r14,#0 - str r12,[r0] @ tp[num-1]= - str r14,[r0,#4] @ tp[num]= - -.Louter: - sub r7,r0,sp @ "original" r0-1 value - sub r1,r1,r7 @ "rewind" ap to &ap[1] - ldr r2,[r4,#4]! @ *(++bp) - sub r3,r3,r7 @ "rewind" np to &np[1] - ldr r5,[r1,#-4] @ ap[0] - ldr r10,[sp] @ tp[0] - ldr r6,[r3,#-4] @ np[0] - ldr r7,[sp,#4] @ tp[1] - - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[0]*bp[i]+tp[0] - str r4,[r0,#13*4] @ save bp - mul r8,r10,r8 - mov r12,#0 - umlal r10,r12,r6,r8 @ np[0]*n0+"tp[0]" - mov r4,sp - -.Linner: - ldr r5,[r1],#4 @ ap[j],ap++ - adds r10,r11,r7 @ +=tp[j] - ldr r6,[r3],#4 @ np[j],np++ - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[j]*bp[i] - mov r14,#0 - umlal r12,r14,r6,r8 @ np[j]*n0 - adc r11,r11,#0 - ldr r7,[r4,#8] @ tp[j+1] - adds r12,r12,r10 - str r12,[r4],#4 @ tp[j-1]=,tp++ - adc r12,r14,#0 - cmp r4,r0 - bne .Linner - - adds r12,r12,r11 - mov r14,#0 - ldr r4,[r0,#13*4] @ restore bp - adc r14,r14,#0 - ldr r8,[r0,#14*4] @ restore n0 - adds r12,r12,r7 - ldr r7,[r0,#15*4] @ restore &bp[num] - adc r14,r14,#0 - str r12,[r0] @ tp[num-1]= - str r14,[r0,#4] @ tp[num]= - - cmp r4,r7 - bne .Louter - - ldr r2,[r0,#12*4] @ pull rp - add r0,r0,#4 @ r0 to point at &tp[num] - sub r5,r0,sp @ "original" num value - mov r4,sp @ "rewind" r4 - mov r1,r4 @ "borrow" r1 - sub r3,r3,r5 @ "rewind" r3 to &np[0] - - subs r7,r7,r7 @ "clear" carry flag -.Lsub: ldr r7,[r4],#4 - ldr r6,[r3],#4 - sbcs r7,r7,r6 @ tp[j]-np[j] - str r7,[r2],#4 @ rp[j]= - teq r4,r0 @ preserve carry - bne .Lsub - sbcs r14,r14,#0 @ upmost carry - mov r4,sp @ "rewind" r4 - sub r2,r2,r5 @ "rewind" r2 - - and r1,r4,r14 - bic r3,r2,r14 - orr r1,r1,r3 @ ap=borrow?tp:rp - -.Lcopy: ldr r7,[r1],#4 @ copy or in-place refresh - str sp,[r4],#4 @ zap tp - str r7,[r2],#4 - cmp r4,r0 - bne .Lcopy - - add sp,r0,#4 @ skip over tp[num+1] - ldmia sp!,{r4-r12,lr} @ restore registers - add sp,sp,#2*4 @ skip over {r0,r2} - mov r0,#1 -.Labrt: -#if __ARM_ARCH__>=5 - bx lr @ .word 0xe12fff1e -#else - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size bn_mul_mont,.-bn_mul_mont -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.type bn_mul8x_mont_neon,%function -.align 5 -bn_mul8x_mont_neon: - mov ip,sp - stmdb sp!,{r4-r11} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldmia ip,{r4-r5} @ load rest of parameter block - - sub r7,sp,#16 - vld1.32 {d28[0]}, [r2,:32]! - sub r7,r7,r5,lsl#4 - vld1.32 {d0-d3}, [r1]! @ can't specify :32 :-( - and r7,r7,#-64 - vld1.32 {d30[0]}, [r4,:32] - mov sp,r7 @ alloca - veor d8,d8,d8 - subs r8,r5,#8 - vzip.16 d28,d8 - - vmull.u32 q6,d28,d0[0] - vmull.u32 q7,d28,d0[1] - vmull.u32 q8,d28,d1[0] - vshl.i64 d10,d13,#16 - vmull.u32 q9,d28,d1[1] - - vadd.u64 d10,d10,d12 - veor d8,d8,d8 - vmul.u32 d29,d10,d30 - - vmull.u32 q10,d28,d2[0] - vld1.32 {d4-d7}, [r3]! - vmull.u32 q11,d28,d2[1] - vmull.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmull.u32 q13,d28,d3[1] - - bne .LNEON_1st - - @ special case for num=8, everything is in register bank... - - vmlal.u32 q6,d29,d4[0] - sub r9,r5,#1 - vmlal.u32 q7,d29,d4[1] - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vmov q5,q6 - vmlal.u32 q11,d29,d6[1] - vmov q6,q7 - vmlal.u32 q12,d29,d7[0] - vmov q7,q8 - vmlal.u32 q13,d29,d7[1] - vmov q8,q9 - vmov q9,q10 - vshr.u64 d10,d10,#16 - vmov q10,q11 - vmov q11,q12 - vadd.u64 d10,d10,d11 - vmov q12,q13 - veor q13,q13 - vshr.u64 d10,d10,#16 - - b .LNEON_outer8 - -.align 4 -.LNEON_outer8: - vld1.32 {d28[0]}, [r2,:32]! - veor d8,d8,d8 - vzip.16 d28,d8 - vadd.u64 d12,d12,d10 - - vmlal.u32 q6,d28,d0[0] - vmlal.u32 q7,d28,d0[1] - vmlal.u32 q8,d28,d1[0] - vshl.i64 d10,d13,#16 - vmlal.u32 q9,d28,d1[1] - - vadd.u64 d10,d10,d12 - veor d8,d8,d8 - subs r9,r9,#1 - vmul.u32 d29,d10,d30 - - vmlal.u32 q10,d28,d2[0] - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmlal.u32 q13,d28,d3[1] - - vmlal.u32 q6,d29,d4[0] - vmlal.u32 q7,d29,d4[1] - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vmov q5,q6 - vmlal.u32 q11,d29,d6[1] - vmov q6,q7 - vmlal.u32 q12,d29,d7[0] - vmov q7,q8 - vmlal.u32 q13,d29,d7[1] - vmov q8,q9 - vmov q9,q10 - vshr.u64 d10,d10,#16 - vmov q10,q11 - vmov q11,q12 - vadd.u64 d10,d10,d11 - vmov q12,q13 - veor q13,q13 - vshr.u64 d10,d10,#16 - - bne .LNEON_outer8 - - vadd.u64 d12,d12,d10 - mov r7,sp - vshr.u64 d10,d12,#16 - mov r8,r5 - vadd.u64 d13,d13,d10 - add r6,sp,#16 - vshr.u64 d10,d13,#16 - vzip.16 d12,d13 - - b .LNEON_tail2 - -.align 4 -.LNEON_1st: - vmlal.u32 q6,d29,d4[0] - vld1.32 {d0-d3}, [r1]! - vmlal.u32 q7,d29,d4[1] - subs r8,r8,#8 - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vld1.32 {d4-d5}, [r3]! - vmlal.u32 q11,d29,d6[1] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vmlal.u32 q13,d29,d7[1] - vst1.64 {q8-q9}, [r7,:256]! - - vmull.u32 q6,d28,d0[0] - vld1.32 {d6-d7}, [r3]! - vmull.u32 q7,d28,d0[1] - vst1.64 {q10-q11}, [r7,:256]! - vmull.u32 q8,d28,d1[0] - vmull.u32 q9,d28,d1[1] - vst1.64 {q12-q13}, [r7,:256]! - - vmull.u32 q10,d28,d2[0] - vmull.u32 q11,d28,d2[1] - vmull.u32 q12,d28,d3[0] - vmull.u32 q13,d28,d3[1] - - bne .LNEON_1st - - vmlal.u32 q6,d29,d4[0] - add r6,sp,#16 - vmlal.u32 q7,d29,d4[1] - sub r1,r1,r5,lsl#2 @ rewind r1 - vmlal.u32 q8,d29,d5[0] - vld1.64 {q5}, [sp,:128] - vmlal.u32 q9,d29,d5[1] - sub r9,r5,#1 - - vmlal.u32 q10,d29,d6[0] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q11,d29,d6[1] - vshr.u64 d10,d10,#16 - vld1.64 {q6}, [r6, :128]! - vmlal.u32 q12,d29,d7[0] - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q13,d29,d7[1] - - vst1.64 {q10-q11}, [r7,:256]! - vadd.u64 d10,d10,d11 - veor q4,q4,q4 - vst1.64 {q12-q13}, [r7,:256]! - vld1.64 {q7-q8}, [r6, :256]! - vst1.64 {q4}, [r7,:128] - vshr.u64 d10,d10,#16 - - b .LNEON_outer - -.align 4 -.LNEON_outer: - vld1.32 {d28[0]}, [r2,:32]! - sub r3,r3,r5,lsl#2 @ rewind r3 - vld1.32 {d0-d3}, [r1]! - veor d8,d8,d8 - mov r7,sp - vzip.16 d28,d8 - sub r8,r5,#8 - vadd.u64 d12,d12,d10 - - vmlal.u32 q6,d28,d0[0] - vld1.64 {q9-q10},[r6,:256]! - vmlal.u32 q7,d28,d0[1] - vmlal.u32 q8,d28,d1[0] - vld1.64 {q11-q12},[r6,:256]! - vmlal.u32 q9,d28,d1[1] - - vshl.i64 d10,d13,#16 - veor d8,d8,d8 - vadd.u64 d10,d10,d12 - vld1.64 {q13},[r6,:128]! - vmul.u32 d29,d10,d30 - - vmlal.u32 q10,d28,d2[0] - vld1.32 {d4-d7}, [r3]! - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmlal.u32 q13,d28,d3[1] - -.LNEON_inner: - vmlal.u32 q6,d29,d4[0] - vld1.32 {d0-d3}, [r1]! - vmlal.u32 q7,d29,d4[1] - subs r8,r8,#8 - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - vst1.64 {q6-q7}, [r7,:256]! - - vmlal.u32 q10,d29,d6[0] - vld1.64 {q6}, [r6, :128]! - vmlal.u32 q11,d29,d6[1] - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vld1.64 {q7-q8}, [r6, :256]! - vmlal.u32 q13,d29,d7[1] - vst1.64 {q10-q11}, [r7,:256]! - - vmlal.u32 q6,d28,d0[0] - vld1.64 {q9-q10}, [r6, :256]! - vmlal.u32 q7,d28,d0[1] - vst1.64 {q12-q13}, [r7,:256]! - vmlal.u32 q8,d28,d1[0] - vld1.64 {q11-q12}, [r6, :256]! - vmlal.u32 q9,d28,d1[1] - vld1.32 {d4-d7}, [r3]! - - vmlal.u32 q10,d28,d2[0] - vld1.64 {q13}, [r6, :128]! - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vmlal.u32 q13,d28,d3[1] - - bne .LNEON_inner - - vmlal.u32 q6,d29,d4[0] - add r6,sp,#16 - vmlal.u32 q7,d29,d4[1] - sub r1,r1,r5,lsl#2 @ rewind r1 - vmlal.u32 q8,d29,d5[0] - vld1.64 {q5}, [sp,:128] - vmlal.u32 q9,d29,d5[1] - subs r9,r9,#1 - - vmlal.u32 q10,d29,d6[0] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q11,d29,d6[1] - vld1.64 {q6}, [r6, :128]! - vshr.u64 d10,d10,#16 - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vld1.64 {q7-q8}, [r6, :256]! - vmlal.u32 q13,d29,d7[1] - - vst1.64 {q10-q11}, [r7,:256]! - vadd.u64 d10,d10,d11 - vst1.64 {q12-q13}, [r7,:256]! - vshr.u64 d10,d10,#16 - - bne .LNEON_outer - - mov r7,sp - mov r8,r5 - -.LNEON_tail: - vadd.u64 d12,d12,d10 - vld1.64 {q9-q10}, [r6, :256]! - vshr.u64 d10,d12,#16 - vadd.u64 d13,d13,d10 - vld1.64 {q11-q12}, [r6, :256]! - vshr.u64 d10,d13,#16 - vld1.64 {q13}, [r6, :128]! - vzip.16 d12,d13 - -.LNEON_tail2: - vadd.u64 d14,d14,d10 - vst1.32 {d12[0]}, [r7, :32]! - vshr.u64 d10,d14,#16 - vadd.u64 d15,d15,d10 - vshr.u64 d10,d15,#16 - vzip.16 d14,d15 - - vadd.u64 d16,d16,d10 - vst1.32 {d14[0]}, [r7, :32]! - vshr.u64 d10,d16,#16 - vadd.u64 d17,d17,d10 - vshr.u64 d10,d17,#16 - vzip.16 d16,d17 - - vadd.u64 d18,d18,d10 - vst1.32 {d16[0]}, [r7, :32]! - vshr.u64 d10,d18,#16 - vadd.u64 d19,d19,d10 - vshr.u64 d10,d19,#16 - vzip.16 d18,d19 - - vadd.u64 d20,d20,d10 - vst1.32 {d18[0]}, [r7, :32]! - vshr.u64 d10,d20,#16 - vadd.u64 d21,d21,d10 - vshr.u64 d10,d21,#16 - vzip.16 d20,d21 - - vadd.u64 d22,d22,d10 - vst1.32 {d20[0]}, [r7, :32]! - vshr.u64 d10,d22,#16 - vadd.u64 d23,d23,d10 - vshr.u64 d10,d23,#16 - vzip.16 d22,d23 - - vadd.u64 d24,d24,d10 - vst1.32 {d22[0]}, [r7, :32]! - vshr.u64 d10,d24,#16 - vadd.u64 d25,d25,d10 - vld1.64 {q6}, [r6, :128]! - vshr.u64 d10,d25,#16 - vzip.16 d24,d25 - - vadd.u64 d26,d26,d10 - vst1.32 {d24[0]}, [r7, :32]! - vshr.u64 d10,d26,#16 - vadd.u64 d27,d27,d10 - vld1.64 {q7-q8}, [r6, :256]! - vshr.u64 d10,d27,#16 - vzip.16 d26,d27 - subs r8,r8,#8 - vst1.32 {d26[0]}, [r7, :32]! - - bne .LNEON_tail - - vst1.32 {d10[0]}, [r7, :32] @ top-most bit - sub r3,r3,r5,lsl#2 @ rewind r3 - subs r1,sp,#0 @ clear carry flag - add r2,sp,r5,lsl#2 - -.LNEON_sub: - ldmia r1!, {r4-r7} - ldmia r3!, {r8-r11} - sbcs r8, r4,r8 - sbcs r9, r5,r9 - sbcs r10,r6,r10 - sbcs r11,r7,r11 - teq r1,r2 @ preserves carry - stmia r0!, {r8-r11} - bne .LNEON_sub - - ldr r10, [r1] @ load top-most bit - veor q0,q0,q0 - sub r11,r2,sp @ this is num*4 - veor q1,q1,q1 - mov r1,sp - sub r0,r0,r11 @ rewind r0 - mov r3,r2 @ second 3/4th of frame - sbcs r10,r10,#0 @ result is carry flag - -.LNEON_copy_n_zap: - ldmia r1!, {r4-r7} - ldmia r0, {r8-r11} - movcc r8, r4 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r9, r5 - movcc r10,r6 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r11,r7 - ldmia r1, {r4-r7} - stmia r0!, {r8-r11} - sub r1,r1,#16 - ldmia r0, {r8-r11} - movcc r8, r4 - vst1.64 {q0-q1}, [r1,:256]! @ wipe - movcc r9, r5 - movcc r10,r6 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r11,r7 - teq r1,r2 @ preserves carry - stmia r0!, {r8-r11} - bne .LNEON_copy_n_zap - - sub sp,ip,#96 - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r11} - bx lr @ .word 0xe12fff1e -.size bn_mul8x_mont_neon,.-bn_mul8x_mont_neon -#endif -.asciz "Montgomery multiplication for ARMv4/NEON, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm/arm-void-gas/modes/ghash-armv4.S b/deps/openssl/asm/arm-void-gas/modes/ghash-armv4.S deleted file mode 100644 index 6f699dbd870818..00000000000000 --- a/deps/openssl/asm/arm-void-gas/modes/ghash-armv4.S +++ /dev/null @@ -1,528 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -#ifdef __clang__ -#define ldrplb ldrbpl -#define ldrneb ldrbne -#endif - -.type rem_4bit,%object -.align 5 -rem_4bit: -.short 0x0000,0x1C20,0x3840,0x2460 -.short 0x7080,0x6CA0,0x48C0,0x54E0 -.short 0xE100,0xFD20,0xD940,0xC560 -.short 0x9180,0x8DA0,0xA9C0,0xB5E0 -.size rem_4bit,.-rem_4bit - -.type rem_4bit_get,%function -rem_4bit_get: - sub r2,pc,#8 - sub r2,r2,#32 @ &rem_4bit - b .Lrem_4bit_got - nop -.size rem_4bit_get,.-rem_4bit_get - -.global gcm_ghash_4bit -.type gcm_ghash_4bit,%function -gcm_ghash_4bit: - sub r12,pc,#8 - add r3,r2,r3 @ r3 to point at the end - stmdb sp!,{r3-r11,lr} @ save r3/end too - sub r12,r12,#48 @ &rem_4bit - - ldmia r12,{r4-r11} @ copy rem_4bit ... - stmdb sp!,{r4-r11} @ ... to stack - - ldrb r12,[r2,#15] - ldrb r14,[r0,#15] -.Louter: - eor r12,r12,r14 - and r14,r12,#0xf0 - and r12,r12,#0x0f - mov r3,#14 - - add r7,r1,r12,lsl#4 - ldmia r7,{r4-r7} @ load Htbl[nlo] - add r11,r1,r14 - ldrb r12,[r2,#14] - - and r14,r4,#0xf @ rem - ldmia r11,{r8-r11} @ load Htbl[nhi] - add r14,r14,r14 - eor r4,r8,r4,lsr#4 - ldrh r8,[sp,r14] @ rem_4bit[rem] - eor r4,r4,r5,lsl#28 - ldrb r14,[r0,#14] - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - eor r12,r12,r14 - and r14,r12,#0xf0 - and r12,r12,#0x0f - eor r7,r7,r8,lsl#16 - -.Linner: - add r11,r1,r12,lsl#4 - and r12,r4,#0xf @ rem - subs r3,r3,#1 - add r12,r12,r12 - ldmia r11,{r8-r11} @ load Htbl[nlo] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - ldrh r8,[sp,r12] @ rem_4bit[rem] - eor r6,r10,r6,lsr#4 - ldrplb r12,[r2,r3] - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - - add r11,r1,r14 - and r14,r4,#0xf @ rem - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - add r14,r14,r14 - ldmia r11,{r8-r11} @ load Htbl[nhi] - eor r4,r8,r4,lsr#4 - ldrplb r8,[r0,r3] - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - ldrh r9,[sp,r14] - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eorpl r12,r12,r8 - eor r7,r11,r7,lsr#4 - andpl r14,r12,#0xf0 - andpl r12,r12,#0x0f - eor r7,r7,r9,lsl#16 @ ^= rem_4bit[rem] - bpl .Linner - - ldr r3,[sp,#32] @ re-load r3/end - add r2,r2,#16 - mov r14,r4 -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r4,r4 - str r4,[r0,#12] -#elif defined(__ARMEB__) - str r4,[r0,#12] -#else - mov r9,r4,lsr#8 - strb r4,[r0,#12+3] - mov r10,r4,lsr#16 - strb r9,[r0,#12+2] - mov r11,r4,lsr#24 - strb r10,[r0,#12+1] - strb r11,[r0,#12] -#endif - cmp r2,r3 -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r5,r5 - str r5,[r0,#8] -#elif defined(__ARMEB__) - str r5,[r0,#8] -#else - mov r9,r5,lsr#8 - strb r5,[r0,#8+3] - mov r10,r5,lsr#16 - strb r9,[r0,#8+2] - mov r11,r5,lsr#24 - strb r10,[r0,#8+1] - strb r11,[r0,#8] -#endif - ldrneb r12,[r2,#15] -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r6,r6 - str r6,[r0,#4] -#elif defined(__ARMEB__) - str r6,[r0,#4] -#else - mov r9,r6,lsr#8 - strb r6,[r0,#4+3] - mov r10,r6,lsr#16 - strb r9,[r0,#4+2] - mov r11,r6,lsr#24 - strb r10,[r0,#4+1] - strb r11,[r0,#4] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r7,r7 - str r7,[r0,#0] -#elif defined(__ARMEB__) - str r7,[r0,#0] -#else - mov r9,r7,lsr#8 - strb r7,[r0,#0+3] - mov r10,r7,lsr#16 - strb r9,[r0,#0+2] - mov r11,r7,lsr#24 - strb r10,[r0,#0+1] - strb r11,[r0,#0] -#endif - - bne .Louter - - add sp,sp,#36 -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size gcm_ghash_4bit,.-gcm_ghash_4bit - -.global gcm_gmult_4bit -.type gcm_gmult_4bit,%function -gcm_gmult_4bit: - stmdb sp!,{r4-r11,lr} - ldrb r12,[r0,#15] - b rem_4bit_get -.Lrem_4bit_got: - and r14,r12,#0xf0 - and r12,r12,#0x0f - mov r3,#14 - - add r7,r1,r12,lsl#4 - ldmia r7,{r4-r7} @ load Htbl[nlo] - ldrb r12,[r0,#14] - - add r11,r1,r14 - and r14,r4,#0xf @ rem - ldmia r11,{r8-r11} @ load Htbl[nhi] - add r14,r14,r14 - eor r4,r8,r4,lsr#4 - ldrh r8,[r2,r14] @ rem_4bit[rem] - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - and r14,r12,#0xf0 - eor r7,r7,r8,lsl#16 - and r12,r12,#0x0f - -.Loop: - add r11,r1,r12,lsl#4 - and r12,r4,#0xf @ rem - subs r3,r3,#1 - add r12,r12,r12 - ldmia r11,{r8-r11} @ load Htbl[nlo] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - ldrh r8,[r2,r12] @ rem_4bit[rem] - eor r6,r10,r6,lsr#4 - ldrplb r12,[r0,r3] - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - - add r11,r1,r14 - and r14,r4,#0xf @ rem - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - add r14,r14,r14 - ldmia r11,{r8-r11} @ load Htbl[nhi] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - ldrh r8,[r2,r14] @ rem_4bit[rem] - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - andpl r14,r12,#0xf0 - andpl r12,r12,#0x0f - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - bpl .Loop -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r4,r4 - str r4,[r0,#12] -#elif defined(__ARMEB__) - str r4,[r0,#12] -#else - mov r9,r4,lsr#8 - strb r4,[r0,#12+3] - mov r10,r4,lsr#16 - strb r9,[r0,#12+2] - mov r11,r4,lsr#24 - strb r10,[r0,#12+1] - strb r11,[r0,#12] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r5,r5 - str r5,[r0,#8] -#elif defined(__ARMEB__) - str r5,[r0,#8] -#else - mov r9,r5,lsr#8 - strb r5,[r0,#8+3] - mov r10,r5,lsr#16 - strb r9,[r0,#8+2] - mov r11,r5,lsr#24 - strb r10,[r0,#8+1] - strb r11,[r0,#8] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r6,r6 - str r6,[r0,#4] -#elif defined(__ARMEB__) - str r6,[r0,#4] -#else - mov r9,r6,lsr#8 - strb r6,[r0,#4+3] - mov r10,r6,lsr#16 - strb r9,[r0,#4+2] - mov r11,r6,lsr#24 - strb r10,[r0,#4+1] - strb r11,[r0,#4] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r7,r7 - str r7,[r0,#0] -#elif defined(__ARMEB__) - str r7,[r0,#0] -#else - mov r9,r7,lsr#8 - strb r7,[r0,#0+3] - mov r10,r7,lsr#16 - strb r9,[r0,#0+2] - mov r11,r7,lsr#24 - strb r10,[r0,#0+1] - strb r11,[r0,#0] -#endif - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size gcm_gmult_4bit,.-gcm_gmult_4bit -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.global gcm_init_neon -.type gcm_init_neon,%function -.align 4 -gcm_init_neon: - vld1.64 d7,[r1,:64]! @ load H - vmov.i8 q8,#0xe1 - vld1.64 d6,[r1,:64] - vshl.i64 d17,#57 - vshr.u64 d16,#63 @ t0=0xc2....01 - vdup.8 q9,d7[7] - vshr.u64 d26,d6,#63 - vshr.s8 q9,#7 @ broadcast carry bit - vshl.i64 q3,q3,#1 - vand q8,q8,q9 - vorr d7,d26 @ H<<<=1 - veor q3,q3,q8 @ twisted H - vstmia r0,{q3} - - bx lr @ bx lr -.size gcm_init_neon,.-gcm_init_neon - -.global gcm_gmult_neon -.type gcm_gmult_neon,%function -.align 4 -gcm_gmult_neon: - vld1.64 d7,[r0,:64]! @ load Xi - vld1.64 d6,[r0,:64]! - vmov.i64 d29,#0x0000ffffffffffff - vldmia r1,{d26-d27} @ load twisted H - vmov.i64 d30,#0x00000000ffffffff -#ifdef __ARMEL__ - vrev64.8 q3,q3 -#endif - vmov.i64 d31,#0x000000000000ffff - veor d28,d26,d27 @ Karatsuba pre-processing - mov r3,#16 - b .Lgmult_neon -.size gcm_gmult_neon,.-gcm_gmult_neon - -.global gcm_ghash_neon -.type gcm_ghash_neon,%function -.align 4 -gcm_ghash_neon: - vld1.64 d1,[r0,:64]! @ load Xi - vld1.64 d0,[r0,:64]! - vmov.i64 d29,#0x0000ffffffffffff - vldmia r1,{d26-d27} @ load twisted H - vmov.i64 d30,#0x00000000ffffffff -#ifdef __ARMEL__ - vrev64.8 q0,q0 -#endif - vmov.i64 d31,#0x000000000000ffff - veor d28,d26,d27 @ Karatsuba pre-processing - -.Loop_neon: - vld1.64 d7,[r2]! @ load inp - vld1.64 d6,[r2]! -#ifdef __ARMEL__ - vrev64.8 q3,q3 -#endif - veor q3,q0 @ inp^=Xi -.Lgmult_neon: - vext.8 d16, d26, d26, #1 @ A1 - vmull.p8 q8, d16, d6 @ F = A1*B - vext.8 d0, d6, d6, #1 @ B1 - vmull.p8 q0, d26, d0 @ E = A*B1 - vext.8 d18, d26, d26, #2 @ A2 - vmull.p8 q9, d18, d6 @ H = A2*B - vext.8 d22, d6, d6, #2 @ B2 - vmull.p8 q11, d26, d22 @ G = A*B2 - vext.8 d20, d26, d26, #3 @ A3 - veor q8, q8, q0 @ L = E + F - vmull.p8 q10, d20, d6 @ J = A3*B - vext.8 d0, d6, d6, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q0, d26, d0 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d6, d6, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d26, d22 @ K = A*B4 - veor q10, q10, q0 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q0, d26, d6 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q0, q0, q8 - veor q0, q0, q10 - veor d6,d6,d7 @ Karatsuba pre-processing - vext.8 d16, d28, d28, #1 @ A1 - vmull.p8 q8, d16, d6 @ F = A1*B - vext.8 d2, d6, d6, #1 @ B1 - vmull.p8 q1, d28, d2 @ E = A*B1 - vext.8 d18, d28, d28, #2 @ A2 - vmull.p8 q9, d18, d6 @ H = A2*B - vext.8 d22, d6, d6, #2 @ B2 - vmull.p8 q11, d28, d22 @ G = A*B2 - vext.8 d20, d28, d28, #3 @ A3 - veor q8, q8, q1 @ L = E + F - vmull.p8 q10, d20, d6 @ J = A3*B - vext.8 d2, d6, d6, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q1, d28, d2 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d6, d6, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d28, d22 @ K = A*B4 - veor q10, q10, q1 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q1, d28, d6 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q1, q1, q8 - veor q1, q1, q10 - vext.8 d16, d27, d27, #1 @ A1 - vmull.p8 q8, d16, d7 @ F = A1*B - vext.8 d4, d7, d7, #1 @ B1 - vmull.p8 q2, d27, d4 @ E = A*B1 - vext.8 d18, d27, d27, #2 @ A2 - vmull.p8 q9, d18, d7 @ H = A2*B - vext.8 d22, d7, d7, #2 @ B2 - vmull.p8 q11, d27, d22 @ G = A*B2 - vext.8 d20, d27, d27, #3 @ A3 - veor q8, q8, q2 @ L = E + F - vmull.p8 q10, d20, d7 @ J = A3*B - vext.8 d4, d7, d7, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q2, d27, d4 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d7, d7, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d27, d22 @ K = A*B4 - veor q10, q10, q2 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q2, d27, d7 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q2, q2, q8 - veor q2, q2, q10 - veor q1,q1,q0 @ Karatsuba post-processing - veor q1,q1,q2 - veor d1,d1,d2 - veor d4,d4,d3 @ Xh|Xl - 256-bit result - - @ equivalent of reduction_avx from ghash-x86_64.pl - vshl.i64 q9,q0,#57 @ 1st phase - vshl.i64 q10,q0,#62 - veor q10,q10,q9 @ - vshl.i64 q9,q0,#63 - veor q10, q10, q9 @ - veor d1,d1,d20 @ - veor d4,d4,d21 - - vshr.u64 q10,q0,#1 @ 2nd phase - veor q2,q2,q0 - veor q0,q0,q10 @ - vshr.u64 q10,q10,#6 - vshr.u64 q0,q0,#1 @ - veor q0,q0,q2 @ - veor q0,q0,q10 @ - - subs r3,#16 - bne .Loop_neon - -#ifdef __ARMEL__ - vrev64.8 q0,q0 -#endif - sub r0,#16 - vst1.64 d1,[r0,:64]! @ write out Xi - vst1.64 d0,[r0,:64] - - bx lr @ bx lr -.size gcm_ghash_neon,.-gcm_ghash_neon -#endif -.asciz "GHASH for ARMv4/NEON, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm/arm-void-gas/modes/ghashv8-armx.S b/deps/openssl/asm/arm-void-gas/modes/ghashv8-armx.S deleted file mode 100644 index 9aaea13f9197db..00000000000000 --- a/deps/openssl/asm/arm-void-gas/modes/ghashv8-armx.S +++ /dev/null @@ -1,230 +0,0 @@ -#include "arm_arch.h" - -.text -.fpu neon -.code 32 -.global gcm_init_v8 -.type gcm_init_v8,%function -.align 4 -gcm_init_v8: - vld1.64 {q9},[r1] @ load input H - vmov.i8 q11,#0xe1 - vshl.i64 q11,q11,#57 @ 0xc2.0 - vext.8 q3,q9,q9,#8 - vshr.u64 q10,q11,#63 - vdup.32 q9,d18[1] - vext.8 q8,q10,q11,#8 @ t0=0xc2....01 - vshr.u64 q10,q3,#63 - vshr.s32 q9,q9,#31 @ broadcast carry bit - vand q10,q10,q8 - vshl.i64 q3,q3,#1 - vext.8 q10,q10,q10,#8 - vand q8,q8,q9 - vorr q3,q3,q10 @ H<<<=1 - veor q12,q3,q8 @ twisted H - vst1.64 {q12},[r0]! @ store Htable[0] - - @ calculate H^2 - vext.8 q8,q12,q12,#8 @ Karatsuba pre-processing - .byte 0xa8,0x0e,0xa8,0xf2 @ pmull q0,q12,q12 - veor q8,q8,q12 - .byte 0xa9,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q12 - .byte 0xa0,0x2e,0xa0,0xf2 @ pmull q1,q8,q8 - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q14,q0,q10 - - vext.8 q9,q14,q14,#8 @ Karatsuba pre-processing - veor q9,q9,q14 - vext.8 q13,q8,q9,#8 @ pack Karatsuba pre-processed - vst1.64 {q13-q14},[r0] @ store Htable[1..2] - - bx lr -.size gcm_init_v8,.-gcm_init_v8 -.global gcm_gmult_v8 -.type gcm_gmult_v8,%function -.align 4 -gcm_gmult_v8: - vld1.64 {q9},[r0] @ load Xi - vmov.i8 q11,#0xe1 - vld1.64 {q12-q13},[r1] @ load twisted H, ... - vshl.u64 q11,q11,#57 -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vext.8 q3,q9,q9,#8 - - .byte 0x86,0x0e,0xa8,0xf2 @ pmull q0,q12,q3 @ H.lo·Xi.lo - veor q9,q9,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q3 @ H.hi·Xi.hi - .byte 0xa2,0x2e,0xaa,0xf2 @ pmull q1,q13,q9 @ (H.lo+H.hi)·(Xi.lo+Xi.hi) - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q0,q0,q10 - -#ifndef __ARMEB__ - vrev64.8 q0,q0 -#endif - vext.8 q0,q0,q0,#8 - vst1.64 {q0},[r0] @ write out Xi - - bx lr -.size gcm_gmult_v8,.-gcm_gmult_v8 -.global gcm_ghash_v8 -.type gcm_ghash_v8,%function -.align 4 -gcm_ghash_v8: - vstmdb sp!,{d8-d15} @ 32-bit ABI says so - vld1.64 {q0},[r0] @ load [rotated] Xi - @ "[rotated]" means that - @ loaded value would have - @ to be rotated in order to - @ make it appear as in - @ alorithm specification - subs r3,r3,#32 @ see if r3 is 32 or larger - mov r12,#16 @ r12 is used as post- - @ increment for input pointer; - @ as loop is modulo-scheduled - @ r12 is zeroed just in time - @ to preclude oversteping - @ inp[len], which means that - @ last block[s] are actually - @ loaded twice, but last - @ copy is not processed - vld1.64 {q12-q13},[r1]! @ load twisted H, ..., H^2 - vmov.i8 q11,#0xe1 - vld1.64 {q14},[r1] - moveq r12,#0 @ is it time to zero r12? - vext.8 q0,q0,q0,#8 @ rotate Xi - vld1.64 {q8},[r2]! @ load [rotated] I[0] - vshl.u64 q11,q11,#57 @ compose 0xc2.0 constant -#ifndef __ARMEB__ - vrev64.8 q8,q8 - vrev64.8 q0,q0 -#endif - vext.8 q3,q8,q8,#8 @ rotate I[0] - blo .Lodd_tail_v8 @ r3 was less than 32 - vld1.64 {q9},[r2],r12 @ load [rotated] I[1] -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vext.8 q7,q9,q9,#8 - veor q3,q3,q0 @ I[i]^=Xi - .byte 0x8e,0x8e,0xa8,0xf2 @ pmull q4,q12,q7 @ H·Ii+1 - veor q9,q9,q7 @ Karatsuba pre-processing - .byte 0x8f,0xce,0xa9,0xf2 @ pmull2 q6,q12,q7 - b .Loop_mod2x_v8 - -.align 4 -.Loop_mod2x_v8: - vext.8 q10,q3,q3,#8 - subs r3,r3,#32 @ is there more data? - .byte 0x86,0x0e,0xac,0xf2 @ pmull q0,q14,q3 @ H^2.lo·Xi.lo - movlo r12,#0 @ is it time to zero r12? - - .byte 0xa2,0xae,0xaa,0xf2 @ pmull q5,q13,q9 - veor q10,q10,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xad,0xf2 @ pmull2 q2,q14,q3 @ H^2.hi·Xi.hi - veor q0,q0,q4 @ accumulate - .byte 0xa5,0x2e,0xab,0xf2 @ pmull2 q1,q13,q10 @ (H^2.lo+H^2.hi)·(Xi.lo+Xi.hi) - vld1.64 {q8},[r2],r12 @ load [rotated] I[i+2] - - veor q2,q2,q6 - moveq r12,#0 @ is it time to zero r12? - veor q1,q1,q5 - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - vld1.64 {q9},[r2],r12 @ load [rotated] I[i+3] -#ifndef __ARMEB__ - vrev64.8 q8,q8 -#endif - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - vext.8 q7,q9,q9,#8 - vext.8 q3,q8,q8,#8 - veor q0,q1,q10 - .byte 0x8e,0x8e,0xa8,0xf2 @ pmull q4,q12,q7 @ H·Ii+1 - veor q3,q3,q2 @ accumulate q3 early - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q3,q3,q10 - veor q9,q9,q7 @ Karatsuba pre-processing - veor q3,q3,q0 - .byte 0x8f,0xce,0xa9,0xf2 @ pmull2 q6,q12,q7 - bhs .Loop_mod2x_v8 @ there was at least 32 more bytes - - veor q2,q2,q10 - vext.8 q3,q8,q8,#8 @ re-construct q3 - adds r3,r3,#32 @ re-construct r3 - veor q0,q0,q2 @ re-construct q0 - beq .Ldone_v8 @ is r3 zero? -.Lodd_tail_v8: - vext.8 q10,q0,q0,#8 - veor q3,q3,q0 @ inp^=Xi - veor q9,q8,q10 @ q9 is rotated inp^Xi - - .byte 0x86,0x0e,0xa8,0xf2 @ pmull q0,q12,q3 @ H.lo·Xi.lo - veor q9,q9,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q3 @ H.hi·Xi.hi - .byte 0xa2,0x2e,0xaa,0xf2 @ pmull q1,q13,q9 @ (H.lo+H.hi)·(Xi.lo+Xi.hi) - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q0,q0,q10 - -.Ldone_v8: -#ifndef __ARMEB__ - vrev64.8 q0,q0 -#endif - vext.8 q0,q0,q0,#8 - vst1.64 {q0},[r0] @ write out Xi - - vldmia sp!,{d8-d15} @ 32-bit ABI says so - bx lr -.size gcm_ghash_v8,.-gcm_ghash_v8 -.asciz "GHASH for ARMv8, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm/arm-void-gas/sha/sha1-armv4-large.S b/deps/openssl/asm/arm-void-gas/sha/sha1-armv4-large.S deleted file mode 100644 index b0893359cac772..00000000000000 --- a/deps/openssl/asm/arm-void-gas/sha/sha1-armv4-large.S +++ /dev/null @@ -1,1455 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -.global sha1_block_data_order -.type sha1_block_data_order,%function - -.align 5 -sha1_block_data_order: -#if __ARM_MAX_ARCH__>=7 - sub r3,pc,#8 @ sha1_block_data_order - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#ARMV8_SHA1 - bne .LARMv8 - tst r12,#ARMV7_NEON - bne .LNEON -#endif - stmdb sp!,{r4-r12,lr} - add r2,r1,r2,lsl#6 @ r2 to point at the end of r1 - ldmia r0,{r3,r4,r5,r6,r7} -.Lloop: - ldr r8,.LK_00_19 - mov r14,sp - sub sp,sp,#15*4 - mov r5,r5,ror#30 - mov r6,r6,ror#30 - mov r7,r7,ror#30 @ [6] -.L_00_15: -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r7,r8,r7,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r5,r6 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r7,r8,r7,ror#2 @ E+=K_00_19 - eor r10,r5,r6 @ F_xx_xx - add r7,r7,r3,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r4,r10,ror#2 - add r7,r7,r9 @ E+=X[i] - eor r10,r10,r6,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r7,r7,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r6,r8,r6,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r4,r5 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r6,r8,r6,ror#2 @ E+=K_00_19 - eor r10,r4,r5 @ F_xx_xx - add r6,r6,r7,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r3,r10,ror#2 - add r6,r6,r9 @ E+=X[i] - eor r10,r10,r5,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r6,r6,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r5,r8,r5,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r3,r4 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r5,r8,r5,ror#2 @ E+=K_00_19 - eor r10,r3,r4 @ F_xx_xx - add r5,r5,r6,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r7,r10,ror#2 - add r5,r5,r9 @ E+=X[i] - eor r10,r10,r4,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r5,r5,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r4,r8,r4,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r7,r3 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r4,r8,r4,ror#2 @ E+=K_00_19 - eor r10,r7,r3 @ F_xx_xx - add r4,r4,r5,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r6,r10,ror#2 - add r4,r4,r9 @ E+=X[i] - eor r10,r10,r3,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r4,r4,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r3,r8,r3,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r6,r7 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r3,r8,r3,ror#2 @ E+=K_00_19 - eor r10,r6,r7 @ F_xx_xx - add r3,r3,r4,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r5,r10,ror#2 - add r3,r3,r9 @ E+=X[i] - eor r10,r10,r7,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r3,r3,r10 @ E+=F_00_19(B,C,D) - teq r14,sp - bne .L_00_15 @ [((11+4)*5+2)*3] - sub sp,sp,#25*4 -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r7,r8,r7,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r5,r6 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r7,r8,r7,ror#2 @ E+=K_00_19 - eor r10,r5,r6 @ F_xx_xx - add r7,r7,r3,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r4,r10,ror#2 - add r7,r7,r9 @ E+=X[i] - eor r10,r10,r6,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r7,r7,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r3,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - eor r10,r10,r5,ror#2 @ F_00_19(B,C,D) - add r6,r6,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r7,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - eor r10,r10,r4,ror#2 @ F_00_19(B,C,D) - add r5,r5,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r6,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - eor r10,r10,r3,ror#2 @ F_00_19(B,C,D) - add r4,r4,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r5,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - eor r10,r10,r7,ror#2 @ F_00_19(B,C,D) - add r3,r3,r10 @ E+=F_00_19(B,C,D) - - ldr r8,.LK_20_39 @ [+15+16*4] - cmn sp,#0 @ [+3], clear carry to denote 20_39 -.L_20_39_or_60_79: - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r7,r8,r7,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r5,r6 @ F_xx_xx - mov r9,r9,ror#31 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r4,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r7,r7,r9 @ E+=X[i] - add r7,r7,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r3,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - add r6,r6,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r7,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - add r5,r5,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r6,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - add r4,r4,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r5,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - add r3,r3,r10 @ E+=F_20_39(B,C,D) - teq r14,sp @ preserve carry - bne .L_20_39_or_60_79 @ [+((12+3)*5+2)*4] - bcs .L_done @ [+((12+3)*5+2)*4], spare 300 bytes - - ldr r8,.LK_40_59 - sub sp,sp,#20*4 @ [+2] -.L_40_59: - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r7,r8,r7,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r5,r6 @ F_xx_xx - mov r9,r9,ror#31 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r4,r10,ror#2 @ F_xx_xx - and r11,r5,r6 @ F_xx_xx - add r7,r7,r9 @ E+=X[i] - add r7,r7,r10 @ E+=F_40_59(B,C,D) - add r7,r7,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r3,r10,ror#2 @ F_xx_xx - and r11,r4,r5 @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - add r6,r6,r10 @ E+=F_40_59(B,C,D) - add r6,r6,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r7,r10,ror#2 @ F_xx_xx - and r11,r3,r4 @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - add r5,r5,r10 @ E+=F_40_59(B,C,D) - add r5,r5,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r6,r10,ror#2 @ F_xx_xx - and r11,r7,r3 @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - add r4,r4,r10 @ E+=F_40_59(B,C,D) - add r4,r4,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r5,r10,ror#2 @ F_xx_xx - and r11,r6,r7 @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - add r3,r3,r10 @ E+=F_40_59(B,C,D) - add r3,r3,r11,ror#2 - teq r14,sp - bne .L_40_59 @ [+((12+5)*5+2)*4] - - ldr r8,.LK_60_79 - sub sp,sp,#20*4 - cmp sp,#0 @ set carry to denote 60_79 - b .L_20_39_or_60_79 @ [+4], spare 300 bytes -.L_done: - add sp,sp,#80*4 @ "deallocate" stack frame - ldmia r0,{r8,r9,r10,r11,r12} - add r3,r8,r3 - add r4,r9,r4 - add r5,r10,r5,ror#2 - add r6,r11,r6,ror#2 - add r7,r12,r7,ror#2 - stmia r0,{r3,r4,r5,r6,r7} - teq r1,r2 - bne .Lloop @ [+18], total 1307 - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size sha1_block_data_order,.-sha1_block_data_order - -.align 5 -.LK_00_19: .word 0x5a827999 -.LK_20_39: .word 0x6ed9eba1 -.LK_40_59: .word 0x8f1bbcdc -.LK_60_79: .word 0xca62c1d6 -#if __ARM_MAX_ARCH__>=7 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha1_block_data_order -#endif -.asciz "SHA1 block transform for ARMv4/NEON/ARMv8, CRYPTOGAMS by " -.align 5 -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.type sha1_block_data_order_neon,%function -.align 4 -sha1_block_data_order_neon: -.LNEON: - stmdb sp!,{r4-r12,lr} - add r2,r1,r2,lsl#6 @ r2 to point at the end of r1 - @ dmb @ errata #451034 on early Cortex A8 - @ vstmdb sp!,{d8-d15} @ ABI specification says so - mov r14,sp - sub sp,sp,#64 @ alloca - adr r8,.LK_00_19 - bic sp,sp,#15 @ align for 128-bit stores - - ldmia r0,{r3,r4,r5,r6,r7} @ load context - mov r12,sp - - vld1.8 {q0-q1},[r1]! @ handles unaligned - veor q15,q15,q15 - vld1.8 {q2-q3},[r1]! - vld1.32 {d28[],d29[]},[r8,:32]! @ load K_00_19 - vrev32.8 q0,q0 @ yes, even on - vrev32.8 q1,q1 @ big-endian... - vrev32.8 q2,q2 - vadd.i32 q8,q0,q14 - vrev32.8 q3,q3 - vadd.i32 q9,q1,q14 - vst1.32 {q8},[r12,:128]! - vadd.i32 q10,q2,q14 - vst1.32 {q9},[r12,:128]! - vst1.32 {q10},[r12,:128]! - ldr r9,[sp] @ big RAW stall - -.Loop_neon: - vext.8 q8,q0,q1,#8 - bic r10,r6,r4 - add r7,r7,r9 - and r11,r5,r4 - vadd.i32 q13,q3,q14 - ldr r9,[sp,#4] - add r7,r7,r3,ror#27 - vext.8 q12,q3,q15,#4 - eor r11,r11,r10 - mov r4,r4,ror#2 - add r7,r7,r11 - veor q8,q8,q0 - bic r10,r5,r3 - add r6,r6,r9 - veor q12,q12,q2 - and r11,r4,r3 - ldr r9,[sp,#8] - veor q12,q12,q8 - add r6,r6,r7,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q13,q15,q12,#4 - bic r10,r4,r7 - add r5,r5,r9 - vadd.i32 q8,q12,q12 - and r11,r3,r7 - ldr r9,[sp,#12] - vsri.32 q8,q12,#31 - add r5,r5,r6,ror#27 - eor r11,r11,r10 - mov r7,r7,ror#2 - vshr.u32 q12,q13,#30 - add r5,r5,r11 - bic r10,r3,r6 - vshl.u32 q13,q13,#2 - add r4,r4,r9 - and r11,r7,r6 - veor q8,q8,q12 - ldr r9,[sp,#16] - add r4,r4,r5,ror#27 - veor q8,q8,q13 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q9,q1,q2,#8 - bic r10,r7,r5 - add r3,r3,r9 - and r11,r6,r5 - vadd.i32 q13,q8,q14 - ldr r9,[sp,#20] - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r4,ror#27 - vext.8 q12,q8,q15,#4 - eor r11,r11,r10 - mov r5,r5,ror#2 - add r3,r3,r11 - veor q9,q9,q1 - bic r10,r6,r4 - add r7,r7,r9 - veor q12,q12,q3 - and r11,r5,r4 - ldr r9,[sp,#24] - veor q12,q12,q9 - add r7,r7,r3,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q13,q15,q12,#4 - bic r10,r5,r3 - add r6,r6,r9 - vadd.i32 q9,q12,q12 - and r11,r4,r3 - ldr r9,[sp,#28] - vsri.32 q9,q12,#31 - add r6,r6,r7,ror#27 - eor r11,r11,r10 - mov r3,r3,ror#2 - vshr.u32 q12,q13,#30 - add r6,r6,r11 - bic r10,r4,r7 - vshl.u32 q13,q13,#2 - add r5,r5,r9 - and r11,r3,r7 - veor q9,q9,q12 - ldr r9,[sp,#32] - add r5,r5,r6,ror#27 - veor q9,q9,q13 - eor r11,r11,r10 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q10,q2,q3,#8 - bic r10,r3,r6 - add r4,r4,r9 - and r11,r7,r6 - vadd.i32 q13,q9,q14 - ldr r9,[sp,#36] - add r4,r4,r5,ror#27 - vext.8 q12,q9,q15,#4 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - veor q10,q10,q2 - bic r10,r7,r5 - add r3,r3,r9 - veor q12,q12,q8 - and r11,r6,r5 - ldr r9,[sp,#40] - veor q12,q12,q10 - add r3,r3,r4,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q13,q15,q12,#4 - bic r10,r6,r4 - add r7,r7,r9 - vadd.i32 q10,q12,q12 - and r11,r5,r4 - ldr r9,[sp,#44] - vsri.32 q10,q12,#31 - add r7,r7,r3,ror#27 - eor r11,r11,r10 - mov r4,r4,ror#2 - vshr.u32 q12,q13,#30 - add r7,r7,r11 - bic r10,r5,r3 - vshl.u32 q13,q13,#2 - add r6,r6,r9 - and r11,r4,r3 - veor q10,q10,q12 - ldr r9,[sp,#48] - add r6,r6,r7,ror#27 - veor q10,q10,q13 - eor r11,r11,r10 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q11,q3,q8,#8 - bic r10,r4,r7 - add r5,r5,r9 - and r11,r3,r7 - vadd.i32 q13,q10,q14 - ldr r9,[sp,#52] - add r5,r5,r6,ror#27 - vext.8 q12,q10,q15,#4 - eor r11,r11,r10 - mov r7,r7,ror#2 - add r5,r5,r11 - veor q11,q11,q3 - bic r10,r3,r6 - add r4,r4,r9 - veor q12,q12,q9 - and r11,r7,r6 - ldr r9,[sp,#56] - veor q12,q12,q11 - add r4,r4,r5,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q13,q15,q12,#4 - bic r10,r7,r5 - add r3,r3,r9 - vadd.i32 q11,q12,q12 - and r11,r6,r5 - ldr r9,[sp,#60] - vsri.32 q11,q12,#31 - add r3,r3,r4,ror#27 - eor r11,r11,r10 - mov r5,r5,ror#2 - vshr.u32 q12,q13,#30 - add r3,r3,r11 - bic r10,r6,r4 - vshl.u32 q13,q13,#2 - add r7,r7,r9 - and r11,r5,r4 - veor q11,q11,q12 - ldr r9,[sp,#0] - add r7,r7,r3,ror#27 - veor q11,q11,q13 - eor r11,r11,r10 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q10,q11,#8 - bic r10,r5,r3 - add r6,r6,r9 - and r11,r4,r3 - veor q0,q0,q8 - ldr r9,[sp,#4] - add r6,r6,r7,ror#27 - veor q0,q0,q1 - eor r11,r11,r10 - mov r3,r3,ror#2 - vadd.i32 q13,q11,q14 - add r6,r6,r11 - bic r10,r4,r7 - veor q12,q12,q0 - add r5,r5,r9 - and r11,r3,r7 - vshr.u32 q0,q12,#30 - ldr r9,[sp,#8] - add r5,r5,r6,ror#27 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - eor r11,r11,r10 - mov r7,r7,ror#2 - vsli.32 q0,q12,#2 - add r5,r5,r11 - bic r10,r3,r6 - add r4,r4,r9 - and r11,r7,r6 - ldr r9,[sp,#12] - add r4,r4,r5,ror#27 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - bic r10,r7,r5 - add r3,r3,r9 - and r11,r6,r5 - ldr r9,[sp,#16] - add r3,r3,r4,ror#27 - eor r11,r11,r10 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q11,q0,#8 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#20] - veor q1,q1,q9 - eor r11,r10,r5 - add r7,r7,r3,ror#27 - veor q1,q1,q2 - mov r4,r4,ror#2 - add r7,r7,r11 - vadd.i32 q13,q0,q14 - eor r10,r3,r5 - add r6,r6,r9 - veor q12,q12,q1 - ldr r9,[sp,#24] - eor r11,r10,r4 - vshr.u32 q1,q12,#30 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - vst1.32 {q13},[r12,:128]! - add r6,r6,r11 - eor r10,r7,r4 - vsli.32 q1,q12,#2 - add r5,r5,r9 - ldr r9,[sp,#28] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#32] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q12,q0,q1,#8 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#36] - veor q2,q2,q10 - eor r11,r10,r6 - add r3,r3,r4,ror#27 - veor q2,q2,q3 - mov r5,r5,ror#2 - add r3,r3,r11 - vadd.i32 q13,q1,q14 - eor r10,r4,r6 - vld1.32 {d28[],d29[]},[r8,:32]! - add r7,r7,r9 - veor q12,q12,q2 - ldr r9,[sp,#40] - eor r11,r10,r5 - vshr.u32 q2,q12,#30 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - vst1.32 {q13},[r12,:128]! - add r7,r7,r11 - eor r10,r3,r5 - vsli.32 q2,q12,#2 - add r6,r6,r9 - ldr r9,[sp,#44] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#48] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q12,q1,q2,#8 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#52] - veor q3,q3,q11 - eor r11,r10,r7 - add r4,r4,r5,ror#27 - veor q3,q3,q8 - mov r6,r6,ror#2 - add r4,r4,r11 - vadd.i32 q13,q2,q14 - eor r10,r5,r7 - add r3,r3,r9 - veor q12,q12,q3 - ldr r9,[sp,#56] - eor r11,r10,r6 - vshr.u32 q3,q12,#30 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - vst1.32 {q13},[r12,:128]! - add r3,r3,r11 - eor r10,r4,r6 - vsli.32 q3,q12,#2 - add r7,r7,r9 - ldr r9,[sp,#60] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#0] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q12,q2,q3,#8 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#4] - veor q8,q8,q0 - eor r11,r10,r3 - add r5,r5,r6,ror#27 - veor q8,q8,q9 - mov r7,r7,ror#2 - add r5,r5,r11 - vadd.i32 q13,q3,q14 - eor r10,r6,r3 - add r4,r4,r9 - veor q12,q12,q8 - ldr r9,[sp,#8] - eor r11,r10,r7 - vshr.u32 q8,q12,#30 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - add r4,r4,r11 - eor r10,r5,r7 - vsli.32 q8,q12,#2 - add r3,r3,r9 - ldr r9,[sp,#12] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#16] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q3,q8,#8 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#20] - veor q9,q9,q1 - eor r11,r10,r4 - add r6,r6,r7,ror#27 - veor q9,q9,q10 - mov r3,r3,ror#2 - add r6,r6,r11 - vadd.i32 q13,q8,q14 - eor r10,r7,r4 - add r5,r5,r9 - veor q12,q12,q9 - ldr r9,[sp,#24] - eor r11,r10,r3 - vshr.u32 q9,q12,#30 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - vst1.32 {q13},[r12,:128]! - add r5,r5,r11 - eor r10,r6,r3 - vsli.32 q9,q12,#2 - add r4,r4,r9 - ldr r9,[sp,#28] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#32] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q8,q9,#8 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#36] - veor q10,q10,q2 - add r7,r7,r3,ror#27 - eor r11,r5,r6 - veor q10,q10,q11 - add r7,r7,r10 - and r11,r11,r4 - vadd.i32 q13,q9,q14 - mov r4,r4,ror#2 - add r7,r7,r11 - veor q12,q12,q10 - add r6,r6,r9 - and r10,r4,r5 - vshr.u32 q10,q12,#30 - ldr r9,[sp,#40] - add r6,r6,r7,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r4,r5 - add r6,r6,r10 - vsli.32 q10,q12,#2 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#44] - add r5,r5,r6,ror#27 - eor r11,r3,r4 - add r5,r5,r10 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#48] - add r4,r4,r5,ror#27 - eor r11,r7,r3 - add r4,r4,r10 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q12,q9,q10,#8 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#52] - veor q11,q11,q3 - add r3,r3,r4,ror#27 - eor r11,r6,r7 - veor q11,q11,q0 - add r3,r3,r10 - and r11,r11,r5 - vadd.i32 q13,q10,q14 - mov r5,r5,ror#2 - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r11 - veor q12,q12,q11 - add r7,r7,r9 - and r10,r5,r6 - vshr.u32 q11,q12,#30 - ldr r9,[sp,#56] - add r7,r7,r3,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r5,r6 - add r7,r7,r10 - vsli.32 q11,q12,#2 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#60] - add r6,r6,r7,ror#27 - eor r11,r4,r5 - add r6,r6,r10 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#0] - add r5,r5,r6,ror#27 - eor r11,r3,r4 - add r5,r5,r10 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q12,q10,q11,#8 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#4] - veor q0,q0,q8 - add r4,r4,r5,ror#27 - eor r11,r7,r3 - veor q0,q0,q1 - add r4,r4,r10 - and r11,r11,r6 - vadd.i32 q13,q11,q14 - mov r6,r6,ror#2 - add r4,r4,r11 - veor q12,q12,q0 - add r3,r3,r9 - and r10,r6,r7 - vshr.u32 q0,q12,#30 - ldr r9,[sp,#8] - add r3,r3,r4,ror#27 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - eor r11,r6,r7 - add r3,r3,r10 - vsli.32 q0,q12,#2 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#12] - add r7,r7,r3,ror#27 - eor r11,r5,r6 - add r7,r7,r10 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#16] - add r6,r6,r7,ror#27 - eor r11,r4,r5 - add r6,r6,r10 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q12,q11,q0,#8 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#20] - veor q1,q1,q9 - add r5,r5,r6,ror#27 - eor r11,r3,r4 - veor q1,q1,q2 - add r5,r5,r10 - and r11,r11,r7 - vadd.i32 q13,q0,q14 - mov r7,r7,ror#2 - add r5,r5,r11 - veor q12,q12,q1 - add r4,r4,r9 - and r10,r7,r3 - vshr.u32 q1,q12,#30 - ldr r9,[sp,#24] - add r4,r4,r5,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r7,r3 - add r4,r4,r10 - vsli.32 q1,q12,#2 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#28] - add r3,r3,r4,ror#27 - eor r11,r6,r7 - add r3,r3,r10 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#32] - add r7,r7,r3,ror#27 - eor r11,r5,r6 - add r7,r7,r10 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q0,q1,#8 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#36] - veor q2,q2,q10 - add r6,r6,r7,ror#27 - eor r11,r4,r5 - veor q2,q2,q3 - add r6,r6,r10 - and r11,r11,r3 - vadd.i32 q13,q1,q14 - mov r3,r3,ror#2 - add r6,r6,r11 - veor q12,q12,q2 - add r5,r5,r9 - and r10,r3,r4 - vshr.u32 q2,q12,#30 - ldr r9,[sp,#40] - add r5,r5,r6,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r3,r4 - add r5,r5,r10 - vsli.32 q2,q12,#2 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#44] - add r4,r4,r5,ror#27 - eor r11,r7,r3 - add r4,r4,r10 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#48] - add r3,r3,r4,ror#27 - eor r11,r6,r7 - add r3,r3,r10 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q1,q2,#8 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#52] - veor q3,q3,q11 - eor r11,r10,r5 - add r7,r7,r3,ror#27 - veor q3,q3,q8 - mov r4,r4,ror#2 - add r7,r7,r11 - vadd.i32 q13,q2,q14 - eor r10,r3,r5 - add r6,r6,r9 - veor q12,q12,q3 - ldr r9,[sp,#56] - eor r11,r10,r4 - vshr.u32 q3,q12,#30 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - vst1.32 {q13},[r12,:128]! - add r6,r6,r11 - eor r10,r7,r4 - vsli.32 q3,q12,#2 - add r5,r5,r9 - ldr r9,[sp,#60] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#0] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - vadd.i32 q13,q3,q14 - eor r10,r5,r7 - add r3,r3,r9 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - teq r1,r2 - sub r8,r8,#16 - subeq r1,r1,#64 - vld1.8 {q0-q1},[r1]! - ldr r9,[sp,#4] - eor r11,r10,r6 - vld1.8 {q2-q3},[r1]! - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r11 - eor r10,r4,r6 - vrev32.8 q0,q0 - add r7,r7,r9 - ldr r9,[sp,#8] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#12] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#16] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - vrev32.8 q1,q1 - eor r10,r6,r3 - add r4,r4,r9 - vadd.i32 q8,q0,q14 - ldr r9,[sp,#20] - eor r11,r10,r7 - vst1.32 {q8},[r12,:128]! - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#24] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#28] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#32] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - vrev32.8 q2,q2 - eor r10,r7,r4 - add r5,r5,r9 - vadd.i32 q9,q1,q14 - ldr r9,[sp,#36] - eor r11,r10,r3 - vst1.32 {q9},[r12,:128]! - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#40] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#44] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#48] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - vrev32.8 q3,q3 - eor r10,r3,r5 - add r6,r6,r9 - vadd.i32 q10,q2,q14 - ldr r9,[sp,#52] - eor r11,r10,r4 - vst1.32 {q10},[r12,:128]! - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#56] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#60] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - ldmia r0,{r9,r10,r11,r12} @ accumulate context - add r3,r3,r9 - ldr r9,[r0,#16] - add r4,r4,r10 - add r5,r5,r11 - add r6,r6,r12 - moveq sp,r14 - add r7,r7,r9 - ldrne r9,[sp] - stmia r0,{r3,r4,r5,r6,r7} - addne r12,sp,#3*16 - bne .Loop_neon - - @ vldmia sp!,{d8-d15} - ldmia sp!,{r4-r12,pc} -.size sha1_block_data_order_neon,.-sha1_block_data_order_neon -#endif -#if __ARM_MAX_ARCH__>=7 -.type sha1_block_data_order_armv8,%function -.align 5 -sha1_block_data_order_armv8: -.LARMv8: - vstmdb sp!,{d8-d15} @ ABI specification says so - - veor q1,q1,q1 - adr r3,.LK_00_19 - vld1.32 {q0},[r0]! - vld1.32 {d2[0]},[r0] - sub r0,r0,#16 - vld1.32 {d16[],d17[]},[r3,:32]! - vld1.32 {d18[],d19[]},[r3,:32]! - vld1.32 {d20[],d21[]},[r3,:32]! - vld1.32 {d22[],d23[]},[r3,:32] - -.Loop_v8: - vld1.8 {q4-q5},[r1]! - vld1.8 {q6-q7},[r1]! - vrev32.8 q4,q4 - vrev32.8 q5,q5 - - vadd.i32 q12,q8,q4 - vrev32.8 q6,q6 - vmov q14,q0 @ offload - subs r2,r2,#1 - - vadd.i32 q13,q8,q5 - vrev32.8 q7,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 0 - .byte 0x68,0x0c,0x02,0xf2 @ sha1c q0,q1,q12 - vadd.i32 q12,q8,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 1 - .byte 0x6a,0x0c,0x06,0xf2 @ sha1c q0,q3,q13 - vadd.i32 q13,q8,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 2 - .byte 0x68,0x0c,0x04,0xf2 @ sha1c q0,q2,q12 - vadd.i32 q12,q8,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 3 - .byte 0x6a,0x0c,0x06,0xf2 @ sha1c q0,q3,q13 - vadd.i32 q13,q9,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 4 - .byte 0x68,0x0c,0x04,0xf2 @ sha1c q0,q2,q12 - vadd.i32 q12,q9,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 5 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q9,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 6 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q9,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 7 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q9,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 8 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q10,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 9 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q10,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 10 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q10,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 11 - .byte 0x6a,0x0c,0x26,0xf2 @ sha1m q0,q3,q13 - vadd.i32 q13,q10,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 12 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q10,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 13 - .byte 0x6a,0x0c,0x26,0xf2 @ sha1m q0,q3,q13 - vadd.i32 q13,q11,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 14 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q11,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 15 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q11,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 16 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q11,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 17 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q11,q7 - - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 18 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 19 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - - vadd.i32 q1,q1,q2 - vadd.i32 q0,q0,q14 - bne .Loop_v8 - - vst1.32 {q0},[r0]! - vst1.32 {d2[0]},[r0] - - vldmia sp!,{d8-d15} - bx lr @ bx lr -.size sha1_block_data_order_armv8,.-sha1_block_data_order_armv8 -#endif -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S b/deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S deleted file mode 100644 index 4e1f0226e84bc0..00000000000000 --- a/deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S +++ /dev/null @@ -1,2775 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ -@ Permission to use under GPL terms is granted. -@ ==================================================================== - -@ SHA256 block procedure for ARMv4. May 2007. - -@ Performance is ~2x better than gcc 3.4 generated code and in "abso- -@ lute" terms is ~2250 cycles per 64-byte block or ~35 cycles per -@ byte [on single-issue Xscale PXA250 core]. - -@ July 2010. -@ -@ Rescheduling for dual-issue pipeline resulted in 22% improvement on -@ Cortex A8 core and ~20 cycles per processed byte. - -@ February 2011. -@ -@ Profiler-assisted and platform-specific optimization resulted in 16% -@ improvement on Cortex A8 core and ~15.4 cycles per processed byte. - -@ September 2013. -@ -@ Add NEON implementation. On Cortex A8 it was measured to process one -@ byte in 12.5 cycles or 23% faster than integer-only code. Snapdragon -@ S4 does it in 12.5 cycles too, but it's 50% faster than integer-only -@ code (meaning that latter performs sub-optimally, nothing was done -@ about it). - -@ May 2014. -@ -@ Add ARMv8 code path performing at 2.0 cpb on Apple A7. - -#ifndef __KERNEL__ -# include "arm_arch.h" -#else -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -# define __ARM_MAX_ARCH__ 7 -#endif - -.text -#if __ARM_ARCH__<7 -.code 32 -#else -.syntax unified -# ifdef __thumb2__ -.thumb -# else -.code 32 -# endif -#endif - -.type K256,%object -.align 5 -K256: -.word 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.word 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.word 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.word 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.word 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.word 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.word 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.word 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.word 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.word 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.word 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.word 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.word 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.word 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.word 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.word 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.size K256,.-K256 -.word 0 @ terminator -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha256_block_data_order -#endif -.align 5 - -.global sha256_block_data_order -.type sha256_block_data_order,%function -sha256_block_data_order: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ sha256_block_data_order -#else - adr r3,. -#endif -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#ARMV8_SHA256 - bne .LARMv8 - tst r12,#ARMV7_NEON - bne .LNEON -#endif - add r2,r1,r2,lsl#6 @ len to point at the end of inp - stmdb sp!,{r0,r1,r2,r4-r11,lr} - ldmia r0,{r4,r5,r6,r7,r8,r9,r10,r11} - sub r14,r3,#256+32 @ K256 - sub sp,sp,#16*4 @ alloca(X[16]) -.Loop: -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ magic - eor r12,r12,r12 -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 0 -# if 0==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r8,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 0 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 0==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r8,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#0*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 0==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 0<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#2*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#15*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 1 -# if 1==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r7,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 1 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 1==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r7,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#1*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 1==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 1<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#3*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#0*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 2 -# if 2==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r6,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 2 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 2==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r6,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#2*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 2==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 2<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#4*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#1*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 3 -# if 3==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r5,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 3 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 3==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r5,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#3*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 3==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 3<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#5*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#2*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 4 -# if 4==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r4,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 4 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 4==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r4,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#4*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 4==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 4<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#6*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#3*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 5 -# if 5==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r11,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 5==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r11,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#5*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 5==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 5<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#7*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#4*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 6 -# if 6==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r10,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 6 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 6==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r10,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#6*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 6==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 6<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#8*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#5*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 7 -# if 7==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r9,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 7==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r9,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#7*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 7==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 7<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#9*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#6*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 8 -# if 8==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r8,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 8 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 8==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r8,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#8*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 8==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 8<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#10*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#7*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 9 -# if 9==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r7,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 9 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 9==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r7,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#9*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 9==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 9<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#11*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#8*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 10 -# if 10==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r6,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 10 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 10==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r6,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#10*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 10==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 10<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#12*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#9*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 11 -# if 11==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r5,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 11 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 11==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r5,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#11*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 11==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 11<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#13*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#10*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 12 -# if 12==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r4,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 12 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 12==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r4,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#12*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 12==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 12<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#14*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#11*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 13 -# if 13==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r11,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 13 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 13==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r11,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#13*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 13==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 13<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#15*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#12*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 14 -# if 14==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r10,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 14 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 14==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r10,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#14*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 14==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 14<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#0*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#13*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 15 -# if 15==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r9,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 15 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 15==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r9,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#15*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 15==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 15<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#1*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#14*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -.Lrounds_16_xx: - @ ldr r2,[sp,#1*4] @ 16 - @ ldr r1,[sp,#14*4] - mov r0,r2,ror#7 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#0*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#9*4] - - add r12,r12,r0 - eor r0,r8,r8,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r8,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#0*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 16==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 16<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#2*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#15*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#2*4] @ 17 - @ ldr r1,[sp,#15*4] - mov r0,r2,ror#7 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#1*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#10*4] - - add r3,r3,r0 - eor r0,r7,r7,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r7,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#1*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 17==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 17<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#3*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#0*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#3*4] @ 18 - @ ldr r1,[sp,#0*4] - mov r0,r2,ror#7 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#2*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#11*4] - - add r12,r12,r0 - eor r0,r6,r6,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r6,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#2*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 18==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 18<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#4*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#1*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#4*4] @ 19 - @ ldr r1,[sp,#1*4] - mov r0,r2,ror#7 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#3*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#12*4] - - add r3,r3,r0 - eor r0,r5,r5,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r5,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#3*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 19==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 19<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#5*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#2*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#5*4] @ 20 - @ ldr r1,[sp,#2*4] - mov r0,r2,ror#7 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#4*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#13*4] - - add r12,r12,r0 - eor r0,r4,r4,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r4,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#4*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 20==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 20<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#6*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#3*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#6*4] @ 21 - @ ldr r1,[sp,#3*4] - mov r0,r2,ror#7 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#5*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#14*4] - - add r3,r3,r0 - eor r0,r11,r11,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r11,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#5*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 21==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 21<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#7*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#4*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#7*4] @ 22 - @ ldr r1,[sp,#4*4] - mov r0,r2,ror#7 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#6*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#15*4] - - add r12,r12,r0 - eor r0,r10,r10,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r10,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#6*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 22==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 22<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#8*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#5*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#8*4] @ 23 - @ ldr r1,[sp,#5*4] - mov r0,r2,ror#7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#7*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#0*4] - - add r3,r3,r0 - eor r0,r9,r9,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r9,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#7*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 23==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 23<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#9*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#6*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#9*4] @ 24 - @ ldr r1,[sp,#6*4] - mov r0,r2,ror#7 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#8*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#1*4] - - add r12,r12,r0 - eor r0,r8,r8,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r8,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#8*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 24==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 24<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#10*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#7*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#10*4] @ 25 - @ ldr r1,[sp,#7*4] - mov r0,r2,ror#7 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#9*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#2*4] - - add r3,r3,r0 - eor r0,r7,r7,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r7,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#9*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 25==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 25<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#11*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#8*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#11*4] @ 26 - @ ldr r1,[sp,#8*4] - mov r0,r2,ror#7 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#10*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#3*4] - - add r12,r12,r0 - eor r0,r6,r6,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r6,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#10*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 26==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 26<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#12*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#9*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#12*4] @ 27 - @ ldr r1,[sp,#9*4] - mov r0,r2,ror#7 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#11*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#4*4] - - add r3,r3,r0 - eor r0,r5,r5,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r5,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#11*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 27==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 27<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#13*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#10*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#13*4] @ 28 - @ ldr r1,[sp,#10*4] - mov r0,r2,ror#7 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#12*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#5*4] - - add r12,r12,r0 - eor r0,r4,r4,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r4,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#12*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 28==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 28<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#14*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#11*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#14*4] @ 29 - @ ldr r1,[sp,#11*4] - mov r0,r2,ror#7 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#13*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#6*4] - - add r3,r3,r0 - eor r0,r11,r11,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r11,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#13*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 29==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 29<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#15*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#12*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#15*4] @ 30 - @ ldr r1,[sp,#12*4] - mov r0,r2,ror#7 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#14*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#7*4] - - add r12,r12,r0 - eor r0,r10,r10,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r10,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#14*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 30==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 30<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#0*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#13*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#0*4] @ 31 - @ ldr r1,[sp,#13*4] - mov r0,r2,ror#7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#15*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#8*4] - - add r3,r3,r0 - eor r0,r9,r9,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r9,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#15*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 31==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 31<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#1*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#14*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - ite eq @ Thumb2 thing, sanity check in ARM -#endif - ldreq r3,[sp,#16*4] @ pull ctx - bne .Lrounds_16_xx - - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldr r0,[r3,#0] - ldr r2,[r3,#4] - ldr r12,[r3,#8] - add r4,r4,r0 - ldr r0,[r3,#12] - add r5,r5,r2 - ldr r2,[r3,#16] - add r6,r6,r12 - ldr r12,[r3,#20] - add r7,r7,r0 - ldr r0,[r3,#24] - add r8,r8,r2 - ldr r2,[r3,#28] - add r9,r9,r12 - ldr r1,[sp,#17*4] @ pull inp - ldr r12,[sp,#18*4] @ pull inp+len - add r10,r10,r0 - add r11,r11,r2 - stmia r3,{r4,r5,r6,r7,r8,r9,r10,r11} - cmp r1,r12 - sub r14,r14,#256 @ rewind Ktbl - bne .Loop - - add sp,sp,#19*4 @ destroy frame -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size sha256_block_data_order,.-sha256_block_data_order -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.global sha256_block_data_order_neon -.type sha256_block_data_order_neon,%function -.align 4 -sha256_block_data_order_neon: -.LNEON: - stmdb sp!,{r4-r12,lr} - - sub r11,sp,#16*4+16 - adr r14,K256 - bic r11,r11,#15 @ align for 128-bit stores - mov r12,sp - mov sp,r11 @ alloca - add r2,r1,r2,lsl#6 @ len to point at the end of inp - - vld1.8 {q0},[r1]! - vld1.8 {q1},[r1]! - vld1.8 {q2},[r1]! - vld1.8 {q3},[r1]! - vld1.32 {q8},[r14,:128]! - vld1.32 {q9},[r14,:128]! - vld1.32 {q10},[r14,:128]! - vld1.32 {q11},[r14,:128]! - vrev32.8 q0,q0 @ yes, even on - str r0,[sp,#64] - vrev32.8 q1,q1 @ big-endian - str r1,[sp,#68] - mov r1,sp - vrev32.8 q2,q2 - str r2,[sp,#72] - vrev32.8 q3,q3 - str r12,[sp,#76] @ save original sp - vadd.i32 q8,q8,q0 - vadd.i32 q9,q9,q1 - vst1.32 {q8},[r1,:128]! - vadd.i32 q10,q10,q2 - vst1.32 {q9},[r1,:128]! - vadd.i32 q11,q11,q3 - vst1.32 {q10},[r1,:128]! - vst1.32 {q11},[r1,:128]! - - ldmia r0,{r4-r11} - sub r1,r1,#64 - ldr r2,[sp,#0] - eor r12,r12,r12 - eor r3,r5,r6 - b .L_00_48 - -.align 4 -.L_00_48: - vext.8 q8,q0,q1,#4 - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - vext.8 q9,q2,q3,#4 - add r4,r4,r12 - and r2,r2,r8 - eor r12,r0,r8,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vadd.i32 q0,q0,q9 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - vshr.u32 q9,q8,#3 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#4] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - veor q9,q9,q10 - add r10,r10,r2 - vsli.32 q11,q8,#14 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - vshr.u32 d24,d7,#17 - add r11,r11,r3 - and r2,r2,r7 - veor q9,q9,q11 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - vsli.32 d24,d7,#15 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - vshr.u32 d25,d7,#10 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - vadd.i32 q0,q0,q9 - add r10,r10,r2 - ldr r2,[sp,#8] - veor d25,d25,d24 - and r12,r12,r3 - add r6,r6,r10 - vshr.u32 d24,d7,#19 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - vsli.32 d24,d7,#13 - add r9,r9,r2 - eor r2,r7,r8 - veor d25,d25,d24 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - vadd.i32 d0,d0,d25 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - vshr.u32 d24,d0,#17 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - vsli.32 d24,d0,#15 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - vshr.u32 d25,d0,#10 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - veor d25,d25,d24 - ldr r2,[sp,#12] - and r3,r3,r12 - vshr.u32 d24,d0,#19 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - vld1.32 {q8},[r14,:128]! - add r8,r8,r2 - vsli.32 d24,d0,#13 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - veor d25,d25,d24 - add r9,r9,r3 - and r2,r2,r5 - vadd.i32 d1,d1,d25 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - vadd.i32 q8,q8,q0 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#16] - and r12,r12,r3 - add r4,r4,r8 - vst1.32 {q8},[r1,:128]! - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vext.8 q8,q1,q2,#4 - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - vext.8 q9,q3,q0,#4 - add r8,r8,r12 - and r2,r2,r4 - eor r12,r0,r4,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vadd.i32 q1,q1,q9 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - vshr.u32 q9,q8,#3 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#20] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - veor q9,q9,q10 - add r6,r6,r2 - vsli.32 q11,q8,#14 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - vshr.u32 d24,d1,#17 - add r7,r7,r3 - and r2,r2,r11 - veor q9,q9,q11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - vsli.32 d24,d1,#15 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - vshr.u32 d25,d1,#10 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - vadd.i32 q1,q1,q9 - add r6,r6,r2 - ldr r2,[sp,#24] - veor d25,d25,d24 - and r12,r12,r3 - add r10,r10,r6 - vshr.u32 d24,d1,#19 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - vsli.32 d24,d1,#13 - add r5,r5,r2 - eor r2,r11,r4 - veor d25,d25,d24 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - vadd.i32 d2,d2,d25 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - vshr.u32 d24,d2,#17 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - vsli.32 d24,d2,#15 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - vshr.u32 d25,d2,#10 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - veor d25,d25,d24 - ldr r2,[sp,#28] - and r3,r3,r12 - vshr.u32 d24,d2,#19 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - vld1.32 {q8},[r14,:128]! - add r4,r4,r2 - vsli.32 d24,d2,#13 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - veor d25,d25,d24 - add r5,r5,r3 - and r2,r2,r9 - vadd.i32 d3,d3,d25 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - vadd.i32 q8,q8,q1 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#32] - and r12,r12,r3 - add r8,r8,r4 - vst1.32 {q8},[r1,:128]! - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vext.8 q8,q2,q3,#4 - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - vext.8 q9,q0,q1,#4 - add r4,r4,r12 - and r2,r2,r8 - eor r12,r0,r8,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vadd.i32 q2,q2,q9 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - vshr.u32 q9,q8,#3 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#36] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - veor q9,q9,q10 - add r10,r10,r2 - vsli.32 q11,q8,#14 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - vshr.u32 d24,d3,#17 - add r11,r11,r3 - and r2,r2,r7 - veor q9,q9,q11 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - vsli.32 d24,d3,#15 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - vshr.u32 d25,d3,#10 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - vadd.i32 q2,q2,q9 - add r10,r10,r2 - ldr r2,[sp,#40] - veor d25,d25,d24 - and r12,r12,r3 - add r6,r6,r10 - vshr.u32 d24,d3,#19 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - vsli.32 d24,d3,#13 - add r9,r9,r2 - eor r2,r7,r8 - veor d25,d25,d24 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - vadd.i32 d4,d4,d25 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - vshr.u32 d24,d4,#17 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - vsli.32 d24,d4,#15 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - vshr.u32 d25,d4,#10 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - veor d25,d25,d24 - ldr r2,[sp,#44] - and r3,r3,r12 - vshr.u32 d24,d4,#19 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - vld1.32 {q8},[r14,:128]! - add r8,r8,r2 - vsli.32 d24,d4,#13 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - veor d25,d25,d24 - add r9,r9,r3 - and r2,r2,r5 - vadd.i32 d5,d5,d25 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - vadd.i32 q8,q8,q2 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#48] - and r12,r12,r3 - add r4,r4,r8 - vst1.32 {q8},[r1,:128]! - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vext.8 q8,q3,q0,#4 - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - vext.8 q9,q1,q2,#4 - add r8,r8,r12 - and r2,r2,r4 - eor r12,r0,r4,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vadd.i32 q3,q3,q9 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - vshr.u32 q9,q8,#3 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#52] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - veor q9,q9,q10 - add r6,r6,r2 - vsli.32 q11,q8,#14 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - vshr.u32 d24,d5,#17 - add r7,r7,r3 - and r2,r2,r11 - veor q9,q9,q11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - vsli.32 d24,d5,#15 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - vshr.u32 d25,d5,#10 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - vadd.i32 q3,q3,q9 - add r6,r6,r2 - ldr r2,[sp,#56] - veor d25,d25,d24 - and r12,r12,r3 - add r10,r10,r6 - vshr.u32 d24,d5,#19 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - vsli.32 d24,d5,#13 - add r5,r5,r2 - eor r2,r11,r4 - veor d25,d25,d24 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - vadd.i32 d6,d6,d25 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - vshr.u32 d24,d6,#17 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - vsli.32 d24,d6,#15 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - vshr.u32 d25,d6,#10 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - veor d25,d25,d24 - ldr r2,[sp,#60] - and r3,r3,r12 - vshr.u32 d24,d6,#19 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - vld1.32 {q8},[r14,:128]! - add r4,r4,r2 - vsli.32 d24,d6,#13 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - veor d25,d25,d24 - add r5,r5,r3 - and r2,r2,r9 - vadd.i32 d7,d7,d25 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - vadd.i32 q8,q8,q3 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[r14] - and r12,r12,r3 - add r8,r8,r4 - vst1.32 {q8},[r1,:128]! - add r4,r4,r0,ror#2 - eor r12,r12,r6 - teq r2,#0 @ check for K256 terminator - ldr r2,[sp,#0] - sub r1,r1,#64 - bne .L_00_48 - - ldr r1,[sp,#68] - ldr r0,[sp,#72] - sub r14,r14,#256 @ rewind r14 - teq r1,r0 - it eq - subeq r1,r1,#64 @ avoid SEGV - vld1.8 {q0},[r1]! @ load next input block - vld1.8 {q1},[r1]! - vld1.8 {q2},[r1]! - vld1.8 {q3},[r1]! - it ne - strne r1,[sp,#68] - mov r1,sp - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - add r4,r4,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r8 - eor r12,r0,r8,ror#19 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vrev32.8 q0,q0 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vadd.i32 q8,q8,q0 - ldr r2,[sp,#4] - and r3,r3,r12 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - add r10,r10,r2 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - add r11,r11,r3 - and r2,r2,r7 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - add r10,r10,r2 - ldr r2,[sp,#8] - and r12,r12,r3 - add r6,r6,r10 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - add r9,r9,r2 - eor r2,r7,r8 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - ldr r2,[sp,#12] - and r3,r3,r12 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - add r8,r8,r2 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - add r9,r9,r3 - and r2,r2,r5 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#16] - and r12,r12,r3 - add r4,r4,r8 - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vst1.32 {q8},[r1,:128]! - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - add r8,r8,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r4 - eor r12,r0,r4,ror#19 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vrev32.8 q1,q1 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vadd.i32 q8,q8,q1 - ldr r2,[sp,#20] - and r3,r3,r12 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - add r6,r6,r2 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - add r7,r7,r3 - and r2,r2,r11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - add r6,r6,r2 - ldr r2,[sp,#24] - and r12,r12,r3 - add r10,r10,r6 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - add r5,r5,r2 - eor r2,r11,r4 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - ldr r2,[sp,#28] - and r3,r3,r12 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - add r4,r4,r2 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - add r5,r5,r3 - and r2,r2,r9 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#32] - and r12,r12,r3 - add r8,r8,r4 - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vst1.32 {q8},[r1,:128]! - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - add r4,r4,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r8 - eor r12,r0,r8,ror#19 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vrev32.8 q2,q2 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vadd.i32 q8,q8,q2 - ldr r2,[sp,#36] - and r3,r3,r12 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - add r10,r10,r2 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - add r11,r11,r3 - and r2,r2,r7 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - add r10,r10,r2 - ldr r2,[sp,#40] - and r12,r12,r3 - add r6,r6,r10 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - add r9,r9,r2 - eor r2,r7,r8 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - ldr r2,[sp,#44] - and r3,r3,r12 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - add r8,r8,r2 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - add r9,r9,r3 - and r2,r2,r5 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#48] - and r12,r12,r3 - add r4,r4,r8 - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vst1.32 {q8},[r1,:128]! - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - add r8,r8,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r4 - eor r12,r0,r4,ror#19 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vrev32.8 q3,q3 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vadd.i32 q8,q8,q3 - ldr r2,[sp,#52] - and r3,r3,r12 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - add r6,r6,r2 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - add r7,r7,r3 - and r2,r2,r11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - add r6,r6,r2 - ldr r2,[sp,#56] - and r12,r12,r3 - add r10,r10,r6 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - add r5,r5,r2 - eor r2,r11,r4 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - ldr r2,[sp,#60] - and r3,r3,r12 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - add r4,r4,r2 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - add r5,r5,r3 - and r2,r2,r9 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#64] - and r12,r12,r3 - add r8,r8,r4 - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vst1.32 {q8},[r1,:128]! - ldr r0,[r2,#0] - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldr r12,[r2,#4] - ldr r3,[r2,#8] - ldr r1,[r2,#12] - add r4,r4,r0 @ accumulate - ldr r0,[r2,#16] - add r5,r5,r12 - ldr r12,[r2,#20] - add r6,r6,r3 - ldr r3,[r2,#24] - add r7,r7,r1 - ldr r1,[r2,#28] - add r8,r8,r0 - str r4,[r2],#4 - add r9,r9,r12 - str r5,[r2],#4 - add r10,r10,r3 - str r6,[r2],#4 - add r11,r11,r1 - str r7,[r2],#4 - stmia r2,{r8-r11} - - ittte ne - movne r1,sp - ldrne r2,[sp,#0] - eorne r12,r12,r12 - ldreq sp,[sp,#76] @ restore original sp - itt ne - eorne r3,r5,r6 - bne .L_00_48 - - ldmia sp!,{r4-r12,pc} -.size sha256_block_data_order_neon,.-sha256_block_data_order_neon -#endif -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) - -# ifdef __thumb2__ -# define INST(a,b,c,d) .byte c,d|0xc,a,b -# else -# define INST(a,b,c,d) .byte a,b,c,d -# endif - -.type sha256_block_data_order_armv8,%function -.align 5 -sha256_block_data_order_armv8: -.LARMv8: - vld1.32 {q0,q1},[r0] -# ifdef __thumb2__ - adr r3,.LARMv8 - sub r3,r3,#.LARMv8-K256 -# else - adrl r3,K256 -# endif - add r2,r1,r2,lsl#6 @ len to point at the end of inp - -.Loop_v8: - vld1.8 {q8-q9},[r1]! - vld1.8 {q10-q11},[r1]! - vld1.32 {q12},[r3]! - vrev32.8 q8,q8 - vrev32.8 q9,q9 - vrev32.8 q10,q10 - vrev32.8 q11,q11 - vmov q14,q0 @ offload - vmov q15,q1 - teq r1,r2 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - - vld1.32 {q13},[r3] - vadd.i32 q12,q12,q10 - sub r3,r3,#256-16 @ rewind - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - - vadd.i32 q13,q13,q11 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - - vadd.i32 q0,q0,q14 - vadd.i32 q1,q1,q15 - it ne - bne .Loop_v8 - - vst1.32 {q0,q1},[r0] - - bx lr @ bx lr -.size sha256_block_data_order_armv8,.-sha256_block_data_order_armv8 -#endif -.asciz "SHA256 block transform for ARMv4/NEON/ARMv8, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm/arm-void-gas/sha/sha512-armv4.S b/deps/openssl/asm/arm-void-gas/sha/sha512-armv4.S deleted file mode 100644 index 1889fc701ac094..00000000000000 --- a/deps/openssl/asm/arm-void-gas/sha/sha512-armv4.S +++ /dev/null @@ -1,1775 +0,0 @@ -#include "arm_arch.h" -#ifdef __ARMEL__ -# define LO 0 -# define HI 4 -# define WORD64(hi0,lo0,hi1,lo1) .word lo0,hi0, lo1,hi1 -#else -# define HI 0 -# define LO 4 -# define WORD64(hi0,lo0,hi1,lo1) .word hi0,lo0, hi1,lo1 -#endif - -.text -.code 32 -.type K512,%object -.align 5 -K512: -WORD64(0x428a2f98,0xd728ae22, 0x71374491,0x23ef65cd) -WORD64(0xb5c0fbcf,0xec4d3b2f, 0xe9b5dba5,0x8189dbbc) -WORD64(0x3956c25b,0xf348b538, 0x59f111f1,0xb605d019) -WORD64(0x923f82a4,0xaf194f9b, 0xab1c5ed5,0xda6d8118) -WORD64(0xd807aa98,0xa3030242, 0x12835b01,0x45706fbe) -WORD64(0x243185be,0x4ee4b28c, 0x550c7dc3,0xd5ffb4e2) -WORD64(0x72be5d74,0xf27b896f, 0x80deb1fe,0x3b1696b1) -WORD64(0x9bdc06a7,0x25c71235, 0xc19bf174,0xcf692694) -WORD64(0xe49b69c1,0x9ef14ad2, 0xefbe4786,0x384f25e3) -WORD64(0x0fc19dc6,0x8b8cd5b5, 0x240ca1cc,0x77ac9c65) -WORD64(0x2de92c6f,0x592b0275, 0x4a7484aa,0x6ea6e483) -WORD64(0x5cb0a9dc,0xbd41fbd4, 0x76f988da,0x831153b5) -WORD64(0x983e5152,0xee66dfab, 0xa831c66d,0x2db43210) -WORD64(0xb00327c8,0x98fb213f, 0xbf597fc7,0xbeef0ee4) -WORD64(0xc6e00bf3,0x3da88fc2, 0xd5a79147,0x930aa725) -WORD64(0x06ca6351,0xe003826f, 0x14292967,0x0a0e6e70) -WORD64(0x27b70a85,0x46d22ffc, 0x2e1b2138,0x5c26c926) -WORD64(0x4d2c6dfc,0x5ac42aed, 0x53380d13,0x9d95b3df) -WORD64(0x650a7354,0x8baf63de, 0x766a0abb,0x3c77b2a8) -WORD64(0x81c2c92e,0x47edaee6, 0x92722c85,0x1482353b) -WORD64(0xa2bfe8a1,0x4cf10364, 0xa81a664b,0xbc423001) -WORD64(0xc24b8b70,0xd0f89791, 0xc76c51a3,0x0654be30) -WORD64(0xd192e819,0xd6ef5218, 0xd6990624,0x5565a910) -WORD64(0xf40e3585,0x5771202a, 0x106aa070,0x32bbd1b8) -WORD64(0x19a4c116,0xb8d2d0c8, 0x1e376c08,0x5141ab53) -WORD64(0x2748774c,0xdf8eeb99, 0x34b0bcb5,0xe19b48a8) -WORD64(0x391c0cb3,0xc5c95a63, 0x4ed8aa4a,0xe3418acb) -WORD64(0x5b9cca4f,0x7763e373, 0x682e6ff3,0xd6b2b8a3) -WORD64(0x748f82ee,0x5defb2fc, 0x78a5636f,0x43172f60) -WORD64(0x84c87814,0xa1f0ab72, 0x8cc70208,0x1a6439ec) -WORD64(0x90befffa,0x23631e28, 0xa4506ceb,0xde82bde9) -WORD64(0xbef9a3f7,0xb2c67915, 0xc67178f2,0xe372532b) -WORD64(0xca273ece,0xea26619c, 0xd186b8c7,0x21c0c207) -WORD64(0xeada7dd6,0xcde0eb1e, 0xf57d4f7f,0xee6ed178) -WORD64(0x06f067aa,0x72176fba, 0x0a637dc5,0xa2c898a6) -WORD64(0x113f9804,0xbef90dae, 0x1b710b35,0x131c471b) -WORD64(0x28db77f5,0x23047d84, 0x32caab7b,0x40c72493) -WORD64(0x3c9ebe0a,0x15c9bebc, 0x431d67c4,0x9c100d4c) -WORD64(0x4cc5d4be,0xcb3e42b6, 0x597f299c,0xfc657e2a) -WORD64(0x5fcb6fab,0x3ad6faec, 0x6c44198c,0x4a475817) -.size K512,.-K512 -#if __ARM_MAX_ARCH__>=7 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha512_block_data_order -.skip 32-4 -#else -.skip 32 -#endif - -.global sha512_block_data_order -.type sha512_block_data_order,%function -sha512_block_data_order: - sub r3,pc,#8 @ sha512_block_data_order - add r2,r1,r2,lsl#7 @ len to point at the end of inp -#if __ARM_MAX_ARCH__>=7 - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#1 - bne .LNEON -#endif - stmdb sp!,{r4-r12,lr} - sub r14,r3,#672 @ K512 - sub sp,sp,#9*8 - - ldr r7,[r0,#32+LO] - ldr r8,[r0,#32+HI] - ldr r9, [r0,#48+LO] - ldr r10, [r0,#48+HI] - ldr r11, [r0,#56+LO] - ldr r12, [r0,#56+HI] -.Loop: - str r9, [sp,#48+0] - str r10, [sp,#48+4] - str r11, [sp,#56+0] - str r12, [sp,#56+4] - ldr r5,[r0,#0+LO] - ldr r6,[r0,#0+HI] - ldr r3,[r0,#8+LO] - ldr r4,[r0,#8+HI] - ldr r9, [r0,#16+LO] - ldr r10, [r0,#16+HI] - ldr r11, [r0,#24+LO] - ldr r12, [r0,#24+HI] - str r3,[sp,#8+0] - str r4,[sp,#8+4] - str r9, [sp,#16+0] - str r10, [sp,#16+4] - str r11, [sp,#24+0] - str r12, [sp,#24+4] - ldr r3,[r0,#40+LO] - ldr r4,[r0,#40+HI] - str r3,[sp,#40+0] - str r4,[sp,#40+4] - -.L00_15: -#if __ARM_ARCH__<7 - ldrb r3,[r1,#7] - ldrb r9, [r1,#6] - ldrb r10, [r1,#5] - ldrb r11, [r1,#4] - ldrb r4,[r1,#3] - ldrb r12, [r1,#2] - orr r3,r3,r9,lsl#8 - ldrb r9, [r1,#1] - orr r3,r3,r10,lsl#16 - ldrb r10, [r1],#8 - orr r3,r3,r11,lsl#24 - orr r4,r4,r12,lsl#8 - orr r4,r4,r9,lsl#16 - orr r4,r4,r10,lsl#24 -#else - ldr r3,[r1,#4] - ldr r4,[r1],#8 -#ifdef __ARMEL__ - rev r3,r3 - rev r4,r4 -#endif -#endif - @ Sigma1(x) (ROTR((x),14) ^ ROTR((x),18) ^ ROTR((x),41)) - @ LO lo>>14^hi<<18 ^ lo>>18^hi<<14 ^ hi>>9^lo<<23 - @ HI hi>>14^lo<<18 ^ hi>>18^lo<<14 ^ lo>>9^hi<<23 - mov r9,r7,lsr#14 - str r3,[sp,#64+0] - mov r10,r8,lsr#14 - str r4,[sp,#64+4] - eor r9,r9,r8,lsl#18 - ldr r11,[sp,#56+0] @ h.lo - eor r10,r10,r7,lsl#18 - ldr r12,[sp,#56+4] @ h.hi - eor r9,r9,r7,lsr#18 - eor r10,r10,r8,lsr#18 - eor r9,r9,r8,lsl#14 - eor r10,r10,r7,lsl#14 - eor r9,r9,r8,lsr#9 - eor r10,r10,r7,lsr#9 - eor r9,r9,r7,lsl#23 - eor r10,r10,r8,lsl#23 @ Sigma1(e) - adds r3,r3,r9 - ldr r9,[sp,#40+0] @ f.lo - adc r4,r4,r10 @ T += Sigma1(e) - ldr r10,[sp,#40+4] @ f.hi - adds r3,r3,r11 - ldr r11,[sp,#48+0] @ g.lo - adc r4,r4,r12 @ T += h - ldr r12,[sp,#48+4] @ g.hi - - eor r9,r9,r11 - str r7,[sp,#32+0] - eor r10,r10,r12 - str r8,[sp,#32+4] - and r9,r9,r7 - str r5,[sp,#0+0] - and r10,r10,r8 - str r6,[sp,#0+4] - eor r9,r9,r11 - ldr r11,[r14,#LO] @ K[i].lo - eor r10,r10,r12 @ Ch(e,f,g) - ldr r12,[r14,#HI] @ K[i].hi - - adds r3,r3,r9 - ldr r7,[sp,#24+0] @ d.lo - adc r4,r4,r10 @ T += Ch(e,f,g) - ldr r8,[sp,#24+4] @ d.hi - adds r3,r3,r11 - and r9,r11,#0xff - adc r4,r4,r12 @ T += K[i] - adds r7,r7,r3 - ldr r11,[sp,#8+0] @ b.lo - adc r8,r8,r4 @ d += T - teq r9,#148 - - ldr r12,[sp,#16+0] @ c.lo - orreq r14,r14,#1 - @ Sigma0(x) (ROTR((x),28) ^ ROTR((x),34) ^ ROTR((x),39)) - @ LO lo>>28^hi<<4 ^ hi>>2^lo<<30 ^ hi>>7^lo<<25 - @ HI hi>>28^lo<<4 ^ lo>>2^hi<<30 ^ lo>>7^hi<<25 - mov r9,r5,lsr#28 - mov r10,r6,lsr#28 - eor r9,r9,r6,lsl#4 - eor r10,r10,r5,lsl#4 - eor r9,r9,r6,lsr#2 - eor r10,r10,r5,lsr#2 - eor r9,r9,r5,lsl#30 - eor r10,r10,r6,lsl#30 - eor r9,r9,r6,lsr#7 - eor r10,r10,r5,lsr#7 - eor r9,r9,r5,lsl#25 - eor r10,r10,r6,lsl#25 @ Sigma0(a) - adds r3,r3,r9 - and r9,r5,r11 - adc r4,r4,r10 @ T += Sigma0(a) - - ldr r10,[sp,#8+4] @ b.hi - orr r5,r5,r11 - ldr r11,[sp,#16+4] @ c.hi - and r5,r5,r12 - and r12,r6,r10 - orr r6,r6,r10 - orr r5,r5,r9 @ Maj(a,b,c).lo - and r6,r6,r11 - adds r5,r5,r3 - orr r6,r6,r12 @ Maj(a,b,c).hi - sub sp,sp,#8 - adc r6,r6,r4 @ h += T - tst r14,#1 - add r14,r14,#8 - tst r14,#1 - beq .L00_15 - ldr r9,[sp,#184+0] - ldr r10,[sp,#184+4] - bic r14,r14,#1 -.L16_79: - @ sigma0(x) (ROTR((x),1) ^ ROTR((x),8) ^ ((x)>>7)) - @ LO lo>>1^hi<<31 ^ lo>>8^hi<<24 ^ lo>>7^hi<<25 - @ HI hi>>1^lo<<31 ^ hi>>8^lo<<24 ^ hi>>7 - mov r3,r9,lsr#1 - ldr r11,[sp,#80+0] - mov r4,r10,lsr#1 - ldr r12,[sp,#80+4] - eor r3,r3,r10,lsl#31 - eor r4,r4,r9,lsl#31 - eor r3,r3,r9,lsr#8 - eor r4,r4,r10,lsr#8 - eor r3,r3,r10,lsl#24 - eor r4,r4,r9,lsl#24 - eor r3,r3,r9,lsr#7 - eor r4,r4,r10,lsr#7 - eor r3,r3,r10,lsl#25 - - @ sigma1(x) (ROTR((x),19) ^ ROTR((x),61) ^ ((x)>>6)) - @ LO lo>>19^hi<<13 ^ hi>>29^lo<<3 ^ lo>>6^hi<<26 - @ HI hi>>19^lo<<13 ^ lo>>29^hi<<3 ^ hi>>6 - mov r9,r11,lsr#19 - mov r10,r12,lsr#19 - eor r9,r9,r12,lsl#13 - eor r10,r10,r11,lsl#13 - eor r9,r9,r12,lsr#29 - eor r10,r10,r11,lsr#29 - eor r9,r9,r11,lsl#3 - eor r10,r10,r12,lsl#3 - eor r9,r9,r11,lsr#6 - eor r10,r10,r12,lsr#6 - ldr r11,[sp,#120+0] - eor r9,r9,r12,lsl#26 - - ldr r12,[sp,#120+4] - adds r3,r3,r9 - ldr r9,[sp,#192+0] - adc r4,r4,r10 - - ldr r10,[sp,#192+4] - adds r3,r3,r11 - adc r4,r4,r12 - adds r3,r3,r9 - adc r4,r4,r10 - @ Sigma1(x) (ROTR((x),14) ^ ROTR((x),18) ^ ROTR((x),41)) - @ LO lo>>14^hi<<18 ^ lo>>18^hi<<14 ^ hi>>9^lo<<23 - @ HI hi>>14^lo<<18 ^ hi>>18^lo<<14 ^ lo>>9^hi<<23 - mov r9,r7,lsr#14 - str r3,[sp,#64+0] - mov r10,r8,lsr#14 - str r4,[sp,#64+4] - eor r9,r9,r8,lsl#18 - ldr r11,[sp,#56+0] @ h.lo - eor r10,r10,r7,lsl#18 - ldr r12,[sp,#56+4] @ h.hi - eor r9,r9,r7,lsr#18 - eor r10,r10,r8,lsr#18 - eor r9,r9,r8,lsl#14 - eor r10,r10,r7,lsl#14 - eor r9,r9,r8,lsr#9 - eor r10,r10,r7,lsr#9 - eor r9,r9,r7,lsl#23 - eor r10,r10,r8,lsl#23 @ Sigma1(e) - adds r3,r3,r9 - ldr r9,[sp,#40+0] @ f.lo - adc r4,r4,r10 @ T += Sigma1(e) - ldr r10,[sp,#40+4] @ f.hi - adds r3,r3,r11 - ldr r11,[sp,#48+0] @ g.lo - adc r4,r4,r12 @ T += h - ldr r12,[sp,#48+4] @ g.hi - - eor r9,r9,r11 - str r7,[sp,#32+0] - eor r10,r10,r12 - str r8,[sp,#32+4] - and r9,r9,r7 - str r5,[sp,#0+0] - and r10,r10,r8 - str r6,[sp,#0+4] - eor r9,r9,r11 - ldr r11,[r14,#LO] @ K[i].lo - eor r10,r10,r12 @ Ch(e,f,g) - ldr r12,[r14,#HI] @ K[i].hi - - adds r3,r3,r9 - ldr r7,[sp,#24+0] @ d.lo - adc r4,r4,r10 @ T += Ch(e,f,g) - ldr r8,[sp,#24+4] @ d.hi - adds r3,r3,r11 - and r9,r11,#0xff - adc r4,r4,r12 @ T += K[i] - adds r7,r7,r3 - ldr r11,[sp,#8+0] @ b.lo - adc r8,r8,r4 @ d += T - teq r9,#23 - - ldr r12,[sp,#16+0] @ c.lo - orreq r14,r14,#1 - @ Sigma0(x) (ROTR((x),28) ^ ROTR((x),34) ^ ROTR((x),39)) - @ LO lo>>28^hi<<4 ^ hi>>2^lo<<30 ^ hi>>7^lo<<25 - @ HI hi>>28^lo<<4 ^ lo>>2^hi<<30 ^ lo>>7^hi<<25 - mov r9,r5,lsr#28 - mov r10,r6,lsr#28 - eor r9,r9,r6,lsl#4 - eor r10,r10,r5,lsl#4 - eor r9,r9,r6,lsr#2 - eor r10,r10,r5,lsr#2 - eor r9,r9,r5,lsl#30 - eor r10,r10,r6,lsl#30 - eor r9,r9,r6,lsr#7 - eor r10,r10,r5,lsr#7 - eor r9,r9,r5,lsl#25 - eor r10,r10,r6,lsl#25 @ Sigma0(a) - adds r3,r3,r9 - and r9,r5,r11 - adc r4,r4,r10 @ T += Sigma0(a) - - ldr r10,[sp,#8+4] @ b.hi - orr r5,r5,r11 - ldr r11,[sp,#16+4] @ c.hi - and r5,r5,r12 - and r12,r6,r10 - orr r6,r6,r10 - orr r5,r5,r9 @ Maj(a,b,c).lo - and r6,r6,r11 - adds r5,r5,r3 - orr r6,r6,r12 @ Maj(a,b,c).hi - sub sp,sp,#8 - adc r6,r6,r4 @ h += T - tst r14,#1 - add r14,r14,#8 - ldreq r9,[sp,#184+0] - ldreq r10,[sp,#184+4] - beq .L16_79 - bic r14,r14,#1 - - ldr r3,[sp,#8+0] - ldr r4,[sp,#8+4] - ldr r9, [r0,#0+LO] - ldr r10, [r0,#0+HI] - ldr r11, [r0,#8+LO] - ldr r12, [r0,#8+HI] - adds r9,r5,r9 - str r9, [r0,#0+LO] - adc r10,r6,r10 - str r10, [r0,#0+HI] - adds r11,r3,r11 - str r11, [r0,#8+LO] - adc r12,r4,r12 - str r12, [r0,#8+HI] - - ldr r5,[sp,#16+0] - ldr r6,[sp,#16+4] - ldr r3,[sp,#24+0] - ldr r4,[sp,#24+4] - ldr r9, [r0,#16+LO] - ldr r10, [r0,#16+HI] - ldr r11, [r0,#24+LO] - ldr r12, [r0,#24+HI] - adds r9,r5,r9 - str r9, [r0,#16+LO] - adc r10,r6,r10 - str r10, [r0,#16+HI] - adds r11,r3,r11 - str r11, [r0,#24+LO] - adc r12,r4,r12 - str r12, [r0,#24+HI] - - ldr r3,[sp,#40+0] - ldr r4,[sp,#40+4] - ldr r9, [r0,#32+LO] - ldr r10, [r0,#32+HI] - ldr r11, [r0,#40+LO] - ldr r12, [r0,#40+HI] - adds r7,r7,r9 - str r7,[r0,#32+LO] - adc r8,r8,r10 - str r8,[r0,#32+HI] - adds r11,r3,r11 - str r11, [r0,#40+LO] - adc r12,r4,r12 - str r12, [r0,#40+HI] - - ldr r5,[sp,#48+0] - ldr r6,[sp,#48+4] - ldr r3,[sp,#56+0] - ldr r4,[sp,#56+4] - ldr r9, [r0,#48+LO] - ldr r10, [r0,#48+HI] - ldr r11, [r0,#56+LO] - ldr r12, [r0,#56+HI] - adds r9,r5,r9 - str r9, [r0,#48+LO] - adc r10,r6,r10 - str r10, [r0,#48+HI] - adds r11,r3,r11 - str r11, [r0,#56+LO] - adc r12,r4,r12 - str r12, [r0,#56+HI] - - add sp,sp,#640 - sub r14,r14,#640 - - teq r1,r2 - bne .Loop - - add sp,sp,#8*9 @ destroy frame -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.align 4 -.LNEON: - dmb @ errata #451034 on early Cortex A8 - vstmdb sp!,{d8-d15} @ ABI specification says so - sub r3,r3,#672 @ K512 - vldmia r0,{d16-d23} @ load context -.Loop_neon: - vshr.u64 d24,d20,#14 @ 0 -#if 0<16 - vld1.64 {d0},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d20,#18 -#if 0>0 - vadd.i64 d16,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d20,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 0<16 && defined(__ARMEL__) - vrev64.8 d0,d0 -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d0 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 1 -#if 1<16 - vld1.64 {d1},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 1>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 1<16 && defined(__ARMEL__) - vrev64.8 d1,d1 -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d1 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 d24,d18,#14 @ 2 -#if 2<16 - vld1.64 {d2},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d18,#18 -#if 2>0 - vadd.i64 d22,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d18,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 2<16 && defined(__ARMEL__) - vrev64.8 d2,d2 -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d2 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 3 -#if 3<16 - vld1.64 {d3},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 3>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 3<16 && defined(__ARMEL__) - vrev64.8 d3,d3 -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d3 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 d24,d16,#14 @ 4 -#if 4<16 - vld1.64 {d4},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d16,#18 -#if 4>0 - vadd.i64 d20,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d16,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 4<16 && defined(__ARMEL__) - vrev64.8 d4,d4 -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d4 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 5 -#if 5<16 - vld1.64 {d5},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 5>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 5<16 && defined(__ARMEL__) - vrev64.8 d5,d5 -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d5 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 d24,d22,#14 @ 6 -#if 6<16 - vld1.64 {d6},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d22,#18 -#if 6>0 - vadd.i64 d18,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d22,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 6<16 && defined(__ARMEL__) - vrev64.8 d6,d6 -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d6 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 7 -#if 7<16 - vld1.64 {d7},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 7>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 7<16 && defined(__ARMEL__) - vrev64.8 d7,d7 -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d7 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - vshr.u64 d24,d20,#14 @ 8 -#if 8<16 - vld1.64 {d8},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d20,#18 -#if 8>0 - vadd.i64 d16,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d20,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 8<16 && defined(__ARMEL__) - vrev64.8 d8,d8 -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d8 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 9 -#if 9<16 - vld1.64 {d9},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 9>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 9<16 && defined(__ARMEL__) - vrev64.8 d9,d9 -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d9 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 d24,d18,#14 @ 10 -#if 10<16 - vld1.64 {d10},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d18,#18 -#if 10>0 - vadd.i64 d22,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d18,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 10<16 && defined(__ARMEL__) - vrev64.8 d10,d10 -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d10 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 11 -#if 11<16 - vld1.64 {d11},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 11>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 11<16 && defined(__ARMEL__) - vrev64.8 d11,d11 -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d11 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 d24,d16,#14 @ 12 -#if 12<16 - vld1.64 {d12},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d16,#18 -#if 12>0 - vadd.i64 d20,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d16,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 12<16 && defined(__ARMEL__) - vrev64.8 d12,d12 -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d12 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 13 -#if 13<16 - vld1.64 {d13},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 13>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 13<16 && defined(__ARMEL__) - vrev64.8 d13,d13 -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d13 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 d24,d22,#14 @ 14 -#if 14<16 - vld1.64 {d14},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d22,#18 -#if 14>0 - vadd.i64 d18,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d22,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 14<16 && defined(__ARMEL__) - vrev64.8 d14,d14 -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d14 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 15 -#if 15<16 - vld1.64 {d15},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 15>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 15<16 && defined(__ARMEL__) - vrev64.8 d15,d15 -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d15 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - mov r12,#4 -.L16_79_neon: - subs r12,#1 - vshr.u64 q12,q7,#19 - vshr.u64 q13,q7,#61 - vadd.i64 d16,d30 @ h+=Maj from the past - vshr.u64 q15,q7,#6 - vsli.64 q12,q7,#45 - vext.8 q14,q0,q1,#8 @ X[i+1] - vsli.64 q13,q7,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q0,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q4,q5,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d20,#14 @ from NEON_00_15 - vadd.i64 q0,q14 - vshr.u64 d25,d20,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d20,#41 @ from NEON_00_15 - vadd.i64 q0,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 16<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d0 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 17 -#if 17<16 - vld1.64 {d1},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 17>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 17<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d1 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 q12,q0,#19 - vshr.u64 q13,q0,#61 - vadd.i64 d22,d30 @ h+=Maj from the past - vshr.u64 q15,q0,#6 - vsli.64 q12,q0,#45 - vext.8 q14,q1,q2,#8 @ X[i+1] - vsli.64 q13,q0,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q1,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q5,q6,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d18,#14 @ from NEON_00_15 - vadd.i64 q1,q14 - vshr.u64 d25,d18,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d18,#41 @ from NEON_00_15 - vadd.i64 q1,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 18<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d2 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 19 -#if 19<16 - vld1.64 {d3},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 19>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 19<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d3 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 q12,q1,#19 - vshr.u64 q13,q1,#61 - vadd.i64 d20,d30 @ h+=Maj from the past - vshr.u64 q15,q1,#6 - vsli.64 q12,q1,#45 - vext.8 q14,q2,q3,#8 @ X[i+1] - vsli.64 q13,q1,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q2,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q6,q7,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d16,#14 @ from NEON_00_15 - vadd.i64 q2,q14 - vshr.u64 d25,d16,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d16,#41 @ from NEON_00_15 - vadd.i64 q2,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 20<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d4 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 21 -#if 21<16 - vld1.64 {d5},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 21>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 21<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d5 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 q12,q2,#19 - vshr.u64 q13,q2,#61 - vadd.i64 d18,d30 @ h+=Maj from the past - vshr.u64 q15,q2,#6 - vsli.64 q12,q2,#45 - vext.8 q14,q3,q4,#8 @ X[i+1] - vsli.64 q13,q2,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q3,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q7,q0,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d22,#14 @ from NEON_00_15 - vadd.i64 q3,q14 - vshr.u64 d25,d22,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d22,#41 @ from NEON_00_15 - vadd.i64 q3,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 22<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d6 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 23 -#if 23<16 - vld1.64 {d7},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 23>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 23<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d7 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - vshr.u64 q12,q3,#19 - vshr.u64 q13,q3,#61 - vadd.i64 d16,d30 @ h+=Maj from the past - vshr.u64 q15,q3,#6 - vsli.64 q12,q3,#45 - vext.8 q14,q4,q5,#8 @ X[i+1] - vsli.64 q13,q3,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q4,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q0,q1,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d20,#14 @ from NEON_00_15 - vadd.i64 q4,q14 - vshr.u64 d25,d20,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d20,#41 @ from NEON_00_15 - vadd.i64 q4,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 24<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d8 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 25 -#if 25<16 - vld1.64 {d9},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 25>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 25<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d9 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 q12,q4,#19 - vshr.u64 q13,q4,#61 - vadd.i64 d22,d30 @ h+=Maj from the past - vshr.u64 q15,q4,#6 - vsli.64 q12,q4,#45 - vext.8 q14,q5,q6,#8 @ X[i+1] - vsli.64 q13,q4,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q5,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q1,q2,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d18,#14 @ from NEON_00_15 - vadd.i64 q5,q14 - vshr.u64 d25,d18,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d18,#41 @ from NEON_00_15 - vadd.i64 q5,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 26<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d10 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 27 -#if 27<16 - vld1.64 {d11},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 27>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 27<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d11 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 q12,q5,#19 - vshr.u64 q13,q5,#61 - vadd.i64 d20,d30 @ h+=Maj from the past - vshr.u64 q15,q5,#6 - vsli.64 q12,q5,#45 - vext.8 q14,q6,q7,#8 @ X[i+1] - vsli.64 q13,q5,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q6,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q2,q3,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d16,#14 @ from NEON_00_15 - vadd.i64 q6,q14 - vshr.u64 d25,d16,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d16,#41 @ from NEON_00_15 - vadd.i64 q6,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 28<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d12 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 29 -#if 29<16 - vld1.64 {d13},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 29>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 29<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d13 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 q12,q6,#19 - vshr.u64 q13,q6,#61 - vadd.i64 d18,d30 @ h+=Maj from the past - vshr.u64 q15,q6,#6 - vsli.64 q12,q6,#45 - vext.8 q14,q7,q0,#8 @ X[i+1] - vsli.64 q13,q6,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q7,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q3,q4,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d22,#14 @ from NEON_00_15 - vadd.i64 q7,q14 - vshr.u64 d25,d22,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d22,#41 @ from NEON_00_15 - vadd.i64 q7,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 30<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d14 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 31 -#if 31<16 - vld1.64 {d15},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 31>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 31<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d15 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - bne .L16_79_neon - - vadd.i64 d16,d30 @ h+=Maj from the past - vldmia r0,{d24-d31} @ load context to temp - vadd.i64 q8,q12 @ vectorized accumulate - vadd.i64 q9,q13 - vadd.i64 q10,q14 - vadd.i64 q11,q15 - vstmia r0,{d16-d23} @ save context - teq r1,r2 - sub r3,#640 @ rewind K512 - bne .Loop_neon - - vldmia sp!,{d8-d15} @ epilogue - bx lr @ .word 0xe12fff1e -#endif -.size sha512_block_data_order,.-sha512_block_data_order -.asciz "SHA512 block transform for ARMv4/NEON, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm/arm64-linux64-gas/aes/aesv8-armx.S b/deps/openssl/asm/arm64-linux64-gas/aes/aesv8-armx.S deleted file mode 100644 index f5dd6cbb86234e..00000000000000 --- a/deps/openssl/asm/arm64-linux64-gas/aes/aesv8-armx.S +++ /dev/null @@ -1,747 +0,0 @@ -#include "arm_arch.h" - -#if __ARM_MAX_ARCH__>=7 -.text -.arch armv8-a+crypto -.align 5 -rcon: -.long 0x01,0x01,0x01,0x01 -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d // rotate-n-splat -.long 0x1b,0x1b,0x1b,0x1b - -.globl aes_v8_set_encrypt_key -.type aes_v8_set_encrypt_key,%function -.align 5 -aes_v8_set_encrypt_key: -.Lenc_key: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - mov x3,#-1 - cmp x0,#0 - b.eq .Lenc_key_abort - cmp x2,#0 - b.eq .Lenc_key_abort - mov x3,#-2 - cmp w1,#128 - b.lt .Lenc_key_abort - cmp w1,#256 - b.gt .Lenc_key_abort - tst w1,#0x3f - b.ne .Lenc_key_abort - - adr x3,rcon - cmp w1,#192 - - eor v0.16b,v0.16b,v0.16b - ld1 {v3.16b},[x0],#16 - mov w1,#8 // reuse w1 - ld1 {v1.4s,v2.4s},[x3],#32 - - b.lt .Loop128 - b.eq .L192 - b .L256 - -.align 4 -.Loop128: - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - b.ne .Loop128 - - ld1 {v1.4s},[x3] - - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - eor v3.16b,v3.16b,v6.16b - st1 {v3.4s},[x2] - add x2,x2,#0x50 - - mov w12,#10 - b .Ldone - -.align 4 -.L192: - ld1 {v4.8b},[x0],#8 - movi v6.16b,#8 // borrow v6.16b - st1 {v3.4s},[x2],#16 - sub v2.16b,v2.16b,v6.16b // adjust the mask - -.Loop192: - tbl v6.16b,{v4.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v4.8b},[x2],#8 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - - dup v5.4s,v3.s[3] - eor v5.16b,v5.16b,v4.16b - eor v6.16b,v6.16b,v1.16b - ext v4.16b,v0.16b,v4.16b,#12 - shl v1.16b,v1.16b,#1 - eor v4.16b,v4.16b,v5.16b - eor v3.16b,v3.16b,v6.16b - eor v4.16b,v4.16b,v6.16b - st1 {v3.4s},[x2],#16 - b.ne .Loop192 - - mov w12,#12 - add x2,x2,#0x20 - b .Ldone - -.align 4 -.L256: - ld1 {v4.16b},[x0] - mov w1,#7 - mov w12,#14 - st1 {v3.4s},[x2],#16 - -.Loop256: - tbl v6.16b,{v4.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v4.4s},[x2],#16 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - st1 {v3.4s},[x2],#16 - b.eq .Ldone - - dup v6.4s,v3.s[3] // just splat - ext v5.16b,v0.16b,v4.16b,#12 - aese v6.16b,v0.16b - - eor v4.16b,v4.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v4.16b,v4.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v4.16b,v4.16b,v5.16b - - eor v4.16b,v4.16b,v6.16b - b .Loop256 - -.Ldone: - str w12,[x2] - mov x3,#0 - -.Lenc_key_abort: - mov x0,x3 // return value - ldr x29,[sp],#16 - ret -.size aes_v8_set_encrypt_key,.-aes_v8_set_encrypt_key - -.globl aes_v8_set_decrypt_key -.type aes_v8_set_decrypt_key,%function -.align 5 -aes_v8_set_decrypt_key: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - bl .Lenc_key - - cmp x0,#0 - b.ne .Ldec_key_abort - - sub x2,x2,#240 // restore original x2 - mov x4,#-16 - add x0,x2,x12,lsl#4 // end of key schedule - - ld1 {v0.4s},[x2] - ld1 {v1.4s},[x0] - st1 {v0.4s},[x0],x4 - st1 {v1.4s},[x2],#16 - -.Loop_imc: - ld1 {v0.4s},[x2] - ld1 {v1.4s},[x0] - aesimc v0.16b,v0.16b - aesimc v1.16b,v1.16b - st1 {v0.4s},[x0],x4 - st1 {v1.4s},[x2],#16 - cmp x0,x2 - b.hi .Loop_imc - - ld1 {v0.4s},[x2] - aesimc v0.16b,v0.16b - st1 {v0.4s},[x0] - - eor x0,x0,x0 // return value -.Ldec_key_abort: - ldp x29,x30,[sp],#16 - ret -.size aes_v8_set_decrypt_key,.-aes_v8_set_decrypt_key -.globl aes_v8_encrypt -.type aes_v8_encrypt,%function -.align 5 -aes_v8_encrypt: - ldr w3,[x2,#240] - ld1 {v0.4s},[x2],#16 - ld1 {v2.16b},[x0] - sub w3,w3,#2 - ld1 {v1.4s},[x2],#16 - -.Loop_enc: - aese v2.16b,v0.16b - aesmc v2.16b,v2.16b - ld1 {v0.4s},[x2],#16 - subs w3,w3,#2 - aese v2.16b,v1.16b - aesmc v2.16b,v2.16b - ld1 {v1.4s},[x2],#16 - b.gt .Loop_enc - - aese v2.16b,v0.16b - aesmc v2.16b,v2.16b - ld1 {v0.4s},[x2] - aese v2.16b,v1.16b - eor v2.16b,v2.16b,v0.16b - - st1 {v2.16b},[x1] - ret -.size aes_v8_encrypt,.-aes_v8_encrypt -.globl aes_v8_decrypt -.type aes_v8_decrypt,%function -.align 5 -aes_v8_decrypt: - ldr w3,[x2,#240] - ld1 {v0.4s},[x2],#16 - ld1 {v2.16b},[x0] - sub w3,w3,#2 - ld1 {v1.4s},[x2],#16 - -.Loop_dec: - aesd v2.16b,v0.16b - aesimc v2.16b,v2.16b - ld1 {v0.4s},[x2],#16 - subs w3,w3,#2 - aesd v2.16b,v1.16b - aesimc v2.16b,v2.16b - ld1 {v1.4s},[x2],#16 - b.gt .Loop_dec - - aesd v2.16b,v0.16b - aesimc v2.16b,v2.16b - ld1 {v0.4s},[x2] - aesd v2.16b,v1.16b - eor v2.16b,v2.16b,v0.16b - - st1 {v2.16b},[x1] - ret -.size aes_v8_decrypt,.-aes_v8_decrypt -.globl aes_v8_cbc_encrypt -.type aes_v8_cbc_encrypt,%function -.align 5 -aes_v8_cbc_encrypt: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - subs x2,x2,#16 - mov x8,#16 - b.lo .Lcbc_abort - csel x8,xzr,x8,eq - - cmp w5,#0 // en- or decrypting? - ldr w5,[x3,#240] - and x2,x2,#-16 - ld1 {v6.16b},[x4] - ld1 {v0.16b},[x0],x8 - - ld1 {v16.4s-v17.4s},[x3] // load key schedule... - sub w5,w5,#6 - add x7,x3,x5,lsl#4 // pointer to last 7 round keys - sub w5,w5,#2 - ld1 {v18.4s-v19.4s},[x7],#32 - ld1 {v20.4s-v21.4s},[x7],#32 - ld1 {v22.4s-v23.4s},[x7],#32 - ld1 {v7.4s},[x7] - - add x7,x3,#32 - mov w6,w5 - b.eq .Lcbc_dec - - cmp w5,#2 - eor v0.16b,v0.16b,v6.16b - eor v5.16b,v16.16b,v7.16b - b.eq .Lcbc_enc128 - - ld1 {v2.4s-v3.4s},[x7] - add x7,x3,#16 - add x6,x3,#16*4 - add x12,x3,#16*5 - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - add x14,x3,#16*6 - add x3,x3,#16*7 - b .Lenter_cbc_enc - -.align 4 -.Loop_cbc_enc: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - st1 {v6.16b},[x1],#16 -.Lenter_cbc_enc: - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v0.16b,v2.16b - aesmc v0.16b,v0.16b - ld1 {v16.4s},[x6] - cmp w5,#4 - aese v0.16b,v3.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x12] - b.eq .Lcbc_enc192 - - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - ld1 {v16.4s},[x14] - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x3] - nop - -.Lcbc_enc192: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - subs x2,x2,#16 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - csel x8,xzr,x8,eq - aese v0.16b,v18.16b - aesmc v0.16b,v0.16b - aese v0.16b,v19.16b - aesmc v0.16b,v0.16b - ld1 {v16.16b},[x0],x8 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - eor v16.16b,v16.16b,v5.16b - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x7] // re-pre-load rndkey[1] - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - aese v0.16b,v23.16b - eor v6.16b,v0.16b,v7.16b - b.hs .Loop_cbc_enc - - st1 {v6.16b},[x1],#16 - b .Lcbc_done - -.align 5 -.Lcbc_enc128: - ld1 {v2.4s-v3.4s},[x7] - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - b .Lenter_cbc_enc128 -.Loop_cbc_enc128: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - st1 {v6.16b},[x1],#16 -.Lenter_cbc_enc128: - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - subs x2,x2,#16 - aese v0.16b,v2.16b - aesmc v0.16b,v0.16b - csel x8,xzr,x8,eq - aese v0.16b,v3.16b - aesmc v0.16b,v0.16b - aese v0.16b,v18.16b - aesmc v0.16b,v0.16b - aese v0.16b,v19.16b - aesmc v0.16b,v0.16b - ld1 {v16.16b},[x0],x8 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - eor v16.16b,v16.16b,v5.16b - aese v0.16b,v23.16b - eor v6.16b,v0.16b,v7.16b - b.hs .Loop_cbc_enc128 - - st1 {v6.16b},[x1],#16 - b .Lcbc_done -.align 5 -.Lcbc_dec: - ld1 {v18.16b},[x0],#16 - subs x2,x2,#32 // bias - add w6,w5,#2 - orr v3.16b,v0.16b,v0.16b - orr v1.16b,v0.16b,v0.16b - orr v19.16b,v18.16b,v18.16b - b.lo .Lcbc_dec_tail - - orr v1.16b,v18.16b,v18.16b - ld1 {v18.16b},[x0],#16 - orr v2.16b,v0.16b,v0.16b - orr v3.16b,v1.16b,v1.16b - orr v19.16b,v18.16b,v18.16b - -.Loop3x_cbc_dec: - aesd v0.16b,v16.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aesd v0.16b,v17.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Loop3x_cbc_dec - - aesd v0.16b,v16.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - eor v4.16b,v6.16b,v7.16b - subs x2,x2,#0x30 - eor v5.16b,v2.16b,v7.16b - csel x6,x2,x6,lo // x6, w6, is zero at this point - aesd v0.16b,v17.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - eor v17.16b,v3.16b,v7.16b - add x0,x0,x6 // x0 is adjusted in such way that - // at exit from the loop v1.16b-v18.16b - // are loaded with last "words" - orr v6.16b,v19.16b,v19.16b - mov x7,x3 - aesd v0.16b,v20.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v20.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v20.16b - aesimc v18.16b,v18.16b - ld1 {v2.16b},[x0],#16 - aesd v0.16b,v21.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v21.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v21.16b - aesimc v18.16b,v18.16b - ld1 {v3.16b},[x0],#16 - aesd v0.16b,v22.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v22.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v22.16b - aesimc v18.16b,v18.16b - ld1 {v19.16b},[x0],#16 - aesd v0.16b,v23.16b - aesd v1.16b,v23.16b - aesd v18.16b,v23.16b - ld1 {v16.4s},[x7],#16 // re-pre-load rndkey[0] - add w6,w5,#2 - eor v4.16b,v4.16b,v0.16b - eor v5.16b,v5.16b,v1.16b - eor v18.16b,v18.16b,v17.16b - ld1 {v17.4s},[x7],#16 // re-pre-load rndkey[1] - st1 {v4.16b},[x1],#16 - orr v0.16b,v2.16b,v2.16b - st1 {v5.16b},[x1],#16 - orr v1.16b,v3.16b,v3.16b - st1 {v18.16b},[x1],#16 - orr v18.16b,v19.16b,v19.16b - b.hs .Loop3x_cbc_dec - - cmn x2,#0x30 - b.eq .Lcbc_done - nop - -.Lcbc_dec_tail: - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Lcbc_dec_tail - - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - aesd v1.16b,v20.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v20.16b - aesimc v18.16b,v18.16b - cmn x2,#0x20 - aesd v1.16b,v21.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v21.16b - aesimc v18.16b,v18.16b - eor v5.16b,v6.16b,v7.16b - aesd v1.16b,v22.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v22.16b - aesimc v18.16b,v18.16b - eor v17.16b,v3.16b,v7.16b - aesd v1.16b,v23.16b - aesd v18.16b,v23.16b - b.eq .Lcbc_dec_one - eor v5.16b,v5.16b,v1.16b - eor v17.16b,v17.16b,v18.16b - orr v6.16b,v19.16b,v19.16b - st1 {v5.16b},[x1],#16 - st1 {v17.16b},[x1],#16 - b .Lcbc_done - -.Lcbc_dec_one: - eor v5.16b,v5.16b,v18.16b - orr v6.16b,v19.16b,v19.16b - st1 {v5.16b},[x1],#16 - -.Lcbc_done: - st1 {v6.16b},[x4] -.Lcbc_abort: - ldr x29,[sp],#16 - ret -.size aes_v8_cbc_encrypt,.-aes_v8_cbc_encrypt -.globl aes_v8_ctr32_encrypt_blocks -.type aes_v8_ctr32_encrypt_blocks,%function -.align 5 -aes_v8_ctr32_encrypt_blocks: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - ldr w5,[x3,#240] - - ldr w8, [x4, #12] - ld1 {v0.4s},[x4] - - ld1 {v16.4s-v17.4s},[x3] // load key schedule... - sub w5,w5,#4 - mov x12,#16 - cmp x2,#2 - add x7,x3,x5,lsl#4 // pointer to last 5 round keys - sub w5,w5,#2 - ld1 {v20.4s-v21.4s},[x7],#32 - ld1 {v22.4s-v23.4s},[x7],#32 - ld1 {v7.4s},[x7] - add x7,x3,#32 - mov w6,w5 - csel x12,xzr,x12,lo -#ifndef __ARMEB__ - rev w8, w8 -#endif - orr v1.16b,v0.16b,v0.16b - add w10, w8, #1 - orr v18.16b,v0.16b,v0.16b - add w8, w8, #2 - orr v6.16b,v0.16b,v0.16b - rev w10, w10 - mov v1.s[3],w10 - b.ls .Lctr32_tail - rev w12, w8 - sub x2,x2,#3 // bias - mov v18.s[3],w12 - b .Loop3x_ctr32 - -.align 4 -.Loop3x_ctr32: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - aese v18.16b,v16.16b - aesmc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - aese v18.16b,v17.16b - aesmc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Loop3x_ctr32 - - aese v0.16b,v16.16b - aesmc v4.16b,v0.16b - aese v1.16b,v16.16b - aesmc v5.16b,v1.16b - ld1 {v2.16b},[x0],#16 - orr v0.16b,v6.16b,v6.16b - aese v18.16b,v16.16b - aesmc v18.16b,v18.16b - ld1 {v3.16b},[x0],#16 - orr v1.16b,v6.16b,v6.16b - aese v4.16b,v17.16b - aesmc v4.16b,v4.16b - aese v5.16b,v17.16b - aesmc v5.16b,v5.16b - ld1 {v19.16b},[x0],#16 - mov x7,x3 - aese v18.16b,v17.16b - aesmc v17.16b,v18.16b - orr v18.16b,v6.16b,v6.16b - add w9,w8,#1 - aese v4.16b,v20.16b - aesmc v4.16b,v4.16b - aese v5.16b,v20.16b - aesmc v5.16b,v5.16b - eor v2.16b,v2.16b,v7.16b - add w10,w8,#2 - aese v17.16b,v20.16b - aesmc v17.16b,v17.16b - eor v3.16b,v3.16b,v7.16b - add w8,w8,#3 - aese v4.16b,v21.16b - aesmc v4.16b,v4.16b - aese v5.16b,v21.16b - aesmc v5.16b,v5.16b - eor v19.16b,v19.16b,v7.16b - rev w9,w9 - aese v17.16b,v21.16b - aesmc v17.16b,v17.16b - mov v0.s[3], w9 - rev w10,w10 - aese v4.16b,v22.16b - aesmc v4.16b,v4.16b - aese v5.16b,v22.16b - aesmc v5.16b,v5.16b - mov v1.s[3], w10 - rev w12,w8 - aese v17.16b,v22.16b - aesmc v17.16b,v17.16b - mov v18.s[3], w12 - subs x2,x2,#3 - aese v4.16b,v23.16b - aese v5.16b,v23.16b - aese v17.16b,v23.16b - - eor v2.16b,v2.16b,v4.16b - ld1 {v16.4s},[x7],#16 // re-pre-load rndkey[0] - st1 {v2.16b},[x1],#16 - eor v3.16b,v3.16b,v5.16b - mov w6,w5 - st1 {v3.16b},[x1],#16 - eor v19.16b,v19.16b,v17.16b - ld1 {v17.4s},[x7],#16 // re-pre-load rndkey[1] - st1 {v19.16b},[x1],#16 - b.hs .Loop3x_ctr32 - - adds x2,x2,#3 - b.eq .Lctr32_done - cmp x2,#1 - mov x12,#16 - csel x12,xzr,x12,eq - -.Lctr32_tail: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - ld1 {v17.4s},[x7],#16 - b.gt .Lctr32_tail - - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - ld1 {v2.16b},[x0],x12 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - aese v1.16b,v20.16b - aesmc v1.16b,v1.16b - ld1 {v3.16b},[x0] - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - aese v1.16b,v21.16b - aesmc v1.16b,v1.16b - eor v2.16b,v2.16b,v7.16b - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - aese v1.16b,v22.16b - aesmc v1.16b,v1.16b - eor v3.16b,v3.16b,v7.16b - aese v0.16b,v23.16b - aese v1.16b,v23.16b - - cmp x2,#1 - eor v2.16b,v2.16b,v0.16b - eor v3.16b,v3.16b,v1.16b - st1 {v2.16b},[x1],#16 - b.eq .Lctr32_done - st1 {v3.16b},[x1] - -.Lctr32_done: - ldr x29,[sp],#16 - ret -.size aes_v8_ctr32_encrypt_blocks,.-aes_v8_ctr32_encrypt_blocks -#endif diff --git a/deps/openssl/asm/arm64-linux64-gas/modes/ghashv8-armx.S b/deps/openssl/asm/arm64-linux64-gas/modes/ghashv8-armx.S deleted file mode 100644 index fc3dadd08a17a9..00000000000000 --- a/deps/openssl/asm/arm64-linux64-gas/modes/ghashv8-armx.S +++ /dev/null @@ -1,227 +0,0 @@ -#include "arm_arch.h" - -.text -.arch armv8-a+crypto -.global gcm_init_v8 -.type gcm_init_v8,%function -.align 4 -gcm_init_v8: - ld1 {v17.2d},[x1] //load input H - movi v19.16b,#0xe1 - shl v19.2d,v19.2d,#57 //0xc2.0 - ext v3.16b,v17.16b,v17.16b,#8 - ushr v18.2d,v19.2d,#63 - dup v17.4s,v17.s[1] - ext v16.16b,v18.16b,v19.16b,#8 //t0=0xc2....01 - ushr v18.2d,v3.2d,#63 - sshr v17.4s,v17.4s,#31 //broadcast carry bit - and v18.16b,v18.16b,v16.16b - shl v3.2d,v3.2d,#1 - ext v18.16b,v18.16b,v18.16b,#8 - and v16.16b,v16.16b,v17.16b - orr v3.16b,v3.16b,v18.16b //H<<<=1 - eor v20.16b,v3.16b,v16.16b //twisted H - st1 {v20.2d},[x0],#16 //store Htable[0] - - //calculate H^2 - ext v16.16b,v20.16b,v20.16b,#8 //Karatsuba pre-processing - pmull v0.1q,v20.1d,v20.1d - eor v16.16b,v16.16b,v20.16b - pmull2 v2.1q,v20.2d,v20.2d - pmull v1.1q,v16.1d,v16.1d - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v22.16b,v0.16b,v18.16b - - ext v17.16b,v22.16b,v22.16b,#8 //Karatsuba pre-processing - eor v17.16b,v17.16b,v22.16b - ext v21.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed - st1 {v21.2d-v22.2d},[x0] //store Htable[1..2] - - ret -.size gcm_init_v8,.-gcm_init_v8 -.global gcm_gmult_v8 -.type gcm_gmult_v8,%function -.align 4 -gcm_gmult_v8: - ld1 {v17.2d},[x0] //load Xi - movi v19.16b,#0xe1 - ld1 {v20.2d-v21.2d},[x1] //load twisted H, ... - shl v19.2d,v19.2d,#57 -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ext v3.16b,v17.16b,v17.16b,#8 - - pmull v0.1q,v20.1d,v3.1d //H.lo·Xi.lo - eor v17.16b,v17.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v20.2d,v3.2d //H.hi·Xi.hi - pmull v1.1q,v21.1d,v17.1d //(H.lo+H.hi)·(Xi.lo+Xi.hi) - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v0.16b,v0.16b,v18.16b - -#ifndef __ARMEB__ - rev64 v0.16b,v0.16b -#endif - ext v0.16b,v0.16b,v0.16b,#8 - st1 {v0.2d},[x0] //write out Xi - - ret -.size gcm_gmult_v8,.-gcm_gmult_v8 -.global gcm_ghash_v8 -.type gcm_ghash_v8,%function -.align 4 -gcm_ghash_v8: - ld1 {v0.2d},[x0] //load [rotated] Xi - //"[rotated]" means that - //loaded value would have - //to be rotated in order to - //make it appear as in - //alorithm specification - subs x3,x3,#32 //see if x3 is 32 or larger - mov x12,#16 //x12 is used as post- - //increment for input pointer; - //as loop is modulo-scheduled - //x12 is zeroed just in time - //to preclude oversteping - //inp[len], which means that - //last block[s] are actually - //loaded twice, but last - //copy is not processed - ld1 {v20.2d-v21.2d},[x1],#32 //load twisted H, ..., H^2 - movi v19.16b,#0xe1 - ld1 {v22.2d},[x1] - csel x12,xzr,x12,eq //is it time to zero x12? - ext v0.16b,v0.16b,v0.16b,#8 //rotate Xi - ld1 {v16.2d},[x2],#16 //load [rotated] I[0] - shl v19.2d,v19.2d,#57 //compose 0xc2.0 constant -#ifndef __ARMEB__ - rev64 v16.16b,v16.16b - rev64 v0.16b,v0.16b -#endif - ext v3.16b,v16.16b,v16.16b,#8 //rotate I[0] - b.lo .Lodd_tail_v8 //x3 was less than 32 - ld1 {v17.2d},[x2],x12 //load [rotated] I[1] -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ext v7.16b,v17.16b,v17.16b,#8 - eor v3.16b,v3.16b,v0.16b //I[i]^=Xi - pmull v4.1q,v20.1d,v7.1d //H·Ii+1 - eor v17.16b,v17.16b,v7.16b //Karatsuba pre-processing - pmull2 v6.1q,v20.2d,v7.2d - b .Loop_mod2x_v8 - -.align 4 -.Loop_mod2x_v8: - ext v18.16b,v3.16b,v3.16b,#8 - subs x3,x3,#32 //is there more data? - pmull v0.1q,v22.1d,v3.1d //H^2.lo·Xi.lo - csel x12,xzr,x12,lo //is it time to zero x12? - - pmull v5.1q,v21.1d,v17.1d - eor v18.16b,v18.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v22.2d,v3.2d //H^2.hi·Xi.hi - eor v0.16b,v0.16b,v4.16b //accumulate - pmull2 v1.1q,v21.2d,v18.2d //(H^2.lo+H^2.hi)·(Xi.lo+Xi.hi) - ld1 {v16.2d},[x2],x12 //load [rotated] I[i+2] - - eor v2.16b,v2.16b,v6.16b - csel x12,xzr,x12,eq //is it time to zero x12? - eor v1.16b,v1.16b,v5.16b - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - ld1 {v17.2d},[x2],x12 //load [rotated] I[i+3] -#ifndef __ARMEB__ - rev64 v16.16b,v16.16b -#endif - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - ext v7.16b,v17.16b,v17.16b,#8 - ext v3.16b,v16.16b,v16.16b,#8 - eor v0.16b,v1.16b,v18.16b - pmull v4.1q,v20.1d,v7.1d //H·Ii+1 - eor v3.16b,v3.16b,v2.16b //accumulate v3.16b early - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v3.16b,v3.16b,v18.16b - eor v17.16b,v17.16b,v7.16b //Karatsuba pre-processing - eor v3.16b,v3.16b,v0.16b - pmull2 v6.1q,v20.2d,v7.2d - b.hs .Loop_mod2x_v8 //there was at least 32 more bytes - - eor v2.16b,v2.16b,v18.16b - ext v3.16b,v16.16b,v16.16b,#8 //re-construct v3.16b - adds x3,x3,#32 //re-construct x3 - eor v0.16b,v0.16b,v2.16b //re-construct v0.16b - b.eq .Ldone_v8 //is x3 zero? -.Lodd_tail_v8: - ext v18.16b,v0.16b,v0.16b,#8 - eor v3.16b,v3.16b,v0.16b //inp^=Xi - eor v17.16b,v16.16b,v18.16b //v17.16b is rotated inp^Xi - - pmull v0.1q,v20.1d,v3.1d //H.lo·Xi.lo - eor v17.16b,v17.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v20.2d,v3.2d //H.hi·Xi.hi - pmull v1.1q,v21.1d,v17.1d //(H.lo+H.hi)·(Xi.lo+Xi.hi) - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v0.16b,v0.16b,v18.16b - -.Ldone_v8: -#ifndef __ARMEB__ - rev64 v0.16b,v0.16b -#endif - ext v0.16b,v0.16b,v0.16b,#8 - st1 {v0.2d},[x0] //write out Xi - - ret -.size gcm_ghash_v8,.-gcm_ghash_v8 -.asciz "GHASH for ARMv8, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm/arm64-linux64-gas/sha/sha1-armv8.S b/deps/openssl/asm/arm64-linux64-gas/sha/sha1-armv8.S deleted file mode 100644 index f9d126252ef2cd..00000000000000 --- a/deps/openssl/asm/arm64-linux64-gas/sha/sha1-armv8.S +++ /dev/null @@ -1,1211 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha1_block_data_order -.type sha1_block_data_order,%function -.align 6 -sha1_block_data_order: - ldr x16,.LOPENSSL_armcap_P - adr x17,.LOPENSSL_armcap_P - add x16,x16,x17 - ldr w16,[x16] - tst w16,#ARMV8_SHA1 - b.ne .Lv8_entry - - stp x29,x30,[sp,#-96]! - add x29,sp,#0 - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - - ldp w20,w21,[x0] - ldp w22,w23,[x0,#8] - ldr w24,[x0,#16] - -.Loop: - ldr x3,[x1],#64 - movz w28,#0x7999 - sub x2,x2,#1 - movk w28,#0x5a82,lsl#16 -#ifdef __ARMEB__ - ror x3,x3,#32 -#else - rev32 x3,x3 -#endif - add w24,w24,w28 // warm it up - add w24,w24,w3 - lsr x4,x3,#32 - ldr x5,[x1,#-56] - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w4 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x5,x5,#32 -#else - rev32 x5,x5 -#endif - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w5 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - lsr x6,x5,#32 - ldr x7,[x1,#-48] - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w6 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x7,x7,#32 -#else - rev32 x7,x7 -#endif - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w7 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - lsr x8,x7,#32 - ldr x9,[x1,#-40] - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - add w24,w24,w8 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x9,x9,#32 -#else - rev32 x9,x9 -#endif - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w9 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - lsr x10,x9,#32 - ldr x11,[x1,#-32] - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w10 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x11,x11,#32 -#else - rev32 x11,x11 -#endif - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w11 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - lsr x12,x11,#32 - ldr x13,[x1,#-24] - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w12 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x13,x13,#32 -#else - rev32 x13,x13 -#endif - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - add w24,w24,w13 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - lsr x14,x13,#32 - ldr x15,[x1,#-16] - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w14 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x15,x15,#32 -#else - rev32 x15,x15 -#endif - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w15 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - lsr x16,x15,#32 - ldr x17,[x1,#-8] - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w16 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x17,x17,#32 -#else - rev32 x17,x17 -#endif - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w17 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - lsr x19,x17,#32 - eor w3,w3,w5 - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - eor w3,w3,w11 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - eor w3,w3,w16 - ror w22,w22,#2 - add w24,w24,w19 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - eor w4,w4,w12 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - eor w4,w4,w17 - ror w21,w21,#2 - add w23,w23,w3 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - eor w5,w5,w13 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - eor w5,w5,w19 - ror w20,w20,#2 - add w22,w22,w4 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - eor w6,w6,w14 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - eor w6,w6,w3 - ror w24,w24,#2 - add w21,w21,w5 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - eor w7,w7,w15 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - eor w7,w7,w4 - ror w23,w23,#2 - add w20,w20,w6 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w7,w7,#31 - movz w28,#0xeba1 - movk w28,#0x6ed9,lsl#16 - eor w8,w8,w10 - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - eor w8,w8,w16 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - eor w8,w8,w5 - ror w22,w22,#2 - add w24,w24,w7 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w9,w9,w6 - add w23,w23,w8 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w10,w10,w7 - add w22,w22,w9 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w11,w11,w8 - add w21,w21,w10 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w11,w11,#31 - eor w12,w12,w14 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w12,w12,w9 - add w20,w20,w11 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w12,w12,#31 - eor w13,w13,w15 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w13,w13,w5 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w13,w13,w10 - add w24,w24,w12 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w13,w13,#31 - eor w14,w14,w16 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w14,w14,w6 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w14,w14,w11 - add w23,w23,w13 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w14,w14,#31 - eor w15,w15,w17 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w15,w15,w7 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w15,w15,w12 - add w22,w22,w14 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w15,w15,#31 - eor w16,w16,w19 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w16,w16,w8 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w16,w16,w13 - add w21,w21,w15 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w17,w17,w14 - add w20,w20,w16 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w19,w19,w15 - add w24,w24,w17 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w19,w19,#31 - eor w3,w3,w5 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w3,w3,w11 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w3,w3,w16 - add w23,w23,w19 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w4,w4,w12 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w4,w4,w17 - add w22,w22,w3 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w5,w5,w13 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w5,w5,w19 - add w21,w21,w4 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w6,w6,w14 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w6,w6,w3 - add w20,w20,w5 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w7,w7,w15 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w7,w7,w4 - add w24,w24,w6 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w7,w7,#31 - eor w8,w8,w10 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w8,w8,w16 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w8,w8,w5 - add w23,w23,w7 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w9,w9,w6 - add w22,w22,w8 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w10,w10,w7 - add w21,w21,w9 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w11,w11,w8 - add w20,w20,w10 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w11,w11,#31 - movz w28,#0xbcdc - movk w28,#0x8f1b,lsl#16 - eor w12,w12,w14 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w12,w12,w9 - add w24,w24,w11 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w12,w12,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w13,w13,w15 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w13,w13,w5 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w13,w13,w10 - add w23,w23,w12 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w13,w13,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w14,w14,w16 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w14,w14,w6 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w14,w14,w11 - add w22,w22,w13 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w14,w14,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w15,w15,w17 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w15,w15,w7 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w15,w15,w12 - add w21,w21,w14 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w15,w15,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w16,w16,w19 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w16,w16,w8 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w16,w16,w13 - add w20,w20,w15 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w16,w16,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w17,w17,w3 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w17,w17,w9 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w17,w17,w14 - add w24,w24,w16 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w17,w17,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w19,w19,w4 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w19,w19,w10 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w19,w19,w15 - add w23,w23,w17 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w19,w19,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w3,w3,w5 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w3,w3,w11 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w3,w3,w16 - add w22,w22,w19 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w3,w3,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w4,w4,w6 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w4,w4,w12 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w4,w4,w17 - add w21,w21,w3 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w4,w4,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w5,w5,w7 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w5,w5,w13 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w5,w5,w19 - add w20,w20,w4 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w5,w5,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w6,w6,w8 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w6,w6,w14 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w6,w6,w3 - add w24,w24,w5 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w6,w6,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w7,w7,w9 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w7,w7,w15 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w7,w7,w4 - add w23,w23,w6 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w7,w7,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w8,w8,w10 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w8,w8,w16 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w8,w8,w5 - add w22,w22,w7 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w8,w8,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w9,w9,w11 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w9,w9,w17 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w9,w9,w6 - add w21,w21,w8 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w9,w9,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w10,w10,w12 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w10,w10,w19 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w10,w10,w7 - add w20,w20,w9 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w10,w10,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w11,w11,w13 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w11,w11,w3 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w11,w11,w8 - add w24,w24,w10 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w11,w11,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w12,w12,w14 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w12,w12,w4 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w12,w12,w9 - add w23,w23,w11 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w12,w12,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w13,w13,w15 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w13,w13,w5 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w13,w13,w10 - add w22,w22,w12 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w13,w13,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w14,w14,w16 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w14,w14,w6 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w14,w14,w11 - add w21,w21,w13 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w14,w14,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w15,w15,w17 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w15,w15,w7 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w15,w15,w12 - add w20,w20,w14 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w15,w15,#31 - movz w28,#0xc1d6 - movk w28,#0xca62,lsl#16 - orr w25,w22,w23 - and w26,w22,w23 - eor w16,w16,w19 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w16,w16,w8 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w16,w16,w13 - add w24,w24,w15 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w17,w17,w14 - add w23,w23,w16 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w19,w19,w15 - add w22,w22,w17 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w19,w19,#31 - eor w3,w3,w5 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w3,w3,w11 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w3,w3,w16 - add w21,w21,w19 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w4,w4,w12 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w4,w4,w17 - add w20,w20,w3 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w5,w5,w13 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w5,w5,w19 - add w24,w24,w4 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w6,w6,w14 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w6,w6,w3 - add w23,w23,w5 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w7,w7,w15 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w7,w7,w4 - add w22,w22,w6 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w7,w7,#31 - eor w8,w8,w10 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w8,w8,w16 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w8,w8,w5 - add w21,w21,w7 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w9,w9,w6 - add w20,w20,w8 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w10,w10,w7 - add w24,w24,w9 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w11,w11,w8 - add w23,w23,w10 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w11,w11,#31 - eor w12,w12,w14 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w12,w12,w9 - add w22,w22,w11 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w12,w12,#31 - eor w13,w13,w15 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w13,w13,w5 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w13,w13,w10 - add w21,w21,w12 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w13,w13,#31 - eor w14,w14,w16 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w14,w14,w6 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w14,w14,w11 - add w20,w20,w13 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w14,w14,#31 - eor w15,w15,w17 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w15,w15,w7 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w15,w15,w12 - add w24,w24,w14 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w15,w15,#31 - eor w16,w16,w19 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w16,w16,w8 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w16,w16,w13 - add w23,w23,w15 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w17,w17,w14 - add w22,w22,w16 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w19,w19,w15 - add w21,w21,w17 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w19,w19,#31 - ldp w4,w5,[x0] - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w19 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ldp w6,w7,[x0,#8] - eor w25,w24,w22 - ror w27,w21,#27 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - ldr w8,[x0,#16] - add w20,w20,w25 // e+=F(b,c,d) - add w21,w21,w5 - add w22,w22,w6 - add w20,w20,w4 - add w23,w23,w7 - add w24,w24,w8 - stp w20,w21,[x0] - stp w22,w23,[x0,#8] - str w24,[x0,#16] - cbnz x2,.Loop - - ldp x19,x20,[sp,#16] - ldp x21,x22,[sp,#32] - ldp x23,x24,[sp,#48] - ldp x25,x26,[sp,#64] - ldp x27,x28,[sp,#80] - ldr x29,[sp],#96 - ret -.size sha1_block_data_order,.-sha1_block_data_order -.type sha1_block_armv8,%function -.align 6 -sha1_block_armv8: -.Lv8_entry: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - - adr x4,.Lconst - eor v1.16b,v1.16b,v1.16b - ld1 {v0.4s},[x0],#16 - ld1 {v1.s}[0],[x0] - sub x0,x0,#16 - ld1 {v16.4s-v19.4s},[x4] - -.Loop_hw: - ld1 {v4.16b-v7.16b},[x1],#64 - sub x2,x2,#1 - rev32 v4.16b,v4.16b - rev32 v5.16b,v5.16b - - add v20.4s,v16.4s,v4.4s - rev32 v6.16b,v6.16b - orr v22.16b,v0.16b,v0.16b // offload - - add v21.4s,v16.4s,v5.4s - rev32 v7.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b - .inst 0x5e140020 //sha1c v0.16b,v1.16b,v20.4s // 0 - add v20.4s,v16.4s,v6.4s - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 1 - .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s - add v21.4s,v16.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 2 - .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s - add v20.4s,v16.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 3 - .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 4 - .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s - add v20.4s,v17.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 5 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 6 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v17.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 7 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 8 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 9 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v18.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 10 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 11 - .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s - add v21.4s,v18.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 12 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 13 - .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 14 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v19.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 15 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 16 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v19.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 17 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v7.4s - - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 18 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 19 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - - add v1.4s,v1.4s,v2.4s - add v0.4s,v0.4s,v22.4s - - cbnz x2,.Loop_hw - - st1 {v0.4s},[x0],#16 - st1 {v1.s}[0],[x0] - - ldr x29,[sp],#16 - ret -.size sha1_block_armv8,.-sha1_block_armv8 -.align 6 -.Lconst: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 //K_00_19 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 //K_20_39 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc //K_40_59 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 //K_60_79 -.LOPENSSL_armcap_P: -.quad OPENSSL_armcap_P-. -.asciz "SHA1 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm/arm64-linux64-gas/sha/sha256-armv8.S b/deps/openssl/asm/arm64-linux64-gas/sha/sha256-armv8.S deleted file mode 100644 index bd43b1fe76dd34..00000000000000 --- a/deps/openssl/asm/arm64-linux64-gas/sha/sha256-armv8.S +++ /dev/null @@ -1,1141 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha256_block_data_order -.type sha256_block_data_order,%function -.align 6 -sha256_block_data_order: - ldr x16,.LOPENSSL_armcap_P - adr x17,.LOPENSSL_armcap_P - add x16,x16,x17 - ldr w16,[x16] - tst w16,#ARMV8_SHA256 - b.ne .Lv8_entry - stp x29,x30,[sp,#-128]! - add x29,sp,#0 - - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - sub sp,sp,#4*4 - - ldp w20,w21,[x0] // load context - ldp w22,w23,[x0,#2*4] - ldp w24,w25,[x0,#4*4] - add x2,x1,x2,lsl#6 // end of input - ldp w26,w27,[x0,#6*4] - adr x30,K256 - stp x0,x2,[x29,#96] - -.Loop: - ldp w3,w4,[x1],#2*4 - ldr w19,[x30],#4 // *K++ - eor w28,w21,w22 // magic seed - str x1,[x29,#112] -#ifndef __ARMEB__ - rev w3,w3 // 0 -#endif - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - eor w6,w24,w24,ror#14 - and w17,w25,w24 - bic w19,w26,w24 - add w27,w27,w3 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w6,ror#11 // Sigma1(e) - ror w6,w20,#2 - add w27,w27,w17 // h+=Ch(e,f,g) - eor w17,w20,w20,ror#9 - add w27,w27,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w23,w23,w27 // d+=h - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w6,w17,ror#13 // Sigma0(a) - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w27,w27,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w4,w4 // 1 -#endif - ldp w5,w6,[x1],#2*4 - add w27,w27,w17 // h+=Sigma0(a) - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - eor w7,w23,w23,ror#14 - and w17,w24,w23 - bic w28,w25,w23 - add w26,w26,w4 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w7,ror#11 // Sigma1(e) - ror w7,w27,#2 - add w26,w26,w17 // h+=Ch(e,f,g) - eor w17,w27,w27,ror#9 - add w26,w26,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w22,w22,w26 // d+=h - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w7,w17,ror#13 // Sigma0(a) - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w26,w26,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w5,w5 // 2 -#endif - add w26,w26,w17 // h+=Sigma0(a) - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - eor w8,w22,w22,ror#14 - and w17,w23,w22 - bic w19,w24,w22 - add w25,w25,w5 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w8,ror#11 // Sigma1(e) - ror w8,w26,#2 - add w25,w25,w17 // h+=Ch(e,f,g) - eor w17,w26,w26,ror#9 - add w25,w25,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w21,w21,w25 // d+=h - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w8,w17,ror#13 // Sigma0(a) - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w25,w25,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w6,w6 // 3 -#endif - ldp w7,w8,[x1],#2*4 - add w25,w25,w17 // h+=Sigma0(a) - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - eor w9,w21,w21,ror#14 - and w17,w22,w21 - bic w28,w23,w21 - add w24,w24,w6 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w9,ror#11 // Sigma1(e) - ror w9,w25,#2 - add w24,w24,w17 // h+=Ch(e,f,g) - eor w17,w25,w25,ror#9 - add w24,w24,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w20,w20,w24 // d+=h - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w9,w17,ror#13 // Sigma0(a) - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w24,w24,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w7,w7 // 4 -#endif - add w24,w24,w17 // h+=Sigma0(a) - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - eor w10,w20,w20,ror#14 - and w17,w21,w20 - bic w19,w22,w20 - add w23,w23,w7 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w10,ror#11 // Sigma1(e) - ror w10,w24,#2 - add w23,w23,w17 // h+=Ch(e,f,g) - eor w17,w24,w24,ror#9 - add w23,w23,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w27,w27,w23 // d+=h - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w10,w17,ror#13 // Sigma0(a) - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w23,w23,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w8,w8 // 5 -#endif - ldp w9,w10,[x1],#2*4 - add w23,w23,w17 // h+=Sigma0(a) - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - eor w11,w27,w27,ror#14 - and w17,w20,w27 - bic w28,w21,w27 - add w22,w22,w8 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w11,ror#11 // Sigma1(e) - ror w11,w23,#2 - add w22,w22,w17 // h+=Ch(e,f,g) - eor w17,w23,w23,ror#9 - add w22,w22,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w26,w26,w22 // d+=h - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w11,w17,ror#13 // Sigma0(a) - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w22,w22,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w9,w9 // 6 -#endif - add w22,w22,w17 // h+=Sigma0(a) - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - eor w12,w26,w26,ror#14 - and w17,w27,w26 - bic w19,w20,w26 - add w21,w21,w9 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w12,ror#11 // Sigma1(e) - ror w12,w22,#2 - add w21,w21,w17 // h+=Ch(e,f,g) - eor w17,w22,w22,ror#9 - add w21,w21,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w25,w25,w21 // d+=h - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w12,w17,ror#13 // Sigma0(a) - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w21,w21,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w10,w10 // 7 -#endif - ldp w11,w12,[x1],#2*4 - add w21,w21,w17 // h+=Sigma0(a) - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - eor w13,w25,w25,ror#14 - and w17,w26,w25 - bic w28,w27,w25 - add w20,w20,w10 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w13,ror#11 // Sigma1(e) - ror w13,w21,#2 - add w20,w20,w17 // h+=Ch(e,f,g) - eor w17,w21,w21,ror#9 - add w20,w20,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w24,w24,w20 // d+=h - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w13,w17,ror#13 // Sigma0(a) - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w20,w20,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w11,w11 // 8 -#endif - add w20,w20,w17 // h+=Sigma0(a) - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - eor w14,w24,w24,ror#14 - and w17,w25,w24 - bic w19,w26,w24 - add w27,w27,w11 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w14,ror#11 // Sigma1(e) - ror w14,w20,#2 - add w27,w27,w17 // h+=Ch(e,f,g) - eor w17,w20,w20,ror#9 - add w27,w27,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w23,w23,w27 // d+=h - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w14,w17,ror#13 // Sigma0(a) - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w27,w27,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w12,w12 // 9 -#endif - ldp w13,w14,[x1],#2*4 - add w27,w27,w17 // h+=Sigma0(a) - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - eor w15,w23,w23,ror#14 - and w17,w24,w23 - bic w28,w25,w23 - add w26,w26,w12 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w15,ror#11 // Sigma1(e) - ror w15,w27,#2 - add w26,w26,w17 // h+=Ch(e,f,g) - eor w17,w27,w27,ror#9 - add w26,w26,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w22,w22,w26 // d+=h - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w15,w17,ror#13 // Sigma0(a) - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w26,w26,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w13,w13 // 10 -#endif - add w26,w26,w17 // h+=Sigma0(a) - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - eor w0,w22,w22,ror#14 - and w17,w23,w22 - bic w19,w24,w22 - add w25,w25,w13 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w0,ror#11 // Sigma1(e) - ror w0,w26,#2 - add w25,w25,w17 // h+=Ch(e,f,g) - eor w17,w26,w26,ror#9 - add w25,w25,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w21,w21,w25 // d+=h - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w0,w17,ror#13 // Sigma0(a) - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w25,w25,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w14,w14 // 11 -#endif - ldp w15,w0,[x1],#2*4 - add w25,w25,w17 // h+=Sigma0(a) - str w6,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - eor w6,w21,w21,ror#14 - and w17,w22,w21 - bic w28,w23,w21 - add w24,w24,w14 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w6,ror#11 // Sigma1(e) - ror w6,w25,#2 - add w24,w24,w17 // h+=Ch(e,f,g) - eor w17,w25,w25,ror#9 - add w24,w24,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w20,w20,w24 // d+=h - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w6,w17,ror#13 // Sigma0(a) - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w24,w24,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w15,w15 // 12 -#endif - add w24,w24,w17 // h+=Sigma0(a) - str w7,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - eor w7,w20,w20,ror#14 - and w17,w21,w20 - bic w19,w22,w20 - add w23,w23,w15 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w7,ror#11 // Sigma1(e) - ror w7,w24,#2 - add w23,w23,w17 // h+=Ch(e,f,g) - eor w17,w24,w24,ror#9 - add w23,w23,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w27,w27,w23 // d+=h - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w7,w17,ror#13 // Sigma0(a) - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w23,w23,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w0,w0 // 13 -#endif - ldp w1,w2,[x1] - add w23,w23,w17 // h+=Sigma0(a) - str w8,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - eor w8,w27,w27,ror#14 - and w17,w20,w27 - bic w28,w21,w27 - add w22,w22,w0 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w8,ror#11 // Sigma1(e) - ror w8,w23,#2 - add w22,w22,w17 // h+=Ch(e,f,g) - eor w17,w23,w23,ror#9 - add w22,w22,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w26,w26,w22 // d+=h - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w8,w17,ror#13 // Sigma0(a) - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w22,w22,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w1,w1 // 14 -#endif - ldr w6,[sp,#12] - add w22,w22,w17 // h+=Sigma0(a) - str w9,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - eor w9,w26,w26,ror#14 - and w17,w27,w26 - bic w19,w20,w26 - add w21,w21,w1 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w9,ror#11 // Sigma1(e) - ror w9,w22,#2 - add w21,w21,w17 // h+=Ch(e,f,g) - eor w17,w22,w22,ror#9 - add w21,w21,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w25,w25,w21 // d+=h - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w9,w17,ror#13 // Sigma0(a) - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w21,w21,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w2,w2 // 15 -#endif - ldr w7,[sp,#0] - add w21,w21,w17 // h+=Sigma0(a) - str w10,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w9,w4,#7 - and w17,w26,w25 - ror w8,w1,#17 - bic w28,w27,w25 - ror w10,w21,#2 - add w20,w20,w2 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w9,w9,w4,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w10,w10,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w8,w8,w1,ror#19 - eor w9,w9,w4,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w10,w21,ror#22 // Sigma0(a) - eor w8,w8,w1,lsr#10 // sigma1(X[i+14]) - add w3,w3,w12 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w3,w3,w9 - add w20,w20,w17 // h+=Sigma0(a) - add w3,w3,w8 -.Loop_16_xx: - ldr w8,[sp,#4] - str w11,[sp,#0] - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - ror w10,w5,#7 - and w17,w25,w24 - ror w9,w2,#17 - bic w19,w26,w24 - ror w11,w20,#2 - add w27,w27,w3 // h+=X[i] - eor w16,w16,w24,ror#11 - eor w10,w10,w5,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w24,ror#25 // Sigma1(e) - eor w11,w11,w20,ror#13 - add w27,w27,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w9,w9,w2,ror#19 - eor w10,w10,w5,lsr#3 // sigma0(X[i+1]) - add w27,w27,w16 // h+=Sigma1(e) - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w11,w20,ror#22 // Sigma0(a) - eor w9,w9,w2,lsr#10 // sigma1(X[i+14]) - add w4,w4,w13 - add w23,w23,w27 // d+=h - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w4,w4,w10 - add w27,w27,w17 // h+=Sigma0(a) - add w4,w4,w9 - ldr w9,[sp,#8] - str w12,[sp,#4] - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - ror w11,w6,#7 - and w17,w24,w23 - ror w10,w3,#17 - bic w28,w25,w23 - ror w12,w27,#2 - add w26,w26,w4 // h+=X[i] - eor w16,w16,w23,ror#11 - eor w11,w11,w6,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w23,ror#25 // Sigma1(e) - eor w12,w12,w27,ror#13 - add w26,w26,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w10,w10,w3,ror#19 - eor w11,w11,w6,lsr#3 // sigma0(X[i+1]) - add w26,w26,w16 // h+=Sigma1(e) - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w12,w27,ror#22 // Sigma0(a) - eor w10,w10,w3,lsr#10 // sigma1(X[i+14]) - add w5,w5,w14 - add w22,w22,w26 // d+=h - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w5,w5,w11 - add w26,w26,w17 // h+=Sigma0(a) - add w5,w5,w10 - ldr w10,[sp,#12] - str w13,[sp,#8] - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - ror w12,w7,#7 - and w17,w23,w22 - ror w11,w4,#17 - bic w19,w24,w22 - ror w13,w26,#2 - add w25,w25,w5 // h+=X[i] - eor w16,w16,w22,ror#11 - eor w12,w12,w7,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w22,ror#25 // Sigma1(e) - eor w13,w13,w26,ror#13 - add w25,w25,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w11,w11,w4,ror#19 - eor w12,w12,w7,lsr#3 // sigma0(X[i+1]) - add w25,w25,w16 // h+=Sigma1(e) - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w13,w26,ror#22 // Sigma0(a) - eor w11,w11,w4,lsr#10 // sigma1(X[i+14]) - add w6,w6,w15 - add w21,w21,w25 // d+=h - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w6,w6,w12 - add w25,w25,w17 // h+=Sigma0(a) - add w6,w6,w11 - ldr w11,[sp,#0] - str w14,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - ror w13,w8,#7 - and w17,w22,w21 - ror w12,w5,#17 - bic w28,w23,w21 - ror w14,w25,#2 - add w24,w24,w6 // h+=X[i] - eor w16,w16,w21,ror#11 - eor w13,w13,w8,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w21,ror#25 // Sigma1(e) - eor w14,w14,w25,ror#13 - add w24,w24,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w12,w12,w5,ror#19 - eor w13,w13,w8,lsr#3 // sigma0(X[i+1]) - add w24,w24,w16 // h+=Sigma1(e) - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w14,w25,ror#22 // Sigma0(a) - eor w12,w12,w5,lsr#10 // sigma1(X[i+14]) - add w7,w7,w0 - add w20,w20,w24 // d+=h - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w7,w7,w13 - add w24,w24,w17 // h+=Sigma0(a) - add w7,w7,w12 - ldr w12,[sp,#4] - str w15,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - ror w14,w9,#7 - and w17,w21,w20 - ror w13,w6,#17 - bic w19,w22,w20 - ror w15,w24,#2 - add w23,w23,w7 // h+=X[i] - eor w16,w16,w20,ror#11 - eor w14,w14,w9,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w20,ror#25 // Sigma1(e) - eor w15,w15,w24,ror#13 - add w23,w23,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w13,w13,w6,ror#19 - eor w14,w14,w9,lsr#3 // sigma0(X[i+1]) - add w23,w23,w16 // h+=Sigma1(e) - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w15,w24,ror#22 // Sigma0(a) - eor w13,w13,w6,lsr#10 // sigma1(X[i+14]) - add w8,w8,w1 - add w27,w27,w23 // d+=h - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w8,w8,w14 - add w23,w23,w17 // h+=Sigma0(a) - add w8,w8,w13 - ldr w13,[sp,#8] - str w0,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - ror w15,w10,#7 - and w17,w20,w27 - ror w14,w7,#17 - bic w28,w21,w27 - ror w0,w23,#2 - add w22,w22,w8 // h+=X[i] - eor w16,w16,w27,ror#11 - eor w15,w15,w10,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w27,ror#25 // Sigma1(e) - eor w0,w0,w23,ror#13 - add w22,w22,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w14,w14,w7,ror#19 - eor w15,w15,w10,lsr#3 // sigma0(X[i+1]) - add w22,w22,w16 // h+=Sigma1(e) - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w0,w23,ror#22 // Sigma0(a) - eor w14,w14,w7,lsr#10 // sigma1(X[i+14]) - add w9,w9,w2 - add w26,w26,w22 // d+=h - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w9,w9,w15 - add w22,w22,w17 // h+=Sigma0(a) - add w9,w9,w14 - ldr w14,[sp,#12] - str w1,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - ror w0,w11,#7 - and w17,w27,w26 - ror w15,w8,#17 - bic w19,w20,w26 - ror w1,w22,#2 - add w21,w21,w9 // h+=X[i] - eor w16,w16,w26,ror#11 - eor w0,w0,w11,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w26,ror#25 // Sigma1(e) - eor w1,w1,w22,ror#13 - add w21,w21,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w15,w15,w8,ror#19 - eor w0,w0,w11,lsr#3 // sigma0(X[i+1]) - add w21,w21,w16 // h+=Sigma1(e) - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w1,w22,ror#22 // Sigma0(a) - eor w15,w15,w8,lsr#10 // sigma1(X[i+14]) - add w10,w10,w3 - add w25,w25,w21 // d+=h - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w10,w10,w0 - add w21,w21,w17 // h+=Sigma0(a) - add w10,w10,w15 - ldr w15,[sp,#0] - str w2,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w1,w12,#7 - and w17,w26,w25 - ror w0,w9,#17 - bic w28,w27,w25 - ror w2,w21,#2 - add w20,w20,w10 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w1,w1,w12,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w2,w2,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w0,w0,w9,ror#19 - eor w1,w1,w12,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w2,w21,ror#22 // Sigma0(a) - eor w0,w0,w9,lsr#10 // sigma1(X[i+14]) - add w11,w11,w4 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w11,w11,w1 - add w20,w20,w17 // h+=Sigma0(a) - add w11,w11,w0 - ldr w0,[sp,#4] - str w3,[sp,#0] - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - ror w2,w13,#7 - and w17,w25,w24 - ror w1,w10,#17 - bic w19,w26,w24 - ror w3,w20,#2 - add w27,w27,w11 // h+=X[i] - eor w16,w16,w24,ror#11 - eor w2,w2,w13,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w24,ror#25 // Sigma1(e) - eor w3,w3,w20,ror#13 - add w27,w27,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w1,w1,w10,ror#19 - eor w2,w2,w13,lsr#3 // sigma0(X[i+1]) - add w27,w27,w16 // h+=Sigma1(e) - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w3,w20,ror#22 // Sigma0(a) - eor w1,w1,w10,lsr#10 // sigma1(X[i+14]) - add w12,w12,w5 - add w23,w23,w27 // d+=h - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w12,w12,w2 - add w27,w27,w17 // h+=Sigma0(a) - add w12,w12,w1 - ldr w1,[sp,#8] - str w4,[sp,#4] - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - ror w3,w14,#7 - and w17,w24,w23 - ror w2,w11,#17 - bic w28,w25,w23 - ror w4,w27,#2 - add w26,w26,w12 // h+=X[i] - eor w16,w16,w23,ror#11 - eor w3,w3,w14,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w23,ror#25 // Sigma1(e) - eor w4,w4,w27,ror#13 - add w26,w26,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w2,w2,w11,ror#19 - eor w3,w3,w14,lsr#3 // sigma0(X[i+1]) - add w26,w26,w16 // h+=Sigma1(e) - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w4,w27,ror#22 // Sigma0(a) - eor w2,w2,w11,lsr#10 // sigma1(X[i+14]) - add w13,w13,w6 - add w22,w22,w26 // d+=h - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w13,w13,w3 - add w26,w26,w17 // h+=Sigma0(a) - add w13,w13,w2 - ldr w2,[sp,#12] - str w5,[sp,#8] - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - ror w4,w15,#7 - and w17,w23,w22 - ror w3,w12,#17 - bic w19,w24,w22 - ror w5,w26,#2 - add w25,w25,w13 // h+=X[i] - eor w16,w16,w22,ror#11 - eor w4,w4,w15,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w22,ror#25 // Sigma1(e) - eor w5,w5,w26,ror#13 - add w25,w25,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w3,w3,w12,ror#19 - eor w4,w4,w15,lsr#3 // sigma0(X[i+1]) - add w25,w25,w16 // h+=Sigma1(e) - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w5,w26,ror#22 // Sigma0(a) - eor w3,w3,w12,lsr#10 // sigma1(X[i+14]) - add w14,w14,w7 - add w21,w21,w25 // d+=h - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w14,w14,w4 - add w25,w25,w17 // h+=Sigma0(a) - add w14,w14,w3 - ldr w3,[sp,#0] - str w6,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - ror w5,w0,#7 - and w17,w22,w21 - ror w4,w13,#17 - bic w28,w23,w21 - ror w6,w25,#2 - add w24,w24,w14 // h+=X[i] - eor w16,w16,w21,ror#11 - eor w5,w5,w0,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w21,ror#25 // Sigma1(e) - eor w6,w6,w25,ror#13 - add w24,w24,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w4,w4,w13,ror#19 - eor w5,w5,w0,lsr#3 // sigma0(X[i+1]) - add w24,w24,w16 // h+=Sigma1(e) - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w6,w25,ror#22 // Sigma0(a) - eor w4,w4,w13,lsr#10 // sigma1(X[i+14]) - add w15,w15,w8 - add w20,w20,w24 // d+=h - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w15,w15,w5 - add w24,w24,w17 // h+=Sigma0(a) - add w15,w15,w4 - ldr w4,[sp,#4] - str w7,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - ror w6,w1,#7 - and w17,w21,w20 - ror w5,w14,#17 - bic w19,w22,w20 - ror w7,w24,#2 - add w23,w23,w15 // h+=X[i] - eor w16,w16,w20,ror#11 - eor w6,w6,w1,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w20,ror#25 // Sigma1(e) - eor w7,w7,w24,ror#13 - add w23,w23,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w5,w5,w14,ror#19 - eor w6,w6,w1,lsr#3 // sigma0(X[i+1]) - add w23,w23,w16 // h+=Sigma1(e) - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w7,w24,ror#22 // Sigma0(a) - eor w5,w5,w14,lsr#10 // sigma1(X[i+14]) - add w0,w0,w9 - add w27,w27,w23 // d+=h - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w0,w0,w6 - add w23,w23,w17 // h+=Sigma0(a) - add w0,w0,w5 - ldr w5,[sp,#8] - str w8,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - ror w7,w2,#7 - and w17,w20,w27 - ror w6,w15,#17 - bic w28,w21,w27 - ror w8,w23,#2 - add w22,w22,w0 // h+=X[i] - eor w16,w16,w27,ror#11 - eor w7,w7,w2,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w27,ror#25 // Sigma1(e) - eor w8,w8,w23,ror#13 - add w22,w22,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w6,w6,w15,ror#19 - eor w7,w7,w2,lsr#3 // sigma0(X[i+1]) - add w22,w22,w16 // h+=Sigma1(e) - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w8,w23,ror#22 // Sigma0(a) - eor w6,w6,w15,lsr#10 // sigma1(X[i+14]) - add w1,w1,w10 - add w26,w26,w22 // d+=h - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w1,w1,w7 - add w22,w22,w17 // h+=Sigma0(a) - add w1,w1,w6 - ldr w6,[sp,#12] - str w9,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - ror w8,w3,#7 - and w17,w27,w26 - ror w7,w0,#17 - bic w19,w20,w26 - ror w9,w22,#2 - add w21,w21,w1 // h+=X[i] - eor w16,w16,w26,ror#11 - eor w8,w8,w3,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w26,ror#25 // Sigma1(e) - eor w9,w9,w22,ror#13 - add w21,w21,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w7,w7,w0,ror#19 - eor w8,w8,w3,lsr#3 // sigma0(X[i+1]) - add w21,w21,w16 // h+=Sigma1(e) - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w9,w22,ror#22 // Sigma0(a) - eor w7,w7,w0,lsr#10 // sigma1(X[i+14]) - add w2,w2,w11 - add w25,w25,w21 // d+=h - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w2,w2,w8 - add w21,w21,w17 // h+=Sigma0(a) - add w2,w2,w7 - ldr w7,[sp,#0] - str w10,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w9,w4,#7 - and w17,w26,w25 - ror w8,w1,#17 - bic w28,w27,w25 - ror w10,w21,#2 - add w20,w20,w2 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w9,w9,w4,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w10,w10,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w8,w8,w1,ror#19 - eor w9,w9,w4,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w10,w21,ror#22 // Sigma0(a) - eor w8,w8,w1,lsr#10 // sigma1(X[i+14]) - add w3,w3,w12 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w3,w3,w9 - add w20,w20,w17 // h+=Sigma0(a) - add w3,w3,w8 - cbnz w19,.Loop_16_xx - - ldp x0,x2,[x29,#96] - ldr x1,[x29,#112] - sub x30,x30,#260 // rewind - - ldp w3,w4,[x0] - ldp w5,w6,[x0,#2*4] - add x1,x1,#14*4 // advance input pointer - ldp w7,w8,[x0,#4*4] - add w20,w20,w3 - ldp w9,w10,[x0,#6*4] - add w21,w21,w4 - add w22,w22,w5 - add w23,w23,w6 - stp w20,w21,[x0] - add w24,w24,w7 - add w25,w25,w8 - stp w22,w23,[x0,#2*4] - add w26,w26,w9 - add w27,w27,w10 - cmp x1,x2 - stp w24,w25,[x0,#4*4] - stp w26,w27,[x0,#6*4] - b.ne .Loop - - ldp x19,x20,[x29,#16] - add sp,sp,#4*4 - ldp x21,x22,[x29,#32] - ldp x23,x24,[x29,#48] - ldp x25,x26,[x29,#64] - ldp x27,x28,[x29,#80] - ldp x29,x30,[sp],#128 - ret -.size sha256_block_data_order,.-sha256_block_data_order - -.align 6 -.type K256,%object -K256: - .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 - .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 - .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 - .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 - .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc - .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da - .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 - .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 - .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 - .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 - .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 - .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 - .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 - .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 - .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 - .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - .long 0 //terminator -.size K256,.-K256 -.align 3 -.LOPENSSL_armcap_P: - .quad OPENSSL_armcap_P-. -.asciz "SHA256 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.type sha256_block_armv8,%function -.align 6 -sha256_block_armv8: -.Lv8_entry: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - - ld1 {v0.4s,v1.4s},[x0] - adr x3,K256 - -.Loop_hw: - ld1 {v4.16b-v7.16b},[x1],#64 - sub x2,x2,#1 - ld1 {v16.4s},[x3],#16 - rev32 v4.16b,v4.16b - rev32 v5.16b,v5.16b - rev32 v6.16b,v6.16b - rev32 v7.16b,v7.16b - orr v18.16b,v0.16b,v0.16b // offload - orr v19.16b,v1.16b,v1.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - - ld1 {v17.4s},[x3] - add v16.4s,v16.4s,v6.4s - sub x3,x3,#64*4-16 // rewind - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - - add v17.4s,v17.4s,v7.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - - add v0.4s,v0.4s,v18.4s - add v1.4s,v1.4s,v19.4s - - cbnz x2,.Loop_hw - - st1 {v0.4s,v1.4s},[x0] - - ldr x29,[sp],#16 - ret -.size sha256_block_armv8,.-sha256_block_armv8 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm/arm64-linux64-gas/sha/sha512-armv8.S b/deps/openssl/asm/arm64-linux64-gas/sha/sha512-armv8.S deleted file mode 100644 index 6b0d1940c6bef1..00000000000000 --- a/deps/openssl/asm/arm64-linux64-gas/sha/sha512-armv8.S +++ /dev/null @@ -1,1021 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha512_block_data_order -.type sha512_block_data_order,%function -.align 6 -sha512_block_data_order: - stp x29,x30,[sp,#-128]! - add x29,sp,#0 - - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - sub sp,sp,#4*8 - - ldp x20,x21,[x0] // load context - ldp x22,x23,[x0,#2*8] - ldp x24,x25,[x0,#4*8] - add x2,x1,x2,lsl#7 // end of input - ldp x26,x27,[x0,#6*8] - adr x30,K512 - stp x0,x2,[x29,#96] - -.Loop: - ldp x3,x4,[x1],#2*8 - ldr x19,[x30],#8 // *K++ - eor x28,x21,x22 // magic seed - str x1,[x29,#112] -#ifndef __ARMEB__ - rev x3,x3 // 0 -#endif - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - eor x6,x24,x24,ror#23 - and x17,x25,x24 - bic x19,x26,x24 - add x27,x27,x3 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x6,ror#18 // Sigma1(e) - ror x6,x20,#28 - add x27,x27,x17 // h+=Ch(e,f,g) - eor x17,x20,x20,ror#5 - add x27,x27,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x23,x23,x27 // d+=h - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x6,x17,ror#34 // Sigma0(a) - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x27,x27,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x4,x4 // 1 -#endif - ldp x5,x6,[x1],#2*8 - add x27,x27,x17 // h+=Sigma0(a) - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - eor x7,x23,x23,ror#23 - and x17,x24,x23 - bic x28,x25,x23 - add x26,x26,x4 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x7,ror#18 // Sigma1(e) - ror x7,x27,#28 - add x26,x26,x17 // h+=Ch(e,f,g) - eor x17,x27,x27,ror#5 - add x26,x26,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x22,x22,x26 // d+=h - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x7,x17,ror#34 // Sigma0(a) - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x26,x26,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x5,x5 // 2 -#endif - add x26,x26,x17 // h+=Sigma0(a) - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - eor x8,x22,x22,ror#23 - and x17,x23,x22 - bic x19,x24,x22 - add x25,x25,x5 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x8,ror#18 // Sigma1(e) - ror x8,x26,#28 - add x25,x25,x17 // h+=Ch(e,f,g) - eor x17,x26,x26,ror#5 - add x25,x25,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x21,x21,x25 // d+=h - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x8,x17,ror#34 // Sigma0(a) - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x25,x25,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x6,x6 // 3 -#endif - ldp x7,x8,[x1],#2*8 - add x25,x25,x17 // h+=Sigma0(a) - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - eor x9,x21,x21,ror#23 - and x17,x22,x21 - bic x28,x23,x21 - add x24,x24,x6 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x9,ror#18 // Sigma1(e) - ror x9,x25,#28 - add x24,x24,x17 // h+=Ch(e,f,g) - eor x17,x25,x25,ror#5 - add x24,x24,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x20,x20,x24 // d+=h - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x9,x17,ror#34 // Sigma0(a) - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x24,x24,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x7,x7 // 4 -#endif - add x24,x24,x17 // h+=Sigma0(a) - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - eor x10,x20,x20,ror#23 - and x17,x21,x20 - bic x19,x22,x20 - add x23,x23,x7 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x10,ror#18 // Sigma1(e) - ror x10,x24,#28 - add x23,x23,x17 // h+=Ch(e,f,g) - eor x17,x24,x24,ror#5 - add x23,x23,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x27,x27,x23 // d+=h - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x10,x17,ror#34 // Sigma0(a) - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x23,x23,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x8,x8 // 5 -#endif - ldp x9,x10,[x1],#2*8 - add x23,x23,x17 // h+=Sigma0(a) - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - eor x11,x27,x27,ror#23 - and x17,x20,x27 - bic x28,x21,x27 - add x22,x22,x8 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x11,ror#18 // Sigma1(e) - ror x11,x23,#28 - add x22,x22,x17 // h+=Ch(e,f,g) - eor x17,x23,x23,ror#5 - add x22,x22,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x26,x26,x22 // d+=h - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x11,x17,ror#34 // Sigma0(a) - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x22,x22,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x9,x9 // 6 -#endif - add x22,x22,x17 // h+=Sigma0(a) - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - eor x12,x26,x26,ror#23 - and x17,x27,x26 - bic x19,x20,x26 - add x21,x21,x9 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x12,ror#18 // Sigma1(e) - ror x12,x22,#28 - add x21,x21,x17 // h+=Ch(e,f,g) - eor x17,x22,x22,ror#5 - add x21,x21,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x25,x25,x21 // d+=h - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x12,x17,ror#34 // Sigma0(a) - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x21,x21,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x10,x10 // 7 -#endif - ldp x11,x12,[x1],#2*8 - add x21,x21,x17 // h+=Sigma0(a) - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - eor x13,x25,x25,ror#23 - and x17,x26,x25 - bic x28,x27,x25 - add x20,x20,x10 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x13,ror#18 // Sigma1(e) - ror x13,x21,#28 - add x20,x20,x17 // h+=Ch(e,f,g) - eor x17,x21,x21,ror#5 - add x20,x20,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x24,x24,x20 // d+=h - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x13,x17,ror#34 // Sigma0(a) - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x20,x20,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x11,x11 // 8 -#endif - add x20,x20,x17 // h+=Sigma0(a) - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - eor x14,x24,x24,ror#23 - and x17,x25,x24 - bic x19,x26,x24 - add x27,x27,x11 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x14,ror#18 // Sigma1(e) - ror x14,x20,#28 - add x27,x27,x17 // h+=Ch(e,f,g) - eor x17,x20,x20,ror#5 - add x27,x27,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x23,x23,x27 // d+=h - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x14,x17,ror#34 // Sigma0(a) - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x27,x27,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x12,x12 // 9 -#endif - ldp x13,x14,[x1],#2*8 - add x27,x27,x17 // h+=Sigma0(a) - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - eor x15,x23,x23,ror#23 - and x17,x24,x23 - bic x28,x25,x23 - add x26,x26,x12 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x15,ror#18 // Sigma1(e) - ror x15,x27,#28 - add x26,x26,x17 // h+=Ch(e,f,g) - eor x17,x27,x27,ror#5 - add x26,x26,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x22,x22,x26 // d+=h - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x15,x17,ror#34 // Sigma0(a) - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x26,x26,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x13,x13 // 10 -#endif - add x26,x26,x17 // h+=Sigma0(a) - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - eor x0,x22,x22,ror#23 - and x17,x23,x22 - bic x19,x24,x22 - add x25,x25,x13 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x0,ror#18 // Sigma1(e) - ror x0,x26,#28 - add x25,x25,x17 // h+=Ch(e,f,g) - eor x17,x26,x26,ror#5 - add x25,x25,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x21,x21,x25 // d+=h - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x0,x17,ror#34 // Sigma0(a) - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x25,x25,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x14,x14 // 11 -#endif - ldp x15,x0,[x1],#2*8 - add x25,x25,x17 // h+=Sigma0(a) - str x6,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - eor x6,x21,x21,ror#23 - and x17,x22,x21 - bic x28,x23,x21 - add x24,x24,x14 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x6,ror#18 // Sigma1(e) - ror x6,x25,#28 - add x24,x24,x17 // h+=Ch(e,f,g) - eor x17,x25,x25,ror#5 - add x24,x24,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x20,x20,x24 // d+=h - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x6,x17,ror#34 // Sigma0(a) - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x24,x24,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x15,x15 // 12 -#endif - add x24,x24,x17 // h+=Sigma0(a) - str x7,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - eor x7,x20,x20,ror#23 - and x17,x21,x20 - bic x19,x22,x20 - add x23,x23,x15 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x7,ror#18 // Sigma1(e) - ror x7,x24,#28 - add x23,x23,x17 // h+=Ch(e,f,g) - eor x17,x24,x24,ror#5 - add x23,x23,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x27,x27,x23 // d+=h - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x7,x17,ror#34 // Sigma0(a) - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x23,x23,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x0,x0 // 13 -#endif - ldp x1,x2,[x1] - add x23,x23,x17 // h+=Sigma0(a) - str x8,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - eor x8,x27,x27,ror#23 - and x17,x20,x27 - bic x28,x21,x27 - add x22,x22,x0 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x8,ror#18 // Sigma1(e) - ror x8,x23,#28 - add x22,x22,x17 // h+=Ch(e,f,g) - eor x17,x23,x23,ror#5 - add x22,x22,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x26,x26,x22 // d+=h - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x8,x17,ror#34 // Sigma0(a) - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x22,x22,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x1,x1 // 14 -#endif - ldr x6,[sp,#24] - add x22,x22,x17 // h+=Sigma0(a) - str x9,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - eor x9,x26,x26,ror#23 - and x17,x27,x26 - bic x19,x20,x26 - add x21,x21,x1 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x9,ror#18 // Sigma1(e) - ror x9,x22,#28 - add x21,x21,x17 // h+=Ch(e,f,g) - eor x17,x22,x22,ror#5 - add x21,x21,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x25,x25,x21 // d+=h - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x9,x17,ror#34 // Sigma0(a) - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x21,x21,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x2,x2 // 15 -#endif - ldr x7,[sp,#0] - add x21,x21,x17 // h+=Sigma0(a) - str x10,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x9,x4,#1 - and x17,x26,x25 - ror x8,x1,#19 - bic x28,x27,x25 - ror x10,x21,#28 - add x20,x20,x2 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x9,x9,x4,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x10,x10,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x8,x8,x1,ror#61 - eor x9,x9,x4,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x10,x21,ror#39 // Sigma0(a) - eor x8,x8,x1,lsr#6 // sigma1(X[i+14]) - add x3,x3,x12 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x3,x3,x9 - add x20,x20,x17 // h+=Sigma0(a) - add x3,x3,x8 -.Loop_16_xx: - ldr x8,[sp,#8] - str x11,[sp,#0] - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - ror x10,x5,#1 - and x17,x25,x24 - ror x9,x2,#19 - bic x19,x26,x24 - ror x11,x20,#28 - add x27,x27,x3 // h+=X[i] - eor x16,x16,x24,ror#18 - eor x10,x10,x5,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x24,ror#41 // Sigma1(e) - eor x11,x11,x20,ror#34 - add x27,x27,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x9,x9,x2,ror#61 - eor x10,x10,x5,lsr#7 // sigma0(X[i+1]) - add x27,x27,x16 // h+=Sigma1(e) - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x11,x20,ror#39 // Sigma0(a) - eor x9,x9,x2,lsr#6 // sigma1(X[i+14]) - add x4,x4,x13 - add x23,x23,x27 // d+=h - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x4,x4,x10 - add x27,x27,x17 // h+=Sigma0(a) - add x4,x4,x9 - ldr x9,[sp,#16] - str x12,[sp,#8] - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - ror x11,x6,#1 - and x17,x24,x23 - ror x10,x3,#19 - bic x28,x25,x23 - ror x12,x27,#28 - add x26,x26,x4 // h+=X[i] - eor x16,x16,x23,ror#18 - eor x11,x11,x6,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x23,ror#41 // Sigma1(e) - eor x12,x12,x27,ror#34 - add x26,x26,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x10,x10,x3,ror#61 - eor x11,x11,x6,lsr#7 // sigma0(X[i+1]) - add x26,x26,x16 // h+=Sigma1(e) - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x12,x27,ror#39 // Sigma0(a) - eor x10,x10,x3,lsr#6 // sigma1(X[i+14]) - add x5,x5,x14 - add x22,x22,x26 // d+=h - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x5,x5,x11 - add x26,x26,x17 // h+=Sigma0(a) - add x5,x5,x10 - ldr x10,[sp,#24] - str x13,[sp,#16] - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - ror x12,x7,#1 - and x17,x23,x22 - ror x11,x4,#19 - bic x19,x24,x22 - ror x13,x26,#28 - add x25,x25,x5 // h+=X[i] - eor x16,x16,x22,ror#18 - eor x12,x12,x7,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x22,ror#41 // Sigma1(e) - eor x13,x13,x26,ror#34 - add x25,x25,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x11,x11,x4,ror#61 - eor x12,x12,x7,lsr#7 // sigma0(X[i+1]) - add x25,x25,x16 // h+=Sigma1(e) - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x13,x26,ror#39 // Sigma0(a) - eor x11,x11,x4,lsr#6 // sigma1(X[i+14]) - add x6,x6,x15 - add x21,x21,x25 // d+=h - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x6,x6,x12 - add x25,x25,x17 // h+=Sigma0(a) - add x6,x6,x11 - ldr x11,[sp,#0] - str x14,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - ror x13,x8,#1 - and x17,x22,x21 - ror x12,x5,#19 - bic x28,x23,x21 - ror x14,x25,#28 - add x24,x24,x6 // h+=X[i] - eor x16,x16,x21,ror#18 - eor x13,x13,x8,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x21,ror#41 // Sigma1(e) - eor x14,x14,x25,ror#34 - add x24,x24,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x12,x12,x5,ror#61 - eor x13,x13,x8,lsr#7 // sigma0(X[i+1]) - add x24,x24,x16 // h+=Sigma1(e) - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x14,x25,ror#39 // Sigma0(a) - eor x12,x12,x5,lsr#6 // sigma1(X[i+14]) - add x7,x7,x0 - add x20,x20,x24 // d+=h - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x7,x7,x13 - add x24,x24,x17 // h+=Sigma0(a) - add x7,x7,x12 - ldr x12,[sp,#8] - str x15,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - ror x14,x9,#1 - and x17,x21,x20 - ror x13,x6,#19 - bic x19,x22,x20 - ror x15,x24,#28 - add x23,x23,x7 // h+=X[i] - eor x16,x16,x20,ror#18 - eor x14,x14,x9,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x20,ror#41 // Sigma1(e) - eor x15,x15,x24,ror#34 - add x23,x23,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x13,x13,x6,ror#61 - eor x14,x14,x9,lsr#7 // sigma0(X[i+1]) - add x23,x23,x16 // h+=Sigma1(e) - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x15,x24,ror#39 // Sigma0(a) - eor x13,x13,x6,lsr#6 // sigma1(X[i+14]) - add x8,x8,x1 - add x27,x27,x23 // d+=h - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x8,x8,x14 - add x23,x23,x17 // h+=Sigma0(a) - add x8,x8,x13 - ldr x13,[sp,#16] - str x0,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - ror x15,x10,#1 - and x17,x20,x27 - ror x14,x7,#19 - bic x28,x21,x27 - ror x0,x23,#28 - add x22,x22,x8 // h+=X[i] - eor x16,x16,x27,ror#18 - eor x15,x15,x10,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x27,ror#41 // Sigma1(e) - eor x0,x0,x23,ror#34 - add x22,x22,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x14,x14,x7,ror#61 - eor x15,x15,x10,lsr#7 // sigma0(X[i+1]) - add x22,x22,x16 // h+=Sigma1(e) - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x0,x23,ror#39 // Sigma0(a) - eor x14,x14,x7,lsr#6 // sigma1(X[i+14]) - add x9,x9,x2 - add x26,x26,x22 // d+=h - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x9,x9,x15 - add x22,x22,x17 // h+=Sigma0(a) - add x9,x9,x14 - ldr x14,[sp,#24] - str x1,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - ror x0,x11,#1 - and x17,x27,x26 - ror x15,x8,#19 - bic x19,x20,x26 - ror x1,x22,#28 - add x21,x21,x9 // h+=X[i] - eor x16,x16,x26,ror#18 - eor x0,x0,x11,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x26,ror#41 // Sigma1(e) - eor x1,x1,x22,ror#34 - add x21,x21,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x15,x15,x8,ror#61 - eor x0,x0,x11,lsr#7 // sigma0(X[i+1]) - add x21,x21,x16 // h+=Sigma1(e) - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x1,x22,ror#39 // Sigma0(a) - eor x15,x15,x8,lsr#6 // sigma1(X[i+14]) - add x10,x10,x3 - add x25,x25,x21 // d+=h - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x10,x10,x0 - add x21,x21,x17 // h+=Sigma0(a) - add x10,x10,x15 - ldr x15,[sp,#0] - str x2,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x1,x12,#1 - and x17,x26,x25 - ror x0,x9,#19 - bic x28,x27,x25 - ror x2,x21,#28 - add x20,x20,x10 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x1,x1,x12,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x2,x2,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x0,x0,x9,ror#61 - eor x1,x1,x12,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x2,x21,ror#39 // Sigma0(a) - eor x0,x0,x9,lsr#6 // sigma1(X[i+14]) - add x11,x11,x4 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x11,x11,x1 - add x20,x20,x17 // h+=Sigma0(a) - add x11,x11,x0 - ldr x0,[sp,#8] - str x3,[sp,#0] - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - ror x2,x13,#1 - and x17,x25,x24 - ror x1,x10,#19 - bic x19,x26,x24 - ror x3,x20,#28 - add x27,x27,x11 // h+=X[i] - eor x16,x16,x24,ror#18 - eor x2,x2,x13,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x24,ror#41 // Sigma1(e) - eor x3,x3,x20,ror#34 - add x27,x27,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x1,x1,x10,ror#61 - eor x2,x2,x13,lsr#7 // sigma0(X[i+1]) - add x27,x27,x16 // h+=Sigma1(e) - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x3,x20,ror#39 // Sigma0(a) - eor x1,x1,x10,lsr#6 // sigma1(X[i+14]) - add x12,x12,x5 - add x23,x23,x27 // d+=h - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x12,x12,x2 - add x27,x27,x17 // h+=Sigma0(a) - add x12,x12,x1 - ldr x1,[sp,#16] - str x4,[sp,#8] - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - ror x3,x14,#1 - and x17,x24,x23 - ror x2,x11,#19 - bic x28,x25,x23 - ror x4,x27,#28 - add x26,x26,x12 // h+=X[i] - eor x16,x16,x23,ror#18 - eor x3,x3,x14,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x23,ror#41 // Sigma1(e) - eor x4,x4,x27,ror#34 - add x26,x26,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x2,x2,x11,ror#61 - eor x3,x3,x14,lsr#7 // sigma0(X[i+1]) - add x26,x26,x16 // h+=Sigma1(e) - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x4,x27,ror#39 // Sigma0(a) - eor x2,x2,x11,lsr#6 // sigma1(X[i+14]) - add x13,x13,x6 - add x22,x22,x26 // d+=h - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x13,x13,x3 - add x26,x26,x17 // h+=Sigma0(a) - add x13,x13,x2 - ldr x2,[sp,#24] - str x5,[sp,#16] - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - ror x4,x15,#1 - and x17,x23,x22 - ror x3,x12,#19 - bic x19,x24,x22 - ror x5,x26,#28 - add x25,x25,x13 // h+=X[i] - eor x16,x16,x22,ror#18 - eor x4,x4,x15,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x22,ror#41 // Sigma1(e) - eor x5,x5,x26,ror#34 - add x25,x25,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x3,x3,x12,ror#61 - eor x4,x4,x15,lsr#7 // sigma0(X[i+1]) - add x25,x25,x16 // h+=Sigma1(e) - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x5,x26,ror#39 // Sigma0(a) - eor x3,x3,x12,lsr#6 // sigma1(X[i+14]) - add x14,x14,x7 - add x21,x21,x25 // d+=h - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x14,x14,x4 - add x25,x25,x17 // h+=Sigma0(a) - add x14,x14,x3 - ldr x3,[sp,#0] - str x6,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - ror x5,x0,#1 - and x17,x22,x21 - ror x4,x13,#19 - bic x28,x23,x21 - ror x6,x25,#28 - add x24,x24,x14 // h+=X[i] - eor x16,x16,x21,ror#18 - eor x5,x5,x0,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x21,ror#41 // Sigma1(e) - eor x6,x6,x25,ror#34 - add x24,x24,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x4,x4,x13,ror#61 - eor x5,x5,x0,lsr#7 // sigma0(X[i+1]) - add x24,x24,x16 // h+=Sigma1(e) - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x6,x25,ror#39 // Sigma0(a) - eor x4,x4,x13,lsr#6 // sigma1(X[i+14]) - add x15,x15,x8 - add x20,x20,x24 // d+=h - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x15,x15,x5 - add x24,x24,x17 // h+=Sigma0(a) - add x15,x15,x4 - ldr x4,[sp,#8] - str x7,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - ror x6,x1,#1 - and x17,x21,x20 - ror x5,x14,#19 - bic x19,x22,x20 - ror x7,x24,#28 - add x23,x23,x15 // h+=X[i] - eor x16,x16,x20,ror#18 - eor x6,x6,x1,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x20,ror#41 // Sigma1(e) - eor x7,x7,x24,ror#34 - add x23,x23,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x5,x5,x14,ror#61 - eor x6,x6,x1,lsr#7 // sigma0(X[i+1]) - add x23,x23,x16 // h+=Sigma1(e) - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x7,x24,ror#39 // Sigma0(a) - eor x5,x5,x14,lsr#6 // sigma1(X[i+14]) - add x0,x0,x9 - add x27,x27,x23 // d+=h - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x0,x0,x6 - add x23,x23,x17 // h+=Sigma0(a) - add x0,x0,x5 - ldr x5,[sp,#16] - str x8,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - ror x7,x2,#1 - and x17,x20,x27 - ror x6,x15,#19 - bic x28,x21,x27 - ror x8,x23,#28 - add x22,x22,x0 // h+=X[i] - eor x16,x16,x27,ror#18 - eor x7,x7,x2,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x27,ror#41 // Sigma1(e) - eor x8,x8,x23,ror#34 - add x22,x22,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x6,x6,x15,ror#61 - eor x7,x7,x2,lsr#7 // sigma0(X[i+1]) - add x22,x22,x16 // h+=Sigma1(e) - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x8,x23,ror#39 // Sigma0(a) - eor x6,x6,x15,lsr#6 // sigma1(X[i+14]) - add x1,x1,x10 - add x26,x26,x22 // d+=h - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x1,x1,x7 - add x22,x22,x17 // h+=Sigma0(a) - add x1,x1,x6 - ldr x6,[sp,#24] - str x9,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - ror x8,x3,#1 - and x17,x27,x26 - ror x7,x0,#19 - bic x19,x20,x26 - ror x9,x22,#28 - add x21,x21,x1 // h+=X[i] - eor x16,x16,x26,ror#18 - eor x8,x8,x3,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x26,ror#41 // Sigma1(e) - eor x9,x9,x22,ror#34 - add x21,x21,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x7,x7,x0,ror#61 - eor x8,x8,x3,lsr#7 // sigma0(X[i+1]) - add x21,x21,x16 // h+=Sigma1(e) - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x9,x22,ror#39 // Sigma0(a) - eor x7,x7,x0,lsr#6 // sigma1(X[i+14]) - add x2,x2,x11 - add x25,x25,x21 // d+=h - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x2,x2,x8 - add x21,x21,x17 // h+=Sigma0(a) - add x2,x2,x7 - ldr x7,[sp,#0] - str x10,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x9,x4,#1 - and x17,x26,x25 - ror x8,x1,#19 - bic x28,x27,x25 - ror x10,x21,#28 - add x20,x20,x2 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x9,x9,x4,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x10,x10,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x8,x8,x1,ror#61 - eor x9,x9,x4,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x10,x21,ror#39 // Sigma0(a) - eor x8,x8,x1,lsr#6 // sigma1(X[i+14]) - add x3,x3,x12 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x3,x3,x9 - add x20,x20,x17 // h+=Sigma0(a) - add x3,x3,x8 - cbnz x19,.Loop_16_xx - - ldp x0,x2,[x29,#96] - ldr x1,[x29,#112] - sub x30,x30,#648 // rewind - - ldp x3,x4,[x0] - ldp x5,x6,[x0,#2*8] - add x1,x1,#14*8 // advance input pointer - ldp x7,x8,[x0,#4*8] - add x20,x20,x3 - ldp x9,x10,[x0,#6*8] - add x21,x21,x4 - add x22,x22,x5 - add x23,x23,x6 - stp x20,x21,[x0] - add x24,x24,x7 - add x25,x25,x8 - stp x22,x23,[x0,#2*8] - add x26,x26,x9 - add x27,x27,x10 - cmp x1,x2 - stp x24,x25,[x0,#4*8] - stp x26,x27,[x0,#6*8] - b.ne .Loop - - ldp x19,x20,[x29,#16] - add sp,sp,#4*8 - ldp x21,x22,[x29,#32] - ldp x23,x24,[x29,#48] - ldp x25,x26,[x29,#64] - ldp x27,x28,[x29,#80] - ldp x29,x30,[sp],#128 - ret -.size sha512_block_data_order,.-sha512_block_data_order - -.align 6 -.type K512,%object -K512: - .quad 0x428a2f98d728ae22,0x7137449123ef65cd - .quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc - .quad 0x3956c25bf348b538,0x59f111f1b605d019 - .quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 - .quad 0xd807aa98a3030242,0x12835b0145706fbe - .quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 - .quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 - .quad 0x9bdc06a725c71235,0xc19bf174cf692694 - .quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 - .quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 - .quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 - .quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 - .quad 0x983e5152ee66dfab,0xa831c66d2db43210 - .quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 - .quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 - .quad 0x06ca6351e003826f,0x142929670a0e6e70 - .quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 - .quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df - .quad 0x650a73548baf63de,0x766a0abb3c77b2a8 - .quad 0x81c2c92e47edaee6,0x92722c851482353b - .quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 - .quad 0xc24b8b70d0f89791,0xc76c51a30654be30 - .quad 0xd192e819d6ef5218,0xd69906245565a910 - .quad 0xf40e35855771202a,0x106aa07032bbd1b8 - .quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 - .quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 - .quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb - .quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 - .quad 0x748f82ee5defb2fc,0x78a5636f43172f60 - .quad 0x84c87814a1f0ab72,0x8cc702081a6439ec - .quad 0x90befffa23631e28,0xa4506cebde82bde9 - .quad 0xbef9a3f7b2c67915,0xc67178f2e372532b - .quad 0xca273eceea26619c,0xd186b8c721c0c207 - .quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 - .quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 - .quad 0x113f9804bef90dae,0x1b710b35131c471b - .quad 0x28db77f523047d84,0x32caab7b40c72493 - .quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c - .quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a - .quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - .quad 0 // terminator -.size K512,.-K512 -.align 3 -.LOPENSSL_armcap_P: - .quad OPENSSL_armcap_P-. -.asciz "SHA512 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s deleted file mode 100644 index c21cce10f5db9e..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s +++ /dev/null @@ -1,2534 +0,0 @@ -.text -.type _x86_64_AES_encrypt,@function -.align 16 -_x86_64_AES_encrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp .Lenc_loop -.align 16 -.Lenc_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - shrl $16,%ecx - movzbl %ah,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movl 12(%r15),%edx - movzbl %bh,%edi - movzbl %ch,%ebp - movl 0(%r15),%eax - xorl 1(%r14,%rdi,8),%r12d - xorl 1(%r14,%rbp,8),%r8d - - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - subl $1,%r13d - jnz .Lenc_loop - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl 2(%r14,%rsi,8),%r10d - movzbl 2(%r14,%rdi,8),%r11d - movzbl 2(%r14,%rbp,8),%r12d - - movzbl %dl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl 2(%r14,%rsi,8),%r8d - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x0000ff00,%edi - andl $0x0000ff00,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%ecx - - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - - andl $0x0000ff00,%esi - andl $0x0000ff00,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0x00ff0000,%edi - andl $0x00ff0000,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movl 0(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 2(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0xff000000,%edi - andl $0xff000000,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %bh,%esi - movzbl %ch,%edi - movl 16+12(%r15),%edx - movl 2(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 16+0(%r15),%eax - - andl $0xff000000,%esi - andl $0xff000000,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_encrypt,.-_x86_64_AES_encrypt -.type _x86_64_AES_encrypt_compact,@function -.align 16 -_x86_64_AES_encrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp .Lenc_loop_compact -.align 16 -.Lenc_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%ecx - movzbl %dh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ah,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl %cl,%edi - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shll $8,%r9d - shrl $16,%edx - shll $8,%r13d - xorl %r9d,%r10d - shrl $16,%eax - movzbl %dl,%r9d - shrl $16,%ebx - xorl %r13d,%r11d - shll $8,%ebp - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - - shll $8,%esi - movzbl %bl,%ebp - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %dh,%esi - movzbl (%r14,%r13,1),%r13d - xorl %edi,%r10d - - shrl $8,%ecx - movzbl %ah,%edi - shll $16,%r9d - shrl $8,%ebx - shll $16,%r13d - xorl %r9d,%r11d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rcx,1),%edx - movzbl (%r14,%rbx,1),%ecx - - shll $16,%ebp - xorl %r13d,%r12d - shll $24,%esi - xorl %ebp,%r8d - shll $24,%edi - xorl %esi,%r10d - shll $24,%edx - xorl %edi,%r11d - shll $24,%ecx - movl %r10d,%eax - movl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je .Lenc_compact_done - movl $0x80808080,%r10d - movl $0x80808080,%r11d - andl %eax,%r10d - andl %ebx,%r11d - movl %r10d,%esi - movl %r11d,%edi - shrl $7,%r10d - leal (%rax,%rax,1),%r8d - shrl $7,%r11d - leal (%rbx,%rbx,1),%r9d - subl %r10d,%esi - subl %r11d,%edi - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %eax,%r10d - movl %ebx,%r11d - xorl %esi,%r8d - xorl %edi,%r9d - - xorl %r8d,%eax - xorl %r9d,%ebx - movl $0x80808080,%r12d - roll $24,%eax - movl $0x80808080,%ebp - roll $24,%ebx - andl %ecx,%r12d - andl %edx,%ebp - xorl %r8d,%eax - xorl %r9d,%ebx - movl %r12d,%esi - rorl $16,%r10d - movl %ebp,%edi - rorl $16,%r11d - leal (%rcx,%rcx,1),%r8d - shrl $7,%r12d - xorl %r10d,%eax - shrl $7,%ebp - xorl %r11d,%ebx - rorl $8,%r10d - leal (%rdx,%rdx,1),%r9d - rorl $8,%r11d - subl %r12d,%esi - subl %ebp,%edi - xorl %r10d,%eax - xorl %r11d,%ebx - - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %ecx,%r12d - movl %edx,%ebp - xorl %esi,%r8d - xorl %edi,%r9d - - rorl $16,%r12d - xorl %r8d,%ecx - rorl $16,%ebp - xorl %r9d,%edx - roll $24,%ecx - movl 0(%r14),%esi - roll $24,%edx - xorl %r8d,%ecx - movl 64(%r14),%edi - xorl %r9d,%edx - movl 128(%r14),%r8d - xorl %r12d,%ecx - rorl $8,%r12d - xorl %ebp,%edx - rorl $8,%ebp - xorl %r12d,%ecx - movl 192(%r14),%r9d - xorl %ebp,%edx - jmp .Lenc_loop_compact -.align 16 -.Lenc_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_encrypt_compact,.-_x86_64_AES_encrypt_compact -.globl AES_encrypt -.type AES_encrypt,@function -.align 16 -.globl asm_AES_encrypt -.hidden asm_AES_encrypt -asm_AES_encrypt: -AES_encrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -.Lenc_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq .LAES_Te+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - - call _x86_64_AES_encrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lenc_epilogue: - .byte 0xf3,0xc3 -.size AES_encrypt,.-AES_encrypt -.type _x86_64_AES_decrypt,@function -.align 16 -_x86_64_AES_decrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp .Ldec_loop -.align 16 -.Ldec_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %bh,%esi - shrl $16,%eax - movzbl %ch,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - movl 12(%r15),%edx - movzbl %ah,%ebp - xorl 1(%r14,%rsi,8),%r12d - movl 0(%r15),%eax - xorl 1(%r14,%rbp,8),%r8d - - xorl %r10d,%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r12d,%ecx - xorl %r11d,%ebx - xorl %r8d,%edx - subl $1,%r13d - jnz .Ldec_loop - leaq 2048(%r14),%r14 - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl (%r14,%rsi,1),%r10d - movzbl (%r14,%rdi,1),%r11d - movzbl (%r14,%rbp,1),%r12d - - movzbl %dl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movzbl (%r14,%rsi,1),%r8d - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $8,%edi - shll $8,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%edx - - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%eax - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - - shll $8,%esi - shll $8,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $16,%edi - shll $16,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $24,%edi - shll $24,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %dh,%esi - movzbl %ah,%edi - movl 16+12(%r15),%edx - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movl 16+0(%r15),%eax - - shll $24,%esi - shll $24,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - leaq -2048(%r14),%r14 - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_decrypt,.-_x86_64_AES_decrypt -.type _x86_64_AES_decrypt_compact,@function -.align 16 -_x86_64_AES_decrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp .Ldec_loop_compact - -.align 16 -.Ldec_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movzbl %bh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ch,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shrl $16,%ecx - shll $8,%r13d - shll $8,%r9d - movzbl %cl,%edi - shrl $16,%eax - xorl %r9d,%r10d - shrl $16,%ebx - movzbl %dl,%r9d - - shll $8,%ebp - xorl %r13d,%r11d - shll $8,%esi - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - movzbl %bl,%ebp - - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %bh,%esi - movzbl (%r14,%rbp,1),%ebp - xorl %edi,%r10d - movzbl (%r14,%r13,1),%r13d - movzbl %ch,%edi - - shll $16,%ebp - shll $16,%r9d - shll $16,%r13d - xorl %ebp,%r8d - movzbl %dh,%ebp - xorl %r9d,%r11d - shrl $8,%eax - xorl %r13d,%r12d - - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%ebx - movzbl (%r14,%rbp,1),%ecx - movzbl (%r14,%rax,1),%edx - - movl %r10d,%eax - shll $24,%esi - shll $24,%ebx - shll $24,%ecx - xorl %esi,%eax - shll $24,%edx - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je .Ldec_compact_done - - movq 256+0(%r14),%rsi - shlq $32,%rbx - shlq $32,%rdx - movq 256+8(%r14),%rdi - orq %rbx,%rax - orq %rdx,%rcx - movq 256+16(%r14),%rbp - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - movq 0(%r14),%rsi - roll $16,%r9d - movq 64(%r14),%rdi - roll $16,%r12d - movq 128(%r14),%rbp - roll $16,%r8d - movq 192(%r14),%r10 - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - movq 256(%r14),%r13 - xorl %r8d,%ebx - xorl %r11d,%edx - jmp .Ldec_loop_compact -.align 16 -.Ldec_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_decrypt_compact,.-_x86_64_AES_decrypt_compact -.globl AES_decrypt -.type AES_decrypt,@function -.align 16 -.globl asm_AES_decrypt -.hidden asm_AES_decrypt -asm_AES_decrypt: -AES_decrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -.Ldec_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq .LAES_Td+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - shrq $3,%rbp - addq %rbp,%r14 - - call _x86_64_AES_decrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Ldec_epilogue: - .byte 0xf3,0xc3 -.size AES_decrypt,.-AES_decrypt -.globl private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,@function -.align 16 -private_AES_set_encrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $8,%rsp -.Lenc_key_prologue: - - call _x86_64_AES_set_encrypt_key - - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -.Lenc_key_epilogue: - .byte 0xf3,0xc3 -.size private_AES_set_encrypt_key,.-private_AES_set_encrypt_key - -.type _x86_64_AES_set_encrypt_key,@function -.align 16 -_x86_64_AES_set_encrypt_key: - movl %esi,%ecx - movq %rdi,%rsi - movq %rdx,%rdi - - testq $-1,%rsi - jz .Lbadpointer - testq $-1,%rdi - jz .Lbadpointer - - leaq .LAES_Te(%rip),%rbp - leaq 2048+128(%rbp),%rbp - - - movl 0-128(%rbp),%eax - movl 32-128(%rbp),%ebx - movl 64-128(%rbp),%r8d - movl 96-128(%rbp),%edx - movl 128-128(%rbp),%eax - movl 160-128(%rbp),%ebx - movl 192-128(%rbp),%r8d - movl 224-128(%rbp),%edx - - cmpl $128,%ecx - je .L10rounds - cmpl $192,%ecx - je .L12rounds - cmpl $256,%ecx - je .L14rounds - movq $-2,%rax - jmp .Lexit - -.L10rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rdx - movq %rax,0(%rdi) - movq %rdx,8(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L10shortcut -.align 4 -.L10loop: - movl 0(%rdi),%eax - movl 12(%rdi),%edx -.L10shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,16(%rdi) - xorl 4(%rdi),%eax - movl %eax,20(%rdi) - xorl 8(%rdi),%eax - movl %eax,24(%rdi) - xorl 12(%rdi),%eax - movl %eax,28(%rdi) - addl $1,%ecx - leaq 16(%rdi),%rdi - cmpl $10,%ecx - jl .L10loop - - movl $10,80(%rdi) - xorq %rax,%rax - jmp .Lexit - -.L12rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rdx,16(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L12shortcut -.align 4 -.L12loop: - movl 0(%rdi),%eax - movl 20(%rdi),%edx -.L12shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,24(%rdi) - xorl 4(%rdi),%eax - movl %eax,28(%rdi) - xorl 8(%rdi),%eax - movl %eax,32(%rdi) - xorl 12(%rdi),%eax - movl %eax,36(%rdi) - - cmpl $7,%ecx - je .L12break - addl $1,%ecx - - xorl 16(%rdi),%eax - movl %eax,40(%rdi) - xorl 20(%rdi),%eax - movl %eax,44(%rdi) - - leaq 24(%rdi),%rdi - jmp .L12loop -.L12break: - movl $12,72(%rdi) - xorq %rax,%rax - jmp .Lexit - -.L14rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rcx - movq 24(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L14shortcut -.align 4 -.L14loop: - movl 0(%rdi),%eax - movl 28(%rdi),%edx -.L14shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,32(%rdi) - xorl 4(%rdi),%eax - movl %eax,36(%rdi) - xorl 8(%rdi),%eax - movl %eax,40(%rdi) - xorl 12(%rdi),%eax - movl %eax,44(%rdi) - - cmpl $6,%ecx - je .L14break - addl $1,%ecx - - movl %eax,%edx - movl 16(%rdi),%eax - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - - movl %eax,48(%rdi) - xorl 20(%rdi),%eax - movl %eax,52(%rdi) - xorl 24(%rdi),%eax - movl %eax,56(%rdi) - xorl 28(%rdi),%eax - movl %eax,60(%rdi) - - leaq 32(%rdi),%rdi - jmp .L14loop -.L14break: - movl $14,48(%rdi) - xorq %rax,%rax - jmp .Lexit - -.Lbadpointer: - movq $-1,%rax -.Lexit: -.byte 0xf3,0xc3 -.size _x86_64_AES_set_encrypt_key,.-_x86_64_AES_set_encrypt_key -.globl private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,@function -.align 16 -private_AES_set_decrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - pushq %rdx -.Ldec_key_prologue: - - call _x86_64_AES_set_encrypt_key - movq (%rsp),%r8 - cmpl $0,%eax - jne .Labort - - movl 240(%r8),%r14d - xorq %rdi,%rdi - leaq (%rdi,%r14,4),%rcx - movq %r8,%rsi - leaq (%r8,%rcx,4),%rdi -.align 4 -.Linvert: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 0(%rdi),%rcx - movq 8(%rdi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,0(%rsi) - movq %rdx,8(%rsi) - leaq 16(%rsi),%rsi - leaq -16(%rdi),%rdi - cmpq %rsi,%rdi - jne .Linvert - - leaq .LAES_Te+2048+1024(%rip),%rax - - movq 40(%rax),%rsi - movq 48(%rax),%rdi - movq 56(%rax),%rbp - - movq %r8,%r15 - subl $1,%r14d -.align 4 -.Lpermute: - leaq 16(%r15),%r15 - movq 0(%r15),%rax - movq 8(%r15),%rcx - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - - roll $16,%r9d - - roll $16,%r12d - - roll $16,%r8d - - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - - xorl %r8d,%ebx - xorl %r11d,%edx - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - subl $1,%r14d - jnz .Lpermute - - xorq %rax,%rax -.Labort: - movq 8(%rsp),%r15 - movq 16(%rsp),%r14 - movq 24(%rsp),%r13 - movq 32(%rsp),%r12 - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -.Ldec_key_epilogue: - .byte 0xf3,0xc3 -.size private_AES_set_decrypt_key,.-private_AES_set_decrypt_key -.globl AES_cbc_encrypt -.type AES_cbc_encrypt,@function -.align 16 - -.globl asm_AES_cbc_encrypt -.hidden asm_AES_cbc_encrypt -asm_AES_cbc_encrypt: -AES_cbc_encrypt: - cmpq $0,%rdx - je .Lcbc_epilogue - pushfq - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lcbc_prologue: - - cld - movl %r9d,%r9d - - leaq .LAES_Te(%rip),%r14 - cmpq $0,%r9 - jne .Lcbc_picked_te - leaq .LAES_Td(%rip),%r14 -.Lcbc_picked_te: - - movl OPENSSL_ia32cap_P(%rip),%r10d - cmpq $512,%rdx - jb .Lcbc_slow_prologue - testq $15,%rdx - jnz .Lcbc_slow_prologue - btl $28,%r10d - jc .Lcbc_slow_prologue - - - leaq -88-248(%rsp),%r15 - andq $-64,%r15 - - - movq %r14,%r10 - leaq 2304(%r14),%r11 - movq %r15,%r12 - andq $0xFFF,%r10 - andq $0xFFF,%r11 - andq $0xFFF,%r12 - - cmpq %r11,%r12 - jb .Lcbc_te_break_out - subq %r11,%r12 - subq %r12,%r15 - jmp .Lcbc_te_ok -.Lcbc_te_break_out: - subq %r10,%r12 - andq $0xFFF,%r12 - addq $320,%r12 - subq %r12,%r15 -.align 4 -.Lcbc_te_ok: - - xchgq %rsp,%r15 - - movq %r15,16(%rsp) -.Lcbc_fast_body: - movq %rdi,24(%rsp) - movq %rsi,32(%rsp) - movq %rdx,40(%rsp) - movq %rcx,48(%rsp) - movq %r8,56(%rsp) - movl $0,80+240(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - - movl 240(%r15),%eax - - movq %r15,%r10 - subq %r14,%r10 - andq $0xfff,%r10 - cmpq $2304,%r10 - jb .Lcbc_do_ecopy - cmpq $4096-248,%r10 - jb .Lcbc_skip_ecopy -.align 4 -.Lcbc_do_ecopy: - movq %r15,%rsi - leaq 80(%rsp),%rdi - leaq 80(%rsp),%r15 - movl $30,%ecx -.long 0x90A548F3 - movl %eax,(%rdi) -.Lcbc_skip_ecopy: - movq %r15,0(%rsp) - - movl $18,%ecx -.align 4 -.Lcbc_prefetch_te: - movq 0(%r14),%r10 - movq 32(%r14),%r11 - movq 64(%r14),%r12 - movq 96(%r14),%r13 - leaq 128(%r14),%r14 - subl $1,%ecx - jnz .Lcbc_prefetch_te - leaq -2304(%r14),%r14 - - cmpq $0,%rbx - je .LFAST_DECRYPT - - - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - -.align 4 -.Lcbc_fast_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_encrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - movq %r10,40(%rsp) - jnz .Lcbc_fast_enc_loop - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp .Lcbc_fast_cleanup - - -.align 16 -.LFAST_DECRYPT: - cmpq %r8,%r9 - je .Lcbc_fast_dec_in_place - - movq %rbp,64(%rsp) -.align 4 -.Lcbc_fast_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 64(%rsp),%rbp - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0(%rbp),%eax - xorl 4(%rbp),%ebx - xorl 8(%rbp),%ecx - xorl 12(%rbp),%edx - movq %r8,%rbp - - subq $16,%r10 - movq %r10,40(%rsp) - movq %rbp,64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jnz .Lcbc_fast_dec_loop - movq 56(%rsp),%r12 - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0(%r12) - movq %r11,8(%r12) - jmp .Lcbc_fast_cleanup - -.align 16 -.Lcbc_fast_dec_in_place: - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0+64(%rsp) - movq %r11,8+64(%rsp) -.align 4 -.Lcbc_fast_dec_in_place_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jz .Lcbc_fast_dec_in_place_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - movq %r10,40(%rsp) - jmp .Lcbc_fast_dec_in_place_loop -.Lcbc_fast_dec_in_place_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - -.align 4 -.Lcbc_fast_cleanup: - cmpl $0,80+240(%rsp) - leaq 80(%rsp),%rdi - je .Lcbc_exit - movl $30,%ecx - xorq %rax,%rax -.long 0x90AB48F3 - - jmp .Lcbc_exit - - -.align 16 -.Lcbc_slow_prologue: - - leaq -88(%rsp),%rbp - andq $-64,%rbp - - leaq -88-63(%rcx),%r10 - subq %rbp,%r10 - negq %r10 - andq $0x3c0,%r10 - subq %r10,%rbp - - xchgq %rsp,%rbp - - movq %rbp,16(%rsp) -.Lcbc_slow_body: - - - - - movq %r8,56(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - movq %rdx,%r10 - - movl 240(%r15),%eax - movq %r15,0(%rsp) - shll $4,%eax - leaq (%r15,%rax,1),%rax - movq %rax,8(%rsp) - - - leaq 2048(%r14),%r14 - leaq 768-8(%rsp),%rax - subq %r14,%rax - andq $0x300,%rax - leaq (%r14,%rax,1),%r14 - - cmpq $0,%rbx - je .LSLOW_DECRYPT - - - testq $-16,%r10 - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - jz .Lcbc_slow_enc_tail - -.align 4 -.Lcbc_slow_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_encrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - jnz .Lcbc_slow_enc_loop - testq $15,%r10 - jnz .Lcbc_slow_enc_tail - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp .Lcbc_exit - -.align 4 -.Lcbc_slow_enc_tail: - movq %rax,%r11 - movq %rcx,%r12 - movq %r10,%rcx - movq %r8,%rsi - movq %r9,%rdi -.long 0x9066A4F3 - movq $16,%rcx - subq %r10,%rcx - xorq %rax,%rax -.long 0x9066AAF3 - movq %r9,%r8 - movq $16,%r10 - movq %r11,%rax - movq %r12,%rcx - jmp .Lcbc_slow_enc_loop - -.align 16 -.LSLOW_DECRYPT: - shrq $3,%rax - addq %rax,%r14 - - movq 0(%rbp),%r11 - movq 8(%rbp),%r12 - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - -.align 4 -.Lcbc_slow_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_decrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jc .Lcbc_slow_dec_partial - jz .Lcbc_slow_dec_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jmp .Lcbc_slow_dec_loop -.Lcbc_slow_dec_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - jmp .Lcbc_exit - -.align 4 -.Lcbc_slow_dec_partial: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0+64(%rsp) - movl %ebx,4+64(%rsp) - movl %ecx,8+64(%rsp) - movl %edx,12+64(%rsp) - - movq %r9,%rdi - leaq 64(%rsp),%rsi - leaq 16(%r10),%rcx -.long 0x9066A4F3 - jmp .Lcbc_exit - -.align 16 -.Lcbc_exit: - movq 16(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lcbc_popfq: - popfq -.Lcbc_epilogue: - .byte 0xf3,0xc3 -.size AES_cbc_encrypt,.-AES_cbc_encrypt -.align 64 -.LAES_Te: -.long 0xa56363c6,0xa56363c6 -.long 0x847c7cf8,0x847c7cf8 -.long 0x997777ee,0x997777ee -.long 0x8d7b7bf6,0x8d7b7bf6 -.long 0x0df2f2ff,0x0df2f2ff -.long 0xbd6b6bd6,0xbd6b6bd6 -.long 0xb16f6fde,0xb16f6fde -.long 0x54c5c591,0x54c5c591 -.long 0x50303060,0x50303060 -.long 0x03010102,0x03010102 -.long 0xa96767ce,0xa96767ce -.long 0x7d2b2b56,0x7d2b2b56 -.long 0x19fefee7,0x19fefee7 -.long 0x62d7d7b5,0x62d7d7b5 -.long 0xe6abab4d,0xe6abab4d -.long 0x9a7676ec,0x9a7676ec -.long 0x45caca8f,0x45caca8f -.long 0x9d82821f,0x9d82821f -.long 0x40c9c989,0x40c9c989 -.long 0x877d7dfa,0x877d7dfa -.long 0x15fafaef,0x15fafaef -.long 0xeb5959b2,0xeb5959b2 -.long 0xc947478e,0xc947478e -.long 0x0bf0f0fb,0x0bf0f0fb -.long 0xecadad41,0xecadad41 -.long 0x67d4d4b3,0x67d4d4b3 -.long 0xfda2a25f,0xfda2a25f -.long 0xeaafaf45,0xeaafaf45 -.long 0xbf9c9c23,0xbf9c9c23 -.long 0xf7a4a453,0xf7a4a453 -.long 0x967272e4,0x967272e4 -.long 0x5bc0c09b,0x5bc0c09b -.long 0xc2b7b775,0xc2b7b775 -.long 0x1cfdfde1,0x1cfdfde1 -.long 0xae93933d,0xae93933d -.long 0x6a26264c,0x6a26264c -.long 0x5a36366c,0x5a36366c -.long 0x413f3f7e,0x413f3f7e -.long 0x02f7f7f5,0x02f7f7f5 -.long 0x4fcccc83,0x4fcccc83 -.long 0x5c343468,0x5c343468 -.long 0xf4a5a551,0xf4a5a551 -.long 0x34e5e5d1,0x34e5e5d1 -.long 0x08f1f1f9,0x08f1f1f9 -.long 0x937171e2,0x937171e2 -.long 0x73d8d8ab,0x73d8d8ab -.long 0x53313162,0x53313162 -.long 0x3f15152a,0x3f15152a -.long 0x0c040408,0x0c040408 -.long 0x52c7c795,0x52c7c795 -.long 0x65232346,0x65232346 -.long 0x5ec3c39d,0x5ec3c39d -.long 0x28181830,0x28181830 -.long 0xa1969637,0xa1969637 -.long 0x0f05050a,0x0f05050a -.long 0xb59a9a2f,0xb59a9a2f -.long 0x0907070e,0x0907070e -.long 0x36121224,0x36121224 -.long 0x9b80801b,0x9b80801b -.long 0x3de2e2df,0x3de2e2df -.long 0x26ebebcd,0x26ebebcd -.long 0x6927274e,0x6927274e -.long 0xcdb2b27f,0xcdb2b27f -.long 0x9f7575ea,0x9f7575ea -.long 0x1b090912,0x1b090912 -.long 0x9e83831d,0x9e83831d -.long 0x742c2c58,0x742c2c58 -.long 0x2e1a1a34,0x2e1a1a34 -.long 0x2d1b1b36,0x2d1b1b36 -.long 0xb26e6edc,0xb26e6edc -.long 0xee5a5ab4,0xee5a5ab4 -.long 0xfba0a05b,0xfba0a05b -.long 0xf65252a4,0xf65252a4 -.long 0x4d3b3b76,0x4d3b3b76 -.long 0x61d6d6b7,0x61d6d6b7 -.long 0xceb3b37d,0xceb3b37d -.long 0x7b292952,0x7b292952 -.long 0x3ee3e3dd,0x3ee3e3dd -.long 0x712f2f5e,0x712f2f5e -.long 0x97848413,0x97848413 -.long 0xf55353a6,0xf55353a6 -.long 0x68d1d1b9,0x68d1d1b9 -.long 0x00000000,0x00000000 -.long 0x2cededc1,0x2cededc1 -.long 0x60202040,0x60202040 -.long 0x1ffcfce3,0x1ffcfce3 -.long 0xc8b1b179,0xc8b1b179 -.long 0xed5b5bb6,0xed5b5bb6 -.long 0xbe6a6ad4,0xbe6a6ad4 -.long 0x46cbcb8d,0x46cbcb8d -.long 0xd9bebe67,0xd9bebe67 -.long 0x4b393972,0x4b393972 -.long 0xde4a4a94,0xde4a4a94 -.long 0xd44c4c98,0xd44c4c98 -.long 0xe85858b0,0xe85858b0 -.long 0x4acfcf85,0x4acfcf85 -.long 0x6bd0d0bb,0x6bd0d0bb -.long 0x2aefefc5,0x2aefefc5 -.long 0xe5aaaa4f,0xe5aaaa4f -.long 0x16fbfbed,0x16fbfbed -.long 0xc5434386,0xc5434386 -.long 0xd74d4d9a,0xd74d4d9a -.long 0x55333366,0x55333366 -.long 0x94858511,0x94858511 -.long 0xcf45458a,0xcf45458a -.long 0x10f9f9e9,0x10f9f9e9 -.long 0x06020204,0x06020204 -.long 0x817f7ffe,0x817f7ffe -.long 0xf05050a0,0xf05050a0 -.long 0x443c3c78,0x443c3c78 -.long 0xba9f9f25,0xba9f9f25 -.long 0xe3a8a84b,0xe3a8a84b -.long 0xf35151a2,0xf35151a2 -.long 0xfea3a35d,0xfea3a35d -.long 0xc0404080,0xc0404080 -.long 0x8a8f8f05,0x8a8f8f05 -.long 0xad92923f,0xad92923f -.long 0xbc9d9d21,0xbc9d9d21 -.long 0x48383870,0x48383870 -.long 0x04f5f5f1,0x04f5f5f1 -.long 0xdfbcbc63,0xdfbcbc63 -.long 0xc1b6b677,0xc1b6b677 -.long 0x75dadaaf,0x75dadaaf -.long 0x63212142,0x63212142 -.long 0x30101020,0x30101020 -.long 0x1affffe5,0x1affffe5 -.long 0x0ef3f3fd,0x0ef3f3fd -.long 0x6dd2d2bf,0x6dd2d2bf -.long 0x4ccdcd81,0x4ccdcd81 -.long 0x140c0c18,0x140c0c18 -.long 0x35131326,0x35131326 -.long 0x2fececc3,0x2fececc3 -.long 0xe15f5fbe,0xe15f5fbe -.long 0xa2979735,0xa2979735 -.long 0xcc444488,0xcc444488 -.long 0x3917172e,0x3917172e -.long 0x57c4c493,0x57c4c493 -.long 0xf2a7a755,0xf2a7a755 -.long 0x827e7efc,0x827e7efc -.long 0x473d3d7a,0x473d3d7a -.long 0xac6464c8,0xac6464c8 -.long 0xe75d5dba,0xe75d5dba -.long 0x2b191932,0x2b191932 -.long 0x957373e6,0x957373e6 -.long 0xa06060c0,0xa06060c0 -.long 0x98818119,0x98818119 -.long 0xd14f4f9e,0xd14f4f9e -.long 0x7fdcdca3,0x7fdcdca3 -.long 0x66222244,0x66222244 -.long 0x7e2a2a54,0x7e2a2a54 -.long 0xab90903b,0xab90903b -.long 0x8388880b,0x8388880b -.long 0xca46468c,0xca46468c -.long 0x29eeeec7,0x29eeeec7 -.long 0xd3b8b86b,0xd3b8b86b -.long 0x3c141428,0x3c141428 -.long 0x79dedea7,0x79dedea7 -.long 0xe25e5ebc,0xe25e5ebc -.long 0x1d0b0b16,0x1d0b0b16 -.long 0x76dbdbad,0x76dbdbad -.long 0x3be0e0db,0x3be0e0db -.long 0x56323264,0x56323264 -.long 0x4e3a3a74,0x4e3a3a74 -.long 0x1e0a0a14,0x1e0a0a14 -.long 0xdb494992,0xdb494992 -.long 0x0a06060c,0x0a06060c -.long 0x6c242448,0x6c242448 -.long 0xe45c5cb8,0xe45c5cb8 -.long 0x5dc2c29f,0x5dc2c29f -.long 0x6ed3d3bd,0x6ed3d3bd -.long 0xefacac43,0xefacac43 -.long 0xa66262c4,0xa66262c4 -.long 0xa8919139,0xa8919139 -.long 0xa4959531,0xa4959531 -.long 0x37e4e4d3,0x37e4e4d3 -.long 0x8b7979f2,0x8b7979f2 -.long 0x32e7e7d5,0x32e7e7d5 -.long 0x43c8c88b,0x43c8c88b -.long 0x5937376e,0x5937376e -.long 0xb76d6dda,0xb76d6dda -.long 0x8c8d8d01,0x8c8d8d01 -.long 0x64d5d5b1,0x64d5d5b1 -.long 0xd24e4e9c,0xd24e4e9c -.long 0xe0a9a949,0xe0a9a949 -.long 0xb46c6cd8,0xb46c6cd8 -.long 0xfa5656ac,0xfa5656ac -.long 0x07f4f4f3,0x07f4f4f3 -.long 0x25eaeacf,0x25eaeacf -.long 0xaf6565ca,0xaf6565ca -.long 0x8e7a7af4,0x8e7a7af4 -.long 0xe9aeae47,0xe9aeae47 -.long 0x18080810,0x18080810 -.long 0xd5baba6f,0xd5baba6f -.long 0x887878f0,0x887878f0 -.long 0x6f25254a,0x6f25254a -.long 0x722e2e5c,0x722e2e5c -.long 0x241c1c38,0x241c1c38 -.long 0xf1a6a657,0xf1a6a657 -.long 0xc7b4b473,0xc7b4b473 -.long 0x51c6c697,0x51c6c697 -.long 0x23e8e8cb,0x23e8e8cb -.long 0x7cdddda1,0x7cdddda1 -.long 0x9c7474e8,0x9c7474e8 -.long 0x211f1f3e,0x211f1f3e -.long 0xdd4b4b96,0xdd4b4b96 -.long 0xdcbdbd61,0xdcbdbd61 -.long 0x868b8b0d,0x868b8b0d -.long 0x858a8a0f,0x858a8a0f -.long 0x907070e0,0x907070e0 -.long 0x423e3e7c,0x423e3e7c -.long 0xc4b5b571,0xc4b5b571 -.long 0xaa6666cc,0xaa6666cc -.long 0xd8484890,0xd8484890 -.long 0x05030306,0x05030306 -.long 0x01f6f6f7,0x01f6f6f7 -.long 0x120e0e1c,0x120e0e1c -.long 0xa36161c2,0xa36161c2 -.long 0x5f35356a,0x5f35356a -.long 0xf95757ae,0xf95757ae -.long 0xd0b9b969,0xd0b9b969 -.long 0x91868617,0x91868617 -.long 0x58c1c199,0x58c1c199 -.long 0x271d1d3a,0x271d1d3a -.long 0xb99e9e27,0xb99e9e27 -.long 0x38e1e1d9,0x38e1e1d9 -.long 0x13f8f8eb,0x13f8f8eb -.long 0xb398982b,0xb398982b -.long 0x33111122,0x33111122 -.long 0xbb6969d2,0xbb6969d2 -.long 0x70d9d9a9,0x70d9d9a9 -.long 0x898e8e07,0x898e8e07 -.long 0xa7949433,0xa7949433 -.long 0xb69b9b2d,0xb69b9b2d -.long 0x221e1e3c,0x221e1e3c -.long 0x92878715,0x92878715 -.long 0x20e9e9c9,0x20e9e9c9 -.long 0x49cece87,0x49cece87 -.long 0xff5555aa,0xff5555aa -.long 0x78282850,0x78282850 -.long 0x7adfdfa5,0x7adfdfa5 -.long 0x8f8c8c03,0x8f8c8c03 -.long 0xf8a1a159,0xf8a1a159 -.long 0x80898909,0x80898909 -.long 0x170d0d1a,0x170d0d1a -.long 0xdabfbf65,0xdabfbf65 -.long 0x31e6e6d7,0x31e6e6d7 -.long 0xc6424284,0xc6424284 -.long 0xb86868d0,0xb86868d0 -.long 0xc3414182,0xc3414182 -.long 0xb0999929,0xb0999929 -.long 0x772d2d5a,0x772d2d5a -.long 0x110f0f1e,0x110f0f1e -.long 0xcbb0b07b,0xcbb0b07b -.long 0xfc5454a8,0xfc5454a8 -.long 0xd6bbbb6d,0xd6bbbb6d -.long 0x3a16162c,0x3a16162c -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.long 0x00000001, 0x00000002, 0x00000004, 0x00000008 -.long 0x00000010, 0x00000020, 0x00000040, 0x00000080 -.long 0x0000001b, 0x00000036, 0x80808080, 0x80808080 -.long 0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b -.align 64 -.LAES_Td: -.long 0x50a7f451,0x50a7f451 -.long 0x5365417e,0x5365417e -.long 0xc3a4171a,0xc3a4171a -.long 0x965e273a,0x965e273a -.long 0xcb6bab3b,0xcb6bab3b -.long 0xf1459d1f,0xf1459d1f -.long 0xab58faac,0xab58faac -.long 0x9303e34b,0x9303e34b -.long 0x55fa3020,0x55fa3020 -.long 0xf66d76ad,0xf66d76ad -.long 0x9176cc88,0x9176cc88 -.long 0x254c02f5,0x254c02f5 -.long 0xfcd7e54f,0xfcd7e54f -.long 0xd7cb2ac5,0xd7cb2ac5 -.long 0x80443526,0x80443526 -.long 0x8fa362b5,0x8fa362b5 -.long 0x495ab1de,0x495ab1de -.long 0x671bba25,0x671bba25 -.long 0x980eea45,0x980eea45 -.long 0xe1c0fe5d,0xe1c0fe5d -.long 0x02752fc3,0x02752fc3 -.long 0x12f04c81,0x12f04c81 -.long 0xa397468d,0xa397468d -.long 0xc6f9d36b,0xc6f9d36b -.long 0xe75f8f03,0xe75f8f03 -.long 0x959c9215,0x959c9215 -.long 0xeb7a6dbf,0xeb7a6dbf -.long 0xda595295,0xda595295 -.long 0x2d83bed4,0x2d83bed4 -.long 0xd3217458,0xd3217458 -.long 0x2969e049,0x2969e049 -.long 0x44c8c98e,0x44c8c98e -.long 0x6a89c275,0x6a89c275 -.long 0x78798ef4,0x78798ef4 -.long 0x6b3e5899,0x6b3e5899 -.long 0xdd71b927,0xdd71b927 -.long 0xb64fe1be,0xb64fe1be -.long 0x17ad88f0,0x17ad88f0 -.long 0x66ac20c9,0x66ac20c9 -.long 0xb43ace7d,0xb43ace7d -.long 0x184adf63,0x184adf63 -.long 0x82311ae5,0x82311ae5 -.long 0x60335197,0x60335197 -.long 0x457f5362,0x457f5362 -.long 0xe07764b1,0xe07764b1 -.long 0x84ae6bbb,0x84ae6bbb -.long 0x1ca081fe,0x1ca081fe -.long 0x942b08f9,0x942b08f9 -.long 0x58684870,0x58684870 -.long 0x19fd458f,0x19fd458f -.long 0x876cde94,0x876cde94 -.long 0xb7f87b52,0xb7f87b52 -.long 0x23d373ab,0x23d373ab -.long 0xe2024b72,0xe2024b72 -.long 0x578f1fe3,0x578f1fe3 -.long 0x2aab5566,0x2aab5566 -.long 0x0728ebb2,0x0728ebb2 -.long 0x03c2b52f,0x03c2b52f -.long 0x9a7bc586,0x9a7bc586 -.long 0xa50837d3,0xa50837d3 -.long 0xf2872830,0xf2872830 -.long 0xb2a5bf23,0xb2a5bf23 -.long 0xba6a0302,0xba6a0302 -.long 0x5c8216ed,0x5c8216ed -.long 0x2b1ccf8a,0x2b1ccf8a -.long 0x92b479a7,0x92b479a7 -.long 0xf0f207f3,0xf0f207f3 -.long 0xa1e2694e,0xa1e2694e -.long 0xcdf4da65,0xcdf4da65 -.long 0xd5be0506,0xd5be0506 -.long 0x1f6234d1,0x1f6234d1 -.long 0x8afea6c4,0x8afea6c4 -.long 0x9d532e34,0x9d532e34 -.long 0xa055f3a2,0xa055f3a2 -.long 0x32e18a05,0x32e18a05 -.long 0x75ebf6a4,0x75ebf6a4 -.long 0x39ec830b,0x39ec830b -.long 0xaaef6040,0xaaef6040 -.long 0x069f715e,0x069f715e -.long 0x51106ebd,0x51106ebd -.long 0xf98a213e,0xf98a213e -.long 0x3d06dd96,0x3d06dd96 -.long 0xae053edd,0xae053edd -.long 0x46bde64d,0x46bde64d -.long 0xb58d5491,0xb58d5491 -.long 0x055dc471,0x055dc471 -.long 0x6fd40604,0x6fd40604 -.long 0xff155060,0xff155060 -.long 0x24fb9819,0x24fb9819 -.long 0x97e9bdd6,0x97e9bdd6 -.long 0xcc434089,0xcc434089 -.long 0x779ed967,0x779ed967 -.long 0xbd42e8b0,0xbd42e8b0 -.long 0x888b8907,0x888b8907 -.long 0x385b19e7,0x385b19e7 -.long 0xdbeec879,0xdbeec879 -.long 0x470a7ca1,0x470a7ca1 -.long 0xe90f427c,0xe90f427c -.long 0xc91e84f8,0xc91e84f8 -.long 0x00000000,0x00000000 -.long 0x83868009,0x83868009 -.long 0x48ed2b32,0x48ed2b32 -.long 0xac70111e,0xac70111e -.long 0x4e725a6c,0x4e725a6c -.long 0xfbff0efd,0xfbff0efd -.long 0x5638850f,0x5638850f -.long 0x1ed5ae3d,0x1ed5ae3d -.long 0x27392d36,0x27392d36 -.long 0x64d90f0a,0x64d90f0a -.long 0x21a65c68,0x21a65c68 -.long 0xd1545b9b,0xd1545b9b -.long 0x3a2e3624,0x3a2e3624 -.long 0xb1670a0c,0xb1670a0c -.long 0x0fe75793,0x0fe75793 -.long 0xd296eeb4,0xd296eeb4 -.long 0x9e919b1b,0x9e919b1b -.long 0x4fc5c080,0x4fc5c080 -.long 0xa220dc61,0xa220dc61 -.long 0x694b775a,0x694b775a -.long 0x161a121c,0x161a121c -.long 0x0aba93e2,0x0aba93e2 -.long 0xe52aa0c0,0xe52aa0c0 -.long 0x43e0223c,0x43e0223c -.long 0x1d171b12,0x1d171b12 -.long 0x0b0d090e,0x0b0d090e -.long 0xadc78bf2,0xadc78bf2 -.long 0xb9a8b62d,0xb9a8b62d -.long 0xc8a91e14,0xc8a91e14 -.long 0x8519f157,0x8519f157 -.long 0x4c0775af,0x4c0775af -.long 0xbbdd99ee,0xbbdd99ee -.long 0xfd607fa3,0xfd607fa3 -.long 0x9f2601f7,0x9f2601f7 -.long 0xbcf5725c,0xbcf5725c -.long 0xc53b6644,0xc53b6644 -.long 0x347efb5b,0x347efb5b -.long 0x7629438b,0x7629438b -.long 0xdcc623cb,0xdcc623cb -.long 0x68fcedb6,0x68fcedb6 -.long 0x63f1e4b8,0x63f1e4b8 -.long 0xcadc31d7,0xcadc31d7 -.long 0x10856342,0x10856342 -.long 0x40229713,0x40229713 -.long 0x2011c684,0x2011c684 -.long 0x7d244a85,0x7d244a85 -.long 0xf83dbbd2,0xf83dbbd2 -.long 0x1132f9ae,0x1132f9ae -.long 0x6da129c7,0x6da129c7 -.long 0x4b2f9e1d,0x4b2f9e1d -.long 0xf330b2dc,0xf330b2dc -.long 0xec52860d,0xec52860d -.long 0xd0e3c177,0xd0e3c177 -.long 0x6c16b32b,0x6c16b32b -.long 0x99b970a9,0x99b970a9 -.long 0xfa489411,0xfa489411 -.long 0x2264e947,0x2264e947 -.long 0xc48cfca8,0xc48cfca8 -.long 0x1a3ff0a0,0x1a3ff0a0 -.long 0xd82c7d56,0xd82c7d56 -.long 0xef903322,0xef903322 -.long 0xc74e4987,0xc74e4987 -.long 0xc1d138d9,0xc1d138d9 -.long 0xfea2ca8c,0xfea2ca8c -.long 0x360bd498,0x360bd498 -.long 0xcf81f5a6,0xcf81f5a6 -.long 0x28de7aa5,0x28de7aa5 -.long 0x268eb7da,0x268eb7da -.long 0xa4bfad3f,0xa4bfad3f -.long 0xe49d3a2c,0xe49d3a2c -.long 0x0d927850,0x0d927850 -.long 0x9bcc5f6a,0x9bcc5f6a -.long 0x62467e54,0x62467e54 -.long 0xc2138df6,0xc2138df6 -.long 0xe8b8d890,0xe8b8d890 -.long 0x5ef7392e,0x5ef7392e -.long 0xf5afc382,0xf5afc382 -.long 0xbe805d9f,0xbe805d9f -.long 0x7c93d069,0x7c93d069 -.long 0xa92dd56f,0xa92dd56f -.long 0xb31225cf,0xb31225cf -.long 0x3b99acc8,0x3b99acc8 -.long 0xa77d1810,0xa77d1810 -.long 0x6e639ce8,0x6e639ce8 -.long 0x7bbb3bdb,0x7bbb3bdb -.long 0x097826cd,0x097826cd -.long 0xf418596e,0xf418596e -.long 0x01b79aec,0x01b79aec -.long 0xa89a4f83,0xa89a4f83 -.long 0x656e95e6,0x656e95e6 -.long 0x7ee6ffaa,0x7ee6ffaa -.long 0x08cfbc21,0x08cfbc21 -.long 0xe6e815ef,0xe6e815ef -.long 0xd99be7ba,0xd99be7ba -.long 0xce366f4a,0xce366f4a -.long 0xd4099fea,0xd4099fea -.long 0xd67cb029,0xd67cb029 -.long 0xafb2a431,0xafb2a431 -.long 0x31233f2a,0x31233f2a -.long 0x3094a5c6,0x3094a5c6 -.long 0xc066a235,0xc066a235 -.long 0x37bc4e74,0x37bc4e74 -.long 0xa6ca82fc,0xa6ca82fc -.long 0xb0d090e0,0xb0d090e0 -.long 0x15d8a733,0x15d8a733 -.long 0x4a9804f1,0x4a9804f1 -.long 0xf7daec41,0xf7daec41 -.long 0x0e50cd7f,0x0e50cd7f -.long 0x2ff69117,0x2ff69117 -.long 0x8dd64d76,0x8dd64d76 -.long 0x4db0ef43,0x4db0ef43 -.long 0x544daacc,0x544daacc -.long 0xdf0496e4,0xdf0496e4 -.long 0xe3b5d19e,0xe3b5d19e -.long 0x1b886a4c,0x1b886a4c -.long 0xb81f2cc1,0xb81f2cc1 -.long 0x7f516546,0x7f516546 -.long 0x04ea5e9d,0x04ea5e9d -.long 0x5d358c01,0x5d358c01 -.long 0x737487fa,0x737487fa -.long 0x2e410bfb,0x2e410bfb -.long 0x5a1d67b3,0x5a1d67b3 -.long 0x52d2db92,0x52d2db92 -.long 0x335610e9,0x335610e9 -.long 0x1347d66d,0x1347d66d -.long 0x8c61d79a,0x8c61d79a -.long 0x7a0ca137,0x7a0ca137 -.long 0x8e14f859,0x8e14f859 -.long 0x893c13eb,0x893c13eb -.long 0xee27a9ce,0xee27a9ce -.long 0x35c961b7,0x35c961b7 -.long 0xede51ce1,0xede51ce1 -.long 0x3cb1477a,0x3cb1477a -.long 0x59dfd29c,0x59dfd29c -.long 0x3f73f255,0x3f73f255 -.long 0x79ce1418,0x79ce1418 -.long 0xbf37c773,0xbf37c773 -.long 0xeacdf753,0xeacdf753 -.long 0x5baafd5f,0x5baafd5f -.long 0x146f3ddf,0x146f3ddf -.long 0x86db4478,0x86db4478 -.long 0x81f3afca,0x81f3afca -.long 0x3ec468b9,0x3ec468b9 -.long 0x2c342438,0x2c342438 -.long 0x5f40a3c2,0x5f40a3c2 -.long 0x72c31d16,0x72c31d16 -.long 0x0c25e2bc,0x0c25e2bc -.long 0x8b493c28,0x8b493c28 -.long 0x41950dff,0x41950dff -.long 0x7101a839,0x7101a839 -.long 0xdeb30c08,0xdeb30c08 -.long 0x9ce4b4d8,0x9ce4b4d8 -.long 0x90c15664,0x90c15664 -.long 0x6184cb7b,0x6184cb7b -.long 0x70b632d5,0x70b632d5 -.long 0x745c6c48,0x745c6c48 -.long 0x4257b8d0,0x4257b8d0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/aes/aesni-mb-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/aesni-mb-x86_64.s deleted file mode 100644 index d493797832987c..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/aesni-mb-x86_64.s +++ /dev/null @@ -1,1435 +0,0 @@ -.text - - - -.globl aesni_multi_cbc_encrypt -.type aesni_multi_cbc_encrypt,@function -.align 32 -aesni_multi_cbc_encrypt: - cmpl $2,%edx - jb .Lenc_non_avx - movl OPENSSL_ia32cap_P+4(%rip),%ecx - testl $268435456,%ecx - jnz _avx_cbc_enc_shortcut - jmp .Lenc_non_avx -.align 16 -.Lenc_non_avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -.Lenc4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -.Lenc4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz .Lenc4x_done - - movups 16-120(%rsi),%xmm1 - pxor %xmm12,%xmm2 - movups 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm3 - movl 240-120(%rsi),%eax - pxor %xmm12,%xmm4 - movdqu (%r8),%xmm6 - pxor %xmm12,%xmm5 - movdqu (%r9),%xmm7 - pxor %xmm6,%xmm2 - movdqu (%r10),%xmm8 - pxor %xmm7,%xmm3 - movdqu (%r11),%xmm9 - pxor %xmm8,%xmm4 - pxor %xmm9,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp .Loop_enc4x - -.align 32 -.Loop_enc4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,220,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,220,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r10,%rbx,1) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,220,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,220,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,220,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,220,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,220,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,220,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,220,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,220,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 160-120(%rsi),%xmm0 - - jb .Lenc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 192-120(%rsi),%xmm0 - - je .Lenc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 224-120(%rsi),%xmm0 - jmp .Lenc4x_tail - -.align 32 -.Lenc4x_tail: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqu (%r8,%rbx,1),%xmm6 - movdqu 16-120(%rsi),%xmm1 - -.byte 102,15,56,221,208 - movdqu (%r9,%rbx,1),%xmm7 - pxor %xmm12,%xmm6 -.byte 102,15,56,221,216 - movdqu (%r10,%rbx,1),%xmm8 - pxor %xmm12,%xmm7 -.byte 102,15,56,221,224 - movdqu (%r11,%rbx,1),%xmm9 - pxor %xmm12,%xmm8 -.byte 102,15,56,221,232 - movdqu 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - pxor %xmm6,%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - pxor %xmm7,%xmm3 - movups %xmm4,-16(%r14,%rbx,1) - pxor %xmm8,%xmm4 - movups %xmm5,-16(%r15,%rbx,1) - pxor %xmm9,%xmm5 - - decl %edx - jnz .Loop_enc4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - - - - - - - - - - leaq 160(%rdi),%rdi - decl %edx - jnz .Lenc4x_loop_grande - -.Lenc4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lenc4x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_encrypt,.-aesni_multi_cbc_encrypt - -.globl aesni_multi_cbc_decrypt -.type aesni_multi_cbc_decrypt,@function -.align 32 -aesni_multi_cbc_decrypt: - cmpl $2,%edx - jb .Ldec_non_avx - movl OPENSSL_ia32cap_P+4(%rip),%ecx - testl $268435456,%ecx - jnz _avx_cbc_dec_shortcut - jmp .Ldec_non_avx -.align 16 -.Ldec_non_avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -.Ldec4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -.Ldec4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm6 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm7 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm8 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm9 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz .Ldec4x_done - - movups 16-120(%rsi),%xmm1 - movups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - movdqu (%r8),%xmm2 - movdqu (%r9),%xmm3 - pxor %xmm12,%xmm2 - movdqu (%r10),%xmm4 - pxor %xmm12,%xmm3 - movdqu (%r11),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp .Loop_dec4x - -.align 32 -.Loop_dec4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,222,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,222,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r11,%rbx,1) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,222,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,222,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,222,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,222,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,222,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,222,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,222,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,222,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 160-120(%rsi),%xmm0 - - jb .Ldec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 192-120(%rsi),%xmm0 - - je .Ldec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 224-120(%rsi),%xmm0 - jmp .Ldec4x_tail - -.align 32 -.Ldec4x_tail: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,222,233 - movdqu 16-120(%rsi),%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm0,%xmm9 - movdqu 32-120(%rsi),%xmm0 - -.byte 102,15,56,223,214 -.byte 102,15,56,223,223 - movdqu -16(%r8,%rbx,1),%xmm6 - movdqu -16(%r9,%rbx,1),%xmm7 -.byte 102,65,15,56,223,224 -.byte 102,65,15,56,223,233 - movdqu -16(%r10,%rbx,1),%xmm8 - movdqu -16(%r11,%rbx,1),%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - movdqu (%r8,%rbx,1),%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - movdqu (%r9,%rbx,1),%xmm3 - pxor %xmm12,%xmm2 - movups %xmm4,-16(%r14,%rbx,1) - movdqu (%r10,%rbx,1),%xmm4 - pxor %xmm12,%xmm3 - movups %xmm5,-16(%r15,%rbx,1) - movdqu (%r11,%rbx,1),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - - decl %edx - jnz .Loop_dec4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - leaq 160(%rdi),%rdi - decl %edx - jnz .Ldec4x_loop_grande - -.Ldec4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Ldec4x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_decrypt,.-aesni_multi_cbc_decrypt -.type aesni_multi_cbc_encrypt_avx,@function -.align 32 -aesni_multi_cbc_encrypt_avx: -_avx_cbc_enc_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - - - subq $192,%rsp - andq $-128,%rsp - movq %rax,16(%rsp) - -.Lenc8x_body: - vzeroupper - vmovdqu (%rsi),%xmm15 - leaq 120(%rsi),%rsi - leaq 160(%rdi),%rdi - shrl $1,%edx - -.Lenc8x_loop_grande: - - xorl %edx,%edx - movl -144(%rdi),%ecx - movq -160(%rdi),%r8 - cmpl %edx,%ecx - movq -152(%rdi),%rbx - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -136(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - subq %r8,%rbx - movq %rbx,64(%rsp) - movl -104(%rdi),%ecx - movq -120(%rdi),%r9 - cmpl %edx,%ecx - movq -112(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -96(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - subq %r9,%rbp - movq %rbp,72(%rsp) - movl -64(%rdi),%ecx - movq -80(%rdi),%r10 - cmpl %edx,%ecx - movq -72(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -56(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - subq %r10,%rbp - movq %rbp,80(%rsp) - movl -24(%rdi),%ecx - movq -40(%rdi),%r11 - cmpl %edx,%ecx - movq -32(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -16(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - subq %r11,%rbp - movq %rbp,88(%rsp) - movl 16(%rdi),%ecx - movq 0(%rdi),%r12 - cmpl %edx,%ecx - movq 8(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 24(%rdi),%xmm6 - movl %ecx,48(%rsp) - cmovleq %rsp,%r12 - subq %r12,%rbp - movq %rbp,96(%rsp) - movl 56(%rdi),%ecx - movq 40(%rdi),%r13 - cmpl %edx,%ecx - movq 48(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 64(%rdi),%xmm7 - movl %ecx,52(%rsp) - cmovleq %rsp,%r13 - subq %r13,%rbp - movq %rbp,104(%rsp) - movl 96(%rdi),%ecx - movq 80(%rdi),%r14 - cmpl %edx,%ecx - movq 88(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 104(%rdi),%xmm8 - movl %ecx,56(%rsp) - cmovleq %rsp,%r14 - subq %r14,%rbp - movq %rbp,112(%rsp) - movl 136(%rdi),%ecx - movq 120(%rdi),%r15 - cmpl %edx,%ecx - movq 128(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 144(%rdi),%xmm9 - movl %ecx,60(%rsp) - cmovleq %rsp,%r15 - subq %r15,%rbp - movq %rbp,120(%rsp) - testl %edx,%edx - jz .Lenc8x_done - - vmovups 16-120(%rsi),%xmm1 - vmovups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - - vpxor (%r8),%xmm15,%xmm10 - leaq 128(%rsp),%rbp - vpxor (%r9),%xmm15,%xmm11 - vpxor (%r10),%xmm15,%xmm12 - vpxor (%r11),%xmm15,%xmm13 - vpxor %xmm10,%xmm2,%xmm2 - vpxor (%r12),%xmm15,%xmm10 - vpxor %xmm11,%xmm3,%xmm3 - vpxor (%r13),%xmm15,%xmm11 - vpxor %xmm12,%xmm4,%xmm4 - vpxor (%r14),%xmm15,%xmm12 - vpxor %xmm13,%xmm5,%xmm5 - vpxor (%r15),%xmm15,%xmm13 - vpxor %xmm10,%xmm6,%xmm6 - movl $1,%ecx - vpxor %xmm11,%xmm7,%xmm7 - vpxor %xmm12,%xmm8,%xmm8 - vpxor %xmm13,%xmm9,%xmm9 - jmp .Loop_enc8x - -.align 32 -.Loop_enc8x: - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+0(%rsp),%ecx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r8) - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r8,%rbx,1),%rbx - cmovgeq %rsp,%r8 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r8,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r8),%xmm15,%xmm10 - movq %rbx,64+0(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -72(%rsi),%xmm1 - leaq 16(%r8,%rbx,1),%r8 - vmovdqu %xmm10,0(%rbp) - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+4(%rsp),%ecx - movq 64+8(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r9) - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r9,%rbx,1),%rbx - cmovgeq %rsp,%r9 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r9,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r9),%xmm15,%xmm11 - movq %rbx,64+8(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups -56(%rsi),%xmm0 - leaq 16(%r9,%rbx,1),%r9 - vmovdqu %xmm11,16(%rbp) - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+8(%rsp),%ecx - movq 64+16(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r10) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r8) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r10,%rbx,1),%rbx - cmovgeq %rsp,%r10 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r10,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r10),%xmm15,%xmm12 - movq %rbx,64+16(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -40(%rsi),%xmm1 - leaq 16(%r10,%rbx,1),%r10 - vmovdqu %xmm12,32(%rbp) - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+12(%rsp),%ecx - movq 64+24(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r11) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r9) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r11,%rbx,1),%rbx - cmovgeq %rsp,%r11 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r11,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r11),%xmm15,%xmm13 - movq %rbx,64+24(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups -24(%rsi),%xmm0 - leaq 16(%r11,%rbx,1),%r11 - vmovdqu %xmm13,48(%rbp) - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+16(%rsp),%ecx - movq 64+32(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r12) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r10) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r12,%rbx,1),%rbx - cmovgeq %rsp,%r12 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r12,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r12),%xmm15,%xmm10 - movq %rbx,64+32(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -8(%rsi),%xmm1 - leaq 16(%r12,%rbx,1),%r12 - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+20(%rsp),%ecx - movq 64+40(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r13) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r11) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%rbx,%r13,1),%rbx - cmovgeq %rsp,%r13 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r13,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r13),%xmm15,%xmm11 - movq %rbx,64+40(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 8(%rsi),%xmm0 - leaq 16(%r13,%rbx,1),%r13 - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+24(%rsp),%ecx - movq 64+48(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r14) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r12) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r14,%rbx,1),%rbx - cmovgeq %rsp,%r14 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r14,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r14),%xmm15,%xmm12 - movq %rbx,64+48(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 24(%rsi),%xmm1 - leaq 16(%r14,%rbx,1),%r14 - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+28(%rsp),%ecx - movq 64+56(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r15) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r13) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r15,%rbx,1),%rbx - cmovgeq %rsp,%r15 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r15,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r15),%xmm15,%xmm13 - movq %rbx,64+56(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 40(%rsi),%xmm0 - leaq 16(%r15,%rbx,1),%r15 - vmovdqu 32(%rsp),%xmm14 - prefetcht0 15(%r14) - prefetcht0 15(%r15) - cmpl $11,%eax - jb .Lenc8x_tail - - vaesenc %xmm1,%xmm2,%xmm2 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vaesenc %xmm1,%xmm7,%xmm7 - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 176-120(%rsi),%xmm1 - - vaesenc %xmm0,%xmm2,%xmm2 - vaesenc %xmm0,%xmm3,%xmm3 - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - vaesenc %xmm0,%xmm6,%xmm6 - vaesenc %xmm0,%xmm7,%xmm7 - vaesenc %xmm0,%xmm8,%xmm8 - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 192-120(%rsi),%xmm0 - je .Lenc8x_tail - - vaesenc %xmm1,%xmm2,%xmm2 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vaesenc %xmm1,%xmm7,%xmm7 - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 208-120(%rsi),%xmm1 - - vaesenc %xmm0,%xmm2,%xmm2 - vaesenc %xmm0,%xmm3,%xmm3 - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - vaesenc %xmm0,%xmm6,%xmm6 - vaesenc %xmm0,%xmm7,%xmm7 - vaesenc %xmm0,%xmm8,%xmm8 - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 224-120(%rsi),%xmm0 - -.Lenc8x_tail: - vaesenc %xmm1,%xmm2,%xmm2 - vpxor %xmm15,%xmm15,%xmm15 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vpaddd %xmm14,%xmm15,%xmm15 - vmovdqu 48(%rsp),%xmm14 - vaesenc %xmm1,%xmm7,%xmm7 - movq 64(%rsp),%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 16-120(%rsi),%xmm1 - - vaesenclast %xmm0,%xmm2,%xmm2 - vmovdqa %xmm15,32(%rsp) - vpxor %xmm15,%xmm15,%xmm15 - vaesenclast %xmm0,%xmm3,%xmm3 - vaesenclast %xmm0,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesenclast %xmm0,%xmm5,%xmm5 - vaesenclast %xmm0,%xmm6,%xmm6 - vpaddd %xmm15,%xmm14,%xmm14 - vmovdqu -120(%rsi),%xmm15 - vaesenclast %xmm0,%xmm7,%xmm7 - vaesenclast %xmm0,%xmm8,%xmm8 - vmovdqa %xmm14,48(%rsp) - vaesenclast %xmm0,%xmm9,%xmm9 - vmovups 32-120(%rsi),%xmm0 - - vmovups %xmm2,-16(%r8) - subq %rbx,%r8 - vpxor 0(%rbp),%xmm2,%xmm2 - vmovups %xmm3,-16(%r9) - subq 72(%rsp),%r9 - vpxor 16(%rbp),%xmm3,%xmm3 - vmovups %xmm4,-16(%r10) - subq 80(%rsp),%r10 - vpxor 32(%rbp),%xmm4,%xmm4 - vmovups %xmm5,-16(%r11) - subq 88(%rsp),%r11 - vpxor 48(%rbp),%xmm5,%xmm5 - vmovups %xmm6,-16(%r12) - subq 96(%rsp),%r12 - vpxor %xmm10,%xmm6,%xmm6 - vmovups %xmm7,-16(%r13) - subq 104(%rsp),%r13 - vpxor %xmm11,%xmm7,%xmm7 - vmovups %xmm8,-16(%r14) - subq 112(%rsp),%r14 - vpxor %xmm12,%xmm8,%xmm8 - vmovups %xmm9,-16(%r15) - subq 120(%rsp),%r15 - vpxor %xmm13,%xmm9,%xmm9 - - decl %edx - jnz .Loop_enc8x - - movq 16(%rsp),%rax - - - - - -.Lenc8x_done: - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lenc8x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_encrypt_avx,.-aesni_multi_cbc_encrypt_avx - -.type aesni_multi_cbc_decrypt_avx,@function -.align 32 -aesni_multi_cbc_decrypt_avx: -_avx_cbc_dec_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - - - - subq $256,%rsp - andq $-256,%rsp - subq $192,%rsp - movq %rax,16(%rsp) - -.Ldec8x_body: - vzeroupper - vmovdqu (%rsi),%xmm15 - leaq 120(%rsi),%rsi - leaq 160(%rdi),%rdi - shrl $1,%edx - -.Ldec8x_loop_grande: - - xorl %edx,%edx - movl -144(%rdi),%ecx - movq -160(%rdi),%r8 - cmpl %edx,%ecx - movq -152(%rdi),%rbx - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -136(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - subq %r8,%rbx - movq %rbx,64(%rsp) - vmovdqu %xmm2,192(%rsp) - movl -104(%rdi),%ecx - movq -120(%rdi),%r9 - cmpl %edx,%ecx - movq -112(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -96(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - subq %r9,%rbp - movq %rbp,72(%rsp) - vmovdqu %xmm3,208(%rsp) - movl -64(%rdi),%ecx - movq -80(%rdi),%r10 - cmpl %edx,%ecx - movq -72(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -56(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - subq %r10,%rbp - movq %rbp,80(%rsp) - vmovdqu %xmm4,224(%rsp) - movl -24(%rdi),%ecx - movq -40(%rdi),%r11 - cmpl %edx,%ecx - movq -32(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -16(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - subq %r11,%rbp - movq %rbp,88(%rsp) - vmovdqu %xmm5,240(%rsp) - movl 16(%rdi),%ecx - movq 0(%rdi),%r12 - cmpl %edx,%ecx - movq 8(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 24(%rdi),%xmm6 - movl %ecx,48(%rsp) - cmovleq %rsp,%r12 - subq %r12,%rbp - movq %rbp,96(%rsp) - vmovdqu %xmm6,256(%rsp) - movl 56(%rdi),%ecx - movq 40(%rdi),%r13 - cmpl %edx,%ecx - movq 48(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 64(%rdi),%xmm7 - movl %ecx,52(%rsp) - cmovleq %rsp,%r13 - subq %r13,%rbp - movq %rbp,104(%rsp) - vmovdqu %xmm7,272(%rsp) - movl 96(%rdi),%ecx - movq 80(%rdi),%r14 - cmpl %edx,%ecx - movq 88(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 104(%rdi),%xmm8 - movl %ecx,56(%rsp) - cmovleq %rsp,%r14 - subq %r14,%rbp - movq %rbp,112(%rsp) - vmovdqu %xmm8,288(%rsp) - movl 136(%rdi),%ecx - movq 120(%rdi),%r15 - cmpl %edx,%ecx - movq 128(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 144(%rdi),%xmm9 - movl %ecx,60(%rsp) - cmovleq %rsp,%r15 - subq %r15,%rbp - movq %rbp,120(%rsp) - vmovdqu %xmm9,304(%rsp) - testl %edx,%edx - jz .Ldec8x_done - - vmovups 16-120(%rsi),%xmm1 - vmovups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - leaq 192+128(%rsp),%rbp - - vmovdqu (%r8),%xmm2 - vmovdqu (%r9),%xmm3 - vmovdqu (%r10),%xmm4 - vmovdqu (%r11),%xmm5 - vmovdqu (%r12),%xmm6 - vmovdqu (%r13),%xmm7 - vmovdqu (%r14),%xmm8 - vmovdqu (%r15),%xmm9 - vmovdqu %xmm2,0(%rbp) - vpxor %xmm15,%xmm2,%xmm2 - vmovdqu %xmm3,16(%rbp) - vpxor %xmm15,%xmm3,%xmm3 - vmovdqu %xmm4,32(%rbp) - vpxor %xmm15,%xmm4,%xmm4 - vmovdqu %xmm5,48(%rbp) - vpxor %xmm15,%xmm5,%xmm5 - vmovdqu %xmm6,64(%rbp) - vpxor %xmm15,%xmm6,%xmm6 - vmovdqu %xmm7,80(%rbp) - vpxor %xmm15,%xmm7,%xmm7 - vmovdqu %xmm8,96(%rbp) - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu %xmm9,112(%rbp) - vpxor %xmm15,%xmm9,%xmm9 - xorq $0x80,%rbp - movl $1,%ecx - jmp .Loop_dec8x - -.align 32 -.Loop_dec8x: - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+0(%rsp),%ecx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r8) - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r8,%rbx,1),%rbx - cmovgeq %rsp,%r8 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r8,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r8),%xmm10 - movq %rbx,64+0(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -72(%rsi),%xmm1 - leaq 16(%r8,%rbx,1),%r8 - vmovdqu %xmm10,128(%rsp) - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+4(%rsp),%ecx - movq 64+8(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r9) - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r9,%rbx,1),%rbx - cmovgeq %rsp,%r9 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r9,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r9),%xmm11 - movq %rbx,64+8(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups -56(%rsi),%xmm0 - leaq 16(%r9,%rbx,1),%r9 - vmovdqu %xmm11,144(%rsp) - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+8(%rsp),%ecx - movq 64+16(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r10) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r8) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r10,%rbx,1),%rbx - cmovgeq %rsp,%r10 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r10,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r10),%xmm12 - movq %rbx,64+16(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -40(%rsi),%xmm1 - leaq 16(%r10,%rbx,1),%r10 - vmovdqu %xmm12,160(%rsp) - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+12(%rsp),%ecx - movq 64+24(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r11) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r9) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r11,%rbx,1),%rbx - cmovgeq %rsp,%r11 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r11,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r11),%xmm13 - movq %rbx,64+24(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups -24(%rsi),%xmm0 - leaq 16(%r11,%rbx,1),%r11 - vmovdqu %xmm13,176(%rsp) - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+16(%rsp),%ecx - movq 64+32(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r12) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r10) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r12,%rbx,1),%rbx - cmovgeq %rsp,%r12 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r12,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r12),%xmm10 - movq %rbx,64+32(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -8(%rsi),%xmm1 - leaq 16(%r12,%rbx,1),%r12 - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+20(%rsp),%ecx - movq 64+40(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r13) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r11) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%rbx,%r13,1),%rbx - cmovgeq %rsp,%r13 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r13,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r13),%xmm11 - movq %rbx,64+40(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 8(%rsi),%xmm0 - leaq 16(%r13,%rbx,1),%r13 - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+24(%rsp),%ecx - movq 64+48(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r14) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r12) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r14,%rbx,1),%rbx - cmovgeq %rsp,%r14 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r14,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r14),%xmm12 - movq %rbx,64+48(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 24(%rsi),%xmm1 - leaq 16(%r14,%rbx,1),%r14 - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+28(%rsp),%ecx - movq 64+56(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r15) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r13) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r15,%rbx,1),%rbx - cmovgeq %rsp,%r15 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r15,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r15),%xmm13 - movq %rbx,64+56(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 40(%rsi),%xmm0 - leaq 16(%r15,%rbx,1),%r15 - vmovdqu 32(%rsp),%xmm14 - prefetcht0 15(%r14) - prefetcht0 15(%r15) - cmpl $11,%eax - jb .Ldec8x_tail - - vaesdec %xmm1,%xmm2,%xmm2 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vaesdec %xmm1,%xmm7,%xmm7 - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 176-120(%rsi),%xmm1 - - vaesdec %xmm0,%xmm2,%xmm2 - vaesdec %xmm0,%xmm3,%xmm3 - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - vaesdec %xmm0,%xmm6,%xmm6 - vaesdec %xmm0,%xmm7,%xmm7 - vaesdec %xmm0,%xmm8,%xmm8 - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 192-120(%rsi),%xmm0 - je .Ldec8x_tail - - vaesdec %xmm1,%xmm2,%xmm2 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vaesdec %xmm1,%xmm7,%xmm7 - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 208-120(%rsi),%xmm1 - - vaesdec %xmm0,%xmm2,%xmm2 - vaesdec %xmm0,%xmm3,%xmm3 - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - vaesdec %xmm0,%xmm6,%xmm6 - vaesdec %xmm0,%xmm7,%xmm7 - vaesdec %xmm0,%xmm8,%xmm8 - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 224-120(%rsi),%xmm0 - -.Ldec8x_tail: - vaesdec %xmm1,%xmm2,%xmm2 - vpxor %xmm15,%xmm15,%xmm15 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vpaddd %xmm14,%xmm15,%xmm15 - vmovdqu 48(%rsp),%xmm14 - vaesdec %xmm1,%xmm7,%xmm7 - movq 64(%rsp),%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 16-120(%rsi),%xmm1 - - vaesdeclast %xmm0,%xmm2,%xmm2 - vmovdqa %xmm15,32(%rsp) - vpxor %xmm15,%xmm15,%xmm15 - vaesdeclast %xmm0,%xmm3,%xmm3 - vpxor 0(%rbp),%xmm2,%xmm2 - vaesdeclast %xmm0,%xmm4,%xmm4 - vpxor 16(%rbp),%xmm3,%xmm3 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesdeclast %xmm0,%xmm5,%xmm5 - vpxor 32(%rbp),%xmm4,%xmm4 - vaesdeclast %xmm0,%xmm6,%xmm6 - vpxor 48(%rbp),%xmm5,%xmm5 - vpaddd %xmm15,%xmm14,%xmm14 - vmovdqu -120(%rsi),%xmm15 - vaesdeclast %xmm0,%xmm7,%xmm7 - vpxor 64(%rbp),%xmm6,%xmm6 - vaesdeclast %xmm0,%xmm8,%xmm8 - vpxor 80(%rbp),%xmm7,%xmm7 - vmovdqa %xmm14,48(%rsp) - vaesdeclast %xmm0,%xmm9,%xmm9 - vpxor 96(%rbp),%xmm8,%xmm8 - vmovups 32-120(%rsi),%xmm0 - - vmovups %xmm2,-16(%r8) - subq %rbx,%r8 - vmovdqu 128+0(%rsp),%xmm2 - vpxor 112(%rbp),%xmm9,%xmm9 - vmovups %xmm3,-16(%r9) - subq 72(%rsp),%r9 - vmovdqu %xmm2,0(%rbp) - vpxor %xmm15,%xmm2,%xmm2 - vmovdqu 128+16(%rsp),%xmm3 - vmovups %xmm4,-16(%r10) - subq 80(%rsp),%r10 - vmovdqu %xmm3,16(%rbp) - vpxor %xmm15,%xmm3,%xmm3 - vmovdqu 128+32(%rsp),%xmm4 - vmovups %xmm5,-16(%r11) - subq 88(%rsp),%r11 - vmovdqu %xmm4,32(%rbp) - vpxor %xmm15,%xmm4,%xmm4 - vmovdqu 128+48(%rsp),%xmm5 - vmovups %xmm6,-16(%r12) - subq 96(%rsp),%r12 - vmovdqu %xmm5,48(%rbp) - vpxor %xmm15,%xmm5,%xmm5 - vmovdqu %xmm10,64(%rbp) - vpxor %xmm10,%xmm15,%xmm6 - vmovups %xmm7,-16(%r13) - subq 104(%rsp),%r13 - vmovdqu %xmm11,80(%rbp) - vpxor %xmm11,%xmm15,%xmm7 - vmovups %xmm8,-16(%r14) - subq 112(%rsp),%r14 - vmovdqu %xmm12,96(%rbp) - vpxor %xmm12,%xmm15,%xmm8 - vmovups %xmm9,-16(%r15) - subq 120(%rsp),%r15 - vmovdqu %xmm13,112(%rbp) - vpxor %xmm13,%xmm15,%xmm9 - - xorq $128,%rbp - decl %edx - jnz .Loop_dec8x - - movq 16(%rsp),%rax - - - - - -.Ldec8x_done: - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Ldec8x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_decrypt_avx,.-aesni_multi_cbc_decrypt_avx diff --git a/deps/openssl/asm/x64-elf-gas/aes/aesni-sha1-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/aesni-sha1-x86_64.s deleted file mode 100644 index c7c53e8771e132..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/aesni-sha1-x86_64.s +++ /dev/null @@ -1,2985 +0,0 @@ -.text - - -.globl aesni_cbc_sha1_enc -.type aesni_cbc_sha1_enc,@function -.align 32 -aesni_cbc_sha1_enc: - - movl OPENSSL_ia32cap_P+0(%rip),%r10d - movq OPENSSL_ia32cap_P+4(%rip),%r11 - btq $61,%r11 - jc aesni_cbc_sha1_enc_shaext - andl $268435456,%r11d - andl $1073741824,%r10d - orl %r11d,%r10d - cmpl $1342177280,%r10d - je aesni_cbc_sha1_enc_avx - jmp aesni_cbc_sha1_enc_ssse3 - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc,.-aesni_cbc_sha1_enc -.type aesni_cbc_sha1_enc_ssse3,@function -.align 32 -aesni_cbc_sha1_enc_ssse3: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - movdqu (%r8),%xmm2 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - addq $64,%r10 - paddd %xmm13,%xmm4 -.byte 102,15,56,0,251 - paddd %xmm13,%xmm5 - paddd %xmm13,%xmm6 - movdqa %xmm4,0(%rsp) - psubd %xmm13,%xmm4 - movdqa %xmm5,16(%rsp) - psubd %xmm13,%xmm5 - movdqa %xmm6,32(%rsp) - psubd %xmm13,%xmm6 - movups -112(%r15),%xmm15 - movups 16-112(%r15),%xmm0 - jmp .Loop_ssse3 -.align 32 -.Loop_ssse3: - rorl $2,%ebx - movups 0(%r12),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm4,%xmm8 - xorl %edx,%esi - movdqa %xmm7,%xmm12 - paddd %xmm7,%xmm13 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm5,%xmm8 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm4,%xmm8 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm6,%xmm12 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm12,%xmm8 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm13,48(%rsp) - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - movdqa %xmm8,%xmm3 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm8,%xmm12 - xorl %ebx,%esi - pslldq $12,%xmm3 - paddd %xmm8,%xmm8 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm12 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm13 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm3 - addl %edx,%ecx - rorl $7,%edx - por %xmm12,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm13 - pxor %xmm3,%xmm8 - xorl %ebp,%edx - movdqa 0(%r11),%xmm3 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm13,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm5,%xmm9 - xorl %ebp,%esi - movdqa %xmm8,%xmm13 - paddd %xmm8,%xmm3 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm6,%xmm9 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm5,%xmm9 - addl %ebx,%eax - rorl $7,%ebx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - pxor %xmm7,%xmm13 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm13,%xmm9 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm3,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm9,%xmm12 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm9,%xmm13 - xorl %ecx,%esi - pslldq $12,%xmm12 - paddd %xmm9,%xmm9 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm3 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm12 - addl %ebp,%edx - rorl $7,%ebp - por %xmm13,%xmm9 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm3 - pxor %xmm12,%xmm9 - xorl %eax,%ebp - movdqa 16(%r11),%xmm12 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm3,%xmm9 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm6,%xmm10 - xorl %eax,%esi - movdqa %xmm9,%xmm3 - paddd %xmm9,%xmm12 - movl %ecx,%edi - addl 32(%rsp),%ebx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm7,%xmm10 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm3 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm6,%xmm10 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm8,%xmm3 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm3,%xmm10 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm12,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm10,%xmm13 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm10,%xmm3 - xorl %edx,%esi - pslldq $12,%xmm13 - paddd %xmm10,%xmm10 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm3 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm13,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm13 - addl %eax,%ebp - rorl $7,%eax - por %xmm3,%xmm10 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm12 - pxor %xmm13,%xmm10 - xorl %ebx,%eax - movdqa 16(%r11),%xmm13 - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - pxor %xmm12,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm7,%xmm11 - xorl %ebx,%esi - movdqa %xmm10,%xmm12 - paddd %xmm10,%xmm13 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm8,%xmm11 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm12 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm7,%xmm11 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm9,%xmm12 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm11 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm13,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm11,%xmm3 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm11,%xmm12 - xorl %ebp,%esi - pslldq $12,%xmm3 - paddd %xmm11,%xmm11 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm12 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm3,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - cmpl $11,%r8d - jb .Laesenclast1 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast1 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast1: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - por %xmm12,%xmm11 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm13 - pxor %xmm3,%xmm11 - xorl %ecx,%ebx - movdqa 16(%r11),%xmm3 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm13,%xmm11 - pshufd $238,%xmm10,%xmm13 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm8,%xmm4 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm11,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm5,%xmm4 - addl %esi,%edx - movups 16(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%r12,%r13,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %eax,%edi - movdqa %xmm3,%xmm12 - xorl %ebx,%eax - paddd %xmm11,%xmm3 - addl %ebp,%edx - pxor %xmm13,%xmm4 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm4,%xmm13 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm3,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm4 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm13 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - por %xmm13,%xmm4 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm11,%xmm3 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm9,%xmm5 - addl 16(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm4,%xmm3 - movl %eax,%edi - roll $5,%eax - pxor %xmm6,%xmm5 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebx - paddd %xmm4,%xmm12 - addl %eax,%ebp - pxor %xmm3,%xmm5 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm5,%xmm3 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm12,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm5 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm3 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm3,%xmm5 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm4,%xmm12 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm10,%xmm6 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm5,%xmm12 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm7,%xmm6 - addl %esi,%eax - xorl %edx,%edi - movdqa 32(%r11),%xmm3 - rorl $7,%ecx - paddd %xmm5,%xmm13 - addl %ebx,%eax - pxor %xmm12,%xmm6 - addl 36(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm6,%xmm12 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm13,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm6 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm12 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm12,%xmm6 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm5,%xmm13 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm6,%xmm13 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm8,%xmm7 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm3,%xmm12 - rorl $7,%edx - paddd %xmm6,%xmm3 - addl %ecx,%ebx - pxor %xmm13,%xmm7 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm7,%xmm13 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm3,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm7 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm13 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm13,%xmm7 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm6,%xmm3 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm4,%xmm8 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm7,%xmm3 - movl %edx,%edi - roll $5,%edx - pxor %xmm9,%xmm8 - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebp - paddd %xmm7,%xmm12 - addl %edx,%ecx - pxor %xmm3,%xmm8 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm8,%xmm3 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm12,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm8 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm3,%xmm8 - addl %ebx,%eax - addl 12(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm7,%xmm12 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm5,%xmm9 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm8,%xmm12 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm10,%xmm9 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%eax - paddd %xmm8,%xmm13 - addl %ebp,%edx - pxor %xmm12,%xmm9 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm9,%xmm12 - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast2 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast2 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast2: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - movdqa %xmm13,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm9 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm12 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm12,%xmm9 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm8,%xmm13 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm6,%xmm10 - addl 32(%rsp),%ebp - movups 32(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm9,%xmm13 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm11,%xmm10 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm3,%xmm12 - xorl %ebx,%edi - paddd %xmm9,%xmm3 - xorl %ecx,%ebx - pxor %xmm13,%xmm10 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm10,%xmm13 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm3,16(%rsp) - roll $5,%ebp - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - pslld $2,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm13 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm13,%xmm10 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm9,%xmm3 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm7,%xmm11 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm10,%xmm3 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm4,%xmm11 - roll $5,%ebx - addl %esi,%eax - movdqa 48(%r11),%xmm13 - xorl %ecx,%edi - paddd %xmm10,%xmm12 - xorl %edx,%ecx - pxor %xmm3,%xmm11 - addl %ebx,%eax - addl 52(%rsp),%ebp - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm11,%xmm3 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm12,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm11 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm3 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm3,%xmm11 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm10,%xmm12 - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm8,%xmm4 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm11,%xmm12 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm5,%xmm4 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm13,%xmm3 - xorl %edx,%edi - paddd %xmm11,%xmm13 - xorl %ebp,%edx - pxor %xmm12,%xmm4 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm4,%xmm12 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm13,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm4 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm12 - addl 8(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - por %xmm12,%xmm4 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm11,%xmm13 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm9,%xmm5 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm4,%xmm13 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm6,%xmm5 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm12 - xorl %ebp,%edi - paddd %xmm4,%xmm3 - xorl %eax,%ebp - pxor %xmm13,%xmm5 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm5,%xmm13 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm3,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm5 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm13 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm13,%xmm5 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm4,%xmm3 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb .Laesenclast3 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast3 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast3: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm10,%xmm6 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm5,%xmm3 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm7,%xmm6 - roll $5,%ebp - addl %esi,%edx - movups 48(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm13 - xorl %eax,%edi - paddd %xmm5,%xmm12 - xorl %ebx,%eax - pxor %xmm3,%xmm6 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm6,%xmm3 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm12,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm6 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm3 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm3,%xmm6 - rorl $7,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm5,%xmm12 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm6,%xmm12 - movl %eax,%edi - roll $5,%eax - pxor %xmm8,%xmm7 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%ebx - paddd %xmm6,%xmm13 - addl %eax,%ebp - pxor %xmm12,%xmm7 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm7,%xmm12 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm13,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm7 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm12 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm12,%xmm7 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm7,%xmm3 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm3,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je .Ldone_ssse3 - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,235 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm13,%xmm4 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm4,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm13,%xmm4 - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,243 - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm13,%xmm5 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm5,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm13,%xmm5 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,251 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm13,%xmm6 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm6,32(%rsp) - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast4 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast4 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast4: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm13,%xmm6 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp .Loop_ssse3 - -.Ldone_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast5 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast5 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast5: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - movups %xmm2,(%r8) - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc_ssse3,.-aesni_cbc_sha1_enc_ssse3 -.type aesni_cbc_sha1_enc_avx,@function -.align 32 -aesni_cbc_sha1_enc_avx: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - vzeroall - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - vmovdqu (%r8),%xmm12 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - vmovdqa 64(%r11),%xmm6 - vmovdqa 0(%r11),%xmm10 - vmovdqu 0(%r10),%xmm0 - vmovdqu 16(%r10),%xmm1 - vmovdqu 32(%r10),%xmm2 - vmovdqu 48(%r10),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r10 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm10,%xmm0,%xmm4 - vpaddd %xmm10,%xmm1,%xmm5 - vpaddd %xmm10,%xmm2,%xmm6 - vmovdqa %xmm4,0(%rsp) - vmovdqa %xmm5,16(%rsp) - vmovdqa %xmm6,32(%rsp) - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - jmp .Loop_avx -.align 32 -.Loop_avx: - shrdl $2,%ebx,%ebx - vmovdqu 0(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%edi - addl 0(%rsp),%ebp - vpaddd %xmm3,%xmm10,%xmm9 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%ebp - vpxor %xmm2,%xmm8,%xmm8 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - vpxor %xmm8,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vmovdqa %xmm9,48(%rsp) - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - andl %eax,%esi - vpsrld $31,%xmm4,%xmm8 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm9 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpor %xmm8,%xmm4,%xmm4 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm4,%xmm4 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - vpxor %xmm9,%xmm4,%xmm4 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %edi,%ebx - andl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%edi - addl 16(%rsp),%eax - vpaddd %xmm4,%xmm10,%xmm9 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm8 - addl %esi,%eax - andl %ecx,%edi - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm8,%xmm8 - shrdl $7,%ebx,%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - vpxor %xmm8,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vmovdqa %xmm9,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm9 - vpaddd %xmm5,%xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpor %xmm8,%xmm5,%xmm5 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - andl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm5,%xmm5 - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - vpxor %xmm9,%xmm5,%xmm5 - xorl %eax,%ebp - shldl $5,%edx,%edx - vmovdqa 16(%r11),%xmm10 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%edi - addl 32(%rsp),%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - vpaddd %xmm5,%xmm10,%xmm9 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm8 - addl %esi,%ebx - andl %edx,%edi - vpxor %xmm2,%xmm6,%xmm6 - xorl %ebp,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm8,%xmm8 - shrdl $7,%ecx,%ecx - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - vpxor %xmm8,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vmovdqa %xmm9,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm8 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm9 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpor %xmm8,%xmm6,%xmm6 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - vpxor %xmm9,%xmm6,%xmm6 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - andl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%edi - addl 48(%rsp),%ecx - vpaddd %xmm6,%xmm10,%xmm9 - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%ebp - addl %edx,%ecx - vpxor %xmm5,%xmm8,%xmm8 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - vpxor %xmm8,%xmm7,%xmm7 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vmovdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpslldq $12,%xmm7,%xmm9 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpor %xmm8,%xmm7,%xmm7 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%eax - andl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - cmpl $11,%r8d - jb .Lvaesenclast6 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je .Lvaesenclast6 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -.Lvaesenclast6: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - vpxor %xmm9,%xmm7,%xmm7 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %edi,%ebp - andl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - vpxor %xmm1,%xmm0,%xmm0 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpaddd %xmm7,%xmm10,%xmm9 - addl %esi,%edx - vmovdqu 16(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,0(%r12,%r13,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - andl %eax,%edi - vpxor %xmm8,%xmm0,%xmm0 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - movl %edx,%esi - addl 4(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - vpor %xmm8,%xmm0,%xmm0 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm0,%xmm10,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm1,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm1,%xmm1 - addl 28(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - addl %esi,%eax - xorl %edx,%edi - vpaddd %xmm1,%xmm10,%xmm9 - vmovdqa 32(%r11),%xmm10 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm8,%xmm2,%xmm2 - addl 36(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpslld $2,%xmm2,%xmm2 - addl 40(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpor %xmm8,%xmm2,%xmm2 - addl 44(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - vpaddd %xmm2,%xmm10,%xmm9 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpalignr $8,%xmm2,%xmm3,%xmm8 - vpxor %xmm0,%xmm4,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - vpaddd %xmm3,%xmm10,%xmm9 - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpxor %xmm8,%xmm4,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm8 - vmovdqa %xmm9,48(%rsp) - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm8,%xmm4,%xmm4 - addl 12(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm3,%xmm4,%xmm8 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpxor %xmm6,%xmm5,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - vpaddd %xmm4,%xmm10,%xmm9 - shrdl $7,%eax,%eax - addl %ebp,%edx - vpxor %xmm8,%xmm5,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%ecx - cmpl $11,%r8d - jb .Lvaesenclast7 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je .Lvaesenclast7 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -.Lvaesenclast7: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm8,%xmm5,%xmm5 - addl 28(%rsp),%eax - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm8 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%rsp),%ebp - vmovdqu 32(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,16(%r13,%r12,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - movl %eax,%edi - xorl %ecx,%esi - vpaddd %xmm5,%xmm10,%xmm9 - shldl $5,%eax,%eax - addl %esi,%ebp - vpxor %xmm8,%xmm6,%xmm6 - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 36(%rsp),%edx - vpsrld $30,%xmm6,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - addl 40(%rsp),%ecx - andl %eax,%esi - vpor %xmm8,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%edi - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - movl %ecx,%esi - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm8 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - movl %ebx,%edi - xorl %edx,%esi - vpaddd %xmm6,%xmm10,%xmm9 - vmovdqa 48(%r11),%xmm10 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm8,%xmm7,%xmm7 - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%rsp),%ebp - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - vpsrld $30,%xmm7,%xmm8 - vmovdqa %xmm9,32(%rsp) - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - addl 56(%rsp),%edx - andl %ebx,%esi - vpor %xmm8,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%edi - xorl %ebx,%esi - shldl $5,%ebp,%ebp - addl %esi,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - vpxor %xmm1,%xmm0,%xmm0 - movl %ecx,%edi - xorl %ebp,%esi - vpaddd %xmm7,%xmm10,%xmm9 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm8,%xmm0,%xmm0 - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 4(%rsp),%eax - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - andl %ecx,%esi - vpor %xmm8,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%edi - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - vpxor %xmm2,%xmm1,%xmm1 - movl %edx,%edi - xorl %eax,%esi - vpaddd %xmm0,%xmm10,%xmm9 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 20(%rsp),%ebx - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - addl 24(%rsp),%eax - andl %edx,%esi - vpor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%edi - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb .Lvaesenclast8 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je .Lvaesenclast8 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -.Lvaesenclast8: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - movl %ebp,%edi - xorl %ebx,%esi - vpaddd %xmm1,%xmm10,%xmm9 - shldl $5,%ebp,%ebp - addl %esi,%edx - vmovdqu 48(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,32(%r13,%r12,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - vpxor %xmm8,%xmm2,%xmm2 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 36(%rsp),%ecx - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - addl 40(%rsp),%ebx - andl %ebp,%esi - vpor %xmm8,%xmm2,%xmm2 - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - movl %ecx,%edi - xorl %ebp,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm2,%xmm10,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - vpaddd %xmm3,%xmm10,%xmm9 - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm9,48(%rsp) - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je .Ldone_avx - vmovdqa 64(%r11),%xmm9 - vmovdqa 0(%r11),%xmm10 - vmovdqu 0(%r10),%xmm0 - vmovdqu 16(%r10),%xmm1 - vmovdqu 32(%r10),%xmm2 - vmovdqu 48(%r10),%xmm3 - vpshufb %xmm9,%xmm0,%xmm0 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - vpshufb %xmm9,%xmm1,%xmm1 - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpaddd %xmm10,%xmm0,%xmm8 - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm8,0(%rsp) - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - vpshufb %xmm9,%xmm2,%xmm2 - movl %edx,%edi - shldl $5,%edx,%edx - vpaddd %xmm10,%xmm1,%xmm8 - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vmovdqa %xmm8,16(%rsp) - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - vpshufb %xmm9,%xmm3,%xmm3 - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpaddd %xmm10,%xmm2,%xmm8 - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vmovdqa %xmm8,32(%rsp) - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Lvaesenclast9 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je .Lvaesenclast9 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -.Lvaesenclast9: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vmovups %xmm12,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp .Loop_avx - -.Ldone_avx: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Lvaesenclast10 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je .Lvaesenclast10 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -.Lvaesenclast10: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vmovups %xmm12,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - vmovups %xmm12,(%r8) - vzeroall - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc_avx,.-aesni_cbc_sha1_enc_avx -.align 64 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 - -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.type aesni_cbc_sha1_enc_shaext,@function -.align 32 -aesni_cbc_sha1_enc_shaext: - movq 8(%rsp),%r10 - movdqu (%r9),%xmm8 - movd 16(%r9),%xmm9 - movdqa K_XX_XX+80(%rip),%xmm7 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm2 - movups 16(%rcx),%xmm0 - leaq 112(%rcx),%rcx - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqu (%r10),%xmm3 - movdqa %xmm9,%xmm12 -.byte 102,15,56,0,223 - movdqu 16(%r10),%xmm4 - movdqa %xmm8,%xmm11 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,0,231 - - paddd %xmm3,%xmm9 - movdqu 32(%r10),%xmm5 - leaq 64(%r10),%r10 - pxor %xmm12,%xmm3 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm3 - movdqa %xmm8,%xmm10 -.byte 102,15,56,0,239 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 15,56,201,220 - movdqu -16(%r10),%xmm6 - movdqa %xmm8,%xmm9 -.byte 102,15,56,0,247 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,205 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,203 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - cmpl $11,%r11d - jb .Laesenclast11 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast11 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast11: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,214 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,203 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,212 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - cmpl $11,%r11d - jb .Laesenclast12 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast12 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast12: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,203 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,212 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,205 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - cmpl $11,%r11d - jb .Laesenclast13 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast13 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast13: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,203 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,212 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 -.byte 15,56,202,245 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm12,%xmm5 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 - cmpl $11,%r11d - jb .Laesenclast14 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast14 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast14: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - decq %rdx - - paddd %xmm11,%xmm8 - movups %xmm2,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz .Loop_shaext - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - movups %xmm2,(%r8) - movdqu %xmm8,(%r9) - movd %xmm9,16(%r9) - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc_shaext,.-aesni_cbc_sha1_enc_shaext diff --git a/deps/openssl/asm/x64-elf-gas/aes/aesni-sha256-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/aesni-sha256-x86_64.s deleted file mode 100644 index 70eed05b00c136..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/aesni-sha256-x86_64.s +++ /dev/null @@ -1,4355 +0,0 @@ -.text - - -.globl aesni_cbc_sha256_enc -.type aesni_cbc_sha256_enc,@function -.align 16 -aesni_cbc_sha256_enc: - leaq OPENSSL_ia32cap_P(%rip),%r11 - movl $1,%eax - cmpq $0,%rdi - je .Lprobe - movl 0(%r11),%eax - movq 4(%r11),%r10 - btq $61,%r10 - jc aesni_cbc_sha256_enc_shaext - movq %r10,%r11 - shrq $32,%r11 - - testl $2048,%r10d - jnz aesni_cbc_sha256_enc_xop - andl $296,%r11d - cmpl $296,%r11d - je aesni_cbc_sha256_enc_avx2 - andl $268435456,%r10d - jnz aesni_cbc_sha256_enc_avx - ud2 - xorl %eax,%eax - cmpq $0,%rdi - je .Lprobe - ud2 -.Lprobe: - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc,.-aesni_cbc_sha256_enc - -.align 64 -.type K256,@object -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0,0,0,0, 0,0,0,0, -1,-1,-1,-1 -.long 0,0,0,0, 0,0,0,0 -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.type aesni_cbc_sha256_enc_xop,@function -.align 64 -aesni_cbc_sha256_enc_xop: -.Lxop_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $128,%rsp - andq $-64,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -.Lprologue_xop: - vzeroall - - movq %rdi,%r12 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r13 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - subq $9,%r14 - - movl 0(%r15),%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - - vmovdqa 0(%r13,%r14,8),%xmm14 - vmovdqa 16(%r13,%r14,8),%xmm13 - vmovdqa 32(%r13,%r14,8),%xmm12 - vmovdqu 0-128(%rdi),%xmm10 - jmp .Lloop_xop -.align 16 -.Lloop_xop: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi,%r12,1),%xmm0 - vmovdqu 16(%rsi,%r12,1),%xmm1 - vmovdqu 32(%rsi,%r12,1),%xmm2 - vmovdqu 48(%rsi,%r12,1),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%esi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%esi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp .Lxop_00_47 - -.align 16 -.Lxop_00_47: - subq $-32*4,%rbp - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - vpalignr $4,%xmm0,%xmm1,%xmm4 - rorl $14,%r13d - movl %r14d,%eax - vpalignr $4,%xmm2,%xmm3,%xmm7 - movl %r9d,%r12d - xorl %r8d,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %r10d,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %eax,%r14d - vpaddd %xmm7,%xmm0,%xmm0 - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %r10d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi -.byte 143,232,120,194,251,13 - xorl %eax,%r14d - addl %r13d,%r11d - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%esi - addl %r11d,%edx - vpsrld $10,%xmm3,%xmm6 - rorl $2,%r14d - addl %esi,%r11d - vpaddd %xmm4,%xmm0,%xmm0 - movl %edx,%r13d - addl %r11d,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%r11d - vpxor %xmm6,%xmm7,%xmm7 - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 4(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d -.byte 143,232,120,194,248,13 - xorl %r11d,%r14d - addl %r13d,%r10d - vpsrld $10,%xmm0,%xmm6 - xorl %eax,%r15d - addl %r10d,%ecx -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%r10d - vpxor %xmm6,%xmm7,%xmm7 - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - vpxor %xmm5,%xmm7,%xmm7 - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - vpaddd %xmm7,%xmm0,%xmm0 - addl 8(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - vpaddd 0(%rbp),%xmm0,%xmm6 - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - rorl $14,%r13d - movl %r14d,%r8d - vpalignr $4,%xmm3,%xmm0,%xmm7 - movl %ebx,%r12d - xorl %eax,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %ecx,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %r8d,%r14d - vpaddd %xmm7,%xmm1,%xmm1 - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %ecx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi -.byte 143,232,120,194,248,13 - xorl %r8d,%r14d - addl %r13d,%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %r9d,%esi - addl %edx,%r11d - vpsrld $10,%xmm0,%xmm6 - rorl $2,%r14d - addl %esi,%edx - vpaddd %xmm4,%xmm1,%xmm1 - movl %r11d,%r13d - addl %edx,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%edx - vpxor %xmm6,%xmm7,%xmm7 - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 20(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d -.byte 143,232,120,194,249,13 - xorl %edx,%r14d - addl %r13d,%ecx - vpsrld $10,%xmm1,%xmm6 - xorl %r8d,%r15d - addl %ecx,%r10d -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%ecx - vpxor %xmm6,%xmm7,%xmm7 - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - vpxor %xmm5,%xmm7,%xmm7 - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - vpaddd %xmm7,%xmm1,%xmm1 - addl 24(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - vpaddd 32(%rbp),%xmm1,%xmm6 - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - rorl $14,%r13d - movl %r14d,%eax - vpalignr $4,%xmm0,%xmm1,%xmm7 - movl %r9d,%r12d - xorl %r8d,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %r10d,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %eax,%r14d - vpaddd %xmm7,%xmm2,%xmm2 - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %r10d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi -.byte 143,232,120,194,249,13 - xorl %eax,%r14d - addl %r13d,%r11d - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%esi - addl %r11d,%edx - vpsrld $10,%xmm1,%xmm6 - rorl $2,%r14d - addl %esi,%r11d - vpaddd %xmm4,%xmm2,%xmm2 - movl %edx,%r13d - addl %r11d,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%r11d - vpxor %xmm6,%xmm7,%xmm7 - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 36(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d -.byte 143,232,120,194,250,13 - xorl %r11d,%r14d - addl %r13d,%r10d - vpsrld $10,%xmm2,%xmm6 - xorl %eax,%r15d - addl %r10d,%ecx -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%r10d - vpxor %xmm6,%xmm7,%xmm7 - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - vpxor %xmm5,%xmm7,%xmm7 - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - vpaddd %xmm7,%xmm2,%xmm2 - addl 40(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - vpaddd 64(%rbp),%xmm2,%xmm6 - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - rorl $14,%r13d - movl %r14d,%r8d - vpalignr $4,%xmm1,%xmm2,%xmm7 - movl %ebx,%r12d - xorl %eax,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %ecx,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %r8d,%r14d - vpaddd %xmm7,%xmm3,%xmm3 - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %ecx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi -.byte 143,232,120,194,250,13 - xorl %r8d,%r14d - addl %r13d,%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %r9d,%esi - addl %edx,%r11d - vpsrld $10,%xmm2,%xmm6 - rorl $2,%r14d - addl %esi,%edx - vpaddd %xmm4,%xmm3,%xmm3 - movl %r11d,%r13d - addl %edx,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%edx - vpxor %xmm6,%xmm7,%xmm7 - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 52(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d -.byte 143,232,120,194,251,13 - xorl %edx,%r14d - addl %r13d,%ecx - vpsrld $10,%xmm3,%xmm6 - xorl %r8d,%r15d - addl %ecx,%r10d -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%ecx - vpxor %xmm6,%xmm7,%xmm7 - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - vpxor %xmm5,%xmm7,%xmm7 - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - vpaddd %xmm7,%xmm3,%xmm3 - addl 56(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - vpaddd 96(%rbp),%xmm3,%xmm6 - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - movq 64+0(%rsp),%r12 - vpand %xmm14,%xmm11,%xmm11 - movq 64+8(%rsp),%r15 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r12,1) - leaq 16(%r12),%r12 - cmpb $0,131(%rbp) - jne .Lxop_00_47 - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - rorl $11,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - rorl $2,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - rorl $2,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - rorl $11,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - rorl $2,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - rorl $2,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - rorl $11,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - rorl $2,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - rorl $2,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - rorl $11,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - rorl $2,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - rorl $2,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%r12 - movq 64+8(%rsp),%r13 - movq 64+40(%rsp),%r15 - movq 64+48(%rsp),%rsi - - vpand %xmm14,%xmm11,%xmm11 - movl %r14d,%eax - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r12),%r12 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r12 - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - jb .Lloop_xop - - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_xop: - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc_xop,.-aesni_cbc_sha256_enc_xop -.type aesni_cbc_sha256_enc_avx,@function -.align 64 -aesni_cbc_sha256_enc_avx: -.Lavx_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $128,%rsp - andq $-64,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -.Lprologue_avx: - vzeroall - - movq %rdi,%r12 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r13 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - subq $9,%r14 - - movl 0(%r15),%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - - vmovdqa 0(%r13,%r14,8),%xmm14 - vmovdqa 16(%r13,%r14,8),%xmm13 - vmovdqa 32(%r13,%r14,8),%xmm12 - vmovdqu 0-128(%rdi),%xmm10 - jmp .Lloop_avx -.align 16 -.Lloop_avx: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi,%r12,1),%xmm0 - vmovdqu 16(%rsi,%r12,1),%xmm1 - vmovdqu 32(%rsi,%r12,1),%xmm2 - vmovdqu 48(%rsi,%r12,1),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%esi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%esi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp .Lavx_00_47 - -.align 16 -.Lavx_00_47: - subq $-32*4,%rbp - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - vpalignr $4,%xmm0,%xmm1,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm2,%xmm3,%xmm7 - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - vpshufd $250,%xmm3,%xmm7 - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 4(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm0,%xmm0 - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - vpaddd %xmm6,%xmm0,%xmm0 - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - vpshufd $80,%xmm0,%xmm7 - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - vpsrlq $17,%xmm7,%xmm7 - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - vpaddd %xmm6,%xmm0,%xmm0 - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - vpaddd 0(%rbp),%xmm0,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm3,%xmm0,%xmm7 - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - vpshufd $250,%xmm0,%xmm7 - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 20(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm1,%xmm1 - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - vpaddd %xmm6,%xmm1,%xmm1 - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - vpshufd $80,%xmm1,%xmm7 - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - vpsrlq $17,%xmm7,%xmm7 - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - vpaddd %xmm6,%xmm1,%xmm1 - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - vpaddd 32(%rbp),%xmm1,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm0,%xmm1,%xmm7 - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - vpshufd $250,%xmm1,%xmm7 - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 36(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm2,%xmm2 - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - vpaddd %xmm6,%xmm2,%xmm2 - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - vpshufd $80,%xmm2,%xmm7 - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - vpsrlq $17,%xmm7,%xmm7 - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - vpaddd %xmm6,%xmm2,%xmm2 - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - vpaddd 64(%rbp),%xmm2,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm1,%xmm2,%xmm7 - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - vpshufd $250,%xmm2,%xmm7 - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 52(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm3,%xmm3 - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - vpaddd %xmm6,%xmm3,%xmm3 - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - vpshufd $80,%xmm3,%xmm7 - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - vpsrlq $17,%xmm7,%xmm7 - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpslldq $8,%xmm6,%xmm6 - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - vpaddd %xmm6,%xmm3,%xmm3 - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - vpaddd 96(%rbp),%xmm3,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - movq 64+0(%rsp),%r12 - vpand %xmm14,%xmm11,%xmm11 - movq 64+8(%rsp),%r15 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r12,1) - leaq 16(%r12),%r12 - cmpb $0,131(%rbp) - jne .Lavx_00_47 - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%r12 - movq 64+8(%rsp),%r13 - movq 64+40(%rsp),%r15 - movq 64+48(%rsp),%rsi - - vpand %xmm14,%xmm11,%xmm11 - movl %r14d,%eax - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r12),%r12 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r12 - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - jb .Lloop_avx - - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc_avx,.-aesni_cbc_sha256_enc_avx -.type aesni_cbc_sha256_enc_avx2,@function -.align 64 -aesni_cbc_sha256_enc_avx2: -.Lavx2_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $576,%rsp - andq $-1024,%rsp - addq $448,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -.Lprologue_avx2: - vzeroall - - movq %rdi,%r13 - vpinsrq $1,%rsi,%xmm15,%xmm15 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r12 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - leaq -9(%r14),%r14 - - vmovdqa 0(%r12,%r14,8),%xmm14 - vmovdqa 16(%r12,%r14,8),%xmm13 - vmovdqa 32(%r12,%r14,8),%xmm12 - - subq $-64,%r13 - movl 0(%r15),%eax - leaq (%rsi,%r13,1),%r12 - movl 4(%r15),%ebx - cmpq %rdx,%r13 - movl 8(%r15),%ecx - cmoveq %rsp,%r12 - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - vmovdqu 0-128(%rdi),%xmm10 - jmp .Loop_avx2 -.align 16 -.Loop_avx2: - vmovdqa K256+512(%rip),%ymm7 - vmovdqu -64+0(%rsi,%r13,1),%xmm0 - vmovdqu -64+16(%rsi,%r13,1),%xmm1 - vmovdqu -64+32(%rsi,%r13,1),%xmm2 - vmovdqu -64+48(%rsi,%r13,1),%xmm3 - - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm7,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm7,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - - leaq K256(%rip),%rbp - vpshufb %ymm7,%ymm2,%ymm2 - leaq -64(%r13),%r13 - vpaddd 0(%rbp),%ymm0,%ymm4 - vpshufb %ymm7,%ymm3,%ymm3 - vpaddd 32(%rbp),%ymm1,%ymm5 - vpaddd 64(%rbp),%ymm2,%ymm6 - vpaddd 96(%rbp),%ymm3,%ymm7 - vmovdqa %ymm4,0(%rsp) - xorl %r14d,%r14d - vmovdqa %ymm5,32(%rsp) - leaq -64(%rsp),%rsp - movl %ebx,%esi - vmovdqa %ymm6,0(%rsp) - xorl %ecx,%esi - vmovdqa %ymm7,32(%rsp) - movl %r9d,%r12d - subq $-32*4,%rbp - jmp .Lavx2_00_47 - -.align 16 -.Lavx2_00_47: - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - leaq -64(%rsp),%rsp - vpalignr $4,%ymm0,%ymm1,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm2,%ymm3,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm0,%ymm0 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - vpshufd $250,%ymm3,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm0,%ymm0 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpshufd $80,%ymm0,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpsrlq $2,%ymm7,%ymm7 - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - vpaddd %ymm6,%ymm0,%ymm0 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - vpaddd 0(%rbp),%ymm0,%ymm6 - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm1,%ymm2,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm3,%ymm0,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm1,%ymm1 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - vpshufd $250,%ymm0,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm1,%ymm1 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpshufd $80,%ymm1,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpsrlq $2,%ymm7,%ymm7 - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - vpaddd %ymm6,%ymm1,%ymm1 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - vpaddd 32(%rbp),%ymm1,%ymm6 - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq -64(%rsp),%rsp - vpalignr $4,%ymm2,%ymm3,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm0,%ymm1,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm2,%ymm2 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - vpshufd $250,%ymm1,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm2,%ymm2 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpshufd $80,%ymm2,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpsrlq $2,%ymm7,%ymm7 - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - vpaddd %ymm6,%ymm2,%ymm2 - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - vpaddd 64(%rbp),%ymm2,%ymm6 - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm3,%ymm0,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm1,%ymm2,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm3,%ymm3 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - vpshufd $250,%ymm2,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm3,%ymm3 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpshufd $80,%ymm3,%ymm7 - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpsrlq $2,%ymm7,%ymm7 - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - vpaddd %ymm6,%ymm3,%ymm3 - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - vpaddd 96(%rbp),%ymm3,%ymm6 - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - vmovq %xmm15,%r13 - vpextrq $1,%xmm15,%r15 - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r13,1) - leaq 16(%r13),%r13 - leaq 128(%rbp),%rbp - cmpb $0,3(%rbp) - jne .Lavx2_00_47 - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - addl 0+64(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+64(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+64(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+64(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+64(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+64(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+64(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+64(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - addl 0(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vpextrq $1,%xmm15,%r12 - vmovq %xmm15,%r13 - movq 552(%rsp),%r15 - addl %r14d,%eax - leaq 448(%rsp),%rbp - - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r13),%r13 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - cmpq 80(%rbp),%r13 - je .Ldone_avx2 - - xorl %r14d,%r14d - movl %ebx,%esi - movl %r9d,%r12d - xorl %ecx,%esi - jmp .Lower_avx2 -.align 16 -.Lower_avx2: - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - leaq -64(%rbp),%rbp - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovq %xmm15,%r13 - vpextrq $1,%xmm15,%r15 - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - leaq -64(%rbp),%rbp - vmovdqu %xmm8,(%r15,%r13,1) - leaq 16(%r13),%r13 - cmpq %rsp,%rbp - jae .Lower_avx2 - - movq 552(%rsp),%r15 - leaq 64(%r13),%r13 - movq 560(%rsp),%rsi - addl %r14d,%eax - leaq 448(%rsp),%rsp - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - leaq (%rsi,%r13,1),%r12 - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r13 - - movl %eax,0(%r15) - cmoveq %rsp,%r12 - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - jbe .Loop_avx2 - leaq (%rsp),%rbp - -.Ldone_avx2: - leaq (%rbp),%rsp - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc_avx2,.-aesni_cbc_sha256_enc_avx2 -.type aesni_cbc_sha256_enc_shaext,@function -.align 32 -aesni_cbc_sha256_enc_shaext: - movq 8(%rsp),%r10 - leaq K256+128(%rip),%rax - movdqu (%r9),%xmm1 - movdqu 16(%r9),%xmm2 - movdqa 512-128(%rax),%xmm3 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm6 - movups 16(%rcx),%xmm4 - leaq 112(%rcx),%rcx - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - movdqu (%r10),%xmm10 - movdqu 16(%r10),%xmm11 - movdqu 32(%r10),%xmm12 -.byte 102,68,15,56,0,211 - movdqu 48(%r10),%xmm13 - - movdqa 0-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 102,68,15,56,0,219 - movdqa %xmm2,%xmm9 - movdqa %xmm1,%xmm8 - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 32-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 102,68,15,56,0,227 - leaq 64(%r10),%r10 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 64-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 102,68,15,56,0,235 -.byte 69,15,56,204,211 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 96-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 -.byte 15,56,203,202 - movdqa 128-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - cmpl $11,%r11d - jb .Laesenclast1 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je .Laesenclast1 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.Laesenclast1: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,202 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,0(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movdqa 160-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 192-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 -.byte 69,15,56,204,211 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 224-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 256-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - cmpl $11,%r11d - jb .Laesenclast2 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je .Laesenclast2 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.Laesenclast2: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,202 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,16(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movdqa 288-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 320-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 -.byte 69,15,56,204,211 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 352-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 384-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 416-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - cmpl $11,%r11d - jb .Laesenclast3 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je .Laesenclast3 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.Laesenclast3: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,32(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 448-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 - movdqa %xmm7,%xmm3 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 480-128(%rax),%xmm0 - paddd %xmm13,%xmm0 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - cmpl $11,%r11d - jb .Laesenclast4 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je .Laesenclast4 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.Laesenclast4: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop - - paddd %xmm9,%xmm2 - paddd %xmm8,%xmm1 - - decq %rdx - movups %xmm6,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz .Loop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm3 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,211,8 - - movups %xmm6,(%r8) - movdqu %xmm1,(%r9) - movdqu %xmm2,16(%r9) - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc_shaext,.-aesni_cbc_sha256_enc_shaext diff --git a/deps/openssl/asm/x64-elf-gas/aes/aesni-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/aesni-x86_64.s deleted file mode 100644 index 2317f0e55d214f..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/aesni-x86_64.s +++ /dev/null @@ -1,3551 +0,0 @@ -.text - -.globl aesni_encrypt -.type aesni_encrypt,@function -.align 16 -aesni_encrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -.Loop_enc1_1: -.byte 102,15,56,220,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz .Loop_enc1_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 -.size aesni_encrypt,.-aesni_encrypt - -.globl aesni_decrypt -.type aesni_decrypt,@function -.align 16 -aesni_decrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -.Loop_dec1_2: -.byte 102,15,56,222,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz .Loop_dec1_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 -.size aesni_decrypt, .-aesni_decrypt -.type _aesni_encrypt2,@function -.align 16 -_aesni_encrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Lenc_loop2: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop2 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - .byte 0xf3,0xc3 -.size _aesni_encrypt2,.-_aesni_encrypt2 -.type _aesni_decrypt2,@function -.align 16 -_aesni_decrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Ldec_loop2: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop2 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - .byte 0xf3,0xc3 -.size _aesni_decrypt2,.-_aesni_decrypt2 -.type _aesni_encrypt3,@function -.align 16 -_aesni_encrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Lenc_loop3: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop3 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - .byte 0xf3,0xc3 -.size _aesni_encrypt3,.-_aesni_encrypt3 -.type _aesni_decrypt3,@function -.align 16 -_aesni_decrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Ldec_loop3: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop3 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - .byte 0xf3,0xc3 -.size _aesni_decrypt3,.-_aesni_decrypt3 -.type _aesni_encrypt4,@function -.align 16 -_aesni_encrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -.Lenc_loop4: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop4 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - .byte 0xf3,0xc3 -.size _aesni_encrypt4,.-_aesni_encrypt4 -.type _aesni_decrypt4,@function -.align 16 -_aesni_decrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -.Ldec_loop4: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop4 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - .byte 0xf3,0xc3 -.size _aesni_decrypt4,.-_aesni_decrypt4 -.type _aesni_encrypt6,@function -.align 16 -_aesni_encrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Lenc_loop6_enter -.align 16 -.Lenc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.Lenc_loop6_enter: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop6 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - .byte 0xf3,0xc3 -.size _aesni_encrypt6,.-_aesni_encrypt6 -.type _aesni_decrypt6,@function -.align 16 -_aesni_decrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Ldec_loop6_enter -.align 16 -.Ldec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.Ldec_loop6_enter: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop6 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - .byte 0xf3,0xc3 -.size _aesni_decrypt6,.-_aesni_decrypt6 -.type _aesni_encrypt8,@function -.align 16 -_aesni_encrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Lenc_loop8_inner -.align 16 -.Lenc_loop8: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.Lenc_loop8_inner: -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.Lenc_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop8 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 -.byte 102,68,15,56,221,192 -.byte 102,68,15,56,221,200 - .byte 0xf3,0xc3 -.size _aesni_encrypt8,.-_aesni_encrypt8 -.type _aesni_decrypt8,@function -.align 16 -_aesni_decrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Ldec_loop8_inner -.align 16 -.Ldec_loop8: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.Ldec_loop8_inner: -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.Ldec_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop8 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 -.byte 102,68,15,56,223,192 -.byte 102,68,15,56,223,200 - .byte 0xf3,0xc3 -.size _aesni_decrypt8,.-_aesni_decrypt8 -.globl aesni_ecb_encrypt -.type aesni_ecb_encrypt,@function -.align 16 -aesni_ecb_encrypt: - andq $-16,%rdx - jz .Lecb_ret - - movl 240(%rcx),%eax - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %eax,%r10d - testl %r8d,%r8d - jz .Lecb_decrypt - - cmpq $0x80,%rdx - jb .Lecb_enc_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp .Lecb_enc_loop8_enter -.align 16 -.Lecb_enc_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -.Lecb_enc_loop8_enter: - - call _aesni_encrypt8 - - subq $0x80,%rdx - jnc .Lecb_enc_loop8 - - movups %xmm2,(%rsi) - movq %r11,%rcx - movups %xmm3,16(%rsi) - movl %r10d,%eax - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz .Lecb_ret - -.Lecb_enc_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb .Lecb_enc_one - movups 16(%rdi),%xmm3 - je .Lecb_enc_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb .Lecb_enc_three - movups 48(%rdi),%xmm5 - je .Lecb_enc_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb .Lecb_enc_five - movups 80(%rdi),%xmm7 - je .Lecb_enc_six - movdqu 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_encrypt8 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_3: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_3 -.byte 102,15,56,221,209 - movups %xmm2,(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_five: - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_six: - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - jmp .Lecb_ret - -.align 16 -.Lecb_decrypt: - cmpq $0x80,%rdx - jb .Lecb_dec_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp .Lecb_dec_loop8_enter -.align 16 -.Lecb_dec_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -.Lecb_dec_loop8_enter: - - call _aesni_decrypt8 - - movups (%r11),%xmm0 - subq $0x80,%rdx - jnc .Lecb_dec_loop8 - - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movq %r11,%rcx - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movl %r10d,%eax - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - movups %xmm9,112(%rsi) - pxor %xmm9,%xmm9 - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz .Lecb_ret - -.Lecb_dec_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb .Lecb_dec_one - movups 16(%rdi),%xmm3 - je .Lecb_dec_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb .Lecb_dec_three - movups 48(%rdi),%xmm5 - je .Lecb_dec_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb .Lecb_dec_five - movups 80(%rdi),%xmm7 - je .Lecb_dec_six - movups 96(%rdi),%xmm8 - movups (%rcx),%xmm0 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp .Lecb_ret -.align 16 -.Lecb_dec_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_4: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_4 -.byte 102,15,56,223,209 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lecb_ret -.align 16 -.Lecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - jmp .Lecb_ret -.align 16 -.Lecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - jmp .Lecb_ret -.align 16 -.Lecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - jmp .Lecb_ret -.align 16 -.Lecb_dec_five: - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - jmp .Lecb_ret -.align 16 -.Lecb_dec_six: - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - -.Lecb_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - .byte 0xf3,0xc3 -.size aesni_ecb_encrypt,.-aesni_ecb_encrypt -.globl aesni_ccm64_encrypt_blocks -.type aesni_ccm64_encrypt_blocks,@function -.align 16 -aesni_ccm64_encrypt_blocks: - movl 240(%rcx),%eax - movdqu (%r8),%xmm6 - movdqa .Lincrement64(%rip),%xmm9 - movdqa .Lbswap_mask(%rip),%xmm7 - - shll $4,%eax - movl $16,%r10d - leaq 0(%rcx),%r11 - movdqu (%r9),%xmm3 - movdqa %xmm6,%xmm2 - leaq 32(%rcx,%rax,1),%rcx -.byte 102,15,56,0,247 - subq %rax,%r10 - jmp .Lccm64_enc_outer -.align 16 -.Lccm64_enc_outer: - movups (%r11),%xmm0 - movq %r10,%rax - movups (%rdi),%xmm8 - - xorps %xmm0,%xmm2 - movups 16(%r11),%xmm1 - xorps %xmm8,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%r11),%xmm0 - -.Lccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq %xmm9,%xmm6 - decq %rdx -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - - leaq 16(%rdi),%rdi - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) -.byte 102,15,56,0,215 - leaq 16(%rsi),%rsi - jnz .Lccm64_enc_outer - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 -.size aesni_ccm64_encrypt_blocks,.-aesni_ccm64_encrypt_blocks -.globl aesni_ccm64_decrypt_blocks -.type aesni_ccm64_decrypt_blocks,@function -.align 16 -aesni_ccm64_decrypt_blocks: - movl 240(%rcx),%eax - movups (%r8),%xmm6 - movdqu (%r9),%xmm3 - movdqa .Lincrement64(%rip),%xmm9 - movdqa .Lbswap_mask(%rip),%xmm7 - - movaps %xmm6,%xmm2 - movl %eax,%r10d - movq %rcx,%r11 -.byte 102,15,56,0,247 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_5: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_5 -.byte 102,15,56,221,209 - shll $4,%r10d - movl $16,%eax - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 - leaq 16(%rdi),%rdi - subq %r10,%rax - leaq 32(%r11,%r10,1),%rcx - movq %rax,%r10 - jmp .Lccm64_dec_outer -.align 16 -.Lccm64_dec_outer: - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) - leaq 16(%rsi),%rsi -.byte 102,15,56,0,215 - - subq $1,%rdx - jz .Lccm64_dec_break - - movups (%r11),%xmm0 - movq %r10,%rax - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - xorps %xmm0,%xmm2 - xorps %xmm8,%xmm3 - movups 32(%r11),%xmm0 - jmp .Lccm64_dec2_loop -.align 16 -.Lccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lccm64_dec2_loop - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leaq 16(%rdi),%rdi - jmp .Lccm64_dec_outer - -.align 16 -.Lccm64_dec_break: - - movl 240(%r11),%eax - movups (%r11),%xmm0 - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - leaq 32(%r11),%r11 - xorps %xmm8,%xmm3 -.Loop_enc1_6: -.byte 102,15,56,220,217 - decl %eax - movups (%r11),%xmm1 - leaq 16(%r11),%r11 - jnz .Loop_enc1_6 -.byte 102,15,56,221,217 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 -.size aesni_ccm64_decrypt_blocks,.-aesni_ccm64_decrypt_blocks -.globl aesni_ctr32_encrypt_blocks -.type aesni_ctr32_encrypt_blocks,@function -.align 16 -aesni_ctr32_encrypt_blocks: - cmpq $1,%rdx - jne .Lctr32_bulk - - - - movups (%r8),%xmm2 - movups (%rdi),%xmm3 - movl 240(%rcx),%edx - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_7: -.byte 102,15,56,220,209 - decl %edx - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_7 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - xorps %xmm2,%xmm2 - jmp .Lctr32_epilogue - -.align 16 -.Lctr32_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $128,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - - - - - movdqu (%r8),%xmm2 - movdqu (%rcx),%xmm0 - movl 12(%r8),%r8d - pxor %xmm0,%xmm2 - movl 12(%rcx),%r11d - movdqa %xmm2,0(%rsp) - bswapl %r8d - movdqa %xmm2,%xmm3 - movdqa %xmm2,%xmm4 - movdqa %xmm2,%xmm5 - movdqa %xmm2,64(%rsp) - movdqa %xmm2,80(%rsp) - movdqa %xmm2,96(%rsp) - movq %rdx,%r10 - movdqa %xmm2,112(%rsp) - - leaq 1(%r8),%rax - leaq 2(%r8),%rdx - bswapl %eax - bswapl %edx - xorl %r11d,%eax - xorl %r11d,%edx -.byte 102,15,58,34,216,3 - leaq 3(%r8),%rax - movdqa %xmm3,16(%rsp) -.byte 102,15,58,34,226,3 - bswapl %eax - movq %r10,%rdx - leaq 4(%r8),%r10 - movdqa %xmm4,32(%rsp) - xorl %r11d,%eax - bswapl %r10d -.byte 102,15,58,34,232,3 - xorl %r11d,%r10d - movdqa %xmm5,48(%rsp) - leaq 5(%r8),%r9 - movl %r10d,64+12(%rsp) - bswapl %r9d - leaq 6(%r8),%r10 - movl 240(%rcx),%eax - xorl %r11d,%r9d - bswapl %r10d - movl %r9d,80+12(%rsp) - xorl %r11d,%r10d - leaq 7(%r8),%r9 - movl %r10d,96+12(%rsp) - bswapl %r9d - movl OPENSSL_ia32cap_P+4(%rip),%r10d - xorl %r11d,%r9d - andl $71303168,%r10d - movl %r9d,112+12(%rsp) - - movups 16(%rcx),%xmm1 - - movdqa 64(%rsp),%xmm6 - movdqa 80(%rsp),%xmm7 - - cmpq $8,%rdx - jb .Lctr32_tail - - subq $6,%rdx - cmpl $4194304,%r10d - je .Lctr32_6x - - leaq 128(%rcx),%rcx - subq $2,%rdx - jmp .Lctr32_loop8 - -.align 16 -.Lctr32_6x: - shll $4,%eax - movl $48,%r10d - bswapl %r11d - leaq 32(%rcx,%rax,1),%rcx - subq %rax,%r10 - jmp .Lctr32_loop6 - -.align 16 -.Lctr32_loop6: - addl $6,%r8d - movups -48(%rcx,%r10,1),%xmm0 -.byte 102,15,56,220,209 - movl %r8d,%eax - xorl %r11d,%eax -.byte 102,15,56,220,217 -.byte 0x0f,0x38,0xf1,0x44,0x24,12 - leal 1(%r8),%eax -.byte 102,15,56,220,225 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,28 -.byte 102,15,56,220,233 - leal 2(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,241 -.byte 0x0f,0x38,0xf1,0x44,0x24,44 - leal 3(%r8),%eax -.byte 102,15,56,220,249 - movups -32(%rcx,%r10,1),%xmm1 - xorl %r11d,%eax - -.byte 102,15,56,220,208 -.byte 0x0f,0x38,0xf1,0x44,0x24,60 - leal 4(%r8),%eax -.byte 102,15,56,220,216 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,76 -.byte 102,15,56,220,224 - leal 5(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,232 -.byte 0x0f,0x38,0xf1,0x44,0x24,92 - movq %r10,%rax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%r10,1),%xmm0 - - call .Lenc_loop6 - - movdqu (%rdi),%xmm8 - movdqu 16(%rdi),%xmm9 - movdqu 32(%rdi),%xmm10 - movdqu 48(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 80(%rdi),%xmm13 - leaq 96(%rdi),%rdi - movups -64(%rcx,%r10,1),%xmm1 - pxor %xmm2,%xmm8 - movaps 0(%rsp),%xmm2 - pxor %xmm3,%xmm9 - movaps 16(%rsp),%xmm3 - pxor %xmm4,%xmm10 - movaps 32(%rsp),%xmm4 - pxor %xmm5,%xmm11 - movaps 48(%rsp),%xmm5 - pxor %xmm6,%xmm12 - movaps 64(%rsp),%xmm6 - pxor %xmm7,%xmm13 - movaps 80(%rsp),%xmm7 - movdqu %xmm8,(%rsi) - movdqu %xmm9,16(%rsi) - movdqu %xmm10,32(%rsi) - movdqu %xmm11,48(%rsi) - movdqu %xmm12,64(%rsi) - movdqu %xmm13,80(%rsi) - leaq 96(%rsi),%rsi - - subq $6,%rdx - jnc .Lctr32_loop6 - - addq $6,%rdx - jz .Lctr32_done - - leal -48(%r10),%eax - leaq -80(%rcx,%r10,1),%rcx - negl %eax - shrl $4,%eax - jmp .Lctr32_tail - -.align 32 -.Lctr32_loop8: - addl $8,%r8d - movdqa 96(%rsp),%xmm8 -.byte 102,15,56,220,209 - movl %r8d,%r9d - movdqa 112(%rsp),%xmm9 -.byte 102,15,56,220,217 - bswapl %r9d - movups 32-128(%rcx),%xmm0 -.byte 102,15,56,220,225 - xorl %r11d,%r9d - nop -.byte 102,15,56,220,233 - movl %r9d,0+12(%rsp) - leaq 1(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 48-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,16+12(%rsp) - leaq 2(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 64-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,32+12(%rsp) - leaq 3(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 80-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,48+12(%rsp) - leaq 4(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 96-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,64+12(%rsp) - leaq 5(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 112-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,80+12(%rsp) - leaq 6(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 128-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,96+12(%rsp) - leaq 7(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 144-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - xorl %r11d,%r9d - movdqu 0(%rdi),%xmm10 -.byte 102,15,56,220,232 - movl %r9d,112+12(%rsp) - cmpl $11,%eax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 160-128(%rcx),%xmm0 - - jb .Lctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 176-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 192-128(%rcx),%xmm0 - je .Lctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 208-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 224-128(%rcx),%xmm0 - jmp .Lctr32_enc_done - -.align 16 -.Lctr32_enc_done: - movdqu 16(%rdi),%xmm11 - pxor %xmm0,%xmm10 - movdqu 32(%rdi),%xmm12 - pxor %xmm0,%xmm11 - movdqu 48(%rdi),%xmm13 - pxor %xmm0,%xmm12 - movdqu 64(%rdi),%xmm14 - pxor %xmm0,%xmm13 - movdqu 80(%rdi),%xmm15 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movdqu 96(%rdi),%xmm1 - leaq 128(%rdi),%rdi - -.byte 102,65,15,56,221,210 - pxor %xmm0,%xmm1 - movdqu 112-128(%rdi),%xmm10 -.byte 102,65,15,56,221,219 - pxor %xmm0,%xmm10 - movdqa 0(%rsp),%xmm11 -.byte 102,65,15,56,221,228 -.byte 102,65,15,56,221,237 - movdqa 16(%rsp),%xmm12 - movdqa 32(%rsp),%xmm13 -.byte 102,65,15,56,221,246 -.byte 102,65,15,56,221,255 - movdqa 48(%rsp),%xmm14 - movdqa 64(%rsp),%xmm15 -.byte 102,68,15,56,221,193 - movdqa 80(%rsp),%xmm0 - movups 16-128(%rcx),%xmm1 -.byte 102,69,15,56,221,202 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm0,%xmm7 - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - - subq $8,%rdx - jnc .Lctr32_loop8 - - addq $8,%rdx - jz .Lctr32_done - leaq -128(%rcx),%rcx - -.Lctr32_tail: - - - leaq 16(%rcx),%rcx - cmpq $4,%rdx - jb .Lctr32_loop3 - je .Lctr32_loop4 - - - shll $4,%eax - movdqa 96(%rsp),%xmm8 - pxor %xmm9,%xmm9 - - movups 16(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - leaq 32-16(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,225 - addq $16,%rax - movups (%rdi),%xmm10 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - movups 16(%rdi),%xmm11 - movups 32(%rdi),%xmm12 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 - - call .Lenc_loop8_enter - - movdqu 48(%rdi),%xmm13 - pxor %xmm10,%xmm2 - movdqu 64(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm10,%xmm6 - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - cmpq $6,%rdx - jb .Lctr32_done - - movups 80(%rdi),%xmm11 - xorps %xmm11,%xmm7 - movups %xmm7,80(%rsi) - je .Lctr32_done - - movups 96(%rdi),%xmm12 - xorps %xmm12,%xmm8 - movups %xmm8,96(%rsi) - jmp .Lctr32_done - -.align 32 -.Lctr32_loop4: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx),%xmm1 - jnz .Lctr32_loop4 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 - movups (%rdi),%xmm10 - movups 16(%rdi),%xmm11 -.byte 102,15,56,221,225 -.byte 102,15,56,221,233 - movups 32(%rdi),%xmm12 - movups 48(%rdi),%xmm13 - - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm4,32(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm5,48(%rsi) - jmp .Lctr32_done - -.align 32 -.Lctr32_loop3: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx),%xmm1 - jnz .Lctr32_loop3 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 -.byte 102,15,56,221,225 - - movups (%rdi),%xmm10 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - cmpq $2,%rdx - jb .Lctr32_done - - movups 16(%rdi),%xmm11 - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - je .Lctr32_done - - movups 32(%rdi),%xmm12 - xorps %xmm12,%xmm4 - movups %xmm4,32(%rsi) - -.Lctr32_done: - xorps %xmm0,%xmm0 - xorl %r11d,%r11d - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - movaps %xmm0,112(%rsp) - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lctr32_epilogue: - .byte 0xf3,0xc3 -.size aesni_ctr32_encrypt_blocks,.-aesni_ctr32_encrypt_blocks -.globl aesni_xts_encrypt -.type aesni_xts_encrypt,@function -.align 16 -aesni_xts_encrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -.Loop_enc1_8: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz .Loop_enc1_8 -.byte 102,15,56,221,209 - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa .Lxts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc .Lxts_enc_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq .Lxts_magic(%rip),%r8 - jmp .Lxts_enc_grandloop - -.align 32 -.Lxts_enc_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,220,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,220,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,220,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,220,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,220,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,220,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,220,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,220,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp .Lxts_enc_loop6 -.align 32 -.Lxts_enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz .Lxts_enc_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,220,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,220,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,220,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,220,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,220,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,221,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,221,92,36,16 -.byte 102,15,56,221,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,221,108,36,48 -.byte 102,15,56,221,116,36,64 -.byte 102,15,56,221,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc .Lxts_enc_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -.Lxts_enc_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - addq $96,%rdx - jz .Lxts_enc_done - - pxor %xmm0,%xmm11 - cmpq $0x20,%rdx - jb .Lxts_enc_one - pxor %xmm0,%xmm12 - je .Lxts_enc_two - - pxor %xmm0,%xmm13 - cmpq $0x40,%rdx - jb .Lxts_enc_three - pxor %xmm0,%xmm14 - je .Lxts_enc_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - pxor %xmm7,%xmm7 - - call _aesni_encrypt6 - - xorps %xmm10,%xmm2 - movdqa %xmm15,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_9: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_9 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - leaq 16(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_encrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_encrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_encrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_done: - andq $15,%r9 - jz .Lxts_enc_ret - movq %r9,%rdx - -.Lxts_enc_steal: - movzbl (%rdi),%eax - movzbl -16(%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,-16(%rsi) - movb %cl,0(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz .Lxts_enc_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups -16(%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_10: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_10 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movups %xmm2,-16(%rsi) - -.Lxts_enc_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lxts_enc_epilogue: - .byte 0xf3,0xc3 -.size aesni_xts_encrypt,.-aesni_xts_encrypt -.globl aesni_xts_decrypt -.type aesni_xts_decrypt,@function -.align 16 -aesni_xts_decrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -.Loop_enc1_11: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz .Loop_enc1_11 -.byte 102,15,56,221,209 - xorl %eax,%eax - testq $15,%rdx - setnz %al - shlq $4,%rax - subq %rax,%rdx - - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa .Lxts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc .Lxts_dec_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq .Lxts_magic(%rip),%r8 - jmp .Lxts_dec_grandloop - -.align 32 -.Lxts_dec_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,222,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,222,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,222,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,222,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,222,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,222,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,222,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,222,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp .Lxts_dec_loop6 -.align 32 -.Lxts_dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz .Lxts_dec_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,222,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,222,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,222,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,222,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,222,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,223,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,223,92,36,16 -.byte 102,15,56,223,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,223,108,36,48 -.byte 102,15,56,223,116,36,64 -.byte 102,15,56,223,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc .Lxts_dec_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -.Lxts_dec_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 - addq $96,%rdx - jz .Lxts_dec_done - - pxor %xmm0,%xmm12 - cmpq $0x20,%rdx - jb .Lxts_dec_one - pxor %xmm0,%xmm13 - je .Lxts_dec_two - - pxor %xmm0,%xmm14 - cmpq $0x40,%rdx - jb .Lxts_dec_three - je .Lxts_dec_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - - call _aesni_decrypt6 - - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm14 - movdqu %xmm5,48(%rsi) - pcmpgtd %xmm15,%xmm14 - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - pshufd $0x13,%xmm14,%xmm11 - andq $15,%r9 - jz .Lxts_dec_ret - - movdqa %xmm15,%xmm10 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm11 - pxor %xmm15,%xmm11 - jmp .Lxts_dec_done2 - -.align 16 -.Lxts_dec_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_12: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_12 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - movdqa %xmm12,%xmm11 - leaq 16(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_decrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm13,%xmm11 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_decrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm14,%xmm11 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_decrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqa %xmm15,%xmm11 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_done: - andq $15,%r9 - jz .Lxts_dec_ret -.Lxts_dec_done2: - movq %r9,%rdx - movq %r11,%rcx - movl %r10d,%eax - - movups (%rdi),%xmm2 - xorps %xmm11,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_13: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_13 -.byte 102,15,56,223,209 - xorps %xmm11,%xmm2 - movups %xmm2,(%rsi) - -.Lxts_dec_steal: - movzbl 16(%rdi),%eax - movzbl (%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,(%rsi) - movb %cl,16(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz .Lxts_dec_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups (%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_14: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_14 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - -.Lxts_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lxts_dec_epilogue: - .byte 0xf3,0xc3 -.size aesni_xts_decrypt,.-aesni_xts_decrypt -.globl aesni_cbc_encrypt -.type aesni_cbc_encrypt,@function -.align 16 -aesni_cbc_encrypt: - testq %rdx,%rdx - jz .Lcbc_ret - - movl 240(%rcx),%r10d - movq %rcx,%r11 - testl %r9d,%r9d - jz .Lcbc_decrypt - - movups (%r8),%xmm2 - movl %r10d,%eax - cmpq $16,%rdx - jb .Lcbc_enc_tail - subq $16,%rdx - jmp .Lcbc_enc_loop -.align 16 -.Lcbc_enc_loop: - movups (%rdi),%xmm3 - leaq 16(%rdi),%rdi - - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm3 - leaq 32(%rcx),%rcx - xorps %xmm3,%xmm2 -.Loop_enc1_15: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_15 -.byte 102,15,56,221,209 - movl %r10d,%eax - movq %r11,%rcx - movups %xmm2,0(%rsi) - leaq 16(%rsi),%rsi - subq $16,%rdx - jnc .Lcbc_enc_loop - addq $16,%rdx - jnz .Lcbc_enc_tail - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%r8) - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - jmp .Lcbc_ret - -.Lcbc_enc_tail: - movq %rdx,%rcx - xchgq %rdi,%rsi -.long 0x9066A4F3 - movl $16,%ecx - subq %rdx,%rcx - xorl %eax,%eax -.long 0x9066AAF3 - leaq -16(%rdi),%rdi - movl %r10d,%eax - movq %rdi,%rsi - movq %r11,%rcx - xorq %rdx,%rdx - jmp .Lcbc_enc_loop - -.align 16 -.Lcbc_decrypt: - cmpq $16,%rdx - jne .Lcbc_decrypt_bulk - - - - movdqu (%rdi),%xmm2 - movdqu (%r8),%xmm3 - movdqa %xmm2,%xmm4 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_16: -.byte 102,15,56,222,209 - decl %r10d - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_16 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqu %xmm4,(%r8) - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lcbc_ret -.align 16 -.Lcbc_decrypt_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $16,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r8),%xmm10 - movl %r10d,%eax - cmpq $0x50,%rdx - jbe .Lcbc_dec_tail - - movups (%rcx),%xmm0 - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 - movl OPENSSL_ia32cap_P+4(%rip),%r9d - cmpq $0x70,%rdx - jbe .Lcbc_dec_six_or_seven - - andl $71303168,%r9d - subq $0x50,%rdx - cmpl $4194304,%r9d - je .Lcbc_dec_loop6_enter - subq $0x20,%rdx - leaq 112(%rcx),%rcx - jmp .Lcbc_dec_loop8_enter -.align 16 -.Lcbc_dec_loop8: - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi -.Lcbc_dec_loop8_enter: - movdqu 96(%rdi),%xmm8 - pxor %xmm0,%xmm2 - movdqu 112(%rdi),%xmm9 - pxor %xmm0,%xmm3 - movups 16-112(%rcx),%xmm1 - pxor %xmm0,%xmm4 - xorq %r11,%r11 - cmpq $0x70,%rdx - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 - -.byte 102,15,56,222,209 - pxor %xmm0,%xmm9 - movups 32-112(%rcx),%xmm0 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 - setnc %r11b - shlq $7,%r11 -.byte 102,68,15,56,222,201 - addq %rdi,%r11 - movups 48-112(%rcx),%xmm1 -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 64-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 80-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 96-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 112-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 128-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 144-112(%rcx),%xmm1 - cmpl $11,%eax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 160-112(%rcx),%xmm0 - jb .Lcbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 176-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 192-112(%rcx),%xmm0 - je .Lcbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 208-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 224-112(%rcx),%xmm0 - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_done: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm12 - pxor %xmm0,%xmm13 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movdqu 80(%rdi),%xmm1 - -.byte 102,65,15,56,223,210 - movdqu 96(%rdi),%xmm10 - pxor %xmm0,%xmm1 -.byte 102,65,15,56,223,219 - pxor %xmm0,%xmm10 - movdqu 112(%rdi),%xmm0 -.byte 102,65,15,56,223,228 - leaq 128(%rdi),%rdi - movdqu 0(%r11),%xmm11 -.byte 102,65,15,56,223,237 -.byte 102,65,15,56,223,246 - movdqu 16(%r11),%xmm12 - movdqu 32(%r11),%xmm13 -.byte 102,65,15,56,223,255 -.byte 102,68,15,56,223,193 - movdqu 48(%r11),%xmm14 - movdqu 64(%r11),%xmm15 -.byte 102,69,15,56,223,202 - movdqa %xmm0,%xmm10 - movdqu 80(%r11),%xmm1 - movups -112(%rcx),%xmm0 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm1,%xmm7 - movups %xmm8,96(%rsi) - leaq 112(%rsi),%rsi - - subq $0x80,%rdx - ja .Lcbc_dec_loop8 - - movaps %xmm9,%xmm2 - leaq -112(%rcx),%rcx - addq $0x70,%rdx - jle .Lcbc_dec_clear_tail_collected - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi - cmpq $0x50,%rdx - jbe .Lcbc_dec_tail - - movaps %xmm11,%xmm2 -.Lcbc_dec_six_or_seven: - cmpq $0x60,%rdx - ja .Lcbc_dec_seven - - movaps %xmm7,%xmm8 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - leaq 80(%rsi),%rsi - movdqa %xmm7,%xmm2 - pxor %xmm7,%xmm7 - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_seven: - movups 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups 80(%rdi),%xmm9 - pxor %xmm10,%xmm2 - movups 96(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm9,%xmm8 - movdqu %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - leaq 96(%rsi),%rsi - movdqa %xmm8,%xmm2 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_loop6: - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 -.Lcbc_dec_loop6_enter: - leaq 96(%rdi),%rdi - movdqa %xmm7,%xmm8 - - call _aesni_decrypt6 - - pxor %xmm10,%xmm2 - movdqa %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm6 - movq %r11,%rcx - movdqu %xmm5,48(%rsi) - pxor %xmm15,%xmm7 - movl %r10d,%eax - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - subq $0x60,%rdx - ja .Lcbc_dec_loop6 - - movdqa %xmm7,%xmm2 - addq $0x50,%rdx - jle .Lcbc_dec_clear_tail_collected - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - -.Lcbc_dec_tail: - movups (%rdi),%xmm2 - subq $0x10,%rdx - jbe .Lcbc_dec_one - - movups 16(%rdi),%xmm3 - movaps %xmm2,%xmm11 - subq $0x10,%rdx - jbe .Lcbc_dec_two - - movups 32(%rdi),%xmm4 - movaps %xmm3,%xmm12 - subq $0x10,%rdx - jbe .Lcbc_dec_three - - movups 48(%rdi),%xmm5 - movaps %xmm4,%xmm13 - subq $0x10,%rdx - jbe .Lcbc_dec_four - - movups 64(%rdi),%xmm6 - movaps %xmm5,%xmm14 - movaps %xmm6,%xmm15 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm15,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - leaq 64(%rsi),%rsi - movdqa %xmm6,%xmm2 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - subq $0x10,%rdx - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_one: - movaps %xmm2,%xmm11 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_17: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_17 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movaps %xmm11,%xmm10 - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_two: - movaps %xmm3,%xmm12 - call _aesni_decrypt2 - pxor %xmm10,%xmm2 - movaps %xmm12,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - movdqa %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leaq 16(%rsi),%rsi - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_three: - movaps %xmm4,%xmm13 - call _aesni_decrypt3 - pxor %xmm10,%xmm2 - movaps %xmm13,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movdqa %xmm4,%xmm2 - pxor %xmm4,%xmm4 - leaq 32(%rsi),%rsi - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_four: - movaps %xmm5,%xmm14 - call _aesni_decrypt4 - pxor %xmm10,%xmm2 - movaps %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movdqa %xmm5,%xmm2 - pxor %xmm5,%xmm5 - leaq 48(%rsi),%rsi - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 -.Lcbc_dec_tail_collected: - movups %xmm10,(%r8) - andq $15,%rdx - jnz .Lcbc_dec_tail_partial - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lcbc_dec_ret -.align 16 -.Lcbc_dec_tail_partial: - movaps %xmm2,(%rsp) - pxor %xmm2,%xmm2 - movq $16,%rcx - movq %rsi,%rdi - subq %rdx,%rcx - leaq (%rsp),%rsi -.long 0x9066A4F3 - movdqa %xmm2,(%rsp) - -.Lcbc_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - leaq (%rbp),%rsp - popq %rbp -.Lcbc_ret: - .byte 0xf3,0xc3 -.size aesni_cbc_encrypt,.-aesni_cbc_encrypt -.globl aesni_set_decrypt_key -.type aesni_set_decrypt_key,@function -.align 16 -aesni_set_decrypt_key: -.byte 0x48,0x83,0xEC,0x08 - call __aesni_set_encrypt_key - shll $4,%esi - testl %eax,%eax - jnz .Ldec_key_ret - leaq 16(%rdx,%rsi,1),%rdi - - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 - movups %xmm0,(%rdi) - movups %xmm1,(%rdx) - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - -.Ldec_key_inverse: - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - movups %xmm0,16(%rdi) - movups %xmm1,-16(%rdx) - cmpq %rdx,%rdi - ja .Ldec_key_inverse - - movups (%rdx),%xmm0 -.byte 102,15,56,219,192 - pxor %xmm1,%xmm1 - movups %xmm0,(%rdi) - pxor %xmm0,%xmm0 -.Ldec_key_ret: - addq $8,%rsp - .byte 0xf3,0xc3 -.LSEH_end_set_decrypt_key: -.size aesni_set_decrypt_key,.-aesni_set_decrypt_key -.globl aesni_set_encrypt_key -.type aesni_set_encrypt_key,@function -.align 16 -aesni_set_encrypt_key: -__aesni_set_encrypt_key: -.byte 0x48,0x83,0xEC,0x08 - movq $-1,%rax - testq %rdi,%rdi - jz .Lenc_key_ret - testq %rdx,%rdx - jz .Lenc_key_ret - - movl $268437504,%r10d - movups (%rdi),%xmm0 - xorps %xmm4,%xmm4 - andl OPENSSL_ia32cap_P+4(%rip),%r10d - leaq 16(%rdx),%rax - cmpl $256,%esi - je .L14rounds - cmpl $192,%esi - je .L12rounds - cmpl $128,%esi - jne .Lbad_keybits - -.L10rounds: - movl $9,%esi - cmpl $268435456,%r10d - je .L10rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,200,1 - call .Lkey_expansion_128_cold -.byte 102,15,58,223,200,2 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,4 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,8 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,16 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,32 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,64 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,128 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,27 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,54 - call .Lkey_expansion_128 - movups %xmm0,(%rax) - movl %esi,80(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L10rounds_alt: - movdqa .Lkey_rotate(%rip),%xmm5 - movl $8,%r10d - movdqa .Lkey_rcon1(%rip),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,(%rdx) - jmp .Loop_key128 - -.align 16 -.Loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leaq 16(%rax),%rax - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%rax) - movdqa %xmm0,%xmm2 - - decl %r10d - jnz .Loop_key128 - - movdqa .Lkey_rcon1b(%rip),%xmm4 - -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%rax) - - movl %esi,96(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L12rounds: - movq 16(%rdi),%xmm2 - movl $11,%esi - cmpl $268435456,%r10d - je .L12rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,202,1 - call .Lkey_expansion_192a_cold -.byte 102,15,58,223,202,2 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,4 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,8 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,16 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,32 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,64 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,128 - call .Lkey_expansion_192b - movups %xmm0,(%rax) - movl %esi,48(%rax) - xorq %rax,%rax - jmp .Lenc_key_ret - -.align 16 -.L12rounds_alt: - movdqa .Lkey_rotate192(%rip),%xmm5 - movdqa .Lkey_rcon1(%rip),%xmm4 - movl $8,%r10d - movdqu %xmm0,(%rdx) - jmp .Loop_key192 - -.align 16 -.Loop_key192: - movq %xmm2,0(%rax) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leaq 24(%rax),%rax - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - - pshufd $0xff,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%rax) - - decl %r10d - jnz .Loop_key192 - - movl %esi,32(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L14rounds: - movups 16(%rdi),%xmm2 - movl $13,%esi - leaq 16(%rax),%rax - cmpl $268435456,%r10d - je .L14rounds_alt - - movups %xmm0,(%rdx) - movups %xmm2,16(%rdx) -.byte 102,15,58,223,202,1 - call .Lkey_expansion_256a_cold -.byte 102,15,58,223,200,1 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,2 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,2 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,4 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,4 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,8 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,8 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,16 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,16 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,32 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,32 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,64 - call .Lkey_expansion_256a - movups %xmm0,(%rax) - movl %esi,16(%rax) - xorq %rax,%rax - jmp .Lenc_key_ret - -.align 16 -.L14rounds_alt: - movdqa .Lkey_rotate(%rip),%xmm5 - movdqa .Lkey_rcon1(%rip),%xmm4 - movl $7,%r10d - movdqu %xmm0,0(%rdx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,16(%rdx) - jmp .Loop_key256 - -.align 16 -.Loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - decl %r10d - jz .Ldone_key256 - - pshufd $0xff,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%rax) - leaq 32(%rax),%rax - movdqa %xmm2,%xmm1 - - jmp .Loop_key256 - -.Ldone_key256: - movl %esi,16(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.Lbad_keybits: - movq $-2,%rax -.Lenc_key_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - addq $8,%rsp - .byte 0xf3,0xc3 -.LSEH_end_set_encrypt_key: - -.align 16 -.Lkey_expansion_128: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_192a: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_192a_cold: - movaps %xmm2,%xmm5 -.Lkey_expansion_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%rax) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%rax) - leaq 32(%rax),%rax - jmp .Lkey_expansion_192b_warm - -.align 16 -.Lkey_expansion_256a: - movups %xmm2,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_256b: - movups %xmm0,(%rax) - leaq 16(%rax),%rax - - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - .byte 0xf3,0xc3 -.size aesni_set_encrypt_key,.-aesni_set_encrypt_key -.size __aesni_set_encrypt_key,.-__aesni_set_encrypt_key -.align 64 -.Lbswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.Lincrement32: -.long 6,6,6,0 -.Lincrement64: -.long 1,0,0,0 -.Lxts_magic: -.long 0x87,0,1,0 -.Lincrement1: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -.Lkey_rotate: -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d -.Lkey_rotate192: -.long 0x04070605,0x04070605,0x04070605,0x04070605 -.Lkey_rcon1: -.long 1,1,1,1 -.Lkey_rcon1b: -.long 0x1b,0x1b,0x1b,0x1b - -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/aes/bsaes-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/bsaes-x86_64.s deleted file mode 100644 index 0fd201167f647a..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/bsaes-x86_64.s +++ /dev/null @@ -1,2498 +0,0 @@ -.text - - - - -.type _bsaes_encrypt8,@function -.align 64 -_bsaes_encrypt8: - leaq .LBS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa 80(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 -_bsaes_encrypt8_bitslice: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp .Lenc_sbox -.align 16 -.Lenc_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -.Lenc_sbox: - pxor %xmm5,%xmm4 - pxor %xmm0,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm1,%xmm5 - pxor %xmm15,%xmm4 - - pxor %xmm2,%xmm5 - pxor %xmm6,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm3,%xmm2 - pxor %xmm4,%xmm3 - pxor %xmm0,%xmm2 - - pxor %xmm6,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm6,%xmm10 - movdqa %xmm0,%xmm9 - movdqa %xmm4,%xmm8 - movdqa %xmm1,%xmm12 - movdqa %xmm5,%xmm11 - - pxor %xmm3,%xmm10 - pxor %xmm1,%xmm9 - pxor %xmm2,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm3,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm15,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm2,%xmm11 - pxor %xmm15,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm6,%xmm12 - movdqa %xmm4,%xmm11 - pxor %xmm0,%xmm12 - pxor %xmm5,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm1,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm3,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm0,%xmm13 - pand %xmm2,%xmm11 - movdqa %xmm6,%xmm14 - pand %xmm15,%xmm12 - pand %xmm4,%xmm13 - por %xmm5,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm5,%xmm11 - movdqa %xmm4,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm5,%xmm9 - pxor %xmm4,%xmm5 - pand %xmm14,%xmm4 - pand %xmm13,%xmm5 - pxor %xmm4,%xmm5 - pxor %xmm9,%xmm4 - pxor %xmm15,%xmm11 - pxor %xmm2,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm2,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm2 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm2,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm2 - pxor %xmm11,%xmm5 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm2 - - movdqa %xmm6,%xmm11 - movdqa %xmm0,%xmm7 - pxor %xmm3,%xmm11 - pxor %xmm1,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm3,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm1,%xmm3 - pand %xmm14,%xmm7 - pand %xmm12,%xmm1 - pand %xmm13,%xmm11 - pand %xmm8,%xmm3 - pxor %xmm11,%xmm7 - pxor %xmm1,%xmm3 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm1 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm6,%xmm10 - pxor %xmm0,%xmm6 - pand %xmm14,%xmm0 - pand %xmm13,%xmm6 - pxor %xmm0,%xmm6 - pxor %xmm10,%xmm0 - pxor %xmm11,%xmm6 - pxor %xmm11,%xmm3 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm1 - pxor %xmm15,%xmm6 - pxor %xmm5,%xmm0 - pxor %xmm6,%xmm3 - pxor %xmm15,%xmm5 - pxor %xmm0,%xmm15 - - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm4 - pxor %xmm2,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm4,%xmm3 - - pxor %xmm2,%xmm5 - decl %r10d - jl .Lenc_done - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm3,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm5,%xmm10 - pxor %xmm9,%xmm3 - pshufd $0x93,%xmm2,%xmm11 - pxor %xmm10,%xmm5 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm2 - pshufd $0x93,%xmm1,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm1 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm2,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm5,%xmm11 - pshufd $0x4E,%xmm2,%xmm7 - pxor %xmm1,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm3,%xmm10 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm1,%xmm5 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm12,%xmm8 - pxor %xmm10,%xmm2 - pxor %xmm14,%xmm6 - pxor %xmm13,%xmm5 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm1 - movdqa %xmm8,%xmm4 - movdqa 48(%r11),%xmm7 - jnz .Lenc_loop - movdqa 64(%r11),%xmm7 - jmp .Lenc_loop -.align 16 -.Lenc_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm2,%xmm10 - psrlq $1,%xmm2 - pxor %xmm4,%xmm1 - pxor %xmm6,%xmm2 - pand %xmm7,%xmm1 - pand %xmm7,%xmm2 - pxor %xmm1,%xmm4 - psllq $1,%xmm1 - pxor %xmm2,%xmm6 - psllq $1,%xmm2 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm2 - movdqa %xmm3,%xmm9 - psrlq $1,%xmm3 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm5,%xmm3 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm3 - pand %xmm7,%xmm15 - pxor %xmm3,%xmm5 - psllq $1,%xmm3 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm2,%xmm10 - psrlq $2,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm1,%xmm2 - pand %xmm8,%xmm6 - pand %xmm8,%xmm2 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm2,%xmm1 - psllq $2,%xmm2 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm2 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm5,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm5 - psllq $2,%xmm0 - pxor %xmm15,%xmm3 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm5,%xmm9 - psrlq $4,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $4,%xmm3 - pxor %xmm4,%xmm5 - pxor %xmm1,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm4 - psllq $4,%xmm5 - pxor %xmm3,%xmm1 - psllq $4,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm2,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm2 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 -.size _bsaes_encrypt8,.-_bsaes_encrypt8 - -.type _bsaes_decrypt8,@function -.align 64 -_bsaes_decrypt8: - leaq .LBS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa -48(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp .Ldec_sbox -.align 16 -.Ldec_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -.Ldec_sbox: - pxor %xmm3,%xmm2 - - pxor %xmm6,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm3,%xmm5 - pxor %xmm5,%xmm6 - pxor %xmm6,%xmm0 - - pxor %xmm0,%xmm15 - pxor %xmm4,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm15,%xmm4 - pxor %xmm2,%xmm0 - movdqa %xmm2,%xmm10 - movdqa %xmm6,%xmm9 - movdqa %xmm0,%xmm8 - movdqa %xmm3,%xmm12 - movdqa %xmm4,%xmm11 - - pxor %xmm15,%xmm10 - pxor %xmm3,%xmm9 - pxor %xmm5,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm15,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm1,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm5,%xmm11 - pxor %xmm1,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm2,%xmm12 - movdqa %xmm0,%xmm11 - pxor %xmm6,%xmm12 - pxor %xmm4,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm3,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm15,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm6,%xmm13 - pand %xmm5,%xmm11 - movdqa %xmm2,%xmm14 - pand %xmm1,%xmm12 - pand %xmm0,%xmm13 - por %xmm4,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm4,%xmm11 - movdqa %xmm0,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm4,%xmm9 - pxor %xmm0,%xmm4 - pand %xmm14,%xmm0 - pand %xmm13,%xmm4 - pxor %xmm0,%xmm4 - pxor %xmm9,%xmm0 - pxor %xmm1,%xmm11 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm1,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm5,%xmm1 - pand %xmm14,%xmm7 - pand %xmm12,%xmm5 - pand %xmm13,%xmm11 - pand %xmm8,%xmm1 - pxor %xmm11,%xmm7 - pxor %xmm5,%xmm1 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm5 - pxor %xmm11,%xmm4 - pxor %xmm11,%xmm1 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm5 - - movdqa %xmm2,%xmm11 - movdqa %xmm6,%xmm7 - pxor %xmm15,%xmm11 - pxor %xmm3,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm3,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm3 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm3,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm3 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm2,%xmm10 - pxor %xmm6,%xmm2 - pand %xmm14,%xmm6 - pand %xmm13,%xmm2 - pxor %xmm6,%xmm2 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm3 - pxor %xmm6,%xmm0 - pxor %xmm4,%xmm5 - - pxor %xmm0,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm6,%xmm4 - pxor %xmm1,%xmm3 - pxor %xmm15,%xmm6 - pxor %xmm4,%xmm3 - pxor %xmm5,%xmm2 - pxor %xmm0,%xmm5 - pxor %xmm3,%xmm2 - - pxor %xmm15,%xmm3 - pxor %xmm2,%xmm6 - decl %r10d - jl .Ldec_done - - pshufd $0x4E,%xmm15,%xmm7 - pshufd $0x4E,%xmm2,%xmm13 - pxor %xmm15,%xmm7 - pshufd $0x4E,%xmm4,%xmm14 - pxor %xmm2,%xmm13 - pshufd $0x4E,%xmm0,%xmm8 - pxor %xmm4,%xmm14 - pshufd $0x4E,%xmm5,%xmm9 - pxor %xmm0,%xmm8 - pshufd $0x4E,%xmm3,%xmm10 - pxor %xmm5,%xmm9 - pxor %xmm13,%xmm15 - pxor %xmm13,%xmm0 - pshufd $0x4E,%xmm1,%xmm11 - pxor %xmm3,%xmm10 - pxor %xmm7,%xmm5 - pxor %xmm8,%xmm3 - pshufd $0x4E,%xmm6,%xmm12 - pxor %xmm1,%xmm11 - pxor %xmm14,%xmm0 - pxor %xmm9,%xmm1 - pxor %xmm6,%xmm12 - - pxor %xmm14,%xmm5 - pxor %xmm13,%xmm3 - pxor %xmm13,%xmm1 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm14,%xmm1 - pxor %xmm14,%xmm6 - pxor %xmm12,%xmm4 - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm5,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm3,%xmm10 - pxor %xmm9,%xmm5 - pshufd $0x93,%xmm1,%xmm11 - pxor %xmm10,%xmm3 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm1 - pshufd $0x93,%xmm2,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm2 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm1,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm3,%xmm11 - pshufd $0x4E,%xmm1,%xmm7 - pxor %xmm2,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm5,%xmm10 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm2,%xmm3 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm12,%xmm8 - pxor %xmm1,%xmm10 - pxor %xmm14,%xmm6 - pxor %xmm3,%xmm13 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm2 - movdqa %xmm13,%xmm5 - movdqa %xmm8,%xmm4 - movdqa %xmm2,%xmm1 - movdqa %xmm10,%xmm2 - movdqa -16(%r11),%xmm7 - jnz .Ldec_loop - movdqa -32(%r11),%xmm7 - jmp .Ldec_loop -.align 16 -.Ldec_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm2,%xmm9 - psrlq $1,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $1,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm6,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm4 - psllq $1,%xmm2 - pxor %xmm1,%xmm6 - psllq $1,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm3,%xmm5 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm5 - pand %xmm7,%xmm15 - pxor %xmm5,%xmm3 - psllq $1,%xmm5 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm1,%xmm10 - psrlq $2,%xmm1 - pxor %xmm4,%xmm6 - pxor %xmm2,%xmm1 - pand %xmm8,%xmm6 - pand %xmm8,%xmm1 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm1,%xmm2 - psllq $2,%xmm1 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm3 - psllq $2,%xmm0 - pxor %xmm15,%xmm5 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm3,%xmm9 - psrlq $4,%xmm3 - movdqa %xmm5,%xmm10 - psrlq $4,%xmm5 - pxor %xmm4,%xmm3 - pxor %xmm2,%xmm5 - pand %xmm7,%xmm3 - pand %xmm7,%xmm5 - pxor %xmm3,%xmm4 - psllq $4,%xmm3 - pxor %xmm5,%xmm2 - psllq $4,%xmm5 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm5 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm1 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 -.size _bsaes_decrypt8,.-_bsaes_decrypt8 -.type _bsaes_key_convert,@function -.align 16 -_bsaes_key_convert: - leaq .Lmasks(%rip),%r11 - movdqu (%rcx),%xmm7 - leaq 16(%rcx),%rcx - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - movdqa 48(%r11),%xmm3 - movdqa 64(%r11),%xmm4 - pcmpeqd %xmm5,%xmm5 - - movdqu (%rcx),%xmm6 - movdqa %xmm7,(%rax) - leaq 16(%rax),%rax - decl %r10d - jmp .Lkey_loop -.align 16 -.Lkey_loop: -.byte 102,15,56,0,244 - - movdqa %xmm0,%xmm8 - movdqa %xmm1,%xmm9 - - pand %xmm6,%xmm8 - pand %xmm6,%xmm9 - movdqa %xmm2,%xmm10 - pcmpeqb %xmm0,%xmm8 - psllq $4,%xmm0 - movdqa %xmm3,%xmm11 - pcmpeqb %xmm1,%xmm9 - psllq $4,%xmm1 - - pand %xmm6,%xmm10 - pand %xmm6,%xmm11 - movdqa %xmm0,%xmm12 - pcmpeqb %xmm2,%xmm10 - psllq $4,%xmm2 - movdqa %xmm1,%xmm13 - pcmpeqb %xmm3,%xmm11 - psllq $4,%xmm3 - - movdqa %xmm2,%xmm14 - movdqa %xmm3,%xmm15 - pxor %xmm5,%xmm8 - pxor %xmm5,%xmm9 - - pand %xmm6,%xmm12 - pand %xmm6,%xmm13 - movdqa %xmm8,0(%rax) - pcmpeqb %xmm0,%xmm12 - psrlq $4,%xmm0 - movdqa %xmm9,16(%rax) - pcmpeqb %xmm1,%xmm13 - psrlq $4,%xmm1 - leaq 16(%rcx),%rcx - - pand %xmm6,%xmm14 - pand %xmm6,%xmm15 - movdqa %xmm10,32(%rax) - pcmpeqb %xmm2,%xmm14 - psrlq $4,%xmm2 - movdqa %xmm11,48(%rax) - pcmpeqb %xmm3,%xmm15 - psrlq $4,%xmm3 - movdqu (%rcx),%xmm6 - - pxor %xmm5,%xmm13 - pxor %xmm5,%xmm14 - movdqa %xmm12,64(%rax) - movdqa %xmm13,80(%rax) - movdqa %xmm14,96(%rax) - movdqa %xmm15,112(%rax) - leaq 128(%rax),%rax - decl %r10d - jnz .Lkey_loop - - movdqa 80(%r11),%xmm7 - - .byte 0xf3,0xc3 -.size _bsaes_key_convert,.-_bsaes_key_convert - -.globl bsaes_cbc_encrypt -.type bsaes_cbc_encrypt,@function -.align 16 -bsaes_cbc_encrypt: - cmpl $0,%r9d - jne asm_AES_cbc_encrypt - cmpq $128,%rdx - jb asm_AES_cbc_encrypt - - movq %rsp,%rax -.Lcbc_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movq %r8,%rbx - shrq $4,%r14 - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - movdqu (%rbx),%xmm14 - subq $8,%r14 -.Lcbc_dec_loop: - movdqu 0(%r12),%xmm15 - movdqu 16(%r12),%xmm0 - movdqu 32(%r12),%xmm1 - movdqu 48(%r12),%xmm2 - movdqu 64(%r12),%xmm3 - movdqu 80(%r12),%xmm4 - movq %rsp,%rax - movdqu 96(%r12),%xmm5 - movl %edx,%r10d - movdqu 112(%r12),%xmm6 - movdqa %xmm14,32(%rbp) - - call _bsaes_decrypt8 - - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm2 - movdqu 112(%r12),%xmm14 - pxor %xmm13,%xmm4 - movdqu %xmm15,0(%r13) - leaq 128(%r12),%r12 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - subq $8,%r14 - jnc .Lcbc_dec_loop - - addq $8,%r14 - jz .Lcbc_dec_done - - movdqu 0(%r12),%xmm15 - movq %rsp,%rax - movl %edx,%r10d - cmpq $2,%r14 - jb .Lcbc_dec_one - movdqu 16(%r12),%xmm0 - je .Lcbc_dec_two - movdqu 32(%r12),%xmm1 - cmpq $4,%r14 - jb .Lcbc_dec_three - movdqu 48(%r12),%xmm2 - je .Lcbc_dec_four - movdqu 64(%r12),%xmm3 - cmpq $6,%r14 - jb .Lcbc_dec_five - movdqu 80(%r12),%xmm4 - je .Lcbc_dec_six - movdqu 96(%r12),%xmm5 - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm14 - pxor %xmm12,%xmm2 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_six: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm14 - pxor %xmm11,%xmm6 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_five: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm14 - pxor %xmm10,%xmm1 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_four: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm14 - pxor %xmm9,%xmm3 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_three: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm14 - pxor %xmm8,%xmm5 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_two: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm14 - pxor %xmm7,%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_one: - leaq (%r12),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm14 - movdqu %xmm14,(%r13) - movdqa %xmm15,%xmm14 - -.Lcbc_dec_done: - movdqu %xmm14,(%rbx) - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lcbc_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lcbc_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lcbc_dec_epilogue: - .byte 0xf3,0xc3 -.size bsaes_cbc_encrypt,.-bsaes_cbc_encrypt - -.globl bsaes_ctr32_encrypt_blocks -.type bsaes_ctr32_encrypt_blocks,@function -.align 16 -bsaes_ctr32_encrypt_blocks: - movq %rsp,%rax -.Lctr_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movdqu (%r8),%xmm0 - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movdqa %xmm0,32(%rbp) - cmpq $8,%rdx - jb .Lctr_enc_short - - movl %eax,%ebx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %ebx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - movdqa (%rsp),%xmm8 - leaq .LADD1(%rip),%r11 - movdqa 32(%rbp),%xmm15 - movdqa -32(%r11),%xmm7 -.byte 102,68,15,56,0,199 -.byte 102,68,15,56,0,255 - movdqa %xmm8,(%rsp) - jmp .Lctr_enc_loop -.align 16 -.Lctr_enc_loop: - movdqa %xmm15,32(%rbp) - movdqa %xmm15,%xmm0 - movdqa %xmm15,%xmm1 - paddd 0(%r11),%xmm0 - movdqa %xmm15,%xmm2 - paddd 16(%r11),%xmm1 - movdqa %xmm15,%xmm3 - paddd 32(%r11),%xmm2 - movdqa %xmm15,%xmm4 - paddd 48(%r11),%xmm3 - movdqa %xmm15,%xmm5 - paddd 64(%r11),%xmm4 - movdqa %xmm15,%xmm6 - paddd 80(%r11),%xmm5 - paddd 96(%r11),%xmm6 - - - - movdqa (%rsp),%xmm8 - leaq 16(%rsp),%rax - movdqa -16(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq .LBS0(%rip),%r11 - movl %ebx,%r10d - - call _bsaes_encrypt8_bitslice - - subq $8,%r14 - jc .Lctr_enc_loop_done - - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - movdqu 32(%r12),%xmm9 - movdqu 48(%r12),%xmm10 - movdqu 64(%r12),%xmm11 - movdqu 80(%r12),%xmm12 - movdqu 96(%r12),%xmm13 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - pxor %xmm15,%xmm7 - movdqa 32(%rbp),%xmm15 - pxor %xmm8,%xmm0 - movdqu %xmm7,0(%r13) - pxor %xmm9,%xmm3 - movdqu %xmm0,16(%r13) - pxor %xmm10,%xmm5 - movdqu %xmm3,32(%r13) - pxor %xmm11,%xmm2 - movdqu %xmm5,48(%r13) - pxor %xmm12,%xmm6 - movdqu %xmm2,64(%r13) - pxor %xmm13,%xmm1 - movdqu %xmm6,80(%r13) - pxor %xmm14,%xmm4 - movdqu %xmm1,96(%r13) - leaq .LADD1(%rip),%r11 - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - paddd 112(%r11),%xmm15 - jnz .Lctr_enc_loop - - jmp .Lctr_enc_done -.align 16 -.Lctr_enc_loop_done: - addq $8,%r14 - movdqu 0(%r12),%xmm7 - pxor %xmm7,%xmm15 - movdqu %xmm15,0(%r13) - cmpq $2,%r14 - jb .Lctr_enc_done - movdqu 16(%r12),%xmm8 - pxor %xmm8,%xmm0 - movdqu %xmm0,16(%r13) - je .Lctr_enc_done - movdqu 32(%r12),%xmm9 - pxor %xmm9,%xmm3 - movdqu %xmm3,32(%r13) - cmpq $4,%r14 - jb .Lctr_enc_done - movdqu 48(%r12),%xmm10 - pxor %xmm10,%xmm5 - movdqu %xmm5,48(%r13) - je .Lctr_enc_done - movdqu 64(%r12),%xmm11 - pxor %xmm11,%xmm2 - movdqu %xmm2,64(%r13) - cmpq $6,%r14 - jb .Lctr_enc_done - movdqu 80(%r12),%xmm12 - pxor %xmm12,%xmm6 - movdqu %xmm6,80(%r13) - je .Lctr_enc_done - movdqu 96(%r12),%xmm13 - pxor %xmm13,%xmm1 - movdqu %xmm1,96(%r13) - jmp .Lctr_enc_done - -.align 16 -.Lctr_enc_short: - leaq 32(%rbp),%rdi - leaq 48(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_encrypt - movdqu (%r12),%xmm0 - leaq 16(%r12),%r12 - movl 44(%rbp),%eax - bswapl %eax - pxor 48(%rbp),%xmm0 - incl %eax - movdqu %xmm0,(%r13) - bswapl %eax - leaq 16(%r13),%r13 - movl %eax,44(%rsp) - decq %r14 - jnz .Lctr_enc_short - -.Lctr_enc_done: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lctr_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lctr_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lctr_enc_epilogue: - .byte 0xf3,0xc3 -.size bsaes_ctr32_encrypt_blocks,.-bsaes_ctr32_encrypt_blocks -.globl bsaes_xts_encrypt -.type bsaes_xts_encrypt,@function -.align 16 -bsaes_xts_encrypt: - movq %rsp,%rax -.Lxts_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - andq $-16,%r14 - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc .Lxts_enc_short - jmp .Lxts_enc_loop - -.align 16 -.Lxts_enc_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm1,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc .Lxts_enc_loop - -.Lxts_enc_short: - addq $0x80,%r14 - jz .Lxts_enc_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je .Lxts_enc_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je .Lxts_enc_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je .Lxts_enc_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je .Lxts_enc_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je .Lxts_enc_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je .Lxts_enc_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - movdqu %xmm1,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - movdqu %xmm2,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - movdqu %xmm5,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - movdqu %xmm3,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_encrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -.Lxts_enc_done: - andl $15,%ebx - jz .Lxts_enc_ret - movq %r13,%rdx - -.Lxts_enc_steal: - movzbl (%r12),%eax - movzbl -16(%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,-16(%rdx) - movb %cl,0(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz .Lxts_enc_steal - - movdqu -16(%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_encrypt - pxor 32(%rbp),%xmm6 - movdqu %xmm6,-16(%r13) - -.Lxts_enc_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lxts_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lxts_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lxts_enc_epilogue: - .byte 0xf3,0xc3 -.size bsaes_xts_encrypt,.-bsaes_xts_encrypt - -.globl bsaes_xts_decrypt -.type bsaes_xts_decrypt,@function -.align 16 -bsaes_xts_decrypt: - movq %rsp,%rax -.Lxts_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - xorl %eax,%eax - andq $-16,%r14 - testl $15,%ebx - setnz %al - shlq $4,%rax - subq %rax,%r14 - - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc .Lxts_dec_short - jmp .Lxts_dec_loop - -.align 16 -.Lxts_dec_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc .Lxts_dec_loop - -.Lxts_dec_short: - addq $0x80,%r14 - jz .Lxts_dec_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je .Lxts_dec_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je .Lxts_dec_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je .Lxts_dec_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je .Lxts_dec_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je .Lxts_dec_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je .Lxts_dec_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -.Lxts_dec_done: - andl $15,%ebx - jz .Lxts_dec_ret - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - movdqa %xmm6,%xmm5 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - movdqu (%r12),%xmm15 - pxor %xmm13,%xmm6 - - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm6 - movq %r13,%rdx - movdqu %xmm6,(%r13) - -.Lxts_dec_steal: - movzbl 16(%r12),%eax - movzbl (%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,(%rdx) - movb %cl,16(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz .Lxts_dec_steal - - movdqu (%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm5,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm5 - movdqu %xmm5,(%r13) - -.Lxts_dec_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lxts_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lxts_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lxts_dec_epilogue: - .byte 0xf3,0xc3 -.size bsaes_xts_decrypt,.-bsaes_xts_decrypt -.type _bsaes_const,@object -.align 64 -_bsaes_const: -.LM0ISR: -.quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -.LISRM0: -.quad 0x01040b0e0205080f, 0x0306090c00070a0d -.LISR: -.quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -.LBS0: -.quad 0x5555555555555555, 0x5555555555555555 -.LBS1: -.quad 0x3333333333333333, 0x3333333333333333 -.LBS2: -.quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f -.LSR: -.quad 0x0504070600030201, 0x0f0e0d0c0a09080b -.LSRM0: -.quad 0x0304090e00050a0f, 0x01060b0c0207080d -.LM0SR: -.quad 0x0a0e02060f03070b, 0x0004080c05090d01 -.LSWPUP: -.quad 0x0706050403020100, 0x0c0d0e0f0b0a0908 -.LSWPUPM0SR: -.quad 0x0a0d02060c03070b, 0x0004080f05090e01 -.LADD1: -.quad 0x0000000000000000, 0x0000000100000000 -.LADD2: -.quad 0x0000000000000000, 0x0000000200000000 -.LADD3: -.quad 0x0000000000000000, 0x0000000300000000 -.LADD4: -.quad 0x0000000000000000, 0x0000000400000000 -.LADD5: -.quad 0x0000000000000000, 0x0000000500000000 -.LADD6: -.quad 0x0000000000000000, 0x0000000600000000 -.LADD7: -.quad 0x0000000000000000, 0x0000000700000000 -.LADD8: -.quad 0x0000000000000000, 0x0000000800000000 -.Lxts_magic: -.long 0x87,0,1,0 -.Lmasks: -.quad 0x0101010101010101, 0x0101010101010101 -.quad 0x0202020202020202, 0x0202020202020202 -.quad 0x0404040404040404, 0x0404040404040404 -.quad 0x0808080808080808, 0x0808080808080808 -.LM0: -.quad 0x02060a0e03070b0f, 0x0004080c0105090d -.L63: -.quad 0x6363636363636363, 0x6363636363636363 -.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 -.align 64 -.size _bsaes_const,.-_bsaes_const diff --git a/deps/openssl/asm/x64-elf-gas/aes/vpaes-x86_64.s b/deps/openssl/asm/x64-elf-gas/aes/vpaes-x86_64.s deleted file mode 100644 index bf7c2b0b6f6b04..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/aes/vpaes-x86_64.s +++ /dev/null @@ -1,827 +0,0 @@ -.text - - - - - - - - - - - - - - - - -.type _vpaes_encrypt_core,@function -.align 16 -_vpaes_encrypt_core: - movq %rdx,%r9 - movq $16,%r11 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa .Lk_ipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movdqu (%r9),%xmm5 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa .Lk_ipt+16(%rip),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm5,%xmm2 - addq $16,%r9 - pxor %xmm2,%xmm0 - leaq .Lk_mc_backward(%rip),%r10 - jmp .Lenc_entry - -.align 16 -.Lenc_loop: - - movdqa %xmm13,%xmm4 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa %xmm15,%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%r11,%r10,1),%xmm1 -.byte 102,15,56,0,234 - movdqa (%r11,%r10,1),%xmm4 - movdqa %xmm14,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addq $16,%r9 - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addq $16,%r11 - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andq $0x30,%r11 - subq $1,%rax - pxor %xmm3,%xmm0 - -.Lenc_entry: - - movdqa %xmm9,%xmm1 - movdqa %xmm11,%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm10,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm5 - pxor %xmm1,%xmm3 - jnz .Lenc_loop - - - movdqa -96(%r10),%xmm4 - movdqa -80(%r10),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%r11,%r10,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - .byte 0xf3,0xc3 -.size _vpaes_encrypt_core,.-_vpaes_encrypt_core - - - - - - -.type _vpaes_decrypt_core,@function -.align 16 -_vpaes_decrypt_core: - movq %rdx,%r9 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa .Lk_dipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movq %rax,%r11 - psrld $4,%xmm1 - movdqu (%r9),%xmm5 - shlq $4,%r11 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa .Lk_dipt+16(%rip),%xmm0 - xorq $0x30,%r11 - leaq .Lk_dsbd(%rip),%r10 -.byte 102,15,56,0,193 - andq $0x30,%r11 - pxor %xmm5,%xmm2 - movdqa .Lk_mc_forward+48(%rip),%xmm5 - pxor %xmm2,%xmm0 - addq $16,%r9 - addq %r10,%r11 - jmp .Ldec_entry - -.align 16 -.Ldec_loop: - - - - movdqa -32(%r10),%xmm4 - movdqa -16(%r10),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 0(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addq $16,%r9 -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subq $1,%rax - -.Ldec_entry: - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - movdqa %xmm11,%xmm2 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm0 - pxor %xmm1,%xmm3 - jnz .Ldec_loop - - - movdqa 96(%r10),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%r10),%xmm0 - movdqa -352(%r11),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - .byte 0xf3,0xc3 -.size _vpaes_decrypt_core,.-_vpaes_decrypt_core - - - - - - -.type _vpaes_schedule_core,@function -.align 16 -_vpaes_schedule_core: - - - - - - call _vpaes_preheat - movdqa .Lk_rcon(%rip),%xmm8 - movdqu (%rdi),%xmm0 - - - movdqa %xmm0,%xmm3 - leaq .Lk_ipt(%rip),%r11 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - - leaq .Lk_sr(%rip),%r10 - testq %rcx,%rcx - jnz .Lschedule_am_decrypting - - - movdqu %xmm0,(%rdx) - jmp .Lschedule_go - -.Lschedule_am_decrypting: - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%rdx) - xorq $0x30,%r8 - -.Lschedule_go: - cmpl $192,%esi - ja .Lschedule_256 - je .Lschedule_192 - - - - - - - - - - -.Lschedule_128: - movl $10,%esi - -.Loop_schedule_128: - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - jmp .Loop_schedule_128 - - - - - - - - - - - - - - - - -.align 16 -.Lschedule_192: - movdqu 8(%rdi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%esi - -.Loop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp .Loop_schedule_192 - - - - - - - - - - - -.align 16 -.Lschedule_256: - movdqu 16(%rdi),%xmm0 - call _vpaes_schedule_transform - movl $7,%esi - -.Loop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - - - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd $0xFF,%xmm0,%xmm0 - movdqa %xmm7,%xmm5 - movdqa %xmm6,%xmm7 - call _vpaes_schedule_low_round - movdqa %xmm5,%xmm7 - - jmp .Loop_schedule_256 - - - - - - - - - - - - -.align 16 -.Lschedule_mangle_last: - - leaq .Lk_deskew(%rip),%r11 - testq %rcx,%rcx - jnz .Lschedule_mangle_last_dec - - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,193 - leaq .Lk_opt(%rip),%r11 - addq $32,%rdx - -.Lschedule_mangle_last_dec: - addq $-16,%rdx - pxor .Lk_s63(%rip),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%rdx) - - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - .byte 0xf3,0xc3 -.size _vpaes_schedule_core,.-_vpaes_schedule_core - - - - - - - - - - - - - - - -.type _vpaes_schedule_192_smear,@function -.align 16 -_vpaes_schedule_192_smear: - pshufd $0x80,%xmm6,%xmm1 - pshufd $0xFE,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - .byte 0xf3,0xc3 -.size _vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear - - - - - - - - - - - - - - - - - - - -.type _vpaes_schedule_round,@function -.align 16 -_vpaes_schedule_round: - - pxor %xmm1,%xmm1 -.byte 102,65,15,58,15,200,15 -.byte 102,69,15,58,15,192,15 - pxor %xmm1,%xmm7 - - - pshufd $0xFF,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round: - - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor .Lk_s63(%rip),%xmm7 - - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm10,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa %xmm13,%xmm4 -.byte 102,15,56,0,226 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - - - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - .byte 0xf3,0xc3 -.size _vpaes_schedule_round,.-_vpaes_schedule_round - - - - - - - - - - -.type _vpaes_schedule_transform,@function -.align 16 -_vpaes_schedule_transform: - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa (%r11),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%r11),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - .byte 0xf3,0xc3 -.size _vpaes_schedule_transform,.-_vpaes_schedule_transform - - - - - - - - - - - - - - - - - - - - - - - - -.type _vpaes_schedule_mangle,@function -.align 16 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa .Lk_mc_forward(%rip),%xmm5 - testq %rcx,%rcx - jnz .Lschedule_mangle_dec - - - addq $16,%rdx - pxor .Lk_s63(%rip),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - - jmp .Lschedule_mangle_both -.align 16 -.Lschedule_mangle_dec: - - leaq .Lk_dksd(%rip),%r11 - movdqa %xmm9,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm4 - - movdqa 0(%r11),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 32(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 64(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 96(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - - addq $-16,%rdx - -.Lschedule_mangle_both: - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - addq $-16,%r8 - andq $0x30,%r8 - movdqu %xmm3,(%rdx) - .byte 0xf3,0xc3 -.size _vpaes_schedule_mangle,.-_vpaes_schedule_mangle - - - - -.globl vpaes_set_encrypt_key -.type vpaes_set_encrypt_key,@function -.align 16 -vpaes_set_encrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - - movl $0,%ecx - movl $0x30,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 -.size vpaes_set_encrypt_key,.-vpaes_set_encrypt_key - -.globl vpaes_set_decrypt_key -.type vpaes_set_decrypt_key,@function -.align 16 -vpaes_set_decrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - shll $4,%eax - leaq 16(%rdx,%rax,1),%rdx - - movl $1,%ecx - movl %esi,%r8d - shrl $1,%r8d - andl $32,%r8d - xorl $32,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 -.size vpaes_set_decrypt_key,.-vpaes_set_decrypt_key - -.globl vpaes_encrypt -.type vpaes_encrypt,@function -.align 16 -vpaes_encrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 -.size vpaes_encrypt,.-vpaes_encrypt - -.globl vpaes_decrypt -.type vpaes_decrypt,@function -.align 16 -vpaes_decrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 -.size vpaes_decrypt,.-vpaes_decrypt -.globl vpaes_cbc_encrypt -.type vpaes_cbc_encrypt,@function -.align 16 -vpaes_cbc_encrypt: - xchgq %rcx,%rdx - subq $16,%rcx - jc .Lcbc_abort - movdqu (%r8),%xmm6 - subq %rdi,%rsi - call _vpaes_preheat - cmpl $0,%r9d - je .Lcbc_dec_loop - jmp .Lcbc_enc_loop -.align 16 -.Lcbc_enc_loop: - movdqu (%rdi),%xmm0 - pxor %xmm6,%xmm0 - call _vpaes_encrypt_core - movdqa %xmm0,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc .Lcbc_enc_loop - jmp .Lcbc_done -.align 16 -.Lcbc_dec_loop: - movdqu (%rdi),%xmm0 - movdqa %xmm0,%xmm7 - call _vpaes_decrypt_core - pxor %xmm6,%xmm0 - movdqa %xmm7,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc .Lcbc_dec_loop -.Lcbc_done: - movdqu %xmm6,(%r8) -.Lcbc_abort: - .byte 0xf3,0xc3 -.size vpaes_cbc_encrypt,.-vpaes_cbc_encrypt - - - - - - -.type _vpaes_preheat,@function -.align 16 -_vpaes_preheat: - leaq .Lk_s0F(%rip),%r10 - movdqa -32(%r10),%xmm10 - movdqa -16(%r10),%xmm11 - movdqa 0(%r10),%xmm9 - movdqa 48(%r10),%xmm13 - movdqa 64(%r10),%xmm12 - movdqa 80(%r10),%xmm15 - movdqa 96(%r10),%xmm14 - .byte 0xf3,0xc3 -.size _vpaes_preheat,.-_vpaes_preheat - - - - - -.type _vpaes_consts,@object -.align 64 -_vpaes_consts: -.Lk_inv: -.quad 0x0E05060F0D080180, 0x040703090A0B0C02 -.quad 0x01040A060F0B0780, 0x030D0E0C02050809 - -.Lk_s0F: -.quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F - -.Lk_ipt: -.quad 0xC2B2E8985A2A7000, 0xCABAE09052227808 -.quad 0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81 - -.Lk_sb1: -.quad 0xB19BE18FCB503E00, 0xA5DF7A6E142AF544 -.quad 0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF -.Lk_sb2: -.quad 0xE27A93C60B712400, 0x5EB7E955BC982FCD -.quad 0x69EB88400AE12900, 0xC2A163C8AB82234A -.Lk_sbo: -.quad 0xD0D26D176FBDC700, 0x15AABF7AC502A878 -.quad 0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA - -.Lk_mc_forward: -.quad 0x0407060500030201, 0x0C0F0E0D080B0A09 -.quad 0x080B0A0904070605, 0x000302010C0F0E0D -.quad 0x0C0F0E0D080B0A09, 0x0407060500030201 -.quad 0x000302010C0F0E0D, 0x080B0A0904070605 - -.Lk_mc_backward: -.quad 0x0605040702010003, 0x0E0D0C0F0A09080B -.quad 0x020100030E0D0C0F, 0x0A09080B06050407 -.quad 0x0E0D0C0F0A09080B, 0x0605040702010003 -.quad 0x0A09080B06050407, 0x020100030E0D0C0F - -.Lk_sr: -.quad 0x0706050403020100, 0x0F0E0D0C0B0A0908 -.quad 0x030E09040F0A0500, 0x0B06010C07020D08 -.quad 0x0F060D040B020900, 0x070E050C030A0108 -.quad 0x0B0E0104070A0D00, 0x0306090C0F020508 - -.Lk_rcon: -.quad 0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81 - -.Lk_s63: -.quad 0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B - -.Lk_opt: -.quad 0xFF9F4929D6B66000, 0xF7974121DEBE6808 -.quad 0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0 - -.Lk_deskew: -.quad 0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A -.quad 0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77 - - - - - -.Lk_dksd: -.quad 0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9 -.quad 0x41C277F4B5368300, 0x5FDC69EAAB289D1E -.Lk_dksb: -.quad 0x9A4FCA1F8550D500, 0x03D653861CC94C99 -.quad 0x115BEDA7B6FC4A00, 0xD993256F7E3482C8 -.Lk_dkse: -.quad 0xD5031CCA1FC9D600, 0x53859A4C994F5086 -.quad 0xA23196054FDC7BE8, 0xCD5EF96A20B31487 -.Lk_dks9: -.quad 0xB6116FC87ED9A700, 0x4AED933482255BFC -.quad 0x4576516227143300, 0x8BB89FACE9DAFDCE - - - - - -.Lk_dipt: -.quad 0x0F505B040B545F00, 0x154A411E114E451A -.quad 0x86E383E660056500, 0x12771772F491F194 - -.Lk_dsb9: -.quad 0x851C03539A86D600, 0xCAD51F504F994CC9 -.quad 0xC03B1789ECD74900, 0x725E2C9EB2FBA565 -.Lk_dsbd: -.quad 0x7D57CCDFE6B1A200, 0xF56E9B13882A4439 -.quad 0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3 -.Lk_dsbb: -.quad 0xD022649296B44200, 0x602646F6B0F2D404 -.quad 0xC19498A6CD596700, 0xF3FF0C3E3255AA6B -.Lk_dsbe: -.quad 0x46F2929626D4D000, 0x2242600464B4F6B0 -.quad 0x0C55A6CDFFAAC100, 0x9467F36B98593E32 -.Lk_dsbo: -.quad 0x1387EA537EF94000, 0xC7AA6DB9D4943E2D -.quad 0x12D7560F93441D00, 0xCA4B8159D8C58E9C -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0 -.align 64 -.size _vpaes_consts,.-_vpaes_consts diff --git a/deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s b/deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s deleted file mode 100644 index a2cccde63604f4..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s +++ /dev/null @@ -1,1697 +0,0 @@ -.text - -.globl rsaz_1024_sqr_avx2 -.type rsaz_1024_sqr_avx2,@function -.align 64 -rsaz_1024_sqr_avx2: - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - movq %rax,%rbp - movq %rdx,%r13 - subq $832,%rsp - movq %r13,%r15 - subq $-128,%rdi - subq $-128,%rsi - subq $-128,%r13 - - andq $4095,%r15 - addq $320,%r15 - shrq $12,%r15 - vpxor %ymm9,%ymm9,%ymm9 - jz .Lsqr_1024_no_n_copy - - - - - - subq $320,%rsp - vmovdqu 0-128(%r13),%ymm0 - andq $-2048,%rsp - vmovdqu 32-128(%r13),%ymm1 - vmovdqu 64-128(%r13),%ymm2 - vmovdqu 96-128(%r13),%ymm3 - vmovdqu 128-128(%r13),%ymm4 - vmovdqu 160-128(%r13),%ymm5 - vmovdqu 192-128(%r13),%ymm6 - vmovdqu 224-128(%r13),%ymm7 - vmovdqu 256-128(%r13),%ymm8 - leaq 832+128(%rsp),%r13 - vmovdqu %ymm0,0-128(%r13) - vmovdqu %ymm1,32-128(%r13) - vmovdqu %ymm2,64-128(%r13) - vmovdqu %ymm3,96-128(%r13) - vmovdqu %ymm4,128-128(%r13) - vmovdqu %ymm5,160-128(%r13) - vmovdqu %ymm6,192-128(%r13) - vmovdqu %ymm7,224-128(%r13) - vmovdqu %ymm8,256-128(%r13) - vmovdqu %ymm9,288-128(%r13) - -.Lsqr_1024_no_n_copy: - andq $-1024,%rsp - - vmovdqu 32-128(%rsi),%ymm1 - vmovdqu 64-128(%rsi),%ymm2 - vmovdqu 96-128(%rsi),%ymm3 - vmovdqu 128-128(%rsi),%ymm4 - vmovdqu 160-128(%rsi),%ymm5 - vmovdqu 192-128(%rsi),%ymm6 - vmovdqu 224-128(%rsi),%ymm7 - vmovdqu 256-128(%rsi),%ymm8 - - leaq 192(%rsp),%rbx - vmovdqu .Land_mask(%rip),%ymm15 - jmp .LOOP_GRANDE_SQR_1024 - -.align 32 -.LOOP_GRANDE_SQR_1024: - leaq 576+128(%rsp),%r9 - leaq 448(%rsp),%r12 - - - - - vpaddq %ymm1,%ymm1,%ymm1 - vpbroadcastq 0-128(%rsi),%ymm10 - vpaddq %ymm2,%ymm2,%ymm2 - vmovdqa %ymm1,0-128(%r9) - vpaddq %ymm3,%ymm3,%ymm3 - vmovdqa %ymm2,32-128(%r9) - vpaddq %ymm4,%ymm4,%ymm4 - vmovdqa %ymm3,64-128(%r9) - vpaddq %ymm5,%ymm5,%ymm5 - vmovdqa %ymm4,96-128(%r9) - vpaddq %ymm6,%ymm6,%ymm6 - vmovdqa %ymm5,128-128(%r9) - vpaddq %ymm7,%ymm7,%ymm7 - vmovdqa %ymm6,160-128(%r9) - vpaddq %ymm8,%ymm8,%ymm8 - vmovdqa %ymm7,192-128(%r9) - vpxor %ymm9,%ymm9,%ymm9 - vmovdqa %ymm8,224-128(%r9) - - vpmuludq 0-128(%rsi),%ymm10,%ymm0 - vpbroadcastq 32-128(%rsi),%ymm11 - vmovdqu %ymm9,288-192(%rbx) - vpmuludq %ymm10,%ymm1,%ymm1 - vmovdqu %ymm9,320-448(%r12) - vpmuludq %ymm10,%ymm2,%ymm2 - vmovdqu %ymm9,352-448(%r12) - vpmuludq %ymm10,%ymm3,%ymm3 - vmovdqu %ymm9,384-448(%r12) - vpmuludq %ymm10,%ymm4,%ymm4 - vmovdqu %ymm9,416-448(%r12) - vpmuludq %ymm10,%ymm5,%ymm5 - vmovdqu %ymm9,448-448(%r12) - vpmuludq %ymm10,%ymm6,%ymm6 - vmovdqu %ymm9,480-448(%r12) - vpmuludq %ymm10,%ymm7,%ymm7 - vmovdqu %ymm9,512-448(%r12) - vpmuludq %ymm10,%ymm8,%ymm8 - vpbroadcastq 64-128(%rsi),%ymm10 - vmovdqu %ymm9,544-448(%r12) - - movq %rsi,%r15 - movl $4,%r14d - jmp .Lsqr_entry_1024 -.align 32 -.LOOP_SQR_1024: - vpbroadcastq 32-128(%r15),%ymm11 - vpmuludq 0-128(%rsi),%ymm10,%ymm0 - vpaddq 0-192(%rbx),%ymm0,%ymm0 - vpmuludq 0-128(%r9),%ymm10,%ymm1 - vpaddq 32-192(%rbx),%ymm1,%ymm1 - vpmuludq 32-128(%r9),%ymm10,%ymm2 - vpaddq 64-192(%rbx),%ymm2,%ymm2 - vpmuludq 64-128(%r9),%ymm10,%ymm3 - vpaddq 96-192(%rbx),%ymm3,%ymm3 - vpmuludq 96-128(%r9),%ymm10,%ymm4 - vpaddq 128-192(%rbx),%ymm4,%ymm4 - vpmuludq 128-128(%r9),%ymm10,%ymm5 - vpaddq 160-192(%rbx),%ymm5,%ymm5 - vpmuludq 160-128(%r9),%ymm10,%ymm6 - vpaddq 192-192(%rbx),%ymm6,%ymm6 - vpmuludq 192-128(%r9),%ymm10,%ymm7 - vpaddq 224-192(%rbx),%ymm7,%ymm7 - vpmuludq 224-128(%r9),%ymm10,%ymm8 - vpbroadcastq 64-128(%r15),%ymm10 - vpaddq 256-192(%rbx),%ymm8,%ymm8 -.Lsqr_entry_1024: - vmovdqu %ymm0,0-192(%rbx) - vmovdqu %ymm1,32-192(%rbx) - - vpmuludq 32-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 32-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq 64-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 96-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 128-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq 160-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 192-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 224-128(%r9),%ymm11,%ymm0 - vpbroadcastq 96-128(%r15),%ymm11 - vpaddq 288-192(%rbx),%ymm0,%ymm0 - - vmovdqu %ymm2,64-192(%rbx) - vmovdqu %ymm3,96-192(%rbx) - - vpmuludq 64-128(%rsi),%ymm10,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 64-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 96-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq 128-128(%r9),%ymm10,%ymm13 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 160-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 192-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm0,%ymm0 - vpmuludq 224-128(%r9),%ymm10,%ymm1 - vpbroadcastq 128-128(%r15),%ymm10 - vpaddq 320-448(%r12),%ymm1,%ymm1 - - vmovdqu %ymm4,128-192(%rbx) - vmovdqu %ymm5,160-192(%rbx) - - vpmuludq 96-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm6,%ymm6 - vpmuludq 96-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm7,%ymm7 - vpmuludq 128-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm8,%ymm8 - vpmuludq 160-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm0,%ymm0 - vpmuludq 192-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm1,%ymm1 - vpmuludq 224-128(%r9),%ymm11,%ymm2 - vpbroadcastq 160-128(%r15),%ymm11 - vpaddq 352-448(%r12),%ymm2,%ymm2 - - vmovdqu %ymm6,192-192(%rbx) - vmovdqu %ymm7,224-192(%rbx) - - vpmuludq 128-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 128-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm0,%ymm0 - vpmuludq 160-128(%r9),%ymm10,%ymm13 - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 192-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 224-128(%r9),%ymm10,%ymm3 - vpbroadcastq 192-128(%r15),%ymm10 - vpaddq 384-448(%r12),%ymm3,%ymm3 - - vmovdqu %ymm8,256-192(%rbx) - vmovdqu %ymm0,288-192(%rbx) - leaq 8(%rbx),%rbx - - vpmuludq 160-128(%rsi),%ymm11,%ymm13 - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 160-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 192-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq 224-128(%r9),%ymm11,%ymm4 - vpbroadcastq 224-128(%r15),%ymm11 - vpaddq 416-448(%r12),%ymm4,%ymm4 - - vmovdqu %ymm1,320-448(%r12) - vmovdqu %ymm2,352-448(%r12) - - vpmuludq 192-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm3,%ymm3 - vpmuludq 192-128(%r9),%ymm10,%ymm14 - vpbroadcastq 256-128(%r15),%ymm0 - vpaddq %ymm14,%ymm4,%ymm4 - vpmuludq 224-128(%r9),%ymm10,%ymm5 - vpbroadcastq 0+8-128(%r15),%ymm10 - vpaddq 448-448(%r12),%ymm5,%ymm5 - - vmovdqu %ymm3,384-448(%r12) - vmovdqu %ymm4,416-448(%r12) - leaq 8(%r15),%r15 - - vpmuludq 224-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 224-128(%r9),%ymm11,%ymm6 - vpaddq 480-448(%r12),%ymm6,%ymm6 - - vpmuludq 256-128(%rsi),%ymm0,%ymm7 - vmovdqu %ymm5,448-448(%r12) - vpaddq 512-448(%r12),%ymm7,%ymm7 - vmovdqu %ymm6,480-448(%r12) - vmovdqu %ymm7,512-448(%r12) - leaq 8(%r12),%r12 - - decl %r14d - jnz .LOOP_SQR_1024 - - vmovdqu 256(%rsp),%ymm8 - vmovdqu 288(%rsp),%ymm1 - vmovdqu 320(%rsp),%ymm2 - leaq 192(%rsp),%rbx - - vpsrlq $29,%ymm8,%ymm14 - vpand %ymm15,%ymm8,%ymm8 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - - vpermq $0x93,%ymm14,%ymm14 - vpxor %ymm9,%ymm9,%ymm9 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm8,%ymm8 - vpblendd $3,%ymm11,%ymm9,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vpaddq %ymm11,%ymm2,%ymm2 - vmovdqu %ymm1,288-192(%rbx) - vmovdqu %ymm2,320-192(%rbx) - - movq (%rsp),%rax - movq 8(%rsp),%r10 - movq 16(%rsp),%r11 - movq 24(%rsp),%r12 - vmovdqu 32(%rsp),%ymm1 - vmovdqu 64-192(%rbx),%ymm2 - vmovdqu 96-192(%rbx),%ymm3 - vmovdqu 128-192(%rbx),%ymm4 - vmovdqu 160-192(%rbx),%ymm5 - vmovdqu 192-192(%rbx),%ymm6 - vmovdqu 224-192(%rbx),%ymm7 - - movq %rax,%r9 - imull %ecx,%eax - andl $0x1fffffff,%eax - vmovd %eax,%xmm12 - - movq %rax,%rdx - imulq -128(%r13),%rax - vpbroadcastq %xmm12,%ymm12 - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%r13),%rax - shrq $29,%r9 - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%r13),%rax - addq %r9,%r10 - addq %rax,%r11 - imulq 24-128(%r13),%rdx - addq %rdx,%r12 - - movq %r10,%rax - imull %ecx,%eax - andl $0x1fffffff,%eax - - movl $9,%r14d - jmp .LOOP_REDUCE_1024 - -.align 32 -.LOOP_REDUCE_1024: - vmovd %eax,%xmm13 - vpbroadcastq %xmm13,%ymm13 - - vpmuludq 32-128(%r13),%ymm12,%ymm10 - movq %rax,%rdx - imulq -128(%r13),%rax - vpaddq %ymm10,%ymm1,%ymm1 - addq %rax,%r10 - vpmuludq 64-128(%r13),%ymm12,%ymm14 - movq %rdx,%rax - imulq 8-128(%r13),%rax - vpaddq %ymm14,%ymm2,%ymm2 - vpmuludq 96-128(%r13),%ymm12,%ymm11 -.byte 0x67 - addq %rax,%r11 -.byte 0x67 - movq %rdx,%rax - imulq 16-128(%r13),%rax - shrq $29,%r10 - vpaddq %ymm11,%ymm3,%ymm3 - vpmuludq 128-128(%r13),%ymm12,%ymm10 - addq %rax,%r12 - addq %r10,%r11 - vpaddq %ymm10,%ymm4,%ymm4 - vpmuludq 160-128(%r13),%ymm12,%ymm14 - movq %r11,%rax - imull %ecx,%eax - vpaddq %ymm14,%ymm5,%ymm5 - vpmuludq 192-128(%r13),%ymm12,%ymm11 - andl $0x1fffffff,%eax - vpaddq %ymm11,%ymm6,%ymm6 - vpmuludq 224-128(%r13),%ymm12,%ymm10 - vpaddq %ymm10,%ymm7,%ymm7 - vpmuludq 256-128(%r13),%ymm12,%ymm14 - vmovd %eax,%xmm12 - - vpaddq %ymm14,%ymm8,%ymm8 - - vpbroadcastq %xmm12,%ymm12 - - vpmuludq 32-8-128(%r13),%ymm13,%ymm11 - vmovdqu 96-8-128(%r13),%ymm14 - movq %rax,%rdx - imulq -128(%r13),%rax - vpaddq %ymm11,%ymm1,%ymm1 - vpmuludq 64-8-128(%r13),%ymm13,%ymm10 - vmovdqu 128-8-128(%r13),%ymm11 - addq %rax,%r11 - movq %rdx,%rax - imulq 8-128(%r13),%rax - vpaddq %ymm10,%ymm2,%ymm2 - addq %r12,%rax - shrq $29,%r11 - vpmuludq %ymm13,%ymm14,%ymm14 - vmovdqu 160-8-128(%r13),%ymm10 - addq %r11,%rax - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq %ymm13,%ymm11,%ymm11 - vmovdqu 192-8-128(%r13),%ymm14 -.byte 0x67 - movq %rax,%r12 - imull %ecx,%eax - vpaddq %ymm11,%ymm4,%ymm4 - vpmuludq %ymm13,%ymm10,%ymm10 -.byte 0xc4,0x41,0x7e,0x6f,0x9d,0x58,0x00,0x00,0x00 - andl $0x1fffffff,%eax - vpaddq %ymm10,%ymm5,%ymm5 - vpmuludq %ymm13,%ymm14,%ymm14 - vmovdqu 256-8-128(%r13),%ymm10 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq %ymm13,%ymm11,%ymm11 - vmovdqu 288-8-128(%r13),%ymm9 - vmovd %eax,%xmm0 - imulq -128(%r13),%rax - vpaddq %ymm11,%ymm7,%ymm7 - vpmuludq %ymm13,%ymm10,%ymm10 - vmovdqu 32-16-128(%r13),%ymm14 - vpbroadcastq %xmm0,%ymm0 - vpaddq %ymm10,%ymm8,%ymm8 - vpmuludq %ymm13,%ymm9,%ymm9 - vmovdqu 64-16-128(%r13),%ymm11 - addq %rax,%r12 - - vmovdqu 32-24-128(%r13),%ymm13 - vpmuludq %ymm12,%ymm14,%ymm14 - vmovdqu 96-16-128(%r13),%ymm10 - vpaddq %ymm14,%ymm1,%ymm1 - vpmuludq %ymm0,%ymm13,%ymm13 - vpmuludq %ymm12,%ymm11,%ymm11 -.byte 0xc4,0x41,0x7e,0x6f,0xb5,0xf0,0xff,0xff,0xff - vpaddq %ymm1,%ymm13,%ymm13 - vpaddq %ymm11,%ymm2,%ymm2 - vpmuludq %ymm12,%ymm10,%ymm10 - vmovdqu 160-16-128(%r13),%ymm11 -.byte 0x67 - vmovq %xmm13,%rax - vmovdqu %ymm13,(%rsp) - vpaddq %ymm10,%ymm3,%ymm3 - vpmuludq %ymm12,%ymm14,%ymm14 - vmovdqu 192-16-128(%r13),%ymm10 - vpaddq %ymm14,%ymm4,%ymm4 - vpmuludq %ymm12,%ymm11,%ymm11 - vmovdqu 224-16-128(%r13),%ymm14 - vpaddq %ymm11,%ymm5,%ymm5 - vpmuludq %ymm12,%ymm10,%ymm10 - vmovdqu 256-16-128(%r13),%ymm11 - vpaddq %ymm10,%ymm6,%ymm6 - vpmuludq %ymm12,%ymm14,%ymm14 - shrq $29,%r12 - vmovdqu 288-16-128(%r13),%ymm10 - addq %r12,%rax - vpaddq %ymm14,%ymm7,%ymm7 - vpmuludq %ymm12,%ymm11,%ymm11 - - movq %rax,%r9 - imull %ecx,%eax - vpaddq %ymm11,%ymm8,%ymm8 - vpmuludq %ymm12,%ymm10,%ymm10 - andl $0x1fffffff,%eax - vmovd %eax,%xmm12 - vmovdqu 96-24-128(%r13),%ymm11 -.byte 0x67 - vpaddq %ymm10,%ymm9,%ymm9 - vpbroadcastq %xmm12,%ymm12 - - vpmuludq 64-24-128(%r13),%ymm0,%ymm14 - vmovdqu 128-24-128(%r13),%ymm10 - movq %rax,%rdx - imulq -128(%r13),%rax - movq 8(%rsp),%r10 - vpaddq %ymm14,%ymm2,%ymm1 - vpmuludq %ymm0,%ymm11,%ymm11 - vmovdqu 160-24-128(%r13),%ymm14 - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%r13),%rax -.byte 0x67 - shrq $29,%r9 - movq 16(%rsp),%r11 - vpaddq %ymm11,%ymm3,%ymm2 - vpmuludq %ymm0,%ymm10,%ymm10 - vmovdqu 192-24-128(%r13),%ymm11 - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%r13),%rax - vpaddq %ymm10,%ymm4,%ymm3 - vpmuludq %ymm0,%ymm14,%ymm14 - vmovdqu 224-24-128(%r13),%ymm10 - imulq 24-128(%r13),%rdx - addq %rax,%r11 - leaq (%r9,%r10,1),%rax - vpaddq %ymm14,%ymm5,%ymm4 - vpmuludq %ymm0,%ymm11,%ymm11 - vmovdqu 256-24-128(%r13),%ymm14 - movq %rax,%r10 - imull %ecx,%eax - vpmuludq %ymm0,%ymm10,%ymm10 - vpaddq %ymm11,%ymm6,%ymm5 - vmovdqu 288-24-128(%r13),%ymm11 - andl $0x1fffffff,%eax - vpaddq %ymm10,%ymm7,%ymm6 - vpmuludq %ymm0,%ymm14,%ymm14 - addq 24(%rsp),%rdx - vpaddq %ymm14,%ymm8,%ymm7 - vpmuludq %ymm0,%ymm11,%ymm11 - vpaddq %ymm11,%ymm9,%ymm8 - vmovq %r12,%xmm9 - movq %rdx,%r12 - - decl %r14d - jnz .LOOP_REDUCE_1024 - leaq 448(%rsp),%r12 - vpaddq %ymm9,%ymm13,%ymm0 - vpxor %ymm9,%ymm9,%ymm9 - - vpaddq 288-192(%rbx),%ymm0,%ymm0 - vpaddq 320-448(%r12),%ymm1,%ymm1 - vpaddq 352-448(%r12),%ymm2,%ymm2 - vpaddq 384-448(%r12),%ymm3,%ymm3 - vpaddq 416-448(%r12),%ymm4,%ymm4 - vpaddq 448-448(%r12),%ymm5,%ymm5 - vpaddq 480-448(%r12),%ymm6,%ymm6 - vpaddq 512-448(%r12),%ymm7,%ymm7 - vpaddq 544-448(%r12),%ymm8,%ymm8 - - vpsrlq $29,%ymm0,%ymm14 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm12,%ymm12 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm13,%ymm13 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm0,%ymm0 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm2,%ymm2 - vpblendd $3,%ymm13,%ymm9,%ymm13 - vpaddq %ymm12,%ymm3,%ymm3 - vpaddq %ymm13,%ymm4,%ymm4 - - vpsrlq $29,%ymm0,%ymm14 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm12,%ymm12 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm13,%ymm13 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm0,%ymm0 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vmovdqu %ymm0,0-128(%rdi) - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm2,%ymm2 - vmovdqu %ymm1,32-128(%rdi) - vpblendd $3,%ymm13,%ymm9,%ymm13 - vpaddq %ymm12,%ymm3,%ymm3 - vmovdqu %ymm2,64-128(%rdi) - vpaddq %ymm13,%ymm4,%ymm4 - vmovdqu %ymm3,96-128(%rdi) - vpsrlq $29,%ymm4,%ymm14 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm11 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm13,%ymm13 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm4,%ymm4 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm5,%ymm5 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm6,%ymm6 - vpblendd $3,%ymm13,%ymm0,%ymm13 - vpaddq %ymm12,%ymm7,%ymm7 - vpaddq %ymm13,%ymm8,%ymm8 - - vpsrlq $29,%ymm4,%ymm14 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm11 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm13,%ymm13 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm4,%ymm4 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm5,%ymm5 - vmovdqu %ymm4,128-128(%rdi) - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm6,%ymm6 - vmovdqu %ymm5,160-128(%rdi) - vpblendd $3,%ymm13,%ymm0,%ymm13 - vpaddq %ymm12,%ymm7,%ymm7 - vmovdqu %ymm6,192-128(%rdi) - vpaddq %ymm13,%ymm8,%ymm8 - vmovdqu %ymm7,224-128(%rdi) - vmovdqu %ymm8,256-128(%rdi) - - movq %rdi,%rsi - decl %r8d - jne .LOOP_GRANDE_SQR_1024 - - vzeroall - movq %rbp,%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lsqr_1024_epilogue: - .byte 0xf3,0xc3 -.size rsaz_1024_sqr_avx2,.-rsaz_1024_sqr_avx2 -.globl rsaz_1024_mul_avx2 -.type rsaz_1024_mul_avx2,@function -.align 64 -rsaz_1024_mul_avx2: - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rax,%rbp - vzeroall - movq %rdx,%r13 - subq $64,%rsp - - - - - - -.byte 0x67,0x67 - movq %rsi,%r15 - andq $4095,%r15 - addq $320,%r15 - shrq $12,%r15 - movq %rsi,%r15 - cmovnzq %r13,%rsi - cmovnzq %r15,%r13 - - movq %rcx,%r15 - subq $-128,%rsi - subq $-128,%rcx - subq $-128,%rdi - - andq $4095,%r15 - addq $320,%r15 -.byte 0x67,0x67 - shrq $12,%r15 - jz .Lmul_1024_no_n_copy - - - - - - subq $320,%rsp - vmovdqu 0-128(%rcx),%ymm0 - andq $-512,%rsp - vmovdqu 32-128(%rcx),%ymm1 - vmovdqu 64-128(%rcx),%ymm2 - vmovdqu 96-128(%rcx),%ymm3 - vmovdqu 128-128(%rcx),%ymm4 - vmovdqu 160-128(%rcx),%ymm5 - vmovdqu 192-128(%rcx),%ymm6 - vmovdqu 224-128(%rcx),%ymm7 - vmovdqu 256-128(%rcx),%ymm8 - leaq 64+128(%rsp),%rcx - vmovdqu %ymm0,0-128(%rcx) - vpxor %ymm0,%ymm0,%ymm0 - vmovdqu %ymm1,32-128(%rcx) - vpxor %ymm1,%ymm1,%ymm1 - vmovdqu %ymm2,64-128(%rcx) - vpxor %ymm2,%ymm2,%ymm2 - vmovdqu %ymm3,96-128(%rcx) - vpxor %ymm3,%ymm3,%ymm3 - vmovdqu %ymm4,128-128(%rcx) - vpxor %ymm4,%ymm4,%ymm4 - vmovdqu %ymm5,160-128(%rcx) - vpxor %ymm5,%ymm5,%ymm5 - vmovdqu %ymm6,192-128(%rcx) - vpxor %ymm6,%ymm6,%ymm6 - vmovdqu %ymm7,224-128(%rcx) - vpxor %ymm7,%ymm7,%ymm7 - vmovdqu %ymm8,256-128(%rcx) - vmovdqa %ymm0,%ymm8 - vmovdqu %ymm9,288-128(%rcx) -.Lmul_1024_no_n_copy: - andq $-64,%rsp - - movq (%r13),%rbx - vpbroadcastq (%r13),%ymm10 - vmovdqu %ymm0,(%rsp) - xorq %r9,%r9 -.byte 0x67 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r12,%r12 - - vmovdqu .Land_mask(%rip),%ymm15 - movl $9,%r14d - vmovdqu %ymm9,288-128(%rdi) - jmp .Loop_mul_1024 - -.align 32 -.Loop_mul_1024: - vpsrlq $29,%ymm3,%ymm9 - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %r9,%rax - movq %rbx,%r10 - imulq 8-128(%rsi),%r10 - addq 8(%rsp),%r10 - - movq %rax,%r9 - imull %r8d,%eax - andl $0x1fffffff,%eax - - movq %rbx,%r11 - imulq 16-128(%rsi),%r11 - addq 16(%rsp),%r11 - - movq %rbx,%r12 - imulq 24-128(%rsi),%r12 - addq 24(%rsp),%r12 - vpmuludq 32-128(%rsi),%ymm10,%ymm0 - vmovd %eax,%xmm11 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq 64-128(%rsi),%ymm10,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 96-128(%rsi),%ymm10,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq 128-128(%rsi),%ymm10,%ymm0 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq 160-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 192-128(%rsi),%ymm10,%ymm13 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq 224-128(%rsi),%ymm10,%ymm0 - vpermq $0x93,%ymm9,%ymm9 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq 256-128(%rsi),%ymm10,%ymm12 - vpbroadcastq 8(%r13),%ymm10 - vpaddq %ymm12,%ymm8,%ymm8 - - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%rcx),%rax - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%rcx),%rax - addq %rax,%r11 - shrq $29,%r9 - imulq 24-128(%rcx),%rdx - addq %rdx,%r12 - addq %r9,%r10 - - vpmuludq 32-128(%rcx),%ymm11,%ymm13 - vmovq %xmm10,%rbx - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 64-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm0,%ymm2,%ymm2 - vpmuludq 96-128(%rcx),%ymm11,%ymm12 - vpaddq %ymm12,%ymm3,%ymm3 - vpmuludq 128-128(%rcx),%ymm11,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 160-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm0,%ymm5,%ymm5 - vpmuludq 192-128(%rcx),%ymm11,%ymm12 - vpaddq %ymm12,%ymm6,%ymm6 - vpmuludq 224-128(%rcx),%ymm11,%ymm13 - vpblendd $3,%ymm14,%ymm9,%ymm12 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 256-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm12,%ymm3,%ymm3 - vpaddq %ymm0,%ymm8,%ymm8 - - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %rax,%r10 - vmovdqu -8+32-128(%rsi),%ymm12 - movq %rbx,%rax - imulq 8-128(%rsi),%rax - addq %rax,%r11 - vmovdqu -8+64-128(%rsi),%ymm13 - - movq %r10,%rax - vpblendd $0xfc,%ymm14,%ymm9,%ymm9 - imull %r8d,%eax - vpaddq %ymm9,%ymm4,%ymm4 - andl $0x1fffffff,%eax - - imulq 16-128(%rsi),%rbx - addq %rbx,%r12 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovd %eax,%xmm11 - vmovdqu -8+96-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -8+128-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -8+160-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -8+192-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -8+224-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -8+256-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -8+288-128(%rsi),%ymm9 - vpaddq %ymm12,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm13,%ymm13 - vpaddq %ymm13,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm9,%ymm9 - vpbroadcastq 16(%r13),%ymm10 - - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r10 - vmovdqu -8+32-128(%rcx),%ymm0 - movq %rdx,%rax - imulq 8-128(%rcx),%rax - addq %rax,%r11 - vmovdqu -8+64-128(%rcx),%ymm12 - shrq $29,%r10 - imulq 16-128(%rcx),%rdx - addq %rdx,%r12 - addq %r10,%r11 - - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -8+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -8+128-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -8+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -8+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -8+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -8+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -8+288-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm11,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm11,%ymm13,%ymm13 - vpaddq %ymm13,%ymm9,%ymm9 - - vmovdqu -16+32-128(%rsi),%ymm0 - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %r11,%rax - - vmovdqu -16+64-128(%rsi),%ymm12 - movq %rax,%r11 - imull %r8d,%eax - andl $0x1fffffff,%eax - - imulq 8-128(%rsi),%rbx - addq %rbx,%r12 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovd %eax,%xmm11 - vmovdqu -16+96-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm12,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -16+128-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -16+160-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -16+192-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -16+224-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -16+256-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -16+288-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq 24(%r13),%ymm10 - vpaddq %ymm13,%ymm9,%ymm9 - - vmovdqu -16+32-128(%rcx),%ymm0 - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r11 - vmovdqu -16+64-128(%rcx),%ymm12 - imulq 8-128(%rcx),%rdx - addq %rdx,%r12 - shrq $29,%r11 - - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -16+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -16+128-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -16+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -16+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -16+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -16+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -16+288-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -24+32-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+64-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm9,%ymm9 - - addq %r11,%r12 - imulq -128(%rsi),%rbx - addq %rbx,%r12 - - movq %r12,%rax - imull %r8d,%eax - andl $0x1fffffff,%eax - - vpmuludq %ymm10,%ymm0,%ymm0 - vmovd %eax,%xmm11 - vmovdqu -24+96-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm12,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -24+128-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -24+160-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -24+192-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -24+224-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -24+256-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -24+288-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq 32(%r13),%ymm10 - vpaddq %ymm13,%ymm9,%ymm9 - addq $32,%r13 - - vmovdqu -24+32-128(%rcx),%ymm0 - imulq -128(%rcx),%rax - addq %rax,%r12 - shrq $29,%r12 - - vmovdqu -24+64-128(%rcx),%ymm12 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -24+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm0 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu %ymm0,(%rsp) - vpaddq %ymm12,%ymm2,%ymm1 - vmovdqu -24+128-128(%rcx),%ymm0 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm2 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -24+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm3 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -24+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm4 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm5 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -24+288-128(%rcx),%ymm13 - movq %r12,%r9 - vpaddq %ymm0,%ymm7,%ymm6 - vpmuludq %ymm11,%ymm12,%ymm12 - addq (%rsp),%r9 - vpaddq %ymm12,%ymm8,%ymm7 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovq %r12,%xmm12 - vpaddq %ymm13,%ymm9,%ymm8 - - decl %r14d - jnz .Loop_mul_1024 - vpaddq (%rsp),%ymm12,%ymm0 - - vpsrlq $29,%ymm0,%ymm12 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm13 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm10,%ymm10 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpermq $0x93,%ymm11,%ymm11 - vpaddq %ymm9,%ymm0,%ymm0 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm1,%ymm1 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm2,%ymm2 - vpblendd $3,%ymm11,%ymm14,%ymm11 - vpaddq %ymm10,%ymm3,%ymm3 - vpaddq %ymm11,%ymm4,%ymm4 - - vpsrlq $29,%ymm0,%ymm12 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm13 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm10,%ymm10 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm11,%ymm11 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm0,%ymm0 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm1,%ymm1 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm2,%ymm2 - vpblendd $3,%ymm11,%ymm14,%ymm11 - vpaddq %ymm10,%ymm3,%ymm3 - vpaddq %ymm11,%ymm4,%ymm4 - - vmovdqu %ymm0,0-128(%rdi) - vmovdqu %ymm1,32-128(%rdi) - vmovdqu %ymm2,64-128(%rdi) - vmovdqu %ymm3,96-128(%rdi) - vpsrlq $29,%ymm4,%ymm12 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm13 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm10,%ymm10 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm4,%ymm4 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm5,%ymm5 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm6,%ymm6 - vpblendd $3,%ymm11,%ymm0,%ymm11 - vpaddq %ymm10,%ymm7,%ymm7 - vpaddq %ymm11,%ymm8,%ymm8 - - vpsrlq $29,%ymm4,%ymm12 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm13 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm10,%ymm10 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm4,%ymm4 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm5,%ymm5 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm6,%ymm6 - vpblendd $3,%ymm11,%ymm0,%ymm11 - vpaddq %ymm10,%ymm7,%ymm7 - vpaddq %ymm11,%ymm8,%ymm8 - - vmovdqu %ymm4,128-128(%rdi) - vmovdqu %ymm5,160-128(%rdi) - vmovdqu %ymm6,192-128(%rdi) - vmovdqu %ymm7,224-128(%rdi) - vmovdqu %ymm8,256-128(%rdi) - vzeroupper - - movq %rbp,%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_1024_epilogue: - .byte 0xf3,0xc3 -.size rsaz_1024_mul_avx2,.-rsaz_1024_mul_avx2 -.globl rsaz_1024_red2norm_avx2 -.type rsaz_1024_red2norm_avx2,@function -.align 32 -rsaz_1024_red2norm_avx2: - subq $-128,%rsi - xorq %rax,%rax - movq -128(%rsi),%r8 - movq -120(%rsi),%r9 - movq -112(%rsi),%r10 - shlq $0,%r8 - shlq $29,%r9 - movq %r10,%r11 - shlq $58,%r10 - shrq $6,%r11 - addq %r8,%rax - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,0(%rdi) - movq %r11,%rax - movq -104(%rsi),%r8 - movq -96(%rsi),%r9 - shlq $23,%r8 - movq %r9,%r10 - shlq $52,%r9 - shrq $12,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,8(%rdi) - movq %r10,%rax - movq -88(%rsi),%r11 - movq -80(%rsi),%r8 - shlq $17,%r11 - movq %r8,%r9 - shlq $46,%r8 - shrq $18,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,16(%rdi) - movq %r9,%rax - movq -72(%rsi),%r10 - movq -64(%rsi),%r11 - shlq $11,%r10 - movq %r11,%r8 - shlq $40,%r11 - shrq $24,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,24(%rdi) - movq %r8,%rax - movq -56(%rsi),%r9 - movq -48(%rsi),%r10 - movq -40(%rsi),%r11 - shlq $5,%r9 - shlq $34,%r10 - movq %r11,%r8 - shlq $63,%r11 - shrq $1,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,32(%rdi) - movq %r8,%rax - movq -32(%rsi),%r9 - movq -24(%rsi),%r10 - shlq $28,%r9 - movq %r10,%r11 - shlq $57,%r10 - shrq $7,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,40(%rdi) - movq %r11,%rax - movq -16(%rsi),%r8 - movq -8(%rsi),%r9 - shlq $22,%r8 - movq %r9,%r10 - shlq $51,%r9 - shrq $13,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,48(%rdi) - movq %r10,%rax - movq 0(%rsi),%r11 - movq 8(%rsi),%r8 - shlq $16,%r11 - movq %r8,%r9 - shlq $45,%r8 - shrq $19,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,56(%rdi) - movq %r9,%rax - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - shlq $10,%r10 - movq %r11,%r8 - shlq $39,%r11 - shrq $25,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,64(%rdi) - movq %r8,%rax - movq 32(%rsi),%r9 - movq 40(%rsi),%r10 - movq 48(%rsi),%r11 - shlq $4,%r9 - shlq $33,%r10 - movq %r11,%r8 - shlq $62,%r11 - shrq $2,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,72(%rdi) - movq %r8,%rax - movq 56(%rsi),%r9 - movq 64(%rsi),%r10 - shlq $27,%r9 - movq %r10,%r11 - shlq $56,%r10 - shrq $8,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,80(%rdi) - movq %r11,%rax - movq 72(%rsi),%r8 - movq 80(%rsi),%r9 - shlq $21,%r8 - movq %r9,%r10 - shlq $50,%r9 - shrq $14,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,88(%rdi) - movq %r10,%rax - movq 88(%rsi),%r11 - movq 96(%rsi),%r8 - shlq $15,%r11 - movq %r8,%r9 - shlq $44,%r8 - shrq $20,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,96(%rdi) - movq %r9,%rax - movq 104(%rsi),%r10 - movq 112(%rsi),%r11 - shlq $9,%r10 - movq %r11,%r8 - shlq $38,%r11 - shrq $26,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,104(%rdi) - movq %r8,%rax - movq 120(%rsi),%r9 - movq 128(%rsi),%r10 - movq 136(%rsi),%r11 - shlq $3,%r9 - shlq $32,%r10 - movq %r11,%r8 - shlq $61,%r11 - shrq $3,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,112(%rdi) - movq %r8,%rax - movq 144(%rsi),%r9 - movq 152(%rsi),%r10 - shlq $26,%r9 - movq %r10,%r11 - shlq $55,%r10 - shrq $9,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,120(%rdi) - movq %r11,%rax - .byte 0xf3,0xc3 -.size rsaz_1024_red2norm_avx2,.-rsaz_1024_red2norm_avx2 - -.globl rsaz_1024_norm2red_avx2 -.type rsaz_1024_norm2red_avx2,@function -.align 32 -rsaz_1024_norm2red_avx2: - subq $-128,%rdi - movq (%rsi),%r8 - movl $0x1fffffff,%eax - movq 8(%rsi),%r9 - movq %r8,%r11 - shrq $0,%r11 - andq %rax,%r11 - movq %r11,-128(%rdi) - movq %r8,%r10 - shrq $29,%r10 - andq %rax,%r10 - movq %r10,-120(%rdi) - shrdq $58,%r9,%r8 - andq %rax,%r8 - movq %r8,-112(%rdi) - movq 16(%rsi),%r10 - movq %r9,%r8 - shrq $23,%r8 - andq %rax,%r8 - movq %r8,-104(%rdi) - shrdq $52,%r10,%r9 - andq %rax,%r9 - movq %r9,-96(%rdi) - movq 24(%rsi),%r11 - movq %r10,%r9 - shrq $17,%r9 - andq %rax,%r9 - movq %r9,-88(%rdi) - shrdq $46,%r11,%r10 - andq %rax,%r10 - movq %r10,-80(%rdi) - movq 32(%rsi),%r8 - movq %r11,%r10 - shrq $11,%r10 - andq %rax,%r10 - movq %r10,-72(%rdi) - shrdq $40,%r8,%r11 - andq %rax,%r11 - movq %r11,-64(%rdi) - movq 40(%rsi),%r9 - movq %r8,%r11 - shrq $5,%r11 - andq %rax,%r11 - movq %r11,-56(%rdi) - movq %r8,%r10 - shrq $34,%r10 - andq %rax,%r10 - movq %r10,-48(%rdi) - shrdq $63,%r9,%r8 - andq %rax,%r8 - movq %r8,-40(%rdi) - movq 48(%rsi),%r10 - movq %r9,%r8 - shrq $28,%r8 - andq %rax,%r8 - movq %r8,-32(%rdi) - shrdq $57,%r10,%r9 - andq %rax,%r9 - movq %r9,-24(%rdi) - movq 56(%rsi),%r11 - movq %r10,%r9 - shrq $22,%r9 - andq %rax,%r9 - movq %r9,-16(%rdi) - shrdq $51,%r11,%r10 - andq %rax,%r10 - movq %r10,-8(%rdi) - movq 64(%rsi),%r8 - movq %r11,%r10 - shrq $16,%r10 - andq %rax,%r10 - movq %r10,0(%rdi) - shrdq $45,%r8,%r11 - andq %rax,%r11 - movq %r11,8(%rdi) - movq 72(%rsi),%r9 - movq %r8,%r11 - shrq $10,%r11 - andq %rax,%r11 - movq %r11,16(%rdi) - shrdq $39,%r9,%r8 - andq %rax,%r8 - movq %r8,24(%rdi) - movq 80(%rsi),%r10 - movq %r9,%r8 - shrq $4,%r8 - andq %rax,%r8 - movq %r8,32(%rdi) - movq %r9,%r11 - shrq $33,%r11 - andq %rax,%r11 - movq %r11,40(%rdi) - shrdq $62,%r10,%r9 - andq %rax,%r9 - movq %r9,48(%rdi) - movq 88(%rsi),%r11 - movq %r10,%r9 - shrq $27,%r9 - andq %rax,%r9 - movq %r9,56(%rdi) - shrdq $56,%r11,%r10 - andq %rax,%r10 - movq %r10,64(%rdi) - movq 96(%rsi),%r8 - movq %r11,%r10 - shrq $21,%r10 - andq %rax,%r10 - movq %r10,72(%rdi) - shrdq $50,%r8,%r11 - andq %rax,%r11 - movq %r11,80(%rdi) - movq 104(%rsi),%r9 - movq %r8,%r11 - shrq $15,%r11 - andq %rax,%r11 - movq %r11,88(%rdi) - shrdq $44,%r9,%r8 - andq %rax,%r8 - movq %r8,96(%rdi) - movq 112(%rsi),%r10 - movq %r9,%r8 - shrq $9,%r8 - andq %rax,%r8 - movq %r8,104(%rdi) - shrdq $38,%r10,%r9 - andq %rax,%r9 - movq %r9,112(%rdi) - movq 120(%rsi),%r11 - movq %r10,%r9 - shrq $3,%r9 - andq %rax,%r9 - movq %r9,120(%rdi) - movq %r10,%r8 - shrq $32,%r8 - andq %rax,%r8 - movq %r8,128(%rdi) - shrdq $61,%r11,%r10 - andq %rax,%r10 - movq %r10,136(%rdi) - xorq %r8,%r8 - movq %r11,%r10 - shrq $26,%r10 - andq %rax,%r10 - movq %r10,144(%rdi) - shrdq $55,%r8,%r11 - andq %rax,%r11 - movq %r11,152(%rdi) - movq %r8,160(%rdi) - movq %r8,168(%rdi) - movq %r8,176(%rdi) - movq %r8,184(%rdi) - .byte 0xf3,0xc3 -.size rsaz_1024_norm2red_avx2,.-rsaz_1024_norm2red_avx2 -.globl rsaz_1024_scatter5_avx2 -.type rsaz_1024_scatter5_avx2,@function -.align 32 -rsaz_1024_scatter5_avx2: - vzeroupper - vmovdqu .Lscatter_permd(%rip),%ymm5 - shll $4,%edx - leaq (%rdi,%rdx,1),%rdi - movl $9,%eax - jmp .Loop_scatter_1024 - -.align 32 -.Loop_scatter_1024: - vmovdqu (%rsi),%ymm0 - leaq 32(%rsi),%rsi - vpermd %ymm0,%ymm5,%ymm0 - vmovdqu %xmm0,(%rdi) - leaq 512(%rdi),%rdi - decl %eax - jnz .Loop_scatter_1024 - - vzeroupper - .byte 0xf3,0xc3 -.size rsaz_1024_scatter5_avx2,.-rsaz_1024_scatter5_avx2 - -.globl rsaz_1024_gather5_avx2 -.type rsaz_1024_gather5_avx2,@function -.align 32 -rsaz_1024_gather5_avx2: - vzeroupper - movq %rsp,%r11 - leaq -256(%rsp),%rsp - andq $-32,%rsp - leaq .Linc(%rip),%r10 - leaq -128(%rsp),%rax - - vmovd %edx,%xmm4 - vmovdqa (%r10),%ymm0 - vmovdqa 32(%r10),%ymm1 - vmovdqa 64(%r10),%ymm5 - vpbroadcastd %xmm4,%ymm4 - - vpaddd %ymm5,%ymm0,%ymm2 - vpcmpeqd %ymm4,%ymm0,%ymm0 - vpaddd %ymm5,%ymm1,%ymm3 - vpcmpeqd %ymm4,%ymm1,%ymm1 - vmovdqa %ymm0,0+128(%rax) - vpaddd %ymm5,%ymm2,%ymm0 - vpcmpeqd %ymm4,%ymm2,%ymm2 - vmovdqa %ymm1,32+128(%rax) - vpaddd %ymm5,%ymm3,%ymm1 - vpcmpeqd %ymm4,%ymm3,%ymm3 - vmovdqa %ymm2,64+128(%rax) - vpaddd %ymm5,%ymm0,%ymm2 - vpcmpeqd %ymm4,%ymm0,%ymm0 - vmovdqa %ymm3,96+128(%rax) - vpaddd %ymm5,%ymm1,%ymm3 - vpcmpeqd %ymm4,%ymm1,%ymm1 - vmovdqa %ymm0,128+128(%rax) - vpaddd %ymm5,%ymm2,%ymm8 - vpcmpeqd %ymm4,%ymm2,%ymm2 - vmovdqa %ymm1,160+128(%rax) - vpaddd %ymm5,%ymm3,%ymm9 - vpcmpeqd %ymm4,%ymm3,%ymm3 - vmovdqa %ymm2,192+128(%rax) - vpaddd %ymm5,%ymm8,%ymm10 - vpcmpeqd %ymm4,%ymm8,%ymm8 - vmovdqa %ymm3,224+128(%rax) - vpaddd %ymm5,%ymm9,%ymm11 - vpcmpeqd %ymm4,%ymm9,%ymm9 - vpaddd %ymm5,%ymm10,%ymm12 - vpcmpeqd %ymm4,%ymm10,%ymm10 - vpaddd %ymm5,%ymm11,%ymm13 - vpcmpeqd %ymm4,%ymm11,%ymm11 - vpaddd %ymm5,%ymm12,%ymm14 - vpcmpeqd %ymm4,%ymm12,%ymm12 - vpaddd %ymm5,%ymm13,%ymm15 - vpcmpeqd %ymm4,%ymm13,%ymm13 - vpcmpeqd %ymm4,%ymm14,%ymm14 - vpcmpeqd %ymm4,%ymm15,%ymm15 - - vmovdqa -32(%r10),%ymm7 - leaq 128(%rsi),%rsi - movl $9,%edx - -.Loop_gather_1024: - vmovdqa 0-128(%rsi),%ymm0 - vmovdqa 32-128(%rsi),%ymm1 - vmovdqa 64-128(%rsi),%ymm2 - vmovdqa 96-128(%rsi),%ymm3 - vpand 0+128(%rax),%ymm0,%ymm0 - vpand 32+128(%rax),%ymm1,%ymm1 - vpand 64+128(%rax),%ymm2,%ymm2 - vpor %ymm0,%ymm1,%ymm4 - vpand 96+128(%rax),%ymm3,%ymm3 - vmovdqa 128-128(%rsi),%ymm0 - vmovdqa 160-128(%rsi),%ymm1 - vpor %ymm2,%ymm3,%ymm5 - vmovdqa 192-128(%rsi),%ymm2 - vmovdqa 224-128(%rsi),%ymm3 - vpand 128+128(%rax),%ymm0,%ymm0 - vpand 160+128(%rax),%ymm1,%ymm1 - vpand 192+128(%rax),%ymm2,%ymm2 - vpor %ymm0,%ymm4,%ymm4 - vpand 224+128(%rax),%ymm3,%ymm3 - vpand 256-128(%rsi),%ymm8,%ymm0 - vpor %ymm1,%ymm5,%ymm5 - vpand 288-128(%rsi),%ymm9,%ymm1 - vpor %ymm2,%ymm4,%ymm4 - vpand 320-128(%rsi),%ymm10,%ymm2 - vpor %ymm3,%ymm5,%ymm5 - vpand 352-128(%rsi),%ymm11,%ymm3 - vpor %ymm0,%ymm4,%ymm4 - vpand 384-128(%rsi),%ymm12,%ymm0 - vpor %ymm1,%ymm5,%ymm5 - vpand 416-128(%rsi),%ymm13,%ymm1 - vpor %ymm2,%ymm4,%ymm4 - vpand 448-128(%rsi),%ymm14,%ymm2 - vpor %ymm3,%ymm5,%ymm5 - vpand 480-128(%rsi),%ymm15,%ymm3 - leaq 512(%rsi),%rsi - vpor %ymm0,%ymm4,%ymm4 - vpor %ymm1,%ymm5,%ymm5 - vpor %ymm2,%ymm4,%ymm4 - vpor %ymm3,%ymm5,%ymm5 - - vpor %ymm5,%ymm4,%ymm4 - vextracti128 $1,%ymm4,%xmm5 - vpor %xmm4,%xmm5,%xmm5 - vpermd %ymm5,%ymm7,%ymm5 - vmovdqu %ymm5,(%rdi) - leaq 32(%rdi),%rdi - decl %edx - jnz .Loop_gather_1024 - - vpxor %ymm0,%ymm0,%ymm0 - vmovdqu %ymm0,(%rdi) - vzeroupper - leaq (%r11),%rsp - .byte 0xf3,0xc3 -.size rsaz_1024_gather5_avx2,.-rsaz_1024_gather5_avx2 - -.globl rsaz_avx2_eligible -.type rsaz_avx2_eligible,@function -.align 32 -rsaz_avx2_eligible: - movl OPENSSL_ia32cap_P+8(%rip),%eax - movl $524544,%ecx - movl $0,%edx - andl %eax,%ecx - cmpl $524544,%ecx - cmovel %edx,%eax - andl $32,%eax - shrl $5,%eax - .byte 0xf3,0xc3 -.size rsaz_avx2_eligible,.-rsaz_avx2_eligible - -.align 64 -.Land_mask: -.quad 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff -.Lscatter_permd: -.long 0,2,4,6,7,7,7,7 -.Lgather_permd: -.long 0,7,1,7,2,7,3,7 -.Linc: -.long 0,0,0,0, 1,1,1,1 -.long 2,2,2,2, 3,3,3,3 -.long 4,4,4,4, 4,4,4,4 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s b/deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s deleted file mode 100644 index b6797a68498e49..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s +++ /dev/null @@ -1,1873 +0,0 @@ -.text - - - -.globl rsaz_512_sqr -.type rsaz_512_sqr,@function -.align 32 -rsaz_512_sqr: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lsqr_body: - movq %rdx,%rbp - movq (%rsi),%rdx - movq 8(%rsi),%rax - movq %rcx,128(%rsp) - movl $0x80100,%r11d - andl OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je .Loop_sqrx - jmp .Loop_sqr - -.align 32 -.Loop_sqr: - movl %r8d,128+8(%rsp) - - movq %rdx,%rbx - mulq %rdx - movq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq %rbx,%rax - movq %rdx,%r15 - adcq $0,%r15 - - addq %r8,%r8 - movq %r9,%rcx - adcq %r9,%r9 - - mulq %rax - movq %rax,(%rsp) - addq %rdx,%r8 - adcq $0,%r9 - - movq %r8,8(%rsp) - shrq $63,%rcx - - - movq 8(%rsi),%r8 - movq 16(%rsi),%rax - mulq %r8 - addq %rax,%r10 - movq 24(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r11 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r12 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r13 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r14 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r15 - movq %r8,%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%r8 - movq %r10,%rdx - adcq $0,%r8 - - addq %rdx,%rdx - leaq (%rcx,%r10,2),%r10 - movq %r11,%rbx - adcq %r11,%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,16(%rsp) - movq %r10,24(%rsp) - shrq $63,%rbx - - - movq 16(%rsi),%r9 - movq 24(%rsi),%rax - mulq %r9 - addq %rax,%r12 - movq 32(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r13 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r13 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r14 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r14 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - movq %r12,%r10 - leaq (%rbx,%r12,2),%r12 - addq %rax,%r15 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r15 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - shrq $63,%r10 - addq %rax,%r8 - movq %r9,%rax - adcq $0,%rdx - addq %rcx,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - movq %r13,%rcx - leaq (%r10,%r13,2),%r13 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,32(%rsp) - movq %r12,40(%rsp) - shrq $63,%rcx - - - movq 24(%rsi),%r10 - movq 32(%rsi),%rax - mulq %r10 - addq %rax,%r14 - movq 40(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - addq %rax,%r15 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - movq %r14,%r12 - leaq (%rcx,%r14,2),%r14 - addq %rax,%r8 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r8 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - shrq $63,%r12 - addq %rax,%r9 - movq %r10,%rax - adcq $0,%rdx - addq %rbx,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - movq %r15,%rbx - leaq (%r12,%r15,2),%r15 - - mulq %rax - addq %rax,%r13 - adcq %rdx,%r14 - adcq $0,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - shrq $63,%rbx - - - movq 32(%rsi),%r11 - movq 40(%rsi),%rax - mulq %r11 - addq %rax,%r8 - movq 48(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - addq %rax,%r9 - movq 56(%rsi),%rax - adcq $0,%rdx - movq %r8,%r12 - leaq (%rbx,%r8,2),%r8 - addq %rcx,%r9 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - shrq $63,%r12 - addq %rax,%r10 - movq %r11,%rax - adcq $0,%rdx - addq %rcx,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - movq %r9,%rcx - leaq (%r12,%r9,2),%r9 - - mulq %rax - addq %rax,%r15 - adcq %rdx,%r8 - adcq $0,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - shrq $63,%rcx - - - movq 40(%rsi),%r12 - movq 48(%rsi),%rax - mulq %r12 - addq %rax,%r10 - movq 56(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r12 - addq %rax,%r11 - movq %r12,%rax - movq %r10,%r15 - leaq (%rcx,%r10,2),%r10 - adcq $0,%rdx - shrq $63,%r15 - addq %rbx,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - movq %r11,%rbx - leaq (%r15,%r11,2),%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - - movq 48(%rsi),%r13 - movq 56(%rsi),%rax - mulq %r13 - addq %rax,%r12 - movq %r13,%rax - movq %rdx,%r13 - adcq $0,%r13 - - xorq %r14,%r14 - shlq $1,%rbx - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,96(%rsp) - movq %r12,104(%rsp) - - - movq 56(%rsi),%rax - mulq %rax - addq %rax,%r13 - adcq $0,%rdx - - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz .Loop_sqr - jmp .Lsqr_tail - -.align 32 -.Loop_sqrx: - movl %r8d,128+8(%rsp) -.byte 102,72,15,110,199 -.byte 102,72,15,110,205 - - mulxq %rax,%r8,%r9 - - mulxq 16(%rsi),%rcx,%r10 - xorq %rbp,%rbp - - mulxq 24(%rsi),%rax,%r11 - adcxq %rcx,%r9 - - mulxq 32(%rsi),%rcx,%r12 - adcxq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rcx,%r11 - -.byte 0xc4,0x62,0xf3,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r12 - adcxq %rcx,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xbe,0x38,0x00,0x00,0x00 - adcxq %rax,%r14 - adcxq %rbp,%r15 - - movq %r9,%rcx - shldq $1,%r8,%r9 - shlq $1,%r8 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rdx,%r8 - movq 8(%rsi),%rdx - adcxq %rbp,%r9 - - movq %rax,(%rsp) - movq %r8,8(%rsp) - - - mulxq 16(%rsi),%rax,%rbx - adoxq %rax,%r10 - adcxq %rbx,%r11 - -.byte 0xc4,0x62,0xc3,0xf6,0x86,0x18,0x00,0x00,0x00 - adoxq %rdi,%r11 - adcxq %r8,%r12 - - mulxq 32(%rsi),%rax,%rbx - adoxq %rax,%r12 - adcxq %rbx,%r13 - - mulxq 40(%rsi),%rdi,%r8 - adoxq %rdi,%r13 - adcxq %r8,%r14 - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x30,0x00,0x00,0x00 - adoxq %rax,%r14 - adcxq %rbx,%r15 - -.byte 0xc4,0x62,0xc3,0xf6,0x86,0x38,0x00,0x00,0x00 - adoxq %rdi,%r15 - adcxq %rbp,%r8 - adoxq %rbp,%r8 - - movq %r11,%rbx - shldq $1,%r10,%r11 - shldq $1,%rcx,%r10 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rcx - movq 16(%rsi),%rdx - adcxq %rax,%r9 - adcxq %rcx,%r10 - adcxq %rbp,%r11 - - movq %r9,16(%rsp) -.byte 0x4c,0x89,0x94,0x24,0x18,0x00,0x00,0x00 - - -.byte 0xc4,0x62,0xc3,0xf6,0x8e,0x18,0x00,0x00,0x00 - adoxq %rdi,%r12 - adcxq %r9,%r13 - - mulxq 32(%rsi),%rax,%rcx - adoxq %rax,%r13 - adcxq %rcx,%r14 - - mulxq 40(%rsi),%rdi,%r9 - adoxq %rdi,%r14 - adcxq %r9,%r15 - -.byte 0xc4,0xe2,0xfb,0xf6,0x8e,0x30,0x00,0x00,0x00 - adoxq %rax,%r15 - adcxq %rcx,%r8 - -.byte 0xc4,0x62,0xc3,0xf6,0x8e,0x38,0x00,0x00,0x00 - adoxq %rdi,%r8 - adcxq %rbp,%r9 - adoxq %rbp,%r9 - - movq %r13,%rcx - shldq $1,%r12,%r13 - shldq $1,%rbx,%r12 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r11 - adcxq %rdx,%r12 - movq 24(%rsi),%rdx - adcxq %rbp,%r13 - - movq %r11,32(%rsp) -.byte 0x4c,0x89,0xa4,0x24,0x28,0x00,0x00,0x00 - - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x20,0x00,0x00,0x00 - adoxq %rax,%r14 - adcxq %rbx,%r15 - - mulxq 40(%rsi),%rdi,%r10 - adoxq %rdi,%r15 - adcxq %r10,%r8 - - mulxq 48(%rsi),%rax,%rbx - adoxq %rax,%r8 - adcxq %rbx,%r9 - - mulxq 56(%rsi),%rdi,%r10 - adoxq %rdi,%r9 - adcxq %rbp,%r10 - adoxq %rbp,%r10 - -.byte 0x66 - movq %r15,%rbx - shldq $1,%r14,%r15 - shldq $1,%rcx,%r14 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r13 - adcxq %rdx,%r14 - movq 32(%rsi),%rdx - adcxq %rbp,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - - -.byte 0xc4,0x62,0xc3,0xf6,0x9e,0x28,0x00,0x00,0x00 - adoxq %rdi,%r8 - adcxq %r11,%r9 - - mulxq 48(%rsi),%rax,%rcx - adoxq %rax,%r9 - adcxq %rcx,%r10 - - mulxq 56(%rsi),%rdi,%r11 - adoxq %rdi,%r10 - adcxq %rbp,%r11 - adoxq %rbp,%r11 - - movq %r9,%rcx - shldq $1,%r8,%r9 - shldq $1,%rbx,%r8 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r15 - adcxq %rdx,%r8 - movq 40(%rsi),%rdx - adcxq %rbp,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x30,0x00,0x00,0x00 - adoxq %rax,%r10 - adcxq %rbx,%r11 - -.byte 0xc4,0x62,0xc3,0xf6,0xa6,0x38,0x00,0x00,0x00 - adoxq %rdi,%r11 - adcxq %rbp,%r12 - adoxq %rbp,%r12 - - movq %r11,%rbx - shldq $1,%r10,%r11 - shldq $1,%rcx,%r10 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r9 - adcxq %rdx,%r10 - movq 48(%rsi),%rdx - adcxq %rbp,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - -.byte 0xc4,0x62,0xfb,0xf6,0xae,0x38,0x00,0x00,0x00 - adoxq %rax,%r12 - adoxq %rbp,%r13 - - xorq %r14,%r14 - shldq $1,%r13,%r14 - shldq $1,%r12,%r13 - shldq $1,%rbx,%r12 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r11 - adcxq %rdx,%r12 - movq 56(%rsi),%rdx - adcxq %rbp,%r13 - -.byte 0x4c,0x89,0x9c,0x24,0x60,0x00,0x00,0x00 -.byte 0x4c,0x89,0xa4,0x24,0x68,0x00,0x00,0x00 - - - mulxq %rdx,%rax,%rdx - adoxq %rax,%r13 - adoxq %rbp,%rdx - -.byte 0x66 - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz .Loop_sqrx - -.Lsqr_tail: - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lsqr_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_sqr,.-rsaz_512_sqr -.globl rsaz_512_mul -.type rsaz_512_mul,@function -.align 32 -rsaz_512_mul: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lmul_body: -.byte 102,72,15,110,199 -.byte 102,72,15,110,201 - movq %r8,128(%rsp) - movl $0x80100,%r11d - andl OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je .Lmulx - movq (%rdx),%rbx - movq %rdx,%rbp - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp .Lmul_tail - -.align 32 -.Lmulx: - movq %rdx,%rbp - movq (%rdx),%rdx - call __rsaz_512_mulx - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex -.Lmul_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul,.-rsaz_512_mul -.globl rsaz_512_mul_gather4 -.type rsaz_512_mul_gather4,@function -.align 32 -rsaz_512_mul_gather4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $152,%rsp -.Lmul_gather4_body: - movd %r9d,%xmm8 - movdqa .Linc+16(%rip),%xmm1 - movdqa .Linc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - - movdqa 0(%rdx),%xmm8 - movdqa 16(%rdx),%xmm9 - movdqa 32(%rdx),%xmm10 - movdqa 48(%rdx),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rdx),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rdx),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rdx),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rdx),%xmm15 - leaq 128(%rdx),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movl $0x80100,%r11d - andl OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je .Lmulx_gather -.byte 102,76,15,126,195 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - movq (%rsi),%rax - movq 8(%rsi),%rcx - mulq %rbx - movq %rax,(%rsp) - movq %rcx,%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rsp),%rdi - movl $7,%ecx - jmp .Loop_mul_gather - -.align 32 -.Loop_mul_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz .Loop_mul_gather - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp .Lmul_gather_tail - -.align 32 -.Lmulx_gather: -.byte 102,76,15,126,194 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - mulxq (%rsi),%rbx,%r8 - movq %rbx,(%rsp) - xorl %edi,%edi - - mulxq 8(%rsi),%rax,%r9 - - mulxq 16(%rsi),%rbx,%r10 - adcxq %rax,%r8 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rbx,%r9 - - mulxq 32(%rsi),%rbx,%r12 - adcxq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rbx,%r11 - - mulxq 48(%rsi),%rbx,%r14 - adcxq %rax,%r12 - - mulxq 56(%rsi),%rax,%r15 - adcxq %rbx,%r13 - adcxq %rax,%r14 -.byte 0x67 - movq %r8,%rbx - adcxq %rdi,%r15 - - movq $-7,%rcx - jmp .Loop_mulx_gather - -.align 32 -.Loop_mulx_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,194 - -.byte 0xc4,0x62,0xfb,0xf6,0x86,0x00,0x00,0x00,0x00 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rsi),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rsi),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - -.byte 0xc4,0x62,0xfb,0xf6,0x9e,0x18,0x00,0x00,0x00 - adcxq %rax,%r10 - adoxq %r12,%r11 - - mulxq 32(%rsi),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 -.byte 0x67 - adoxq %r15,%r14 - - mulxq 56(%rsi),%rax,%r15 - movq %rbx,64(%rsp,%rcx,8) - adcxq %rax,%r14 - adoxq %rdi,%r15 - movq %r8,%rbx - adcxq %rdi,%r15 - - incq %rcx - jnz .Loop_mulx_gather - - movq %r8,64(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - - movq 128(%rsp),%rdx - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - -.Lmul_gather_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_gather4_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_gather4,.-rsaz_512_mul_gather4 -.globl rsaz_512_mul_scatter4 -.type rsaz_512_mul_scatter4,@function -.align 32 -rsaz_512_mul_scatter4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movl %r9d,%r9d - subq $128+24,%rsp -.Lmul_scatter4_body: - leaq (%r8,%r9,8),%r8 -.byte 102,72,15,110,199 -.byte 102,72,15,110,202 -.byte 102,73,15,110,208 - movq %rcx,128(%rsp) - - movq %rdi,%rbp - movl $0x80100,%r11d - andl OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je .Lmulx_scatter - movq (%rdi),%rbx - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp .Lmul_scatter_tail - -.align 32 -.Lmulx_scatter: - movq (%rdi),%rdx - call __rsaz_512_mulx - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - -.Lmul_scatter_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 -.byte 102,72,15,126,214 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,0(%rsi) - movq %r9,128(%rsi) - movq %r10,256(%rsi) - movq %r11,384(%rsi) - movq %r12,512(%rsi) - movq %r13,640(%rsi) - movq %r14,768(%rsi) - movq %r15,896(%rsi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_scatter4_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_scatter4,.-rsaz_512_mul_scatter4 -.globl rsaz_512_mul_by_one -.type rsaz_512_mul_by_one,@function -.align 32 -rsaz_512_mul_by_one: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lmul_by_one_body: - movl OPENSSL_ia32cap_P+8(%rip),%eax - movq %rdx,%rbp - movq %rcx,128(%rsp) - - movq (%rsi),%r8 - pxor %xmm0,%xmm0 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq 32(%rsi),%r12 - movq 40(%rsi),%r13 - movq 48(%rsi),%r14 - movq 56(%rsi),%r15 - - movdqa %xmm0,(%rsp) - movdqa %xmm0,16(%rsp) - movdqa %xmm0,32(%rsp) - movdqa %xmm0,48(%rsp) - movdqa %xmm0,64(%rsp) - movdqa %xmm0,80(%rsp) - movdqa %xmm0,96(%rsp) - andl $0x80100,%eax - cmpl $0x80100,%eax - je .Lby_one_callx - call __rsaz_512_reduce - jmp .Lby_one_tail -.align 32 -.Lby_one_callx: - movq 128(%rsp),%rdx - call __rsaz_512_reducex -.Lby_one_tail: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_by_one_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_by_one,.-rsaz_512_mul_by_one -.type __rsaz_512_reduce,@function -.align 32 -__rsaz_512_reduce: - movq %r8,%rbx - imulq 128+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp .Lreduction_loop - -.align 32 -.Lreduction_loop: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq 128+8(%rsp),%rsi - - - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jne .Lreduction_loop - - .byte 0xf3,0xc3 -.size __rsaz_512_reduce,.-__rsaz_512_reduce -.type __rsaz_512_reducex,@function -.align 32 -__rsaz_512_reducex: - - imulq %r8,%rdx - xorq %rsi,%rsi - movl $8,%ecx - jmp .Lreduction_loopx - -.align 32 -.Lreduction_loopx: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rbx,%rax - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rbx,%r10 - adcxq %rbx,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rbx,%r11 - adcxq %rbx,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xe3,0xf6,0xa5,0x20,0x00,0x00,0x00 - movq %rdx,%rax - movq %r8,%rdx - adcxq %rbx,%r11 - adoxq %r13,%r12 - - mulxq 128+8(%rsp),%rbx,%rdx - movq %rax,%rdx - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb5,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq %rbx,%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - adcxq %rsi,%r15 - - decl %ecx - jne .Lreduction_loopx - - .byte 0xf3,0xc3 -.size __rsaz_512_reducex,.-__rsaz_512_reducex -.type __rsaz_512_subtract,@function -.align 32 -__rsaz_512_subtract: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 0(%rbp),%r8 - movq 8(%rbp),%r9 - negq %r8 - notq %r9 - andq %rcx,%r8 - movq 16(%rbp),%r10 - andq %rcx,%r9 - notq %r10 - movq 24(%rbp),%r11 - andq %rcx,%r10 - notq %r11 - movq 32(%rbp),%r12 - andq %rcx,%r11 - notq %r12 - movq 40(%rbp),%r13 - andq %rcx,%r12 - notq %r13 - movq 48(%rbp),%r14 - andq %rcx,%r13 - notq %r14 - movq 56(%rbp),%r15 - andq %rcx,%r14 - notq %r15 - andq %rcx,%r15 - - addq (%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 -.size __rsaz_512_subtract,.-__rsaz_512_subtract -.type __rsaz_512_mul,@function -.align 32 -__rsaz_512_mul: - leaq 8(%rsp),%rdi - - movq (%rsi),%rax - mulq %rbx - movq %rax,(%rdi) - movq 8(%rsi),%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rbp),%rbp - leaq 8(%rdi),%rdi - - movl $7,%ecx - jmp .Loop_mul - -.align 32 -.Loop_mul: - movq (%rbp),%rbx - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - leaq 8(%rbp),%rbp - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz .Loop_mul - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 -.size __rsaz_512_mul,.-__rsaz_512_mul -.type __rsaz_512_mulx,@function -.align 32 -__rsaz_512_mulx: - mulxq (%rsi),%rbx,%r8 - movq $-6,%rcx - - mulxq 8(%rsi),%rax,%r9 - movq %rbx,8(%rsp) - - mulxq 16(%rsi),%rbx,%r10 - adcq %rax,%r8 - - mulxq 24(%rsi),%rax,%r11 - adcq %rbx,%r9 - - mulxq 32(%rsi),%rbx,%r12 - adcq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcq %rbx,%r11 - - mulxq 48(%rsi),%rbx,%r14 - adcq %rax,%r12 - - mulxq 56(%rsi),%rax,%r15 - movq 8(%rbp),%rdx - adcq %rbx,%r13 - adcq %rax,%r14 - adcq $0,%r15 - - xorq %rdi,%rdi - jmp .Loop_mulx - -.align 32 -.Loop_mulx: - movq %r8,%rbx - mulxq (%rsi),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rsi),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rsi),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0x3e,0xc4,0x62,0xfb,0xf6,0xa6,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rsi),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rsi),%rax,%r15 - movq 64(%rbp,%rcx,8),%rdx - movq %rbx,8+64-8(%rsp,%rcx,8) - adcxq %rax,%r14 - adoxq %rdi,%r15 - adcxq %rdi,%r15 - - incq %rcx - jnz .Loop_mulx - - movq %r8,%rbx - mulxq (%rsi),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - -.byte 0xc4,0x62,0xfb,0xf6,0x8e,0x08,0x00,0x00,0x00 - adcxq %rax,%r8 - adoxq %r10,%r9 - -.byte 0xc4,0x62,0xfb,0xf6,0x96,0x10,0x00,0x00,0x00 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - - mulxq 32(%rsi),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 - adoxq %r15,%r14 - -.byte 0xc4,0x62,0xfb,0xf6,0xbe,0x38,0x00,0x00,0x00 - adcxq %rax,%r14 - adoxq %rdi,%r15 - adcxq %rdi,%r15 - - movq %rbx,8+64-8(%rsp) - movq %r8,8+64(%rsp) - movq %r9,8+64+8(%rsp) - movq %r10,8+64+16(%rsp) - movq %r11,8+64+24(%rsp) - movq %r12,8+64+32(%rsp) - movq %r13,8+64+40(%rsp) - movq %r14,8+64+48(%rsp) - movq %r15,8+64+56(%rsp) - - .byte 0xf3,0xc3 -.size __rsaz_512_mulx,.-__rsaz_512_mulx -.globl rsaz_512_scatter4 -.type rsaz_512_scatter4,@function -.align 16 -rsaz_512_scatter4: - leaq (%rdi,%rdx,8),%rdi - movl $8,%r9d - jmp .Loop_scatter -.align 16 -.Loop_scatter: - movq (%rsi),%rax - leaq 8(%rsi),%rsi - movq %rax,(%rdi) - leaq 128(%rdi),%rdi - decl %r9d - jnz .Loop_scatter - .byte 0xf3,0xc3 -.size rsaz_512_scatter4,.-rsaz_512_scatter4 - -.globl rsaz_512_gather4 -.type rsaz_512_gather4,@function -.align 16 -rsaz_512_gather4: - movd %edx,%xmm8 - movdqa .Linc+16(%rip),%xmm1 - movdqa .Linc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - movl $8,%r9d - jmp .Loop_gather -.align 16 -.Loop_gather: - movdqa 0(%rsi),%xmm8 - movdqa 16(%rsi),%xmm9 - movdqa 32(%rsi),%xmm10 - movdqa 48(%rsi),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rsi),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rsi),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rsi),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rsi),%xmm15 - leaq 128(%rsi),%rsi - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movq %xmm8,(%rdi) - leaq 8(%rdi),%rdi - decl %r9d - jnz .Loop_gather - .byte 0xf3,0xc3 -.LSEH_end_rsaz_512_gather4: -.size rsaz_512_gather4,.-rsaz_512_gather4 - -.align 64 -.Linc: -.long 0,0, 1,1 -.long 2,2, 2,2 diff --git a/deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s b/deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s deleted file mode 100644 index f4e5337565bbc7..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s +++ /dev/null @@ -1,291 +0,0 @@ -.text - -.type _mul_1x1,@function -.align 16 -_mul_1x1: - subq $128+8,%rsp - movq $-1,%r9 - leaq (%rax,%rax,1),%rsi - shrq $3,%r9 - leaq (,%rax,4),%rdi - andq %rax,%r9 - leaq (,%rax,8),%r12 - sarq $63,%rax - leaq (%r9,%r9,1),%r10 - sarq $63,%rsi - leaq (,%r9,4),%r11 - andq %rbp,%rax - sarq $63,%rdi - movq %rax,%rdx - shlq $63,%rax - andq %rbp,%rsi - shrq $1,%rdx - movq %rsi,%rcx - shlq $62,%rsi - andq %rbp,%rdi - shrq $2,%rcx - xorq %rsi,%rax - movq %rdi,%rbx - shlq $61,%rdi - xorq %rcx,%rdx - shrq $3,%rbx - xorq %rdi,%rax - xorq %rbx,%rdx - - movq %r9,%r13 - movq $0,0(%rsp) - xorq %r10,%r13 - movq %r9,8(%rsp) - movq %r11,%r14 - movq %r10,16(%rsp) - xorq %r12,%r14 - movq %r13,24(%rsp) - - xorq %r11,%r9 - movq %r11,32(%rsp) - xorq %r11,%r10 - movq %r9,40(%rsp) - xorq %r11,%r13 - movq %r10,48(%rsp) - xorq %r14,%r9 - movq %r13,56(%rsp) - xorq %r14,%r10 - - movq %r12,64(%rsp) - xorq %r14,%r13 - movq %r9,72(%rsp) - xorq %r11,%r9 - movq %r10,80(%rsp) - xorq %r11,%r10 - movq %r13,88(%rsp) - - xorq %r11,%r13 - movq %r14,96(%rsp) - movq %r8,%rsi - movq %r9,104(%rsp) - andq %rbp,%rsi - movq %r10,112(%rsp) - shrq $4,%rbp - movq %r13,120(%rsp) - movq %r8,%rdi - andq %rbp,%rdi - shrq $4,%rbp - - movq (%rsp,%rsi,8),%xmm0 - movq %r8,%rsi - andq %rbp,%rsi - shrq $4,%rbp - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $4,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $60,%rbx - xorq %rcx,%rax - pslldq $1,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $12,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $52,%rbx - xorq %rcx,%rax - pslldq $2,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $20,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $44,%rbx - xorq %rcx,%rax - pslldq $3,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $28,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $36,%rbx - xorq %rcx,%rax - pslldq $4,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $36,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $28,%rbx - xorq %rcx,%rax - pslldq $5,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $44,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $20,%rbx - xorq %rcx,%rax - pslldq $6,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $52,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $12,%rbx - xorq %rcx,%rax - pslldq $7,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %rcx,%rbx - shlq $60,%rcx -.byte 102,72,15,126,198 - shrq $4,%rbx - xorq %rcx,%rax - psrldq $8,%xmm0 - xorq %rbx,%rdx -.byte 102,72,15,126,199 - xorq %rsi,%rax - xorq %rdi,%rdx - - addq $128+8,%rsp - .byte 0xf3,0xc3 -.Lend_mul_1x1: -.size _mul_1x1,.-_mul_1x1 - -.globl bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,@function -.align 16 -bn_GF2m_mul_2x2: - movq OPENSSL_ia32cap_P(%rip),%rax - btq $33,%rax - jnc .Lvanilla_mul_2x2 - -.byte 102,72,15,110,198 -.byte 102,72,15,110,201 -.byte 102,72,15,110,210 -.byte 102,73,15,110,216 - movdqa %xmm0,%xmm4 - movdqa %xmm1,%xmm5 -.byte 102,15,58,68,193,0 - pxor %xmm2,%xmm4 - pxor %xmm3,%xmm5 -.byte 102,15,58,68,211,0 -.byte 102,15,58,68,229,0 - xorps %xmm0,%xmm4 - xorps %xmm2,%xmm4 - movdqa %xmm4,%xmm5 - pslldq $8,%xmm4 - psrldq $8,%xmm5 - pxor %xmm4,%xmm2 - pxor %xmm5,%xmm0 - movdqu %xmm2,0(%rdi) - movdqu %xmm0,16(%rdi) - .byte 0xf3,0xc3 - -.align 16 -.Lvanilla_mul_2x2: - leaq -136(%rsp),%rsp - movq %r14,80(%rsp) - movq %r13,88(%rsp) - movq %r12,96(%rsp) - movq %rbp,104(%rsp) - movq %rbx,112(%rsp) -.Lbody_mul_2x2: - movq %rdi,32(%rsp) - movq %rsi,40(%rsp) - movq %rdx,48(%rsp) - movq %rcx,56(%rsp) - movq %r8,64(%rsp) - - movq $0xf,%r8 - movq %rsi,%rax - movq %rcx,%rbp - call _mul_1x1 - movq %rax,16(%rsp) - movq %rdx,24(%rsp) - - movq 48(%rsp),%rax - movq 64(%rsp),%rbp - call _mul_1x1 - movq %rax,0(%rsp) - movq %rdx,8(%rsp) - - movq 40(%rsp),%rax - movq 56(%rsp),%rbp - xorq 48(%rsp),%rax - xorq 64(%rsp),%rbp - call _mul_1x1 - movq 0(%rsp),%rbx - movq 8(%rsp),%rcx - movq 16(%rsp),%rdi - movq 24(%rsp),%rsi - movq 32(%rsp),%rbp - - xorq %rdx,%rax - xorq %rcx,%rdx - xorq %rbx,%rax - movq %rbx,0(%rbp) - xorq %rdi,%rdx - movq %rsi,24(%rbp) - xorq %rsi,%rax - xorq %rsi,%rdx - xorq %rdx,%rax - movq %rdx,16(%rbp) - movq %rax,8(%rbp) - - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbp - movq 112(%rsp),%rbx - leaq 136(%rsp),%rsp - .byte 0xf3,0xc3 -.Lend_mul_2x2: -.size bn_GF2m_mul_2x2,.-bn_GF2m_mul_2x2 -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 16 diff --git a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s deleted file mode 100644 index 0fd3703ade86ee..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s +++ /dev/null @@ -1,1166 +0,0 @@ -.text - - - -.globl bn_mul_mont -.type bn_mul_mont,@function -.align 16 -bn_mul_mont: - movl %r9d,%r9d - movq %rsp,%rax - testl $3,%r9d - jnz .Lmul_enter - cmpl $8,%r9d - jb .Lmul_enter - movl OPENSSL_ia32cap_P+8(%rip),%r11d - cmpq %rsi,%rdx - jne .Lmul4x_enter - testl $7,%r9d - jz .Lsqr8x_enter - jmp .Lmul4x_enter - -.align 16 -.Lmul_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -16(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk - jmp .Lmul_page_walk_done - -.align 16 -.Lmul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk -.Lmul_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -.Lmul_body: - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .L1st_enter - -.align 16 -.L1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.L1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne .L1st - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp .Louter -.align 16 -.Louter: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .Linner_enter - -.align 16 -.Linner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.Linner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne .Linner - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb .Louter - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp .Lsub -.align 16 -.Lsub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz .Lsub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.align 16 -.Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz .Lcopy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size bn_mul_mont,.-bn_mul_mont -.type bn_mul4x_mont,@function -.align 16 -bn_mul4x_mont: - movl %r9d,%r9d - movq %rsp,%rax -.Lmul4x_enter: - andl $0x80100,%r11d - cmpl $0x80100,%r11d - je .Lmulx4x_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -32(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul4x_page_walk - jmp .Lmul4x_page_walk_done - -.Lmul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul4x_page_walk -.Lmul4x_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -.Lmul4x_body: - movq %rdi,16(%rsp,%r9,8) - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp .L1st4x -.align 16 -.L1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb .L1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - leaq 1(%r14),%r14 -.align 4 -.Louter4x: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq (%rsp),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%rsp),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp .Linner4x -.align 16 -.Linner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq 8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb .Linner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 1(%r14),%r14 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%rsp,%r9,8),%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - cmpq %r9,%r14 - jb .Louter4x - movq 16(%rsp,%r9,8),%rdi - movq 0(%rsp),%rax - pxor %xmm0,%xmm0 - movq 8(%rsp),%rdx - shrq $2,%r9 - leaq (%rsp),%rsi - xorq %r14,%r14 - - subq 0(%rcx),%rax - movq 16(%rsi),%rbx - movq 24(%rsi),%rbp - sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 -.Lsub4x: - movq %rax,0(%rdi,%r14,8) - movq %rdx,8(%rdi,%r14,8) - sbbq 16(%rcx,%r14,8),%rbx - movq 32(%rsi,%r14,8),%rax - movq 40(%rsi,%r14,8),%rdx - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - movq %rbp,24(%rdi,%r14,8) - sbbq 32(%rcx,%r14,8),%rax - movq 48(%rsi,%r14,8),%rbx - movq 56(%rsi,%r14,8),%rbp - sbbq 40(%rcx,%r14,8),%rdx - leaq 4(%r14),%r14 - decq %r15 - jnz .Lsub4x - - movq %rax,0(%rdi,%r14,8) - movq 32(%rsi,%r14,8),%rax - sbbq 16(%rcx,%r14,8),%rbx - movq %rdx,8(%rdi,%r14,8) - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - - sbbq $0,%rax - movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) - jmp .Lcopy4x -.align 16 -.Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 - decq %r15 - jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mul4x_mont,.-bn_mul4x_mont - - - -.type bn_sqr8x_mont,@function -.align 32 -bn_sqr8x_mont: - movq %rsp,%rax -.Lsqr8x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lsqr8x_prologue: - - movl %r9d,%r10d - shll $3,%r9d - shlq $3+2,%r10 - negq %r9 - - - - - - - leaq -64(%rsp,%r9,2),%r11 - movq %rsp,%rbp - movq (%r8),%r8 - subq %rsi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lsqr8x_sp_alt - subq %r11,%rbp - leaq -64(%rbp,%r9,2),%rbp - jmp .Lsqr8x_sp_done - -.align 32 -.Lsqr8x_sp_alt: - leaq 4096-64(,%r9,2),%r10 - leaq -64(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lsqr8x_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lsqr8x_page_walk - jmp .Lsqr8x_page_walk_done - -.align 16 -.Lsqr8x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lsqr8x_page_walk -.Lsqr8x_page_walk_done: - - movq %r9,%r10 - negq %r9 - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lsqr8x_body: - -.byte 102,72,15,110,209 - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,73,15,110,218 - movl OPENSSL_ia32cap_P+8(%rip),%eax - andl $0x80100,%eax - cmpl $0x80100,%eax - jne .Lsqr8x_nox - - call bn_sqrx8x_internal - - - - - leaq (%r8,%rcx,1),%rbx - movq %rcx,%r9 - movq %rcx,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp .Lsqr8x_sub - -.align 32 -.Lsqr8x_nox: - call bn_sqr8x_internal - - - - - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx - movq %r9,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp .Lsqr8x_sub - -.align 32 -.Lsqr8x_sub: - movq 0(%rbx),%r12 - movq 8(%rbx),%r13 - movq 16(%rbx),%r14 - movq 24(%rbx),%r15 - leaq 32(%rbx),%rbx - sbbq 0(%rbp),%r12 - sbbq 8(%rbp),%r13 - sbbq 16(%rbp),%r14 - sbbq 24(%rbp),%r15 - leaq 32(%rbp),%rbp - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - incq %rcx - jnz .Lsqr8x_sub - - sbbq $0,%rax - leaq (%rbx,%r9,1),%rbx - leaq (%rdi,%r9,1),%rdi - -.byte 102,72,15,110,200 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp .Lsqr8x_cond_copy - -.align 32 -.Lsqr8x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - movdqa %xmm0,-32(%rbx,%rdx,1) - movdqa %xmm0,-16(%rbx,%rdx,1) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - addq $32,%r9 - jnz .Lsqr8x_cond_copy - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lsqr8x_epilogue: - .byte 0xf3,0xc3 -.size bn_sqr8x_mont,.-bn_sqr8x_mont -.type bn_mulx4x_mont,@function -.align 32 -bn_mulx4x_mont: - movq %rsp,%rax -.Lmulx4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lmulx4x_prologue: - - shll $3,%r9d - xorq %r10,%r10 - subq %r9,%r10 - movq (%r8),%r8 - leaq -72(%rsp,%r10,1),%rbp - andq $-128,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmulx4x_page_walk - jmp .Lmulx4x_page_walk_done - -.align 16 -.Lmulx4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmulx4x_page_walk -.Lmulx4x_page_walk_done: - - leaq (%rdx,%r9,1),%r10 - - - - - - - - - - - - - movq %r9,0(%rsp) - shrq $5,%r9 - movq %r10,16(%rsp) - subq $1,%r9 - movq %r8,24(%rsp) - movq %rdi,32(%rsp) - movq %rax,40(%rsp) - movq %r9,48(%rsp) - jmp .Lmulx4x_body - -.align 32 -.Lmulx4x_body: - leaq 8(%rdx),%rdi - movq (%rdx),%rdx - leaq 64+32(%rsp),%rbx - movq %rdx,%r9 - - mulxq 0(%rsi),%r8,%rax - mulxq 8(%rsi),%r11,%r14 - addq %rax,%r11 - movq %rdi,8(%rsp) - mulxq 16(%rsi),%r12,%r13 - adcq %r14,%r12 - adcq $0,%r13 - - movq %r8,%rdi - imulq 24(%rsp),%r8 - xorq %rbp,%rbp - - mulxq 24(%rsi),%rax,%r14 - movq %r8,%rdx - leaq 32(%rsi),%rsi - adcxq %rax,%r13 - adcxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%rdi - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 -.byte 0xc4,0x62,0xfb,0xf6,0xa1,0x10,0x00,0x00,0x00 - movq 48(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - adcxq %rax,%r12 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r12,-16(%rbx) - - jmp .Lmulx4x_1st - -.align 32 -.Lmulx4x_1st: - adcxq %rbp,%r15 - mulxq 0(%rsi),%r10,%rax - adcxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 -.byte 0x67,0x67 - movq %r8,%rdx - adcxq %rax,%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - movq %r11,-32(%rbx) - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz .Lmulx4x_1st - - movq 0(%rsp),%rax - movq 8(%rsp),%rdi - adcq %rbp,%r15 - addq %r15,%r14 - sbbq %r15,%r15 - movq %r14,-8(%rbx) - jmp .Lmulx4x_outer - -.align 32 -.Lmulx4x_outer: - movq (%rdi),%rdx - leaq 8(%rdi),%rdi - subq %rax,%rsi - movq %r15,(%rbx) - leaq 64+32(%rsp),%rbx - subq %rax,%rcx - - mulxq 0(%rsi),%r8,%r11 - xorl %ebp,%ebp - movq %rdx,%r9 - mulxq 8(%rsi),%r14,%r12 - adoxq -32(%rbx),%r8 - adcxq %r14,%r11 - mulxq 16(%rsi),%r15,%r13 - adoxq -24(%rbx),%r11 - adcxq %r15,%r12 - adoxq -16(%rbx),%r12 - adcxq %rbp,%r13 - adoxq %rbp,%r13 - - movq %rdi,8(%rsp) - movq %r8,%r15 - imulq 24(%rsp),%r8 - xorl %ebp,%ebp - - mulxq 24(%rsi),%rax,%r14 - movq %r8,%rdx - adcxq %rax,%r13 - adoxq -8(%rbx),%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - adoxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - leaq 32(%rcx),%rcx - adcxq %rax,%r12 - adoxq %rbp,%r15 - movq 48(%rsp),%rdi - movq %r12,-16(%rbx) - - jmp .Lmulx4x_inner - -.align 32 -.Lmulx4x_inner: - mulxq 0(%rsi),%r10,%rax - adcxq %rbp,%r15 - adoxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq 0(%rbx),%r10 - adoxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq 8(%rbx),%r11 - adoxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 - movq %r8,%rdx - adcxq 16(%rbx),%r12 - adoxq %rax,%r13 - adcxq 24(%rbx),%r13 - adoxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - adcxq %rbp,%r14 - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-32(%rbx) - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz .Lmulx4x_inner - - movq 0(%rsp),%rax - movq 8(%rsp),%rdi - adcq %rbp,%r15 - subq 0(%rbx),%rbp - adcq %r15,%r14 - sbbq %r15,%r15 - movq %r14,-8(%rbx) - - cmpq 16(%rsp),%rdi - jne .Lmulx4x_outer - - leaq 64(%rsp),%rbx - subq %rax,%rcx - negq %r15 - movq %rax,%rdx - shrq $3+2,%rax - movq 32(%rsp),%rdi - jmp .Lmulx4x_sub - -.align 32 -.Lmulx4x_sub: - movq 0(%rbx),%r11 - movq 8(%rbx),%r12 - movq 16(%rbx),%r13 - movq 24(%rbx),%r14 - leaq 32(%rbx),%rbx - sbbq 0(%rcx),%r11 - sbbq 8(%rcx),%r12 - sbbq 16(%rcx),%r13 - sbbq 24(%rcx),%r14 - leaq 32(%rcx),%rcx - movq %r11,0(%rdi) - movq %r12,8(%rdi) - movq %r13,16(%rdi) - movq %r14,24(%rdi) - leaq 32(%rdi),%rdi - decq %rax - jnz .Lmulx4x_sub - - sbbq $0,%r15 - leaq 64(%rsp),%rbx - subq %rdx,%rdi - -.byte 102,73,15,110,207 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp .Lmulx4x_cond_copy - -.align 32 -.Lmulx4x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - subq $32,%rdx - jnz .Lmulx4x_cond_copy - - movq %rdx,(%rbx) - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmulx4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mulx4x_mont,.-bn_mulx4x_mont -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 16 diff --git a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s b/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s deleted file mode 100644 index 963fa3efda5ea9..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s +++ /dev/null @@ -1,3652 +0,0 @@ -.text - - - -.globl bn_mul_mont_gather5 -.type bn_mul_mont_gather5,@function -.align 64 -bn_mul_mont_gather5: - movl %r9d,%r9d - movq %rsp,%rax - testl $7,%r9d - jnz .Lmul_enter - movl OPENSSL_ia32cap_P+8(%rip),%r11d - jmp .Lmul4x_enter - -.align 16 -.Lmul_enter: - movd 8(%rsp),%xmm5 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -280(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk - jmp .Lmul_page_walk_done - -.Lmul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk -.Lmul_page_walk_done: - - leaq .Linc(%rip),%r10 - movq %rax,8(%rsp,%r9,8) -.Lmul_body: - - leaq 128(%rdx),%r12 - movdqa 0(%r10),%xmm0 - movdqa 16(%r10),%xmm1 - leaq 24-112(%rsp,%r9,8),%r10 - andq $-16,%r10 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r8),%r8 - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .L1st_enter - -.align 16 -.L1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.L1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne .L1st - - - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp .Louter -.align 16 -.Louter: - leaq 24+128(%rsp,%r9,8),%rdx - andq $-16,%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 - - movq (%rsi),%rax -.byte 102,72,15,126,195 - - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .Linner_enter - -.align 16 -.Linner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.Linner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne .Linner - - addq %rax,%r13 - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r9,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb .Louter - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp .Lsub -.align 16 -.Lsub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz .Lsub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.align 16 -.Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz .Lcopy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size bn_mul_mont_gather5,.-bn_mul_mont_gather5 -.type bn_mul4x_mont_gather5,@function -.align 32 -bn_mul4x_mont_gather5: -.byte 0x67 - movq %rsp,%rax -.Lmul4x_enter: - andl $0x80108,%r11d - cmpl $0x80108,%r11d - je .Lmulx4x_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lmul4x_prologue: - -.byte 0x67 - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lmul4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lmul4xsp_done - -.align 32 -.Lmul4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lmul4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmul4x_page_walk - jmp .Lmul4x_page_walk_done - -.Lmul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmul4x_page_walk -.Lmul4x_page_walk_done: - - negq %r9 - - movq %rax,40(%rsp) -.Lmul4x_body: - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mul4x_mont_gather5,.-bn_mul4x_mont_gather5 - -.type mul4x_internal,@function -.align 32 -mul4x_internal: - shlq $5,%r9 - movd 8(%rax),%xmm5 - leaq .Linc(%rip),%rax - leaq 128(%rdx,%r9,1),%r13 - shrq $5,%r9 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r9,1),%r10 - leaq 128(%rdx),%r12 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67,0x67 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq %r13,16+8(%rsp) - movq %rdi,56+8(%rsp) - - movq (%r8),%r8 - movq (%rsi),%rax - leaq (%rsi,%r9,1),%rsi - negq %r9 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - leaq 64+8(%rsp),%r14 - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - jmp .L1st4x - -.align 32 -.L1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz .L1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - jmp .Louter4x - -.align 32 -.Louter4x: - leaq 16+128(%r14),%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r14,%r9,1),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - movq %rdi,(%r14) - - leaq (%r14,%r9,1),%r14 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdx,%r13 - jmp .Linner4x - -.align 32 -.Linner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - addq (%r14),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz .Linner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq %rbp,%rax - movq -8(%rcx),%rbp - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - movq %rdi,-16(%r14) - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%r14),%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - cmpq 16+8(%rsp),%r12 - jb .Louter4x - xorq %rax,%rax - subq %r13,%rbp - adcq %r15,%r15 - orq %r15,%rdi - subq %rdi,%rax - leaq (%r14,%r9,1),%rbx - movq (%rcx),%r12 - leaq (%rcx),%rbp - movq %r9,%rcx - sarq $3+2,%rcx - movq 56+8(%rsp),%rdi - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqr4x_sub_entry -.size mul4x_internal,.-mul4x_internal -.globl bn_power5 -.type bn_power5,@function -.align 32 -bn_power5: - movq %rsp,%rax - movl OPENSSL_ia32cap_P+8(%rip),%r11d - andl $0x80108,%r11d - cmpl $0x80108,%r11d - je .Lpowerx5_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lpower5_prologue: - - shll $3,%r9d - leal (%r9,%r9,2),%r10d - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lpwr_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lpwr_sp_done - -.align 32 -.Lpwr_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lpwr_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwr_page_walk - jmp .Lpwr_page_walk_done - -.Lpwr_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwr_page_walk -.Lpwr_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lpower5_body: -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq %rsi,%rdi - movq 40(%rsp),%rax - leaq 32(%rsp),%r8 - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lpower5_epilogue: - .byte 0xf3,0xc3 -.size bn_power5,.-bn_power5 - -.globl bn_sqr8x_internal -.hidden bn_sqr8x_internal -.type bn_sqr8x_internal,@function -.align 32 -bn_sqr8x_internal: -__bn_sqr8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 32(%r10),%rbp - leaq (%rsi,%r9,1),%rsi - - movq %r9,%rcx - - - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - movq %r10,-24(%rdi,%rbp,1) - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - movq %r11,-16(%rdi,%rbp,1) - movq %rdx,%r10 - - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - movq %rax,%r12 - movq %rbx,%rax - movq %rdx,%r13 - - leaq (%rbp),%rcx - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - jmp .Lsqr4x_1st - -.align 32 -.Lsqr4x_1st: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq 16(%rsi,%rcx,1),%rbx - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %r10,8(%rdi,%rcx,1) - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 24(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,16(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - leaq 32(%rcx),%rcx - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne .Lsqr4x_1st - - mulq %r15 - addq %rax,%r13 - leaq 16(%rbp),%rbp - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - jmp .Lsqr4x_outer - -.align 32 -.Lsqr4x_outer: - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq -24(%rdi,%rbp,1),%r10 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - movq %r10,-24(%rdi,%rbp,1) - movq %rdx,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - addq -16(%rdi,%rbp,1),%r11 - movq %rdx,%r10 - adcq $0,%r10 - movq %r11,-16(%rdi,%rbp,1) - - xorq %r12,%r12 - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - adcq $0,%rdx - addq -8(%rdi,%rbp,1),%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rbp,1) - - leaq (%rbp),%rcx - jmp .Lsqr4x_inner - -.align 32 -.Lsqr4x_inner: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - addq (%rdi,%rcx,1),%r13 - adcq $0,%r12 - -.byte 0x67 - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %r11,(%rdi,%rcx,1) - movq %rbx,%rax - movq %rdx,%r13 - adcq $0,%r13 - addq 8(%rdi,%rcx,1),%r12 - leaq 16(%rcx),%rcx - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne .Lsqr4x_inner - -.byte 0x67 - mulq %r15 - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - addq $16,%rbp - jnz .Lsqr4x_outer - - - movq -32(%rsi),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi),%rbx - movq %rax,%r15 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq %r10,-24(%rdi) - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - movq -8(%rsi),%rbx - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,-16(%rdi) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi) - - mulq %r15 - addq %rax,%r13 - movq -16(%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - mulq %rbx - addq $16,%rbp - xorq %r14,%r14 - subq %r9,%rbp - xorq %r15,%r15 - - addq %r12,%rax - adcq $0,%rdx - movq %rax,8(%rdi) - movq %rdx,16(%rdi) - movq %r15,24(%rdi) - - movq -16(%rsi,%rbp,1),%rax - leaq 48+8(%rsp),%rdi - xorq %r10,%r10 - movq 8(%rdi),%r11 - - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - leaq 16(%rbp),%rbp - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - jmp .Lsqr4x_shift_n_add - -.align 32 -.Lsqr4x_shift_n_add: - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 0(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 8(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,-16(%rdi) - adcq %rdx,%r8 - - leaq (%r14,%r10,2),%r12 - movq %r8,-8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq 8(%rsi,%rbp,1),%rax - movq %r12,0(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 16(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - addq $32,%rbp - jnz .Lsqr4x_shift_n_add - - leaq (%r14,%r10,2),%r12 -.byte 0x67 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - mulq %rax - negq %r15 - adcq %rax,%rbx - adcq %rdx,%r8 - movq %rbx,-16(%rdi) - movq %r8,-8(%rdi) -.byte 102,72,15,126,213 -__bn_sqr8x_reduction: - xorq %rax,%rax - leaq (%r9,%rbp,1),%rcx - leaq 48+8(%rsp,%r9,2),%rdx - movq %rcx,0+8(%rsp) - leaq 48+8(%rsp,%r9,1),%rdi - movq %rdx,8+8(%rsp) - negq %r9 - jmp .L8x_reduction_loop - -.align 32 -.L8x_reduction_loop: - leaq (%rdi,%r9,1),%rdi -.byte 0x66 - movq 0(%rdi),%rbx - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,(%rdx) - leaq 64(%rdi),%rdi - -.byte 0x67 - movq %rbx,%r8 - imulq 32+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp .L8x_reduce - -.align 32 -.L8x_reduce: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rbx,48-8+8(%rsp,%rcx,8) - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq 32+8(%rsp),%rsi - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz .L8x_reduce - - leaq 64(%rbp),%rbp - xorq %rax,%rax - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae .L8x_no_tail - -.byte 0x66 - addq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movq 48+56+8(%rsp),%rbx - movl $8,%ecx - movq 0(%rbp),%rax - jmp .L8x_tail - -.align 32 -.L8x_tail: - mulq %rbx - addq %rax,%r8 - movq 8(%rbp),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - leaq 8(%rdi),%rdi - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq 48-16+8(%rsp,%rcx,8),%rbx - addq %rax,%r15 - adcq $0,%rdx - addq %r15,%r14 - movq 0(%rbp),%rax - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz .L8x_tail - - leaq 64(%rbp),%rbp - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae .L8x_tail_done - - movq 48+56+8(%rsp),%rbx - negq %rsi - movq 0(%rbp),%rax - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movl $8,%ecx - jmp .L8x_tail - -.align 32 -.L8x_tail_done: - xorq %rax,%rax - addq (%rdx),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - negq %rsi -.L8x_no_tail: - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - movq -8(%rbp),%rcx - xorq %rsi,%rsi - -.byte 102,72,15,126,213 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) -.byte 102,73,15,126,217 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rdi),%rdi - - cmpq %rdx,%rdi - jb .L8x_reduction_loop - .byte 0xf3,0xc3 -.size bn_sqr8x_internal,.-bn_sqr8x_internal -.type __bn_post4x_internal,@function -.align 32 -__bn_post4x_internal: - movq 0(%rbp),%r12 - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx -.byte 102,72,15,126,207 - negq %rax -.byte 102,72,15,126,206 - sarq $3+2,%rcx - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqr4x_sub_entry - -.align 16 -.Lsqr4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -.Lsqr4x_sub_entry: - leaq 32(%rbp),%rbp - notq %r12 - notq %r13 - notq %r14 - notq %r15 - andq %rax,%r12 - andq %rax,%r13 - andq %rax,%r14 - andq %rax,%r15 - - negq %r10 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - adcq 16(%rbx),%r14 - adcq 24(%rbx),%r15 - movq %r12,0(%rdi) - leaq 32(%rbx),%rbx - movq %r13,8(%rdi) - sbbq %r10,%r10 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - - incq %rcx - jnz .Lsqr4x_sub - - movq %r9,%r10 - negq %r9 - .byte 0xf3,0xc3 -.size __bn_post4x_internal,.-__bn_post4x_internal -.globl bn_from_montgomery -.type bn_from_montgomery,@function -.align 32 -bn_from_montgomery: - testl $7,%r9d - jz bn_from_mont8x - xorl %eax,%eax - .byte 0xf3,0xc3 -.size bn_from_montgomery,.-bn_from_montgomery - -.type bn_from_mont8x,@function -.align 32 -bn_from_mont8x: -.byte 0x67 - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lfrom_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lfrom_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lfrom_sp_done - -.align 32 -.Lfrom_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lfrom_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lfrom_page_walk - jmp .Lfrom_page_walk_done - -.Lfrom_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lfrom_page_walk -.Lfrom_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lfrom_body: - movq %r9,%r11 - leaq 48(%rsp),%rax - pxor %xmm0,%xmm0 - jmp .Lmul_by_1 - -.align 32 -.Lmul_by_1: - movdqu (%rsi),%xmm1 - movdqu 16(%rsi),%xmm2 - movdqu 32(%rsi),%xmm3 - movdqa %xmm0,(%rax,%r9,1) - movdqu 48(%rsi),%xmm4 - movdqa %xmm0,16(%rax,%r9,1) -.byte 0x48,0x8d,0xb6,0x40,0x00,0x00,0x00 - movdqa %xmm1,(%rax) - movdqa %xmm0,32(%rax,%r9,1) - movdqa %xmm2,16(%rax) - movdqa %xmm0,48(%rax,%r9,1) - movdqa %xmm3,32(%rax) - movdqa %xmm4,48(%rax) - leaq 64(%rax),%rax - subq $64,%r11 - jnz .Lmul_by_1 - -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 0x67 - movq %rcx,%rbp -.byte 102,73,15,110,218 - movl OPENSSL_ia32cap_P+8(%rip),%r11d - andl $0x80108,%r11d - cmpl $0x80108,%r11d - jne .Lfrom_mont_nox - - leaq (%rax,%r9,1),%rdi - call __bn_sqrx8x_reduction - call __bn_postx4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp .Lfrom_mont_zero - -.align 32 -.Lfrom_mont_nox: - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp .Lfrom_mont_zero - -.align 32 -.Lfrom_mont_zero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - movdqa %xmm0,32(%rax) - movdqa %xmm0,48(%rax) - leaq 64(%rax),%rax - subq $32,%r9 - jnz .Lfrom_mont_zero - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lfrom_epilogue: - .byte 0xf3,0xc3 -.size bn_from_mont8x,.-bn_from_mont8x -.type bn_mulx4x_mont_gather5,@function -.align 32 -bn_mulx4x_mont_gather5: - movq %rsp,%rax -.Lmulx4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lmulx4x_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lmulx4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lmulx4xsp_done - -.Lmulx4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lmulx4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmulx4x_page_walk - jmp .Lmulx4x_page_walk_done - -.Lmulx4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmulx4x_page_walk -.Lmulx4x_page_walk_done: - - - - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lmulx4x_body: - call mulx4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmulx4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mulx4x_mont_gather5,.-bn_mulx4x_mont_gather5 - -.type mulx4x_internal,@function -.align 32 -mulx4x_internal: - movq %r9,8(%rsp) - movq %r9,%r10 - negq %r9 - shlq $5,%r9 - negq %r10 - leaq 128(%rdx,%r9,1),%r13 - shrq $5+5,%r9 - movd 8(%rax),%xmm5 - subq $1,%r9 - leaq .Linc(%rip),%rax - movq %r13,16+8(%rsp) - movq %r9,24+8(%rsp) - movq %rdi,56+8(%rsp) - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r10,1),%r10 - leaq 128(%rdx),%rdi - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67 - movdqa %xmm1,%xmm2 -.byte 0x67 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 -.byte 0x67 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - - pand 64(%rdi),%xmm0 - pand 80(%rdi),%xmm1 - pand 96(%rdi),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%rdi),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%rdi),%xmm4 - movdqa -112(%rdi),%xmm5 - movdqa -96(%rdi),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%rdi),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%rdi),%xmm4 - movdqa -48(%rdi),%xmm5 - movdqa -32(%rdi),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%rdi),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%rdi),%xmm4 - movdqa 16(%rdi),%xmm5 - movdqa 32(%rdi),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%rdi),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - pxor %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%rdi),%rdi -.byte 102,72,15,126,194 - leaq 64+32+8(%rsp),%rbx - - movq %rdx,%r9 - mulxq 0(%rsi),%r8,%rax - mulxq 8(%rsi),%r11,%r12 - addq %rax,%r11 - mulxq 16(%rsi),%rax,%r13 - adcq %rax,%r12 - adcq $0,%r13 - mulxq 24(%rsi),%rax,%r14 - - movq %r8,%r15 - imulq 32+8(%rsp),%r8 - xorq %rbp,%rbp - movq %r8,%rdx - - movq %rdi,8+8(%rsp) - - leaq 32(%rsi),%rsi - adcxq %rax,%r13 - adcxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - movq 24+8(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - adcxq %rax,%r12 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r12,-16(%rbx) - jmp .Lmulx4x_1st - -.align 32 -.Lmulx4x_1st: - adcxq %rbp,%r15 - mulxq 0(%rsi),%r10,%rax - adcxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 -.byte 0x67,0x67 - movq %r8,%rdx - adcxq %rax,%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - movq %r11,-32(%rbx) - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz .Lmulx4x_1st - - movq 8(%rsp),%rax - adcq %rbp,%r15 - leaq (%rsi,%rax,1),%rsi - addq %r15,%r14 - movq 8+8(%rsp),%rdi - adcq %rbp,%rbp - movq %r14,-8(%rbx) - jmp .Lmulx4x_outer - -.align 32 -.Lmulx4x_outer: - leaq 16-256(%rbx),%r10 - pxor %xmm4,%xmm4 -.byte 0x67,0x67 - pxor %xmm5,%xmm5 - movdqa -128(%rdi),%xmm0 - movdqa -112(%rdi),%xmm1 - movdqa -96(%rdi),%xmm2 - pand 256(%r10),%xmm0 - movdqa -80(%rdi),%xmm3 - pand 272(%r10),%xmm1 - por %xmm0,%xmm4 - pand 288(%r10),%xmm2 - por %xmm1,%xmm5 - pand 304(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%rdi),%xmm0 - movdqa -48(%rdi),%xmm1 - movdqa -32(%rdi),%xmm2 - pand 320(%r10),%xmm0 - movdqa -16(%rdi),%xmm3 - pand 336(%r10),%xmm1 - por %xmm0,%xmm4 - pand 352(%r10),%xmm2 - por %xmm1,%xmm5 - pand 368(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%rdi),%xmm0 - movdqa 16(%rdi),%xmm1 - movdqa 32(%rdi),%xmm2 - pand 384(%r10),%xmm0 - movdqa 48(%rdi),%xmm3 - pand 400(%r10),%xmm1 - por %xmm0,%xmm4 - pand 416(%r10),%xmm2 - por %xmm1,%xmm5 - pand 432(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%rdi),%xmm0 - movdqa 80(%rdi),%xmm1 - movdqa 96(%rdi),%xmm2 - pand 448(%r10),%xmm0 - movdqa 112(%rdi),%xmm3 - pand 464(%r10),%xmm1 - por %xmm0,%xmm4 - pand 480(%r10),%xmm2 - por %xmm1,%xmm5 - pand 496(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%rdi),%rdi -.byte 102,72,15,126,194 - - movq %rbp,(%rbx) - leaq 32(%rbx,%rax,1),%rbx - mulxq 0(%rsi),%r8,%r11 - xorq %rbp,%rbp - movq %rdx,%r9 - mulxq 8(%rsi),%r14,%r12 - adoxq -32(%rbx),%r8 - adcxq %r14,%r11 - mulxq 16(%rsi),%r15,%r13 - adoxq -24(%rbx),%r11 - adcxq %r15,%r12 - mulxq 24(%rsi),%rdx,%r14 - adoxq -16(%rbx),%r12 - adcxq %rdx,%r13 - leaq (%rcx,%rax,1),%rcx - leaq 32(%rsi),%rsi - adoxq -8(%rbx),%r13 - adcxq %rbp,%r14 - adoxq %rbp,%r14 - - movq %r8,%r15 - imulq 32+8(%rsp),%r8 - - movq %r8,%rdx - xorq %rbp,%rbp - movq %rdi,8+8(%rsp) - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq 24+8(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r12 - movq %r11,-24(%rbx) - adoxq %rbp,%r15 - movq %r12,-16(%rbx) - leaq 32(%rcx),%rcx - jmp .Lmulx4x_inner - -.align 32 -.Lmulx4x_inner: - mulxq 0(%rsi),%r10,%rax - adcxq %rbp,%r15 - adoxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq 0(%rbx),%r10 - adoxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq 8(%rbx),%r11 - adoxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 - movq %r8,%rdx - adcxq 16(%rbx),%r12 - adoxq %rax,%r13 - adcxq 24(%rbx),%r13 - adoxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - adcxq %rbp,%r14 - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - adoxq %r15,%r13 - movq %r11,-32(%rbx) - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - leaq 32(%rcx),%rcx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - movq %r13,-16(%rbx) - - decq %rdi - jnz .Lmulx4x_inner - - movq 0+8(%rsp),%rax - adcq %rbp,%r15 - subq 0(%rbx),%rdi - movq 8+8(%rsp),%rdi - movq 16+8(%rsp),%r10 - adcq %r15,%r14 - leaq (%rsi,%rax,1),%rsi - adcq %rbp,%rbp - movq %r14,-8(%rbx) - - cmpq %r10,%rdi - jb .Lmulx4x_outer - - movq -8(%rcx),%r10 - movq %rbp,%r8 - movq (%rcx,%rax,1),%r12 - leaq (%rcx,%rax,1),%rbp - movq %rax,%rcx - leaq (%rbx,%rax,1),%rdi - xorl %eax,%eax - xorq %r15,%r15 - subq %r14,%r10 - adcq %r15,%r15 - orq %r15,%r8 - sarq $3+2,%rcx - subq %r8,%rax - movq 56+8(%rsp),%rdx - decq %r12 - movq 8(%rbp),%r13 - xorq %r8,%r8 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqrx4x_sub_entry -.size mulx4x_internal,.-mulx4x_internal -.type bn_powerx5,@function -.align 32 -bn_powerx5: - movq %rsp,%rax -.Lpowerx5_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lpowerx5_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lpwrx_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lpwrx_sp_done - -.align 32 -.Lpwrx_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lpwrx_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwrx_page_walk - jmp .Lpwrx_page_walk_done - -.Lpwrx_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwrx_page_walk -.Lpwrx_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - - - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lpowerx5_body: - - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - - movq %r10,%r9 - movq %rsi,%rdi -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq 40(%rsp),%rax - - call mulx4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lpowerx5_epilogue: - .byte 0xf3,0xc3 -.size bn_powerx5,.-bn_powerx5 - -.globl bn_sqrx8x_internal -.hidden bn_sqrx8x_internal -.type bn_sqrx8x_internal,@function -.align 32 -bn_sqrx8x_internal: -__bn_sqrx8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 48+8(%rsp),%rdi - leaq (%rsi,%r9,1),%rbp - movq %r9,0+8(%rsp) - movq %rbp,8+8(%rsp) - jmp .Lsqr8x_zero_start - -.align 32 -.byte 0x66,0x66,0x66,0x2e,0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00 -.Lsqrx8x_zero: -.byte 0x3e - movdqa %xmm0,0(%rdi) - movdqa %xmm0,16(%rdi) - movdqa %xmm0,32(%rdi) - movdqa %xmm0,48(%rdi) -.Lsqr8x_zero_start: - movdqa %xmm0,64(%rdi) - movdqa %xmm0,80(%rdi) - movdqa %xmm0,96(%rdi) - movdqa %xmm0,112(%rdi) - leaq 128(%rdi),%rdi - subq $64,%r9 - jnz .Lsqrx8x_zero - - movq 0(%rsi),%rdx - - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r12,%r12 - xorq %r13,%r13 - xorq %r14,%r14 - xorq %r15,%r15 - leaq 48+8(%rsp),%rdi - xorq %rbp,%rbp - jmp .Lsqrx8x_outer_loop - -.align 32 -.Lsqrx8x_outer_loop: - mulxq 8(%rsi),%r8,%rax - adcxq %r9,%r8 - adoxq %rax,%r10 - mulxq 16(%rsi),%r9,%rax - adcxq %r10,%r9 - adoxq %rax,%r11 -.byte 0xc4,0xe2,0xab,0xf6,0x86,0x18,0x00,0x00,0x00 - adcxq %r11,%r10 - adoxq %rax,%r12 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x20,0x00,0x00,0x00 - adcxq %r12,%r11 - adoxq %rax,%r13 - mulxq 40(%rsi),%r12,%rax - adcxq %r13,%r12 - adoxq %rax,%r14 - mulxq 48(%rsi),%r13,%rax - adcxq %r14,%r13 - adoxq %r15,%rax - mulxq 56(%rsi),%r14,%r15 - movq 8(%rsi),%rdx - adcxq %rax,%r14 - adoxq %rbp,%r15 - adcq 64(%rdi),%r15 - movq %r8,8(%rdi) - movq %r9,16(%rdi) - sbbq %rcx,%rcx - xorq %rbp,%rbp - - - mulxq 16(%rsi),%r8,%rbx - mulxq 24(%rsi),%r9,%rax - adcxq %r10,%r8 - adoxq %rbx,%r9 - mulxq 32(%rsi),%r10,%rbx - adcxq %r11,%r9 - adoxq %rax,%r10 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x28,0x00,0x00,0x00 - adcxq %r12,%r10 - adoxq %rbx,%r11 -.byte 0xc4,0xe2,0x9b,0xf6,0x9e,0x30,0x00,0x00,0x00 - adcxq %r13,%r11 - adoxq %r14,%r12 -.byte 0xc4,0x62,0x93,0xf6,0xb6,0x38,0x00,0x00,0x00 - movq 16(%rsi),%rdx - adcxq %rax,%r12 - adoxq %rbx,%r13 - adcxq %r15,%r13 - adoxq %rbp,%r14 - adcxq %rbp,%r14 - - movq %r8,24(%rdi) - movq %r9,32(%rdi) - - mulxq 24(%rsi),%r8,%rbx - mulxq 32(%rsi),%r9,%rax - adcxq %r10,%r8 - adoxq %rbx,%r9 - mulxq 40(%rsi),%r10,%rbx - adcxq %r11,%r9 - adoxq %rax,%r10 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x30,0x00,0x00,0x00 - adcxq %r12,%r10 - adoxq %r13,%r11 -.byte 0xc4,0x62,0x9b,0xf6,0xae,0x38,0x00,0x00,0x00 -.byte 0x3e - movq 24(%rsi),%rdx - adcxq %rbx,%r11 - adoxq %rax,%r12 - adcxq %r14,%r12 - movq %r8,40(%rdi) - movq %r9,48(%rdi) - mulxq 32(%rsi),%r8,%rax - adoxq %rbp,%r13 - adcxq %rbp,%r13 - - mulxq 40(%rsi),%r9,%rbx - adcxq %r10,%r8 - adoxq %rax,%r9 - mulxq 48(%rsi),%r10,%rax - adcxq %r11,%r9 - adoxq %r12,%r10 - mulxq 56(%rsi),%r11,%r12 - movq 32(%rsi),%rdx - movq 40(%rsi),%r14 - adcxq %rbx,%r10 - adoxq %rax,%r11 - movq 48(%rsi),%r15 - adcxq %r13,%r11 - adoxq %rbp,%r12 - adcxq %rbp,%r12 - - movq %r8,56(%rdi) - movq %r9,64(%rdi) - - mulxq %r14,%r9,%rax - movq 56(%rsi),%r8 - adcxq %r10,%r9 - mulxq %r15,%r10,%rbx - adoxq %rax,%r10 - adcxq %r11,%r10 - mulxq %r8,%r11,%rax - movq %r14,%rdx - adoxq %rbx,%r11 - adcxq %r12,%r11 - - adcxq %rbp,%rax - - mulxq %r15,%r14,%rbx - mulxq %r8,%r12,%r13 - movq %r15,%rdx - leaq 64(%rsi),%rsi - adcxq %r14,%r11 - adoxq %rbx,%r12 - adcxq %rax,%r12 - adoxq %rbp,%r13 - -.byte 0x67,0x67 - mulxq %r8,%r8,%r14 - adcxq %r8,%r13 - adcxq %rbp,%r14 - - cmpq 8+8(%rsp),%rsi - je .Lsqrx8x_outer_break - - negq %rcx - movq $-8,%rcx - movq %rbp,%r15 - movq 64(%rdi),%r8 - adcxq 72(%rdi),%r9 - adcxq 80(%rdi),%r10 - adcxq 88(%rdi),%r11 - adcq 96(%rdi),%r12 - adcq 104(%rdi),%r13 - adcq 112(%rdi),%r14 - adcq 120(%rdi),%r15 - leaq (%rsi),%rbp - leaq 128(%rdi),%rdi - sbbq %rax,%rax - - movq -64(%rsi),%rdx - movq %rax,16+8(%rsp) - movq %rdi,24+8(%rsp) - - - xorl %eax,%eax - jmp .Lsqrx8x_loop - -.align 32 -.Lsqrx8x_loop: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xfb,0xf6,0xa5,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - movq %rbx,(%rdi,%rcx,8) - movl $0,%ebx - adcxq %rax,%r13 - adoxq %r15,%r14 - -.byte 0xc4,0x62,0xfb,0xf6,0xbd,0x38,0x00,0x00,0x00 - movq 8(%rsi,%rcx,8),%rdx - adcxq %rax,%r14 - adoxq %rbx,%r15 - adcxq %rbx,%r15 - -.byte 0x67 - incq %rcx - jnz .Lsqrx8x_loop - - leaq 64(%rbp),%rbp - movq $-8,%rcx - cmpq 8+8(%rsp),%rbp - je .Lsqrx8x_break - - subq 16+8(%rsp),%rbx -.byte 0x66 - movq -64(%rsi),%rdx - adcxq 0(%rdi),%r8 - adcxq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi -.byte 0x67 - sbbq %rax,%rax - xorl %ebx,%ebx - movq %rax,16+8(%rsp) - jmp .Lsqrx8x_loop - -.align 32 -.Lsqrx8x_break: - xorq %rbp,%rbp - subq 16+8(%rsp),%rbx - adcxq %rbp,%r8 - movq 24+8(%rsp),%rcx - adcxq %rbp,%r9 - movq 0(%rsi),%rdx - adcq $0,%r10 - movq %r8,0(%rdi) - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - cmpq %rcx,%rdi - je .Lsqrx8x_outer_loop - - movq %r9,8(%rdi) - movq 8(%rcx),%r9 - movq %r10,16(%rdi) - movq 16(%rcx),%r10 - movq %r11,24(%rdi) - movq 24(%rcx),%r11 - movq %r12,32(%rdi) - movq 32(%rcx),%r12 - movq %r13,40(%rdi) - movq 40(%rcx),%r13 - movq %r14,48(%rdi) - movq 48(%rcx),%r14 - movq %r15,56(%rdi) - movq 56(%rcx),%r15 - movq %rcx,%rdi - jmp .Lsqrx8x_outer_loop - -.align 32 -.Lsqrx8x_outer_break: - movq %r9,72(%rdi) -.byte 102,72,15,126,217 - movq %r10,80(%rdi) - movq %r11,88(%rdi) - movq %r12,96(%rdi) - movq %r13,104(%rdi) - movq %r14,112(%rdi) - leaq 48+8(%rsp),%rdi - movq (%rsi,%rcx,1),%rdx - - movq 8(%rdi),%r11 - xorq %r10,%r10 - movq 0+8(%rsp),%r9 - adoxq %r11,%r11 - movq 16(%rdi),%r12 - movq 24(%rdi),%r13 - - -.align 32 -.Lsqrx4x_shift_n_add: - mulxq %rdx,%rax,%rbx - adoxq %r12,%r12 - adcxq %r10,%rax -.byte 0x48,0x8b,0x94,0x0e,0x08,0x00,0x00,0x00 -.byte 0x4c,0x8b,0x97,0x20,0x00,0x00,0x00 - adoxq %r13,%r13 - adcxq %r11,%rbx - movq 40(%rdi),%r11 - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r10,%r10 - adcxq %r12,%rax - movq 16(%rsi,%rcx,1),%rdx - movq 48(%rdi),%r12 - adoxq %r11,%r11 - adcxq %r13,%rbx - movq 56(%rdi),%r13 - movq %rax,16(%rdi) - movq %rbx,24(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r12,%r12 - adcxq %r10,%rax - movq 24(%rsi,%rcx,1),%rdx - leaq 32(%rcx),%rcx - movq 64(%rdi),%r10 - adoxq %r13,%r13 - adcxq %r11,%rbx - movq 72(%rdi),%r11 - movq %rax,32(%rdi) - movq %rbx,40(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r10,%r10 - adcxq %r12,%rax - jrcxz .Lsqrx4x_shift_n_add_break -.byte 0x48,0x8b,0x94,0x0e,0x00,0x00,0x00,0x00 - adoxq %r11,%r11 - adcxq %r13,%rbx - movq 80(%rdi),%r12 - movq 88(%rdi),%r13 - movq %rax,48(%rdi) - movq %rbx,56(%rdi) - leaq 64(%rdi),%rdi - nop - jmp .Lsqrx4x_shift_n_add - -.align 32 -.Lsqrx4x_shift_n_add_break: - adcxq %r13,%rbx - movq %rax,48(%rdi) - movq %rbx,56(%rdi) - leaq 64(%rdi),%rdi -.byte 102,72,15,126,213 -__bn_sqrx8x_reduction: - xorl %eax,%eax - movq 32+8(%rsp),%rbx - movq 48+8(%rsp),%rdx - leaq -64(%rbp,%r9,1),%rcx - - movq %rcx,0+8(%rsp) - movq %rdi,8+8(%rsp) - - leaq 48+8(%rsp),%rdi - jmp .Lsqrx8x_reduction_loop - -.align 32 -.Lsqrx8x_reduction_loop: - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq %rdx,%r8 - imulq %rbx,%rdx - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,24+8(%rsp) - - leaq 64(%rdi),%rdi - xorq %rsi,%rsi - movq $-8,%rcx - jmp .Lsqrx8x_reduce - -.align 32 -.Lsqrx8x_reduce: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rbx,%rax - adoxq %r9,%r8 - - mulxq 8(%rbp),%rbx,%r9 - adcxq %rbx,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rbx,%r10 - adcxq %rbx,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rbx,%r11 - adcxq %rbx,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xe3,0xf6,0xa5,0x20,0x00,0x00,0x00 - movq %rdx,%rax - movq %r8,%rdx - adcxq %rbx,%r11 - adoxq %r13,%r12 - - mulxq 32+8(%rsp),%rbx,%rdx - movq %rax,%rdx - movq %rax,64+48+8(%rsp,%rcx,8) - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq %rbx,%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - adcxq %rsi,%r15 - -.byte 0x67,0x67,0x67 - incq %rcx - jnz .Lsqrx8x_reduce - - movq %rsi,%rax - cmpq 0+8(%rsp),%rbp - jae .Lsqrx8x_no_tail - - movq 48+8(%rsp),%rdx - addq 0(%rdi),%r8 - leaq 64(%rbp),%rbp - movq $-8,%rcx - adcxq 8(%rdi),%r9 - adcxq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi - sbbq %rax,%rax - - xorq %rsi,%rsi - movq %rax,16+8(%rsp) - jmp .Lsqrx8x_tail - -.align 32 -.Lsqrx8x_tail: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xfb,0xf6,0xa5,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq 72+48+8(%rsp,%rcx,8),%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - movq %rbx,(%rdi,%rcx,8) - movq %r8,%rbx - adcxq %rsi,%r15 - - incq %rcx - jnz .Lsqrx8x_tail - - cmpq 0+8(%rsp),%rbp - jae .Lsqrx8x_tail_done - - subq 16+8(%rsp),%rsi - movq 48+8(%rsp),%rdx - leaq 64(%rbp),%rbp - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi - sbbq %rax,%rax - subq $8,%rcx - - xorq %rsi,%rsi - movq %rax,16+8(%rsp) - jmp .Lsqrx8x_tail - -.align 32 -.Lsqrx8x_tail_done: - xorq %rax,%rax - addq 24+8(%rsp),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - subq 16+8(%rsp),%rsi -.Lsqrx8x_no_tail: - adcq 0(%rdi),%r8 -.byte 102,72,15,126,217 - adcq 8(%rdi),%r9 - movq 56(%rbp),%rsi -.byte 102,72,15,126,213 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - - movq 32+8(%rsp),%rbx - movq 64(%rdi,%rcx,1),%rdx - - movq %r8,0(%rdi) - leaq 64(%rdi),%r8 - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 64(%rdi,%rcx,1),%rdi - cmpq 8+8(%rsp),%r8 - jb .Lsqrx8x_reduction_loop - .byte 0xf3,0xc3 -.size bn_sqrx8x_internal,.-bn_sqrx8x_internal -.align 32 -__bn_postx4x_internal: - movq 0(%rbp),%r12 - movq %rcx,%r10 - movq %rcx,%r9 - negq %rax - sarq $3+2,%rcx - -.byte 102,72,15,126,202 -.byte 102,72,15,126,206 - decq %r12 - movq 8(%rbp),%r13 - xorq %r8,%r8 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqrx4x_sub_entry - -.align 16 -.Lsqrx4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -.Lsqrx4x_sub_entry: - andnq %rax,%r12,%r12 - leaq 32(%rbp),%rbp - andnq %rax,%r13,%r13 - andnq %rax,%r14,%r14 - andnq %rax,%r15,%r15 - - negq %r8 - adcq 0(%rdi),%r12 - adcq 8(%rdi),%r13 - adcq 16(%rdi),%r14 - adcq 24(%rdi),%r15 - movq %r12,0(%rdx) - leaq 32(%rdi),%rdi - movq %r13,8(%rdx) - sbbq %r8,%r8 - movq %r14,16(%rdx) - movq %r15,24(%rdx) - leaq 32(%rdx),%rdx - - incq %rcx - jnz .Lsqrx4x_sub - - negq %r9 - - .byte 0xf3,0xc3 -.size __bn_postx4x_internal,.-__bn_postx4x_internal -.globl bn_get_bits5 -.type bn_get_bits5,@function -.align 16 -bn_get_bits5: - leaq 0(%rdi),%r10 - leaq 1(%rdi),%r11 - movl %esi,%ecx - shrl $4,%esi - andl $15,%ecx - leal -8(%rcx),%eax - cmpl $11,%ecx - cmovaq %r11,%r10 - cmoval %eax,%ecx - movzwl (%r10,%rsi,2),%eax - shrl %cl,%eax - andl $31,%eax - .byte 0xf3,0xc3 -.size bn_get_bits5,.-bn_get_bits5 - -.globl bn_scatter5 -.type bn_scatter5,@function -.align 16 -bn_scatter5: - cmpl $0,%esi - jz .Lscatter_epilogue - leaq (%rdx,%rcx,8),%rdx -.Lscatter: - movq (%rdi),%rax - leaq 8(%rdi),%rdi - movq %rax,(%rdx) - leaq 256(%rdx),%rdx - subl $1,%esi - jnz .Lscatter -.Lscatter_epilogue: - .byte 0xf3,0xc3 -.size bn_scatter5,.-bn_scatter5 - -.globl bn_gather5 -.type bn_gather5,@function -.align 32 -bn_gather5: -.LSEH_begin_bn_gather5: - -.byte 0x4c,0x8d,0x14,0x24 -.byte 0x48,0x81,0xec,0x08,0x01,0x00,0x00 - leaq .Linc(%rip),%rax - andq $-16,%rsp - - movd %ecx,%xmm5 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 128(%rdx),%r11 - leaq 128(%rsp),%rax - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-128(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-112(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-96(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-80(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-48(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-16(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,0(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,16(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,48(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,80(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,96(%rax) - movdqa %xmm4,%xmm2 - movdqa %xmm3,112(%rax) - jmp .Lgather - -.align 32 -.Lgather: - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r11),%xmm0 - movdqa -112(%r11),%xmm1 - movdqa -96(%r11),%xmm2 - pand -128(%rax),%xmm0 - movdqa -80(%r11),%xmm3 - pand -112(%rax),%xmm1 - por %xmm0,%xmm4 - pand -96(%rax),%xmm2 - por %xmm1,%xmm5 - pand -80(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r11),%xmm0 - movdqa -48(%r11),%xmm1 - movdqa -32(%r11),%xmm2 - pand -64(%rax),%xmm0 - movdqa -16(%r11),%xmm3 - pand -48(%rax),%xmm1 - por %xmm0,%xmm4 - pand -32(%rax),%xmm2 - por %xmm1,%xmm5 - pand -16(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - pand 0(%rax),%xmm0 - movdqa 48(%r11),%xmm3 - pand 16(%rax),%xmm1 - por %xmm0,%xmm4 - pand 32(%rax),%xmm2 - por %xmm1,%xmm5 - pand 48(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r11),%xmm0 - movdqa 80(%r11),%xmm1 - movdqa 96(%r11),%xmm2 - pand 64(%rax),%xmm0 - movdqa 112(%r11),%xmm3 - pand 80(%rax),%xmm1 - por %xmm0,%xmm4 - pand 96(%rax),%xmm2 - por %xmm1,%xmm5 - pand 112(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - leaq 256(%r11),%r11 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - movq %xmm0,(%rdi) - leaq 8(%rdi),%rdi - subl $1,%esi - jnz .Lgather - - leaq (%r10),%rsp - .byte 0xf3,0xc3 -.LSEH_end_bn_gather5: -.size bn_gather5,.-bn_gather5 -.align 64 -.Linc: -.long 0,0, 1,1 -.long 2,2, 2,2 -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-elf-gas/camellia/cmll-x86_64.s b/deps/openssl/asm/x64-elf-gas/camellia/cmll-x86_64.s deleted file mode 100644 index 1117381f316d9e..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/camellia/cmll-x86_64.s +++ /dev/null @@ -1,1838 +0,0 @@ -.text - - -.globl Camellia_EncryptBlock -.type Camellia_EncryptBlock,@function -.align 16 -Camellia_EncryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp .Lenc_rounds -.size Camellia_EncryptBlock,.-Camellia_EncryptBlock - -.globl Camellia_EncryptBlock_Rounds -.type Camellia_EncryptBlock_Rounds,@function -.align 16 -.Lenc_rounds: -Camellia_EncryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Lenc_prologue: - - - movq %rcx,%r13 - movq %rdx,%r14 - - shll $6,%edi - leaq .LCamellia_SBOX(%rip),%rbp - leaq (%r14,%rdi,1),%r15 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Lenc_epilogue: - .byte 0xf3,0xc3 -.size Camellia_EncryptBlock_Rounds,.-Camellia_EncryptBlock_Rounds - -.type _x86_64_Camellia_encrypt,@function -.align 16 -_x86_64_Camellia_encrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.align 16 -.Leloop: - movl 16(%r14),%ebx - movl 20(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 56(%r14),%ebx - movl 60(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 64(%r14),%ebx - movl 68(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq 64(%r14),%r14 - cmpq %r15,%r14 - movl 8(%r14),%edx - movl 12(%r14),%ecx - je .Ledone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - jmp .Leloop - -.align 16 -.Ledone: - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r8d,%ecx - xorl %r9d,%edx - - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r10d - movl %edx,%r11d - -.byte 0xf3,0xc3 -.size _x86_64_Camellia_encrypt,.-_x86_64_Camellia_encrypt - - -.globl Camellia_DecryptBlock -.type Camellia_DecryptBlock,@function -.align 16 -Camellia_DecryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp .Ldec_rounds -.size Camellia_DecryptBlock,.-Camellia_DecryptBlock - -.globl Camellia_DecryptBlock_Rounds -.type Camellia_DecryptBlock_Rounds,@function -.align 16 -.Ldec_rounds: -Camellia_DecryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Ldec_prologue: - - - movq %rcx,%r13 - movq %rdx,%r15 - - shll $6,%edi - leaq .LCamellia_SBOX(%rip),%rbp - leaq (%r15,%rdi,1),%r14 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_decrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Ldec_epilogue: - .byte 0xf3,0xc3 -.size Camellia_DecryptBlock_Rounds,.-Camellia_DecryptBlock_Rounds - -.type _x86_64_Camellia_decrypt,@function -.align 16 -_x86_64_Camellia_decrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.align 16 -.Ldloop: - movl -8(%r14),%ebx - movl -4(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -16(%r14),%ebx - movl -12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -24(%r14),%ebx - movl -20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -32(%r14),%ebx - movl -28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -40(%r14),%ebx - movl -36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -48(%r14),%ebx - movl -44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -56(%r14),%ebx - movl -52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq -64(%r14),%r14 - cmpq %r15,%r14 - movl 0(%r14),%edx - movl 4(%r14),%ecx - je .Lddone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - - jmp .Ldloop - -.align 16 -.Lddone: - xorl %r10d,%ecx - xorl %r11d,%edx - xorl %r8d,%eax - xorl %r9d,%ebx - - movl %ecx,%r8d - movl %edx,%r9d - movl %eax,%r10d - movl %ebx,%r11d - -.byte 0xf3,0xc3 -.size _x86_64_Camellia_decrypt,.-_x86_64_Camellia_decrypt -.globl Camellia_Ekeygen -.type Camellia_Ekeygen,@function -.align 16 -Camellia_Ekeygen: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Lkey_prologue: - - movl %edi,%r15d - movq %rdx,%r13 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - movl 12(%rsi),%r11d - - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,0(%r13) - movl %r8d,4(%r13) - movl %r11d,8(%r13) - movl %r10d,12(%r13) - cmpq $128,%r15 - je .L1st128 - - movl 16(%rsi),%r8d - movl 20(%rsi),%r9d - cmpq $192,%r15 - je .L1st192 - movl 24(%rsi),%r10d - movl 28(%rsi),%r11d - jmp .L1st256 -.L1st192: - movl %r8d,%r10d - movl %r9d,%r11d - notl %r10d - notl %r11d -.L1st256: - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,32(%r13) - movl %r8d,36(%r13) - movl %r11d,40(%r13) - movl %r10d,44(%r13) - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - -.L1st128: - leaq .LCamellia_SIGMA(%rip),%r14 - leaq .LCamellia_SBOX(%rip),%rbp - - movl 0(%r14),%ebx - movl 4(%r14),%eax - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 8(%r14),%ebx - movl 12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 16(%r14),%ebx - movl 20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - cmpq $128,%r15 - jne .L2nd256 - - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq -128(%r13),%rax - movq -120(%r13),%rbx - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,-96(%r13) - movq %rbx,-88(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-80(%r13) - movq %r10,-72(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-64(%r13) - movq %r10,-56(%r13) - movq %rax,%r11 - shlq $30,%rax - movq %rbx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rax - shlq $30,%rbx - orq %r11,%rbx - movq %rax,-48(%r13) - movq %rbx,-40(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-32(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rbx,-24(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-16(%r13) - movq %r10,-8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,16(%r13) - movq %rbx,24(%r13) - movq %r8,%r11 - shlq $34,%r8 - movq %r10,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%r8 - shlq $34,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r8,%r11 - shlq $17,%r8 - movq %r10,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r8 - shlq $17,%r10 - orq %r11,%r10 - movq %r8,64(%r13) - movq %r10,72(%r13) - movl $3,%eax - jmp .Ldone -.align 16 -.L2nd256: - movl %r9d,48(%r13) - movl %r8d,52(%r13) - movl %r11d,56(%r13) - movl %r10d,60(%r13) - xorl 32(%r13),%r9d - xorl 36(%r13),%r8d - xorl 40(%r13),%r11d - xorl 44(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - movq 0(%r13),%rax - movq 8(%r13),%rbx - movq 32(%r13),%rcx - movq 40(%r13),%rdx - movq 48(%r13),%r14 - movq 56(%r13),%r15 - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-96(%r13) - movq %rdx,-88(%r13) - movq %r14,%r11 - shlq $15,%r14 - movq %r15,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r14 - shlq $15,%r15 - orq %r11,%r15 - movq %r14,-80(%r13) - movq %r15,-72(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-64(%r13) - movq %rdx,-56(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,-48(%r13) - movq %r10,-40(%r13) - movq %rax,%r11 - shlq $45,%rax - movq %rbx,%r9 - shrq $19,%r9 - shrq $19,%r11 - orq %r9,%rax - shlq $45,%rbx - orq %r11,%rbx - movq %rax,-32(%r13) - movq %rbx,-24(%r13) - movq %r14,%r11 - shlq $30,%r14 - movq %r15,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r14 - shlq $30,%r15 - orq %r11,%r15 - movq %r14,-16(%r13) - movq %r15,-8(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rcx,%r11 - shlq $30,%rcx - movq %rdx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rcx - shlq $30,%rdx - orq %r11,%rdx - movq %rcx,16(%r13) - movq %rdx,24(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r14,%r11 - shlq $32,%r14 - movq %r15,%r9 - shrq $32,%r9 - shrq $32,%r11 - orq %r9,%r14 - shlq $32,%r15 - orq %r11,%r15 - movq %r14,64(%r13) - movq %r15,72(%r13) - movq %rcx,%r11 - shlq $34,%rcx - movq %rdx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rcx - shlq $34,%rdx - orq %r11,%rdx - movq %rcx,80(%r13) - movq %rdx,88(%r13) - movq %r14,%r11 - shlq $17,%r14 - movq %r15,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r14 - shlq $17,%r15 - orq %r11,%r15 - movq %r14,96(%r13) - movq %r15,104(%r13) - movq %rax,%r11 - shlq $34,%rax - movq %rbx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rax - shlq $34,%rbx - orq %r11,%rbx - movq %rax,112(%r13) - movq %rbx,120(%r13) - movq %r8,%r11 - shlq $51,%r8 - movq %r10,%r9 - shrq $13,%r9 - shrq $13,%r11 - orq %r9,%r8 - shlq $51,%r10 - orq %r11,%r10 - movq %r8,128(%r13) - movq %r10,136(%r13) - movl $4,%eax -.Ldone: - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Lkey_epilogue: - .byte 0xf3,0xc3 -.size Camellia_Ekeygen,.-Camellia_Ekeygen -.align 64 -.LCamellia_SIGMA: -.long 0x3bcc908b, 0xa09e667f, 0x4caa73b2, 0xb67ae858 -.long 0xe94f82be, 0xc6ef372f, 0xf1d36f1c, 0x54ff53a5 -.long 0xde682d1d, 0x10e527fa, 0xb3e6c1fd, 0xb05688c2 -.long 0, 0, 0, 0 -.LCamellia_SBOX: -.long 0x70707000,0x70700070 -.long 0x82828200,0x2c2c002c -.long 0x2c2c2c00,0xb3b300b3 -.long 0xececec00,0xc0c000c0 -.long 0xb3b3b300,0xe4e400e4 -.long 0x27272700,0x57570057 -.long 0xc0c0c000,0xeaea00ea -.long 0xe5e5e500,0xaeae00ae -.long 0xe4e4e400,0x23230023 -.long 0x85858500,0x6b6b006b -.long 0x57575700,0x45450045 -.long 0x35353500,0xa5a500a5 -.long 0xeaeaea00,0xeded00ed -.long 0x0c0c0c00,0x4f4f004f -.long 0xaeaeae00,0x1d1d001d -.long 0x41414100,0x92920092 -.long 0x23232300,0x86860086 -.long 0xefefef00,0xafaf00af -.long 0x6b6b6b00,0x7c7c007c -.long 0x93939300,0x1f1f001f -.long 0x45454500,0x3e3e003e -.long 0x19191900,0xdcdc00dc -.long 0xa5a5a500,0x5e5e005e -.long 0x21212100,0x0b0b000b -.long 0xededed00,0xa6a600a6 -.long 0x0e0e0e00,0x39390039 -.long 0x4f4f4f00,0xd5d500d5 -.long 0x4e4e4e00,0x5d5d005d -.long 0x1d1d1d00,0xd9d900d9 -.long 0x65656500,0x5a5a005a -.long 0x92929200,0x51510051 -.long 0xbdbdbd00,0x6c6c006c -.long 0x86868600,0x8b8b008b -.long 0xb8b8b800,0x9a9a009a -.long 0xafafaf00,0xfbfb00fb -.long 0x8f8f8f00,0xb0b000b0 -.long 0x7c7c7c00,0x74740074 -.long 0xebebeb00,0x2b2b002b -.long 0x1f1f1f00,0xf0f000f0 -.long 0xcecece00,0x84840084 -.long 0x3e3e3e00,0xdfdf00df -.long 0x30303000,0xcbcb00cb -.long 0xdcdcdc00,0x34340034 -.long 0x5f5f5f00,0x76760076 -.long 0x5e5e5e00,0x6d6d006d -.long 0xc5c5c500,0xa9a900a9 -.long 0x0b0b0b00,0xd1d100d1 -.long 0x1a1a1a00,0x04040004 -.long 0xa6a6a600,0x14140014 -.long 0xe1e1e100,0x3a3a003a -.long 0x39393900,0xdede00de -.long 0xcacaca00,0x11110011 -.long 0xd5d5d500,0x32320032 -.long 0x47474700,0x9c9c009c -.long 0x5d5d5d00,0x53530053 -.long 0x3d3d3d00,0xf2f200f2 -.long 0xd9d9d900,0xfefe00fe -.long 0x01010100,0xcfcf00cf -.long 0x5a5a5a00,0xc3c300c3 -.long 0xd6d6d600,0x7a7a007a -.long 0x51515100,0x24240024 -.long 0x56565600,0xe8e800e8 -.long 0x6c6c6c00,0x60600060 -.long 0x4d4d4d00,0x69690069 -.long 0x8b8b8b00,0xaaaa00aa -.long 0x0d0d0d00,0xa0a000a0 -.long 0x9a9a9a00,0xa1a100a1 -.long 0x66666600,0x62620062 -.long 0xfbfbfb00,0x54540054 -.long 0xcccccc00,0x1e1e001e -.long 0xb0b0b000,0xe0e000e0 -.long 0x2d2d2d00,0x64640064 -.long 0x74747400,0x10100010 -.long 0x12121200,0x00000000 -.long 0x2b2b2b00,0xa3a300a3 -.long 0x20202000,0x75750075 -.long 0xf0f0f000,0x8a8a008a -.long 0xb1b1b100,0xe6e600e6 -.long 0x84848400,0x09090009 -.long 0x99999900,0xdddd00dd -.long 0xdfdfdf00,0x87870087 -.long 0x4c4c4c00,0x83830083 -.long 0xcbcbcb00,0xcdcd00cd -.long 0xc2c2c200,0x90900090 -.long 0x34343400,0x73730073 -.long 0x7e7e7e00,0xf6f600f6 -.long 0x76767600,0x9d9d009d -.long 0x05050500,0xbfbf00bf -.long 0x6d6d6d00,0x52520052 -.long 0xb7b7b700,0xd8d800d8 -.long 0xa9a9a900,0xc8c800c8 -.long 0x31313100,0xc6c600c6 -.long 0xd1d1d100,0x81810081 -.long 0x17171700,0x6f6f006f -.long 0x04040400,0x13130013 -.long 0xd7d7d700,0x63630063 -.long 0x14141400,0xe9e900e9 -.long 0x58585800,0xa7a700a7 -.long 0x3a3a3a00,0x9f9f009f -.long 0x61616100,0xbcbc00bc -.long 0xdedede00,0x29290029 -.long 0x1b1b1b00,0xf9f900f9 -.long 0x11111100,0x2f2f002f -.long 0x1c1c1c00,0xb4b400b4 -.long 0x32323200,0x78780078 -.long 0x0f0f0f00,0x06060006 -.long 0x9c9c9c00,0xe7e700e7 -.long 0x16161600,0x71710071 -.long 0x53535300,0xd4d400d4 -.long 0x18181800,0xabab00ab -.long 0xf2f2f200,0x88880088 -.long 0x22222200,0x8d8d008d -.long 0xfefefe00,0x72720072 -.long 0x44444400,0xb9b900b9 -.long 0xcfcfcf00,0xf8f800f8 -.long 0xb2b2b200,0xacac00ac -.long 0xc3c3c300,0x36360036 -.long 0xb5b5b500,0x2a2a002a -.long 0x7a7a7a00,0x3c3c003c -.long 0x91919100,0xf1f100f1 -.long 0x24242400,0x40400040 -.long 0x08080800,0xd3d300d3 -.long 0xe8e8e800,0xbbbb00bb -.long 0xa8a8a800,0x43430043 -.long 0x60606000,0x15150015 -.long 0xfcfcfc00,0xadad00ad -.long 0x69696900,0x77770077 -.long 0x50505000,0x80800080 -.long 0xaaaaaa00,0x82820082 -.long 0xd0d0d000,0xecec00ec -.long 0xa0a0a000,0x27270027 -.long 0x7d7d7d00,0xe5e500e5 -.long 0xa1a1a100,0x85850085 -.long 0x89898900,0x35350035 -.long 0x62626200,0x0c0c000c -.long 0x97979700,0x41410041 -.long 0x54545400,0xefef00ef -.long 0x5b5b5b00,0x93930093 -.long 0x1e1e1e00,0x19190019 -.long 0x95959500,0x21210021 -.long 0xe0e0e000,0x0e0e000e -.long 0xffffff00,0x4e4e004e -.long 0x64646400,0x65650065 -.long 0xd2d2d200,0xbdbd00bd -.long 0x10101000,0xb8b800b8 -.long 0xc4c4c400,0x8f8f008f -.long 0x00000000,0xebeb00eb -.long 0x48484800,0xcece00ce -.long 0xa3a3a300,0x30300030 -.long 0xf7f7f700,0x5f5f005f -.long 0x75757500,0xc5c500c5 -.long 0xdbdbdb00,0x1a1a001a -.long 0x8a8a8a00,0xe1e100e1 -.long 0x03030300,0xcaca00ca -.long 0xe6e6e600,0x47470047 -.long 0xdadada00,0x3d3d003d -.long 0x09090900,0x01010001 -.long 0x3f3f3f00,0xd6d600d6 -.long 0xdddddd00,0x56560056 -.long 0x94949400,0x4d4d004d -.long 0x87878700,0x0d0d000d -.long 0x5c5c5c00,0x66660066 -.long 0x83838300,0xcccc00cc -.long 0x02020200,0x2d2d002d -.long 0xcdcdcd00,0x12120012 -.long 0x4a4a4a00,0x20200020 -.long 0x90909000,0xb1b100b1 -.long 0x33333300,0x99990099 -.long 0x73737300,0x4c4c004c -.long 0x67676700,0xc2c200c2 -.long 0xf6f6f600,0x7e7e007e -.long 0xf3f3f300,0x05050005 -.long 0x9d9d9d00,0xb7b700b7 -.long 0x7f7f7f00,0x31310031 -.long 0xbfbfbf00,0x17170017 -.long 0xe2e2e200,0xd7d700d7 -.long 0x52525200,0x58580058 -.long 0x9b9b9b00,0x61610061 -.long 0xd8d8d800,0x1b1b001b -.long 0x26262600,0x1c1c001c -.long 0xc8c8c800,0x0f0f000f -.long 0x37373700,0x16160016 -.long 0xc6c6c600,0x18180018 -.long 0x3b3b3b00,0x22220022 -.long 0x81818100,0x44440044 -.long 0x96969600,0xb2b200b2 -.long 0x6f6f6f00,0xb5b500b5 -.long 0x4b4b4b00,0x91910091 -.long 0x13131300,0x08080008 -.long 0xbebebe00,0xa8a800a8 -.long 0x63636300,0xfcfc00fc -.long 0x2e2e2e00,0x50500050 -.long 0xe9e9e900,0xd0d000d0 -.long 0x79797900,0x7d7d007d -.long 0xa7a7a700,0x89890089 -.long 0x8c8c8c00,0x97970097 -.long 0x9f9f9f00,0x5b5b005b -.long 0x6e6e6e00,0x95950095 -.long 0xbcbcbc00,0xffff00ff -.long 0x8e8e8e00,0xd2d200d2 -.long 0x29292900,0xc4c400c4 -.long 0xf5f5f500,0x48480048 -.long 0xf9f9f900,0xf7f700f7 -.long 0xb6b6b600,0xdbdb00db -.long 0x2f2f2f00,0x03030003 -.long 0xfdfdfd00,0xdada00da -.long 0xb4b4b400,0x3f3f003f -.long 0x59595900,0x94940094 -.long 0x78787800,0x5c5c005c -.long 0x98989800,0x02020002 -.long 0x06060600,0x4a4a004a -.long 0x6a6a6a00,0x33330033 -.long 0xe7e7e700,0x67670067 -.long 0x46464600,0xf3f300f3 -.long 0x71717100,0x7f7f007f -.long 0xbababa00,0xe2e200e2 -.long 0xd4d4d400,0x9b9b009b -.long 0x25252500,0x26260026 -.long 0xababab00,0x37370037 -.long 0x42424200,0x3b3b003b -.long 0x88888800,0x96960096 -.long 0xa2a2a200,0x4b4b004b -.long 0x8d8d8d00,0xbebe00be -.long 0xfafafa00,0x2e2e002e -.long 0x72727200,0x79790079 -.long 0x07070700,0x8c8c008c -.long 0xb9b9b900,0x6e6e006e -.long 0x55555500,0x8e8e008e -.long 0xf8f8f800,0xf5f500f5 -.long 0xeeeeee00,0xb6b600b6 -.long 0xacacac00,0xfdfd00fd -.long 0x0a0a0a00,0x59590059 -.long 0x36363600,0x98980098 -.long 0x49494900,0x6a6a006a -.long 0x2a2a2a00,0x46460046 -.long 0x68686800,0xbaba00ba -.long 0x3c3c3c00,0x25250025 -.long 0x38383800,0x42420042 -.long 0xf1f1f100,0xa2a200a2 -.long 0xa4a4a400,0xfafa00fa -.long 0x40404000,0x07070007 -.long 0x28282800,0x55550055 -.long 0xd3d3d300,0xeeee00ee -.long 0x7b7b7b00,0x0a0a000a -.long 0xbbbbbb00,0x49490049 -.long 0xc9c9c900,0x68680068 -.long 0x43434300,0x38380038 -.long 0xc1c1c100,0xa4a400a4 -.long 0x15151500,0x28280028 -.long 0xe3e3e300,0x7b7b007b -.long 0xadadad00,0xc9c900c9 -.long 0xf4f4f400,0xc1c100c1 -.long 0x77777700,0xe3e300e3 -.long 0xc7c7c700,0xf4f400f4 -.long 0x80808000,0xc7c700c7 -.long 0x9e9e9e00,0x9e9e009e -.long 0x00e0e0e0,0x38003838 -.long 0x00050505,0x41004141 -.long 0x00585858,0x16001616 -.long 0x00d9d9d9,0x76007676 -.long 0x00676767,0xd900d9d9 -.long 0x004e4e4e,0x93009393 -.long 0x00818181,0x60006060 -.long 0x00cbcbcb,0xf200f2f2 -.long 0x00c9c9c9,0x72007272 -.long 0x000b0b0b,0xc200c2c2 -.long 0x00aeaeae,0xab00abab -.long 0x006a6a6a,0x9a009a9a -.long 0x00d5d5d5,0x75007575 -.long 0x00181818,0x06000606 -.long 0x005d5d5d,0x57005757 -.long 0x00828282,0xa000a0a0 -.long 0x00464646,0x91009191 -.long 0x00dfdfdf,0xf700f7f7 -.long 0x00d6d6d6,0xb500b5b5 -.long 0x00272727,0xc900c9c9 -.long 0x008a8a8a,0xa200a2a2 -.long 0x00323232,0x8c008c8c -.long 0x004b4b4b,0xd200d2d2 -.long 0x00424242,0x90009090 -.long 0x00dbdbdb,0xf600f6f6 -.long 0x001c1c1c,0x07000707 -.long 0x009e9e9e,0xa700a7a7 -.long 0x009c9c9c,0x27002727 -.long 0x003a3a3a,0x8e008e8e -.long 0x00cacaca,0xb200b2b2 -.long 0x00252525,0x49004949 -.long 0x007b7b7b,0xde00dede -.long 0x000d0d0d,0x43004343 -.long 0x00717171,0x5c005c5c -.long 0x005f5f5f,0xd700d7d7 -.long 0x001f1f1f,0xc700c7c7 -.long 0x00f8f8f8,0x3e003e3e -.long 0x00d7d7d7,0xf500f5f5 -.long 0x003e3e3e,0x8f008f8f -.long 0x009d9d9d,0x67006767 -.long 0x007c7c7c,0x1f001f1f -.long 0x00606060,0x18001818 -.long 0x00b9b9b9,0x6e006e6e -.long 0x00bebebe,0xaf00afaf -.long 0x00bcbcbc,0x2f002f2f -.long 0x008b8b8b,0xe200e2e2 -.long 0x00161616,0x85008585 -.long 0x00343434,0x0d000d0d -.long 0x004d4d4d,0x53005353 -.long 0x00c3c3c3,0xf000f0f0 -.long 0x00727272,0x9c009c9c -.long 0x00959595,0x65006565 -.long 0x00ababab,0xea00eaea -.long 0x008e8e8e,0xa300a3a3 -.long 0x00bababa,0xae00aeae -.long 0x007a7a7a,0x9e009e9e -.long 0x00b3b3b3,0xec00ecec -.long 0x00020202,0x80008080 -.long 0x00b4b4b4,0x2d002d2d -.long 0x00adadad,0x6b006b6b -.long 0x00a2a2a2,0xa800a8a8 -.long 0x00acacac,0x2b002b2b -.long 0x00d8d8d8,0x36003636 -.long 0x009a9a9a,0xa600a6a6 -.long 0x00171717,0xc500c5c5 -.long 0x001a1a1a,0x86008686 -.long 0x00353535,0x4d004d4d -.long 0x00cccccc,0x33003333 -.long 0x00f7f7f7,0xfd00fdfd -.long 0x00999999,0x66006666 -.long 0x00616161,0x58005858 -.long 0x005a5a5a,0x96009696 -.long 0x00e8e8e8,0x3a003a3a -.long 0x00242424,0x09000909 -.long 0x00565656,0x95009595 -.long 0x00404040,0x10001010 -.long 0x00e1e1e1,0x78007878 -.long 0x00636363,0xd800d8d8 -.long 0x00090909,0x42004242 -.long 0x00333333,0xcc00cccc -.long 0x00bfbfbf,0xef00efef -.long 0x00989898,0x26002626 -.long 0x00979797,0xe500e5e5 -.long 0x00858585,0x61006161 -.long 0x00686868,0x1a001a1a -.long 0x00fcfcfc,0x3f003f3f -.long 0x00ececec,0x3b003b3b -.long 0x000a0a0a,0x82008282 -.long 0x00dadada,0xb600b6b6 -.long 0x006f6f6f,0xdb00dbdb -.long 0x00535353,0xd400d4d4 -.long 0x00626262,0x98009898 -.long 0x00a3a3a3,0xe800e8e8 -.long 0x002e2e2e,0x8b008b8b -.long 0x00080808,0x02000202 -.long 0x00afafaf,0xeb00ebeb -.long 0x00282828,0x0a000a0a -.long 0x00b0b0b0,0x2c002c2c -.long 0x00747474,0x1d001d1d -.long 0x00c2c2c2,0xb000b0b0 -.long 0x00bdbdbd,0x6f006f6f -.long 0x00363636,0x8d008d8d -.long 0x00222222,0x88008888 -.long 0x00383838,0x0e000e0e -.long 0x00646464,0x19001919 -.long 0x001e1e1e,0x87008787 -.long 0x00393939,0x4e004e4e -.long 0x002c2c2c,0x0b000b0b -.long 0x00a6a6a6,0xa900a9a9 -.long 0x00303030,0x0c000c0c -.long 0x00e5e5e5,0x79007979 -.long 0x00444444,0x11001111 -.long 0x00fdfdfd,0x7f007f7f -.long 0x00888888,0x22002222 -.long 0x009f9f9f,0xe700e7e7 -.long 0x00656565,0x59005959 -.long 0x00878787,0xe100e1e1 -.long 0x006b6b6b,0xda00dada -.long 0x00f4f4f4,0x3d003d3d -.long 0x00232323,0xc800c8c8 -.long 0x00484848,0x12001212 -.long 0x00101010,0x04000404 -.long 0x00d1d1d1,0x74007474 -.long 0x00515151,0x54005454 -.long 0x00c0c0c0,0x30003030 -.long 0x00f9f9f9,0x7e007e7e -.long 0x00d2d2d2,0xb400b4b4 -.long 0x00a0a0a0,0x28002828 -.long 0x00555555,0x55005555 -.long 0x00a1a1a1,0x68006868 -.long 0x00414141,0x50005050 -.long 0x00fafafa,0xbe00bebe -.long 0x00434343,0xd000d0d0 -.long 0x00131313,0xc400c4c4 -.long 0x00c4c4c4,0x31003131 -.long 0x002f2f2f,0xcb00cbcb -.long 0x00a8a8a8,0x2a002a2a -.long 0x00b6b6b6,0xad00adad -.long 0x003c3c3c,0x0f000f0f -.long 0x002b2b2b,0xca00caca -.long 0x00c1c1c1,0x70007070 -.long 0x00ffffff,0xff00ffff -.long 0x00c8c8c8,0x32003232 -.long 0x00a5a5a5,0x69006969 -.long 0x00202020,0x08000808 -.long 0x00898989,0x62006262 -.long 0x00000000,0x00000000 -.long 0x00909090,0x24002424 -.long 0x00474747,0xd100d1d1 -.long 0x00efefef,0xfb00fbfb -.long 0x00eaeaea,0xba00baba -.long 0x00b7b7b7,0xed00eded -.long 0x00151515,0x45004545 -.long 0x00060606,0x81008181 -.long 0x00cdcdcd,0x73007373 -.long 0x00b5b5b5,0x6d006d6d -.long 0x00121212,0x84008484 -.long 0x007e7e7e,0x9f009f9f -.long 0x00bbbbbb,0xee00eeee -.long 0x00292929,0x4a004a4a -.long 0x000f0f0f,0xc300c3c3 -.long 0x00b8b8b8,0x2e002e2e -.long 0x00070707,0xc100c1c1 -.long 0x00040404,0x01000101 -.long 0x009b9b9b,0xe600e6e6 -.long 0x00949494,0x25002525 -.long 0x00212121,0x48004848 -.long 0x00666666,0x99009999 -.long 0x00e6e6e6,0xb900b9b9 -.long 0x00cecece,0xb300b3b3 -.long 0x00ededed,0x7b007b7b -.long 0x00e7e7e7,0xf900f9f9 -.long 0x003b3b3b,0xce00cece -.long 0x00fefefe,0xbf00bfbf -.long 0x007f7f7f,0xdf00dfdf -.long 0x00c5c5c5,0x71007171 -.long 0x00a4a4a4,0x29002929 -.long 0x00373737,0xcd00cdcd -.long 0x00b1b1b1,0x6c006c6c -.long 0x004c4c4c,0x13001313 -.long 0x00919191,0x64006464 -.long 0x006e6e6e,0x9b009b9b -.long 0x008d8d8d,0x63006363 -.long 0x00767676,0x9d009d9d -.long 0x00030303,0xc000c0c0 -.long 0x002d2d2d,0x4b004b4b -.long 0x00dedede,0xb700b7b7 -.long 0x00969696,0xa500a5a5 -.long 0x00262626,0x89008989 -.long 0x007d7d7d,0x5f005f5f -.long 0x00c6c6c6,0xb100b1b1 -.long 0x005c5c5c,0x17001717 -.long 0x00d3d3d3,0xf400f4f4 -.long 0x00f2f2f2,0xbc00bcbc -.long 0x004f4f4f,0xd300d3d3 -.long 0x00191919,0x46004646 -.long 0x003f3f3f,0xcf00cfcf -.long 0x00dcdcdc,0x37003737 -.long 0x00797979,0x5e005e5e -.long 0x001d1d1d,0x47004747 -.long 0x00525252,0x94009494 -.long 0x00ebebeb,0xfa00fafa -.long 0x00f3f3f3,0xfc00fcfc -.long 0x006d6d6d,0x5b005b5b -.long 0x005e5e5e,0x97009797 -.long 0x00fbfbfb,0xfe00fefe -.long 0x00696969,0x5a005a5a -.long 0x00b2b2b2,0xac00acac -.long 0x00f0f0f0,0x3c003c3c -.long 0x00313131,0x4c004c4c -.long 0x000c0c0c,0x03000303 -.long 0x00d4d4d4,0x35003535 -.long 0x00cfcfcf,0xf300f3f3 -.long 0x008c8c8c,0x23002323 -.long 0x00e2e2e2,0xb800b8b8 -.long 0x00757575,0x5d005d5d -.long 0x00a9a9a9,0x6a006a6a -.long 0x004a4a4a,0x92009292 -.long 0x00575757,0xd500d5d5 -.long 0x00848484,0x21002121 -.long 0x00111111,0x44004444 -.long 0x00454545,0x51005151 -.long 0x001b1b1b,0xc600c6c6 -.long 0x00f5f5f5,0x7d007d7d -.long 0x00e4e4e4,0x39003939 -.long 0x000e0e0e,0x83008383 -.long 0x00737373,0xdc00dcdc -.long 0x00aaaaaa,0xaa00aaaa -.long 0x00f1f1f1,0x7c007c7c -.long 0x00dddddd,0x77007777 -.long 0x00595959,0x56005656 -.long 0x00141414,0x05000505 -.long 0x006c6c6c,0x1b001b1b -.long 0x00929292,0xa400a4a4 -.long 0x00545454,0x15001515 -.long 0x00d0d0d0,0x34003434 -.long 0x00787878,0x1e001e1e -.long 0x00707070,0x1c001c1c -.long 0x00e3e3e3,0xf800f8f8 -.long 0x00494949,0x52005252 -.long 0x00808080,0x20002020 -.long 0x00505050,0x14001414 -.long 0x00a7a7a7,0xe900e9e9 -.long 0x00f6f6f6,0xbd00bdbd -.long 0x00777777,0xdd00dddd -.long 0x00939393,0xe400e4e4 -.long 0x00868686,0xa100a1a1 -.long 0x00838383,0xe000e0e0 -.long 0x002a2a2a,0x8a008a8a -.long 0x00c7c7c7,0xf100f1f1 -.long 0x005b5b5b,0xd600d6d6 -.long 0x00e9e9e9,0x7a007a7a -.long 0x00eeeeee,0xbb00bbbb -.long 0x008f8f8f,0xe300e3e3 -.long 0x00010101,0x40004040 -.long 0x003d3d3d,0x4f004f4f -.globl Camellia_cbc_encrypt -.type Camellia_cbc_encrypt,@function -.align 16 -Camellia_cbc_encrypt: - cmpq $0,%rdx - je .Lcbc_abort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lcbc_prologue: - - movq %rsp,%rbp - subq $64,%rsp - andq $-64,%rsp - - - - leaq -64-63(%rcx),%r10 - subq %rsp,%r10 - negq %r10 - andq $0x3C0,%r10 - subq %r10,%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %r8,%rbx - movq %rcx,%r14 - movl 272(%rcx),%r15d - - movq %r8,40(%rsp) - movq %rbp,48(%rsp) - -.Lcbc_body: - leaq .LCamellia_SBOX(%rip),%rbp - - movl $32,%ecx -.align 4 -.Lcbc_prefetch_sbox: - movq 0(%rbp),%rax - movq 32(%rbp),%rsi - movq 64(%rbp),%rdi - movq 96(%rbp),%r11 - leaq 128(%rbp),%rbp - loop .Lcbc_prefetch_sbox - subq $4096,%rbp - shlq $6,%r15 - movq %rdx,%rcx - leaq (%r14,%r15,1),%r15 - - cmpl $0,%r9d - je .LCBC_DECRYPT - - andq $-16,%rdx - andq $15,%rcx - leaq (%r12,%rdx,1),%rdx - movq %r14,0(%rsp) - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - cmpq %r12,%rdx - movl 0(%rbx),%r8d - movl 4(%rbx),%r9d - movl 8(%rbx),%r10d - movl 12(%rbx),%r11d - je .Lcbc_enc_tail - jmp .Lcbc_eloop - -.align 16 -.Lcbc_eloop: - xorl 0(%r12),%r8d - xorl 4(%r12),%r9d - xorl 8(%r12),%r10d - bswapl %r8d - xorl 12(%r12),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - movq 0(%rsp),%r14 - bswapl %r8d - movq 8(%rsp),%rdx - bswapl %r9d - movq 16(%rsp),%rcx - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - leaq 16(%r12),%r12 - movl %r11d,12(%r13) - cmpq %rdx,%r12 - leaq 16(%r13),%r13 - jne .Lcbc_eloop - - cmpq $0,%rcx - jne .Lcbc_enc_tail - - movq 40(%rsp),%r13 - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - jmp .Lcbc_done - -.align 16 -.Lcbc_enc_tail: - xorq %rax,%rax - movq %rax,0+24(%rsp) - movq %rax,8+24(%rsp) - movq %rax,16(%rsp) - -.Lcbc_enc_pushf: - pushfq - cld - movq %r12,%rsi - leaq 8+24(%rsp),%rdi -.long 0x9066A4F3 - popfq -.Lcbc_enc_popf: - - leaq 24(%rsp),%r12 - leaq 16+24(%rsp),%rax - movq %rax,8(%rsp) - jmp .Lcbc_eloop - -.align 16 -.LCBC_DECRYPT: - xchgq %r14,%r15 - addq $15,%rdx - andq $15,%rcx - andq $-16,%rdx - movq %r14,0(%rsp) - leaq (%r12,%rdx,1),%rdx - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - movq (%rbx),%rax - movq 8(%rbx),%rbx - jmp .Lcbc_dloop -.align 16 -.Lcbc_dloop: - movl 0(%r12),%r8d - movl 4(%r12),%r9d - movl 8(%r12),%r10d - bswapl %r8d - movl 12(%r12),%r11d - bswapl %r9d - movq %rax,0+24(%rsp) - bswapl %r10d - movq %rbx,8+24(%rsp) - bswapl %r11d - - call _x86_64_Camellia_decrypt - - movq 0(%rsp),%r14 - movq 8(%rsp),%rdx - movq 16(%rsp),%rcx - - bswapl %r8d - movq (%r12),%rax - bswapl %r9d - movq 8(%r12),%rbx - bswapl %r10d - xorl 0+24(%rsp),%r8d - bswapl %r11d - xorl 4+24(%rsp),%r9d - xorl 8+24(%rsp),%r10d - leaq 16(%r12),%r12 - xorl 12+24(%rsp),%r11d - cmpq %rdx,%r12 - je .Lcbc_ddone - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - leaq 16(%r13),%r13 - jmp .Lcbc_dloop - -.align 16 -.Lcbc_ddone: - movq 40(%rsp),%rdx - cmpq $0,%rcx - jne .Lcbc_dec_tail - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp .Lcbc_done -.align 16 -.Lcbc_dec_tail: - movl %r8d,0+24(%rsp) - movl %r9d,4+24(%rsp) - movl %r10d,8+24(%rsp) - movl %r11d,12+24(%rsp) - -.Lcbc_dec_pushf: - pushfq - cld - leaq 8+24(%rsp),%rsi - leaq (%r13),%rdi -.long 0x9066A4F3 - popfq -.Lcbc_dec_popf: - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp .Lcbc_done - -.align 16 -.Lcbc_done: - movq 48(%rsp),%rcx - movq 0(%rcx),%r15 - movq 8(%rcx),%r14 - movq 16(%rcx),%r13 - movq 24(%rcx),%r12 - movq 32(%rcx),%rbp - movq 40(%rcx),%rbx - leaq 48(%rcx),%rsp -.Lcbc_abort: - .byte 0xf3,0xc3 -.size Camellia_cbc_encrypt,.-Camellia_cbc_encrypt - -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54,95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s b/deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s deleted file mode 100644 index 027be89d1e446d..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s +++ /dev/null @@ -1,3517 +0,0 @@ -.text - - - -.align 64 -.Lpoly: -.quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001 - - -.LRR: -.quad 0x0000000000000003, 0xfffffffbffffffff, 0xfffffffffffffffe, 0x00000004fffffffd - -.LOne: -.long 1,1,1,1,1,1,1,1 -.LTwo: -.long 2,2,2,2,2,2,2,2 -.LThree: -.long 3,3,3,3,3,3,3,3 -.LONE_mont: -.quad 0x0000000000000001, 0xffffffff00000000, 0xffffffffffffffff, 0x00000000fffffffe - -.globl ecp_nistz256_mul_by_2 -.type ecp_nistz256_mul_by_2,@function -.align 64 -ecp_nistz256_mul_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_by_2,.-ecp_nistz256_mul_by_2 - - - -.globl ecp_nistz256_div_by_2 -.type ecp_nistz256_div_by_2,@function -.align 32 -ecp_nistz256_div_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq %r8,%rax - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - movq %r9,%rdx - xorq %r13,%r13 - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - adcq $0,%r13 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - cmovzq %rcx,%r10 - cmovzq %r12,%r11 - cmovzq %rsi,%r13 - - movq %r9,%rax - shrq $1,%r8 - shlq $63,%rax - movq %r10,%rdx - shrq $1,%r9 - orq %rax,%r8 - shlq $63,%rdx - movq %r11,%rcx - shrq $1,%r10 - orq %rdx,%r9 - shlq $63,%rcx - shrq $1,%r11 - shlq $63,%r13 - orq %rcx,%r10 - orq %r13,%r11 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_div_by_2,.-ecp_nistz256_div_by_2 - - - -.globl ecp_nistz256_mul_by_3 -.type ecp_nistz256_mul_by_3,@function -.align 32 -ecp_nistz256_mul_by_3: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq .Lpoly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq .Lpoly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - cmovcq %rcx,%r10 - cmovcq %r12,%r11 - - xorq %r13,%r13 - addq 0(%rsi),%r8 - adcq 8(%rsi),%r9 - movq %r8,%rax - adcq 16(%rsi),%r10 - adcq 24(%rsi),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq .Lpoly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq .Lpoly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_by_3,.-ecp_nistz256_mul_by_3 - - - -.globl ecp_nistz256_add -.type ecp_nistz256_add,@function -.align 32 -ecp_nistz256_add: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - addq 0(%rdx),%r8 - adcq 8(%rdx),%r9 - movq %r8,%rax - adcq 16(%rdx),%r10 - adcq 24(%rdx),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_add,.-ecp_nistz256_add - - - -.globl ecp_nistz256_sub -.type ecp_nistz256_sub,@function -.align 32 -ecp_nistz256_sub: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - subq 0(%rdx),%r8 - sbbq 8(%rdx),%r9 - movq %r8,%rax - sbbq 16(%rdx),%r10 - sbbq 24(%rdx),%r11 - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_sub,.-ecp_nistz256_sub - - - -.globl ecp_nistz256_neg -.type ecp_nistz256_neg,@function -.align 32 -ecp_nistz256_neg: - pushq %r12 - pushq %r13 - - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r13,%r13 - - subq 0(%rsi),%r8 - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r8,%rax - sbbq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_neg,.-ecp_nistz256_neg - - - - -.globl ecp_nistz256_to_mont -.type ecp_nistz256_to_mont,@function -.align 32 -ecp_nistz256_to_mont: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx - leaq .LRR(%rip),%rdx - jmp .Lmul_mont -.size ecp_nistz256_to_mont,.-ecp_nistz256_to_mont - - - - - - - -.globl ecp_nistz256_mul_mont -.type ecp_nistz256_mul_mont,@function -.align 32 -ecp_nistz256_mul_mont: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx -.Lmul_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - cmpl $0x80100,%ecx - je .Lmul_montx - movq %rdx,%rbx - movq 0(%rdx),%rax - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - - call __ecp_nistz256_mul_montq - jmp .Lmul_mont_done - -.align 32 -.Lmul_montx: - movq %rdx,%rbx - movq 0(%rdx),%rdx - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - leaq -128(%rsi),%rsi - - call __ecp_nistz256_mul_montx -.Lmul_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_mont,.-ecp_nistz256_mul_mont - -.type __ecp_nistz256_mul_montq,@function -.align 32 -__ecp_nistz256_mul_montq: - - - movq %rax,%rbp - mulq %r9 - movq .Lpoly+8(%rip),%r14 - movq %rax,%r8 - movq %rbp,%rax - movq %rdx,%r9 - - mulq %r10 - movq .Lpoly+24(%rip),%r15 - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %r11 - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r12 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - xorq %r13,%r13 - movq %rdx,%r12 - - - - - - - - - - - movq %r8,%rbp - shlq $32,%r8 - mulq %r15 - shrq $32,%rbp - addq %r8,%r9 - adcq %rbp,%r10 - adcq %rax,%r11 - movq 8(%rbx),%rax - adcq %rdx,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r10 - adcq $0,%rdx - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %r9,%rax - adcq %rdx,%r13 - adcq $0,%r8 - - - - movq %r9,%rbp - shlq $32,%r9 - mulq %r15 - shrq $32,%rbp - addq %r9,%r10 - adcq %rbp,%r11 - adcq %rax,%r12 - movq 16(%rbx),%rax - adcq %rdx,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %r10,%rax - adcq %rdx,%r8 - adcq $0,%r9 - - - - movq %r10,%rbp - shlq $32,%r10 - mulq %r15 - shrq $32,%rbp - addq %r10,%r11 - adcq %rbp,%r12 - adcq %rax,%r13 - movq 24(%rbx),%rax - adcq %rdx,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r8 - adcq $0,%rdx - addq %rax,%r8 - movq %r11,%rax - adcq %rdx,%r9 - adcq $0,%r10 - - - - movq %r11,%rbp - shlq $32,%r11 - mulq %r15 - shrq $32,%rbp - addq %r11,%r12 - adcq %rbp,%r13 - movq %r12,%rcx - adcq %rax,%r8 - adcq %rdx,%r9 - movq %r13,%rbp - adcq $0,%r10 - - - - subq $-1,%r12 - movq %r8,%rbx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rdx - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rcx,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rbx,%r8 - movq %r13,8(%rdi) - cmovcq %rdx,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_montq,.-__ecp_nistz256_mul_montq - - - - - - - - -.globl ecp_nistz256_sqr_mont -.type ecp_nistz256_sqr_mont,@function -.align 32 -ecp_nistz256_sqr_mont: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - cmpl $0x80100,%ecx - je .Lsqr_montx - movq 0(%rsi),%rax - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - - call __ecp_nistz256_sqr_montq - jmp .Lsqr_mont_done - -.align 32 -.Lsqr_montx: - movq 0(%rsi),%rdx - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - leaq -128(%rsi),%rsi - - call __ecp_nistz256_sqr_montx -.Lsqr_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_sqr_mont,.-ecp_nistz256_sqr_mont - -.type __ecp_nistz256_sqr_montq,@function -.align 32 -__ecp_nistz256_sqr_montq: - movq %rax,%r13 - mulq %r14 - movq %rax,%r9 - movq %r15,%rax - movq %rdx,%r10 - - mulq %r13 - addq %rax,%r10 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r13 - addq %rax,%r11 - movq %r15,%rax - adcq $0,%rdx - movq %rdx,%r12 - - - mulq %r14 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%rbp - - mulq %r14 - addq %rax,%r12 - movq %r8,%rax - adcq $0,%rdx - addq %rbp,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - - mulq %r15 - xorq %r15,%r15 - addq %rax,%r13 - movq 0(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - addq %r9,%r9 - adcq %r10,%r10 - adcq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - adcq $0,%r15 - - mulq %rax - movq %rax,%r8 - movq 8(%rsi),%rax - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r9 - adcq %rax,%r10 - movq 16(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r11 - adcq %rax,%r12 - movq 24(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r13 - adcq %rax,%r14 - movq %r8,%rax - adcq %rdx,%r15 - - movq .Lpoly+8(%rip),%rsi - movq .Lpoly+24(%rip),%rbp - - - - - movq %r8,%rcx - shlq $32,%r8 - mulq %rbp - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %rbp - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %rbp - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %rbp - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - adcq %rax,%r10 - adcq $0,%rdx - xorq %r11,%r11 - - - - addq %r8,%r12 - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %rdx,%r15 - movq %r13,%r9 - adcq $0,%r11 - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%rcx - sbbq %rbp,%r15 - sbbq $0,%r11 - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %rcx,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sqr_montq,.-__ecp_nistz256_sqr_montq -.type __ecp_nistz256_mul_montx,@function -.align 32 -__ecp_nistz256_mul_montx: - - - mulxq %r9,%r8,%r9 - mulxq %r10,%rcx,%r10 - movq $32,%r14 - xorq %r13,%r13 - mulxq %r11,%rbp,%r11 - movq .Lpoly+24(%rip),%r15 - adcq %rcx,%r9 - mulxq %r12,%rcx,%r12 - movq %r8,%rdx - adcq %rbp,%r10 - shlxq %r14,%r8,%rbp - adcq %rcx,%r11 - shrxq %r14,%r8,%rcx - adcq $0,%r12 - - - - addq %rbp,%r9 - adcq %rcx,%r10 - - mulxq %r15,%rcx,%rbp - movq 8(%rbx),%rdx - adcq %rcx,%r11 - adcq %rbp,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r9 - adoxq %rbp,%r10 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r10 - adoxq %rbp,%r11 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r9,%rdx - adcxq %rcx,%r12 - shlxq %r14,%r9,%rcx - adoxq %rbp,%r13 - shrxq %r14,%r9,%rbp - - adcxq %r8,%r13 - adoxq %r8,%r8 - adcq $0,%r8 - - - - addq %rcx,%r10 - adcq %rbp,%r11 - - mulxq %r15,%rcx,%rbp - movq 16(%rbx),%rdx - adcq %rcx,%r12 - adcq %rbp,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r10 - adoxq %rbp,%r11 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r12 - adoxq %rbp,%r13 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r10,%rdx - adcxq %rcx,%r13 - shlxq %r14,%r10,%rcx - adoxq %rbp,%r8 - shrxq %r14,%r10,%rbp - - adcxq %r9,%r8 - adoxq %r9,%r9 - adcq $0,%r9 - - - - addq %rcx,%r11 - adcq %rbp,%r12 - - mulxq %r15,%rcx,%rbp - movq 24(%rbx),%rdx - adcq %rcx,%r13 - adcq %rbp,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r12 - adoxq %rbp,%r13 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r13 - adoxq %rbp,%r8 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r11,%rdx - adcxq %rcx,%r8 - shlxq %r14,%r11,%rcx - adoxq %rbp,%r9 - shrxq %r14,%r11,%rbp - - adcxq %r10,%r9 - adoxq %r10,%r10 - adcq $0,%r10 - - - - addq %rcx,%r12 - adcq %rbp,%r13 - - mulxq %r15,%rcx,%rbp - movq %r12,%rbx - movq .Lpoly+8(%rip),%r14 - adcq %rcx,%r8 - movq %r13,%rdx - adcq %rbp,%r9 - adcq $0,%r10 - - - - xorl %eax,%eax - movq %r8,%rcx - sbbq $-1,%r12 - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rbp - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rbx,%r12 - cmovcq %rdx,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %rbp,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_montx,.-__ecp_nistz256_mul_montx - -.type __ecp_nistz256_sqr_montx,@function -.align 32 -__ecp_nistz256_sqr_montx: - mulxq %r14,%r9,%r10 - mulxq %r15,%rcx,%r11 - xorl %eax,%eax - adcq %rcx,%r10 - mulxq %r8,%rbp,%r12 - movq %r14,%rdx - adcq %rbp,%r11 - adcq $0,%r12 - xorq %r13,%r13 - - - mulxq %r15,%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq %r8,%rcx,%rbp - movq %r15,%rdx - adcxq %rcx,%r12 - adoxq %rbp,%r13 - adcq $0,%r13 - - - mulxq %r8,%rcx,%r14 - movq 0+128(%rsi),%rdx - xorq %r15,%r15 - adcxq %r9,%r9 - adoxq %rcx,%r13 - adcxq %r10,%r10 - adoxq %r15,%r14 - - mulxq %rdx,%r8,%rbp - movq 8+128(%rsi),%rdx - adcxq %r11,%r11 - adoxq %rbp,%r9 - adcxq %r12,%r12 - mulxq %rdx,%rcx,%rax - movq 16+128(%rsi),%rdx - adcxq %r13,%r13 - adoxq %rcx,%r10 - adcxq %r14,%r14 -.byte 0x67 - mulxq %rdx,%rcx,%rbp - movq 24+128(%rsi),%rdx - adoxq %rax,%r11 - adcxq %r15,%r15 - adoxq %rcx,%r12 - movq $32,%rsi - adoxq %rbp,%r13 -.byte 0x67,0x67 - mulxq %rdx,%rcx,%rax - movq .Lpoly+24(%rip),%rdx - adoxq %rcx,%r14 - shlxq %rsi,%r8,%rcx - adoxq %rax,%r15 - shrxq %rsi,%r8,%rax - movq %rdx,%rbp - - - addq %rcx,%r9 - adcq %rax,%r10 - - mulxq %r8,%rcx,%r8 - adcq %rcx,%r11 - shlxq %rsi,%r9,%rcx - adcq $0,%r8 - shrxq %rsi,%r9,%rax - - - addq %rcx,%r10 - adcq %rax,%r11 - - mulxq %r9,%rcx,%r9 - adcq %rcx,%r8 - shlxq %rsi,%r10,%rcx - adcq $0,%r9 - shrxq %rsi,%r10,%rax - - - addq %rcx,%r11 - adcq %rax,%r8 - - mulxq %r10,%rcx,%r10 - adcq %rcx,%r9 - shlxq %rsi,%r11,%rcx - adcq $0,%r10 - shrxq %rsi,%r11,%rax - - - addq %rcx,%r8 - adcq %rax,%r9 - - mulxq %r11,%rcx,%r11 - adcq %rcx,%r10 - adcq $0,%r11 - - xorq %rdx,%rdx - addq %r8,%r12 - movq .Lpoly+8(%rip),%rsi - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %r11,%r15 - movq %r13,%r9 - adcq $0,%rdx - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%r11 - sbbq %rbp,%r15 - sbbq $0,%rdx - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %r11,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sqr_montx,.-__ecp_nistz256_sqr_montx - - - - - - -.globl ecp_nistz256_from_mont -.type ecp_nistz256_from_mont,@function -.align 32 -ecp_nistz256_from_mont: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%rax - movq .Lpoly+24(%rip),%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq %rax,%r8 - movq .Lpoly+8(%rip),%r12 - - - - movq %rax,%rcx - shlq $32,%r8 - mulq %r13 - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %r13 - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %r13 - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %r13 - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - movq %r8,%rcx - adcq %rax,%r10 - movq %r9,%rsi - adcq $0,%rdx - - - - subq $-1,%r8 - movq %r10,%rax - sbbq %r12,%r9 - sbbq $0,%r10 - movq %rdx,%r11 - sbbq %r13,%rdx - sbbq %r13,%r13 - - cmovnzq %rcx,%r8 - cmovnzq %rsi,%r9 - movq %r8,0(%rdi) - cmovnzq %rax,%r10 - movq %r9,8(%rdi) - cmovzq %rdx,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_from_mont,.-ecp_nistz256_from_mont - - -.globl ecp_nistz256_select_w5 -.type ecp_nistz256_select_w5,@function -.align 32 -ecp_nistz256_select_w5: - movl OPENSSL_ia32cap_P+8(%rip),%eax - testl $32,%eax - jnz .Lavx2_select_w5 - movdqa .LOne(%rip),%xmm0 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - - movdqa %xmm0,%xmm8 - pshufd $0,%xmm1,%xmm1 - - movq $16,%rax -.Lselect_loop_sse_w5: - - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - pcmpeqd %xmm1,%xmm15 - - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - movdqa 64(%rsi),%xmm13 - movdqa 80(%rsi),%xmm14 - leaq 96(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - pand %xmm15,%xmm13 - por %xmm12,%xmm5 - pand %xmm15,%xmm14 - por %xmm13,%xmm6 - por %xmm14,%xmm7 - - decq %rax - jnz .Lselect_loop_sse_w5 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - movdqu %xmm6,64(%rdi) - movdqu %xmm7,80(%rdi) - .byte 0xf3,0xc3 -.size ecp_nistz256_select_w5,.-ecp_nistz256_select_w5 - - - -.globl ecp_nistz256_select_w7 -.type ecp_nistz256_select_w7,@function -.align 32 -ecp_nistz256_select_w7: - movl OPENSSL_ia32cap_P+8(%rip),%eax - testl $32,%eax - jnz .Lavx2_select_w7 - movdqa .LOne(%rip),%xmm8 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - - movdqa %xmm8,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq $64,%rax - -.Lselect_loop_sse_w7: - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - pcmpeqd %xmm1,%xmm15 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - leaq 64(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - prefetcht0 255(%rsi) - por %xmm12,%xmm5 - - decq %rax - jnz .Lselect_loop_sse_w7 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - .byte 0xf3,0xc3 -.size ecp_nistz256_select_w7,.-ecp_nistz256_select_w7 - - -.type ecp_nistz256_avx2_select_w5,@function -.align 32 -ecp_nistz256_avx2_select_w5: -.Lavx2_select_w5: - vzeroupper - vmovdqa .LTwo(%rip),%ymm0 - - vpxor %ymm2,%ymm2,%ymm2 - vpxor %ymm3,%ymm3,%ymm3 - vpxor %ymm4,%ymm4,%ymm4 - - vmovdqa .LOne(%rip),%ymm5 - vmovdqa .LTwo(%rip),%ymm10 - - vmovd %edx,%xmm1 - vpermd %ymm1,%ymm2,%ymm1 - - movq $8,%rax -.Lselect_loop_avx2_w5: - - vmovdqa 0(%rsi),%ymm6 - vmovdqa 32(%rsi),%ymm7 - vmovdqa 64(%rsi),%ymm8 - - vmovdqa 96(%rsi),%ymm11 - vmovdqa 128(%rsi),%ymm12 - vmovdqa 160(%rsi),%ymm13 - - vpcmpeqd %ymm1,%ymm5,%ymm9 - vpcmpeqd %ymm1,%ymm10,%ymm14 - - vpaddd %ymm0,%ymm5,%ymm5 - vpaddd %ymm0,%ymm10,%ymm10 - leaq 192(%rsi),%rsi - - vpand %ymm9,%ymm6,%ymm6 - vpand %ymm9,%ymm7,%ymm7 - vpand %ymm9,%ymm8,%ymm8 - vpand %ymm14,%ymm11,%ymm11 - vpand %ymm14,%ymm12,%ymm12 - vpand %ymm14,%ymm13,%ymm13 - - vpxor %ymm6,%ymm2,%ymm2 - vpxor %ymm7,%ymm3,%ymm3 - vpxor %ymm8,%ymm4,%ymm4 - vpxor %ymm11,%ymm2,%ymm2 - vpxor %ymm12,%ymm3,%ymm3 - vpxor %ymm13,%ymm4,%ymm4 - - decq %rax - jnz .Lselect_loop_avx2_w5 - - vmovdqu %ymm2,0(%rdi) - vmovdqu %ymm3,32(%rdi) - vmovdqu %ymm4,64(%rdi) - vzeroupper - .byte 0xf3,0xc3 -.size ecp_nistz256_avx2_select_w5,.-ecp_nistz256_avx2_select_w5 - - - -.globl ecp_nistz256_avx2_select_w7 -.type ecp_nistz256_avx2_select_w7,@function -.align 32 -ecp_nistz256_avx2_select_w7: -.Lavx2_select_w7: - vzeroupper - vmovdqa .LThree(%rip),%ymm0 - - vpxor %ymm2,%ymm2,%ymm2 - vpxor %ymm3,%ymm3,%ymm3 - - vmovdqa .LOne(%rip),%ymm4 - vmovdqa .LTwo(%rip),%ymm8 - vmovdqa .LThree(%rip),%ymm12 - - vmovd %edx,%xmm1 - vpermd %ymm1,%ymm2,%ymm1 - - - movq $21,%rax -.Lselect_loop_avx2_w7: - - vmovdqa 0(%rsi),%ymm5 - vmovdqa 32(%rsi),%ymm6 - - vmovdqa 64(%rsi),%ymm9 - vmovdqa 96(%rsi),%ymm10 - - vmovdqa 128(%rsi),%ymm13 - vmovdqa 160(%rsi),%ymm14 - - vpcmpeqd %ymm1,%ymm4,%ymm7 - vpcmpeqd %ymm1,%ymm8,%ymm11 - vpcmpeqd %ymm1,%ymm12,%ymm15 - - vpaddd %ymm0,%ymm4,%ymm4 - vpaddd %ymm0,%ymm8,%ymm8 - vpaddd %ymm0,%ymm12,%ymm12 - leaq 192(%rsi),%rsi - - vpand %ymm7,%ymm5,%ymm5 - vpand %ymm7,%ymm6,%ymm6 - vpand %ymm11,%ymm9,%ymm9 - vpand %ymm11,%ymm10,%ymm10 - vpand %ymm15,%ymm13,%ymm13 - vpand %ymm15,%ymm14,%ymm14 - - vpxor %ymm5,%ymm2,%ymm2 - vpxor %ymm6,%ymm3,%ymm3 - vpxor %ymm9,%ymm2,%ymm2 - vpxor %ymm10,%ymm3,%ymm3 - vpxor %ymm13,%ymm2,%ymm2 - vpxor %ymm14,%ymm3,%ymm3 - - decq %rax - jnz .Lselect_loop_avx2_w7 - - - vmovdqa 0(%rsi),%ymm5 - vmovdqa 32(%rsi),%ymm6 - - vpcmpeqd %ymm1,%ymm4,%ymm7 - - vpand %ymm7,%ymm5,%ymm5 - vpand %ymm7,%ymm6,%ymm6 - - vpxor %ymm5,%ymm2,%ymm2 - vpxor %ymm6,%ymm3,%ymm3 - - vmovdqu %ymm2,0(%rdi) - vmovdqu %ymm3,32(%rdi) - vzeroupper - .byte 0xf3,0xc3 -.size ecp_nistz256_avx2_select_w7,.-ecp_nistz256_avx2_select_w7 -.type __ecp_nistz256_add_toq,@function -.align 32 -__ecp_nistz256_add_toq: - xorq %r11,%r11 - addq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_add_toq,.-__ecp_nistz256_add_toq - -.type __ecp_nistz256_sub_fromq,@function -.align 32 -__ecp_nistz256_sub_fromq: - subq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq %r11,%r11 - - addq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - testq %r11,%r11 - - cmovzq %rax,%r12 - cmovzq %rbp,%r13 - movq %r12,0(%rdi) - cmovzq %rcx,%r8 - movq %r13,8(%rdi) - cmovzq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sub_fromq,.-__ecp_nistz256_sub_fromq - -.type __ecp_nistz256_subq,@function -.align 32 -__ecp_nistz256_subq: - subq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq %r11,%r11 - - addq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - testq %r11,%r11 - - cmovnzq %rax,%r12 - cmovnzq %rbp,%r13 - cmovnzq %rcx,%r8 - cmovnzq %r10,%r9 - - .byte 0xf3,0xc3 -.size __ecp_nistz256_subq,.-__ecp_nistz256_subq - -.type __ecp_nistz256_mul_by_2q,@function -.align 32 -__ecp_nistz256_mul_by_2q: - xorq %r11,%r11 - addq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_by_2q,.-__ecp_nistz256_mul_by_2q -.globl ecp_nistz256_point_double -.type ecp_nistz256_point_double,@function -.align 32 -ecp_nistz256_point_double: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je .Lpoint_doublex - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -.Lpoint_double_shortcutq: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq .Lpoly+8(%rip),%r14 - movq .Lpoly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-0(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 32(%rbx),%rax - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-0(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rax - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 0+32(%rsp),%rax - movq 8+32(%rsp),%r14 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subq - - movq 32(%rsp),%rax - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-0(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_double,.-ecp_nistz256_point_double -.globl ecp_nistz256_point_add -.type ecp_nistz256_point_add,@function -.align 32 -ecp_nistz256_point_add: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je .Lpoint_addx - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-0(%rsi),%rsi - movq %rax,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rax - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-0(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 416(%rsp),%rax - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 512(%rsp),%rax - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq 0+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 480(%rsp),%rax - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz .Ladd_proceedq -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz .Ladd_proceedq - testq %r9,%r9 - jz .Ladd_doubleq - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp .Ladd_doneq - -.align 32 -.Ladd_doubleq: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp .Lpoint_double_shortcutq - -.align 32 -.Ladd_proceedq: - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq 0+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0(%rsp),%rax - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 160(%rsp),%rax - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -.Ladd_doneq: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_add,.-ecp_nistz256_point_add -.globl ecp_nistz256_point_add_affine -.type ecp_nistz256_point_add_affine,@function -.align 32 -ecp_nistz256_point_add_affine: - movl $0x80100,%ecx - andl OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je .Lpoint_add_affinex - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-0(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rax - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-0(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+96(%rsp),%rax - movq 8+96(%rsp),%r14 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq 0+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rax - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq 0+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand .LONE_mont(%rip),%xmm2 - pand .LONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_add_affine,.-ecp_nistz256_point_add_affine -.type __ecp_nistz256_add_tox,@function -.align 32 -__ecp_nistz256_add_tox: - xorq %r11,%r11 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - xorq %r10,%r10 - sbbq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_add_tox,.-__ecp_nistz256_add_tox - -.type __ecp_nistz256_sub_fromx,@function -.align 32 -__ecp_nistz256_sub_fromx: - xorq %r11,%r11 - sbbq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq $0,%r11 - - xorq %r10,%r10 - adcq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - - btq $0,%r11 - cmovncq %rax,%r12 - cmovncq %rbp,%r13 - movq %r12,0(%rdi) - cmovncq %rcx,%r8 - movq %r13,8(%rdi) - cmovncq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sub_fromx,.-__ecp_nistz256_sub_fromx - -.type __ecp_nistz256_subx,@function -.align 32 -__ecp_nistz256_subx: - xorq %r11,%r11 - sbbq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq $0,%r11 - - xorq %r9,%r9 - adcq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - - btq $0,%r11 - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - cmovcq %rcx,%r8 - cmovcq %r10,%r9 - - .byte 0xf3,0xc3 -.size __ecp_nistz256_subx,.-__ecp_nistz256_subx - -.type __ecp_nistz256_mul_by_2x,@function -.align 32 -__ecp_nistz256_mul_by_2x: - xorq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - xorq %r10,%r10 - sbbq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_by_2x,.-__ecp_nistz256_mul_by_2x -.type ecp_nistz256_point_doublex,@function -.align 32 -ecp_nistz256_point_doublex: -.Lpoint_doublex: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -.Lpoint_double_shortcutx: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq .Lpoly+8(%rip),%r14 - movq .Lpoly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-128(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 32(%rbx),%rdx - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-128(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montx - call __ecp_nistz256_mul_by_2x - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_tox - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montx - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rdx - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_tox - - movq 96(%rsp),%rdx - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - movq 0+32(%rsp),%rdx - movq 8+32(%rsp),%r14 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montx - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subx - - movq 32(%rsp),%rdx - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-128(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromx - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_doublex,.-ecp_nistz256_point_doublex -.type ecp_nistz256_point_addx,@function -.align 32 -ecp_nistz256_point_addx: -.Lpoint_addx: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-128(%rsi),%rsi - movq %rdx,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rdx - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-128(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 544(%rsp),%rdx - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 416(%rsp),%rdx - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq -128+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 512(%rsp),%rdx - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq -128+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 480(%rsp),%rdx - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz .Ladd_proceedx -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz .Ladd_proceedx - testq %r9,%r9 - jz .Ladd_doublex - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp .Ladd_donex - -.align 32 -.Ladd_doublex: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp .Lpoint_double_shortcutx - -.align 32 -.Ladd_proceedx: - movq 0+64(%rsp),%rdx - movq 8+64(%rsp),%r14 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 544(%rsp),%rdx - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq -128+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 0(%rsp),%rdx - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 160(%rsp),%rdx - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montx - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subx - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subx - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rdx - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq -128+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 320(%rsp),%rdx - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromx - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -.Ladd_donex: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_addx,.-ecp_nistz256_point_addx -.type ecp_nistz256_point_add_affinex,@function -.align 32 -ecp_nistz256_point_add_affinex: -.Lpoint_add_affinex: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-128(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rdx - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-128(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+64(%rsp),%rdx - movq 8+64(%rsp),%r14 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 0+96(%rsp),%rdx - movq 8+96(%rsp),%r14 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 128(%rsp),%rdx - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 320(%rsp),%rdx - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq -128+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subx - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subx - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rdx - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq -128+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 96(%rsp),%rdx - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromx - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand .LONE_mont(%rip),%xmm2 - pand .LONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_add_affinex,.-ecp_nistz256_point_add_affinex diff --git a/deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s b/deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s deleted file mode 100644 index fad85c498e8ca4..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s +++ /dev/null @@ -1,668 +0,0 @@ -.text -.align 16 - -.globl md5_block_asm_data_order -.type md5_block_asm_data_order,@function -md5_block_asm_data_order: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r14 - pushq %r15 -.Lprologue: - - - - - movq %rdi,%rbp - shlq $6,%rdx - leaq (%rsi,%rdx,1),%rdi - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - - - - - - - - cmpq %rdi,%rsi - je .Lend - - -.Lloop: - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r14d - movl %edx,%r15d - movl 0(%rsi),%r10d - movl %edx,%r11d - xorl %ecx,%r11d - leal -680876936(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 4(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -389564586(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 8(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal 606105819(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 12(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1044525330(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 16(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal -176418897(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 20(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal 1200080426(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 24(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1473231341(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 28(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -45705983(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 32(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1770035416(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 36(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -1958414417(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 40(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -42063(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 44(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1990404162(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 48(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1804603682(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 52(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -40341101(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 56(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1502002290(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 60(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal 1236535329(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 0(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - movl 4(%rsi),%r10d - movl %edx,%r11d - movl %edx,%r12d - notl %r11d - leal -165796510(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 24(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1069501632(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 44(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 643717713(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -373897302(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 20(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -701558691(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 40(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal 38016083(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 60(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -660478335(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 16(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -405537848(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 36(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal 568446438(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 56(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1019803690(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 12(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -187363961(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 32(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal 1163531501(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 52(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -1444681467(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 8(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -51403784(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 28(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 1735328473(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 48(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -1926607734(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - movl 20(%rsi),%r10d - movl %ecx,%r11d - leal -378558(%rax,%r10,1),%eax - movl 32(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -2022574463(%rdx,%r10,1),%edx - movl 44(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 1839030562(%rcx,%r10,1),%ecx - movl 56(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -35309556(%rbx,%r10,1),%ebx - movl 4(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -1530992060(%rax,%r10,1),%eax - movl 16(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal 1272893353(%rdx,%r10,1),%edx - movl 28(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -155497632(%rcx,%r10,1),%ecx - movl 40(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -1094730640(%rbx,%r10,1),%ebx - movl 52(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal 681279174(%rax,%r10,1),%eax - movl 0(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -358537222(%rdx,%r10,1),%edx - movl 12(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -722521979(%rcx,%r10,1),%ecx - movl 24(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal 76029189(%rbx,%r10,1),%ebx - movl 36(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -640364487(%rax,%r10,1),%eax - movl 48(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -421815835(%rdx,%r10,1),%edx - movl 60(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 530742520(%rcx,%r10,1),%ecx - movl 8(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -995338651(%rbx,%r10,1),%ebx - movl 0(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - xorl %edx,%r11d - leal -198630844(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 28(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal 1126891415(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 56(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1416354905(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 20(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -57434055(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 48(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1700485571(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 12(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1894986606(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 40(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1051523(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 4(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -2054922799(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 32(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1873313359(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 60(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -30611744(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 24(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1560198380(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 52(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal 1309151649(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 16(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal -145523070(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 44(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1120210379(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 8(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal 718787259(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 36(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -343485551(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - - addl %r8d,%eax - addl %r9d,%ebx - addl %r14d,%ecx - addl %r15d,%edx - - - addq $64,%rsi - cmpq %rdi,%rsi - jb .Lloop - - -.Lend: - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - movq (%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r12 - movq 24(%rsp),%rbx - movq 32(%rsp),%rbp - addq $40,%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size md5_block_asm_data_order,.-md5_block_asm_data_order diff --git a/deps/openssl/asm/x64-elf-gas/modes/aesni-gcm-x86_64.s b/deps/openssl/asm/x64-elf-gas/modes/aesni-gcm-x86_64.s deleted file mode 100644 index 58bf244ed55105..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/modes/aesni-gcm-x86_64.s +++ /dev/null @@ -1,753 +0,0 @@ -.text - -.type _aesni_ctr32_ghash_6x,@function -.align 32 -_aesni_ctr32_ghash_6x: - vmovdqu 32(%r11),%xmm2 - subq $6,%rdx - vpxor %xmm4,%xmm4,%xmm4 - vmovdqu 0-128(%rcx),%xmm15 - vpaddb %xmm2,%xmm1,%xmm10 - vpaddb %xmm2,%xmm10,%xmm11 - vpaddb %xmm2,%xmm11,%xmm12 - vpaddb %xmm2,%xmm12,%xmm13 - vpaddb %xmm2,%xmm13,%xmm14 - vpxor %xmm15,%xmm1,%xmm9 - vmovdqu %xmm4,16+8(%rsp) - jmp .Loop6x - -.align 32 -.Loop6x: - addl $100663296,%ebx - jc .Lhandle_ctr32 - vmovdqu 0-32(%r9),%xmm3 - vpaddb %xmm2,%xmm14,%xmm1 - vpxor %xmm15,%xmm10,%xmm10 - vpxor %xmm15,%xmm11,%xmm11 - -.Lresume_ctr32: - vmovdqu %xmm1,(%r8) - vpclmulqdq $0x10,%xmm3,%xmm7,%xmm5 - vpxor %xmm15,%xmm12,%xmm12 - vmovups 16-128(%rcx),%xmm2 - vpclmulqdq $0x01,%xmm3,%xmm7,%xmm6 - xorq %r12,%r12 - cmpq %r14,%r15 - - vaesenc %xmm2,%xmm9,%xmm9 - vmovdqu 48+8(%rsp),%xmm0 - vpxor %xmm15,%xmm13,%xmm13 - vpclmulqdq $0x00,%xmm3,%xmm7,%xmm1 - vaesenc %xmm2,%xmm10,%xmm10 - vpxor %xmm15,%xmm14,%xmm14 - setnc %r12b - vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7 - vaesenc %xmm2,%xmm11,%xmm11 - vmovdqu 16-32(%r9),%xmm3 - negq %r12 - vaesenc %xmm2,%xmm12,%xmm12 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm3,%xmm0,%xmm5 - vpxor %xmm4,%xmm8,%xmm8 - vaesenc %xmm2,%xmm13,%xmm13 - vpxor %xmm5,%xmm1,%xmm4 - andq $0x60,%r12 - vmovups 32-128(%rcx),%xmm15 - vpclmulqdq $0x10,%xmm3,%xmm0,%xmm1 - vaesenc %xmm2,%xmm14,%xmm14 - - vpclmulqdq $0x01,%xmm3,%xmm0,%xmm2 - leaq (%r14,%r12,1),%r14 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor 16+8(%rsp),%xmm8,%xmm8 - vpclmulqdq $0x11,%xmm3,%xmm0,%xmm3 - vmovdqu 64+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 88(%r14),%r13 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 80(%r14),%r12 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,32+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,40+8(%rsp) - vmovdqu 48-32(%r9),%xmm5 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 48-128(%rcx),%xmm15 - vpxor %xmm1,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm5,%xmm0,%xmm1 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm2,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm5,%xmm0,%xmm2 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor %xmm3,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm5,%xmm0,%xmm3 - vaesenc %xmm15,%xmm11,%xmm11 - vpclmulqdq $0x11,%xmm5,%xmm0,%xmm5 - vmovdqu 80+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqu 64-32(%r9),%xmm1 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 64-128(%rcx),%xmm15 - vpxor %xmm2,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm1,%xmm0,%xmm2 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm3,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm1,%xmm0,%xmm3 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 72(%r14),%r13 - vpxor %xmm5,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm1,%xmm0,%xmm5 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 64(%r14),%r12 - vpclmulqdq $0x11,%xmm1,%xmm0,%xmm1 - vmovdqu 96+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,48+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,56+8(%rsp) - vpxor %xmm2,%xmm4,%xmm4 - vmovdqu 96-32(%r9),%xmm2 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 80-128(%rcx),%xmm15 - vpxor %xmm3,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm3 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm2,%xmm0,%xmm5 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 56(%r14),%r13 - vpxor %xmm1,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm2,%xmm0,%xmm1 - vpxor 112+8(%rsp),%xmm8,%xmm8 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 48(%r14),%r12 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm2 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,64+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,72+8(%rsp) - vpxor %xmm3,%xmm4,%xmm4 - vmovdqu 112-32(%r9),%xmm3 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 96-128(%rcx),%xmm15 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm5 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm1,%xmm6,%xmm6 - vpclmulqdq $0x01,%xmm3,%xmm8,%xmm1 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 40(%r14),%r13 - vpxor %xmm2,%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm3,%xmm8,%xmm2 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 32(%r14),%r12 - vpclmulqdq $0x11,%xmm3,%xmm8,%xmm8 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,80+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,88+8(%rsp) - vpxor %xmm5,%xmm6,%xmm6 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor %xmm1,%xmm6,%xmm6 - - vmovups 112-128(%rcx),%xmm15 - vpslldq $8,%xmm6,%xmm5 - vpxor %xmm2,%xmm4,%xmm4 - vmovdqu 16(%r11),%xmm3 - - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm8,%xmm7,%xmm7 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor %xmm5,%xmm4,%xmm4 - movbeq 24(%r14),%r13 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 16(%r14),%r12 - vpalignr $8,%xmm4,%xmm4,%xmm0 - vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4 - movq %r13,96+8(%rsp) - vaesenc %xmm15,%xmm12,%xmm12 - movq %r12,104+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - vmovups 128-128(%rcx),%xmm1 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 144-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm10,%xmm10 - vpsrldq $8,%xmm6,%xmm6 - vaesenc %xmm1,%xmm11,%xmm11 - vpxor %xmm6,%xmm7,%xmm7 - vaesenc %xmm1,%xmm12,%xmm12 - vpxor %xmm0,%xmm4,%xmm4 - movbeq 8(%r14),%r13 - vaesenc %xmm1,%xmm13,%xmm13 - movbeq 0(%r14),%r12 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 160-128(%rcx),%xmm1 - cmpl $11,%ebp - jb .Lenc_tail - - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vaesenc %xmm1,%xmm10,%xmm10 - vaesenc %xmm1,%xmm11,%xmm11 - vaesenc %xmm1,%xmm12,%xmm12 - vaesenc %xmm1,%xmm13,%xmm13 - vmovups 176-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 192-128(%rcx),%xmm1 - je .Lenc_tail - - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vaesenc %xmm1,%xmm10,%xmm10 - vaesenc %xmm1,%xmm11,%xmm11 - vaesenc %xmm1,%xmm12,%xmm12 - vaesenc %xmm1,%xmm13,%xmm13 - vmovups 208-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 224-128(%rcx),%xmm1 - jmp .Lenc_tail - -.align 32 -.Lhandle_ctr32: - vmovdqu (%r11),%xmm0 - vpshufb %xmm0,%xmm1,%xmm6 - vmovdqu 48(%r11),%xmm5 - vpaddd 64(%r11),%xmm6,%xmm10 - vpaddd %xmm5,%xmm6,%xmm11 - vmovdqu 0-32(%r9),%xmm3 - vpaddd %xmm5,%xmm10,%xmm12 - vpshufb %xmm0,%xmm10,%xmm10 - vpaddd %xmm5,%xmm11,%xmm13 - vpshufb %xmm0,%xmm11,%xmm11 - vpxor %xmm15,%xmm10,%xmm10 - vpaddd %xmm5,%xmm12,%xmm14 - vpshufb %xmm0,%xmm12,%xmm12 - vpxor %xmm15,%xmm11,%xmm11 - vpaddd %xmm5,%xmm13,%xmm1 - vpshufb %xmm0,%xmm13,%xmm13 - vpshufb %xmm0,%xmm14,%xmm14 - vpshufb %xmm0,%xmm1,%xmm1 - jmp .Lresume_ctr32 - -.align 32 -.Lenc_tail: - vaesenc %xmm15,%xmm9,%xmm9 - vmovdqu %xmm7,16+8(%rsp) - vpalignr $8,%xmm4,%xmm4,%xmm8 - vaesenc %xmm15,%xmm10,%xmm10 - vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4 - vpxor 0(%rdi),%xmm1,%xmm2 - vaesenc %xmm15,%xmm11,%xmm11 - vpxor 16(%rdi),%xmm1,%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - vpxor 32(%rdi),%xmm1,%xmm5 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor 48(%rdi),%xmm1,%xmm6 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor 64(%rdi),%xmm1,%xmm7 - vpxor 80(%rdi),%xmm1,%xmm3 - vmovdqu (%r8),%xmm1 - - vaesenclast %xmm2,%xmm9,%xmm9 - vmovdqu 32(%r11),%xmm2 - vaesenclast %xmm0,%xmm10,%xmm10 - vpaddb %xmm2,%xmm1,%xmm0 - movq %r13,112+8(%rsp) - leaq 96(%rdi),%rdi - vaesenclast %xmm5,%xmm11,%xmm11 - vpaddb %xmm2,%xmm0,%xmm5 - movq %r12,120+8(%rsp) - leaq 96(%rsi),%rsi - vmovdqu 0-128(%rcx),%xmm15 - vaesenclast %xmm6,%xmm12,%xmm12 - vpaddb %xmm2,%xmm5,%xmm6 - vaesenclast %xmm7,%xmm13,%xmm13 - vpaddb %xmm2,%xmm6,%xmm7 - vaesenclast %xmm3,%xmm14,%xmm14 - vpaddb %xmm2,%xmm7,%xmm3 - - addq $0x60,%r10 - subq $0x6,%rdx - jc .L6x_done - - vmovups %xmm9,-96(%rsi) - vpxor %xmm15,%xmm1,%xmm9 - vmovups %xmm10,-80(%rsi) - vmovdqa %xmm0,%xmm10 - vmovups %xmm11,-64(%rsi) - vmovdqa %xmm5,%xmm11 - vmovups %xmm12,-48(%rsi) - vmovdqa %xmm6,%xmm12 - vmovups %xmm13,-32(%rsi) - vmovdqa %xmm7,%xmm13 - vmovups %xmm14,-16(%rsi) - vmovdqa %xmm3,%xmm14 - vmovdqu 32+8(%rsp),%xmm7 - jmp .Loop6x - -.L6x_done: - vpxor 16+8(%rsp),%xmm8,%xmm8 - vpxor %xmm4,%xmm8,%xmm8 - - .byte 0xf3,0xc3 -.size _aesni_ctr32_ghash_6x,.-_aesni_ctr32_ghash_6x -.globl aesni_gcm_decrypt -.type aesni_gcm_decrypt,@function -.align 32 -aesni_gcm_decrypt: - xorq %r10,%r10 - cmpq $0x60,%rdx - jb .Lgcm_dec_abort - - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - - vmovdqu (%r8),%xmm1 - addq $-128,%rsp - movl 12(%r8),%ebx - leaq .Lbswap_mask(%rip),%r11 - leaq -128(%rcx),%r14 - movq $0xf80,%r15 - vmovdqu (%r9),%xmm8 - andq $-128,%rsp - vmovdqu (%r11),%xmm0 - leaq 128(%rcx),%rcx - leaq 32+32(%r9),%r9 - movl 240-128(%rcx),%ebp - vpshufb %xmm0,%xmm8,%xmm8 - - andq %r15,%r14 - andq %rsp,%r15 - subq %r14,%r15 - jc .Ldec_no_key_aliasing - cmpq $768,%r15 - jnc .Ldec_no_key_aliasing - subq %r15,%rsp -.Ldec_no_key_aliasing: - - vmovdqu 80(%rdi),%xmm7 - leaq (%rdi),%r14 - vmovdqu 64(%rdi),%xmm4 - leaq -192(%rdi,%rdx,1),%r15 - vmovdqu 48(%rdi),%xmm5 - shrq $4,%rdx - xorq %r10,%r10 - vmovdqu 32(%rdi),%xmm6 - vpshufb %xmm0,%xmm7,%xmm7 - vmovdqu 16(%rdi),%xmm2 - vpshufb %xmm0,%xmm4,%xmm4 - vmovdqu (%rdi),%xmm3 - vpshufb %xmm0,%xmm5,%xmm5 - vmovdqu %xmm4,48(%rsp) - vpshufb %xmm0,%xmm6,%xmm6 - vmovdqu %xmm5,64(%rsp) - vpshufb %xmm0,%xmm2,%xmm2 - vmovdqu %xmm6,80(%rsp) - vpshufb %xmm0,%xmm3,%xmm3 - vmovdqu %xmm2,96(%rsp) - vmovdqu %xmm3,112(%rsp) - - call _aesni_ctr32_ghash_6x - - vmovups %xmm9,-96(%rsi) - vmovups %xmm10,-80(%rsi) - vmovups %xmm11,-64(%rsi) - vmovups %xmm12,-48(%rsi) - vmovups %xmm13,-32(%rsi) - vmovups %xmm14,-16(%rsi) - - vpshufb (%r11),%xmm8,%xmm8 - vmovdqu %xmm8,-64(%r9) - - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lgcm_dec_abort: - movq %r10,%rax - .byte 0xf3,0xc3 -.size aesni_gcm_decrypt,.-aesni_gcm_decrypt -.type _aesni_ctr32_6x,@function -.align 32 -_aesni_ctr32_6x: - vmovdqu 0-128(%rcx),%xmm4 - vmovdqu 32(%r11),%xmm2 - leaq -1(%rbp),%r13 - vmovups 16-128(%rcx),%xmm15 - leaq 32-128(%rcx),%r12 - vpxor %xmm4,%xmm1,%xmm9 - addl $100663296,%ebx - jc .Lhandle_ctr32_2 - vpaddb %xmm2,%xmm1,%xmm10 - vpaddb %xmm2,%xmm10,%xmm11 - vpxor %xmm4,%xmm10,%xmm10 - vpaddb %xmm2,%xmm11,%xmm12 - vpxor %xmm4,%xmm11,%xmm11 - vpaddb %xmm2,%xmm12,%xmm13 - vpxor %xmm4,%xmm12,%xmm12 - vpaddb %xmm2,%xmm13,%xmm14 - vpxor %xmm4,%xmm13,%xmm13 - vpaddb %xmm2,%xmm14,%xmm1 - vpxor %xmm4,%xmm14,%xmm14 - jmp .Loop_ctr32 - -.align 16 -.Loop_ctr32: - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - vmovups (%r12),%xmm15 - leaq 16(%r12),%r12 - decl %r13d - jnz .Loop_ctr32 - - vmovdqu (%r12),%xmm3 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor 0(%rdi),%xmm3,%xmm4 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor 16(%rdi),%xmm3,%xmm5 - vaesenc %xmm15,%xmm11,%xmm11 - vpxor 32(%rdi),%xmm3,%xmm6 - vaesenc %xmm15,%xmm12,%xmm12 - vpxor 48(%rdi),%xmm3,%xmm8 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor 64(%rdi),%xmm3,%xmm2 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor 80(%rdi),%xmm3,%xmm3 - leaq 96(%rdi),%rdi - - vaesenclast %xmm4,%xmm9,%xmm9 - vaesenclast %xmm5,%xmm10,%xmm10 - vaesenclast %xmm6,%xmm11,%xmm11 - vaesenclast %xmm8,%xmm12,%xmm12 - vaesenclast %xmm2,%xmm13,%xmm13 - vaesenclast %xmm3,%xmm14,%xmm14 - vmovups %xmm9,0(%rsi) - vmovups %xmm10,16(%rsi) - vmovups %xmm11,32(%rsi) - vmovups %xmm12,48(%rsi) - vmovups %xmm13,64(%rsi) - vmovups %xmm14,80(%rsi) - leaq 96(%rsi),%rsi - - .byte 0xf3,0xc3 -.align 32 -.Lhandle_ctr32_2: - vpshufb %xmm0,%xmm1,%xmm6 - vmovdqu 48(%r11),%xmm5 - vpaddd 64(%r11),%xmm6,%xmm10 - vpaddd %xmm5,%xmm6,%xmm11 - vpaddd %xmm5,%xmm10,%xmm12 - vpshufb %xmm0,%xmm10,%xmm10 - vpaddd %xmm5,%xmm11,%xmm13 - vpshufb %xmm0,%xmm11,%xmm11 - vpxor %xmm4,%xmm10,%xmm10 - vpaddd %xmm5,%xmm12,%xmm14 - vpshufb %xmm0,%xmm12,%xmm12 - vpxor %xmm4,%xmm11,%xmm11 - vpaddd %xmm5,%xmm13,%xmm1 - vpshufb %xmm0,%xmm13,%xmm13 - vpxor %xmm4,%xmm12,%xmm12 - vpshufb %xmm0,%xmm14,%xmm14 - vpxor %xmm4,%xmm13,%xmm13 - vpshufb %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm14,%xmm14 - jmp .Loop_ctr32 -.size _aesni_ctr32_6x,.-_aesni_ctr32_6x - -.globl aesni_gcm_encrypt -.type aesni_gcm_encrypt,@function -.align 32 -aesni_gcm_encrypt: - xorq %r10,%r10 - cmpq $288,%rdx - jb .Lgcm_enc_abort - - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - - vmovdqu (%r8),%xmm1 - addq $-128,%rsp - movl 12(%r8),%ebx - leaq .Lbswap_mask(%rip),%r11 - leaq -128(%rcx),%r14 - movq $0xf80,%r15 - leaq 128(%rcx),%rcx - vmovdqu (%r11),%xmm0 - andq $-128,%rsp - movl 240-128(%rcx),%ebp - - andq %r15,%r14 - andq %rsp,%r15 - subq %r14,%r15 - jc .Lenc_no_key_aliasing - cmpq $768,%r15 - jnc .Lenc_no_key_aliasing - subq %r15,%rsp -.Lenc_no_key_aliasing: - - leaq (%rsi),%r14 - leaq -192(%rsi,%rdx,1),%r15 - shrq $4,%rdx - - call _aesni_ctr32_6x - vpshufb %xmm0,%xmm9,%xmm8 - vpshufb %xmm0,%xmm10,%xmm2 - vmovdqu %xmm8,112(%rsp) - vpshufb %xmm0,%xmm11,%xmm4 - vmovdqu %xmm2,96(%rsp) - vpshufb %xmm0,%xmm12,%xmm5 - vmovdqu %xmm4,80(%rsp) - vpshufb %xmm0,%xmm13,%xmm6 - vmovdqu %xmm5,64(%rsp) - vpshufb %xmm0,%xmm14,%xmm7 - vmovdqu %xmm6,48(%rsp) - - call _aesni_ctr32_6x - - vmovdqu (%r9),%xmm8 - leaq 32+32(%r9),%r9 - subq $12,%rdx - movq $192,%r10 - vpshufb %xmm0,%xmm8,%xmm8 - - call _aesni_ctr32_ghash_6x - vmovdqu 32(%rsp),%xmm7 - vmovdqu (%r11),%xmm0 - vmovdqu 0-32(%r9),%xmm3 - vpunpckhqdq %xmm7,%xmm7,%xmm1 - vmovdqu 32-32(%r9),%xmm15 - vmovups %xmm9,-96(%rsi) - vpshufb %xmm0,%xmm9,%xmm9 - vpxor %xmm7,%xmm1,%xmm1 - vmovups %xmm10,-80(%rsi) - vpshufb %xmm0,%xmm10,%xmm10 - vmovups %xmm11,-64(%rsi) - vpshufb %xmm0,%xmm11,%xmm11 - vmovups %xmm12,-48(%rsi) - vpshufb %xmm0,%xmm12,%xmm12 - vmovups %xmm13,-32(%rsi) - vpshufb %xmm0,%xmm13,%xmm13 - vmovups %xmm14,-16(%rsi) - vpshufb %xmm0,%xmm14,%xmm14 - vmovdqu %xmm9,16(%rsp) - vmovdqu 48(%rsp),%xmm6 - vmovdqu 16-32(%r9),%xmm0 - vpunpckhqdq %xmm6,%xmm6,%xmm2 - vpclmulqdq $0x00,%xmm3,%xmm7,%xmm5 - vpxor %xmm6,%xmm2,%xmm2 - vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1 - - vmovdqu 64(%rsp),%xmm9 - vpclmulqdq $0x00,%xmm0,%xmm6,%xmm4 - vmovdqu 48-32(%r9),%xmm3 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm9,%xmm9,%xmm5 - vpclmulqdq $0x11,%xmm0,%xmm6,%xmm6 - vpxor %xmm9,%xmm5,%xmm5 - vpxor %xmm7,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2 - vmovdqu 80-32(%r9),%xmm15 - vpxor %xmm1,%xmm2,%xmm2 - - vmovdqu 80(%rsp),%xmm1 - vpclmulqdq $0x00,%xmm3,%xmm9,%xmm7 - vmovdqu 64-32(%r9),%xmm0 - vpxor %xmm4,%xmm7,%xmm7 - vpunpckhqdq %xmm1,%xmm1,%xmm4 - vpclmulqdq $0x11,%xmm3,%xmm9,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpxor %xmm6,%xmm9,%xmm9 - vpclmulqdq $0x00,%xmm15,%xmm5,%xmm5 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 96(%rsp),%xmm2 - vpclmulqdq $0x00,%xmm0,%xmm1,%xmm6 - vmovdqu 96-32(%r9),%xmm3 - vpxor %xmm7,%xmm6,%xmm6 - vpunpckhqdq %xmm2,%xmm2,%xmm7 - vpclmulqdq $0x11,%xmm0,%xmm1,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpxor %xmm9,%xmm1,%xmm1 - vpclmulqdq $0x10,%xmm15,%xmm4,%xmm4 - vmovdqu 128-32(%r9),%xmm15 - vpxor %xmm5,%xmm4,%xmm4 - - vpxor 112(%rsp),%xmm8,%xmm8 - vpclmulqdq $0x00,%xmm3,%xmm2,%xmm5 - vmovdqu 112-32(%r9),%xmm0 - vpunpckhqdq %xmm8,%xmm8,%xmm9 - vpxor %xmm6,%xmm5,%xmm5 - vpclmulqdq $0x11,%xmm3,%xmm2,%xmm2 - vpxor %xmm8,%xmm9,%xmm9 - vpxor %xmm1,%xmm2,%xmm2 - vpclmulqdq $0x00,%xmm15,%xmm7,%xmm7 - vpxor %xmm4,%xmm7,%xmm4 - - vpclmulqdq $0x00,%xmm0,%xmm8,%xmm6 - vmovdqu 0-32(%r9),%xmm3 - vpunpckhqdq %xmm14,%xmm14,%xmm1 - vpclmulqdq $0x11,%xmm0,%xmm8,%xmm8 - vpxor %xmm14,%xmm1,%xmm1 - vpxor %xmm5,%xmm6,%xmm5 - vpclmulqdq $0x10,%xmm15,%xmm9,%xmm9 - vmovdqu 32-32(%r9),%xmm15 - vpxor %xmm2,%xmm8,%xmm7 - vpxor %xmm4,%xmm9,%xmm6 - - vmovdqu 16-32(%r9),%xmm0 - vpxor %xmm5,%xmm7,%xmm9 - vpclmulqdq $0x00,%xmm3,%xmm14,%xmm4 - vpxor %xmm9,%xmm6,%xmm6 - vpunpckhqdq %xmm13,%xmm13,%xmm2 - vpclmulqdq $0x11,%xmm3,%xmm14,%xmm14 - vpxor %xmm13,%xmm2,%xmm2 - vpslldq $8,%xmm6,%xmm9 - vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1 - vpxor %xmm9,%xmm5,%xmm8 - vpsrldq $8,%xmm6,%xmm6 - vpxor %xmm6,%xmm7,%xmm7 - - vpclmulqdq $0x00,%xmm0,%xmm13,%xmm5 - vmovdqu 48-32(%r9),%xmm3 - vpxor %xmm4,%xmm5,%xmm5 - vpunpckhqdq %xmm12,%xmm12,%xmm9 - vpclmulqdq $0x11,%xmm0,%xmm13,%xmm13 - vpxor %xmm12,%xmm9,%xmm9 - vpxor %xmm14,%xmm13,%xmm13 - vpalignr $8,%xmm8,%xmm8,%xmm14 - vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2 - vmovdqu 80-32(%r9),%xmm15 - vpxor %xmm1,%xmm2,%xmm2 - - vpclmulqdq $0x00,%xmm3,%xmm12,%xmm4 - vmovdqu 64-32(%r9),%xmm0 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm11,%xmm11,%xmm1 - vpclmulqdq $0x11,%xmm3,%xmm12,%xmm12 - vpxor %xmm11,%xmm1,%xmm1 - vpxor %xmm13,%xmm12,%xmm12 - vxorps 16(%rsp),%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm15,%xmm9,%xmm9 - vpxor %xmm2,%xmm9,%xmm9 - - vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8 - vxorps %xmm14,%xmm8,%xmm8 - - vpclmulqdq $0x00,%xmm0,%xmm11,%xmm5 - vmovdqu 96-32(%r9),%xmm3 - vpxor %xmm4,%xmm5,%xmm5 - vpunpckhqdq %xmm10,%xmm10,%xmm2 - vpclmulqdq $0x11,%xmm0,%xmm11,%xmm11 - vpxor %xmm10,%xmm2,%xmm2 - vpalignr $8,%xmm8,%xmm8,%xmm14 - vpxor %xmm12,%xmm11,%xmm11 - vpclmulqdq $0x10,%xmm15,%xmm1,%xmm1 - vmovdqu 128-32(%r9),%xmm15 - vpxor %xmm9,%xmm1,%xmm1 - - vxorps %xmm7,%xmm14,%xmm14 - vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8 - vxorps %xmm14,%xmm8,%xmm8 - - vpclmulqdq $0x00,%xmm3,%xmm10,%xmm4 - vmovdqu 112-32(%r9),%xmm0 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm8,%xmm8,%xmm9 - vpclmulqdq $0x11,%xmm3,%xmm10,%xmm10 - vpxor %xmm8,%xmm9,%xmm9 - vpxor %xmm11,%xmm10,%xmm10 - vpclmulqdq $0x00,%xmm15,%xmm2,%xmm2 - vpxor %xmm1,%xmm2,%xmm2 - - vpclmulqdq $0x00,%xmm0,%xmm8,%xmm5 - vpclmulqdq $0x11,%xmm0,%xmm8,%xmm7 - vpxor %xmm4,%xmm5,%xmm5 - vpclmulqdq $0x10,%xmm15,%xmm9,%xmm6 - vpxor %xmm10,%xmm7,%xmm7 - vpxor %xmm2,%xmm6,%xmm6 - - vpxor %xmm5,%xmm7,%xmm4 - vpxor %xmm4,%xmm6,%xmm6 - vpslldq $8,%xmm6,%xmm1 - vmovdqu 16(%r11),%xmm3 - vpsrldq $8,%xmm6,%xmm6 - vpxor %xmm1,%xmm5,%xmm8 - vpxor %xmm6,%xmm7,%xmm7 - - vpalignr $8,%xmm8,%xmm8,%xmm2 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8 - vpxor %xmm2,%xmm8,%xmm8 - - vpalignr $8,%xmm8,%xmm8,%xmm2 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8 - vpxor %xmm7,%xmm2,%xmm2 - vpxor %xmm2,%xmm8,%xmm8 - vpshufb (%r11),%xmm8,%xmm8 - vmovdqu %xmm8,-64(%r9) - - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lgcm_enc_abort: - movq %r10,%rax - .byte 0xf3,0xc3 -.size aesni_gcm_encrypt,.-aesni_gcm_encrypt -.align 64 -.Lbswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.Lpoly: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -.Lone_msb: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -.Ltwo_lsb: -.byte 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.Lone_lsb: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108,101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/modes/ghash-x86_64.s b/deps/openssl/asm/x64-elf-gas/modes/ghash-x86_64.s deleted file mode 100644 index 10f5987415a1be..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/modes/ghash-x86_64.s +++ /dev/null @@ -1,1789 +0,0 @@ -.text - - -.globl gcm_gmult_4bit -.type gcm_gmult_4bit,@function -.align 16 -gcm_gmult_4bit: - pushq %rbx - pushq %rbp - pushq %r12 -.Lgmult_prologue: - - movzbq 15(%rdi),%r8 - leaq .Lrem_4bit(%rip),%r11 - xorq %rax,%rax - xorq %rbx,%rbx - movb %r8b,%al - movb %r8b,%bl - shlb $4,%al - movq $14,%rcx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - movq %r8,%rdx - jmp .Loop1 - -.align 16 -.Loop1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - movb (%rdi,%rcx,1),%al - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - movb %al,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - shlb $4,%al - xorq %r10,%r8 - decq %rcx - js .Lbreak1 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - jmp .Loop1 - -.align 16 -.Lbreak1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - xorq %r10,%r8 - xorq (%r11,%rdx,8),%r9 - - bswapq %r8 - bswapq %r9 - movq %r8,8(%rdi) - movq %r9,(%rdi) - - movq 16(%rsp),%rbx - leaq 24(%rsp),%rsp -.Lgmult_epilogue: - .byte 0xf3,0xc3 -.size gcm_gmult_4bit,.-gcm_gmult_4bit -.globl gcm_ghash_4bit -.type gcm_ghash_4bit,@function -.align 16 -gcm_ghash_4bit: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $280,%rsp -.Lghash_prologue: - movq %rdx,%r14 - movq %rcx,%r15 - subq $-128,%rsi - leaq 16+128(%rsp),%rbp - xorl %edx,%edx - movq 0+0-128(%rsi),%r8 - movq 0+8-128(%rsi),%rax - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq 16+0-128(%rsi),%r9 - shlb $4,%dl - movq 16+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,0(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,0(%rbp) - movq 32+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,0-128(%rbp) - movq 32+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,1(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,8(%rbp) - movq 48+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,8-128(%rbp) - movq 48+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,2(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,16(%rbp) - movq 64+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,16-128(%rbp) - movq 64+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,3(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,24(%rbp) - movq 80+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,24-128(%rbp) - movq 80+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,4(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,32(%rbp) - movq 96+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,32-128(%rbp) - movq 96+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,5(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,40(%rbp) - movq 112+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,40-128(%rbp) - movq 112+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,6(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,48(%rbp) - movq 128+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,48-128(%rbp) - movq 128+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,7(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,56(%rbp) - movq 144+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,56-128(%rbp) - movq 144+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,8(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,64(%rbp) - movq 160+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,64-128(%rbp) - movq 160+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,9(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,72(%rbp) - movq 176+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,72-128(%rbp) - movq 176+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,10(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,80(%rbp) - movq 192+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,80-128(%rbp) - movq 192+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,11(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,88(%rbp) - movq 208+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,88-128(%rbp) - movq 208+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,12(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,96(%rbp) - movq 224+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,96-128(%rbp) - movq 224+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,13(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,104(%rbp) - movq 240+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,104-128(%rbp) - movq 240+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,14(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,112(%rbp) - shlb $4,%dl - movq %rax,112-128(%rbp) - shlq $60,%r10 - movb %dl,15(%rsp) - orq %r10,%rbx - movq %r9,120(%rbp) - movq %rbx,120-128(%rbp) - addq $-128,%rsi - movq 8(%rdi),%r8 - movq 0(%rdi),%r9 - addq %r14,%r15 - leaq .Lrem_8bit(%rip),%r11 - jmp .Louter_loop -.align 16 -.Louter_loop: - xorq (%r14),%r9 - movq 8(%r14),%rdx - leaq 16(%r14),%r14 - xorq %r8,%rdx - movq %r9,(%rdi) - movq %rdx,8(%rdi) - shrq $32,%rdx - xorq %rax,%rax - roll $8,%edx - movb %dl,%al - movzbl %dl,%ebx - shlb $4,%al - shrl $4,%ebx - roll $8,%edx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - movb %dl,%al - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - xorq %r8,%r12 - movq %r9,%r10 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 8(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 0(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - andl $240,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl -4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - movzwq (%r11,%r12,2),%r12 - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - shlq $48,%r12 - xorq %r10,%r8 - xorq %r12,%r9 - movzbq %r8b,%r13 - shrq $4,%r8 - movq %r9,%r10 - shlb $4,%r13b - shrq $4,%r9 - xorq 8(%rsi,%rcx,1),%r8 - movzwq (%r11,%r13,2),%r13 - shlq $60,%r10 - xorq (%rsi,%rcx,1),%r9 - xorq %r10,%r8 - shlq $48,%r13 - bswapq %r8 - xorq %r13,%r9 - bswapq %r9 - cmpq %r15,%r14 - jb .Louter_loop - movq %r8,8(%rdi) - movq %r9,(%rdi) - - leaq 280(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lghash_epilogue: - .byte 0xf3,0xc3 -.size gcm_ghash_4bit,.-gcm_ghash_4bit -.globl gcm_init_clmul -.type gcm_init_clmul,@function -.align 16 -gcm_init_clmul: -.L_init_clmul: - movdqu (%rsi),%xmm2 - pshufd $78,%xmm2,%xmm2 - - - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - - - pand .L0x1c2_polynomial(%rip),%xmm5 - pxor %xmm5,%xmm2 - - - pshufd $78,%xmm2,%xmm6 - movdqa %xmm2,%xmm0 - pxor %xmm2,%xmm6 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,0(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%rdi) - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm5 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm5,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm5,%xmm3 - movdqu %xmm5,48(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,64(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,80(%rdi) - .byte 0xf3,0xc3 -.size gcm_init_clmul,.-gcm_init_clmul -.globl gcm_gmult_clmul -.type gcm_gmult_clmul,@function -.align 16 -gcm_gmult_clmul: -.L_gmult_clmul: - movdqu (%rdi),%xmm0 - movdqa .Lbswap_mask(%rip),%xmm5 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm4 -.byte 102,15,56,0,197 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 -.size gcm_gmult_clmul,.-gcm_gmult_clmul -.globl gcm_ghash_clmul -.type gcm_ghash_clmul,@function -.align 32 -gcm_ghash_clmul: -.L_ghash_clmul: - movdqa .Lbswap_mask(%rip),%xmm10 - - movdqu (%rdi),%xmm0 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm7 -.byte 102,65,15,56,0,194 - - subq $0x10,%rcx - jz .Lodd_tail - - movdqu 16(%rsi),%xmm6 - movl OPENSSL_ia32cap_P+4(%rip),%eax - cmpq $0x30,%rcx - jb .Lskip4x - - andl $71303168,%eax - cmpl $4194304,%eax - je .Lskip4x - - subq $0x30,%rcx - movq $0xA040608020C0E000,%rax - movdqu 48(%rsi),%xmm14 - movdqu 64(%rsi),%xmm15 - - - - - movdqu 48(%rdx),%xmm3 - movdqu 32(%rdx),%xmm11 -.byte 102,65,15,56,0,218 -.byte 102,69,15,56,0,218 - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm11,%xmm12 -.byte 102,68,15,58,68,222,0 -.byte 102,68,15,58,68,238,17 -.byte 102,68,15,58,68,231,16 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 - xorps %xmm12,%xmm4 - - movdqu 16(%rdx),%xmm11 - movdqu 0(%rdx),%xmm8 -.byte 102,69,15,56,0,218 -.byte 102,69,15,56,0,194 - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm8,%xmm0 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 -.byte 102,69,15,58,68,238,17 -.byte 102,68,15,58,68,231,0 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jc .Ltail4x - - jmp .Lmod4_loop -.align 32 -.Lmod4_loop: -.byte 102,65,15,58,68,199,0 - xorps %xmm12,%xmm4 - movdqu 48(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,65,15,58,68,207,17 - xorps %xmm3,%xmm0 - movdqu 32(%rdx),%xmm3 - movdqa %xmm11,%xmm13 -.byte 102,68,15,58,68,199,16 - pshufd $78,%xmm11,%xmm12 - xorps %xmm5,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,65,15,56,0,218 - movups 32(%rsi),%xmm7 - xorps %xmm4,%xmm8 -.byte 102,68,15,58,68,218,0 - pshufd $78,%xmm3,%xmm4 - - pxor %xmm0,%xmm8 - movdqa %xmm3,%xmm5 - pxor %xmm1,%xmm8 - pxor %xmm3,%xmm4 - movdqa %xmm8,%xmm9 -.byte 102,68,15,58,68,234,17 - pslldq $8,%xmm8 - psrldq $8,%xmm9 - pxor %xmm8,%xmm0 - movdqa .L7_mask(%rip),%xmm8 - pxor %xmm9,%xmm1 -.byte 102,76,15,110,200 - - pand %xmm0,%xmm8 -.byte 102,69,15,56,0,200 - pxor %xmm0,%xmm9 -.byte 102,68,15,58,68,231,0 - psllq $57,%xmm9 - movdqa %xmm9,%xmm8 - pslldq $8,%xmm9 -.byte 102,15,58,68,222,0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - movdqu 0(%rdx),%xmm8 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,238,17 - xorps %xmm11,%xmm3 - movdqu 16(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,15,58,68,231,16 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 -.byte 102,69,15,56,0,194 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - - movdqa %xmm11,%xmm13 - pxor %xmm12,%xmm4 - pshufd $78,%xmm11,%xmm12 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm1 -.byte 102,69,15,58,68,238,17 - xorps %xmm11,%xmm3 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 - -.byte 102,68,15,58,68,231,0 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jnc .Lmod4_loop - -.Ltail4x: -.byte 102,65,15,58,68,199,0 -.byte 102,65,15,58,68,207,17 -.byte 102,68,15,58,68,199,16 - xorps %xmm12,%xmm4 - xorps %xmm3,%xmm0 - xorps %xmm5,%xmm1 - pxor %xmm0,%xmm1 - pxor %xmm4,%xmm8 - - pxor %xmm1,%xmm8 - pxor %xmm0,%xmm1 - - movdqa %xmm8,%xmm9 - psrldq $8,%xmm8 - pslldq $8,%xmm9 - pxor %xmm8,%xmm1 - pxor %xmm9,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - addq $0x40,%rcx - jz .Ldone - movdqu 32(%rsi),%xmm7 - subq $0x10,%rcx - jz .Lodd_tail -.Lskip4x: - - - - - - movdqu (%rdx),%xmm8 - movdqu 16(%rdx),%xmm3 -.byte 102,69,15,56,0,194 -.byte 102,65,15,56,0,218 - pxor %xmm8,%xmm0 - - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - leaq 32(%rdx),%rdx - nop - subq $0x20,%rcx - jbe .Leven_tail - nop - jmp .Lmod_loop - -.align 32 -.Lmod_loop: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - movdqu (%rdx),%xmm9 - pxor %xmm0,%xmm8 -.byte 102,69,15,56,0,202 - movdqu 16(%rdx),%xmm3 - - pxor %xmm1,%xmm8 - pxor %xmm9,%xmm1 - pxor %xmm8,%xmm4 -.byte 102,65,15,56,0,218 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm3,%xmm5 - - movdqa %xmm0,%xmm9 - movdqa %xmm0,%xmm8 - psllq $5,%xmm0 - pxor %xmm0,%xmm8 -.byte 102,15,58,68,218,0 - psllq $1,%xmm0 - pxor %xmm8,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm8 - pslldq $8,%xmm0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pshufd $78,%xmm5,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm5,%xmm4 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,234,17 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - pxor %xmm9,%xmm0 - leaq 32(%rdx),%rdx - psrlq $1,%xmm0 -.byte 102,15,58,68,231,0 - pxor %xmm1,%xmm0 - - subq $0x20,%rcx - ja .Lmod_loop - -.Leven_tail: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm1,%xmm8 - pxor %xmm8,%xmm4 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testq %rcx,%rcx - jnz .Ldone - -.Lodd_tail: - movdqu (%rdx),%xmm8 -.byte 102,69,15,56,0,194 - pxor %xmm8,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,223,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.Ldone: -.byte 102,65,15,56,0,194 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 -.size gcm_ghash_clmul,.-gcm_ghash_clmul -.globl gcm_init_avx -.type gcm_init_avx,@function -.align 32 -gcm_init_avx: - vzeroupper - - vmovdqu (%rsi),%xmm2 - vpshufd $78,%xmm2,%xmm2 - - - vpshufd $255,%xmm2,%xmm4 - vpsrlq $63,%xmm2,%xmm3 - vpsllq $1,%xmm2,%xmm2 - vpxor %xmm5,%xmm5,%xmm5 - vpcmpgtd %xmm4,%xmm5,%xmm5 - vpslldq $8,%xmm3,%xmm3 - vpor %xmm3,%xmm2,%xmm2 - - - vpand .L0x1c2_polynomial(%rip),%xmm5,%xmm5 - vpxor %xmm5,%xmm2,%xmm2 - - vpunpckhqdq %xmm2,%xmm2,%xmm6 - vmovdqa %xmm2,%xmm0 - vpxor %xmm2,%xmm6,%xmm6 - movq $4,%r10 - jmp .Linit_start_avx -.align 32 -.Linit_loop_avx: - vpalignr $8,%xmm3,%xmm4,%xmm5 - vmovdqu %xmm5,-16(%rdi) - vpunpckhqdq %xmm0,%xmm0,%xmm3 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm3,%xmm3 - vpxor %xmm0,%xmm1,%xmm4 - vpxor %xmm4,%xmm3,%xmm3 - - vpslldq $8,%xmm3,%xmm4 - vpsrldq $8,%xmm3,%xmm3 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm3,%xmm1,%xmm1 - vpsllq $57,%xmm0,%xmm3 - vpsllq $62,%xmm0,%xmm4 - vpxor %xmm3,%xmm4,%xmm4 - vpsllq $63,%xmm0,%xmm3 - vpxor %xmm3,%xmm4,%xmm4 - vpslldq $8,%xmm4,%xmm3 - vpsrldq $8,%xmm4,%xmm4 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm4,%xmm1,%xmm1 - - vpsrlq $1,%xmm0,%xmm4 - vpxor %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $5,%xmm4,%xmm4 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $1,%xmm0,%xmm0 - vpxor %xmm1,%xmm0,%xmm0 -.Linit_start_avx: - vmovdqa %xmm0,%xmm5 - vpunpckhqdq %xmm0,%xmm0,%xmm3 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm3,%xmm3 - vpxor %xmm0,%xmm1,%xmm4 - vpxor %xmm4,%xmm3,%xmm3 - - vpslldq $8,%xmm3,%xmm4 - vpsrldq $8,%xmm3,%xmm3 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm3,%xmm1,%xmm1 - vpsllq $57,%xmm0,%xmm3 - vpsllq $62,%xmm0,%xmm4 - vpxor %xmm3,%xmm4,%xmm4 - vpsllq $63,%xmm0,%xmm3 - vpxor %xmm3,%xmm4,%xmm4 - vpslldq $8,%xmm4,%xmm3 - vpsrldq $8,%xmm4,%xmm4 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm4,%xmm1,%xmm1 - - vpsrlq $1,%xmm0,%xmm4 - vpxor %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $5,%xmm4,%xmm4 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $1,%xmm0,%xmm0 - vpxor %xmm1,%xmm0,%xmm0 - vpshufd $78,%xmm5,%xmm3 - vpshufd $78,%xmm0,%xmm4 - vpxor %xmm5,%xmm3,%xmm3 - vmovdqu %xmm5,0(%rdi) - vpxor %xmm0,%xmm4,%xmm4 - vmovdqu %xmm0,16(%rdi) - leaq 48(%rdi),%rdi - subq $1,%r10 - jnz .Linit_loop_avx - - vpalignr $8,%xmm4,%xmm3,%xmm5 - vmovdqu %xmm5,-16(%rdi) - - vzeroupper - .byte 0xf3,0xc3 -.size gcm_init_avx,.-gcm_init_avx -.globl gcm_gmult_avx -.type gcm_gmult_avx,@function -.align 32 -gcm_gmult_avx: - jmp .L_gmult_clmul -.size gcm_gmult_avx,.-gcm_gmult_avx -.globl gcm_ghash_avx -.type gcm_ghash_avx,@function -.align 32 -gcm_ghash_avx: - vzeroupper - - vmovdqu (%rdi),%xmm10 - leaq .L0x1c2_polynomial(%rip),%r10 - leaq 64(%rsi),%rsi - vmovdqu .Lbswap_mask(%rip),%xmm13 - vpshufb %xmm13,%xmm10,%xmm10 - cmpq $0x80,%rcx - jb .Lshort_avx - subq $0x80,%rcx - - vmovdqu 112(%rdx),%xmm14 - vmovdqu 0-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm14 - vmovdqu 32-64(%rsi),%xmm7 - - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vmovdqu 96(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm14,%xmm9,%xmm9 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 16-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vmovdqu 80(%rdx),%xmm14 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 48-64(%rsi),%xmm6 - vpxor %xmm14,%xmm9,%xmm9 - vmovdqu 64(%rdx),%xmm15 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 80-64(%rsi),%xmm7 - - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vmovdqu 48(%rdx),%xmm14 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm4,%xmm1,%xmm1 - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 96-64(%rsi),%xmm6 - vpxor %xmm5,%xmm2,%xmm2 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 128-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu 32(%rdx),%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vmovdqu 16(%rdx),%xmm14 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm4,%xmm1,%xmm1 - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 144-64(%rsi),%xmm6 - vpxor %xmm5,%xmm2,%xmm2 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 176-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu (%rdx),%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 160-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x10,%xmm7,%xmm9,%xmm2 - - leaq 128(%rdx),%rdx - cmpq $0x80,%rcx - jb .Ltail_avx - - vpxor %xmm10,%xmm15,%xmm15 - subq $0x80,%rcx - jmp .Loop8x_avx - -.align 32 -.Loop8x_avx: - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vmovdqu 112(%rdx),%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpxor %xmm15,%xmm8,%xmm8 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm10 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm11 - vmovdqu 0-64(%rsi),%xmm6 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm12 - vmovdqu 32-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu 96(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm3,%xmm10,%xmm10 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vxorps %xmm4,%xmm11,%xmm11 - vmovdqu 16-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm5,%xmm12,%xmm12 - vxorps %xmm15,%xmm8,%xmm8 - - vmovdqu 80(%rdx),%xmm14 - vpxor %xmm10,%xmm12,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm11,%xmm12,%xmm12 - vpslldq $8,%xmm12,%xmm9 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vpsrldq $8,%xmm12,%xmm12 - vpxor %xmm9,%xmm10,%xmm10 - vmovdqu 48-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm14 - vxorps %xmm12,%xmm11,%xmm11 - vpxor %xmm1,%xmm4,%xmm4 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 80-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 64(%rdx),%xmm15 - vpalignr $8,%xmm10,%xmm10,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm4,%xmm1,%xmm1 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vxorps %xmm15,%xmm8,%xmm8 - vpxor %xmm5,%xmm2,%xmm2 - - vmovdqu 48(%rdx),%xmm14 - vpclmulqdq $0x10,(%r10),%xmm10,%xmm10 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 96-64(%rsi),%xmm6 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 128-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 32(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm4,%xmm1,%xmm1 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - vpxor %xmm5,%xmm2,%xmm2 - vxorps %xmm12,%xmm10,%xmm10 - - vmovdqu 16(%rdx),%xmm14 - vpalignr $8,%xmm10,%xmm10,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 144-64(%rsi),%xmm6 - vpclmulqdq $0x10,(%r10),%xmm10,%xmm10 - vxorps %xmm11,%xmm12,%xmm12 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 176-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu (%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 160-64(%rsi),%xmm6 - vpxor %xmm12,%xmm15,%xmm15 - vpclmulqdq $0x10,%xmm7,%xmm9,%xmm2 - vpxor %xmm10,%xmm15,%xmm15 - - leaq 128(%rdx),%rdx - subq $0x80,%rcx - jnc .Loop8x_avx - - addq $0x80,%rcx - jmp .Ltail_no_xor_avx - -.align 32 -.Lshort_avx: - vmovdqu -16(%rdx,%rcx,1),%xmm14 - leaq (%rdx,%rcx,1),%rdx - vmovdqu 0-64(%rsi),%xmm6 - vmovdqu 32-64(%rsi),%xmm7 - vpshufb %xmm13,%xmm14,%xmm15 - - vmovdqa %xmm0,%xmm3 - vmovdqa %xmm1,%xmm4 - vmovdqa %xmm2,%xmm5 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -32(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 16-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -48(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 48-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovdqu 80-64(%rsi),%xmm7 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -64(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -80(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 96-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovdqu 128-64(%rsi),%xmm7 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -96(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz .Ltail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -112(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 144-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovq 184-64(%rsi),%xmm7 - subq $0x10,%rcx - jmp .Ltail_avx - -.align 32 -.Ltail_avx: - vpxor %xmm10,%xmm15,%xmm15 -.Ltail_no_xor_avx: - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - - vmovdqu (%r10),%xmm12 - - vpxor %xmm0,%xmm3,%xmm10 - vpxor %xmm1,%xmm4,%xmm11 - vpxor %xmm2,%xmm5,%xmm5 - - vpxor %xmm10,%xmm5,%xmm5 - vpxor %xmm11,%xmm5,%xmm5 - vpslldq $8,%xmm5,%xmm9 - vpsrldq $8,%xmm5,%xmm5 - vpxor %xmm9,%xmm10,%xmm10 - vpxor %xmm5,%xmm11,%xmm11 - - vpclmulqdq $0x10,%xmm12,%xmm10,%xmm9 - vpalignr $8,%xmm10,%xmm10,%xmm10 - vpxor %xmm9,%xmm10,%xmm10 - - vpclmulqdq $0x10,%xmm12,%xmm10,%xmm9 - vpalignr $8,%xmm10,%xmm10,%xmm10 - vpxor %xmm11,%xmm10,%xmm10 - vpxor %xmm9,%xmm10,%xmm10 - - cmpq $0,%rcx - jne .Lshort_avx - - vpshufb %xmm13,%xmm10,%xmm10 - vmovdqu %xmm10,(%rdi) - vzeroupper - .byte 0xf3,0xc3 -.size gcm_ghash_avx,.-gcm_ghash_avx -.align 64 -.Lbswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.L0x1c2_polynomial: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -.L7_mask: -.long 7,0,7,0 -.L7_mask_poly: -.long 7,0,450,0 -.align 64 -.type .Lrem_4bit,@object -.Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.type .Lrem_8bit,@object -.Lrem_8bit: -.value 0x0000,0x01C2,0x0384,0x0246,0x0708,0x06CA,0x048C,0x054E -.value 0x0E10,0x0FD2,0x0D94,0x0C56,0x0918,0x08DA,0x0A9C,0x0B5E -.value 0x1C20,0x1DE2,0x1FA4,0x1E66,0x1B28,0x1AEA,0x18AC,0x196E -.value 0x1230,0x13F2,0x11B4,0x1076,0x1538,0x14FA,0x16BC,0x177E -.value 0x3840,0x3982,0x3BC4,0x3A06,0x3F48,0x3E8A,0x3CCC,0x3D0E -.value 0x3650,0x3792,0x35D4,0x3416,0x3158,0x309A,0x32DC,0x331E -.value 0x2460,0x25A2,0x27E4,0x2626,0x2368,0x22AA,0x20EC,0x212E -.value 0x2A70,0x2BB2,0x29F4,0x2836,0x2D78,0x2CBA,0x2EFC,0x2F3E -.value 0x7080,0x7142,0x7304,0x72C6,0x7788,0x764A,0x740C,0x75CE -.value 0x7E90,0x7F52,0x7D14,0x7CD6,0x7998,0x785A,0x7A1C,0x7BDE -.value 0x6CA0,0x6D62,0x6F24,0x6EE6,0x6BA8,0x6A6A,0x682C,0x69EE -.value 0x62B0,0x6372,0x6134,0x60F6,0x65B8,0x647A,0x663C,0x67FE -.value 0x48C0,0x4902,0x4B44,0x4A86,0x4FC8,0x4E0A,0x4C4C,0x4D8E -.value 0x46D0,0x4712,0x4554,0x4496,0x41D8,0x401A,0x425C,0x439E -.value 0x54E0,0x5522,0x5764,0x56A6,0x53E8,0x522A,0x506C,0x51AE -.value 0x5AF0,0x5B32,0x5974,0x58B6,0x5DF8,0x5C3A,0x5E7C,0x5FBE -.value 0xE100,0xE0C2,0xE284,0xE346,0xE608,0xE7CA,0xE58C,0xE44E -.value 0xEF10,0xEED2,0xEC94,0xED56,0xE818,0xE9DA,0xEB9C,0xEA5E -.value 0xFD20,0xFCE2,0xFEA4,0xFF66,0xFA28,0xFBEA,0xF9AC,0xF86E -.value 0xF330,0xF2F2,0xF0B4,0xF176,0xF438,0xF5FA,0xF7BC,0xF67E -.value 0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A,0xDDCC,0xDC0E -.value 0xD750,0xD692,0xD4D4,0xD516,0xD058,0xD19A,0xD3DC,0xD21E -.value 0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E -.value 0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE3E -.value 0x9180,0x9042,0x9204,0x93C6,0x9688,0x974A,0x950C,0x94CE -.value 0x9F90,0x9E52,0x9C14,0x9DD6,0x9898,0x995A,0x9B1C,0x9ADE -.value 0x8DA0,0x8C62,0x8E24,0x8FE6,0x8AA8,0x8B6A,0x892C,0x88EE -.value 0x83B0,0x8272,0x8034,0x81F6,0x84B8,0x857A,0x873C,0x86FE -.value 0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A,0xAD4C,0xAC8E -.value 0xA7D0,0xA612,0xA454,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E -.value 0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE -.value 0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBEBE - -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/rc4/rc4-md5-x86_64.s b/deps/openssl/asm/x64-elf-gas/rc4/rc4-md5-x86_64.s deleted file mode 100644 index 9c7110f4ef09c3..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/rc4/rc4-md5-x86_64.s +++ /dev/null @@ -1,1259 +0,0 @@ -.text -.align 16 - -.globl rc4_md5_enc -.type rc4_md5_enc,@function -rc4_md5_enc: - cmpq $0,%r9 - je .Labort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $40,%rsp -.Lbody: - movq %rcx,%r11 - movq %r9,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %r8,%r15 - xorq %rbp,%rbp - xorq %rcx,%rcx - - leaq 8(%rdi),%rdi - movb -8(%rdi),%bpl - movb -4(%rdi),%cl - - incb %bpl - subq %r13,%r14 - movl (%rdi,%rbp,4),%eax - addb %al,%cl - leaq (%rdi,%rbp,4),%rsi - shlq $6,%r12 - addq %r15,%r12 - movq %r12,16(%rsp) - - movq %r11,24(%rsp) - movl 0(%r11),%r8d - movl 4(%r11),%r9d - movl 8(%r11),%r10d - movl 12(%r11),%r11d - jmp .Loop - -.align 16 -.Loop: - movl %r8d,0(%rsp) - movl %r9d,4(%rsp) - movl %r10d,8(%rsp) - movl %r11d,%r12d - movl %r11d,12(%rsp) - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 0(%r15),%r8d - addb %dl,%al - movl 4(%rsi),%ebx - addl $3614090360,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,0(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 4(%r15),%r11d - addb %dl,%bl - movl 8(%rsi),%eax - addl $3905402710,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,4(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 8(%r15),%r10d - addb %dl,%al - movl 12(%rsi),%ebx - addl $606105819,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,8(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 12(%r15),%r9d - addb %dl,%bl - movl 16(%rsi),%eax - addl $3250441966,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,12(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 16(%r15),%r8d - addb %dl,%al - movl 20(%rsi),%ebx - addl $4118548399,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,16(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 20(%r15),%r11d - addb %dl,%bl - movl 24(%rsi),%eax - addl $1200080426,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,20(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 24(%r15),%r10d - addb %dl,%al - movl 28(%rsi),%ebx - addl $2821735955,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,24(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 28(%r15),%r9d - addb %dl,%bl - movl 32(%rsi),%eax - addl $4249261313,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,28(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 32(%r15),%r8d - addb %dl,%al - movl 36(%rsi),%ebx - addl $1770035416,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,32(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 36(%r15),%r11d - addb %dl,%bl - movl 40(%rsi),%eax - addl $2336552879,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,36(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 40(%r15),%r10d - addb %dl,%al - movl 44(%rsi),%ebx - addl $4294925233,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,40(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 44(%r15),%r9d - addb %dl,%bl - movl 48(%rsi),%eax - addl $2304563134,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,44(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 48(%r15),%r8d - addb %dl,%al - movl 52(%rsi),%ebx - addl $1804603682,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,48(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 52(%r15),%r11d - addb %dl,%bl - movl 56(%rsi),%eax - addl $4254626195,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,52(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 56(%r15),%r10d - addb %dl,%al - movl 60(%rsi),%ebx - addl $2792965006,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,56(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu (%r13),%xmm2 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 60(%r15),%r9d - addb %dl,%bl - movl 64(%rsi),%eax - addl $1236535329,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,60(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r10d,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - psllq $8,%xmm1 - pxor %xmm0,%xmm2 - pxor %xmm1,%xmm2 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 4(%r15),%r8d - addb %dl,%al - movl 68(%rsi),%ebx - addl $4129170786,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,64(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 24(%r15),%r11d - addb %dl,%bl - movl 72(%rsi),%eax - addl $3225465664,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,68(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 44(%r15),%r10d - addb %dl,%al - movl 76(%rsi),%ebx - addl $643717713,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,72(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 0(%r15),%r9d - addb %dl,%bl - movl 80(%rsi),%eax - addl $3921069994,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,76(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 20(%r15),%r8d - addb %dl,%al - movl 84(%rsi),%ebx - addl $3593408605,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,80(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 40(%r15),%r11d - addb %dl,%bl - movl 88(%rsi),%eax - addl $38016083,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,84(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 60(%r15),%r10d - addb %dl,%al - movl 92(%rsi),%ebx - addl $3634488961,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,88(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 16(%r15),%r9d - addb %dl,%bl - movl 96(%rsi),%eax - addl $3889429448,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,92(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 36(%r15),%r8d - addb %dl,%al - movl 100(%rsi),%ebx - addl $568446438,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,96(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 56(%r15),%r11d - addb %dl,%bl - movl 104(%rsi),%eax - addl $3275163606,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,100(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 12(%r15),%r10d - addb %dl,%al - movl 108(%rsi),%ebx - addl $4107603335,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,104(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 32(%r15),%r9d - addb %dl,%bl - movl 112(%rsi),%eax - addl $1163531501,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,108(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 52(%r15),%r8d - addb %dl,%al - movl 116(%rsi),%ebx - addl $2850285829,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,112(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 8(%r15),%r11d - addb %dl,%bl - movl 120(%rsi),%eax - addl $4243563512,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,116(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 28(%r15),%r10d - addb %dl,%al - movl 124(%rsi),%ebx - addl $1735328473,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,120(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 16(%r13),%xmm3 - addb $32,%bpl - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 48(%r15),%r9d - addb %dl,%bl - movl 0(%rdi,%rbp,4),%eax - addl $2368359562,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,124(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r11d,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movq %rcx,%rsi - xorq %rcx,%rcx - movb %sil,%cl - leaq (%rdi,%rbp,4),%rsi - psllq $8,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 20(%r15),%r8d - addb %dl,%al - movl 4(%rsi),%ebx - addl $4294588738,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,0(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 32(%r15),%r11d - addb %dl,%bl - movl 8(%rsi),%eax - addl $2272392833,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,4(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 44(%r15),%r10d - addb %dl,%al - movl 12(%rsi),%ebx - addl $1839030562,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,8(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 56(%r15),%r9d - addb %dl,%bl - movl 16(%rsi),%eax - addl $4259657740,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,12(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 4(%r15),%r8d - addb %dl,%al - movl 20(%rsi),%ebx - addl $2763975236,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,16(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 16(%r15),%r11d - addb %dl,%bl - movl 24(%rsi),%eax - addl $1272893353,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,20(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 28(%r15),%r10d - addb %dl,%al - movl 28(%rsi),%ebx - addl $4139469664,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,24(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 40(%r15),%r9d - addb %dl,%bl - movl 32(%rsi),%eax - addl $3200236656,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,28(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 52(%r15),%r8d - addb %dl,%al - movl 36(%rsi),%ebx - addl $681279174,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,32(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 0(%r15),%r11d - addb %dl,%bl - movl 40(%rsi),%eax - addl $3936430074,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,36(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 12(%r15),%r10d - addb %dl,%al - movl 44(%rsi),%ebx - addl $3572445317,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,40(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 24(%r15),%r9d - addb %dl,%bl - movl 48(%rsi),%eax - addl $76029189,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,44(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 36(%r15),%r8d - addb %dl,%al - movl 52(%rsi),%ebx - addl $3654602809,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,48(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 48(%r15),%r11d - addb %dl,%bl - movl 56(%rsi),%eax - addl $3873151461,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,52(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 60(%r15),%r10d - addb %dl,%al - movl 60(%rsi),%ebx - addl $530742520,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,56(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 32(%r13),%xmm4 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 8(%r15),%r9d - addb %dl,%bl - movl 64(%rsi),%eax - addl $3299628645,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,60(%rsi) - addb %al,%cl - roll $23,%r9d - movl $-1,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - psllq $8,%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm1,%xmm4 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 0(%r15),%r8d - addb %dl,%al - movl 68(%rsi),%ebx - addl $4096336452,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,64(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 28(%r15),%r11d - addb %dl,%bl - movl 72(%rsi),%eax - addl $1126891415,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,68(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 56(%r15),%r10d - addb %dl,%al - movl 76(%rsi),%ebx - addl $2878612391,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,72(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 20(%r15),%r9d - addb %dl,%bl - movl 80(%rsi),%eax - addl $4237533241,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,76(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 48(%r15),%r8d - addb %dl,%al - movl 84(%rsi),%ebx - addl $1700485571,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,80(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 12(%r15),%r11d - addb %dl,%bl - movl 88(%rsi),%eax - addl $2399980690,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,84(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 40(%r15),%r10d - addb %dl,%al - movl 92(%rsi),%ebx - addl $4293915773,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,88(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 4(%r15),%r9d - addb %dl,%bl - movl 96(%rsi),%eax - addl $2240044497,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,92(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 32(%r15),%r8d - addb %dl,%al - movl 100(%rsi),%ebx - addl $1873313359,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,96(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 60(%r15),%r11d - addb %dl,%bl - movl 104(%rsi),%eax - addl $4264355552,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,100(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 24(%r15),%r10d - addb %dl,%al - movl 108(%rsi),%ebx - addl $2734768916,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,104(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 52(%r15),%r9d - addb %dl,%bl - movl 112(%rsi),%eax - addl $1309151649,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,108(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 16(%r15),%r8d - addb %dl,%al - movl 116(%rsi),%ebx - addl $4149444226,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,112(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 44(%r15),%r11d - addb %dl,%bl - movl 120(%rsi),%eax - addl $3174756917,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,116(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 8(%r15),%r10d - addb %dl,%al - movl 124(%rsi),%ebx - addl $718787259,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,120(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 48(%r13),%xmm5 - addb $32,%bpl - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 36(%r15),%r9d - addb %dl,%bl - movl 0(%rdi,%rbp,4),%eax - addl $3951481745,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,124(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movq %rbp,%rsi - xorq %rbp,%rbp - movb %sil,%bpl - movq %rcx,%rsi - xorq %rcx,%rcx - movb %sil,%cl - leaq (%rdi,%rbp,4),%rsi - psllq $8,%xmm1 - pxor %xmm0,%xmm5 - pxor %xmm1,%xmm5 - addl 0(%rsp),%r8d - addl 4(%rsp),%r9d - addl 8(%rsp),%r10d - addl 12(%rsp),%r11d - - movdqu %xmm2,(%r14,%r13,1) - movdqu %xmm3,16(%r14,%r13,1) - movdqu %xmm4,32(%r14,%r13,1) - movdqu %xmm5,48(%r14,%r13,1) - leaq 64(%r15),%r15 - leaq 64(%r13),%r13 - cmpq 16(%rsp),%r15 - jb .Loop - - movq 24(%rsp),%r12 - subb %al,%cl - movl %r8d,0(%r12) - movl %r9d,4(%r12) - movl %r10d,8(%r12) - movl %r11d,12(%r12) - subb $1,%bpl - movl %ebp,-8(%rdi) - movl %ecx,-4(%rdi) - - movq 40(%rsp),%r15 - movq 48(%rsp),%r14 - movq 56(%rsp),%r13 - movq 64(%rsp),%r12 - movq 72(%rsp),%rbp - movq 80(%rsp),%rbx - leaq 88(%rsp),%rsp -.Lepilogue: -.Labort: - .byte 0xf3,0xc3 -.size rc4_md5_enc,.-rc4_md5_enc diff --git a/deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s b/deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s deleted file mode 100644 index d52224afcfa806..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s +++ /dev/null @@ -1,615 +0,0 @@ -.text - - -.globl RC4 -.type RC4,@function -.align 16 -RC4: orq %rsi,%rsi - jne .Lentry - .byte 0xf3,0xc3 -.Lentry: - pushq %rbx - pushq %r12 - pushq %r13 -.Lprologue: - movq %rsi,%r11 - movq %rdx,%r12 - movq %rcx,%r13 - xorq %r10,%r10 - xorq %rcx,%rcx - - leaq 8(%rdi),%rdi - movb -8(%rdi),%r10b - movb -4(%rdi),%cl - cmpl $-1,256(%rdi) - je .LRC4_CHAR - movl OPENSSL_ia32cap_P(%rip),%r8d - xorq %rbx,%rbx - incb %r10b - subq %r10,%rbx - subq %r12,%r13 - movl (%rdi,%r10,4),%eax - testq $-16,%r11 - jz .Lloop1 - btl $30,%r8d - jc .Lintel - andq $7,%rbx - leaq 1(%r10),%rsi - jz .Loop8 - subq %rbx,%r11 -.Loop8_warmup: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %rbx - jnz .Loop8_warmup - - leaq 1(%r10),%rsi - jmp .Loop8 -.align 16 -.Loop8: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 0(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,0(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 4(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,4(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 8(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,8(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 12(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,12(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 16(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,16(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 20(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,20(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 24(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,24(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb $8,%sil - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl -4(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,28(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb $8,%r10b - rorq $8,%r8 - subq $8,%r11 - - xorq (%r12),%r8 - movq %r8,(%r12,%r13,1) - leaq 8(%r12),%r12 - - testq $-8,%r11 - jnz .Loop8 - cmpq $0,%r11 - jne .Lloop1 - jmp .Lexit - -.align 16 -.Lintel: - testq $-32,%r11 - jz .Lloop1 - andq $15,%rbx - jz .Loop16_is_hot - subq %rbx,%r11 -.Loop16_warmup: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %rbx - jnz .Loop16_warmup - - movq %rcx,%rbx - xorq %rcx,%rcx - movb %bl,%cl - -.Loop16_is_hot: - leaq (%rdi,%r10,4),%rsi - addb %al,%cl - movl (%rdi,%rcx,4),%edx - pxor %xmm0,%xmm0 - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 4(%rsi),%ebx - movzbl %al,%eax - movl %edx,0(%rsi) - addb %bl,%cl - pinsrw $0,(%rdi,%rax,4),%xmm0 - jmp .Loop16_enter -.align 16 -.Loop16: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - pxor %xmm0,%xmm2 - psllq $8,%xmm1 - pxor %xmm0,%xmm0 - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 4(%rsi),%ebx - movzbl %al,%eax - movl %edx,0(%rsi) - pxor %xmm1,%xmm2 - addb %bl,%cl - pinsrw $0,(%rdi,%rax,4),%xmm0 - movdqu %xmm2,(%r12,%r13,1) - leaq 16(%r12),%r12 -.Loop16_enter: - movl (%rdi,%rcx,4),%edx - pxor %xmm1,%xmm1 - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 8(%rsi),%eax - movzbl %bl,%ebx - movl %edx,4(%rsi) - addb %al,%cl - pinsrw $0,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 12(%rsi),%ebx - movzbl %al,%eax - movl %edx,8(%rsi) - addb %bl,%cl - pinsrw $1,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 16(%rsi),%eax - movzbl %bl,%ebx - movl %edx,12(%rsi) - addb %al,%cl - pinsrw $1,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 20(%rsi),%ebx - movzbl %al,%eax - movl %edx,16(%rsi) - addb %bl,%cl - pinsrw $2,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 24(%rsi),%eax - movzbl %bl,%ebx - movl %edx,20(%rsi) - addb %al,%cl - pinsrw $2,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 28(%rsi),%ebx - movzbl %al,%eax - movl %edx,24(%rsi) - addb %bl,%cl - pinsrw $3,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 32(%rsi),%eax - movzbl %bl,%ebx - movl %edx,28(%rsi) - addb %al,%cl - pinsrw $3,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 36(%rsi),%ebx - movzbl %al,%eax - movl %edx,32(%rsi) - addb %bl,%cl - pinsrw $4,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 40(%rsi),%eax - movzbl %bl,%ebx - movl %edx,36(%rsi) - addb %al,%cl - pinsrw $4,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 44(%rsi),%ebx - movzbl %al,%eax - movl %edx,40(%rsi) - addb %bl,%cl - pinsrw $5,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 48(%rsi),%eax - movzbl %bl,%ebx - movl %edx,44(%rsi) - addb %al,%cl - pinsrw $5,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 52(%rsi),%ebx - movzbl %al,%eax - movl %edx,48(%rsi) - addb %bl,%cl - pinsrw $6,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 56(%rsi),%eax - movzbl %bl,%ebx - movl %edx,52(%rsi) - addb %al,%cl - pinsrw $6,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 60(%rsi),%ebx - movzbl %al,%eax - movl %edx,56(%rsi) - addb %bl,%cl - pinsrw $7,(%rdi,%rax,4),%xmm0 - addb $16,%r10b - movdqu (%r12),%xmm2 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movzbl %bl,%ebx - movl %edx,60(%rsi) - leaq (%rdi,%r10,4),%rsi - pinsrw $7,(%rdi,%rbx,4),%xmm1 - movl (%rsi),%eax - movq %rcx,%rbx - xorq %rcx,%rcx - subq $16,%r11 - movb %bl,%cl - testq $-16,%r11 - jnz .Loop16 - - psllq $8,%xmm1 - pxor %xmm0,%xmm2 - pxor %xmm1,%xmm2 - movdqu %xmm2,(%r12,%r13,1) - leaq 16(%r12),%r12 - - cmpq $0,%r11 - jne .Lloop1 - jmp .Lexit - -.align 16 -.Lloop1: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %r11 - jnz .Lloop1 - jmp .Lexit - -.align 16 -.LRC4_CHAR: - addb $1,%r10b - movzbl (%rdi,%r10,1),%eax - testq $-8,%r11 - jz .Lcloop1 - jmp .Lcloop8 -.align 16 -.Lcloop8: - movl (%r12),%r8d - movl 4(%r12),%r9d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov0 - movq %rax,%rbx -.Lcmov0: - addb %al,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov1 - movq %rbx,%rax -.Lcmov1: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov2 - movq %rax,%rbx -.Lcmov2: - addb %al,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov3 - movq %rbx,%rax -.Lcmov3: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov4 - movq %rax,%rbx -.Lcmov4: - addb %al,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov5 - movq %rbx,%rax -.Lcmov5: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov6 - movq %rax,%rbx -.Lcmov6: - addb %al,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov7 - movq %rbx,%rax -.Lcmov7: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - leaq -8(%r11),%r11 - movl %r8d,(%r13) - leaq 8(%r12),%r12 - movl %r9d,4(%r13) - leaq 8(%r13),%r13 - - testq $-8,%r11 - jnz .Lcloop8 - cmpq $0,%r11 - jne .Lcloop1 - jmp .Lexit -.align 16 -.Lcloop1: - addb %al,%cl - movzbl %cl,%ecx - movzbl (%rdi,%rcx,1),%edx - movb %al,(%rdi,%rcx,1) - movb %dl,(%rdi,%r10,1) - addb %al,%dl - addb $1,%r10b - movzbl %dl,%edx - movzbl %r10b,%r10d - movzbl (%rdi,%rdx,1),%edx - movzbl (%rdi,%r10,1),%eax - xorb (%r12),%dl - leaq 1(%r12),%r12 - movb %dl,(%r13) - leaq 1(%r13),%r13 - subq $1,%r11 - jnz .Lcloop1 - jmp .Lexit - -.align 16 -.Lexit: - subb $1,%r10b - movl %r10d,-8(%rdi) - movl %ecx,-4(%rdi) - - movq (%rsp),%r13 - movq 8(%rsp),%r12 - movq 16(%rsp),%rbx - addq $24,%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size RC4,.-RC4 -.globl private_RC4_set_key -.type private_RC4_set_key,@function -.align 16 -private_RC4_set_key: - leaq 8(%rdi),%rdi - leaq (%rdx,%rsi,1),%rdx - negq %rsi - movq %rsi,%rcx - xorl %eax,%eax - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - - movl OPENSSL_ia32cap_P(%rip),%r8d - btl $20,%r8d - jc .Lc1stloop - jmp .Lw1stloop - -.align 16 -.Lw1stloop: - movl %eax,(%rdi,%rax,4) - addb $1,%al - jnc .Lw1stloop - - xorq %r9,%r9 - xorq %r8,%r8 -.align 16 -.Lw2ndloop: - movl (%rdi,%r9,4),%r10d - addb (%rdx,%rsi,1),%r8b - addb %r10b,%r8b - addq $1,%rsi - movl (%rdi,%r8,4),%r11d - cmovzq %rcx,%rsi - movl %r10d,(%rdi,%r8,4) - movl %r11d,(%rdi,%r9,4) - addb $1,%r9b - jnc .Lw2ndloop - jmp .Lexit_key - -.align 16 -.Lc1stloop: - movb %al,(%rdi,%rax,1) - addb $1,%al - jnc .Lc1stloop - - xorq %r9,%r9 - xorq %r8,%r8 -.align 16 -.Lc2ndloop: - movb (%rdi,%r9,1),%r10b - addb (%rdx,%rsi,1),%r8b - addb %r10b,%r8b - addq $1,%rsi - movb (%rdi,%r8,1),%r11b - jnz .Lcnowrap - movq %rcx,%rsi -.Lcnowrap: - movb %r10b,(%rdi,%r8,1) - movb %r11b,(%rdi,%r9,1) - addb $1,%r9b - jnc .Lc2ndloop - movl $-1,256(%rdi) - -.align 16 -.Lexit_key: - xorl %eax,%eax - movl %eax,-8(%rdi) - movl %eax,-4(%rdi) - .byte 0xf3,0xc3 -.size private_RC4_set_key,.-private_RC4_set_key - -.globl RC4_options -.type RC4_options,@function -.align 16 -RC4_options: - leaq .Lopts(%rip),%rax - movl OPENSSL_ia32cap_P(%rip),%edx - btl $20,%edx - jc .L8xchar - btl $30,%edx - jnc .Ldone - addq $25,%rax - .byte 0xf3,0xc3 -.L8xchar: - addq $12,%rax -.Ldone: - .byte 0xf3,0xc3 -.align 64 -.Lopts: -.byte 114,99,52,40,56,120,44,105,110,116,41,0 -.byte 114,99,52,40,56,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,49,54,120,44,105,110,116,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.size RC4_options,.-RC4_options diff --git a/deps/openssl/asm/x64-elf-gas/sha/sha1-mb-x86_64.s b/deps/openssl/asm/x64-elf-gas/sha/sha1-mb-x86_64.s deleted file mode 100644 index d2857f3288bf07..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/sha/sha1-mb-x86_64.s +++ /dev/null @@ -1,7221 +0,0 @@ -.text - - - -.globl sha1_multi_block -.type sha1_multi_block,@function -.align 32 -sha1_multi_block: - movq OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - testl $268435456,%ecx - jnz _avx_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - -.Loop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone - - movdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - movdqu 32(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 96(%rdi),%xmm13 - movdqu 128(%rdi),%xmm14 - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - jmp .Loop - -.align 32 -.Loop: - movd (%r8),%xmm0 - leaq 64(%r8),%r8 - movd (%r9),%xmm2 - leaq 64(%r9),%r9 - movd (%r10),%xmm3 - leaq 64(%r10),%r10 - movd (%r11),%xmm4 - leaq 64(%r11),%r11 - punpckldq %xmm3,%xmm0 - movd -60(%r8),%xmm1 - punpckldq %xmm4,%xmm2 - movd -60(%r9),%xmm9 - punpckldq %xmm2,%xmm0 - movd -60(%r10),%xmm8 -.byte 102,15,56,0,197 - movd -60(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,0-128(%rax) - paddd %xmm0,%xmm14 - movd -56(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -56(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -56(%r10),%xmm8 - por %xmm7,%xmm11 - movd -56(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,16-128(%rax) - paddd %xmm1,%xmm13 - movd -52(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -52(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -52(%r10),%xmm8 - por %xmm7,%xmm10 - movd -52(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,32-128(%rax) - paddd %xmm2,%xmm12 - movd -48(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -48(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -48(%r10),%xmm8 - por %xmm7,%xmm14 - movd -48(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,48-128(%rax) - paddd %xmm3,%xmm11 - movd -44(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -44(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -44(%r10),%xmm8 - por %xmm7,%xmm13 - movd -44(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,64-128(%rax) - paddd %xmm4,%xmm10 - movd -40(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -40(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -40(%r10),%xmm8 - por %xmm7,%xmm12 - movd -40(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,80-128(%rax) - paddd %xmm0,%xmm14 - movd -36(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -36(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -36(%r10),%xmm8 - por %xmm7,%xmm11 - movd -36(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,96-128(%rax) - paddd %xmm1,%xmm13 - movd -32(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -32(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -32(%r10),%xmm8 - por %xmm7,%xmm10 - movd -32(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,112-128(%rax) - paddd %xmm2,%xmm12 - movd -28(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -28(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -28(%r10),%xmm8 - por %xmm7,%xmm14 - movd -28(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,128-128(%rax) - paddd %xmm3,%xmm11 - movd -24(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -24(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -24(%r10),%xmm8 - por %xmm7,%xmm13 - movd -24(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,144-128(%rax) - paddd %xmm4,%xmm10 - movd -20(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -20(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -20(%r10),%xmm8 - por %xmm7,%xmm12 - movd -20(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,160-128(%rax) - paddd %xmm0,%xmm14 - movd -16(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -16(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -16(%r10),%xmm8 - por %xmm7,%xmm11 - movd -16(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,176-128(%rax) - paddd %xmm1,%xmm13 - movd -12(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -12(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -12(%r10),%xmm8 - por %xmm7,%xmm10 - movd -12(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,192-128(%rax) - paddd %xmm2,%xmm12 - movd -8(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -8(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -8(%r10),%xmm8 - por %xmm7,%xmm14 - movd -8(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,208-128(%rax) - paddd %xmm3,%xmm11 - movd -4(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -4(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -4(%r10),%xmm8 - por %xmm7,%xmm13 - movdqa 0-128(%rax),%xmm1 - movd -4(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - prefetcht0 63(%r8) - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,224-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - prefetcht0 63(%r9) - - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - prefetcht0 63(%r10) - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - prefetcht0 63(%r11) - por %xmm7,%xmm12 - movdqa 16-128(%rax),%xmm2 - pxor %xmm3,%xmm1 - movdqa 32-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - pxor 128-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - movdqa %xmm11,%xmm7 - pslld $5,%xmm8 - pxor %xmm3,%xmm1 - movdqa %xmm11,%xmm6 - pandn %xmm13,%xmm7 - movdqa %xmm1,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm10,%xmm9 - psrld $31,%xmm5 - paddd %xmm1,%xmm1 - - movdqa %xmm0,240-128(%rax) - paddd %xmm0,%xmm14 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm11,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 48-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - pxor 144-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - movdqa %xmm10,%xmm7 - pslld $5,%xmm8 - pxor %xmm4,%xmm2 - movdqa %xmm10,%xmm6 - pandn %xmm12,%xmm7 - movdqa %xmm2,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm14,%xmm9 - psrld $31,%xmm5 - paddd %xmm2,%xmm2 - - movdqa %xmm1,0-128(%rax) - paddd %xmm1,%xmm13 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm10,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 64-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - pxor 160-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - movdqa %xmm14,%xmm7 - pslld $5,%xmm8 - pxor %xmm0,%xmm3 - movdqa %xmm14,%xmm6 - pandn %xmm11,%xmm7 - movdqa %xmm3,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm13,%xmm9 - psrld $31,%xmm5 - paddd %xmm3,%xmm3 - - movdqa %xmm2,16-128(%rax) - paddd %xmm2,%xmm12 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm14,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 80-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - pxor 176-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - movdqa %xmm13,%xmm7 - pslld $5,%xmm8 - pxor %xmm1,%xmm4 - movdqa %xmm13,%xmm6 - pandn %xmm10,%xmm7 - movdqa %xmm4,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm12,%xmm9 - psrld $31,%xmm5 - paddd %xmm4,%xmm4 - - movdqa %xmm3,32-128(%rax) - paddd %xmm3,%xmm11 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm13,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 96-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - pxor 192-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - movdqa %xmm12,%xmm7 - pslld $5,%xmm8 - pxor %xmm2,%xmm0 - movdqa %xmm12,%xmm6 - pandn %xmm14,%xmm7 - movdqa %xmm0,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm11,%xmm9 - psrld $31,%xmm5 - paddd %xmm0,%xmm0 - - movdqa %xmm4,48-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm12,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 0(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 112-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 208-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,64-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 128-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 224-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,80-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 144-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 240-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,96-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 160-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 0-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,112-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 176-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 16-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,128-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 192-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 32-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,144-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 208-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 48-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,160-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 224-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 64-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,176-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 240-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 80-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,192-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 0-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 96-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,208-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 16-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 112-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,224-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 32-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 128-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,240-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 48-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 144-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,0-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 64-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 160-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,16-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 80-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 176-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,32-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 96-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 192-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,48-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 112-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 208-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,64-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 128-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 224-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,80-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 144-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 240-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,96-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 160-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 0-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,112-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 32(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 176-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 16-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,128-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 192-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 32-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,144-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 208-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 48-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,160-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 224-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 64-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,176-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 240-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 80-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,192-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 0-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 96-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,208-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 16-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 112-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,224-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 32-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 128-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,240-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 48-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 144-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,0-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 64-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 160-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,16-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 80-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 176-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,32-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 96-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 192-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,48-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 112-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 208-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,64-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 128-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 224-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,80-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 144-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 240-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,96-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 160-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 0-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,112-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 176-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 16-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,128-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 192-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 32-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,144-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 208-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 48-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,160-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 224-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 64-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,176-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 64(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 240-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 80-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,192-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 0-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 96-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,208-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 16-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 112-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,224-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 32-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 128-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,240-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 48-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 144-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,0-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 64-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 160-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,16-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 80-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 176-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,32-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 96-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 192-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,48-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 112-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 208-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,64-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 128-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 224-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,80-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 144-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 240-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,96-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 160-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 0-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,112-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 176-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 16-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 192-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 32-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 208-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 48-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 224-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 64-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 240-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 80-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 0-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 96-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 16-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 112-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - movdqa %xmm12,%xmm7 - pxor %xmm13,%xmm6 - - pslld $30,%xmm7 - por %xmm9,%xmm8 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm7,%xmm12 - movdqa (%rbx),%xmm0 - movl $1,%ecx - cmpl 0(%rbx),%ecx - pxor %xmm8,%xmm8 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm0,%xmm1 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm8,%xmm1 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm1,%xmm0 - cmovgeq %rbp,%r11 - - movdqu 0(%rdi),%xmm6 - pand %xmm1,%xmm10 - movdqu 32(%rdi),%xmm7 - pand %xmm1,%xmm11 - paddd %xmm6,%xmm10 - movdqu 64(%rdi),%xmm8 - pand %xmm1,%xmm12 - paddd %xmm7,%xmm11 - movdqu 96(%rdi),%xmm9 - pand %xmm1,%xmm13 - paddd %xmm8,%xmm12 - movdqu 128(%rdi),%xmm5 - pand %xmm1,%xmm14 - movdqu %xmm10,0(%rdi) - paddd %xmm9,%xmm13 - movdqu %xmm11,32(%rdi) - paddd %xmm5,%xmm14 - movdqu %xmm12,64(%rdi) - movdqu %xmm13,96(%rdi) - movdqu %xmm14,128(%rdi) - - movdqa %xmm0,(%rbx) - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - decl %edx - jnz .Loop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande - -.Ldone: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha1_multi_block,.-sha1_multi_block -.type sha1_multi_block_shaext,@function -.align 32 -sha1_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 64(%rdi),%rdi - movq %rax,272(%rsp) -.Lbody_shaext: - leaq 256(%rsp),%rbx - movdqa K_XX_XX+128(%rip),%xmm3 - -.Loop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz .Ldone_shaext - - movq 0-64(%rdi),%xmm0 - movq 32-64(%rdi),%xmm4 - movq 64-64(%rdi),%xmm5 - movq 96-64(%rdi),%xmm6 - movq 128-64(%rdi),%xmm7 - - punpckldq %xmm4,%xmm0 - punpckldq %xmm6,%xmm5 - - movdqa %xmm0,%xmm8 - punpcklqdq %xmm5,%xmm0 - punpckhqdq %xmm5,%xmm8 - - pshufd $63,%xmm7,%xmm1 - pshufd $127,%xmm7,%xmm9 - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - jmp .Loop_shaext - -.align 32 -.Loop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm11 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm12 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm13 -.byte 102,68,15,56,0,219 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 -.byte 102,15,56,0,235 - movdqu 48(%r9),%xmm14 - leaq 64(%r9),%r9 -.byte 102,68,15,56,0,227 - - movdqa %xmm1,80(%rsp) - paddd %xmm4,%xmm1 - movdqa %xmm9,112(%rsp) - paddd %xmm11,%xmm9 - movdqa %xmm0,64(%rsp) - movdqa %xmm0,%xmm2 - movdqa %xmm8,96(%rsp) - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 102,15,56,0,243 - prefetcht0 127(%r8) -.byte 15,56,201,229 -.byte 102,68,15,56,0,235 - prefetcht0 127(%r9) -.byte 69,15,56,201,220 - -.byte 102,15,56,0,251 - movdqa %xmm0,%xmm1 -.byte 102,68,15,56,0,243 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,206 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,205 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,215 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,204 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,215 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,204 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,213 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,204 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,213 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,206 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,213 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - - movl $1,%ecx - pxor %xmm4,%xmm4 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,206 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - movq (%rbx),%xmm6 - - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,215 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,214 - - pshufd $0x00,%xmm6,%xmm11 - pshufd $0x55,%xmm6,%xmm12 - movdqa %xmm6,%xmm7 - pcmpgtd %xmm4,%xmm11 - pcmpgtd %xmm4,%xmm12 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,204 - - pcmpgtd %xmm4,%xmm7 - pand %xmm11,%xmm0 - pand %xmm11,%xmm1 - pand %xmm12,%xmm8 - pand %xmm12,%xmm9 - paddd %xmm7,%xmm6 - - paddd 64(%rsp),%xmm0 - paddd 80(%rsp),%xmm1 - paddd 96(%rsp),%xmm8 - paddd 112(%rsp),%xmm9 - - movq %xmm6,(%rbx) - decl %edx - jnz .Loop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - - movdqa %xmm0,%xmm6 - punpckldq %xmm8,%xmm0 - punpckhdq %xmm8,%xmm6 - punpckhdq %xmm9,%xmm1 - movq %xmm0,0-64(%rdi) - psrldq $8,%xmm0 - movq %xmm6,64-64(%rdi) - psrldq $8,%xmm6 - movq %xmm0,32-64(%rdi) - psrldq $8,%xmm1 - movq %xmm6,96-64(%rdi) - movq %xmm1,128-64(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz .Loop_grande_shaext - -.Ldone_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_shaext: - .byte 0xf3,0xc3 -.size sha1_multi_block_shaext,.-sha1_multi_block_shaext -.type sha1_multi_block_avx,@function -.align 32 -sha1_multi_block_avx: -_avx_shortcut: - shrq $32,%rcx - cmpl $2,%edx - jb .Lavx - testl $32,%ecx - jnz _avx2_shortcut - jmp .Lavx -.align 32 -.Lavx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody_avx: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - - vzeroupper -.Loop_grande_avx: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone_avx - - vmovdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - vmovdqu 32(%rdi),%xmm11 - vmovdqu 64(%rdi),%xmm12 - vmovdqu 96(%rdi),%xmm13 - vmovdqu 128(%rdi),%xmm14 - vmovdqu 96(%rbp),%xmm5 - jmp .Loop_avx - -.align 32 -.Loop_avx: - vmovdqa -32(%rbp),%xmm15 - vmovd (%r8),%xmm0 - leaq 64(%r8),%r8 - vmovd (%r9),%xmm2 - leaq 64(%r9),%r9 - vpinsrd $1,(%r10),%xmm0,%xmm0 - leaq 64(%r10),%r10 - vpinsrd $1,(%r11),%xmm2,%xmm2 - leaq 64(%r11),%r11 - vmovd -60(%r8),%xmm1 - vpunpckldq %xmm2,%xmm0,%xmm0 - vmovd -60(%r9),%xmm9 - vpshufb %xmm5,%xmm0,%xmm0 - vpinsrd $1,-60(%r10),%xmm1,%xmm1 - vpinsrd $1,-60(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,0-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -56(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -56(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-56(%r10),%xmm2,%xmm2 - vpinsrd $1,-56(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,16-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -52(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -52(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-52(%r10),%xmm3,%xmm3 - vpinsrd $1,-52(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,32-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -48(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -48(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-48(%r10),%xmm4,%xmm4 - vpinsrd $1,-48(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,48-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -44(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -44(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpinsrd $1,-44(%r10),%xmm0,%xmm0 - vpinsrd $1,-44(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,64-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -40(%r8),%xmm1 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -40(%r9),%xmm9 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpinsrd $1,-40(%r10),%xmm1,%xmm1 - vpinsrd $1,-40(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,80-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -36(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -36(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-36(%r10),%xmm2,%xmm2 - vpinsrd $1,-36(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,96-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -32(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -32(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-32(%r10),%xmm3,%xmm3 - vpinsrd $1,-32(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,112-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -28(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -28(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-28(%r10),%xmm4,%xmm4 - vpinsrd $1,-28(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,128-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -24(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -24(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpinsrd $1,-24(%r10),%xmm0,%xmm0 - vpinsrd $1,-24(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,144-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -20(%r8),%xmm1 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -20(%r9),%xmm9 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpinsrd $1,-20(%r10),%xmm1,%xmm1 - vpinsrd $1,-20(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,160-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -16(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -16(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-16(%r10),%xmm2,%xmm2 - vpinsrd $1,-16(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,176-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -12(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -12(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-12(%r10),%xmm3,%xmm3 - vpinsrd $1,-12(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,192-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -8(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -8(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-8(%r10),%xmm4,%xmm4 - vpinsrd $1,-8(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,208-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -4(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -4(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vmovdqa 0-128(%rax),%xmm1 - vpinsrd $1,-4(%r10),%xmm0,%xmm0 - vpinsrd $1,-4(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - prefetcht0 63(%r8) - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,224-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - prefetcht0 63(%r9) - vpxor %xmm7,%xmm6,%xmm6 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - prefetcht0 63(%r10) - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - prefetcht0 63(%r11) - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 16-128(%rax),%xmm2 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 32-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,240-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 128-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 48-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,0-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 144-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 64-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,16-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 160-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 80-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,32-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 176-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 96-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,48-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 192-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 0(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 112-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,64-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 208-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 128-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,80-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 224-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 144-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,96-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 240-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 160-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,112-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 0-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 176-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,128-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 16-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 192-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,144-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 32-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 208-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,160-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 48-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 224-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,176-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 64-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 240-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,192-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 80-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 0-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,208-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 96-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 16-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,224-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 112-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 32-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,240-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 128-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 48-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,0-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 144-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 64-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,16-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 160-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 80-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,32-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 176-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 96-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,48-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 192-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 112-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,64-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 208-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 128-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,80-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 224-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 144-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,96-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 240-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 160-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,112-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 0-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 32(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 176-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 16-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,128-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 192-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 32-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,144-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 208-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 48-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,160-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 224-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 64-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,176-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 240-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 80-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,192-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 0-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 96-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,208-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 16-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 112-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,224-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 32-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 128-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,240-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 48-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 144-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,0-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 64-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 160-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,16-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 80-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 176-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,32-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 96-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 192-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,48-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 112-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 208-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,64-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 128-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 224-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,80-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 144-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 240-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,96-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 160-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 0-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,112-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 176-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 16-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,128-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 192-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 32-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,144-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 208-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 48-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,160-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 224-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 64-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,176-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 64(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 240-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,192-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 80-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 0-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,208-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 96-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 16-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,224-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 112-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 32-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,240-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 128-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 48-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,0-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 144-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 64-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,16-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 160-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 80-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,32-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 176-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 96-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,48-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 192-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 112-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,64-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 208-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 128-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,80-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 224-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 144-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,96-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 240-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 160-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,112-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 0-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 176-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 16-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 192-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 32-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 208-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 48-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 224-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 64-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 240-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 80-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 0-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 96-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 16-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 112-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - - vpsrld $27,%xmm11,%xmm9 - vpaddd %xmm4,%xmm10,%xmm10 - vpxor %xmm13,%xmm6,%xmm6 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm7,%xmm12,%xmm12 - movl $1,%ecx - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqu (%rbx),%xmm6 - vpxor %xmm8,%xmm8,%xmm8 - vmovdqa %xmm6,%xmm7 - vpcmpgtd %xmm8,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - - vpand %xmm7,%xmm10,%xmm10 - vpand %xmm7,%xmm11,%xmm11 - vpaddd 0(%rdi),%xmm10,%xmm10 - vpand %xmm7,%xmm12,%xmm12 - vpaddd 32(%rdi),%xmm11,%xmm11 - vpand %xmm7,%xmm13,%xmm13 - vpaddd 64(%rdi),%xmm12,%xmm12 - vpand %xmm7,%xmm14,%xmm14 - vpaddd 96(%rdi),%xmm13,%xmm13 - vpaddd 128(%rdi),%xmm14,%xmm14 - vmovdqu %xmm10,0(%rdi) - vmovdqu %xmm11,32(%rdi) - vmovdqu %xmm12,64(%rdi) - vmovdqu %xmm13,96(%rdi) - vmovdqu %xmm14,128(%rdi) - - vmovdqu %xmm6,(%rbx) - vmovdqu 96(%rbp),%xmm5 - decl %edx - jnz .Loop_avx - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande_avx - -.Ldone_avx: - movq 272(%rsp),%rax - vzeroupper - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size sha1_multi_block_avx,.-sha1_multi_block_avx -.type sha1_multi_block_avx2,@function -.align 32 -sha1_multi_block_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576,%rsp - andq $-256,%rsp - movq %rax,544(%rsp) -.Lbody_avx2: - leaq K_XX_XX(%rip),%rbp - shrl $1,%edx - - vzeroupper -.Loop_grande_avx2: - movl %edx,552(%rsp) - xorl %edx,%edx - leaq 512(%rsp),%rbx - movq 0(%rsi),%r12 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r12 - movq 16(%rsi),%r13 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r13 - movq 32(%rsi),%r14 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r14 - movq 48(%rsi),%r15 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r15 - movq 64(%rsi),%r8 - movl 72(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,16(%rbx) - cmovleq %rbp,%r8 - movq 80(%rsi),%r9 - movl 88(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,20(%rbx) - cmovleq %rbp,%r9 - movq 96(%rsi),%r10 - movl 104(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,24(%rbx) - cmovleq %rbp,%r10 - movq 112(%rsi),%r11 - movl 120(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,28(%rbx) - cmovleq %rbp,%r11 - vmovdqu 0(%rdi),%ymm0 - leaq 128(%rsp),%rax - vmovdqu 32(%rdi),%ymm1 - leaq 256+128(%rsp),%rbx - vmovdqu 64(%rdi),%ymm2 - vmovdqu 96(%rdi),%ymm3 - vmovdqu 128(%rdi),%ymm4 - vmovdqu 96(%rbp),%ymm9 - jmp .Loop_avx2 - -.align 32 -.Loop_avx2: - vmovdqa -32(%rbp),%ymm15 - vmovd (%r12),%xmm10 - leaq 64(%r12),%r12 - vmovd (%r8),%xmm12 - leaq 64(%r8),%r8 - vmovd (%r13),%xmm7 - leaq 64(%r13),%r13 - vmovd (%r9),%xmm6 - leaq 64(%r9),%r9 - vpinsrd $1,(%r14),%xmm10,%xmm10 - leaq 64(%r14),%r14 - vpinsrd $1,(%r10),%xmm12,%xmm12 - leaq 64(%r10),%r10 - vpinsrd $1,(%r15),%xmm7,%xmm7 - leaq 64(%r15),%r15 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,(%r11),%xmm6,%xmm6 - leaq 64(%r11),%r11 - vpunpckldq %ymm6,%ymm12,%ymm12 - vmovd -60(%r12),%xmm11 - vinserti128 $1,%xmm12,%ymm10,%ymm10 - vmovd -60(%r8),%xmm8 - vpshufb %ymm9,%ymm10,%ymm10 - vmovd -60(%r13),%xmm7 - vmovd -60(%r9),%xmm6 - vpinsrd $1,-60(%r14),%xmm11,%xmm11 - vpinsrd $1,-60(%r10),%xmm8,%xmm8 - vpinsrd $1,-60(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-60(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,0-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -56(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -56(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -56(%r13),%xmm7 - vmovd -56(%r9),%xmm6 - vpinsrd $1,-56(%r14),%xmm12,%xmm12 - vpinsrd $1,-56(%r10),%xmm8,%xmm8 - vpinsrd $1,-56(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-56(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,32-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -52(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -52(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -52(%r13),%xmm7 - vmovd -52(%r9),%xmm6 - vpinsrd $1,-52(%r14),%xmm13,%xmm13 - vpinsrd $1,-52(%r10),%xmm8,%xmm8 - vpinsrd $1,-52(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-52(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,64-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -48(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -48(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -48(%r13),%xmm7 - vmovd -48(%r9),%xmm6 - vpinsrd $1,-48(%r14),%xmm14,%xmm14 - vpinsrd $1,-48(%r10),%xmm8,%xmm8 - vpinsrd $1,-48(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-48(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,96-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -44(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -44(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovd -44(%r13),%xmm7 - vmovd -44(%r9),%xmm6 - vpinsrd $1,-44(%r14),%xmm10,%xmm10 - vpinsrd $1,-44(%r10),%xmm8,%xmm8 - vpinsrd $1,-44(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-44(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,128-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -40(%r12),%xmm11 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -40(%r8),%xmm8 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovd -40(%r13),%xmm7 - vmovd -40(%r9),%xmm6 - vpinsrd $1,-40(%r14),%xmm11,%xmm11 - vpinsrd $1,-40(%r10),%xmm8,%xmm8 - vpinsrd $1,-40(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-40(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,160-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -36(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -36(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -36(%r13),%xmm7 - vmovd -36(%r9),%xmm6 - vpinsrd $1,-36(%r14),%xmm12,%xmm12 - vpinsrd $1,-36(%r10),%xmm8,%xmm8 - vpinsrd $1,-36(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-36(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,192-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -32(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -32(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -32(%r13),%xmm7 - vmovd -32(%r9),%xmm6 - vpinsrd $1,-32(%r14),%xmm13,%xmm13 - vpinsrd $1,-32(%r10),%xmm8,%xmm8 - vpinsrd $1,-32(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-32(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,224-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -28(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -28(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -28(%r13),%xmm7 - vmovd -28(%r9),%xmm6 - vpinsrd $1,-28(%r14),%xmm14,%xmm14 - vpinsrd $1,-28(%r10),%xmm8,%xmm8 - vpinsrd $1,-28(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-28(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,256-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -24(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -24(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovd -24(%r13),%xmm7 - vmovd -24(%r9),%xmm6 - vpinsrd $1,-24(%r14),%xmm10,%xmm10 - vpinsrd $1,-24(%r10),%xmm8,%xmm8 - vpinsrd $1,-24(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-24(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,288-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -20(%r12),%xmm11 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -20(%r8),%xmm8 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovd -20(%r13),%xmm7 - vmovd -20(%r9),%xmm6 - vpinsrd $1,-20(%r14),%xmm11,%xmm11 - vpinsrd $1,-20(%r10),%xmm8,%xmm8 - vpinsrd $1,-20(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-20(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,320-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -16(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -16(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -16(%r13),%xmm7 - vmovd -16(%r9),%xmm6 - vpinsrd $1,-16(%r14),%xmm12,%xmm12 - vpinsrd $1,-16(%r10),%xmm8,%xmm8 - vpinsrd $1,-16(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-16(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,352-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -12(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -12(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -12(%r13),%xmm7 - vmovd -12(%r9),%xmm6 - vpinsrd $1,-12(%r14),%xmm13,%xmm13 - vpinsrd $1,-12(%r10),%xmm8,%xmm8 - vpinsrd $1,-12(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-12(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,384-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -8(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -8(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -8(%r13),%xmm7 - vmovd -8(%r9),%xmm6 - vpinsrd $1,-8(%r14),%xmm14,%xmm14 - vpinsrd $1,-8(%r10),%xmm8,%xmm8 - vpinsrd $1,-8(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-8(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,416-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -4(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -4(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovdqa 0-128(%rax),%ymm11 - vmovd -4(%r13),%xmm7 - vmovd -4(%r9),%xmm6 - vpinsrd $1,-4(%r14),%xmm10,%xmm10 - vpinsrd $1,-4(%r10),%xmm8,%xmm8 - vpinsrd $1,-4(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-4(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - prefetcht0 63(%r12) - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,448-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - prefetcht0 63(%r13) - vpxor %ymm6,%ymm5,%ymm5 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - prefetcht0 63(%r14) - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - prefetcht0 63(%r15) - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 32-128(%rax),%ymm12 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 64-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - prefetcht0 63(%r8) - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,480-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 256-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - prefetcht0 63(%r9) - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - prefetcht0 63(%r10) - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - prefetcht0 63(%r11) - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 96-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,0-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 288-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 128-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,32-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 320-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 160-128(%rax),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,64-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 352-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 192-128(%rax),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,96-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 384-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 0(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 224-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,128-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 416-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 256-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,160-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 448-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 288-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,192-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 480-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 320-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,224-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 0-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 352-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,256-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 32-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 384-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,288-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 64-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 416-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,320-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 96-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 448-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,352-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 128-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 480-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,384-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 160-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 0-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,416-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 192-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 32-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,448-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 224-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 64-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,480-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 256-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 96-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,0-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 288-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 128-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,32-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 320-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 160-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,64-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 352-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 192-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,96-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 384-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 224-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,128-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 416-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 256-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,160-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 448-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 288-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,192-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 480-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 320-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,224-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 0-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 32(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 352-256-128(%rbx),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 32-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,256-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 384-256-128(%rbx),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 64-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,288-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 416-256-128(%rbx),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 96-128(%rax),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,320-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 448-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 128-128(%rax),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,352-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 480-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 160-128(%rax),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,384-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 0-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 192-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,416-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 32-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 224-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,448-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 64-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 256-256-128(%rbx),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,480-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 96-128(%rax),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 288-256-128(%rbx),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,0-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 128-128(%rax),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 320-256-128(%rbx),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,32-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 160-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 352-256-128(%rbx),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,64-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 192-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 384-256-128(%rbx),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,96-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 224-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 416-256-128(%rbx),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,128-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 256-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 448-256-128(%rbx),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,160-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 288-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 480-256-128(%rbx),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,192-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 320-256-128(%rbx),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 0-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,224-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 352-256-128(%rbx),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 32-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,256-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 384-256-128(%rbx),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 64-128(%rax),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,288-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 416-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 96-128(%rax),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,320-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 448-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 128-128(%rax),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,352-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 64(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 480-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,384-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 160-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 0-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,416-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 192-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 32-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,448-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 224-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 64-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,480-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 256-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 96-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,0-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 288-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 128-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,32-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 320-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 160-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,64-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 352-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 192-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,96-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 384-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 224-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,128-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 416-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 256-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,160-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 448-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 288-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,192-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 480-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 320-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,224-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 0-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 352-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 32-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 384-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 64-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 416-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 96-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 448-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 128-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 480-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 160-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 0-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 192-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 32-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 224-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - - vpsrld $27,%ymm1,%ymm8 - vpaddd %ymm14,%ymm0,%ymm0 - vpxor %ymm3,%ymm5,%ymm5 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm6,%ymm2,%ymm2 - movl $1,%ecx - leaq 512(%rsp),%rbx - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r12 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r13 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r14 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r15 - cmpl 16(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 20(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 24(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 28(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqu (%rbx),%ymm5 - vpxor %ymm7,%ymm7,%ymm7 - vmovdqa %ymm5,%ymm6 - vpcmpgtd %ymm7,%ymm6,%ymm6 - vpaddd %ymm6,%ymm5,%ymm5 - - vpand %ymm6,%ymm0,%ymm0 - vpand %ymm6,%ymm1,%ymm1 - vpaddd 0(%rdi),%ymm0,%ymm0 - vpand %ymm6,%ymm2,%ymm2 - vpaddd 32(%rdi),%ymm1,%ymm1 - vpand %ymm6,%ymm3,%ymm3 - vpaddd 64(%rdi),%ymm2,%ymm2 - vpand %ymm6,%ymm4,%ymm4 - vpaddd 96(%rdi),%ymm3,%ymm3 - vpaddd 128(%rdi),%ymm4,%ymm4 - vmovdqu %ymm0,0(%rdi) - vmovdqu %ymm1,32(%rdi) - vmovdqu %ymm2,64(%rdi) - vmovdqu %ymm3,96(%rdi) - vmovdqu %ymm4,128(%rdi) - - vmovdqu %ymm5,(%rbx) - leaq 256+128(%rsp),%rbx - vmovdqu 96(%rbp),%ymm9 - decl %edx - jnz .Loop_avx2 - - - - - - - -.Ldone_avx2: - movq 544(%rsp),%rax - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size sha1_multi_block_avx2,.-sha1_multi_block_avx2 - -.align 256 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -K_XX_XX: -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-elf-gas/sha/sha1-x86_64.s b/deps/openssl/asm/x64-elf-gas/sha/sha1-x86_64.s deleted file mode 100644 index 195a148bb9b2a3..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/sha/sha1-x86_64.s +++ /dev/null @@ -1,5396 +0,0 @@ -.text - - -.globl sha1_block_data_order -.type sha1_block_data_order,@function -.align 16 -sha1_block_data_order: - movl OPENSSL_ia32cap_P+0(%rip),%r9d - movl OPENSSL_ia32cap_P+4(%rip),%r8d - movl OPENSSL_ia32cap_P+8(%rip),%r10d - testl $512,%r8d - jz .Lialu - testl $536870912,%r10d - jnz _shaext_shortcut - andl $296,%r10d - cmpl $296,%r10d - je _avx2_shortcut - andl $268435456,%r8d - andl $1073741824,%r9d - orl %r9d,%r8d - cmpl $1342177280,%r8d - je _avx_shortcut - jmp _ssse3_shortcut - -.align 16 -.Lialu: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - movq %rdi,%r8 - subq $72,%rsp - movq %rsi,%r9 - andq $-64,%rsp - movq %rdx,%r10 - movq %rax,64(%rsp) -.Lprologue: - - movl 0(%r8),%esi - movl 4(%r8),%edi - movl 8(%r8),%r11d - movl 12(%r8),%r12d - movl 16(%r8),%r13d - jmp .Lloop - -.align 16 -.Lloop: - movl 0(%r9),%edx - bswapl %edx - movl 4(%r9),%ebp - movl %r12d,%eax - movl %edx,0(%rsp) - movl %esi,%ecx - bswapl %ebp - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 8(%r9),%r14d - movl %r11d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ecx - bswapl %r14d - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 12(%r9),%edx - movl %edi,%eax - movl %r14d,8(%rsp) - movl %r12d,%ecx - bswapl %edx - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 16(%r9),%ebp - movl %esi,%eax - movl %edx,12(%rsp) - movl %r11d,%ecx - bswapl %ebp - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 20(%r9),%r14d - movl %r13d,%eax - movl %ebp,16(%rsp) - movl %edi,%ecx - bswapl %r14d - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 24(%r9),%edx - movl %r12d,%eax - movl %r14d,20(%rsp) - movl %esi,%ecx - bswapl %edx - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%r14,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 28(%r9),%ebp - movl %r11d,%eax - movl %edx,24(%rsp) - movl %r13d,%ecx - bswapl %ebp - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rdx,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 32(%r9),%r14d - movl %edi,%eax - movl %ebp,28(%rsp) - movl %r12d,%ecx - bswapl %r14d - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rbp,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 36(%r9),%edx - movl %esi,%eax - movl %r14d,32(%rsp) - movl %r11d,%ecx - bswapl %edx - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%r14,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 40(%r9),%ebp - movl %r13d,%eax - movl %edx,36(%rsp) - movl %edi,%ecx - bswapl %ebp - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rdx,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 44(%r9),%r14d - movl %r12d,%eax - movl %ebp,40(%rsp) - movl %esi,%ecx - bswapl %r14d - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rbp,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 48(%r9),%edx - movl %r11d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ecx - bswapl %edx - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%r14,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 52(%r9),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %r12d,%ecx - bswapl %ebp - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rdx,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 56(%r9),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r11d,%ecx - bswapl %r14d - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rbp,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 60(%r9),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %edi,%ecx - bswapl %edx - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%r14,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %esi,%ecx - xorl 8(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - roll $30,%edi - xorl %r12d,%eax - addl %ecx,%r13d - roll $1,%ebp - addl %eax,%r13d - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %r13d,%ecx - xorl 12(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - roll $30,%esi - xorl %r11d,%eax - addl %ecx,%r12d - roll $1,%r14d - addl %eax,%r12d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %r12d,%ecx - xorl 16(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - roll $30,%r13d - xorl %edi,%eax - addl %ecx,%r11d - roll $1,%edx - addl %eax,%r11d - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r11d,%ecx - xorl 20(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - roll $30,%r12d - xorl %esi,%eax - addl %ecx,%edi - roll $1,%ebp - addl %eax,%edi - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %edi,%ecx - xorl 24(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - roll $30,%r11d - xorl %r13d,%eax - addl %ecx,%esi - roll $1,%r14d - addl %eax,%esi - xorl 20(%rsp),%edx - movl %edi,%eax - movl %r14d,16(%rsp) - movl %esi,%ecx - xorl 28(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 24(%rsp),%ebp - movl %esi,%eax - movl %edx,20(%rsp) - movl %r13d,%ecx - xorl 32(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %r13d,%eax - movl %ebp,24(%rsp) - movl %r12d,%ecx - xorl 36(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %r12d,%eax - movl %r14d,28(%rsp) - movl %r11d,%ecx - xorl 40(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r11d,%eax - movl %edx,32(%rsp) - movl %edi,%ecx - xorl 44(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %edi,%eax - movl %ebp,36(%rsp) - movl %esi,%ecx - xorl 48(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal 1859775393(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 44(%rsp),%edx - movl %esi,%eax - movl %r14d,40(%rsp) - movl %r13d,%ecx - xorl 52(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal 1859775393(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 48(%rsp),%ebp - movl %r13d,%eax - movl %edx,44(%rsp) - movl %r12d,%ecx - xorl 56(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal 1859775393(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %r12d,%eax - movl %ebp,48(%rsp) - movl %r11d,%ecx - xorl 60(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal 1859775393(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r11d,%eax - movl %r14d,52(%rsp) - movl %edi,%ecx - xorl 0(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal 1859775393(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 60(%rsp),%ebp - movl %edi,%eax - movl %edx,56(%rsp) - movl %esi,%ecx - xorl 4(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal 1859775393(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 0(%rsp),%r14d - movl %esi,%eax - movl %ebp,60(%rsp) - movl %r13d,%ecx - xorl 8(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%r14d - leal 1859775393(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 4(%rsp),%edx - movl %r13d,%eax - movl %r14d,0(%rsp) - movl %r12d,%ecx - xorl 12(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%edx - leal 1859775393(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 8(%rsp),%ebp - movl %r12d,%eax - movl %edx,4(%rsp) - movl %r11d,%ecx - xorl 16(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%ebp - leal 1859775393(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 12(%rsp),%r14d - movl %r11d,%eax - movl %ebp,8(%rsp) - movl %edi,%ecx - xorl 20(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%r14d - leal 1859775393(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 16(%rsp),%edx - movl %edi,%eax - movl %r14d,12(%rsp) - movl %esi,%ecx - xorl 24(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 20(%rsp),%ebp - movl %esi,%eax - movl %edx,16(%rsp) - movl %r13d,%ecx - xorl 28(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 52(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 24(%rsp),%r14d - movl %r13d,%eax - movl %ebp,20(%rsp) - movl %r12d,%ecx - xorl 32(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 56(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 28(%rsp),%edx - movl %r12d,%eax - movl %r14d,24(%rsp) - movl %r11d,%ecx - xorl 36(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 60(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 32(%rsp),%ebp - movl %r11d,%eax - movl %edx,28(%rsp) - movl %edi,%ecx - xorl 40(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 0(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 36(%rsp),%r14d - movl %r12d,%eax - movl %ebp,32(%rsp) - movl %r12d,%ebx - xorl 44(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 4(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 40(%rsp),%edx - movl %r11d,%eax - movl %r14d,36(%rsp) - movl %r11d,%ebx - xorl 48(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 8(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 44(%rsp),%ebp - movl %edi,%eax - movl %edx,40(%rsp) - movl %edi,%ebx - xorl 52(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 12(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 48(%rsp),%r14d - movl %esi,%eax - movl %ebp,44(%rsp) - movl %esi,%ebx - xorl 56(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 16(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 52(%rsp),%edx - movl %r13d,%eax - movl %r14d,48(%rsp) - movl %r13d,%ebx - xorl 60(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 20(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 56(%rsp),%ebp - movl %r12d,%eax - movl %edx,52(%rsp) - movl %r12d,%ebx - xorl 0(%rsp),%ebp - andl %r11d,%eax - movl %esi,%ecx - xorl 24(%rsp),%ebp - leal -1894007588(%rdx,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%ebp - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 60(%rsp),%r14d - movl %r11d,%eax - movl %ebp,56(%rsp) - movl %r11d,%ebx - xorl 4(%rsp),%r14d - andl %edi,%eax - movl %r13d,%ecx - xorl 28(%rsp),%r14d - leal -1894007588(%rbp,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%r14d - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 0(%rsp),%edx - movl %edi,%eax - movl %r14d,60(%rsp) - movl %edi,%ebx - xorl 8(%rsp),%edx - andl %esi,%eax - movl %r12d,%ecx - xorl 32(%rsp),%edx - leal -1894007588(%r14,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%edx - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 4(%rsp),%ebp - movl %esi,%eax - movl %edx,0(%rsp) - movl %esi,%ebx - xorl 12(%rsp),%ebp - andl %r13d,%eax - movl %r11d,%ecx - xorl 36(%rsp),%ebp - leal -1894007588(%rdx,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%ebp - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 8(%rsp),%r14d - movl %r13d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ebx - xorl 16(%rsp),%r14d - andl %r12d,%eax - movl %edi,%ecx - xorl 40(%rsp),%r14d - leal -1894007588(%rbp,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%r14d - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 12(%rsp),%edx - movl %r12d,%eax - movl %r14d,8(%rsp) - movl %r12d,%ebx - xorl 20(%rsp),%edx - andl %r11d,%eax - movl %esi,%ecx - xorl 44(%rsp),%edx - leal -1894007588(%r14,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%edx - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 16(%rsp),%ebp - movl %r11d,%eax - movl %edx,12(%rsp) - movl %r11d,%ebx - xorl 24(%rsp),%ebp - andl %edi,%eax - movl %r13d,%ecx - xorl 48(%rsp),%ebp - leal -1894007588(%rdx,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%ebp - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 20(%rsp),%r14d - movl %edi,%eax - movl %ebp,16(%rsp) - movl %edi,%ebx - xorl 28(%rsp),%r14d - andl %esi,%eax - movl %r12d,%ecx - xorl 52(%rsp),%r14d - leal -1894007588(%rbp,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%r14d - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 24(%rsp),%edx - movl %esi,%eax - movl %r14d,20(%rsp) - movl %esi,%ebx - xorl 32(%rsp),%edx - andl %r13d,%eax - movl %r11d,%ecx - xorl 56(%rsp),%edx - leal -1894007588(%r14,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%edx - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 28(%rsp),%ebp - movl %r13d,%eax - movl %edx,24(%rsp) - movl %r13d,%ebx - xorl 36(%rsp),%ebp - andl %r12d,%eax - movl %edi,%ecx - xorl 60(%rsp),%ebp - leal -1894007588(%rdx,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%ebp - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 32(%rsp),%r14d - movl %r12d,%eax - movl %ebp,28(%rsp) - movl %r12d,%ebx - xorl 40(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 0(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 36(%rsp),%edx - movl %r11d,%eax - movl %r14d,32(%rsp) - movl %r11d,%ebx - xorl 44(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 4(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 40(%rsp),%ebp - movl %edi,%eax - movl %edx,36(%rsp) - movl %edi,%ebx - xorl 48(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 8(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 44(%rsp),%r14d - movl %esi,%eax - movl %ebp,40(%rsp) - movl %esi,%ebx - xorl 52(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 12(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 48(%rsp),%edx - movl %r13d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ebx - xorl 56(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 16(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 52(%rsp),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %esi,%ecx - xorl 60(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 20(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 56(%rsp),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r13d,%ecx - xorl 0(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 24(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 60(%rsp),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %r12d,%ecx - xorl 4(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 28(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %r11d,%ecx - xorl 8(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %edi,%ecx - xorl 12(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - leal -899497514(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %esi,%ecx - xorl 16(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - leal -899497514(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r13d,%ecx - xorl 20(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - leal -899497514(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %r12d,%ecx - xorl 24(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - leal -899497514(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 20(%rsp),%edx - movl %r12d,%eax - movl %r14d,16(%rsp) - movl %r11d,%ecx - xorl 28(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal -899497514(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 24(%rsp),%ebp - movl %r11d,%eax - movl %edx,20(%rsp) - movl %edi,%ecx - xorl 32(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal -899497514(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %edi,%eax - movl %ebp,24(%rsp) - movl %esi,%ecx - xorl 36(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal -899497514(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %esi,%eax - movl %r14d,28(%rsp) - movl %r13d,%ecx - xorl 40(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal -899497514(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r13d,%eax - - movl %r12d,%ecx - xorl 44(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal -899497514(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %r12d,%eax - - movl %r11d,%ecx - xorl 48(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal -899497514(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 44(%rsp),%edx - movl %r11d,%eax - - movl %edi,%ecx - xorl 52(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal -899497514(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 48(%rsp),%ebp - movl %edi,%eax - - movl %esi,%ecx - xorl 56(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %esi,%eax - - movl %r13d,%ecx - xorl 60(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r13d,%eax - - movl %r12d,%ecx - xorl 0(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 60(%rsp),%ebp - movl %r12d,%eax - - movl %r11d,%ecx - xorl 4(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - movl %r11d,%eax - movl %edi,%ecx - xorl %r13d,%eax - leal -899497514(%rbp,%rsi,1),%esi - roll $5,%ecx - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - addl 0(%r8),%esi - addl 4(%r8),%edi - addl 8(%r8),%r11d - addl 12(%r8),%r12d - addl 16(%r8),%r13d - movl %esi,0(%r8) - movl %edi,4(%r8) - movl %r11d,8(%r8) - movl %r12d,12(%r8) - movl %r13d,16(%r8) - - subq $1,%r10 - leaq 64(%r9),%r9 - jnz .Lloop - - movq 64(%rsp),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha1_block_data_order,.-sha1_block_data_order -.type sha1_block_data_order_shaext,@function -.align 32 -sha1_block_data_order_shaext: -_shaext_shortcut: - movdqu (%rdi),%xmm0 - movd 16(%rdi),%xmm1 - movdqa K_XX_XX+160(%rip),%xmm3 - - movdqu (%rsi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%rsi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - movdqa %xmm1,%xmm9 -.byte 102,15,56,0,251 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - decq %rdx - leaq 64(%rsi),%r8 - paddd %xmm4,%xmm1 - cmovneq %r8,%rsi - movdqa %xmm0,%xmm8 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%rsi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%rsi),%xmm5 -.byte 102,15,56,0,227 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,235 - - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,243 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 65,15,56,200,201 -.byte 102,15,56,0,251 - - paddd %xmm8,%xmm0 - movdqa %xmm1,%xmm9 - - jnz .Loop_shaext - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%rdi) - movd %xmm1,16(%rdi) - .byte 0xf3,0xc3 -.size sha1_block_data_order_shaext,.-sha1_block_data_order_shaext -.type sha1_block_data_order_ssse3,@function -.align 16 -sha1_block_data_order_ssse3: -_ssse3_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - addq $64,%r9 - paddd %xmm9,%xmm0 -.byte 102,15,56,0,222 - paddd %xmm9,%xmm1 - paddd %xmm9,%xmm2 - movdqa %xmm0,0(%rsp) - psubd %xmm9,%xmm0 - movdqa %xmm1,16(%rsp) - psubd %xmm9,%xmm1 - movdqa %xmm2,32(%rsp) - psubd %xmm9,%xmm2 - jmp .Loop_ssse3 -.align 16 -.Loop_ssse3: - rorl $2,%ebx - pshufd $238,%xmm0,%xmm4 - xorl %edx,%esi - movdqa %xmm3,%xmm8 - paddd %xmm3,%xmm9 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm1,%xmm4 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm2,%xmm8 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm8,%xmm4 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - movdqa %xmm4,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm4,%xmm8 - xorl %ebx,%esi - pslldq $12,%xmm10 - paddd %xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm8 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm9 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm10 - addl %edx,%ecx - rorl $7,%edx - por %xmm8,%xmm4 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - pslld $2,%xmm9 - pxor %xmm10,%xmm4 - xorl %ebp,%edx - movdqa -64(%r11),%xmm10 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm9,%xmm4 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm1,%xmm5 - xorl %ebp,%esi - movdqa %xmm4,%xmm9 - paddd %xmm4,%xmm10 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm2,%xmm5 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm9 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm9,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm10,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm5,%xmm9 - xorl %ecx,%esi - pslldq $12,%xmm8 - paddd %xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm10 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm8 - addl %ebp,%edx - rorl $7,%ebp - por %xmm9,%xmm5 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm10 - pxor %xmm8,%xmm5 - xorl %eax,%ebp - movdqa -32(%r11),%xmm8 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm10,%xmm5 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm2,%xmm6 - xorl %eax,%esi - movdqa %xmm5,%xmm10 - paddd %xmm5,%xmm8 - movl %ecx,%edi - addl 32(%rsp),%ebx - punpcklqdq %xmm3,%xmm6 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm10 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm10 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm10,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm8,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm9 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm10 - xorl %edx,%esi - pslldq $12,%xmm9 - paddd %xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm10 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm9,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm9 - addl %eax,%ebp - rorl $7,%eax - por %xmm10,%xmm6 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm8 - pxor %xmm9,%xmm6 - xorl %ebx,%eax - movdqa -32(%r11),%xmm9 - roll $5,%ebp - addl %edi,%edx - andl %eax,%esi - pxor %xmm8,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%esi - movdqa %xmm6,%xmm8 - paddd %xmm6,%xmm9 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm4,%xmm7 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm8 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - pxor %xmm8,%xmm7 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm10 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm8 - xorl %ebp,%esi - pslldq $12,%xmm10 - paddd %xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm8 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm10,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm10 - addl %ebx,%eax - rorl $7,%ebx - por %xmm8,%xmm7 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm9 - pxor %xmm10,%xmm7 - xorl %ecx,%ebx - movdqa -32(%r11),%xmm10 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm9,%xmm7 - pshufd $238,%xmm6,%xmm9 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm4,%xmm0 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm7,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%edi - movdqa %xmm10,%xmm8 - xorl %ebx,%eax - paddd %xmm7,%xmm10 - addl %ebp,%edx - pxor %xmm9,%xmm0 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm0,%xmm9 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm10,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm0 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm9 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - por %xmm9,%xmm0 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm7,%xmm10 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm5,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm0,%xmm10 - movl %eax,%edi - roll $5,%eax - pxor %xmm2,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebx - paddd %xmm0,%xmm8 - addl %eax,%ebp - pxor %xmm10,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm1,%xmm10 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm8,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm1 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm10 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm10,%xmm1 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm0,%xmm8 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm6,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm1,%xmm8 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm3,%xmm2 - addl %esi,%eax - xorl %edx,%edi - movdqa 0(%r11),%xmm10 - rorl $7,%ecx - paddd %xmm1,%xmm9 - addl %ebx,%eax - pxor %xmm8,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm8 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm9,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm2 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm8 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm8,%xmm2 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm1,%xmm9 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm2,%xmm9 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm4,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm10,%xmm8 - rorl $7,%edx - paddd %xmm2,%xmm10 - addl %ecx,%ebx - pxor %xmm9,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm9 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm10,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - pslld $2,%xmm3 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm9 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm9,%xmm3 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm2,%xmm10 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm0,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm3,%xmm10 - movl %edx,%edi - roll $5,%edx - pxor %xmm5,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebp - paddd %xmm3,%xmm8 - addl %edx,%ecx - pxor %xmm10,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm10 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm8,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm4 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm10 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm10,%xmm4 - addl %ebx,%eax - addl 12(%rsp),%ebp - pshufd $238,%xmm3,%xmm8 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm1,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm4,%xmm8 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm6,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%eax - paddd %xmm4,%xmm9 - addl %ebp,%edx - pxor %xmm8,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm8 - addl %edi,%ecx - xorl %eax,%esi - movdqa %xmm9,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm5 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm8 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm8,%xmm5 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm4,%xmm9 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm2,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm5,%xmm9 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm7,%xmm6 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm10,%xmm8 - xorl %ebx,%edi - paddd %xmm5,%xmm10 - xorl %ecx,%ebx - pxor %xmm9,%xmm6 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm6,%xmm9 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm10,16(%rsp) - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - pslld $2,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm9 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm9,%xmm6 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm5,%xmm10 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm3,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm6,%xmm10 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm0,%xmm7 - roll $5,%ebx - addl %esi,%eax - movdqa 32(%r11),%xmm9 - xorl %ecx,%edi - paddd %xmm6,%xmm8 - xorl %edx,%ecx - pxor %xmm10,%xmm7 - addl %ebx,%eax - addl 52(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm7,%xmm10 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm8,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm7 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm10 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm10,%xmm7 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm6,%xmm8 - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm4,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - punpcklqdq %xmm7,%xmm8 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm1,%xmm0 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm9,%xmm10 - xorl %edx,%edi - paddd %xmm7,%xmm9 - xorl %ebp,%edx - pxor %xmm8,%xmm0 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm0,%xmm8 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm9,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm8 - addl 8(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - por %xmm8,%xmm0 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm7,%xmm9 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm5,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm0,%xmm9 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm2,%xmm1 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm8 - xorl %ebp,%edi - paddd %xmm0,%xmm10 - xorl %eax,%ebp - pxor %xmm9,%xmm1 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movdqa %xmm1,%xmm9 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm10,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm1 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm9 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm9,%xmm1 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm0,%xmm10 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm6,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm1,%xmm10 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm3,%xmm2 - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm9 - xorl %eax,%edi - paddd %xmm1,%xmm8 - xorl %ebx,%eax - pxor %xmm10,%xmm2 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm2,%xmm10 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm8,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm2 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm10 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm10,%xmm2 - rorl $7,%edx - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm1,%xmm8 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm2,%xmm8 - movl %eax,%edi - roll $5,%eax - pxor %xmm4,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%ebx - paddd %xmm2,%xmm9 - addl %eax,%ebp - pxor %xmm8,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm3,%xmm8 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm9,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm3 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm8 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm8,%xmm3 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm3,%xmm10 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm10,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je .Ldone_ssse3 - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,206 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm9,%xmm0 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm0,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm9,%xmm0 - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,214 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm9,%xmm1 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm1,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm9,%xmm1 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,222 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm9,%xmm2 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm2,32(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm9,%xmm2 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp .Loop_ssse3 - -.align 16 -.Ldone_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3 -.type sha1_block_data_order_avx,@function -.align 16 -sha1_block_data_order_avx: -_avx_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - vzeroupper - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - vmovdqa 64(%r11),%xmm6 - vmovdqa -64(%r11),%xmm11 - vmovdqu 0(%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r9 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm11,%xmm0,%xmm4 - vpaddd %xmm11,%xmm1,%xmm5 - vpaddd %xmm11,%xmm2,%xmm6 - vmovdqa %xmm4,0(%rsp) - vmovdqa %xmm5,16(%rsp) - vmovdqa %xmm6,32(%rsp) - jmp .Loop_avx -.align 16 -.Loop_avx: - shrdl $2,%ebx,%ebx - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%edi - addl 0(%rsp),%ebp - vpaddd %xmm3,%xmm11,%xmm9 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%ebp - vpxor %xmm2,%xmm8,%xmm8 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - vpxor %xmm8,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vmovdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - vpsrld $31,%xmm4,%xmm8 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm10 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm4,%xmm4 - addl %esi,%ecx - andl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm4,%xmm4 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - vpxor %xmm10,%xmm4,%xmm4 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %edi,%ebx - andl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%edi - addl 16(%rsp),%eax - vpaddd %xmm4,%xmm11,%xmm9 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm8 - addl %esi,%eax - andl %ecx,%edi - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm8,%xmm8 - shrdl $7,%ebx,%ebx - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - vpxor %xmm8,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vmovdqa %xmm9,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm10 - vpaddd %xmm5,%xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm5,%xmm5 - addl %esi,%edx - andl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm5,%xmm5 - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - vpxor %xmm10,%xmm5,%xmm5 - xorl %eax,%ebp - shldl $5,%edx,%edx - vmovdqa -32(%r11),%xmm11 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%edi - addl 32(%rsp),%ebx - vpaddd %xmm5,%xmm11,%xmm9 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm8 - addl %esi,%ebx - andl %edx,%edi - vpxor %xmm2,%xmm6,%xmm6 - xorl %ebp,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm8,%xmm8 - shrdl $7,%ecx,%ecx - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - vpxor %xmm8,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vmovdqa %xmm9,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm8 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm10 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm6,%xmm6 - addl %esi,%ebp - andl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - vpxor %xmm10,%xmm6,%xmm6 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - addl %edi,%edx - andl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%edi - addl 48(%rsp),%ecx - vpaddd %xmm6,%xmm11,%xmm9 - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%ebp - addl %edx,%ecx - vpxor %xmm5,%xmm8,%xmm8 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - vpxor %xmm8,%xmm7,%xmm7 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vmovdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpslldq $12,%xmm7,%xmm10 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm7,%xmm7 - addl %esi,%eax - andl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - vpxor %xmm10,%xmm7,%xmm7 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %edi,%ebp - andl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - vpxor %xmm1,%xmm0,%xmm0 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpaddd %xmm7,%xmm11,%xmm9 - addl %esi,%edx - andl %eax,%edi - vpxor %xmm8,%xmm0,%xmm0 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - movl %edx,%esi - addl 4(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - vpor %xmm8,%xmm0,%xmm0 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm0,%xmm11,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm1,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm1,%xmm1 - addl 28(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - addl %esi,%eax - xorl %edx,%edi - vpaddd %xmm1,%xmm11,%xmm9 - vmovdqa 0(%r11),%xmm11 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm8,%xmm2,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpslld $2,%xmm2,%xmm2 - addl 40(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpor %xmm8,%xmm2,%xmm2 - addl 44(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - vpaddd %xmm2,%xmm11,%xmm9 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpalignr $8,%xmm2,%xmm3,%xmm8 - vpxor %xmm0,%xmm4,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - vpaddd %xmm3,%xmm11,%xmm9 - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpxor %xmm8,%xmm4,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm8 - vmovdqa %xmm9,48(%rsp) - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm8,%xmm4,%xmm4 - addl 12(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm3,%xmm4,%xmm8 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpxor %xmm6,%xmm5,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - vpaddd %xmm4,%xmm11,%xmm9 - shrdl $7,%eax,%eax - addl %ebp,%edx - vpxor %xmm8,%xmm5,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm8,%xmm5,%xmm5 - addl 28(%rsp),%eax - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm8 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - movl %eax,%edi - xorl %ecx,%esi - vpaddd %xmm5,%xmm11,%xmm9 - shldl $5,%eax,%eax - addl %esi,%ebp - vpxor %xmm8,%xmm6,%xmm6 - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 36(%rsp),%edx - vpsrld $30,%xmm6,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - addl 40(%rsp),%ecx - andl %eax,%esi - vpor %xmm8,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%edi - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%esi - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm8 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - movl %ebx,%edi - xorl %edx,%esi - vpaddd %xmm6,%xmm11,%xmm9 - vmovdqa 32(%r11),%xmm11 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm8,%xmm7,%xmm7 - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%rsp),%ebp - vpsrld $30,%xmm7,%xmm8 - vmovdqa %xmm9,32(%rsp) - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - addl 56(%rsp),%edx - andl %ebx,%esi - vpor %xmm8,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%edi - xorl %ebx,%esi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vpxor %xmm1,%xmm0,%xmm0 - movl %ecx,%edi - xorl %ebp,%esi - vpaddd %xmm7,%xmm11,%xmm9 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm8,%xmm0,%xmm0 - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 4(%rsp),%eax - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%rsp),%ebp - andl %ecx,%esi - vpor %xmm8,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%edi - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - vpxor %xmm2,%xmm1,%xmm1 - movl %edx,%edi - xorl %eax,%esi - vpaddd %xmm0,%xmm11,%xmm9 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 20(%rsp),%ebx - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - addl 24(%rsp),%eax - andl %edx,%esi - vpor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%edi - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - movl %ebp,%edi - xorl %ebx,%esi - vpaddd %xmm1,%xmm11,%xmm9 - shldl $5,%ebp,%ebp - addl %esi,%edx - vpxor %xmm8,%xmm2,%xmm2 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 36(%rsp),%ecx - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - addl 40(%rsp),%ebx - andl %ebp,%esi - vpor %xmm8,%xmm2,%xmm2 - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%edi - xorl %ebp,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm2,%xmm11,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - vpaddd %xmm3,%xmm11,%xmm9 - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm9,48(%rsp) - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je .Ldone_avx - vmovdqa 64(%r11),%xmm6 - vmovdqa -64(%r11),%xmm11 - vmovdqu 0(%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - vpshufb %xmm6,%xmm1,%xmm1 - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpaddd %xmm11,%xmm0,%xmm4 - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm4,0(%rsp) - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - vpshufb %xmm6,%xmm2,%xmm2 - movl %edx,%edi - shldl $5,%edx,%edx - vpaddd %xmm11,%xmm1,%xmm5 - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vmovdqa %xmm5,16(%rsp) - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - vpshufb %xmm6,%xmm3,%xmm3 - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpaddd %xmm11,%xmm2,%xmm6 - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vmovdqa %xmm6,32(%rsp) - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp .Loop_avx - -.align 16 -.Ldone_avx: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vzeroupper - - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size sha1_block_data_order_avx,.-sha1_block_data_order_avx -.type sha1_block_data_order_avx2,@function -.align 16 -sha1_block_data_order_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - vzeroupper - movq %rax,%r14 - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - leaq -640(%rsp),%rsp - shlq $6,%r10 - leaq 64(%r9),%r13 - andq $-128,%rsp - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - cmpq %r10,%r13 - cmovaeq %r9,%r13 - movl 4(%r8),%ebp - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl 16(%r8),%esi - vmovdqu 64(%r11),%ymm6 - - vmovdqu (%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - leaq 64(%r9),%r9 - vinserti128 $1,(%r13),%ymm0,%ymm0 - vinserti128 $1,16(%r13),%ymm1,%ymm1 - vpshufb %ymm6,%ymm0,%ymm0 - vinserti128 $1,32(%r13),%ymm2,%ymm2 - vpshufb %ymm6,%ymm1,%ymm1 - vinserti128 $1,48(%r13),%ymm3,%ymm3 - vpshufb %ymm6,%ymm2,%ymm2 - vmovdqu -64(%r11),%ymm11 - vpshufb %ymm6,%ymm3,%ymm3 - - vpaddd %ymm11,%ymm0,%ymm4 - vpaddd %ymm11,%ymm1,%ymm5 - vmovdqu %ymm4,0(%rsp) - vpaddd %ymm11,%ymm2,%ymm6 - vmovdqu %ymm5,32(%rsp) - vpaddd %ymm11,%ymm3,%ymm7 - vmovdqu %ymm6,64(%rsp) - vmovdqu %ymm7,96(%rsp) - vpalignr $8,%ymm0,%ymm1,%ymm4 - vpsrldq $4,%ymm3,%ymm8 - vpxor %ymm0,%ymm4,%ymm4 - vpxor %ymm2,%ymm8,%ymm8 - vpxor %ymm8,%ymm4,%ymm4 - vpsrld $31,%ymm4,%ymm8 - vpslldq $12,%ymm4,%ymm10 - vpaddd %ymm4,%ymm4,%ymm4 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm4,%ymm4 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm4,%ymm4 - vpxor %ymm10,%ymm4,%ymm4 - vpaddd %ymm11,%ymm4,%ymm9 - vmovdqu %ymm9,128(%rsp) - vpalignr $8,%ymm1,%ymm2,%ymm5 - vpsrldq $4,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm3,%ymm8,%ymm8 - vpxor %ymm8,%ymm5,%ymm5 - vpsrld $31,%ymm5,%ymm8 - vmovdqu -32(%r11),%ymm11 - vpslldq $12,%ymm5,%ymm10 - vpaddd %ymm5,%ymm5,%ymm5 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm5,%ymm5 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm5,%ymm5 - vpxor %ymm10,%ymm5,%ymm5 - vpaddd %ymm11,%ymm5,%ymm9 - vmovdqu %ymm9,160(%rsp) - vpalignr $8,%ymm2,%ymm3,%ymm6 - vpsrldq $4,%ymm5,%ymm8 - vpxor %ymm2,%ymm6,%ymm6 - vpxor %ymm4,%ymm8,%ymm8 - vpxor %ymm8,%ymm6,%ymm6 - vpsrld $31,%ymm6,%ymm8 - vpslldq $12,%ymm6,%ymm10 - vpaddd %ymm6,%ymm6,%ymm6 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm6,%ymm6 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm6,%ymm6 - vpxor %ymm10,%ymm6,%ymm6 - vpaddd %ymm11,%ymm6,%ymm9 - vmovdqu %ymm9,192(%rsp) - vpalignr $8,%ymm3,%ymm4,%ymm7 - vpsrldq $4,%ymm6,%ymm8 - vpxor %ymm3,%ymm7,%ymm7 - vpxor %ymm5,%ymm8,%ymm8 - vpxor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm7,%ymm8 - vpslldq $12,%ymm7,%ymm10 - vpaddd %ymm7,%ymm7,%ymm7 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm7,%ymm7 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm7,%ymm7 - vpxor %ymm10,%ymm7,%ymm7 - vpaddd %ymm11,%ymm7,%ymm9 - vmovdqu %ymm9,224(%rsp) - leaq 128(%rsp),%r13 - jmp .Loop_avx2 -.align 32 -.Loop_avx2: - rorxl $2,%ebp,%ebx - andnl %edx,%ebp,%edi - andl %ecx,%ebp - xorl %edi,%ebp - jmp .Lalign32_1 -.align 32 -.Lalign32_1: - vpalignr $8,%ymm6,%ymm7,%ymm8 - vpxor %ymm4,%ymm0,%ymm0 - addl -128(%r13),%esi - andnl %ecx,%eax,%edi - vpxor %ymm1,%ymm0,%ymm0 - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpxor %ymm8,%ymm0,%ymm0 - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - vpsrld $30,%ymm0,%ymm8 - vpslld $2,%ymm0,%ymm0 - addl -124(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - vpor %ymm8,%ymm0,%ymm0 - addl %r12d,%edx - xorl %edi,%esi - addl -120(%r13),%ecx - andnl %ebp,%edx,%edi - vpaddd %ymm11,%ymm0,%ymm9 - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - vmovdqu %ymm9,256(%rsp) - addl %r12d,%ecx - xorl %edi,%edx - addl -116(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -96(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - vpalignr $8,%ymm7,%ymm0,%ymm8 - vpxor %ymm5,%ymm1,%ymm1 - addl -92(%r13),%eax - andnl %edx,%ebp,%edi - vpxor %ymm2,%ymm1,%ymm1 - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - vpxor %ymm8,%ymm1,%ymm1 - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - vpsrld $30,%ymm1,%ymm8 - vpslld $2,%ymm1,%ymm1 - addl -88(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - vpor %ymm8,%ymm1,%ymm1 - addl %r12d,%esi - xorl %edi,%eax - addl -84(%r13),%edx - andnl %ebx,%esi,%edi - vpaddd %ymm11,%ymm1,%ymm9 - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - vmovdqu %ymm9,288(%rsp) - addl %r12d,%edx - xorl %edi,%esi - addl -64(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -60(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - vpalignr $8,%ymm0,%ymm1,%ymm8 - vpxor %ymm6,%ymm2,%ymm2 - addl -56(%r13),%ebp - andnl %esi,%ebx,%edi - vpxor %ymm3,%ymm2,%ymm2 - vmovdqu 0(%r11),%ymm11 - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpxor %ymm8,%ymm2,%ymm2 - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - vpsrld $30,%ymm2,%ymm8 - vpslld $2,%ymm2,%ymm2 - addl -52(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - vpor %ymm8,%ymm2,%ymm2 - addl %r12d,%eax - xorl %edi,%ebp - addl -32(%r13),%esi - andnl %ecx,%eax,%edi - vpaddd %ymm11,%ymm2,%ymm9 - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - vmovdqu %ymm9,320(%rsp) - addl %r12d,%esi - xorl %edi,%eax - addl -28(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -24(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - vpalignr $8,%ymm1,%ymm2,%ymm8 - vpxor %ymm7,%ymm3,%ymm3 - addl -20(%r13),%ebx - andnl %eax,%ecx,%edi - vpxor %ymm4,%ymm3,%ymm3 - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpxor %ymm8,%ymm3,%ymm3 - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - vpsrld $30,%ymm3,%ymm8 - vpslld $2,%ymm3,%ymm3 - addl 0(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - vpor %ymm8,%ymm3,%ymm3 - addl %r12d,%ebp - xorl %edi,%ebx - addl 4(%r13),%eax - andnl %edx,%ebp,%edi - vpaddd %ymm11,%ymm3,%ymm9 - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - vmovdqu %ymm9,352(%rsp) - addl %r12d,%eax - xorl %edi,%ebp - addl 8(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl 12(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vpalignr $8,%ymm2,%ymm3,%ymm8 - vpxor %ymm0,%ymm4,%ymm4 - addl 32(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - vpxor %ymm5,%ymm4,%ymm4 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpxor %ymm8,%ymm4,%ymm4 - addl %r12d,%ecx - xorl %ebp,%edx - addl 36(%r13),%ebx - vpsrld $30,%ymm4,%ymm8 - vpslld $2,%ymm4,%ymm4 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vpor %ymm8,%ymm4,%ymm4 - addl 40(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpaddd %ymm11,%ymm4,%ymm9 - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 44(%r13),%eax - vmovdqu %ymm9,384(%rsp) - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpalignr $8,%ymm3,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - addl 68(%r13),%edx - leal (%rdx,%rax,1),%edx - vpxor %ymm6,%ymm5,%ymm5 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - vpxor %ymm8,%ymm5,%ymm5 - addl %r12d,%edx - xorl %ebx,%esi - addl 72(%r13),%ecx - vpsrld $30,%ymm5,%ymm8 - vpslld $2,%ymm5,%ymm5 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - vpor %ymm8,%ymm5,%ymm5 - addl 76(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpaddd %ymm11,%ymm5,%ymm9 - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 96(%r13),%ebp - vmovdqu %ymm9,416(%rsp) - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 100(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpalignr $8,%ymm4,%ymm5,%ymm8 - vpxor %ymm2,%ymm6,%ymm6 - addl 104(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpxor %ymm7,%ymm6,%ymm6 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - vpxor %ymm8,%ymm6,%ymm6 - addl %r12d,%esi - xorl %ecx,%eax - addl 108(%r13),%edx - leaq 256(%r13),%r13 - vpsrld $30,%ymm6,%ymm8 - vpslld $2,%ymm6,%ymm6 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vpor %ymm8,%ymm6,%ymm6 - addl -128(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpaddd %ymm11,%ymm6,%ymm9 - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -124(%r13),%ebx - vmovdqu %ymm9,448(%rsp) - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -120(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpalignr $8,%ymm5,%ymm6,%ymm8 - vpxor %ymm3,%ymm7,%ymm7 - addl -116(%r13),%eax - leal (%rax,%rbx,1),%eax - vpxor %ymm0,%ymm7,%ymm7 - vmovdqu 32(%r11),%ymm11 - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - vpxor %ymm8,%ymm7,%ymm7 - addl %r12d,%eax - xorl %edx,%ebp - addl -96(%r13),%esi - vpsrld $30,%ymm7,%ymm8 - vpslld $2,%ymm7,%ymm7 - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpor %ymm8,%ymm7,%ymm7 - addl -92(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpaddd %ymm11,%ymm7,%ymm9 - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -88(%r13),%ecx - vmovdqu %ymm9,480(%rsp) - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -84(%r13),%ebx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - jmp .Lalign32_2 -.align 32 -.Lalign32_2: - vpalignr $8,%ymm6,%ymm7,%ymm8 - vpxor %ymm4,%ymm0,%ymm0 - addl -64(%r13),%ebp - xorl %esi,%ecx - vpxor %ymm1,%ymm0,%ymm0 - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - vpxor %ymm8,%ymm0,%ymm0 - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - vpsrld $30,%ymm0,%ymm8 - vpslld $2,%ymm0,%ymm0 - addl %r12d,%ebp - andl %edi,%ebx - addl -60(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - vpor %ymm8,%ymm0,%ymm0 - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - vpaddd %ymm11,%ymm0,%ymm9 - addl %r12d,%eax - andl %edi,%ebp - addl -56(%r13),%esi - xorl %ecx,%ebp - vmovdqu %ymm9,512(%rsp) - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl -52(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - addl -32(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - vpalignr $8,%ymm7,%ymm0,%ymm8 - vpxor %ymm5,%ymm1,%ymm1 - addl -28(%r13),%ebx - xorl %eax,%edx - vpxor %ymm2,%ymm1,%ymm1 - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - vpxor %ymm8,%ymm1,%ymm1 - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vpsrld $30,%ymm1,%ymm8 - vpslld $2,%ymm1,%ymm1 - addl %r12d,%ebx - andl %edi,%ecx - addl -24(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - vpor %ymm8,%ymm1,%ymm1 - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - vpaddd %ymm11,%ymm1,%ymm9 - addl %r12d,%ebp - andl %edi,%ebx - addl -20(%r13),%eax - xorl %edx,%ebx - vmovdqu %ymm9,544(%rsp) - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 0(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl 4(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - vpalignr $8,%ymm0,%ymm1,%ymm8 - vpxor %ymm6,%ymm2,%ymm2 - addl 8(%r13),%ecx - xorl %ebp,%esi - vpxor %ymm3,%ymm2,%ymm2 - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - vpxor %ymm8,%ymm2,%ymm2 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpsrld $30,%ymm2,%ymm8 - vpslld $2,%ymm2,%ymm2 - addl %r12d,%ecx - andl %edi,%edx - addl 12(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - vpor %ymm8,%ymm2,%ymm2 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vpaddd %ymm11,%ymm2,%ymm9 - addl %r12d,%ebx - andl %edi,%ecx - addl 32(%r13),%ebp - xorl %esi,%ecx - vmovdqu %ymm9,576(%rsp) - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 36(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 40(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - vpalignr $8,%ymm1,%ymm2,%ymm8 - vpxor %ymm7,%ymm3,%ymm3 - addl 44(%r13),%edx - xorl %ebx,%eax - vpxor %ymm4,%ymm3,%ymm3 - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - vpxor %ymm8,%ymm3,%ymm3 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - vpsrld $30,%ymm3,%ymm8 - vpslld $2,%ymm3,%ymm3 - addl %r12d,%edx - andl %edi,%esi - addl 64(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - vpor %ymm8,%ymm3,%ymm3 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpaddd %ymm11,%ymm3,%ymm9 - addl %r12d,%ecx - andl %edi,%edx - addl 68(%r13),%ebx - xorl %eax,%edx - vmovdqu %ymm9,608(%rsp) - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl 72(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 76(%r13),%eax - xorl %edx,%ebx - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl 100(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 104(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 108(%r13),%ebx - leaq 256(%r13),%r13 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -128(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -124(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -120(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -116(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -96(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -92(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -88(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -84(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -60(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -56(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -52(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -32(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -28(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -24(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -20(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - addl %r12d,%edx - leaq 128(%r9),%r13 - leaq 128(%r9),%rdi - cmpq %r10,%r13 - cmovaeq %r9,%r13 - - - addl 0(%r8),%edx - addl 4(%r8),%esi - addl 8(%r8),%ebp - movl %edx,0(%r8) - addl 12(%r8),%ebx - movl %esi,4(%r8) - movl %edx,%eax - addl 16(%r8),%ecx - movl %ebp,%r12d - movl %ebp,8(%r8) - movl %ebx,%edx - - movl %ebx,12(%r8) - movl %esi,%ebp - movl %ecx,16(%r8) - - movl %ecx,%esi - movl %r12d,%ecx - - - cmpq %r10,%r9 - je .Ldone_avx2 - vmovdqu 64(%r11),%ymm6 - cmpq %r10,%rdi - ja .Last_avx2 - - vmovdqu -64(%rdi),%xmm0 - vmovdqu -48(%rdi),%xmm1 - vmovdqu -32(%rdi),%xmm2 - vmovdqu -16(%rdi),%xmm3 - vinserti128 $1,0(%r13),%ymm0,%ymm0 - vinserti128 $1,16(%r13),%ymm1,%ymm1 - vinserti128 $1,32(%r13),%ymm2,%ymm2 - vinserti128 $1,48(%r13),%ymm3,%ymm3 - jmp .Last_avx2 - -.align 32 -.Last_avx2: - leaq 128+16(%rsp),%r13 - rorxl $2,%ebp,%ebx - andnl %edx,%ebp,%edi - andl %ecx,%ebp - xorl %edi,%ebp - subq $-128,%r9 - addl -128(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -124(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -120(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -116(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -96(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl -92(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl -88(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -84(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -64(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -60(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -56(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl -52(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl -32(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -28(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -24(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -20(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl 0(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl 4(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl 8(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl 12(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 32(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 36(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 40(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 44(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vmovdqu -64(%r11),%ymm11 - vpshufb %ymm6,%ymm0,%ymm0 - addl 68(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 72(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 76(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 96(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 100(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpshufb %ymm6,%ymm1,%ymm1 - vpaddd %ymm11,%ymm0,%ymm8 - addl 104(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl 108(%r13),%edx - leaq 256(%r13),%r13 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -128(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -124(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -120(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vmovdqu %ymm8,0(%rsp) - vpshufb %ymm6,%ymm2,%ymm2 - vpaddd %ymm11,%ymm1,%ymm9 - addl -116(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -92(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -88(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -84(%r13),%ebx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - vmovdqu %ymm9,32(%rsp) - vpshufb %ymm6,%ymm3,%ymm3 - vpaddd %ymm11,%ymm2,%ymm6 - addl -64(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl -60(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl -56(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl -52(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - addl -32(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - jmp .Lalign32_3 -.align 32 -.Lalign32_3: - vmovdqu %ymm6,64(%rsp) - vpaddd %ymm11,%ymm3,%ymm7 - addl -28(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl -24(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl -20(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 0(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl 4(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - vmovdqu %ymm7,96(%rsp) - addl 8(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - addl 12(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl 32(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 36(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 40(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - vpalignr $8,%ymm0,%ymm1,%ymm4 - addl 44(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - vpsrldq $4,%ymm3,%ymm8 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpxor %ymm0,%ymm4,%ymm4 - vpxor %ymm2,%ymm8,%ymm8 - xorl %ebp,%esi - addl %r12d,%edx - vpxor %ymm8,%ymm4,%ymm4 - andl %edi,%esi - addl 64(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - vpsrld $31,%ymm4,%ymm8 - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - vpslldq $12,%ymm4,%ymm10 - vpaddd %ymm4,%ymm4,%ymm4 - rorxl $2,%edx,%esi - xorl %eax,%edx - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm4,%ymm4 - addl %r12d,%ecx - andl %edi,%edx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm4,%ymm4 - addl 68(%r13),%ebx - xorl %eax,%edx - vpxor %ymm10,%ymm4,%ymm4 - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - vpaddd %ymm11,%ymm4,%ymm9 - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vmovdqu %ymm9,128(%rsp) - addl %r12d,%ebx - andl %edi,%ecx - addl 72(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 76(%r13),%eax - xorl %edx,%ebx - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpalignr $8,%ymm1,%ymm2,%ymm5 - addl 96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpsrldq $4,%ymm4,%ymm8 - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm3,%ymm8,%ymm8 - addl 100(%r13),%edx - leal (%rdx,%rax,1),%edx - vpxor %ymm8,%ymm5,%ymm5 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - vpsrld $31,%ymm5,%ymm8 - vmovdqu -32(%r11),%ymm11 - xorl %ebx,%esi - addl 104(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - vpslldq $12,%ymm5,%ymm10 - vpaddd %ymm5,%ymm5,%ymm5 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm5,%ymm5 - xorl %eax,%edx - addl %r12d,%ecx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm5,%ymm5 - xorl %ebp,%edx - addl 108(%r13),%ebx - leaq 256(%r13),%r13 - vpxor %ymm10,%ymm5,%ymm5 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpaddd %ymm11,%ymm5,%ymm9 - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vmovdqu %ymm9,160(%rsp) - addl -128(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpalignr $8,%ymm2,%ymm3,%ymm6 - addl -124(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - vpsrldq $4,%ymm5,%ymm8 - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpxor %ymm2,%ymm6,%ymm6 - vpxor %ymm4,%ymm8,%ymm8 - addl -120(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpxor %ymm8,%ymm6,%ymm6 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - vpsrld $31,%ymm6,%ymm8 - xorl %ecx,%eax - addl -116(%r13),%edx - leal (%rdx,%rax,1),%edx - vpslldq $12,%ymm6,%ymm10 - vpaddd %ymm6,%ymm6,%ymm6 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm6,%ymm6 - xorl %ebp,%esi - addl %r12d,%edx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm6,%ymm6 - xorl %ebx,%esi - addl -96(%r13),%ecx - vpxor %ymm10,%ymm6,%ymm6 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpaddd %ymm11,%ymm6,%ymm9 - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - vmovdqu %ymm9,192(%rsp) - addl -92(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vpalignr $8,%ymm3,%ymm4,%ymm7 - addl -88(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpsrldq $4,%ymm6,%ymm8 - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpxor %ymm3,%ymm7,%ymm7 - vpxor %ymm5,%ymm8,%ymm8 - addl -84(%r13),%eax - leal (%rax,%rbx,1),%eax - vpxor %ymm8,%ymm7,%ymm7 - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - vpsrld $31,%ymm7,%ymm8 - xorl %edx,%ebp - addl -64(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpslldq $12,%ymm7,%ymm10 - vpaddd %ymm7,%ymm7,%ymm7 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm7,%ymm7 - xorl %ebx,%eax - addl %r12d,%esi - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm7,%ymm7 - xorl %ecx,%eax - addl -60(%r13),%edx - vpxor %ymm10,%ymm7,%ymm7 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpaddd %ymm11,%ymm7,%ymm9 - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vmovdqu %ymm9,224(%rsp) - addl -56(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -52(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -32(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -28(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -24(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -20(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - addl %r12d,%edx - leaq 128(%rsp),%r13 - - - addl 0(%r8),%edx - addl 4(%r8),%esi - addl 8(%r8),%ebp - movl %edx,0(%r8) - addl 12(%r8),%ebx - movl %esi,4(%r8) - movl %edx,%eax - addl 16(%r8),%ecx - movl %ebp,%r12d - movl %ebp,8(%r8) - movl %ebx,%edx - - movl %ebx,12(%r8) - movl %esi,%ebp - movl %ecx,16(%r8) - - movl %ecx,%esi - movl %r12d,%ecx - - - cmpq %r10,%r9 - jbe .Loop_avx2 - -.Ldone_avx2: - vzeroupper - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size sha1_block_data_order_avx2,.-sha1_block_data_order_avx2 -.align 64 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm/x64-elf-gas/sha/sha256-mb-x86_64.s b/deps/openssl/asm/x64-elf-gas/sha/sha256-mb-x86_64.s deleted file mode 100644 index bd72a459ab249d..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/sha/sha256-mb-x86_64.s +++ /dev/null @@ -1,7902 +0,0 @@ -.text - - - -.globl sha256_multi_block -.type sha256_multi_block,@function -.align 32 -sha256_multi_block: - movq OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - testl $268435456,%ecx - jnz _avx_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -.Loop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone - - movdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - movdqu 32-128(%rdi),%xmm9 - movdqu 64-128(%rdi),%xmm10 - movdqu 96-128(%rdi),%xmm11 - movdqu 128-128(%rdi),%xmm12 - movdqu 160-128(%rdi),%xmm13 - movdqu 192-128(%rdi),%xmm14 - movdqu 224-128(%rdi),%xmm15 - movdqu .Lpbswap(%rip),%xmm6 - jmp .Loop - -.align 32 -.Loop: - movdqa %xmm10,%xmm4 - pxor %xmm9,%xmm4 - movd 0(%r8),%xmm5 - movd 0(%r9),%xmm0 - movd 0(%r10),%xmm1 - movd 0(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 4(%r8),%xmm5 - movd 4(%r9),%xmm0 - movd 4(%r10),%xmm1 - movd 4(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,16-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 8(%r8),%xmm5 - movd 8(%r9),%xmm0 - movd 8(%r10),%xmm1 - movd 8(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 12(%r8),%xmm5 - movd 12(%r9),%xmm0 - movd 12(%r10),%xmm1 - movd 12(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,48-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 16(%r8),%xmm5 - movd 16(%r9),%xmm0 - movd 16(%r10),%xmm1 - movd 16(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 20(%r8),%xmm5 - movd 20(%r9),%xmm0 - movd 20(%r10),%xmm1 - movd 20(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,80-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 24(%r8),%xmm5 - movd 24(%r9),%xmm0 - movd 24(%r10),%xmm1 - movd 24(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 28(%r8),%xmm5 - movd 28(%r9),%xmm0 - movd 28(%r10),%xmm1 - movd 28(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,112-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movd 32(%r8),%xmm5 - movd 32(%r9),%xmm0 - movd 32(%r10),%xmm1 - movd 32(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 36(%r8),%xmm5 - movd 36(%r9),%xmm0 - movd 36(%r10),%xmm1 - movd 36(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,144-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 40(%r8),%xmm5 - movd 40(%r9),%xmm0 - movd 40(%r10),%xmm1 - movd 40(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 44(%r8),%xmm5 - movd 44(%r9),%xmm0 - movd 44(%r10),%xmm1 - movd 44(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,176-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 48(%r8),%xmm5 - movd 48(%r9),%xmm0 - movd 48(%r10),%xmm1 - movd 48(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 52(%r8),%xmm5 - movd 52(%r9),%xmm0 - movd 52(%r10),%xmm1 - movd 52(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,208-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 56(%r8),%xmm5 - movd 56(%r9),%xmm0 - movd 56(%r10),%xmm1 - movd 56(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - movd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - movd 60(%r10),%xmm1 - leaq 64(%r10),%r10 - movd 60(%r11),%xmm2 - leaq 64(%r11),%r11 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,240-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - prefetcht0 63(%r8) - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - prefetcht0 63(%r9) - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - prefetcht0 63(%r10) - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - prefetcht0 63(%r11) - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp .Loop_16_xx -.align 32 -.Loop_16_xx: - movdqa 16-128(%rax),%xmm6 - paddd 144-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 224-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 32-128(%rax),%xmm5 - paddd 160-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 240-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,16-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 48-128(%rax),%xmm6 - paddd 176-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 0-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 64-128(%rax),%xmm5 - paddd 192-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 16-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,48-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 80-128(%rax),%xmm6 - paddd 208-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 32-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 96-128(%rax),%xmm5 - paddd 224-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 48-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,80-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 112-128(%rax),%xmm6 - paddd 240-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 64-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 128-128(%rax),%xmm5 - paddd 0-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 80-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,112-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqa 144-128(%rax),%xmm6 - paddd 16-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 96-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 160-128(%rax),%xmm5 - paddd 32-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 112-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,144-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 176-128(%rax),%xmm6 - paddd 48-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 128-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 192-128(%rax),%xmm5 - paddd 64-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 144-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,176-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 208-128(%rax),%xmm6 - paddd 80-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 160-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 224-128(%rax),%xmm5 - paddd 96-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 176-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,208-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 240-128(%rax),%xmm6 - paddd 112-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 192-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 0-128(%rax),%xmm5 - paddd 128-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 208-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,240-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - decl %ecx - jnz .Loop_16_xx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - - movdqa (%rbx),%xmm7 - cmpl 0(%rbx),%ecx - pxor %xmm0,%xmm0 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm7,%xmm6 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm0,%xmm6 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm6,%xmm7 - cmovgeq %rbp,%r11 - - movdqu 0-128(%rdi),%xmm0 - pand %xmm6,%xmm8 - movdqu 32-128(%rdi),%xmm1 - pand %xmm6,%xmm9 - movdqu 64-128(%rdi),%xmm2 - pand %xmm6,%xmm10 - movdqu 96-128(%rdi),%xmm5 - pand %xmm6,%xmm11 - paddd %xmm0,%xmm8 - movdqu 128-128(%rdi),%xmm0 - pand %xmm6,%xmm12 - paddd %xmm1,%xmm9 - movdqu 160-128(%rdi),%xmm1 - pand %xmm6,%xmm13 - paddd %xmm2,%xmm10 - movdqu 192-128(%rdi),%xmm2 - pand %xmm6,%xmm14 - paddd %xmm5,%xmm11 - movdqu 224-128(%rdi),%xmm5 - pand %xmm6,%xmm15 - paddd %xmm0,%xmm12 - paddd %xmm1,%xmm13 - movdqu %xmm8,0-128(%rdi) - paddd %xmm2,%xmm14 - movdqu %xmm9,32-128(%rdi) - paddd %xmm5,%xmm15 - movdqu %xmm10,64-128(%rdi) - movdqu %xmm11,96-128(%rdi) - movdqu %xmm12,128-128(%rdi) - movdqu %xmm13,160-128(%rdi) - movdqu %xmm14,192-128(%rdi) - movdqu %xmm15,224-128(%rdi) - - movdqa %xmm7,(%rbx) - movdqa .Lpbswap(%rip),%xmm6 - decl %edx - jnz .Loop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande - -.Ldone: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha256_multi_block,.-sha256_multi_block -.type sha256_multi_block_shaext,@function -.align 32 -sha256_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 128(%rdi),%rdi - movq %rax,272(%rsp) -.Lbody_shaext: - leaq 256(%rsp),%rbx - leaq K256_shaext+128(%rip),%rbp - -.Loop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz .Ldone_shaext - - movq 0-128(%rdi),%xmm12 - movq 32-128(%rdi),%xmm4 - movq 64-128(%rdi),%xmm13 - movq 96-128(%rdi),%xmm5 - movq 128-128(%rdi),%xmm8 - movq 160-128(%rdi),%xmm9 - movq 192-128(%rdi),%xmm10 - movq 224-128(%rdi),%xmm11 - - punpckldq %xmm4,%xmm12 - punpckldq %xmm5,%xmm13 - punpckldq %xmm9,%xmm8 - punpckldq %xmm11,%xmm10 - movdqa K256_shaext-16(%rip),%xmm3 - - movdqa %xmm12,%xmm14 - movdqa %xmm13,%xmm15 - punpcklqdq %xmm8,%xmm12 - punpcklqdq %xmm10,%xmm13 - punpckhqdq %xmm8,%xmm14 - punpckhqdq %xmm10,%xmm15 - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - jmp .Loop_shaext - -.align 32 -.Loop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm8 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm9 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm10 -.byte 102,68,15,56,0,195 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 - movdqu 48(%r9),%xmm11 - leaq 64(%r9),%r9 - - movdqa 0-128(%rbp),%xmm0 -.byte 102,15,56,0,235 - paddd %xmm4,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm0,%xmm1 - movdqa 0-128(%rbp),%xmm2 -.byte 102,68,15,56,0,203 - paddd %xmm8,%xmm2 - movdqa %xmm13,80(%rsp) -.byte 69,15,56,203,236 - pxor %xmm14,%xmm8 - movdqa %xmm2,%xmm0 - movdqa %xmm15,112(%rsp) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm12,64(%rsp) -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pxor %xmm14,%xmm8 - movdqa %xmm14,96(%rsp) - movdqa 16-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 102,15,56,0,243 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 16-128(%rbp),%xmm2 - paddd %xmm9,%xmm2 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - prefetcht0 127(%r8) -.byte 102,15,56,0,251 -.byte 102,68,15,56,0,211 - prefetcht0 127(%r9) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,68,15,56,0,219 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 32-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 32-128(%rbp),%xmm2 - paddd %xmm10,%xmm2 -.byte 69,15,56,203,236 -.byte 69,15,56,204,193 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,15,58,15,222,4 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 48-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - - movdqa %xmm1,%xmm0 - movdqa 48-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 64-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 64-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 80-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 80-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 96-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 96-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 112-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 112-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 128-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 128-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 144-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 144-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 160-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 160-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 176-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 176-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 192-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 192-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 208-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 208-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 224-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 224-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 - nop -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movl $1,%ecx - pxor %xmm6,%xmm6 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - movdqa 240-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 - movq (%rbx),%xmm7 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 240-128(%rbp),%xmm2 - paddd %xmm11,%xmm2 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - pshufd $0x00,%xmm7,%xmm9 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - pshufd $0x55,%xmm7,%xmm10 - movdqa %xmm7,%xmm11 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pcmpgtd %xmm6,%xmm9 - pcmpgtd %xmm6,%xmm10 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pcmpgtd %xmm6,%xmm11 - movdqa K256_shaext-16(%rip),%xmm3 -.byte 69,15,56,203,247 - - pand %xmm9,%xmm13 - pand %xmm10,%xmm15 - pand %xmm9,%xmm12 - pand %xmm10,%xmm14 - paddd %xmm7,%xmm11 - - paddd 80(%rsp),%xmm13 - paddd 112(%rsp),%xmm15 - paddd 64(%rsp),%xmm12 - paddd 96(%rsp),%xmm14 - - movq %xmm11,(%rbx) - decl %edx - jnz .Loop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - - movdqa %xmm12,%xmm5 - movdqa %xmm13,%xmm6 - punpckldq %xmm14,%xmm12 - punpckhdq %xmm14,%xmm5 - punpckldq %xmm15,%xmm13 - punpckhdq %xmm15,%xmm6 - - movq %xmm12,0-128(%rdi) - psrldq $8,%xmm12 - movq %xmm5,128-128(%rdi) - psrldq $8,%xmm5 - movq %xmm12,32-128(%rdi) - movq %xmm5,160-128(%rdi) - - movq %xmm13,64-128(%rdi) - psrldq $8,%xmm13 - movq %xmm6,192-128(%rdi) - psrldq $8,%xmm6 - movq %xmm13,96-128(%rdi) - movq %xmm6,224-128(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz .Loop_grande_shaext - -.Ldone_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_shaext: - .byte 0xf3,0xc3 -.size sha256_multi_block_shaext,.-sha256_multi_block_shaext -.type sha256_multi_block_avx,@function -.align 32 -sha256_multi_block_avx: -_avx_shortcut: - shrq $32,%rcx - cmpl $2,%edx - jb .Lavx - testl $32,%ecx - jnz _avx2_shortcut - jmp .Lavx -.align 32 -.Lavx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody_avx: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -.Loop_grande_avx: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone_avx - - vmovdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - vmovdqu 32-128(%rdi),%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - vmovdqu 96-128(%rdi),%xmm11 - vmovdqu 128-128(%rdi),%xmm12 - vmovdqu 160-128(%rdi),%xmm13 - vmovdqu 192-128(%rdi),%xmm14 - vmovdqu 224-128(%rdi),%xmm15 - vmovdqu .Lpbswap(%rip),%xmm6 - jmp .Loop_avx - -.align 32 -.Loop_avx: - vpxor %xmm9,%xmm10,%xmm4 - vmovd 0(%r8),%xmm5 - vmovd 0(%r9),%xmm0 - vpinsrd $1,0(%r10),%xmm5,%xmm5 - vpinsrd $1,0(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,0-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovd 4(%r8),%xmm5 - vmovd 4(%r9),%xmm0 - vpinsrd $1,4(%r10),%xmm5,%xmm5 - vpinsrd $1,4(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm5,16-128(%rax) - vpaddd %xmm14,%xmm5,%xmm5 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm5,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovd 8(%r8),%xmm5 - vmovd 8(%r9),%xmm0 - vpinsrd $1,8(%r10),%xmm5,%xmm5 - vpinsrd $1,8(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,32-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovd 12(%r8),%xmm5 - vmovd 12(%r9),%xmm0 - vpinsrd $1,12(%r10),%xmm5,%xmm5 - vpinsrd $1,12(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm5,48-128(%rax) - vpaddd %xmm12,%xmm5,%xmm5 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm5,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovd 16(%r8),%xmm5 - vmovd 16(%r9),%xmm0 - vpinsrd $1,16(%r10),%xmm5,%xmm5 - vpinsrd $1,16(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,64-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovd 20(%r8),%xmm5 - vmovd 20(%r9),%xmm0 - vpinsrd $1,20(%r10),%xmm5,%xmm5 - vpinsrd $1,20(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm5,80-128(%rax) - vpaddd %xmm10,%xmm5,%xmm5 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm5,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovd 24(%r8),%xmm5 - vmovd 24(%r9),%xmm0 - vpinsrd $1,24(%r10),%xmm5,%xmm5 - vpinsrd $1,24(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,96-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovd 28(%r8),%xmm5 - vmovd 28(%r9),%xmm0 - vpinsrd $1,28(%r10),%xmm5,%xmm5 - vpinsrd $1,28(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm5,112-128(%rax) - vpaddd %xmm8,%xmm5,%xmm5 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm5,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovd 32(%r8),%xmm5 - vmovd 32(%r9),%xmm0 - vpinsrd $1,32(%r10),%xmm5,%xmm5 - vpinsrd $1,32(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,128-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovd 36(%r8),%xmm5 - vmovd 36(%r9),%xmm0 - vpinsrd $1,36(%r10),%xmm5,%xmm5 - vpinsrd $1,36(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm5,144-128(%rax) - vpaddd %xmm14,%xmm5,%xmm5 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm5,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovd 40(%r8),%xmm5 - vmovd 40(%r9),%xmm0 - vpinsrd $1,40(%r10),%xmm5,%xmm5 - vpinsrd $1,40(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,160-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovd 44(%r8),%xmm5 - vmovd 44(%r9),%xmm0 - vpinsrd $1,44(%r10),%xmm5,%xmm5 - vpinsrd $1,44(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm5,176-128(%rax) - vpaddd %xmm12,%xmm5,%xmm5 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm5,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovd 48(%r8),%xmm5 - vmovd 48(%r9),%xmm0 - vpinsrd $1,48(%r10),%xmm5,%xmm5 - vpinsrd $1,48(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,192-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovd 52(%r8),%xmm5 - vmovd 52(%r9),%xmm0 - vpinsrd $1,52(%r10),%xmm5,%xmm5 - vpinsrd $1,52(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm5,208-128(%rax) - vpaddd %xmm10,%xmm5,%xmm5 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm5,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovd 56(%r8),%xmm5 - vmovd 56(%r9),%xmm0 - vpinsrd $1,56(%r10),%xmm5,%xmm5 - vpinsrd $1,56(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,224-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - vmovd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - vpinsrd $1,60(%r10),%xmm5,%xmm5 - leaq 64(%r10),%r10 - vpinsrd $1,60(%r11),%xmm0,%xmm0 - leaq 64(%r11),%r11 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm5,240-128(%rax) - vpaddd %xmm8,%xmm5,%xmm5 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - prefetcht0 63(%r8) - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - prefetcht0 63(%r9) - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - prefetcht0 63(%r10) - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - prefetcht0 63(%r11) - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm5,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp .Loop_16_xx_avx -.align 32 -.Loop_16_xx_avx: - vmovdqu 16-128(%rax),%xmm6 - vpaddd 144-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 224-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,0-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovdqu 32-128(%rax),%xmm5 - vpaddd 160-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 240-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm6,16-128(%rax) - vpaddd %xmm14,%xmm6,%xmm6 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm6,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovdqu 48-128(%rax),%xmm6 - vpaddd 176-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 0-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,32-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovdqu 64-128(%rax),%xmm5 - vpaddd 192-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 16-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm6,48-128(%rax) - vpaddd %xmm12,%xmm6,%xmm6 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm6,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovdqu 80-128(%rax),%xmm6 - vpaddd 208-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 32-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,64-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovdqu 96-128(%rax),%xmm5 - vpaddd 224-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 48-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm6,80-128(%rax) - vpaddd %xmm10,%xmm6,%xmm6 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm6,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovdqu 112-128(%rax),%xmm6 - vpaddd 240-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 64-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,96-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovdqu 128-128(%rax),%xmm5 - vpaddd 0-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 80-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm6,112-128(%rax) - vpaddd %xmm8,%xmm6,%xmm6 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovdqu 144-128(%rax),%xmm6 - vpaddd 16-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 96-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,128-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovdqu 160-128(%rax),%xmm5 - vpaddd 32-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 112-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm6,144-128(%rax) - vpaddd %xmm14,%xmm6,%xmm6 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm6,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovdqu 176-128(%rax),%xmm6 - vpaddd 48-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 128-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,160-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovdqu 192-128(%rax),%xmm5 - vpaddd 64-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 144-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm6,176-128(%rax) - vpaddd %xmm12,%xmm6,%xmm6 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm6,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovdqu 208-128(%rax),%xmm6 - vpaddd 80-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 160-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,192-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovdqu 224-128(%rax),%xmm5 - vpaddd 96-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 176-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm6,208-128(%rax) - vpaddd %xmm10,%xmm6,%xmm6 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm6,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovdqu 240-128(%rax),%xmm6 - vpaddd 112-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 192-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,224-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovdqu 0-128(%rax),%xmm5 - vpaddd 128-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 208-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm6,240-128(%rax) - vpaddd %xmm8,%xmm6,%xmm6 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - decl %ecx - jnz .Loop_16_xx_avx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqa (%rbx),%xmm7 - vpxor %xmm0,%xmm0,%xmm0 - vmovdqa %xmm7,%xmm6 - vpcmpgtd %xmm0,%xmm6,%xmm6 - vpaddd %xmm6,%xmm7,%xmm7 - - vmovdqu 0-128(%rdi),%xmm0 - vpand %xmm6,%xmm8,%xmm8 - vmovdqu 32-128(%rdi),%xmm1 - vpand %xmm6,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm2 - vpand %xmm6,%xmm10,%xmm10 - vmovdqu 96-128(%rdi),%xmm5 - vpand %xmm6,%xmm11,%xmm11 - vpaddd %xmm0,%xmm8,%xmm8 - vmovdqu 128-128(%rdi),%xmm0 - vpand %xmm6,%xmm12,%xmm12 - vpaddd %xmm1,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm1 - vpand %xmm6,%xmm13,%xmm13 - vpaddd %xmm2,%xmm10,%xmm10 - vmovdqu 192-128(%rdi),%xmm2 - vpand %xmm6,%xmm14,%xmm14 - vpaddd %xmm5,%xmm11,%xmm11 - vmovdqu 224-128(%rdi),%xmm5 - vpand %xmm6,%xmm15,%xmm15 - vpaddd %xmm0,%xmm12,%xmm12 - vpaddd %xmm1,%xmm13,%xmm13 - vmovdqu %xmm8,0-128(%rdi) - vpaddd %xmm2,%xmm14,%xmm14 - vmovdqu %xmm9,32-128(%rdi) - vpaddd %xmm5,%xmm15,%xmm15 - vmovdqu %xmm10,64-128(%rdi) - vmovdqu %xmm11,96-128(%rdi) - vmovdqu %xmm12,128-128(%rdi) - vmovdqu %xmm13,160-128(%rdi) - vmovdqu %xmm14,192-128(%rdi) - vmovdqu %xmm15,224-128(%rdi) - - vmovdqu %xmm7,(%rbx) - vmovdqu .Lpbswap(%rip),%xmm6 - decl %edx - jnz .Loop_avx - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande_avx - -.Ldone_avx: - movq 272(%rsp),%rax - vzeroupper - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size sha256_multi_block_avx,.-sha256_multi_block_avx -.type sha256_multi_block_avx2,@function -.align 32 -sha256_multi_block_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576,%rsp - andq $-256,%rsp - movq %rax,544(%rsp) -.Lbody_avx2: - leaq K256+128(%rip),%rbp - leaq 128(%rdi),%rdi - -.Loop_grande_avx2: - movl %edx,552(%rsp) - xorl %edx,%edx - leaq 512(%rsp),%rbx - movq 0(%rsi),%r12 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r12 - movq 16(%rsi),%r13 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r13 - movq 32(%rsi),%r14 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r14 - movq 48(%rsi),%r15 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r15 - movq 64(%rsi),%r8 - movl 72(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,16(%rbx) - cmovleq %rbp,%r8 - movq 80(%rsi),%r9 - movl 88(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,20(%rbx) - cmovleq %rbp,%r9 - movq 96(%rsi),%r10 - movl 104(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,24(%rbx) - cmovleq %rbp,%r10 - movq 112(%rsi),%r11 - movl 120(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,28(%rbx) - cmovleq %rbp,%r11 - vmovdqu 0-128(%rdi),%ymm8 - leaq 128(%rsp),%rax - vmovdqu 32-128(%rdi),%ymm9 - leaq 256+128(%rsp),%rbx - vmovdqu 64-128(%rdi),%ymm10 - vmovdqu 96-128(%rdi),%ymm11 - vmovdqu 128-128(%rdi),%ymm12 - vmovdqu 160-128(%rdi),%ymm13 - vmovdqu 192-128(%rdi),%ymm14 - vmovdqu 224-128(%rdi),%ymm15 - vmovdqu .Lpbswap(%rip),%ymm6 - jmp .Loop_avx2 - -.align 32 -.Loop_avx2: - vpxor %ymm9,%ymm10,%ymm4 - vmovd 0(%r12),%xmm5 - vmovd 0(%r8),%xmm0 - vmovd 0(%r13),%xmm1 - vmovd 0(%r9),%xmm2 - vpinsrd $1,0(%r14),%xmm5,%xmm5 - vpinsrd $1,0(%r10),%xmm0,%xmm0 - vpinsrd $1,0(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,0(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,0-128(%rax) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovd 4(%r12),%xmm5 - vmovd 4(%r8),%xmm0 - vmovd 4(%r13),%xmm1 - vmovd 4(%r9),%xmm2 - vpinsrd $1,4(%r14),%xmm5,%xmm5 - vpinsrd $1,4(%r10),%xmm0,%xmm0 - vpinsrd $1,4(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,4(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm5,32-128(%rax) - vpaddd %ymm14,%ymm5,%ymm5 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm5,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovd 8(%r12),%xmm5 - vmovd 8(%r8),%xmm0 - vmovd 8(%r13),%xmm1 - vmovd 8(%r9),%xmm2 - vpinsrd $1,8(%r14),%xmm5,%xmm5 - vpinsrd $1,8(%r10),%xmm0,%xmm0 - vpinsrd $1,8(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,8(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,64-128(%rax) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovd 12(%r12),%xmm5 - vmovd 12(%r8),%xmm0 - vmovd 12(%r13),%xmm1 - vmovd 12(%r9),%xmm2 - vpinsrd $1,12(%r14),%xmm5,%xmm5 - vpinsrd $1,12(%r10),%xmm0,%xmm0 - vpinsrd $1,12(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,12(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm5,96-128(%rax) - vpaddd %ymm12,%ymm5,%ymm5 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm5,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovd 16(%r12),%xmm5 - vmovd 16(%r8),%xmm0 - vmovd 16(%r13),%xmm1 - vmovd 16(%r9),%xmm2 - vpinsrd $1,16(%r14),%xmm5,%xmm5 - vpinsrd $1,16(%r10),%xmm0,%xmm0 - vpinsrd $1,16(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,16(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,128-128(%rax) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovd 20(%r12),%xmm5 - vmovd 20(%r8),%xmm0 - vmovd 20(%r13),%xmm1 - vmovd 20(%r9),%xmm2 - vpinsrd $1,20(%r14),%xmm5,%xmm5 - vpinsrd $1,20(%r10),%xmm0,%xmm0 - vpinsrd $1,20(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,20(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm5,160-128(%rax) - vpaddd %ymm10,%ymm5,%ymm5 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm5,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovd 24(%r12),%xmm5 - vmovd 24(%r8),%xmm0 - vmovd 24(%r13),%xmm1 - vmovd 24(%r9),%xmm2 - vpinsrd $1,24(%r14),%xmm5,%xmm5 - vpinsrd $1,24(%r10),%xmm0,%xmm0 - vpinsrd $1,24(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,24(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,192-128(%rax) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovd 28(%r12),%xmm5 - vmovd 28(%r8),%xmm0 - vmovd 28(%r13),%xmm1 - vmovd 28(%r9),%xmm2 - vpinsrd $1,28(%r14),%xmm5,%xmm5 - vpinsrd $1,28(%r10),%xmm0,%xmm0 - vpinsrd $1,28(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,28(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm5,224-128(%rax) - vpaddd %ymm8,%ymm5,%ymm5 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm5,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovd 32(%r12),%xmm5 - vmovd 32(%r8),%xmm0 - vmovd 32(%r13),%xmm1 - vmovd 32(%r9),%xmm2 - vpinsrd $1,32(%r14),%xmm5,%xmm5 - vpinsrd $1,32(%r10),%xmm0,%xmm0 - vpinsrd $1,32(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,32(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,256-256-128(%rbx) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovd 36(%r12),%xmm5 - vmovd 36(%r8),%xmm0 - vmovd 36(%r13),%xmm1 - vmovd 36(%r9),%xmm2 - vpinsrd $1,36(%r14),%xmm5,%xmm5 - vpinsrd $1,36(%r10),%xmm0,%xmm0 - vpinsrd $1,36(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,36(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm5,288-256-128(%rbx) - vpaddd %ymm14,%ymm5,%ymm5 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm5,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovd 40(%r12),%xmm5 - vmovd 40(%r8),%xmm0 - vmovd 40(%r13),%xmm1 - vmovd 40(%r9),%xmm2 - vpinsrd $1,40(%r14),%xmm5,%xmm5 - vpinsrd $1,40(%r10),%xmm0,%xmm0 - vpinsrd $1,40(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,40(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,320-256-128(%rbx) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovd 44(%r12),%xmm5 - vmovd 44(%r8),%xmm0 - vmovd 44(%r13),%xmm1 - vmovd 44(%r9),%xmm2 - vpinsrd $1,44(%r14),%xmm5,%xmm5 - vpinsrd $1,44(%r10),%xmm0,%xmm0 - vpinsrd $1,44(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,44(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm5,352-256-128(%rbx) - vpaddd %ymm12,%ymm5,%ymm5 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm5,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovd 48(%r12),%xmm5 - vmovd 48(%r8),%xmm0 - vmovd 48(%r13),%xmm1 - vmovd 48(%r9),%xmm2 - vpinsrd $1,48(%r14),%xmm5,%xmm5 - vpinsrd $1,48(%r10),%xmm0,%xmm0 - vpinsrd $1,48(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,48(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,384-256-128(%rbx) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovd 52(%r12),%xmm5 - vmovd 52(%r8),%xmm0 - vmovd 52(%r13),%xmm1 - vmovd 52(%r9),%xmm2 - vpinsrd $1,52(%r14),%xmm5,%xmm5 - vpinsrd $1,52(%r10),%xmm0,%xmm0 - vpinsrd $1,52(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,52(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm5,416-256-128(%rbx) - vpaddd %ymm10,%ymm5,%ymm5 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm5,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovd 56(%r12),%xmm5 - vmovd 56(%r8),%xmm0 - vmovd 56(%r13),%xmm1 - vmovd 56(%r9),%xmm2 - vpinsrd $1,56(%r14),%xmm5,%xmm5 - vpinsrd $1,56(%r10),%xmm0,%xmm0 - vpinsrd $1,56(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,56(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,448-256-128(%rbx) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovd 60(%r12),%xmm5 - leaq 64(%r12),%r12 - vmovd 60(%r8),%xmm0 - leaq 64(%r8),%r8 - vmovd 60(%r13),%xmm1 - leaq 64(%r13),%r13 - vmovd 60(%r9),%xmm2 - leaq 64(%r9),%r9 - vpinsrd $1,60(%r14),%xmm5,%xmm5 - leaq 64(%r14),%r14 - vpinsrd $1,60(%r10),%xmm0,%xmm0 - leaq 64(%r10),%r10 - vpinsrd $1,60(%r15),%xmm1,%xmm1 - leaq 64(%r15),%r15 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,60(%r11),%xmm2,%xmm2 - leaq 64(%r11),%r11 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm5,480-256-128(%rbx) - vpaddd %ymm8,%ymm5,%ymm5 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r12) - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - prefetcht0 63(%r13) - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r14) - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - prefetcht0 63(%r15) - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm9,%ymm1 - prefetcht0 63(%r8) - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - prefetcht0 63(%r9) - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r10) - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm5,%ymm12,%ymm12 - prefetcht0 63(%r11) - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovdqu 0-128(%rax),%ymm5 - movl $3,%ecx - jmp .Loop_16_xx_avx2 -.align 32 -.Loop_16_xx_avx2: - vmovdqu 32-128(%rax),%ymm6 - vpaddd 288-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 448-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,0-128(%rax) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovdqu 64-128(%rax),%ymm5 - vpaddd 320-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 480-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm6,32-128(%rax) - vpaddd %ymm14,%ymm6,%ymm6 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm6,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovdqu 96-128(%rax),%ymm6 - vpaddd 352-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 0-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,64-128(%rax) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovdqu 128-128(%rax),%ymm5 - vpaddd 384-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 32-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm6,96-128(%rax) - vpaddd %ymm12,%ymm6,%ymm6 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm6,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovdqu 160-128(%rax),%ymm6 - vpaddd 416-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 64-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,128-128(%rax) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovdqu 192-128(%rax),%ymm5 - vpaddd 448-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 96-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm6,160-128(%rax) - vpaddd %ymm10,%ymm6,%ymm6 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm6,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovdqu 224-128(%rax),%ymm6 - vpaddd 480-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 128-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,192-128(%rax) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovdqu 256-256-128(%rbx),%ymm5 - vpaddd 0-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 160-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm6,224-128(%rax) - vpaddd %ymm8,%ymm6,%ymm6 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm6,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovdqu 288-256-128(%rbx),%ymm6 - vpaddd 32-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 192-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,256-256-128(%rbx) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovdqu 320-256-128(%rbx),%ymm5 - vpaddd 64-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 224-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm6,288-256-128(%rbx) - vpaddd %ymm14,%ymm6,%ymm6 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm6,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovdqu 352-256-128(%rbx),%ymm6 - vpaddd 96-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 256-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,320-256-128(%rbx) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovdqu 384-256-128(%rbx),%ymm5 - vpaddd 128-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 288-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm6,352-256-128(%rbx) - vpaddd %ymm12,%ymm6,%ymm6 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm6,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovdqu 416-256-128(%rbx),%ymm6 - vpaddd 160-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 320-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,384-256-128(%rbx) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovdqu 448-256-128(%rbx),%ymm5 - vpaddd 192-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 352-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm6,416-256-128(%rbx) - vpaddd %ymm10,%ymm6,%ymm6 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm6,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovdqu 480-256-128(%rbx),%ymm6 - vpaddd 224-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 384-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,448-256-128(%rbx) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovdqu 0-128(%rax),%ymm5 - vpaddd 256-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 416-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm6,480-256-128(%rbx) - vpaddd %ymm8,%ymm6,%ymm6 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm6,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - decl %ecx - jnz .Loop_16_xx_avx2 - - movl $1,%ecx - leaq 512(%rsp),%rbx - leaq K256+128(%rip),%rbp - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r12 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r13 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r14 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r15 - cmpl 16(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 20(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 24(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 28(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqa (%rbx),%ymm7 - vpxor %ymm0,%ymm0,%ymm0 - vmovdqa %ymm7,%ymm6 - vpcmpgtd %ymm0,%ymm6,%ymm6 - vpaddd %ymm6,%ymm7,%ymm7 - - vmovdqu 0-128(%rdi),%ymm0 - vpand %ymm6,%ymm8,%ymm8 - vmovdqu 32-128(%rdi),%ymm1 - vpand %ymm6,%ymm9,%ymm9 - vmovdqu 64-128(%rdi),%ymm2 - vpand %ymm6,%ymm10,%ymm10 - vmovdqu 96-128(%rdi),%ymm5 - vpand %ymm6,%ymm11,%ymm11 - vpaddd %ymm0,%ymm8,%ymm8 - vmovdqu 128-128(%rdi),%ymm0 - vpand %ymm6,%ymm12,%ymm12 - vpaddd %ymm1,%ymm9,%ymm9 - vmovdqu 160-128(%rdi),%ymm1 - vpand %ymm6,%ymm13,%ymm13 - vpaddd %ymm2,%ymm10,%ymm10 - vmovdqu 192-128(%rdi),%ymm2 - vpand %ymm6,%ymm14,%ymm14 - vpaddd %ymm5,%ymm11,%ymm11 - vmovdqu 224-128(%rdi),%ymm5 - vpand %ymm6,%ymm15,%ymm15 - vpaddd %ymm0,%ymm12,%ymm12 - vpaddd %ymm1,%ymm13,%ymm13 - vmovdqu %ymm8,0-128(%rdi) - vpaddd %ymm2,%ymm14,%ymm14 - vmovdqu %ymm9,32-128(%rdi) - vpaddd %ymm5,%ymm15,%ymm15 - vmovdqu %ymm10,64-128(%rdi) - vmovdqu %ymm11,96-128(%rdi) - vmovdqu %ymm12,128-128(%rdi) - vmovdqu %ymm13,160-128(%rdi) - vmovdqu %ymm14,192-128(%rdi) - vmovdqu %ymm15,224-128(%rdi) - - vmovdqu %ymm7,(%rbx) - leaq 256+128(%rsp),%rbx - vmovdqu .Lpbswap(%rip),%ymm6 - decl %edx - jnz .Loop_avx2 - - - - - - - -.Ldone_avx2: - movq 544(%rsp),%rax - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size sha256_multi_block_avx2,.-sha256_multi_block_avx2 -.align 256 -K256: -.long 1116352408,1116352408,1116352408,1116352408 -.long 1116352408,1116352408,1116352408,1116352408 -.long 1899447441,1899447441,1899447441,1899447441 -.long 1899447441,1899447441,1899447441,1899447441 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3921009573,3921009573,3921009573,3921009573 -.long 3921009573,3921009573,3921009573,3921009573 -.long 961987163,961987163,961987163,961987163 -.long 961987163,961987163,961987163,961987163 -.long 1508970993,1508970993,1508970993,1508970993 -.long 1508970993,1508970993,1508970993,1508970993 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2870763221,2870763221,2870763221,2870763221 -.long 2870763221,2870763221,2870763221,2870763221 -.long 3624381080,3624381080,3624381080,3624381080 -.long 3624381080,3624381080,3624381080,3624381080 -.long 310598401,310598401,310598401,310598401 -.long 310598401,310598401,310598401,310598401 -.long 607225278,607225278,607225278,607225278 -.long 607225278,607225278,607225278,607225278 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1925078388,1925078388,1925078388,1925078388 -.long 1925078388,1925078388,1925078388,1925078388 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2614888103,2614888103,2614888103,2614888103 -.long 2614888103,2614888103,2614888103,2614888103 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3835390401,3835390401,3835390401,3835390401 -.long 3835390401,3835390401,3835390401,3835390401 -.long 4022224774,4022224774,4022224774,4022224774 -.long 4022224774,4022224774,4022224774,4022224774 -.long 264347078,264347078,264347078,264347078 -.long 264347078,264347078,264347078,264347078 -.long 604807628,604807628,604807628,604807628 -.long 604807628,604807628,604807628,604807628 -.long 770255983,770255983,770255983,770255983 -.long 770255983,770255983,770255983,770255983 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1996064986,1996064986,1996064986,1996064986 -.long 1996064986,1996064986,1996064986,1996064986 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2952996808,2952996808,2952996808,2952996808 -.long 2952996808,2952996808,2952996808,2952996808 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3584528711,3584528711,3584528711,3584528711 -.long 3584528711,3584528711,3584528711,3584528711 -.long 113926993,113926993,113926993,113926993 -.long 113926993,113926993,113926993,113926993 -.long 338241895,338241895,338241895,338241895 -.long 338241895,338241895,338241895,338241895 -.long 666307205,666307205,666307205,666307205 -.long 666307205,666307205,666307205,666307205 -.long 773529912,773529912,773529912,773529912 -.long 773529912,773529912,773529912,773529912 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1986661051,1986661051,1986661051,1986661051 -.long 1986661051,1986661051,1986661051,1986661051 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2820302411,2820302411,2820302411,2820302411 -.long 2820302411,2820302411,2820302411,2820302411 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3600352804,3600352804,3600352804,3600352804 -.long 3600352804,3600352804,3600352804,3600352804 -.long 4094571909,4094571909,4094571909,4094571909 -.long 4094571909,4094571909,4094571909,4094571909 -.long 275423344,275423344,275423344,275423344 -.long 275423344,275423344,275423344,275423344 -.long 430227734,430227734,430227734,430227734 -.long 430227734,430227734,430227734,430227734 -.long 506948616,506948616,506948616,506948616 -.long 506948616,506948616,506948616,506948616 -.long 659060556,659060556,659060556,659060556 -.long 659060556,659060556,659060556,659060556 -.long 883997877,883997877,883997877,883997877 -.long 883997877,883997877,883997877,883997877 -.long 958139571,958139571,958139571,958139571 -.long 958139571,958139571,958139571,958139571 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1955562222,1955562222,1955562222,1955562222 -.long 1955562222,1955562222,1955562222,1955562222 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2756734187,2756734187,2756734187,2756734187 -.long 2756734187,2756734187,2756734187,2756734187 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3329325298,3329325298,3329325298,3329325298 -.long 3329325298,3329325298,3329325298,3329325298 -.Lpbswap: -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -K256_shaext: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-elf-gas/sha/sha256-x86_64.s b/deps/openssl/asm/x64-elf-gas/sha/sha256-x86_64.s deleted file mode 100644 index 23b932e1de4a74..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/sha/sha256-x86_64.s +++ /dev/null @@ -1,5358 +0,0 @@ -.text - - -.globl sha256_block_data_order -.type sha256_block_data_order,@function -.align 16 -sha256_block_data_order: - leaq OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $536870912,%r11d - jnz _shaext_shortcut - andl $296,%r11d - cmpl $296,%r11d - je .Lavx2_shortcut - andl $1073741824,%r9d - andl $268435968,%r10d - orl %r9d,%r10d - cmpl $1342177792,%r10d - je .Lavx_shortcut - testl $512,%r10d - jnz .Lssse3_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $64+32,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - jmp .Lloop - -.align 16 -.Lloop: - movl %ebx,%edi - leaq K256(%rip),%rbp - xorl %ecx,%edi - movl 0(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 4(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 8(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 12(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 16(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 20(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 24(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 28(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - addl %r14d,%eax - movl 32(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 36(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 40(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 44(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 48(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 52(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 56(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 60(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - jmp .Lrounds_16_xx -.align 16 -.Lrounds_16_xx: - movl 4(%rsp),%r13d - movl 56(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 36(%rsp),%r12d - - addl 0(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 8(%rsp),%r13d - movl 60(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 40(%rsp),%r12d - - addl 4(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 12(%rsp),%r13d - movl 0(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 44(%rsp),%r12d - - addl 8(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 16(%rsp),%r13d - movl 4(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 48(%rsp),%r12d - - addl 12(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 20(%rsp),%r13d - movl 8(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 52(%rsp),%r12d - - addl 16(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 24(%rsp),%r13d - movl 12(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 56(%rsp),%r12d - - addl 20(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 28(%rsp),%r13d - movl 16(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 60(%rsp),%r12d - - addl 24(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 32(%rsp),%r13d - movl 20(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 0(%rsp),%r12d - - addl 28(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - movl 36(%rsp),%r13d - movl 24(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 4(%rsp),%r12d - - addl 32(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 40(%rsp),%r13d - movl 28(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 8(%rsp),%r12d - - addl 36(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 44(%rsp),%r13d - movl 32(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 12(%rsp),%r12d - - addl 40(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 48(%rsp),%r13d - movl 36(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 16(%rsp),%r12d - - addl 44(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 52(%rsp),%r13d - movl 40(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 20(%rsp),%r12d - - addl 48(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 56(%rsp),%r13d - movl 44(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 24(%rsp),%r12d - - addl 52(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 60(%rsp),%r13d - movl 48(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 28(%rsp),%r12d - - addl 56(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 0(%rsp),%r13d - movl 52(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 32(%rsp),%r12d - - addl 60(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - cmpb $0,3(%rbp) - jnz .Lrounds_16_xx - - movq 64+0(%rsp),%rdi - addl %r14d,%eax - leaq 64(%rsi),%rsi - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb .Lloop - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha256_block_data_order,.-sha256_block_data_order -.align 64 -.type K256,@object -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.type sha256_block_data_order_shaext,@function -.align 64 -sha256_block_data_order_shaext: -_shaext_shortcut: - leaq K256+128(%rip),%rcx - movdqu (%rdi),%xmm1 - movdqu 16(%rdi),%xmm2 - movdqa 512-128(%rcx),%xmm7 - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm7,%xmm8 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - movdqu (%rsi),%xmm3 - movdqu 16(%rsi),%xmm4 - movdqu 32(%rsi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%rsi),%xmm6 - - movdqa 0-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 - movdqa %xmm2,%xmm10 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - nop - movdqa %xmm1,%xmm9 -.byte 15,56,203,202 - - movdqa 32-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - leaq 64(%rsi),%rsi -.byte 15,56,204,220 -.byte 15,56,203,202 - - movdqa 64-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - - movdqa 96-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 128-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 160-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 192-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 224-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 256-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 288-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 320-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 352-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 384-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 416-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - - movdqa 448-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa %xmm8,%xmm7 -.byte 15,56,203,202 - - movdqa 480-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - decq %rdx - nop -.byte 15,56,203,202 - - paddd %xmm10,%xmm2 - paddd %xmm9,%xmm1 - jnz .Loop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm7 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - - movdqu %xmm1,(%rdi) - movdqu %xmm2,16(%rdi) - .byte 0xf3,0xc3 -.size sha256_block_data_order_shaext,.-sha256_block_data_order_shaext -.type sha256_block_data_order_ssse3,@function -.align 64 -sha256_block_data_order_ssse3: -.Lssse3_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue_ssse3: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - - - jmp .Lloop_ssse3 -.align 16 -.Lloop_ssse3: - movdqa K256+512(%rip),%xmm7 - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 -.byte 102,15,56,0,199 - movdqu 48(%rsi),%xmm3 - leaq K256(%rip),%rbp -.byte 102,15,56,0,207 - movdqa 0(%rbp),%xmm4 - movdqa 32(%rbp),%xmm5 -.byte 102,15,56,0,215 - paddd %xmm0,%xmm4 - movdqa 64(%rbp),%xmm6 -.byte 102,15,56,0,223 - movdqa 96(%rbp),%xmm7 - paddd %xmm1,%xmm5 - paddd %xmm2,%xmm6 - paddd %xmm3,%xmm7 - movdqa %xmm4,0(%rsp) - movl %eax,%r14d - movdqa %xmm5,16(%rsp) - movl %ebx,%edi - movdqa %xmm6,32(%rsp) - xorl %ecx,%edi - movdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp .Lssse3_00_47 - -.align 16 -.Lssse3_00_47: - subq $-128,%rbp - rorl $14,%r13d - movdqa %xmm1,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm3,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,224,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,250,4 - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm3,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 4(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm0 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm0 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm0,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 0(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm0,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,0(%rsp) - rorl $14,%r13d - movdqa %xmm2,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm0,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,225,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,251,4 - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm0,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 20(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm1 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm1 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm1,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 32(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm1,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,16(%rsp) - rorl $14,%r13d - movdqa %xmm3,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm1,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,226,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,248,4 - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm1,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 36(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm2 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm2 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm2,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 64(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm2,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,32(%rsp) - rorl $14,%r13d - movdqa %xmm0,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm2,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,227,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,249,4 - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm2,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 52(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm3 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm3 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm3,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 96(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm3,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne .Lssse3_00_47 - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb .Lloop_ssse3 - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size sha256_block_data_order_ssse3,.-sha256_block_data_order_ssse3 -.type sha256_block_data_order_avx,@function -.align 64 -sha256_block_data_order_avx: -.Lavx_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue_avx: - - vzeroupper - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - vmovdqa K256+512+32(%rip),%xmm8 - vmovdqa K256+512+64(%rip),%xmm9 - jmp .Lloop_avx -.align 16 -.Lloop_avx: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi),%xmm0 - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%edi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%edi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp .Lavx_00_47 - -.align 16 -.Lavx_00_47: - subq $-128,%rbp - vpalignr $4,%xmm0,%xmm1,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm2,%xmm3,%xmm7 - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - vpshufd $250,%xmm3,%xmm7 - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm0,%xmm0 - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpaddd %xmm6,%xmm0,%xmm0 - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - vpshufd $80,%xmm0,%xmm7 - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - vpaddd %xmm6,%xmm0,%xmm0 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpaddd 0(%rbp),%xmm0,%xmm6 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm3,%xmm0,%xmm7 - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - vpshufd $250,%xmm0,%xmm7 - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm1,%xmm1 - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpaddd %xmm6,%xmm1,%xmm1 - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - vpshufd $80,%xmm1,%xmm7 - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - vpxor %xmm7,%xmm6,%xmm6 - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - vpaddd %xmm6,%xmm1,%xmm1 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpaddd 32(%rbp),%xmm1,%xmm6 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm0,%xmm1,%xmm7 - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - vpshufd $250,%xmm1,%xmm7 - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm2,%xmm2 - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpaddd %xmm6,%xmm2,%xmm2 - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - vpshufd $80,%xmm2,%xmm7 - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - vpaddd %xmm6,%xmm2,%xmm2 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpaddd 64(%rbp),%xmm2,%xmm6 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm1,%xmm2,%xmm7 - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - vpshufd $250,%xmm2,%xmm7 - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm3,%xmm3 - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpaddd %xmm6,%xmm3,%xmm3 - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - vpshufd $80,%xmm3,%xmm7 - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - vpxor %xmm7,%xmm6,%xmm6 - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - vpaddd %xmm6,%xmm3,%xmm3 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpaddd 96(%rbp),%xmm3,%xmm6 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne .Lavx_00_47 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb .Lloop_avx - - movq 64+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size sha256_block_data_order_avx,.-sha256_block_data_order_avx -.type sha256_block_data_order_avx2,@function -.align 64 -sha256_block_data_order_avx2: -.Lavx2_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $544,%rsp - shlq $4,%rdx - andq $-1024,%rsp - leaq (%rsi,%rdx,4),%rdx - addq $448,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue_avx2: - - vzeroupper - subq $-64,%rsi - movl 0(%rdi),%eax - movq %rsi,%r12 - movl 4(%rdi),%ebx - cmpq %rdx,%rsi - movl 8(%rdi),%ecx - cmoveq %rsp,%r12 - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - vmovdqa K256+512+32(%rip),%ymm8 - vmovdqa K256+512+64(%rip),%ymm9 - jmp .Loop_avx2 -.align 16 -.Loop_avx2: - vmovdqa K256+512(%rip),%ymm7 - vmovdqu -64+0(%rsi),%xmm0 - vmovdqu -64+16(%rsi),%xmm1 - vmovdqu -64+32(%rsi),%xmm2 - vmovdqu -64+48(%rsi),%xmm3 - - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm7,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm7,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - - leaq K256(%rip),%rbp - vpshufb %ymm7,%ymm2,%ymm2 - vpaddd 0(%rbp),%ymm0,%ymm4 - vpshufb %ymm7,%ymm3,%ymm3 - vpaddd 32(%rbp),%ymm1,%ymm5 - vpaddd 64(%rbp),%ymm2,%ymm6 - vpaddd 96(%rbp),%ymm3,%ymm7 - vmovdqa %ymm4,0(%rsp) - xorl %r14d,%r14d - vmovdqa %ymm5,32(%rsp) - leaq -64(%rsp),%rsp - movl %ebx,%edi - vmovdqa %ymm6,0(%rsp) - xorl %ecx,%edi - vmovdqa %ymm7,32(%rsp) - movl %r9d,%r12d - subq $-32*4,%rbp - jmp .Lavx2_00_47 - -.align 16 -.Lavx2_00_47: - leaq -64(%rsp),%rsp - vpalignr $4,%ymm0,%ymm1,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm2,%ymm3,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm0,%ymm0 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - vpshufd $250,%ymm3,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm0,%ymm0 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpshufd $80,%ymm0,%ymm7 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpxor %ymm7,%ymm6,%ymm6 - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - vpaddd 0(%rbp),%ymm0,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm1,%ymm2,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm3,%ymm0,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm1,%ymm1 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - vpshufd $250,%ymm0,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm1,%ymm1 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpshufd $80,%ymm1,%ymm7 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpxor %ymm7,%ymm6,%ymm6 - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - vpaddd 32(%rbp),%ymm1,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq -64(%rsp),%rsp - vpalignr $4,%ymm2,%ymm3,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm0,%ymm1,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm2,%ymm2 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - vpshufd $250,%ymm1,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm2,%ymm2 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpshufd $80,%ymm2,%ymm7 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpxor %ymm7,%ymm6,%ymm6 - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - vpaddd 64(%rbp),%ymm2,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm3,%ymm0,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm1,%ymm2,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm3,%ymm3 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - vpshufd $250,%ymm2,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm3,%ymm3 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpshufd $80,%ymm3,%ymm7 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpxor %ymm7,%ymm6,%ymm6 - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - vpaddd 96(%rbp),%ymm3,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq 128(%rbp),%rbp - cmpb $0,3(%rbp) - jne .Lavx2_00_47 - addl 0+64(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4+64(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+64(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12+64(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+64(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36+64(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+64(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44+64(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - addl 0(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - movq 512(%rsp),%rdi - addl %r14d,%eax - - leaq 448(%rsp),%rbp - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - - cmpq 80(%rbp),%rsi - je .Ldone_avx2 - - xorl %r14d,%r14d - movl %ebx,%edi - xorl %ecx,%edi - movl %r9d,%r12d - jmp .Lower_avx2 -.align 16 -.Lower_avx2: - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - leaq -64(%rbp),%rbp - cmpq %rsp,%rbp - jae .Lower_avx2 - - movq 512(%rsp),%rdi - addl %r14d,%eax - - leaq 448(%rsp),%rsp - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - leaq 128(%rsi),%rsi - addl 24(%rdi),%r10d - movq %rsi,%r12 - addl 28(%rdi),%r11d - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - cmoveq %rsp,%r12 - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - - jbe .Loop_avx2 - leaq (%rsp),%rbp - -.Ldone_avx2: - leaq (%rbp),%rsp - movq 64+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size sha256_block_data_order_avx2,.-sha256_block_data_order_avx2 diff --git a/deps/openssl/asm/x64-elf-gas/sha/sha512-x86_64.s b/deps/openssl/asm/x64-elf-gas/sha/sha512-x86_64.s deleted file mode 100644 index a1021c17a966b8..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/sha/sha512-x86_64.s +++ /dev/null @@ -1,5365 +0,0 @@ -.text - - -.globl sha512_block_data_order -.type sha512_block_data_order,@function -.align 16 -sha512_block_data_order: - leaq OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $2048,%r10d - jnz .Lxop_shortcut - andl $296,%r11d - cmpl $296,%r11d - je .Lavx2_shortcut - andl $1073741824,%r9d - andl $268435968,%r10d - orl %r9d,%r10d - cmpl $1342177792,%r10d - je .Lavx_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $128+32,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -.Lprologue: - - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp .Lloop - -.align 16 -.Lloop: - movq %rbx,%rdi - leaq K512(%rip),%rbp - xorq %rcx,%rdi - movq 0(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 8(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 16(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 24(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 32(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 40(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 48(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 56(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - addq %r14,%rax - movq 64(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 72(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 80(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 88(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 96(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 104(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 112(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 120(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - jmp .Lrounds_16_xx -.align 16 -.Lrounds_16_xx: - movq 8(%rsp),%r13 - movq 112(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 72(%rsp),%r12 - - addq 0(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 16(%rsp),%r13 - movq 120(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 80(%rsp),%r12 - - addq 8(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 24(%rsp),%r13 - movq 0(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 88(%rsp),%r12 - - addq 16(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 32(%rsp),%r13 - movq 8(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 96(%rsp),%r12 - - addq 24(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 40(%rsp),%r13 - movq 16(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 104(%rsp),%r12 - - addq 32(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 48(%rsp),%r13 - movq 24(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 112(%rsp),%r12 - - addq 40(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 56(%rsp),%r13 - movq 32(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 120(%rsp),%r12 - - addq 48(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 64(%rsp),%r13 - movq 40(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 0(%rsp),%r12 - - addq 56(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - movq 72(%rsp),%r13 - movq 48(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 8(%rsp),%r12 - - addq 64(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 80(%rsp),%r13 - movq 56(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 16(%rsp),%r12 - - addq 72(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 88(%rsp),%r13 - movq 64(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 24(%rsp),%r12 - - addq 80(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 96(%rsp),%r13 - movq 72(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 32(%rsp),%r12 - - addq 88(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 104(%rsp),%r13 - movq 80(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 40(%rsp),%r12 - - addq 96(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 112(%rsp),%r13 - movq 88(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 48(%rsp),%r12 - - addq 104(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 120(%rsp),%r13 - movq 96(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 56(%rsp),%r12 - - addq 112(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 0(%rsp),%r13 - movq 104(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 64(%rsp),%r12 - - addq 120(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - cmpb $0,7(%rbp) - jnz .Lrounds_16_xx - - movq 128+0(%rsp),%rdi - addq %r14,%rax - leaq 128(%rsi),%rsi - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb .Lloop - - movq 128+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha512_block_data_order,.-sha512_block_data_order -.align 64 -.type K512,@object -K512: -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.type sha512_block_data_order_xop,@function -.align 64 -sha512_block_data_order_xop: -.Lxop_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $160,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -.Lprologue_xop: - - vzeroupper - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp .Lloop_xop -.align 16 -.Lloop_xop: - vmovdqa K512+1280(%rip),%xmm11 - vmovdqu 0(%rsi),%xmm0 - leaq K512+128(%rip),%rbp - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vpshufb %xmm11,%xmm0,%xmm0 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm11,%xmm1,%xmm1 - vmovdqu 64(%rsi),%xmm4 - vpshufb %xmm11,%xmm2,%xmm2 - vmovdqu 80(%rsi),%xmm5 - vpshufb %xmm11,%xmm3,%xmm3 - vmovdqu 96(%rsi),%xmm6 - vpshufb %xmm11,%xmm4,%xmm4 - vmovdqu 112(%rsi),%xmm7 - vpshufb %xmm11,%xmm5,%xmm5 - vpaddq -128(%rbp),%xmm0,%xmm8 - vpshufb %xmm11,%xmm6,%xmm6 - vpaddq -96(%rbp),%xmm1,%xmm9 - vpshufb %xmm11,%xmm7,%xmm7 - vpaddq -64(%rbp),%xmm2,%xmm10 - vpaddq -32(%rbp),%xmm3,%xmm11 - vmovdqa %xmm8,0(%rsp) - vpaddq 0(%rbp),%xmm4,%xmm8 - vmovdqa %xmm9,16(%rsp) - vpaddq 32(%rbp),%xmm5,%xmm9 - vmovdqa %xmm10,32(%rsp) - vpaddq 64(%rbp),%xmm6,%xmm10 - vmovdqa %xmm11,48(%rsp) - vpaddq 96(%rbp),%xmm7,%xmm11 - vmovdqa %xmm8,64(%rsp) - movq %rax,%r14 - vmovdqa %xmm9,80(%rsp) - movq %rbx,%rdi - vmovdqa %xmm10,96(%rsp) - xorq %rcx,%rdi - vmovdqa %xmm11,112(%rsp) - movq %r8,%r13 - jmp .Lxop_00_47 - -.align 16 -.Lxop_00_47: - addq $256,%rbp - vpalignr $8,%xmm0,%xmm1,%xmm8 - rorq $23,%r13 - movq %r14,%rax - vpalignr $8,%xmm4,%xmm5,%xmm11 - movq %r9,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r8,%r13 - xorq %r10,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rax,%r14 - vpaddq %xmm11,%xmm0,%xmm0 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 -.byte 143,72,120,195,209,7 - xorq %r10,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,223,3 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm7,%xmm10 - addq %r11,%rdx - addq %rdi,%r11 - vpaddq %xmm8,%xmm0,%xmm0 - movq %rdx,%r13 - addq %r11,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r11 - vpxor %xmm10,%xmm11,%xmm11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - vpaddq %xmm11,%xmm0,%xmm0 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - vpaddq -128(%rbp),%xmm0,%xmm10 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,0(%rsp) - vpalignr $8,%xmm1,%xmm2,%xmm8 - rorq $23,%r13 - movq %r14,%r10 - vpalignr $8,%xmm5,%xmm6,%xmm11 - movq %rdx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rcx,%r13 - xorq %r8,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r10,%r14 - vpaddq %xmm11,%xmm1,%xmm1 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 -.byte 143,72,120,195,209,7 - xorq %r8,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,216,3 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm0,%xmm10 - addq %r9,%rbx - addq %rdi,%r9 - vpaddq %xmm8,%xmm1,%xmm1 - movq %rbx,%r13 - addq %r9,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r9 - vpxor %xmm10,%xmm11,%xmm11 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - vpaddq %xmm11,%xmm1,%xmm1 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - vpaddq -96(%rbp),%xmm1,%xmm10 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,16(%rsp) - vpalignr $8,%xmm2,%xmm3,%xmm8 - rorq $23,%r13 - movq %r14,%r8 - vpalignr $8,%xmm6,%xmm7,%xmm11 - movq %rbx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rax,%r13 - xorq %rcx,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r8,%r14 - vpaddq %xmm11,%xmm2,%xmm2 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 -.byte 143,72,120,195,209,7 - xorq %rcx,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,217,3 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm1,%xmm10 - addq %rdx,%r11 - addq %rdi,%rdx - vpaddq %xmm8,%xmm2,%xmm2 - movq %r11,%r13 - addq %rdx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rdx - vpxor %xmm10,%xmm11,%xmm11 - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - vpaddq %xmm11,%xmm2,%xmm2 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - vpaddq -64(%rbp),%xmm2,%xmm10 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,32(%rsp) - vpalignr $8,%xmm3,%xmm4,%xmm8 - rorq $23,%r13 - movq %r14,%rcx - vpalignr $8,%xmm7,%xmm0,%xmm11 - movq %r11,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r10,%r13 - xorq %rax,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rcx,%r14 - vpaddq %xmm11,%xmm3,%xmm3 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 -.byte 143,72,120,195,209,7 - xorq %rax,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,218,3 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm2,%xmm10 - addq %rbx,%r9 - addq %rdi,%rbx - vpaddq %xmm8,%xmm3,%xmm3 - movq %r9,%r13 - addq %rbx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rbx - vpxor %xmm10,%xmm11,%xmm11 - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - vpaddq %xmm11,%xmm3,%xmm3 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - vpaddq -32(%rbp),%xmm3,%xmm10 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,48(%rsp) - vpalignr $8,%xmm4,%xmm5,%xmm8 - rorq $23,%r13 - movq %r14,%rax - vpalignr $8,%xmm0,%xmm1,%xmm11 - movq %r9,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r8,%r13 - xorq %r10,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rax,%r14 - vpaddq %xmm11,%xmm4,%xmm4 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 -.byte 143,72,120,195,209,7 - xorq %r10,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,219,3 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm3,%xmm10 - addq %r11,%rdx - addq %rdi,%r11 - vpaddq %xmm8,%xmm4,%xmm4 - movq %rdx,%r13 - addq %r11,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r11 - vpxor %xmm10,%xmm11,%xmm11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - vpaddq %xmm11,%xmm4,%xmm4 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - vpaddq 0(%rbp),%xmm4,%xmm10 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,64(%rsp) - vpalignr $8,%xmm5,%xmm6,%xmm8 - rorq $23,%r13 - movq %r14,%r10 - vpalignr $8,%xmm1,%xmm2,%xmm11 - movq %rdx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rcx,%r13 - xorq %r8,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r10,%r14 - vpaddq %xmm11,%xmm5,%xmm5 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 -.byte 143,72,120,195,209,7 - xorq %r8,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,220,3 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm4,%xmm10 - addq %r9,%rbx - addq %rdi,%r9 - vpaddq %xmm8,%xmm5,%xmm5 - movq %rbx,%r13 - addq %r9,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r9 - vpxor %xmm10,%xmm11,%xmm11 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - vpaddq %xmm11,%xmm5,%xmm5 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - vpaddq 32(%rbp),%xmm5,%xmm10 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,80(%rsp) - vpalignr $8,%xmm6,%xmm7,%xmm8 - rorq $23,%r13 - movq %r14,%r8 - vpalignr $8,%xmm2,%xmm3,%xmm11 - movq %rbx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rax,%r13 - xorq %rcx,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r8,%r14 - vpaddq %xmm11,%xmm6,%xmm6 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 -.byte 143,72,120,195,209,7 - xorq %rcx,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,221,3 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm5,%xmm10 - addq %rdx,%r11 - addq %rdi,%rdx - vpaddq %xmm8,%xmm6,%xmm6 - movq %r11,%r13 - addq %rdx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rdx - vpxor %xmm10,%xmm11,%xmm11 - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - vpaddq %xmm11,%xmm6,%xmm6 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - vpaddq 64(%rbp),%xmm6,%xmm10 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,96(%rsp) - vpalignr $8,%xmm7,%xmm0,%xmm8 - rorq $23,%r13 - movq %r14,%rcx - vpalignr $8,%xmm3,%xmm4,%xmm11 - movq %r11,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r10,%r13 - xorq %rax,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rcx,%r14 - vpaddq %xmm11,%xmm7,%xmm7 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 -.byte 143,72,120,195,209,7 - xorq %rax,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,222,3 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm6,%xmm10 - addq %rbx,%r9 - addq %rdi,%rbx - vpaddq %xmm8,%xmm7,%xmm7 - movq %r9,%r13 - addq %rbx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rbx - vpxor %xmm10,%xmm11,%xmm11 - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - vpaddq %xmm11,%xmm7,%xmm7 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - vpaddq 96(%rbp),%xmm7,%xmm10 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,112(%rsp) - cmpb $0,135(%rbp) - jne .Lxop_00_47 - rorq $23,%r13 - movq %r14,%rax - movq %r9,%r12 - rorq $5,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - rorq $4,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - rorq $6,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - rorq $28,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - rorq $23,%r13 - movq %r14,%r11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - rorq $23,%r13 - movq %r14,%r10 - movq %rdx,%r12 - rorq $5,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - rorq $4,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - rorq $6,%r14 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - rorq $28,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - rorq $23,%r13 - movq %r14,%r9 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - rorq $23,%r13 - movq %r14,%r8 - movq %rbx,%r12 - rorq $5,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - rorq $4,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - rorq $6,%r14 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - rorq $28,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - rorq $23,%r13 - movq %r14,%rdx - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - rorq $23,%r13 - movq %r14,%rcx - movq %r11,%r12 - rorq $5,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - rorq $4,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - rorq $6,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - rorq $28,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - rorq $23,%r13 - movq %r14,%rbx - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - rorq $23,%r13 - movq %r14,%rax - movq %r9,%r12 - rorq $5,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - rorq $4,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - rorq $6,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - rorq $28,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - rorq $23,%r13 - movq %r14,%r11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - rorq $23,%r13 - movq %r14,%r10 - movq %rdx,%r12 - rorq $5,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - rorq $4,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - rorq $6,%r14 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - rorq $28,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - rorq $23,%r13 - movq %r14,%r9 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - rorq $23,%r13 - movq %r14,%r8 - movq %rbx,%r12 - rorq $5,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - rorq $4,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - rorq $6,%r14 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - rorq $28,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - rorq $23,%r13 - movq %r14,%rdx - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - rorq $23,%r13 - movq %r14,%rcx - movq %r11,%r12 - rorq $5,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - rorq $4,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - rorq $6,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - rorq $28,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - rorq $23,%r13 - movq %r14,%rbx - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - movq 128+0(%rsp),%rdi - movq %r14,%rax - - addq 0(%rdi),%rax - leaq 128(%rsi),%rsi - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb .Lloop_xop - - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_xop: - .byte 0xf3,0xc3 -.size sha512_block_data_order_xop,.-sha512_block_data_order_xop -.type sha512_block_data_order_avx,@function -.align 64 -sha512_block_data_order_avx: -.Lavx_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $160,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -.Lprologue_avx: - - vzeroupper - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp .Lloop_avx -.align 16 -.Lloop_avx: - vmovdqa K512+1280(%rip),%xmm11 - vmovdqu 0(%rsi),%xmm0 - leaq K512+128(%rip),%rbp - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vpshufb %xmm11,%xmm0,%xmm0 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm11,%xmm1,%xmm1 - vmovdqu 64(%rsi),%xmm4 - vpshufb %xmm11,%xmm2,%xmm2 - vmovdqu 80(%rsi),%xmm5 - vpshufb %xmm11,%xmm3,%xmm3 - vmovdqu 96(%rsi),%xmm6 - vpshufb %xmm11,%xmm4,%xmm4 - vmovdqu 112(%rsi),%xmm7 - vpshufb %xmm11,%xmm5,%xmm5 - vpaddq -128(%rbp),%xmm0,%xmm8 - vpshufb %xmm11,%xmm6,%xmm6 - vpaddq -96(%rbp),%xmm1,%xmm9 - vpshufb %xmm11,%xmm7,%xmm7 - vpaddq -64(%rbp),%xmm2,%xmm10 - vpaddq -32(%rbp),%xmm3,%xmm11 - vmovdqa %xmm8,0(%rsp) - vpaddq 0(%rbp),%xmm4,%xmm8 - vmovdqa %xmm9,16(%rsp) - vpaddq 32(%rbp),%xmm5,%xmm9 - vmovdqa %xmm10,32(%rsp) - vpaddq 64(%rbp),%xmm6,%xmm10 - vmovdqa %xmm11,48(%rsp) - vpaddq 96(%rbp),%xmm7,%xmm11 - vmovdqa %xmm8,64(%rsp) - movq %rax,%r14 - vmovdqa %xmm9,80(%rsp) - movq %rbx,%rdi - vmovdqa %xmm10,96(%rsp) - xorq %rcx,%rdi - vmovdqa %xmm11,112(%rsp) - movq %r8,%r13 - jmp .Lavx_00_47 - -.align 16 -.Lavx_00_47: - addq $256,%rbp - vpalignr $8,%xmm0,%xmm1,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rax - vpalignr $8,%xmm4,%xmm5,%xmm11 - movq %r9,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r8,%r13 - xorq %r10,%r12 - vpaddq %xmm11,%xmm0,%xmm0 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r8,%r12 - xorq %r8,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 0(%rsp),%r11 - movq %rax,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rbx,%r15 - addq %r12,%r11 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm7,%xmm11 - addq %r11,%rdx - addq %rdi,%r11 - vpxor %xmm9,%xmm8,%xmm8 - movq %rdx,%r13 - addq %r11,%r14 - vpsllq $3,%xmm7,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r11 - vpaddq %xmm8,%xmm0,%xmm0 - movq %r8,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm7,%xmm9 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rdx,%r12 - xorq %rdx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 8(%rsp),%r10 - movq %r11,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r9,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rax,%rdi - addq %r12,%r10 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm0,%xmm0 - xorq %r11,%r14 - addq %r13,%r10 - vpaddq -128(%rbp),%xmm0,%xmm10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,0(%rsp) - vpalignr $8,%xmm1,%xmm2,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r10 - vpalignr $8,%xmm5,%xmm6,%xmm11 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rcx,%r13 - xorq %r8,%r12 - vpaddq %xmm11,%xmm1,%xmm1 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rcx,%r12 - xorq %rcx,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 16(%rsp),%r9 - movq %r10,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r11,%r15 - addq %r12,%r9 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm0,%xmm11 - addq %r9,%rbx - addq %rdi,%r9 - vpxor %xmm9,%xmm8,%xmm8 - movq %rbx,%r13 - addq %r9,%r14 - vpsllq $3,%xmm0,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r9 - vpaddq %xmm8,%xmm1,%xmm1 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm0,%xmm9 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rbx,%r12 - xorq %rbx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 24(%rsp),%r8 - movq %r9,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r10,%rdi - addq %r12,%r8 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm1,%xmm1 - xorq %r9,%r14 - addq %r13,%r8 - vpaddq -96(%rbp),%xmm1,%xmm10 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,16(%rsp) - vpalignr $8,%xmm2,%xmm3,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r8 - vpalignr $8,%xmm6,%xmm7,%xmm11 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rax,%r13 - xorq %rcx,%r12 - vpaddq %xmm11,%xmm2,%xmm2 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rax,%r12 - xorq %rax,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 32(%rsp),%rdx - movq %r8,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r9,%r15 - addq %r12,%rdx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm1,%xmm11 - addq %rdx,%r11 - addq %rdi,%rdx - vpxor %xmm9,%xmm8,%xmm8 - movq %r11,%r13 - addq %rdx,%r14 - vpsllq $3,%xmm1,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rdx - vpaddq %xmm8,%xmm2,%xmm2 - movq %rax,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm1,%xmm9 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r11,%r12 - xorq %r11,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 40(%rsp),%rcx - movq %rdx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r8,%rdi - addq %r12,%rcx - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm2,%xmm2 - xorq %rdx,%r14 - addq %r13,%rcx - vpaddq -64(%rbp),%xmm2,%xmm10 - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,32(%rsp) - vpalignr $8,%xmm3,%xmm4,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rcx - vpalignr $8,%xmm7,%xmm0,%xmm11 - movq %r11,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r10,%r13 - xorq %rax,%r12 - vpaddq %xmm11,%xmm3,%xmm3 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r10,%r12 - xorq %r10,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 48(%rsp),%rbx - movq %rcx,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rdx,%r15 - addq %r12,%rbx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm2,%xmm11 - addq %rbx,%r9 - addq %rdi,%rbx - vpxor %xmm9,%xmm8,%xmm8 - movq %r9,%r13 - addq %rbx,%r14 - vpsllq $3,%xmm2,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rbx - vpaddq %xmm8,%xmm3,%xmm3 - movq %r10,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm2,%xmm9 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r9,%r12 - xorq %r9,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 56(%rsp),%rax - movq %rbx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r11,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rcx,%rdi - addq %r12,%rax - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm3,%xmm3 - xorq %rbx,%r14 - addq %r13,%rax - vpaddq -32(%rbp),%xmm3,%xmm10 - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,48(%rsp) - vpalignr $8,%xmm4,%xmm5,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rax - vpalignr $8,%xmm0,%xmm1,%xmm11 - movq %r9,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r8,%r13 - xorq %r10,%r12 - vpaddq %xmm11,%xmm4,%xmm4 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r8,%r12 - xorq %r8,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 64(%rsp),%r11 - movq %rax,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rbx,%r15 - addq %r12,%r11 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm3,%xmm11 - addq %r11,%rdx - addq %rdi,%r11 - vpxor %xmm9,%xmm8,%xmm8 - movq %rdx,%r13 - addq %r11,%r14 - vpsllq $3,%xmm3,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r11 - vpaddq %xmm8,%xmm4,%xmm4 - movq %r8,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm3,%xmm9 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rdx,%r12 - xorq %rdx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 72(%rsp),%r10 - movq %r11,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r9,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rax,%rdi - addq %r12,%r10 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm4,%xmm4 - xorq %r11,%r14 - addq %r13,%r10 - vpaddq 0(%rbp),%xmm4,%xmm10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,64(%rsp) - vpalignr $8,%xmm5,%xmm6,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r10 - vpalignr $8,%xmm1,%xmm2,%xmm11 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rcx,%r13 - xorq %r8,%r12 - vpaddq %xmm11,%xmm5,%xmm5 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rcx,%r12 - xorq %rcx,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 80(%rsp),%r9 - movq %r10,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r11,%r15 - addq %r12,%r9 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm4,%xmm11 - addq %r9,%rbx - addq %rdi,%r9 - vpxor %xmm9,%xmm8,%xmm8 - movq %rbx,%r13 - addq %r9,%r14 - vpsllq $3,%xmm4,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r9 - vpaddq %xmm8,%xmm5,%xmm5 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm4,%xmm9 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rbx,%r12 - xorq %rbx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 88(%rsp),%r8 - movq %r9,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r10,%rdi - addq %r12,%r8 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm5,%xmm5 - xorq %r9,%r14 - addq %r13,%r8 - vpaddq 32(%rbp),%xmm5,%xmm10 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,80(%rsp) - vpalignr $8,%xmm6,%xmm7,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r8 - vpalignr $8,%xmm2,%xmm3,%xmm11 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rax,%r13 - xorq %rcx,%r12 - vpaddq %xmm11,%xmm6,%xmm6 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rax,%r12 - xorq %rax,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 96(%rsp),%rdx - movq %r8,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r9,%r15 - addq %r12,%rdx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm5,%xmm11 - addq %rdx,%r11 - addq %rdi,%rdx - vpxor %xmm9,%xmm8,%xmm8 - movq %r11,%r13 - addq %rdx,%r14 - vpsllq $3,%xmm5,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rdx - vpaddq %xmm8,%xmm6,%xmm6 - movq %rax,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm5,%xmm9 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r11,%r12 - xorq %r11,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 104(%rsp),%rcx - movq %rdx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r8,%rdi - addq %r12,%rcx - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm6,%xmm6 - xorq %rdx,%r14 - addq %r13,%rcx - vpaddq 64(%rbp),%xmm6,%xmm10 - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,96(%rsp) - vpalignr $8,%xmm7,%xmm0,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rcx - vpalignr $8,%xmm3,%xmm4,%xmm11 - movq %r11,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r10,%r13 - xorq %rax,%r12 - vpaddq %xmm11,%xmm7,%xmm7 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r10,%r12 - xorq %r10,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 112(%rsp),%rbx - movq %rcx,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rdx,%r15 - addq %r12,%rbx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm6,%xmm11 - addq %rbx,%r9 - addq %rdi,%rbx - vpxor %xmm9,%xmm8,%xmm8 - movq %r9,%r13 - addq %rbx,%r14 - vpsllq $3,%xmm6,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rbx - vpaddq %xmm8,%xmm7,%xmm7 - movq %r10,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm6,%xmm9 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r9,%r12 - xorq %r9,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 120(%rsp),%rax - movq %rbx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r11,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rcx,%rdi - addq %r12,%rax - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm7,%xmm7 - xorq %rbx,%r14 - addq %r13,%rax - vpaddq 96(%rbp),%xmm7,%xmm10 - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,112(%rsp) - cmpb $0,135(%rbp) - jne .Lavx_00_47 - shrdq $23,%r13,%r13 - movq %r14,%rax - movq %r9,%r12 - shrdq $5,%r14,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r11 - movq %r8,%r12 - shrdq $5,%r14,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - shrdq $6,%r14,%r14 - xorq %rax,%rdi - addq %r12,%r10 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r10 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - xorq %r11,%r15 - addq %r12,%r9 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r9 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - xorq %r10,%rdi - addq %r12,%r8 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r8 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - xorq %r9,%r15 - addq %r12,%rdx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - shrdq $28,%r14,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rdx - movq %rax,%r12 - shrdq $5,%r14,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - xorq %r8,%rdi - addq %r12,%rcx - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rcx - movq %r11,%r12 - shrdq $5,%r14,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rbx - movq %r10,%r12 - shrdq $5,%r14,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - shrdq $6,%r14,%r14 - xorq %rcx,%rdi - addq %r12,%rax - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rax - movq %r9,%r12 - shrdq $5,%r14,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r11 - movq %r8,%r12 - shrdq $5,%r14,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - shrdq $6,%r14,%r14 - xorq %rax,%rdi - addq %r12,%r10 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r10 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - xorq %r11,%r15 - addq %r12,%r9 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r9 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - xorq %r10,%rdi - addq %r12,%r8 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r8 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - xorq %r9,%r15 - addq %r12,%rdx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - shrdq $28,%r14,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rdx - movq %rax,%r12 - shrdq $5,%r14,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - xorq %r8,%rdi - addq %r12,%rcx - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rcx - movq %r11,%r12 - shrdq $5,%r14,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rbx - movq %r10,%r12 - shrdq $5,%r14,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - shrdq $6,%r14,%r14 - xorq %rcx,%rdi - addq %r12,%rax - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - movq 128+0(%rsp),%rdi - movq %r14,%rax - - addq 0(%rdi),%rax - leaq 128(%rsi),%rsi - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb .Lloop_avx - - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx: - .byte 0xf3,0xc3 -.size sha512_block_data_order_avx,.-sha512_block_data_order_avx -.type sha512_block_data_order_avx2,@function -.align 64 -sha512_block_data_order_avx2: -.Lavx2_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $1312,%rsp - shlq $4,%rdx - andq $-2048,%rsp - leaq (%rsi,%rdx,8),%rdx - addq $1152,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -.Lprologue_avx2: - - vzeroupper - subq $-128,%rsi - movq 0(%rdi),%rax - movq %rsi,%r12 - movq 8(%rdi),%rbx - cmpq %rdx,%rsi - movq 16(%rdi),%rcx - cmoveq %rsp,%r12 - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp .Loop_avx2 -.align 16 -.Loop_avx2: - vmovdqu -128(%rsi),%xmm0 - vmovdqu -128+16(%rsi),%xmm1 - vmovdqu -128+32(%rsi),%xmm2 - leaq K512+128(%rip),%rbp - vmovdqu -128+48(%rsi),%xmm3 - vmovdqu -128+64(%rsi),%xmm4 - vmovdqu -128+80(%rsi),%xmm5 - vmovdqu -128+96(%rsi),%xmm6 - vmovdqu -128+112(%rsi),%xmm7 - - vmovdqa 1152(%rbp),%ymm10 - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm10,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm10,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - vpshufb %ymm10,%ymm2,%ymm2 - vinserti128 $1,64(%r12),%ymm4,%ymm4 - vpshufb %ymm10,%ymm3,%ymm3 - vinserti128 $1,80(%r12),%ymm5,%ymm5 - vpshufb %ymm10,%ymm4,%ymm4 - vinserti128 $1,96(%r12),%ymm6,%ymm6 - vpshufb %ymm10,%ymm5,%ymm5 - vinserti128 $1,112(%r12),%ymm7,%ymm7 - - vpaddq -128(%rbp),%ymm0,%ymm8 - vpshufb %ymm10,%ymm6,%ymm6 - vpaddq -96(%rbp),%ymm1,%ymm9 - vpshufb %ymm10,%ymm7,%ymm7 - vpaddq -64(%rbp),%ymm2,%ymm10 - vpaddq -32(%rbp),%ymm3,%ymm11 - vmovdqa %ymm8,0(%rsp) - vpaddq 0(%rbp),%ymm4,%ymm8 - vmovdqa %ymm9,32(%rsp) - vpaddq 32(%rbp),%ymm5,%ymm9 - vmovdqa %ymm10,64(%rsp) - vpaddq 64(%rbp),%ymm6,%ymm10 - vmovdqa %ymm11,96(%rsp) - leaq -128(%rsp),%rsp - vpaddq 96(%rbp),%ymm7,%ymm11 - vmovdqa %ymm8,0(%rsp) - xorq %r14,%r14 - vmovdqa %ymm9,32(%rsp) - movq %rbx,%rdi - vmovdqa %ymm10,64(%rsp) - xorq %rcx,%rdi - vmovdqa %ymm11,96(%rsp) - movq %r9,%r12 - addq $32*8,%rbp - jmp .Lavx2_00_47 - -.align 16 -.Lavx2_00_47: - leaq -128(%rsp),%rsp - vpalignr $8,%ymm0,%ymm1,%ymm8 - addq 0+256(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - vpalignr $8,%ymm4,%ymm5,%ymm11 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - vpsrlq $1,%ymm8,%ymm10 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - vpaddq %ymm11,%ymm0,%ymm0 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - vpsrlq $6,%ymm7,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - vpsllq $3,%ymm7,%ymm10 - vpaddq %ymm8,%ymm0,%ymm0 - addq 8+256(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - vpsrlq $19,%ymm7,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - vpaddq %ymm11,%ymm0,%ymm0 - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - vpaddq -128(%rbp),%ymm0,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - vmovdqa %ymm10,0(%rsp) - vpalignr $8,%ymm1,%ymm2,%ymm8 - addq 32+256(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - vpalignr $8,%ymm5,%ymm6,%ymm11 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - vpsrlq $1,%ymm8,%ymm10 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - vpaddq %ymm11,%ymm1,%ymm1 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - vpsrlq $6,%ymm0,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - vpsllq $3,%ymm0,%ymm10 - vpaddq %ymm8,%ymm1,%ymm1 - addq 40+256(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - vpsrlq $19,%ymm0,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - vpaddq %ymm11,%ymm1,%ymm1 - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - vpaddq -96(%rbp),%ymm1,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - vmovdqa %ymm10,32(%rsp) - vpalignr $8,%ymm2,%ymm3,%ymm8 - addq 64+256(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - vpalignr $8,%ymm6,%ymm7,%ymm11 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - vpsrlq $1,%ymm8,%ymm10 - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - vpaddq %ymm11,%ymm2,%ymm2 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - vpsrlq $6,%ymm1,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - vpsllq $3,%ymm1,%ymm10 - vpaddq %ymm8,%ymm2,%ymm2 - addq 72+256(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - vpsrlq $19,%ymm1,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - vpaddq %ymm11,%ymm2,%ymm2 - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - vpaddq -64(%rbp),%ymm2,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - vmovdqa %ymm10,64(%rsp) - vpalignr $8,%ymm3,%ymm4,%ymm8 - addq 96+256(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - vpalignr $8,%ymm7,%ymm0,%ymm11 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - vpsrlq $1,%ymm8,%ymm10 - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - vpaddq %ymm11,%ymm3,%ymm3 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - vpsrlq $6,%ymm2,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - vpsllq $3,%ymm2,%ymm10 - vpaddq %ymm8,%ymm3,%ymm3 - addq 104+256(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - vpsrlq $19,%ymm2,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - vpaddq %ymm11,%ymm3,%ymm3 - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - vpaddq -32(%rbp),%ymm3,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - vmovdqa %ymm10,96(%rsp) - leaq -128(%rsp),%rsp - vpalignr $8,%ymm4,%ymm5,%ymm8 - addq 0+256(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - vpalignr $8,%ymm0,%ymm1,%ymm11 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - vpsrlq $1,%ymm8,%ymm10 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - vpaddq %ymm11,%ymm4,%ymm4 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - vpsrlq $6,%ymm3,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - vpsllq $3,%ymm3,%ymm10 - vpaddq %ymm8,%ymm4,%ymm4 - addq 8+256(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - vpsrlq $19,%ymm3,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - vpaddq %ymm11,%ymm4,%ymm4 - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - vpaddq 0(%rbp),%ymm4,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - vmovdqa %ymm10,0(%rsp) - vpalignr $8,%ymm5,%ymm6,%ymm8 - addq 32+256(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - vpalignr $8,%ymm1,%ymm2,%ymm11 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - vpsrlq $1,%ymm8,%ymm10 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - vpaddq %ymm11,%ymm5,%ymm5 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - vpsrlq $6,%ymm4,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - vpsllq $3,%ymm4,%ymm10 - vpaddq %ymm8,%ymm5,%ymm5 - addq 40+256(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - vpsrlq $19,%ymm4,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - vpaddq %ymm11,%ymm5,%ymm5 - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - vpaddq 32(%rbp),%ymm5,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - vmovdqa %ymm10,32(%rsp) - vpalignr $8,%ymm6,%ymm7,%ymm8 - addq 64+256(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - vpalignr $8,%ymm2,%ymm3,%ymm11 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - vpsrlq $1,%ymm8,%ymm10 - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - vpaddq %ymm11,%ymm6,%ymm6 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - vpsrlq $6,%ymm5,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - vpsllq $3,%ymm5,%ymm10 - vpaddq %ymm8,%ymm6,%ymm6 - addq 72+256(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - vpsrlq $19,%ymm5,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - vpaddq %ymm11,%ymm6,%ymm6 - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - vpaddq 64(%rbp),%ymm6,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - vmovdqa %ymm10,64(%rsp) - vpalignr $8,%ymm7,%ymm0,%ymm8 - addq 96+256(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - vpalignr $8,%ymm3,%ymm4,%ymm11 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - vpsrlq $1,%ymm8,%ymm10 - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - vpaddq %ymm11,%ymm7,%ymm7 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - vpsrlq $6,%ymm6,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - vpsllq $3,%ymm6,%ymm10 - vpaddq %ymm8,%ymm7,%ymm7 - addq 104+256(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - vpsrlq $19,%ymm6,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - vpaddq %ymm11,%ymm7,%ymm7 - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - vpaddq 96(%rbp),%ymm7,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - vmovdqa %ymm10,96(%rsp) - leaq 256(%rbp),%rbp - cmpb $0,-121(%rbp) - jne .Lavx2_00_47 - addq 0+128(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8+128(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32+128(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40+128(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64+128(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72+128(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96+128(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104+128(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - addq 0(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - movq 1280(%rsp),%rdi - addq %r14,%rax - - leaq 1152(%rsp),%rbp - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - - cmpq 144(%rbp),%rsi - je .Ldone_avx2 - - xorq %r14,%r14 - movq %rbx,%rdi - xorq %rcx,%rdi - movq %r9,%r12 - jmp .Lower_avx2 -.align 16 -.Lower_avx2: - addq 0+16(%rbp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8+16(%rbp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32+16(%rbp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40+16(%rbp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64+16(%rbp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72+16(%rbp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96+16(%rbp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104+16(%rbp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - leaq -128(%rbp),%rbp - cmpq %rsp,%rbp - jae .Lower_avx2 - - movq 1280(%rsp),%rdi - addq %r14,%rax - - leaq 1152(%rsp),%rsp - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - leaq 256(%rsi),%rsi - addq 48(%rdi),%r10 - movq %rsi,%r12 - addq 56(%rdi),%r11 - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - cmoveq %rsp,%r12 - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - - jbe .Loop_avx2 - leaq (%rsp),%rbp - -.Ldone_avx2: - leaq (%rbp),%rsp - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_avx2: - .byte 0xf3,0xc3 -.size sha512_block_data_order_avx2,.-sha512_block_data_order_avx2 diff --git a/deps/openssl/asm/x64-elf-gas/whrlpool/wp-x86_64.s b/deps/openssl/asm/x64-elf-gas/whrlpool/wp-x86_64.s deleted file mode 100644 index f83130ea68634b..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/whrlpool/wp-x86_64.s +++ /dev/null @@ -1,861 +0,0 @@ -.text - -.globl whirlpool_block -.type whirlpool_block,@function -.align 16 -whirlpool_block: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movq %rsp,%r11 - subq $128+40,%rsp - andq $-64,%rsp - - leaq 128(%rsp),%r10 - movq %rdi,0(%r10) - movq %rsi,8(%r10) - movq %rdx,16(%r10) - movq %r11,32(%r10) -.Lprologue: - - movq %r10,%rbx - leaq .Ltable(%rip),%rbp - - xorq %rcx,%rcx - xorq %rdx,%rdx - movq 0(%rdi),%r8 - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 -.Louterloop: - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - xorq %rsi,%rsi - movq %rsi,24(%rbx) - jmp .Lround -.align 16 -.Lround: - movq 4096(%rbp,%rsi,8),%r8 - movl 0(%rsp),%eax - movl 4(%rsp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - movq 7(%rbp,%rdi,8),%r9 - movl 0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 6(%rbp,%rsi,8),%r10 - movq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 4(%rbp,%rsi,8),%r12 - movq 3(%rbp,%rdi,8),%r13 - movl 0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - movq 2(%rbp,%rsi,8),%r14 - movq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - movl 56+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - movl 56+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - xorq 7(%rbp,%rdi,8),%r9 - movl 64+0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r10 - xorq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r12 - xorq 3(%rbp,%rdi,8),%r13 - movl 64+0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r14 - xorq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 64+8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 64+8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 64+16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 64+16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 64+24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 64+24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 64+32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 64+32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 64+40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 64+40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 64+48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 64+48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - leaq 128(%rsp),%rbx - movq 24(%rbx),%rsi - addq $1,%rsi - cmpq $10,%rsi - je .Lroundsdone - - movq %rsi,24(%rbx) - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - jmp .Lround -.align 16 -.Lroundsdone: - movq 0(%rbx),%rdi - movq 8(%rbx),%rsi - movq 16(%rbx),%rax - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - xorq 0(%rdi),%r8 - xorq 8(%rdi),%r9 - xorq 16(%rdi),%r10 - xorq 24(%rdi),%r11 - xorq 32(%rdi),%r12 - xorq 40(%rdi),%r13 - xorq 48(%rdi),%r14 - xorq 56(%rdi),%r15 - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rsi),%rsi - subq $1,%rax - jz .Lalldone - movq %rsi,8(%rbx) - movq %rax,16(%rbx) - jmp .Louterloop -.Lalldone: - movq 32(%rbx),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size whirlpool_block,.-whirlpool_block - -.align 64 -.type .Ltable,@object -.Ltable: -.byte 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm/x64-elf-gas/x86_64cpuid.s b/deps/openssl/asm/x64-elf-gas/x86_64cpuid.s deleted file mode 100644 index 86c780b1c5f4b6..00000000000000 --- a/deps/openssl/asm/x64-elf-gas/x86_64cpuid.s +++ /dev/null @@ -1,275 +0,0 @@ - -.hidden OPENSSL_cpuid_setup -.section .init - call OPENSSL_cpuid_setup - -.hidden OPENSSL_ia32cap_P -.comm OPENSSL_ia32cap_P,16,4 - -.text - -.globl OPENSSL_atomic_add -.type OPENSSL_atomic_add,@function -.align 16 -OPENSSL_atomic_add: - movl (%rdi),%eax -.Lspin: leaq (%rsi,%rax,1),%r8 -.byte 0xf0 - cmpxchgl %r8d,(%rdi) - jne .Lspin - movl %r8d,%eax -.byte 0x48,0x98 - .byte 0xf3,0xc3 -.size OPENSSL_atomic_add,.-OPENSSL_atomic_add - -.globl OPENSSL_rdtsc -.type OPENSSL_rdtsc,@function -.align 16 -OPENSSL_rdtsc: - rdtsc - shlq $32,%rdx - orq %rdx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_rdtsc,.-OPENSSL_rdtsc - -.globl OPENSSL_ia32_cpuid -.type OPENSSL_ia32_cpuid,@function -.align 16 -OPENSSL_ia32_cpuid: - movq %rbx,%r8 - - xorl %eax,%eax - movl %eax,8(%rdi) - cpuid - movl %eax,%r11d - - xorl %eax,%eax - cmpl $0x756e6547,%ebx - setne %al - movl %eax,%r9d - cmpl $0x49656e69,%edx - setne %al - orl %eax,%r9d - cmpl $0x6c65746e,%ecx - setne %al - orl %eax,%r9d - jz .Lintel - - cmpl $0x68747541,%ebx - setne %al - movl %eax,%r10d - cmpl $0x69746E65,%edx - setne %al - orl %eax,%r10d - cmpl $0x444D4163,%ecx - setne %al - orl %eax,%r10d - jnz .Lintel - - - movl $0x80000000,%eax - cpuid - cmpl $0x80000001,%eax - jb .Lintel - movl %eax,%r10d - movl $0x80000001,%eax - cpuid - orl %ecx,%r9d - andl $0x00000801,%r9d - - cmpl $0x80000008,%r10d - jb .Lintel - - movl $0x80000008,%eax - cpuid - movzbq %cl,%r10 - incq %r10 - - movl $1,%eax - cpuid - btl $28,%edx - jnc .Lgeneric - shrl $16,%ebx - cmpb %r10b,%bl - ja .Lgeneric - andl $0xefffffff,%edx - jmp .Lgeneric - -.Lintel: - cmpl $4,%r11d - movl $-1,%r10d - jb .Lnocacheinfo - - movl $4,%eax - movl $0,%ecx - cpuid - movl %eax,%r10d - shrl $14,%r10d - andl $0xfff,%r10d - -.Lnocacheinfo: - movl $1,%eax - cpuid - andl $0xbfefffff,%edx - cmpl $0,%r9d - jne .Lnotintel - orl $0x40000000,%edx - andb $15,%ah - cmpb $15,%ah - jne .LnotP4 - orl $0x00100000,%edx -.LnotP4: - cmpb $6,%ah - jne .Lnotintel - andl $0x0fff0ff0,%eax - cmpl $0x00050670,%eax - je .Lknights - cmpl $0x00080650,%eax - jne .Lnotintel -.Lknights: - andl $0xfbffffff,%ecx - -.Lnotintel: - btl $28,%edx - jnc .Lgeneric - andl $0xefffffff,%edx - cmpl $0,%r10d - je .Lgeneric - - orl $0x10000000,%edx - shrl $16,%ebx - cmpb $1,%bl - ja .Lgeneric - andl $0xefffffff,%edx -.Lgeneric: - andl $0x00000800,%r9d - andl $0xfffff7ff,%ecx - orl %ecx,%r9d - - movl %edx,%r10d - - cmpl $7,%r11d - jb .Lno_extended_info - movl $7,%eax - xorl %ecx,%ecx - cpuid - btl $26,%r9d - jc .Lnotknights - andl $0xfff7ffff,%ebx -.Lnotknights: - movl %ebx,8(%rdi) -.Lno_extended_info: - - btl $27,%r9d - jnc .Lclear_avx - xorl %ecx,%ecx -.byte 0x0f,0x01,0xd0 - andl $6,%eax - cmpl $6,%eax - je .Ldone -.Lclear_avx: - movl $0xefffe7ff,%eax - andl %eax,%r9d - andl $0xffffffdf,8(%rdi) -.Ldone: - shlq $32,%r9 - movl %r10d,%eax - movq %r8,%rbx - orq %r9,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_cpuid,.-OPENSSL_ia32_cpuid - -.globl OPENSSL_cleanse -.type OPENSSL_cleanse,@function -.align 16 -OPENSSL_cleanse: - xorq %rax,%rax - cmpq $15,%rsi - jae .Lot - cmpq $0,%rsi - je .Lret -.Little: - movb %al,(%rdi) - subq $1,%rsi - leaq 1(%rdi),%rdi - jnz .Little -.Lret: - .byte 0xf3,0xc3 -.align 16 -.Lot: - testq $7,%rdi - jz .Laligned - movb %al,(%rdi) - leaq -1(%rsi),%rsi - leaq 1(%rdi),%rdi - jmp .Lot -.Laligned: - movq %rax,(%rdi) - leaq -8(%rsi),%rsi - testq $-8,%rsi - leaq 8(%rdi),%rdi - jnz .Laligned - cmpq $0,%rsi - jne .Little - .byte 0xf3,0xc3 -.size OPENSSL_cleanse,.-OPENSSL_cleanse -.globl OPENSSL_wipe_cpu -.type OPENSSL_wipe_cpu,@function -.align 16 -OPENSSL_wipe_cpu: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - pxor %xmm10,%xmm10 - pxor %xmm11,%xmm11 - pxor %xmm12,%xmm12 - pxor %xmm13,%xmm13 - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - xorq %rcx,%rcx - xorq %rdx,%rdx - xorq %rsi,%rsi - xorq %rdi,%rdi - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - leaq 8(%rsp),%rax - .byte 0xf3,0xc3 -.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu -.globl OPENSSL_ia32_rdrand -.type OPENSSL_ia32_rdrand,@function -.align 16 -OPENSSL_ia32_rdrand: - movl $8,%ecx -.Loop_rdrand: -.byte 72,15,199,240 - jc .Lbreak_rdrand - loop .Loop_rdrand -.Lbreak_rdrand: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_rdrand,.-OPENSSL_ia32_rdrand - -.globl OPENSSL_ia32_rdseed -.type OPENSSL_ia32_rdseed,@function -.align 16 -OPENSSL_ia32_rdseed: - movl $8,%ecx -.Loop_rdseed: -.byte 72,15,199,248 - jc .Lbreak_rdseed - loop .Loop_rdseed -.Lbreak_rdseed: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_rdseed,.-OPENSSL_ia32_rdseed diff --git a/deps/openssl/asm/x64-macosx-gas/aes/aes-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/aes-x86_64.s deleted file mode 100644 index cb2db3584a444c..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/aes-x86_64.s +++ /dev/null @@ -1,2534 +0,0 @@ -.text - -.p2align 4 -_x86_64_AES_encrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp L$enc_loop -.p2align 4 -L$enc_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - shrl $16,%ecx - movzbl %ah,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movl 12(%r15),%edx - movzbl %bh,%edi - movzbl %ch,%ebp - movl 0(%r15),%eax - xorl 1(%r14,%rdi,8),%r12d - xorl 1(%r14,%rbp,8),%r8d - - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - subl $1,%r13d - jnz L$enc_loop - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl 2(%r14,%rsi,8),%r10d - movzbl 2(%r14,%rdi,8),%r11d - movzbl 2(%r14,%rbp,8),%r12d - - movzbl %dl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl 2(%r14,%rsi,8),%r8d - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x0000ff00,%edi - andl $0x0000ff00,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%ecx - - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - - andl $0x0000ff00,%esi - andl $0x0000ff00,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0x00ff0000,%edi - andl $0x00ff0000,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movl 0(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 2(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0xff000000,%edi - andl $0xff000000,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %bh,%esi - movzbl %ch,%edi - movl 16+12(%r15),%edx - movl 2(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 16+0(%r15),%eax - - andl $0xff000000,%esi - andl $0xff000000,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_encrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp L$enc_loop_compact -.p2align 4 -L$enc_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%ecx - movzbl %dh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ah,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl %cl,%edi - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shll $8,%r9d - shrl $16,%edx - shll $8,%r13d - xorl %r9d,%r10d - shrl $16,%eax - movzbl %dl,%r9d - shrl $16,%ebx - xorl %r13d,%r11d - shll $8,%ebp - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - - shll $8,%esi - movzbl %bl,%ebp - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %dh,%esi - movzbl (%r14,%r13,1),%r13d - xorl %edi,%r10d - - shrl $8,%ecx - movzbl %ah,%edi - shll $16,%r9d - shrl $8,%ebx - shll $16,%r13d - xorl %r9d,%r11d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rcx,1),%edx - movzbl (%r14,%rbx,1),%ecx - - shll $16,%ebp - xorl %r13d,%r12d - shll $24,%esi - xorl %ebp,%r8d - shll $24,%edi - xorl %esi,%r10d - shll $24,%edx - xorl %edi,%r11d - shll $24,%ecx - movl %r10d,%eax - movl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je L$enc_compact_done - movl $0x80808080,%r10d - movl $0x80808080,%r11d - andl %eax,%r10d - andl %ebx,%r11d - movl %r10d,%esi - movl %r11d,%edi - shrl $7,%r10d - leal (%rax,%rax,1),%r8d - shrl $7,%r11d - leal (%rbx,%rbx,1),%r9d - subl %r10d,%esi - subl %r11d,%edi - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %eax,%r10d - movl %ebx,%r11d - xorl %esi,%r8d - xorl %edi,%r9d - - xorl %r8d,%eax - xorl %r9d,%ebx - movl $0x80808080,%r12d - roll $24,%eax - movl $0x80808080,%ebp - roll $24,%ebx - andl %ecx,%r12d - andl %edx,%ebp - xorl %r8d,%eax - xorl %r9d,%ebx - movl %r12d,%esi - rorl $16,%r10d - movl %ebp,%edi - rorl $16,%r11d - leal (%rcx,%rcx,1),%r8d - shrl $7,%r12d - xorl %r10d,%eax - shrl $7,%ebp - xorl %r11d,%ebx - rorl $8,%r10d - leal (%rdx,%rdx,1),%r9d - rorl $8,%r11d - subl %r12d,%esi - subl %ebp,%edi - xorl %r10d,%eax - xorl %r11d,%ebx - - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %ecx,%r12d - movl %edx,%ebp - xorl %esi,%r8d - xorl %edi,%r9d - - rorl $16,%r12d - xorl %r8d,%ecx - rorl $16,%ebp - xorl %r9d,%edx - roll $24,%ecx - movl 0(%r14),%esi - roll $24,%edx - xorl %r8d,%ecx - movl 64(%r14),%edi - xorl %r9d,%edx - movl 128(%r14),%r8d - xorl %r12d,%ecx - rorl $8,%r12d - xorl %ebp,%edx - rorl $8,%ebp - xorl %r12d,%ecx - movl 192(%r14),%r9d - xorl %ebp,%edx - jmp L$enc_loop_compact -.p2align 4 -L$enc_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 - -.globl _AES_encrypt - -.p2align 4 -.globl _asm_AES_encrypt -.private_extern _asm_AES_encrypt -_asm_AES_encrypt: -_AES_encrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -L$enc_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq L$AES_Te+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - - call _x86_64_AES_encrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$enc_epilogue: - .byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_decrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp L$dec_loop -.p2align 4 -L$dec_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %bh,%esi - shrl $16,%eax - movzbl %ch,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - movl 12(%r15),%edx - movzbl %ah,%ebp - xorl 1(%r14,%rsi,8),%r12d - movl 0(%r15),%eax - xorl 1(%r14,%rbp,8),%r8d - - xorl %r10d,%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r12d,%ecx - xorl %r11d,%ebx - xorl %r8d,%edx - subl $1,%r13d - jnz L$dec_loop - leaq 2048(%r14),%r14 - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl (%r14,%rsi,1),%r10d - movzbl (%r14,%rdi,1),%r11d - movzbl (%r14,%rbp,1),%r12d - - movzbl %dl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movzbl (%r14,%rsi,1),%r8d - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $8,%edi - shll $8,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%edx - - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%eax - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - - shll $8,%esi - shll $8,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $16,%edi - shll $16,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $24,%edi - shll $24,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %dh,%esi - movzbl %ah,%edi - movl 16+12(%r15),%edx - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movl 16+0(%r15),%eax - - shll $24,%esi - shll $24,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - leaq -2048(%r14),%r14 - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_decrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp L$dec_loop_compact - -.p2align 4 -L$dec_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movzbl %bh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ch,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shrl $16,%ecx - shll $8,%r13d - shll $8,%r9d - movzbl %cl,%edi - shrl $16,%eax - xorl %r9d,%r10d - shrl $16,%ebx - movzbl %dl,%r9d - - shll $8,%ebp - xorl %r13d,%r11d - shll $8,%esi - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - movzbl %bl,%ebp - - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %bh,%esi - movzbl (%r14,%rbp,1),%ebp - xorl %edi,%r10d - movzbl (%r14,%r13,1),%r13d - movzbl %ch,%edi - - shll $16,%ebp - shll $16,%r9d - shll $16,%r13d - xorl %ebp,%r8d - movzbl %dh,%ebp - xorl %r9d,%r11d - shrl $8,%eax - xorl %r13d,%r12d - - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%ebx - movzbl (%r14,%rbp,1),%ecx - movzbl (%r14,%rax,1),%edx - - movl %r10d,%eax - shll $24,%esi - shll $24,%ebx - shll $24,%ecx - xorl %esi,%eax - shll $24,%edx - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je L$dec_compact_done - - movq 256+0(%r14),%rsi - shlq $32,%rbx - shlq $32,%rdx - movq 256+8(%r14),%rdi - orq %rbx,%rax - orq %rdx,%rcx - movq 256+16(%r14),%rbp - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - movq 0(%r14),%rsi - roll $16,%r9d - movq 64(%r14),%rdi - roll $16,%r12d - movq 128(%r14),%rbp - roll $16,%r8d - movq 192(%r14),%r10 - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - movq 256(%r14),%r13 - xorl %r8d,%ebx - xorl %r11d,%edx - jmp L$dec_loop_compact -.p2align 4 -L$dec_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 - -.globl _AES_decrypt - -.p2align 4 -.globl _asm_AES_decrypt -.private_extern _asm_AES_decrypt -_asm_AES_decrypt: -_AES_decrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -L$dec_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq L$AES_Td+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - shrq $3,%rbp - addq %rbp,%r14 - - call _x86_64_AES_decrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$dec_epilogue: - .byte 0xf3,0xc3 - -.globl _private_AES_set_encrypt_key - -.p2align 4 -_private_AES_set_encrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $8,%rsp -L$enc_key_prologue: - - call _x86_64_AES_set_encrypt_key - - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -L$enc_key_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_AES_set_encrypt_key: - movl %esi,%ecx - movq %rdi,%rsi - movq %rdx,%rdi - - testq $-1,%rsi - jz L$badpointer - testq $-1,%rdi - jz L$badpointer - - leaq L$AES_Te(%rip),%rbp - leaq 2048+128(%rbp),%rbp - - - movl 0-128(%rbp),%eax - movl 32-128(%rbp),%ebx - movl 64-128(%rbp),%r8d - movl 96-128(%rbp),%edx - movl 128-128(%rbp),%eax - movl 160-128(%rbp),%ebx - movl 192-128(%rbp),%r8d - movl 224-128(%rbp),%edx - - cmpl $128,%ecx - je L$10rounds - cmpl $192,%ecx - je L$12rounds - cmpl $256,%ecx - je L$14rounds - movq $-2,%rax - jmp L$exit - -L$10rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rdx - movq %rax,0(%rdi) - movq %rdx,8(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$10shortcut -.p2align 2 -L$10loop: - movl 0(%rdi),%eax - movl 12(%rdi),%edx -L$10shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,16(%rdi) - xorl 4(%rdi),%eax - movl %eax,20(%rdi) - xorl 8(%rdi),%eax - movl %eax,24(%rdi) - xorl 12(%rdi),%eax - movl %eax,28(%rdi) - addl $1,%ecx - leaq 16(%rdi),%rdi - cmpl $10,%ecx - jl L$10loop - - movl $10,80(%rdi) - xorq %rax,%rax - jmp L$exit - -L$12rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rdx,16(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$12shortcut -.p2align 2 -L$12loop: - movl 0(%rdi),%eax - movl 20(%rdi),%edx -L$12shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,24(%rdi) - xorl 4(%rdi),%eax - movl %eax,28(%rdi) - xorl 8(%rdi),%eax - movl %eax,32(%rdi) - xorl 12(%rdi),%eax - movl %eax,36(%rdi) - - cmpl $7,%ecx - je L$12break - addl $1,%ecx - - xorl 16(%rdi),%eax - movl %eax,40(%rdi) - xorl 20(%rdi),%eax - movl %eax,44(%rdi) - - leaq 24(%rdi),%rdi - jmp L$12loop -L$12break: - movl $12,72(%rdi) - xorq %rax,%rax - jmp L$exit - -L$14rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rcx - movq 24(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$14shortcut -.p2align 2 -L$14loop: - movl 0(%rdi),%eax - movl 28(%rdi),%edx -L$14shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,32(%rdi) - xorl 4(%rdi),%eax - movl %eax,36(%rdi) - xorl 8(%rdi),%eax - movl %eax,40(%rdi) - xorl 12(%rdi),%eax - movl %eax,44(%rdi) - - cmpl $6,%ecx - je L$14break - addl $1,%ecx - - movl %eax,%edx - movl 16(%rdi),%eax - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - - movl %eax,48(%rdi) - xorl 20(%rdi),%eax - movl %eax,52(%rdi) - xorl 24(%rdi),%eax - movl %eax,56(%rdi) - xorl 28(%rdi),%eax - movl %eax,60(%rdi) - - leaq 32(%rdi),%rdi - jmp L$14loop -L$14break: - movl $14,48(%rdi) - xorq %rax,%rax - jmp L$exit - -L$badpointer: - movq $-1,%rax -L$exit: -.byte 0xf3,0xc3 - -.globl _private_AES_set_decrypt_key - -.p2align 4 -_private_AES_set_decrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - pushq %rdx -L$dec_key_prologue: - - call _x86_64_AES_set_encrypt_key - movq (%rsp),%r8 - cmpl $0,%eax - jne L$abort - - movl 240(%r8),%r14d - xorq %rdi,%rdi - leaq (%rdi,%r14,4),%rcx - movq %r8,%rsi - leaq (%r8,%rcx,4),%rdi -.p2align 2 -L$invert: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 0(%rdi),%rcx - movq 8(%rdi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,0(%rsi) - movq %rdx,8(%rsi) - leaq 16(%rsi),%rsi - leaq -16(%rdi),%rdi - cmpq %rsi,%rdi - jne L$invert - - leaq L$AES_Te+2048+1024(%rip),%rax - - movq 40(%rax),%rsi - movq 48(%rax),%rdi - movq 56(%rax),%rbp - - movq %r8,%r15 - subl $1,%r14d -.p2align 2 -L$permute: - leaq 16(%r15),%r15 - movq 0(%r15),%rax - movq 8(%r15),%rcx - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - - roll $16,%r9d - - roll $16,%r12d - - roll $16,%r8d - - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - - xorl %r8d,%ebx - xorl %r11d,%edx - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - subl $1,%r14d - jnz L$permute - - xorq %rax,%rax -L$abort: - movq 8(%rsp),%r15 - movq 16(%rsp),%r14 - movq 24(%rsp),%r13 - movq 32(%rsp),%r12 - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -L$dec_key_epilogue: - .byte 0xf3,0xc3 - -.globl _AES_cbc_encrypt - -.p2align 4 - -.globl _asm_AES_cbc_encrypt -.private_extern _asm_AES_cbc_encrypt -_asm_AES_cbc_encrypt: -_AES_cbc_encrypt: - cmpq $0,%rdx - je L$cbc_epilogue - pushfq - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$cbc_prologue: - - cld - movl %r9d,%r9d - - leaq L$AES_Te(%rip),%r14 - cmpq $0,%r9 - jne L$cbc_picked_te - leaq L$AES_Td(%rip),%r14 -L$cbc_picked_te: - - movl _OPENSSL_ia32cap_P(%rip),%r10d - cmpq $512,%rdx - jb L$cbc_slow_prologue - testq $15,%rdx - jnz L$cbc_slow_prologue - btl $28,%r10d - jc L$cbc_slow_prologue - - - leaq -88-248(%rsp),%r15 - andq $-64,%r15 - - - movq %r14,%r10 - leaq 2304(%r14),%r11 - movq %r15,%r12 - andq $0xFFF,%r10 - andq $0xFFF,%r11 - andq $0xFFF,%r12 - - cmpq %r11,%r12 - jb L$cbc_te_break_out - subq %r11,%r12 - subq %r12,%r15 - jmp L$cbc_te_ok -L$cbc_te_break_out: - subq %r10,%r12 - andq $0xFFF,%r12 - addq $320,%r12 - subq %r12,%r15 -.p2align 2 -L$cbc_te_ok: - - xchgq %rsp,%r15 - - movq %r15,16(%rsp) -L$cbc_fast_body: - movq %rdi,24(%rsp) - movq %rsi,32(%rsp) - movq %rdx,40(%rsp) - movq %rcx,48(%rsp) - movq %r8,56(%rsp) - movl $0,80+240(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - - movl 240(%r15),%eax - - movq %r15,%r10 - subq %r14,%r10 - andq $0xfff,%r10 - cmpq $2304,%r10 - jb L$cbc_do_ecopy - cmpq $4096-248,%r10 - jb L$cbc_skip_ecopy -.p2align 2 -L$cbc_do_ecopy: - movq %r15,%rsi - leaq 80(%rsp),%rdi - leaq 80(%rsp),%r15 - movl $30,%ecx -.long 0x90A548F3 - movl %eax,(%rdi) -L$cbc_skip_ecopy: - movq %r15,0(%rsp) - - movl $18,%ecx -.p2align 2 -L$cbc_prefetch_te: - movq 0(%r14),%r10 - movq 32(%r14),%r11 - movq 64(%r14),%r12 - movq 96(%r14),%r13 - leaq 128(%r14),%r14 - subl $1,%ecx - jnz L$cbc_prefetch_te - leaq -2304(%r14),%r14 - - cmpq $0,%rbx - je L$FAST_DECRYPT - - - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - -.p2align 2 -L$cbc_fast_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_encrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - movq %r10,40(%rsp) - jnz L$cbc_fast_enc_loop - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp L$cbc_fast_cleanup - - -.p2align 4 -L$FAST_DECRYPT: - cmpq %r8,%r9 - je L$cbc_fast_dec_in_place - - movq %rbp,64(%rsp) -.p2align 2 -L$cbc_fast_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 64(%rsp),%rbp - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0(%rbp),%eax - xorl 4(%rbp),%ebx - xorl 8(%rbp),%ecx - xorl 12(%rbp),%edx - movq %r8,%rbp - - subq $16,%r10 - movq %r10,40(%rsp) - movq %rbp,64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jnz L$cbc_fast_dec_loop - movq 56(%rsp),%r12 - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0(%r12) - movq %r11,8(%r12) - jmp L$cbc_fast_cleanup - -.p2align 4 -L$cbc_fast_dec_in_place: - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0+64(%rsp) - movq %r11,8+64(%rsp) -.p2align 2 -L$cbc_fast_dec_in_place_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jz L$cbc_fast_dec_in_place_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - movq %r10,40(%rsp) - jmp L$cbc_fast_dec_in_place_loop -L$cbc_fast_dec_in_place_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - -.p2align 2 -L$cbc_fast_cleanup: - cmpl $0,80+240(%rsp) - leaq 80(%rsp),%rdi - je L$cbc_exit - movl $30,%ecx - xorq %rax,%rax -.long 0x90AB48F3 - - jmp L$cbc_exit - - -.p2align 4 -L$cbc_slow_prologue: - - leaq -88(%rsp),%rbp - andq $-64,%rbp - - leaq -88-63(%rcx),%r10 - subq %rbp,%r10 - negq %r10 - andq $0x3c0,%r10 - subq %r10,%rbp - - xchgq %rsp,%rbp - - movq %rbp,16(%rsp) -L$cbc_slow_body: - - - - - movq %r8,56(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - movq %rdx,%r10 - - movl 240(%r15),%eax - movq %r15,0(%rsp) - shll $4,%eax - leaq (%r15,%rax,1),%rax - movq %rax,8(%rsp) - - - leaq 2048(%r14),%r14 - leaq 768-8(%rsp),%rax - subq %r14,%rax - andq $0x300,%rax - leaq (%r14,%rax,1),%r14 - - cmpq $0,%rbx - je L$SLOW_DECRYPT - - - testq $-16,%r10 - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - jz L$cbc_slow_enc_tail - -.p2align 2 -L$cbc_slow_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_encrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - jnz L$cbc_slow_enc_loop - testq $15,%r10 - jnz L$cbc_slow_enc_tail - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp L$cbc_exit - -.p2align 2 -L$cbc_slow_enc_tail: - movq %rax,%r11 - movq %rcx,%r12 - movq %r10,%rcx - movq %r8,%rsi - movq %r9,%rdi -.long 0x9066A4F3 - movq $16,%rcx - subq %r10,%rcx - xorq %rax,%rax -.long 0x9066AAF3 - movq %r9,%r8 - movq $16,%r10 - movq %r11,%rax - movq %r12,%rcx - jmp L$cbc_slow_enc_loop - -.p2align 4 -L$SLOW_DECRYPT: - shrq $3,%rax - addq %rax,%r14 - - movq 0(%rbp),%r11 - movq 8(%rbp),%r12 - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - -.p2align 2 -L$cbc_slow_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_decrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jc L$cbc_slow_dec_partial - jz L$cbc_slow_dec_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jmp L$cbc_slow_dec_loop -L$cbc_slow_dec_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - jmp L$cbc_exit - -.p2align 2 -L$cbc_slow_dec_partial: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0+64(%rsp) - movl %ebx,4+64(%rsp) - movl %ecx,8+64(%rsp) - movl %edx,12+64(%rsp) - - movq %r9,%rdi - leaq 64(%rsp),%rsi - leaq 16(%r10),%rcx -.long 0x9066A4F3 - jmp L$cbc_exit - -.p2align 4 -L$cbc_exit: - movq 16(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$cbc_popfq: - popfq -L$cbc_epilogue: - .byte 0xf3,0xc3 - -.p2align 6 -L$AES_Te: -.long 0xa56363c6,0xa56363c6 -.long 0x847c7cf8,0x847c7cf8 -.long 0x997777ee,0x997777ee -.long 0x8d7b7bf6,0x8d7b7bf6 -.long 0x0df2f2ff,0x0df2f2ff -.long 0xbd6b6bd6,0xbd6b6bd6 -.long 0xb16f6fde,0xb16f6fde -.long 0x54c5c591,0x54c5c591 -.long 0x50303060,0x50303060 -.long 0x03010102,0x03010102 -.long 0xa96767ce,0xa96767ce -.long 0x7d2b2b56,0x7d2b2b56 -.long 0x19fefee7,0x19fefee7 -.long 0x62d7d7b5,0x62d7d7b5 -.long 0xe6abab4d,0xe6abab4d -.long 0x9a7676ec,0x9a7676ec -.long 0x45caca8f,0x45caca8f -.long 0x9d82821f,0x9d82821f -.long 0x40c9c989,0x40c9c989 -.long 0x877d7dfa,0x877d7dfa -.long 0x15fafaef,0x15fafaef -.long 0xeb5959b2,0xeb5959b2 -.long 0xc947478e,0xc947478e -.long 0x0bf0f0fb,0x0bf0f0fb -.long 0xecadad41,0xecadad41 -.long 0x67d4d4b3,0x67d4d4b3 -.long 0xfda2a25f,0xfda2a25f -.long 0xeaafaf45,0xeaafaf45 -.long 0xbf9c9c23,0xbf9c9c23 -.long 0xf7a4a453,0xf7a4a453 -.long 0x967272e4,0x967272e4 -.long 0x5bc0c09b,0x5bc0c09b -.long 0xc2b7b775,0xc2b7b775 -.long 0x1cfdfde1,0x1cfdfde1 -.long 0xae93933d,0xae93933d -.long 0x6a26264c,0x6a26264c -.long 0x5a36366c,0x5a36366c -.long 0x413f3f7e,0x413f3f7e -.long 0x02f7f7f5,0x02f7f7f5 -.long 0x4fcccc83,0x4fcccc83 -.long 0x5c343468,0x5c343468 -.long 0xf4a5a551,0xf4a5a551 -.long 0x34e5e5d1,0x34e5e5d1 -.long 0x08f1f1f9,0x08f1f1f9 -.long 0x937171e2,0x937171e2 -.long 0x73d8d8ab,0x73d8d8ab -.long 0x53313162,0x53313162 -.long 0x3f15152a,0x3f15152a -.long 0x0c040408,0x0c040408 -.long 0x52c7c795,0x52c7c795 -.long 0x65232346,0x65232346 -.long 0x5ec3c39d,0x5ec3c39d -.long 0x28181830,0x28181830 -.long 0xa1969637,0xa1969637 -.long 0x0f05050a,0x0f05050a -.long 0xb59a9a2f,0xb59a9a2f -.long 0x0907070e,0x0907070e -.long 0x36121224,0x36121224 -.long 0x9b80801b,0x9b80801b -.long 0x3de2e2df,0x3de2e2df -.long 0x26ebebcd,0x26ebebcd -.long 0x6927274e,0x6927274e -.long 0xcdb2b27f,0xcdb2b27f -.long 0x9f7575ea,0x9f7575ea -.long 0x1b090912,0x1b090912 -.long 0x9e83831d,0x9e83831d -.long 0x742c2c58,0x742c2c58 -.long 0x2e1a1a34,0x2e1a1a34 -.long 0x2d1b1b36,0x2d1b1b36 -.long 0xb26e6edc,0xb26e6edc -.long 0xee5a5ab4,0xee5a5ab4 -.long 0xfba0a05b,0xfba0a05b -.long 0xf65252a4,0xf65252a4 -.long 0x4d3b3b76,0x4d3b3b76 -.long 0x61d6d6b7,0x61d6d6b7 -.long 0xceb3b37d,0xceb3b37d -.long 0x7b292952,0x7b292952 -.long 0x3ee3e3dd,0x3ee3e3dd -.long 0x712f2f5e,0x712f2f5e -.long 0x97848413,0x97848413 -.long 0xf55353a6,0xf55353a6 -.long 0x68d1d1b9,0x68d1d1b9 -.long 0x00000000,0x00000000 -.long 0x2cededc1,0x2cededc1 -.long 0x60202040,0x60202040 -.long 0x1ffcfce3,0x1ffcfce3 -.long 0xc8b1b179,0xc8b1b179 -.long 0xed5b5bb6,0xed5b5bb6 -.long 0xbe6a6ad4,0xbe6a6ad4 -.long 0x46cbcb8d,0x46cbcb8d -.long 0xd9bebe67,0xd9bebe67 -.long 0x4b393972,0x4b393972 -.long 0xde4a4a94,0xde4a4a94 -.long 0xd44c4c98,0xd44c4c98 -.long 0xe85858b0,0xe85858b0 -.long 0x4acfcf85,0x4acfcf85 -.long 0x6bd0d0bb,0x6bd0d0bb -.long 0x2aefefc5,0x2aefefc5 -.long 0xe5aaaa4f,0xe5aaaa4f -.long 0x16fbfbed,0x16fbfbed -.long 0xc5434386,0xc5434386 -.long 0xd74d4d9a,0xd74d4d9a -.long 0x55333366,0x55333366 -.long 0x94858511,0x94858511 -.long 0xcf45458a,0xcf45458a -.long 0x10f9f9e9,0x10f9f9e9 -.long 0x06020204,0x06020204 -.long 0x817f7ffe,0x817f7ffe -.long 0xf05050a0,0xf05050a0 -.long 0x443c3c78,0x443c3c78 -.long 0xba9f9f25,0xba9f9f25 -.long 0xe3a8a84b,0xe3a8a84b -.long 0xf35151a2,0xf35151a2 -.long 0xfea3a35d,0xfea3a35d -.long 0xc0404080,0xc0404080 -.long 0x8a8f8f05,0x8a8f8f05 -.long 0xad92923f,0xad92923f -.long 0xbc9d9d21,0xbc9d9d21 -.long 0x48383870,0x48383870 -.long 0x04f5f5f1,0x04f5f5f1 -.long 0xdfbcbc63,0xdfbcbc63 -.long 0xc1b6b677,0xc1b6b677 -.long 0x75dadaaf,0x75dadaaf -.long 0x63212142,0x63212142 -.long 0x30101020,0x30101020 -.long 0x1affffe5,0x1affffe5 -.long 0x0ef3f3fd,0x0ef3f3fd -.long 0x6dd2d2bf,0x6dd2d2bf -.long 0x4ccdcd81,0x4ccdcd81 -.long 0x140c0c18,0x140c0c18 -.long 0x35131326,0x35131326 -.long 0x2fececc3,0x2fececc3 -.long 0xe15f5fbe,0xe15f5fbe -.long 0xa2979735,0xa2979735 -.long 0xcc444488,0xcc444488 -.long 0x3917172e,0x3917172e -.long 0x57c4c493,0x57c4c493 -.long 0xf2a7a755,0xf2a7a755 -.long 0x827e7efc,0x827e7efc -.long 0x473d3d7a,0x473d3d7a -.long 0xac6464c8,0xac6464c8 -.long 0xe75d5dba,0xe75d5dba -.long 0x2b191932,0x2b191932 -.long 0x957373e6,0x957373e6 -.long 0xa06060c0,0xa06060c0 -.long 0x98818119,0x98818119 -.long 0xd14f4f9e,0xd14f4f9e -.long 0x7fdcdca3,0x7fdcdca3 -.long 0x66222244,0x66222244 -.long 0x7e2a2a54,0x7e2a2a54 -.long 0xab90903b,0xab90903b -.long 0x8388880b,0x8388880b -.long 0xca46468c,0xca46468c -.long 0x29eeeec7,0x29eeeec7 -.long 0xd3b8b86b,0xd3b8b86b -.long 0x3c141428,0x3c141428 -.long 0x79dedea7,0x79dedea7 -.long 0xe25e5ebc,0xe25e5ebc -.long 0x1d0b0b16,0x1d0b0b16 -.long 0x76dbdbad,0x76dbdbad -.long 0x3be0e0db,0x3be0e0db -.long 0x56323264,0x56323264 -.long 0x4e3a3a74,0x4e3a3a74 -.long 0x1e0a0a14,0x1e0a0a14 -.long 0xdb494992,0xdb494992 -.long 0x0a06060c,0x0a06060c -.long 0x6c242448,0x6c242448 -.long 0xe45c5cb8,0xe45c5cb8 -.long 0x5dc2c29f,0x5dc2c29f -.long 0x6ed3d3bd,0x6ed3d3bd -.long 0xefacac43,0xefacac43 -.long 0xa66262c4,0xa66262c4 -.long 0xa8919139,0xa8919139 -.long 0xa4959531,0xa4959531 -.long 0x37e4e4d3,0x37e4e4d3 -.long 0x8b7979f2,0x8b7979f2 -.long 0x32e7e7d5,0x32e7e7d5 -.long 0x43c8c88b,0x43c8c88b -.long 0x5937376e,0x5937376e -.long 0xb76d6dda,0xb76d6dda -.long 0x8c8d8d01,0x8c8d8d01 -.long 0x64d5d5b1,0x64d5d5b1 -.long 0xd24e4e9c,0xd24e4e9c -.long 0xe0a9a949,0xe0a9a949 -.long 0xb46c6cd8,0xb46c6cd8 -.long 0xfa5656ac,0xfa5656ac -.long 0x07f4f4f3,0x07f4f4f3 -.long 0x25eaeacf,0x25eaeacf -.long 0xaf6565ca,0xaf6565ca -.long 0x8e7a7af4,0x8e7a7af4 -.long 0xe9aeae47,0xe9aeae47 -.long 0x18080810,0x18080810 -.long 0xd5baba6f,0xd5baba6f -.long 0x887878f0,0x887878f0 -.long 0x6f25254a,0x6f25254a -.long 0x722e2e5c,0x722e2e5c -.long 0x241c1c38,0x241c1c38 -.long 0xf1a6a657,0xf1a6a657 -.long 0xc7b4b473,0xc7b4b473 -.long 0x51c6c697,0x51c6c697 -.long 0x23e8e8cb,0x23e8e8cb -.long 0x7cdddda1,0x7cdddda1 -.long 0x9c7474e8,0x9c7474e8 -.long 0x211f1f3e,0x211f1f3e -.long 0xdd4b4b96,0xdd4b4b96 -.long 0xdcbdbd61,0xdcbdbd61 -.long 0x868b8b0d,0x868b8b0d -.long 0x858a8a0f,0x858a8a0f -.long 0x907070e0,0x907070e0 -.long 0x423e3e7c,0x423e3e7c -.long 0xc4b5b571,0xc4b5b571 -.long 0xaa6666cc,0xaa6666cc -.long 0xd8484890,0xd8484890 -.long 0x05030306,0x05030306 -.long 0x01f6f6f7,0x01f6f6f7 -.long 0x120e0e1c,0x120e0e1c -.long 0xa36161c2,0xa36161c2 -.long 0x5f35356a,0x5f35356a -.long 0xf95757ae,0xf95757ae -.long 0xd0b9b969,0xd0b9b969 -.long 0x91868617,0x91868617 -.long 0x58c1c199,0x58c1c199 -.long 0x271d1d3a,0x271d1d3a -.long 0xb99e9e27,0xb99e9e27 -.long 0x38e1e1d9,0x38e1e1d9 -.long 0x13f8f8eb,0x13f8f8eb -.long 0xb398982b,0xb398982b -.long 0x33111122,0x33111122 -.long 0xbb6969d2,0xbb6969d2 -.long 0x70d9d9a9,0x70d9d9a9 -.long 0x898e8e07,0x898e8e07 -.long 0xa7949433,0xa7949433 -.long 0xb69b9b2d,0xb69b9b2d -.long 0x221e1e3c,0x221e1e3c -.long 0x92878715,0x92878715 -.long 0x20e9e9c9,0x20e9e9c9 -.long 0x49cece87,0x49cece87 -.long 0xff5555aa,0xff5555aa -.long 0x78282850,0x78282850 -.long 0x7adfdfa5,0x7adfdfa5 -.long 0x8f8c8c03,0x8f8c8c03 -.long 0xf8a1a159,0xf8a1a159 -.long 0x80898909,0x80898909 -.long 0x170d0d1a,0x170d0d1a -.long 0xdabfbf65,0xdabfbf65 -.long 0x31e6e6d7,0x31e6e6d7 -.long 0xc6424284,0xc6424284 -.long 0xb86868d0,0xb86868d0 -.long 0xc3414182,0xc3414182 -.long 0xb0999929,0xb0999929 -.long 0x772d2d5a,0x772d2d5a -.long 0x110f0f1e,0x110f0f1e -.long 0xcbb0b07b,0xcbb0b07b -.long 0xfc5454a8,0xfc5454a8 -.long 0xd6bbbb6d,0xd6bbbb6d -.long 0x3a16162c,0x3a16162c -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.long 0x00000001, 0x00000002, 0x00000004, 0x00000008 -.long 0x00000010, 0x00000020, 0x00000040, 0x00000080 -.long 0x0000001b, 0x00000036, 0x80808080, 0x80808080 -.long 0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b -.p2align 6 -L$AES_Td: -.long 0x50a7f451,0x50a7f451 -.long 0x5365417e,0x5365417e -.long 0xc3a4171a,0xc3a4171a -.long 0x965e273a,0x965e273a -.long 0xcb6bab3b,0xcb6bab3b -.long 0xf1459d1f,0xf1459d1f -.long 0xab58faac,0xab58faac -.long 0x9303e34b,0x9303e34b -.long 0x55fa3020,0x55fa3020 -.long 0xf66d76ad,0xf66d76ad -.long 0x9176cc88,0x9176cc88 -.long 0x254c02f5,0x254c02f5 -.long 0xfcd7e54f,0xfcd7e54f -.long 0xd7cb2ac5,0xd7cb2ac5 -.long 0x80443526,0x80443526 -.long 0x8fa362b5,0x8fa362b5 -.long 0x495ab1de,0x495ab1de -.long 0x671bba25,0x671bba25 -.long 0x980eea45,0x980eea45 -.long 0xe1c0fe5d,0xe1c0fe5d -.long 0x02752fc3,0x02752fc3 -.long 0x12f04c81,0x12f04c81 -.long 0xa397468d,0xa397468d -.long 0xc6f9d36b,0xc6f9d36b -.long 0xe75f8f03,0xe75f8f03 -.long 0x959c9215,0x959c9215 -.long 0xeb7a6dbf,0xeb7a6dbf -.long 0xda595295,0xda595295 -.long 0x2d83bed4,0x2d83bed4 -.long 0xd3217458,0xd3217458 -.long 0x2969e049,0x2969e049 -.long 0x44c8c98e,0x44c8c98e -.long 0x6a89c275,0x6a89c275 -.long 0x78798ef4,0x78798ef4 -.long 0x6b3e5899,0x6b3e5899 -.long 0xdd71b927,0xdd71b927 -.long 0xb64fe1be,0xb64fe1be -.long 0x17ad88f0,0x17ad88f0 -.long 0x66ac20c9,0x66ac20c9 -.long 0xb43ace7d,0xb43ace7d -.long 0x184adf63,0x184adf63 -.long 0x82311ae5,0x82311ae5 -.long 0x60335197,0x60335197 -.long 0x457f5362,0x457f5362 -.long 0xe07764b1,0xe07764b1 -.long 0x84ae6bbb,0x84ae6bbb -.long 0x1ca081fe,0x1ca081fe -.long 0x942b08f9,0x942b08f9 -.long 0x58684870,0x58684870 -.long 0x19fd458f,0x19fd458f -.long 0x876cde94,0x876cde94 -.long 0xb7f87b52,0xb7f87b52 -.long 0x23d373ab,0x23d373ab -.long 0xe2024b72,0xe2024b72 -.long 0x578f1fe3,0x578f1fe3 -.long 0x2aab5566,0x2aab5566 -.long 0x0728ebb2,0x0728ebb2 -.long 0x03c2b52f,0x03c2b52f -.long 0x9a7bc586,0x9a7bc586 -.long 0xa50837d3,0xa50837d3 -.long 0xf2872830,0xf2872830 -.long 0xb2a5bf23,0xb2a5bf23 -.long 0xba6a0302,0xba6a0302 -.long 0x5c8216ed,0x5c8216ed -.long 0x2b1ccf8a,0x2b1ccf8a -.long 0x92b479a7,0x92b479a7 -.long 0xf0f207f3,0xf0f207f3 -.long 0xa1e2694e,0xa1e2694e -.long 0xcdf4da65,0xcdf4da65 -.long 0xd5be0506,0xd5be0506 -.long 0x1f6234d1,0x1f6234d1 -.long 0x8afea6c4,0x8afea6c4 -.long 0x9d532e34,0x9d532e34 -.long 0xa055f3a2,0xa055f3a2 -.long 0x32e18a05,0x32e18a05 -.long 0x75ebf6a4,0x75ebf6a4 -.long 0x39ec830b,0x39ec830b -.long 0xaaef6040,0xaaef6040 -.long 0x069f715e,0x069f715e -.long 0x51106ebd,0x51106ebd -.long 0xf98a213e,0xf98a213e -.long 0x3d06dd96,0x3d06dd96 -.long 0xae053edd,0xae053edd -.long 0x46bde64d,0x46bde64d -.long 0xb58d5491,0xb58d5491 -.long 0x055dc471,0x055dc471 -.long 0x6fd40604,0x6fd40604 -.long 0xff155060,0xff155060 -.long 0x24fb9819,0x24fb9819 -.long 0x97e9bdd6,0x97e9bdd6 -.long 0xcc434089,0xcc434089 -.long 0x779ed967,0x779ed967 -.long 0xbd42e8b0,0xbd42e8b0 -.long 0x888b8907,0x888b8907 -.long 0x385b19e7,0x385b19e7 -.long 0xdbeec879,0xdbeec879 -.long 0x470a7ca1,0x470a7ca1 -.long 0xe90f427c,0xe90f427c -.long 0xc91e84f8,0xc91e84f8 -.long 0x00000000,0x00000000 -.long 0x83868009,0x83868009 -.long 0x48ed2b32,0x48ed2b32 -.long 0xac70111e,0xac70111e -.long 0x4e725a6c,0x4e725a6c -.long 0xfbff0efd,0xfbff0efd -.long 0x5638850f,0x5638850f -.long 0x1ed5ae3d,0x1ed5ae3d -.long 0x27392d36,0x27392d36 -.long 0x64d90f0a,0x64d90f0a -.long 0x21a65c68,0x21a65c68 -.long 0xd1545b9b,0xd1545b9b -.long 0x3a2e3624,0x3a2e3624 -.long 0xb1670a0c,0xb1670a0c -.long 0x0fe75793,0x0fe75793 -.long 0xd296eeb4,0xd296eeb4 -.long 0x9e919b1b,0x9e919b1b -.long 0x4fc5c080,0x4fc5c080 -.long 0xa220dc61,0xa220dc61 -.long 0x694b775a,0x694b775a -.long 0x161a121c,0x161a121c -.long 0x0aba93e2,0x0aba93e2 -.long 0xe52aa0c0,0xe52aa0c0 -.long 0x43e0223c,0x43e0223c -.long 0x1d171b12,0x1d171b12 -.long 0x0b0d090e,0x0b0d090e -.long 0xadc78bf2,0xadc78bf2 -.long 0xb9a8b62d,0xb9a8b62d -.long 0xc8a91e14,0xc8a91e14 -.long 0x8519f157,0x8519f157 -.long 0x4c0775af,0x4c0775af -.long 0xbbdd99ee,0xbbdd99ee -.long 0xfd607fa3,0xfd607fa3 -.long 0x9f2601f7,0x9f2601f7 -.long 0xbcf5725c,0xbcf5725c -.long 0xc53b6644,0xc53b6644 -.long 0x347efb5b,0x347efb5b -.long 0x7629438b,0x7629438b -.long 0xdcc623cb,0xdcc623cb -.long 0x68fcedb6,0x68fcedb6 -.long 0x63f1e4b8,0x63f1e4b8 -.long 0xcadc31d7,0xcadc31d7 -.long 0x10856342,0x10856342 -.long 0x40229713,0x40229713 -.long 0x2011c684,0x2011c684 -.long 0x7d244a85,0x7d244a85 -.long 0xf83dbbd2,0xf83dbbd2 -.long 0x1132f9ae,0x1132f9ae -.long 0x6da129c7,0x6da129c7 -.long 0x4b2f9e1d,0x4b2f9e1d -.long 0xf330b2dc,0xf330b2dc -.long 0xec52860d,0xec52860d -.long 0xd0e3c177,0xd0e3c177 -.long 0x6c16b32b,0x6c16b32b -.long 0x99b970a9,0x99b970a9 -.long 0xfa489411,0xfa489411 -.long 0x2264e947,0x2264e947 -.long 0xc48cfca8,0xc48cfca8 -.long 0x1a3ff0a0,0x1a3ff0a0 -.long 0xd82c7d56,0xd82c7d56 -.long 0xef903322,0xef903322 -.long 0xc74e4987,0xc74e4987 -.long 0xc1d138d9,0xc1d138d9 -.long 0xfea2ca8c,0xfea2ca8c -.long 0x360bd498,0x360bd498 -.long 0xcf81f5a6,0xcf81f5a6 -.long 0x28de7aa5,0x28de7aa5 -.long 0x268eb7da,0x268eb7da -.long 0xa4bfad3f,0xa4bfad3f -.long 0xe49d3a2c,0xe49d3a2c -.long 0x0d927850,0x0d927850 -.long 0x9bcc5f6a,0x9bcc5f6a -.long 0x62467e54,0x62467e54 -.long 0xc2138df6,0xc2138df6 -.long 0xe8b8d890,0xe8b8d890 -.long 0x5ef7392e,0x5ef7392e -.long 0xf5afc382,0xf5afc382 -.long 0xbe805d9f,0xbe805d9f -.long 0x7c93d069,0x7c93d069 -.long 0xa92dd56f,0xa92dd56f -.long 0xb31225cf,0xb31225cf -.long 0x3b99acc8,0x3b99acc8 -.long 0xa77d1810,0xa77d1810 -.long 0x6e639ce8,0x6e639ce8 -.long 0x7bbb3bdb,0x7bbb3bdb -.long 0x097826cd,0x097826cd -.long 0xf418596e,0xf418596e -.long 0x01b79aec,0x01b79aec -.long 0xa89a4f83,0xa89a4f83 -.long 0x656e95e6,0x656e95e6 -.long 0x7ee6ffaa,0x7ee6ffaa -.long 0x08cfbc21,0x08cfbc21 -.long 0xe6e815ef,0xe6e815ef -.long 0xd99be7ba,0xd99be7ba -.long 0xce366f4a,0xce366f4a -.long 0xd4099fea,0xd4099fea -.long 0xd67cb029,0xd67cb029 -.long 0xafb2a431,0xafb2a431 -.long 0x31233f2a,0x31233f2a -.long 0x3094a5c6,0x3094a5c6 -.long 0xc066a235,0xc066a235 -.long 0x37bc4e74,0x37bc4e74 -.long 0xa6ca82fc,0xa6ca82fc -.long 0xb0d090e0,0xb0d090e0 -.long 0x15d8a733,0x15d8a733 -.long 0x4a9804f1,0x4a9804f1 -.long 0xf7daec41,0xf7daec41 -.long 0x0e50cd7f,0x0e50cd7f -.long 0x2ff69117,0x2ff69117 -.long 0x8dd64d76,0x8dd64d76 -.long 0x4db0ef43,0x4db0ef43 -.long 0x544daacc,0x544daacc -.long 0xdf0496e4,0xdf0496e4 -.long 0xe3b5d19e,0xe3b5d19e -.long 0x1b886a4c,0x1b886a4c -.long 0xb81f2cc1,0xb81f2cc1 -.long 0x7f516546,0x7f516546 -.long 0x04ea5e9d,0x04ea5e9d -.long 0x5d358c01,0x5d358c01 -.long 0x737487fa,0x737487fa -.long 0x2e410bfb,0x2e410bfb -.long 0x5a1d67b3,0x5a1d67b3 -.long 0x52d2db92,0x52d2db92 -.long 0x335610e9,0x335610e9 -.long 0x1347d66d,0x1347d66d -.long 0x8c61d79a,0x8c61d79a -.long 0x7a0ca137,0x7a0ca137 -.long 0x8e14f859,0x8e14f859 -.long 0x893c13eb,0x893c13eb -.long 0xee27a9ce,0xee27a9ce -.long 0x35c961b7,0x35c961b7 -.long 0xede51ce1,0xede51ce1 -.long 0x3cb1477a,0x3cb1477a -.long 0x59dfd29c,0x59dfd29c -.long 0x3f73f255,0x3f73f255 -.long 0x79ce1418,0x79ce1418 -.long 0xbf37c773,0xbf37c773 -.long 0xeacdf753,0xeacdf753 -.long 0x5baafd5f,0x5baafd5f -.long 0x146f3ddf,0x146f3ddf -.long 0x86db4478,0x86db4478 -.long 0x81f3afca,0x81f3afca -.long 0x3ec468b9,0x3ec468b9 -.long 0x2c342438,0x2c342438 -.long 0x5f40a3c2,0x5f40a3c2 -.long 0x72c31d16,0x72c31d16 -.long 0x0c25e2bc,0x0c25e2bc -.long 0x8b493c28,0x8b493c28 -.long 0x41950dff,0x41950dff -.long 0x7101a839,0x7101a839 -.long 0xdeb30c08,0xdeb30c08 -.long 0x9ce4b4d8,0x9ce4b4d8 -.long 0x90c15664,0x90c15664 -.long 0x6184cb7b,0x6184cb7b -.long 0x70b632d5,0x70b632d5 -.long 0x745c6c48,0x745c6c48 -.long 0x4257b8d0,0x4257b8d0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/aesni-mb-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/aesni-mb-x86_64.s deleted file mode 100644 index f127e013ea6b84..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/aesni-mb-x86_64.s +++ /dev/null @@ -1,1434 +0,0 @@ -.text - - - -.globl _aesni_multi_cbc_encrypt - -.p2align 5 -_aesni_multi_cbc_encrypt: - cmpl $2,%edx - jb L$enc_non_avx - movl _OPENSSL_ia32cap_P+4(%rip),%ecx - testl $268435456,%ecx - jnz _avx_cbc_enc_shortcut - jmp L$enc_non_avx -.p2align 4 -L$enc_non_avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -L$enc4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -L$enc4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz L$enc4x_done - - movups 16-120(%rsi),%xmm1 - pxor %xmm12,%xmm2 - movups 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm3 - movl 240-120(%rsi),%eax - pxor %xmm12,%xmm4 - movdqu (%r8),%xmm6 - pxor %xmm12,%xmm5 - movdqu (%r9),%xmm7 - pxor %xmm6,%xmm2 - movdqu (%r10),%xmm8 - pxor %xmm7,%xmm3 - movdqu (%r11),%xmm9 - pxor %xmm8,%xmm4 - pxor %xmm9,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp L$oop_enc4x - -.p2align 5 -L$oop_enc4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,220,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,220,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r10,%rbx,1) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,220,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,220,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,220,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,220,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,220,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,220,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,220,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,220,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 160-120(%rsi),%xmm0 - - jb L$enc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 192-120(%rsi),%xmm0 - - je L$enc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 224-120(%rsi),%xmm0 - jmp L$enc4x_tail - -.p2align 5 -L$enc4x_tail: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqu (%r8,%rbx,1),%xmm6 - movdqu 16-120(%rsi),%xmm1 - -.byte 102,15,56,221,208 - movdqu (%r9,%rbx,1),%xmm7 - pxor %xmm12,%xmm6 -.byte 102,15,56,221,216 - movdqu (%r10,%rbx,1),%xmm8 - pxor %xmm12,%xmm7 -.byte 102,15,56,221,224 - movdqu (%r11,%rbx,1),%xmm9 - pxor %xmm12,%xmm8 -.byte 102,15,56,221,232 - movdqu 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - pxor %xmm6,%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - pxor %xmm7,%xmm3 - movups %xmm4,-16(%r14,%rbx,1) - pxor %xmm8,%xmm4 - movups %xmm5,-16(%r15,%rbx,1) - pxor %xmm9,%xmm5 - - decl %edx - jnz L$oop_enc4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - - - - - - - - - - leaq 160(%rdi),%rdi - decl %edx - jnz L$enc4x_loop_grande - -L$enc4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$enc4x_epilogue: - .byte 0xf3,0xc3 - - -.globl _aesni_multi_cbc_decrypt - -.p2align 5 -_aesni_multi_cbc_decrypt: - cmpl $2,%edx - jb L$dec_non_avx - movl _OPENSSL_ia32cap_P+4(%rip),%ecx - testl $268435456,%ecx - jnz _avx_cbc_dec_shortcut - jmp L$dec_non_avx -.p2align 4 -L$dec_non_avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -L$dec4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -L$dec4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm6 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm7 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm8 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm9 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz L$dec4x_done - - movups 16-120(%rsi),%xmm1 - movups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - movdqu (%r8),%xmm2 - movdqu (%r9),%xmm3 - pxor %xmm12,%xmm2 - movdqu (%r10),%xmm4 - pxor %xmm12,%xmm3 - movdqu (%r11),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp L$oop_dec4x - -.p2align 5 -L$oop_dec4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,222,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,222,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r11,%rbx,1) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,222,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,222,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,222,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,222,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,222,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,222,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,222,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,222,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 160-120(%rsi),%xmm0 - - jb L$dec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 192-120(%rsi),%xmm0 - - je L$dec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 224-120(%rsi),%xmm0 - jmp L$dec4x_tail - -.p2align 5 -L$dec4x_tail: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,222,233 - movdqu 16-120(%rsi),%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm0,%xmm9 - movdqu 32-120(%rsi),%xmm0 - -.byte 102,15,56,223,214 -.byte 102,15,56,223,223 - movdqu -16(%r8,%rbx,1),%xmm6 - movdqu -16(%r9,%rbx,1),%xmm7 -.byte 102,65,15,56,223,224 -.byte 102,65,15,56,223,233 - movdqu -16(%r10,%rbx,1),%xmm8 - movdqu -16(%r11,%rbx,1),%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - movdqu (%r8,%rbx,1),%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - movdqu (%r9,%rbx,1),%xmm3 - pxor %xmm12,%xmm2 - movups %xmm4,-16(%r14,%rbx,1) - movdqu (%r10,%rbx,1),%xmm4 - pxor %xmm12,%xmm3 - movups %xmm5,-16(%r15,%rbx,1) - movdqu (%r11,%rbx,1),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - - decl %edx - jnz L$oop_dec4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - leaq 160(%rdi),%rdi - decl %edx - jnz L$dec4x_loop_grande - -L$dec4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$dec4x_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -aesni_multi_cbc_encrypt_avx: -_avx_cbc_enc_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - - - subq $192,%rsp - andq $-128,%rsp - movq %rax,16(%rsp) - -L$enc8x_body: - vzeroupper - vmovdqu (%rsi),%xmm15 - leaq 120(%rsi),%rsi - leaq 160(%rdi),%rdi - shrl $1,%edx - -L$enc8x_loop_grande: - - xorl %edx,%edx - movl -144(%rdi),%ecx - movq -160(%rdi),%r8 - cmpl %edx,%ecx - movq -152(%rdi),%rbx - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -136(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - subq %r8,%rbx - movq %rbx,64(%rsp) - movl -104(%rdi),%ecx - movq -120(%rdi),%r9 - cmpl %edx,%ecx - movq -112(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -96(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - subq %r9,%rbp - movq %rbp,72(%rsp) - movl -64(%rdi),%ecx - movq -80(%rdi),%r10 - cmpl %edx,%ecx - movq -72(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -56(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - subq %r10,%rbp - movq %rbp,80(%rsp) - movl -24(%rdi),%ecx - movq -40(%rdi),%r11 - cmpl %edx,%ecx - movq -32(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -16(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - subq %r11,%rbp - movq %rbp,88(%rsp) - movl 16(%rdi),%ecx - movq 0(%rdi),%r12 - cmpl %edx,%ecx - movq 8(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 24(%rdi),%xmm6 - movl %ecx,48(%rsp) - cmovleq %rsp,%r12 - subq %r12,%rbp - movq %rbp,96(%rsp) - movl 56(%rdi),%ecx - movq 40(%rdi),%r13 - cmpl %edx,%ecx - movq 48(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 64(%rdi),%xmm7 - movl %ecx,52(%rsp) - cmovleq %rsp,%r13 - subq %r13,%rbp - movq %rbp,104(%rsp) - movl 96(%rdi),%ecx - movq 80(%rdi),%r14 - cmpl %edx,%ecx - movq 88(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 104(%rdi),%xmm8 - movl %ecx,56(%rsp) - cmovleq %rsp,%r14 - subq %r14,%rbp - movq %rbp,112(%rsp) - movl 136(%rdi),%ecx - movq 120(%rdi),%r15 - cmpl %edx,%ecx - movq 128(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 144(%rdi),%xmm9 - movl %ecx,60(%rsp) - cmovleq %rsp,%r15 - subq %r15,%rbp - movq %rbp,120(%rsp) - testl %edx,%edx - jz L$enc8x_done - - vmovups 16-120(%rsi),%xmm1 - vmovups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - - vpxor (%r8),%xmm15,%xmm10 - leaq 128(%rsp),%rbp - vpxor (%r9),%xmm15,%xmm11 - vpxor (%r10),%xmm15,%xmm12 - vpxor (%r11),%xmm15,%xmm13 - vpxor %xmm10,%xmm2,%xmm2 - vpxor (%r12),%xmm15,%xmm10 - vpxor %xmm11,%xmm3,%xmm3 - vpxor (%r13),%xmm15,%xmm11 - vpxor %xmm12,%xmm4,%xmm4 - vpxor (%r14),%xmm15,%xmm12 - vpxor %xmm13,%xmm5,%xmm5 - vpxor (%r15),%xmm15,%xmm13 - vpxor %xmm10,%xmm6,%xmm6 - movl $1,%ecx - vpxor %xmm11,%xmm7,%xmm7 - vpxor %xmm12,%xmm8,%xmm8 - vpxor %xmm13,%xmm9,%xmm9 - jmp L$oop_enc8x - -.p2align 5 -L$oop_enc8x: - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+0(%rsp),%ecx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r8) - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r8,%rbx,1),%rbx - cmovgeq %rsp,%r8 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r8,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r8),%xmm15,%xmm10 - movq %rbx,64+0(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -72(%rsi),%xmm1 - leaq 16(%r8,%rbx,1),%r8 - vmovdqu %xmm10,0(%rbp) - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+4(%rsp),%ecx - movq 64+8(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r9) - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r9,%rbx,1),%rbx - cmovgeq %rsp,%r9 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r9,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r9),%xmm15,%xmm11 - movq %rbx,64+8(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups -56(%rsi),%xmm0 - leaq 16(%r9,%rbx,1),%r9 - vmovdqu %xmm11,16(%rbp) - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+8(%rsp),%ecx - movq 64+16(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r10) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r8) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r10,%rbx,1),%rbx - cmovgeq %rsp,%r10 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r10,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r10),%xmm15,%xmm12 - movq %rbx,64+16(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -40(%rsi),%xmm1 - leaq 16(%r10,%rbx,1),%r10 - vmovdqu %xmm12,32(%rbp) - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+12(%rsp),%ecx - movq 64+24(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r11) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r9) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r11,%rbx,1),%rbx - cmovgeq %rsp,%r11 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r11,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r11),%xmm15,%xmm13 - movq %rbx,64+24(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups -24(%rsi),%xmm0 - leaq 16(%r11,%rbx,1),%r11 - vmovdqu %xmm13,48(%rbp) - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+16(%rsp),%ecx - movq 64+32(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r12) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r10) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r12,%rbx,1),%rbx - cmovgeq %rsp,%r12 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r12,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r12),%xmm15,%xmm10 - movq %rbx,64+32(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups -8(%rsi),%xmm1 - leaq 16(%r12,%rbx,1),%r12 - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+20(%rsp),%ecx - movq 64+40(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r13) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r11) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%rbx,%r13,1),%rbx - cmovgeq %rsp,%r13 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r13,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r13),%xmm15,%xmm11 - movq %rbx,64+40(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 8(%rsi),%xmm0 - leaq 16(%r13,%rbx,1),%r13 - vaesenc %xmm1,%xmm2,%xmm2 - cmpl 32+24(%rsp),%ecx - movq 64+48(%rsp),%rbx - vaesenc %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r14) - vaesenc %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r12) - vaesenc %xmm1,%xmm5,%xmm5 - leaq (%r14,%rbx,1),%rbx - cmovgeq %rsp,%r14 - vaesenc %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm1,%xmm7,%xmm7 - subq %r14,%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vpxor 16(%r14),%xmm15,%xmm12 - movq %rbx,64+48(%rsp) - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 24(%rsi),%xmm1 - leaq 16(%r14,%rbx,1),%r14 - vaesenc %xmm0,%xmm2,%xmm2 - cmpl 32+28(%rsp),%ecx - movq 64+56(%rsp),%rbx - vaesenc %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r15) - vaesenc %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r13) - vaesenc %xmm0,%xmm5,%xmm5 - leaq (%r15,%rbx,1),%rbx - cmovgeq %rsp,%r15 - vaesenc %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesenc %xmm0,%xmm7,%xmm7 - subq %r15,%rbx - vaesenc %xmm0,%xmm8,%xmm8 - vpxor 16(%r15),%xmm15,%xmm13 - movq %rbx,64+56(%rsp) - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 40(%rsi),%xmm0 - leaq 16(%r15,%rbx,1),%r15 - vmovdqu 32(%rsp),%xmm14 - prefetcht0 15(%r14) - prefetcht0 15(%r15) - cmpl $11,%eax - jb L$enc8x_tail - - vaesenc %xmm1,%xmm2,%xmm2 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vaesenc %xmm1,%xmm7,%xmm7 - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 176-120(%rsi),%xmm1 - - vaesenc %xmm0,%xmm2,%xmm2 - vaesenc %xmm0,%xmm3,%xmm3 - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - vaesenc %xmm0,%xmm6,%xmm6 - vaesenc %xmm0,%xmm7,%xmm7 - vaesenc %xmm0,%xmm8,%xmm8 - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 192-120(%rsi),%xmm0 - je L$enc8x_tail - - vaesenc %xmm1,%xmm2,%xmm2 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vaesenc %xmm1,%xmm7,%xmm7 - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 208-120(%rsi),%xmm1 - - vaesenc %xmm0,%xmm2,%xmm2 - vaesenc %xmm0,%xmm3,%xmm3 - vaesenc %xmm0,%xmm4,%xmm4 - vaesenc %xmm0,%xmm5,%xmm5 - vaesenc %xmm0,%xmm6,%xmm6 - vaesenc %xmm0,%xmm7,%xmm7 - vaesenc %xmm0,%xmm8,%xmm8 - vaesenc %xmm0,%xmm9,%xmm9 - vmovups 224-120(%rsi),%xmm0 - -L$enc8x_tail: - vaesenc %xmm1,%xmm2,%xmm2 - vpxor %xmm15,%xmm15,%xmm15 - vaesenc %xmm1,%xmm3,%xmm3 - vaesenc %xmm1,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesenc %xmm1,%xmm5,%xmm5 - vaesenc %xmm1,%xmm6,%xmm6 - vpaddd %xmm14,%xmm15,%xmm15 - vmovdqu 48(%rsp),%xmm14 - vaesenc %xmm1,%xmm7,%xmm7 - movq 64(%rsp),%rbx - vaesenc %xmm1,%xmm8,%xmm8 - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 16-120(%rsi),%xmm1 - - vaesenclast %xmm0,%xmm2,%xmm2 - vmovdqa %xmm15,32(%rsp) - vpxor %xmm15,%xmm15,%xmm15 - vaesenclast %xmm0,%xmm3,%xmm3 - vaesenclast %xmm0,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesenclast %xmm0,%xmm5,%xmm5 - vaesenclast %xmm0,%xmm6,%xmm6 - vpaddd %xmm15,%xmm14,%xmm14 - vmovdqu -120(%rsi),%xmm15 - vaesenclast %xmm0,%xmm7,%xmm7 - vaesenclast %xmm0,%xmm8,%xmm8 - vmovdqa %xmm14,48(%rsp) - vaesenclast %xmm0,%xmm9,%xmm9 - vmovups 32-120(%rsi),%xmm0 - - vmovups %xmm2,-16(%r8) - subq %rbx,%r8 - vpxor 0(%rbp),%xmm2,%xmm2 - vmovups %xmm3,-16(%r9) - subq 72(%rsp),%r9 - vpxor 16(%rbp),%xmm3,%xmm3 - vmovups %xmm4,-16(%r10) - subq 80(%rsp),%r10 - vpxor 32(%rbp),%xmm4,%xmm4 - vmovups %xmm5,-16(%r11) - subq 88(%rsp),%r11 - vpxor 48(%rbp),%xmm5,%xmm5 - vmovups %xmm6,-16(%r12) - subq 96(%rsp),%r12 - vpxor %xmm10,%xmm6,%xmm6 - vmovups %xmm7,-16(%r13) - subq 104(%rsp),%r13 - vpxor %xmm11,%xmm7,%xmm7 - vmovups %xmm8,-16(%r14) - subq 112(%rsp),%r14 - vpxor %xmm12,%xmm8,%xmm8 - vmovups %xmm9,-16(%r15) - subq 120(%rsp),%r15 - vpxor %xmm13,%xmm9,%xmm9 - - decl %edx - jnz L$oop_enc8x - - movq 16(%rsp),%rax - - - - - -L$enc8x_done: - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$enc8x_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 5 -aesni_multi_cbc_decrypt_avx: -_avx_cbc_dec_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - - - - subq $256,%rsp - andq $-256,%rsp - subq $192,%rsp - movq %rax,16(%rsp) - -L$dec8x_body: - vzeroupper - vmovdqu (%rsi),%xmm15 - leaq 120(%rsi),%rsi - leaq 160(%rdi),%rdi - shrl $1,%edx - -L$dec8x_loop_grande: - - xorl %edx,%edx - movl -144(%rdi),%ecx - movq -160(%rdi),%r8 - cmpl %edx,%ecx - movq -152(%rdi),%rbx - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -136(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - subq %r8,%rbx - movq %rbx,64(%rsp) - vmovdqu %xmm2,192(%rsp) - movl -104(%rdi),%ecx - movq -120(%rdi),%r9 - cmpl %edx,%ecx - movq -112(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -96(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - subq %r9,%rbp - movq %rbp,72(%rsp) - vmovdqu %xmm3,208(%rsp) - movl -64(%rdi),%ecx - movq -80(%rdi),%r10 - cmpl %edx,%ecx - movq -72(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -56(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - subq %r10,%rbp - movq %rbp,80(%rsp) - vmovdqu %xmm4,224(%rsp) - movl -24(%rdi),%ecx - movq -40(%rdi),%r11 - cmpl %edx,%ecx - movq -32(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu -16(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - subq %r11,%rbp - movq %rbp,88(%rsp) - vmovdqu %xmm5,240(%rsp) - movl 16(%rdi),%ecx - movq 0(%rdi),%r12 - cmpl %edx,%ecx - movq 8(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 24(%rdi),%xmm6 - movl %ecx,48(%rsp) - cmovleq %rsp,%r12 - subq %r12,%rbp - movq %rbp,96(%rsp) - vmovdqu %xmm6,256(%rsp) - movl 56(%rdi),%ecx - movq 40(%rdi),%r13 - cmpl %edx,%ecx - movq 48(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 64(%rdi),%xmm7 - movl %ecx,52(%rsp) - cmovleq %rsp,%r13 - subq %r13,%rbp - movq %rbp,104(%rsp) - vmovdqu %xmm7,272(%rsp) - movl 96(%rdi),%ecx - movq 80(%rdi),%r14 - cmpl %edx,%ecx - movq 88(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 104(%rdi),%xmm8 - movl %ecx,56(%rsp) - cmovleq %rsp,%r14 - subq %r14,%rbp - movq %rbp,112(%rsp) - vmovdqu %xmm8,288(%rsp) - movl 136(%rdi),%ecx - movq 120(%rdi),%r15 - cmpl %edx,%ecx - movq 128(%rdi),%rbp - cmovgl %ecx,%edx - testl %ecx,%ecx - vmovdqu 144(%rdi),%xmm9 - movl %ecx,60(%rsp) - cmovleq %rsp,%r15 - subq %r15,%rbp - movq %rbp,120(%rsp) - vmovdqu %xmm9,304(%rsp) - testl %edx,%edx - jz L$dec8x_done - - vmovups 16-120(%rsi),%xmm1 - vmovups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - leaq 192+128(%rsp),%rbp - - vmovdqu (%r8),%xmm2 - vmovdqu (%r9),%xmm3 - vmovdqu (%r10),%xmm4 - vmovdqu (%r11),%xmm5 - vmovdqu (%r12),%xmm6 - vmovdqu (%r13),%xmm7 - vmovdqu (%r14),%xmm8 - vmovdqu (%r15),%xmm9 - vmovdqu %xmm2,0(%rbp) - vpxor %xmm15,%xmm2,%xmm2 - vmovdqu %xmm3,16(%rbp) - vpxor %xmm15,%xmm3,%xmm3 - vmovdqu %xmm4,32(%rbp) - vpxor %xmm15,%xmm4,%xmm4 - vmovdqu %xmm5,48(%rbp) - vpxor %xmm15,%xmm5,%xmm5 - vmovdqu %xmm6,64(%rbp) - vpxor %xmm15,%xmm6,%xmm6 - vmovdqu %xmm7,80(%rbp) - vpxor %xmm15,%xmm7,%xmm7 - vmovdqu %xmm8,96(%rbp) - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu %xmm9,112(%rbp) - vpxor %xmm15,%xmm9,%xmm9 - xorq $0x80,%rbp - movl $1,%ecx - jmp L$oop_dec8x - -.p2align 5 -L$oop_dec8x: - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+0(%rsp),%ecx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r8) - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r8,%rbx,1),%rbx - cmovgeq %rsp,%r8 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r8,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r8),%xmm10 - movq %rbx,64+0(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -72(%rsi),%xmm1 - leaq 16(%r8,%rbx,1),%r8 - vmovdqu %xmm10,128(%rsp) - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+4(%rsp),%ecx - movq 64+8(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r9) - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r9,%rbx,1),%rbx - cmovgeq %rsp,%r9 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r9,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r9),%xmm11 - movq %rbx,64+8(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups -56(%rsi),%xmm0 - leaq 16(%r9,%rbx,1),%r9 - vmovdqu %xmm11,144(%rsp) - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+8(%rsp),%ecx - movq 64+16(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r10) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r8) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r10,%rbx,1),%rbx - cmovgeq %rsp,%r10 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r10,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r10),%xmm12 - movq %rbx,64+16(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -40(%rsi),%xmm1 - leaq 16(%r10,%rbx,1),%r10 - vmovdqu %xmm12,160(%rsp) - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+12(%rsp),%ecx - movq 64+24(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r11) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r9) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r11,%rbx,1),%rbx - cmovgeq %rsp,%r11 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r11,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r11),%xmm13 - movq %rbx,64+24(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups -24(%rsi),%xmm0 - leaq 16(%r11,%rbx,1),%r11 - vmovdqu %xmm13,176(%rsp) - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+16(%rsp),%ecx - movq 64+32(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r12) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r10) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r12,%rbx,1),%rbx - cmovgeq %rsp,%r12 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r12,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r12),%xmm10 - movq %rbx,64+32(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups -8(%rsi),%xmm1 - leaq 16(%r12,%rbx,1),%r12 - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+20(%rsp),%ecx - movq 64+40(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r13) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r11) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%rbx,%r13,1),%rbx - cmovgeq %rsp,%r13 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r13,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r13),%xmm11 - movq %rbx,64+40(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 8(%rsi),%xmm0 - leaq 16(%r13,%rbx,1),%r13 - vaesdec %xmm1,%xmm2,%xmm2 - cmpl 32+24(%rsp),%ecx - movq 64+48(%rsp),%rbx - vaesdec %xmm1,%xmm3,%xmm3 - prefetcht0 31(%r14) - vaesdec %xmm1,%xmm4,%xmm4 - prefetcht0 15(%r12) - vaesdec %xmm1,%xmm5,%xmm5 - leaq (%r14,%rbx,1),%rbx - cmovgeq %rsp,%r14 - vaesdec %xmm1,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm1,%xmm7,%xmm7 - subq %r14,%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vmovdqu 16(%r14),%xmm12 - movq %rbx,64+48(%rsp) - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 24(%rsi),%xmm1 - leaq 16(%r14,%rbx,1),%r14 - vaesdec %xmm0,%xmm2,%xmm2 - cmpl 32+28(%rsp),%ecx - movq 64+56(%rsp),%rbx - vaesdec %xmm0,%xmm3,%xmm3 - prefetcht0 31(%r15) - vaesdec %xmm0,%xmm4,%xmm4 - prefetcht0 15(%r13) - vaesdec %xmm0,%xmm5,%xmm5 - leaq (%r15,%rbx,1),%rbx - cmovgeq %rsp,%r15 - vaesdec %xmm0,%xmm6,%xmm6 - cmovgq %rsp,%rbx - vaesdec %xmm0,%xmm7,%xmm7 - subq %r15,%rbx - vaesdec %xmm0,%xmm8,%xmm8 - vmovdqu 16(%r15),%xmm13 - movq %rbx,64+56(%rsp) - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 40(%rsi),%xmm0 - leaq 16(%r15,%rbx,1),%r15 - vmovdqu 32(%rsp),%xmm14 - prefetcht0 15(%r14) - prefetcht0 15(%r15) - cmpl $11,%eax - jb L$dec8x_tail - - vaesdec %xmm1,%xmm2,%xmm2 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vaesdec %xmm1,%xmm7,%xmm7 - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 176-120(%rsi),%xmm1 - - vaesdec %xmm0,%xmm2,%xmm2 - vaesdec %xmm0,%xmm3,%xmm3 - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - vaesdec %xmm0,%xmm6,%xmm6 - vaesdec %xmm0,%xmm7,%xmm7 - vaesdec %xmm0,%xmm8,%xmm8 - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 192-120(%rsi),%xmm0 - je L$dec8x_tail - - vaesdec %xmm1,%xmm2,%xmm2 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vaesdec %xmm1,%xmm7,%xmm7 - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 208-120(%rsi),%xmm1 - - vaesdec %xmm0,%xmm2,%xmm2 - vaesdec %xmm0,%xmm3,%xmm3 - vaesdec %xmm0,%xmm4,%xmm4 - vaesdec %xmm0,%xmm5,%xmm5 - vaesdec %xmm0,%xmm6,%xmm6 - vaesdec %xmm0,%xmm7,%xmm7 - vaesdec %xmm0,%xmm8,%xmm8 - vaesdec %xmm0,%xmm9,%xmm9 - vmovups 224-120(%rsi),%xmm0 - -L$dec8x_tail: - vaesdec %xmm1,%xmm2,%xmm2 - vpxor %xmm15,%xmm15,%xmm15 - vaesdec %xmm1,%xmm3,%xmm3 - vaesdec %xmm1,%xmm4,%xmm4 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesdec %xmm1,%xmm5,%xmm5 - vaesdec %xmm1,%xmm6,%xmm6 - vpaddd %xmm14,%xmm15,%xmm15 - vmovdqu 48(%rsp),%xmm14 - vaesdec %xmm1,%xmm7,%xmm7 - movq 64(%rsp),%rbx - vaesdec %xmm1,%xmm8,%xmm8 - vaesdec %xmm1,%xmm9,%xmm9 - vmovups 16-120(%rsi),%xmm1 - - vaesdeclast %xmm0,%xmm2,%xmm2 - vmovdqa %xmm15,32(%rsp) - vpxor %xmm15,%xmm15,%xmm15 - vaesdeclast %xmm0,%xmm3,%xmm3 - vpxor 0(%rbp),%xmm2,%xmm2 - vaesdeclast %xmm0,%xmm4,%xmm4 - vpxor 16(%rbp),%xmm3,%xmm3 - vpcmpgtd %xmm15,%xmm14,%xmm15 - vaesdeclast %xmm0,%xmm5,%xmm5 - vpxor 32(%rbp),%xmm4,%xmm4 - vaesdeclast %xmm0,%xmm6,%xmm6 - vpxor 48(%rbp),%xmm5,%xmm5 - vpaddd %xmm15,%xmm14,%xmm14 - vmovdqu -120(%rsi),%xmm15 - vaesdeclast %xmm0,%xmm7,%xmm7 - vpxor 64(%rbp),%xmm6,%xmm6 - vaesdeclast %xmm0,%xmm8,%xmm8 - vpxor 80(%rbp),%xmm7,%xmm7 - vmovdqa %xmm14,48(%rsp) - vaesdeclast %xmm0,%xmm9,%xmm9 - vpxor 96(%rbp),%xmm8,%xmm8 - vmovups 32-120(%rsi),%xmm0 - - vmovups %xmm2,-16(%r8) - subq %rbx,%r8 - vmovdqu 128+0(%rsp),%xmm2 - vpxor 112(%rbp),%xmm9,%xmm9 - vmovups %xmm3,-16(%r9) - subq 72(%rsp),%r9 - vmovdqu %xmm2,0(%rbp) - vpxor %xmm15,%xmm2,%xmm2 - vmovdqu 128+16(%rsp),%xmm3 - vmovups %xmm4,-16(%r10) - subq 80(%rsp),%r10 - vmovdqu %xmm3,16(%rbp) - vpxor %xmm15,%xmm3,%xmm3 - vmovdqu 128+32(%rsp),%xmm4 - vmovups %xmm5,-16(%r11) - subq 88(%rsp),%r11 - vmovdqu %xmm4,32(%rbp) - vpxor %xmm15,%xmm4,%xmm4 - vmovdqu 128+48(%rsp),%xmm5 - vmovups %xmm6,-16(%r12) - subq 96(%rsp),%r12 - vmovdqu %xmm5,48(%rbp) - vpxor %xmm15,%xmm5,%xmm5 - vmovdqu %xmm10,64(%rbp) - vpxor %xmm10,%xmm15,%xmm6 - vmovups %xmm7,-16(%r13) - subq 104(%rsp),%r13 - vmovdqu %xmm11,80(%rbp) - vpxor %xmm11,%xmm15,%xmm7 - vmovups %xmm8,-16(%r14) - subq 112(%rsp),%r14 - vmovdqu %xmm12,96(%rbp) - vpxor %xmm12,%xmm15,%xmm8 - vmovups %xmm9,-16(%r15) - subq 120(%rsp),%r15 - vmovdqu %xmm13,112(%rbp) - vpxor %xmm13,%xmm15,%xmm9 - - xorq $128,%rbp - decl %edx - jnz L$oop_dec8x - - movq 16(%rsp),%rax - - - - - -L$dec8x_done: - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$dec8x_epilogue: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha1-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha1-x86_64.s deleted file mode 100644 index cdce52cd0a2358..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha1-x86_64.s +++ /dev/null @@ -1,2984 +0,0 @@ -.text - - -.globl _aesni_cbc_sha1_enc - -.p2align 5 -_aesni_cbc_sha1_enc: - - movl _OPENSSL_ia32cap_P+0(%rip),%r10d - movq _OPENSSL_ia32cap_P+4(%rip),%r11 - btq $61,%r11 - jc aesni_cbc_sha1_enc_shaext - andl $268435456,%r11d - andl $1073741824,%r10d - orl %r11d,%r10d - cmpl $1342177280,%r10d - je aesni_cbc_sha1_enc_avx - jmp aesni_cbc_sha1_enc_ssse3 - .byte 0xf3,0xc3 - - -.p2align 5 -aesni_cbc_sha1_enc_ssse3: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - movdqu (%r8),%xmm2 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - addq $64,%r10 - paddd %xmm13,%xmm4 -.byte 102,15,56,0,251 - paddd %xmm13,%xmm5 - paddd %xmm13,%xmm6 - movdqa %xmm4,0(%rsp) - psubd %xmm13,%xmm4 - movdqa %xmm5,16(%rsp) - psubd %xmm13,%xmm5 - movdqa %xmm6,32(%rsp) - psubd %xmm13,%xmm6 - movups -112(%r15),%xmm15 - movups 16-112(%r15),%xmm0 - jmp L$oop_ssse3 -.p2align 5 -L$oop_ssse3: - rorl $2,%ebx - movups 0(%r12),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm4,%xmm8 - xorl %edx,%esi - movdqa %xmm7,%xmm12 - paddd %xmm7,%xmm13 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm5,%xmm8 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm4,%xmm8 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm6,%xmm12 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm12,%xmm8 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm13,48(%rsp) - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - movdqa %xmm8,%xmm3 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm8,%xmm12 - xorl %ebx,%esi - pslldq $12,%xmm3 - paddd %xmm8,%xmm8 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm12 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm13 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm3 - addl %edx,%ecx - rorl $7,%edx - por %xmm12,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm13 - pxor %xmm3,%xmm8 - xorl %ebp,%edx - movdqa 0(%r11),%xmm3 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm13,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm5,%xmm9 - xorl %ebp,%esi - movdqa %xmm8,%xmm13 - paddd %xmm8,%xmm3 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm6,%xmm9 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm5,%xmm9 - addl %ebx,%eax - rorl $7,%ebx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - pxor %xmm7,%xmm13 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm13,%xmm9 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm3,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm9,%xmm12 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm9,%xmm13 - xorl %ecx,%esi - pslldq $12,%xmm12 - paddd %xmm9,%xmm9 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm3 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm12 - addl %ebp,%edx - rorl $7,%ebp - por %xmm13,%xmm9 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm3 - pxor %xmm12,%xmm9 - xorl %eax,%ebp - movdqa 16(%r11),%xmm12 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm3,%xmm9 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm6,%xmm10 - xorl %eax,%esi - movdqa %xmm9,%xmm3 - paddd %xmm9,%xmm12 - movl %ecx,%edi - addl 32(%rsp),%ebx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm7,%xmm10 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm3 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm6,%xmm10 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm8,%xmm3 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm3,%xmm10 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm12,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm10,%xmm13 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm10,%xmm3 - xorl %edx,%esi - pslldq $12,%xmm13 - paddd %xmm10,%xmm10 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm3 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm13,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm13 - addl %eax,%ebp - rorl $7,%eax - por %xmm3,%xmm10 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm12 - pxor %xmm13,%xmm10 - xorl %ebx,%eax - movdqa 16(%r11),%xmm13 - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - pxor %xmm12,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm7,%xmm11 - xorl %ebx,%esi - movdqa %xmm10,%xmm12 - paddd %xmm10,%xmm13 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm8,%xmm11 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm12 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm7,%xmm11 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm9,%xmm12 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm11 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm13,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm11,%xmm3 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm11,%xmm12 - xorl %ebp,%esi - pslldq $12,%xmm3 - paddd %xmm11,%xmm11 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm12 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm3,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - cmpl $11,%r8d - jb L$aesenclast1 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast1 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast1: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - por %xmm12,%xmm11 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm13 - pxor %xmm3,%xmm11 - xorl %ecx,%ebx - movdqa 16(%r11),%xmm3 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm13,%xmm11 - pshufd $238,%xmm10,%xmm13 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm8,%xmm4 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm11,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm5,%xmm4 - addl %esi,%edx - movups 16(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%r12,%r13,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %eax,%edi - movdqa %xmm3,%xmm12 - xorl %ebx,%eax - paddd %xmm11,%xmm3 - addl %ebp,%edx - pxor %xmm13,%xmm4 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm4,%xmm13 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm3,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm4 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm13 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - por %xmm13,%xmm4 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm11,%xmm3 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm9,%xmm5 - addl 16(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm4,%xmm3 - movl %eax,%edi - roll $5,%eax - pxor %xmm6,%xmm5 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebx - paddd %xmm4,%xmm12 - addl %eax,%ebp - pxor %xmm3,%xmm5 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm5,%xmm3 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm12,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm5 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm3 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm3,%xmm5 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm4,%xmm12 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm10,%xmm6 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm5,%xmm12 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm7,%xmm6 - addl %esi,%eax - xorl %edx,%edi - movdqa 32(%r11),%xmm3 - rorl $7,%ecx - paddd %xmm5,%xmm13 - addl %ebx,%eax - pxor %xmm12,%xmm6 - addl 36(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm6,%xmm12 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm13,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm6 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm12 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm12,%xmm6 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm5,%xmm13 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm6,%xmm13 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm8,%xmm7 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm3,%xmm12 - rorl $7,%edx - paddd %xmm6,%xmm3 - addl %ecx,%ebx - pxor %xmm13,%xmm7 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm7,%xmm13 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm3,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm7 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm13 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm13,%xmm7 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm6,%xmm3 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm4,%xmm8 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm7,%xmm3 - movl %edx,%edi - roll $5,%edx - pxor %xmm9,%xmm8 - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebp - paddd %xmm7,%xmm12 - addl %edx,%ecx - pxor %xmm3,%xmm8 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm8,%xmm3 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm12,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm8 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm3,%xmm8 - addl %ebx,%eax - addl 12(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm7,%xmm12 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm5,%xmm9 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm8,%xmm12 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm10,%xmm9 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%eax - paddd %xmm8,%xmm13 - addl %ebp,%edx - pxor %xmm12,%xmm9 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm9,%xmm12 - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast2 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast2 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast2: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - movdqa %xmm13,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm9 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm12 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm12,%xmm9 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm8,%xmm13 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm6,%xmm10 - addl 32(%rsp),%ebp - movups 32(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm9,%xmm13 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm11,%xmm10 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm3,%xmm12 - xorl %ebx,%edi - paddd %xmm9,%xmm3 - xorl %ecx,%ebx - pxor %xmm13,%xmm10 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm10,%xmm13 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm3,16(%rsp) - roll $5,%ebp - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - pslld $2,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm13 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm13,%xmm10 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm9,%xmm3 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm7,%xmm11 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm10,%xmm3 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm4,%xmm11 - roll $5,%ebx - addl %esi,%eax - movdqa 48(%r11),%xmm13 - xorl %ecx,%edi - paddd %xmm10,%xmm12 - xorl %edx,%ecx - pxor %xmm3,%xmm11 - addl %ebx,%eax - addl 52(%rsp),%ebp - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm11,%xmm3 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm12,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm11 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm3 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm3,%xmm11 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm10,%xmm12 - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm8,%xmm4 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm11,%xmm12 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm5,%xmm4 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm13,%xmm3 - xorl %edx,%edi - paddd %xmm11,%xmm13 - xorl %ebp,%edx - pxor %xmm12,%xmm4 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm4,%xmm12 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm13,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm4 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm12 - addl 8(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - por %xmm12,%xmm4 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm11,%xmm13 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm9,%xmm5 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm4,%xmm13 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm6,%xmm5 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm12 - xorl %ebp,%edi - paddd %xmm4,%xmm3 - xorl %eax,%ebp - pxor %xmm13,%xmm5 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm5,%xmm13 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm3,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm5 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm13 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm13,%xmm5 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm4,%xmm3 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb L$aesenclast3 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast3 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast3: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm10,%xmm6 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm5,%xmm3 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm7,%xmm6 - roll $5,%ebp - addl %esi,%edx - movups 48(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm13 - xorl %eax,%edi - paddd %xmm5,%xmm12 - xorl %ebx,%eax - pxor %xmm3,%xmm6 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm6,%xmm3 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm12,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm6 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm3 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm3,%xmm6 - rorl $7,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm5,%xmm12 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm6,%xmm12 - movl %eax,%edi - roll $5,%eax - pxor %xmm8,%xmm7 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%ebx - paddd %xmm6,%xmm13 - addl %eax,%ebp - pxor %xmm12,%xmm7 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm7,%xmm12 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm13,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm7 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm12 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm12,%xmm7 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm7,%xmm3 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm3,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je L$done_ssse3 - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,235 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm13,%xmm4 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm4,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm13,%xmm4 - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,243 - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm13,%xmm5 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm5,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm13,%xmm5 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,251 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm13,%xmm6 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm6,32(%rsp) - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast4 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast4 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast4: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm13,%xmm6 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp L$oop_ssse3 - -L$done_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast5 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast5 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast5: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - movups %xmm2,(%r8) - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 - - -.p2align 5 -aesni_cbc_sha1_enc_avx: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - vzeroall - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - vmovdqu (%r8),%xmm12 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - vmovdqa 64(%r11),%xmm6 - vmovdqa 0(%r11),%xmm10 - vmovdqu 0(%r10),%xmm0 - vmovdqu 16(%r10),%xmm1 - vmovdqu 32(%r10),%xmm2 - vmovdqu 48(%r10),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r10 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm10,%xmm0,%xmm4 - vpaddd %xmm10,%xmm1,%xmm5 - vpaddd %xmm10,%xmm2,%xmm6 - vmovdqa %xmm4,0(%rsp) - vmovdqa %xmm5,16(%rsp) - vmovdqa %xmm6,32(%rsp) - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - jmp L$oop_avx -.p2align 5 -L$oop_avx: - shrdl $2,%ebx,%ebx - vmovdqu 0(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%edi - addl 0(%rsp),%ebp - vpaddd %xmm3,%xmm10,%xmm9 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%ebp - vpxor %xmm2,%xmm8,%xmm8 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - vpxor %xmm8,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vmovdqa %xmm9,48(%rsp) - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - andl %eax,%esi - vpsrld $31,%xmm4,%xmm8 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm9 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpor %xmm8,%xmm4,%xmm4 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm4,%xmm4 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - vpxor %xmm9,%xmm4,%xmm4 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %edi,%ebx - andl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%edi - addl 16(%rsp),%eax - vpaddd %xmm4,%xmm10,%xmm9 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm8 - addl %esi,%eax - andl %ecx,%edi - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm8,%xmm8 - shrdl $7,%ebx,%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - vpxor %xmm8,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vmovdqa %xmm9,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm9 - vpaddd %xmm5,%xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpor %xmm8,%xmm5,%xmm5 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - andl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm5,%xmm5 - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - vpxor %xmm9,%xmm5,%xmm5 - xorl %eax,%ebp - shldl $5,%edx,%edx - vmovdqa 16(%r11),%xmm10 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%edi - addl 32(%rsp),%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - vpaddd %xmm5,%xmm10,%xmm9 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm8 - addl %esi,%ebx - andl %edx,%edi - vpxor %xmm2,%xmm6,%xmm6 - xorl %ebp,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm8,%xmm8 - shrdl $7,%ecx,%ecx - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - vpxor %xmm8,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vmovdqa %xmm9,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm8 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm9 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpor %xmm8,%xmm6,%xmm6 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - vpxor %xmm9,%xmm6,%xmm6 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - andl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%edi - addl 48(%rsp),%ecx - vpaddd %xmm6,%xmm10,%xmm9 - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%ebp - addl %edx,%ecx - vpxor %xmm5,%xmm8,%xmm8 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - vpxor %xmm8,%xmm7,%xmm7 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vmovdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpslldq $12,%xmm7,%xmm9 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpor %xmm8,%xmm7,%xmm7 - vpsrld $30,%xmm9,%xmm8 - addl %esi,%eax - andl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm9,%xmm9 - vpxor %xmm8,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - cmpl $11,%r8d - jb L$vaesenclast6 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je L$vaesenclast6 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -L$vaesenclast6: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - vpxor %xmm9,%xmm7,%xmm7 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %edi,%ebp - andl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - vpxor %xmm1,%xmm0,%xmm0 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpaddd %xmm7,%xmm10,%xmm9 - addl %esi,%edx - vmovdqu 16(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,0(%r12,%r13,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - andl %eax,%edi - vpxor %xmm8,%xmm0,%xmm0 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - movl %edx,%esi - addl 4(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - vpor %xmm8,%xmm0,%xmm0 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm0,%xmm10,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm1,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm1,%xmm1 - addl 28(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - addl %esi,%eax - xorl %edx,%edi - vpaddd %xmm1,%xmm10,%xmm9 - vmovdqa 32(%r11),%xmm10 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm8,%xmm2,%xmm2 - addl 36(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpslld $2,%xmm2,%xmm2 - addl 40(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpor %xmm8,%xmm2,%xmm2 - addl 44(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - vpaddd %xmm2,%xmm10,%xmm9 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpalignr $8,%xmm2,%xmm3,%xmm8 - vpxor %xmm0,%xmm4,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - vpaddd %xmm3,%xmm10,%xmm9 - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpxor %xmm8,%xmm4,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm8 - vmovdqa %xmm9,48(%rsp) - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm8,%xmm4,%xmm4 - addl 12(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm3,%xmm4,%xmm8 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpxor %xmm6,%xmm5,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - vpaddd %xmm4,%xmm10,%xmm9 - shrdl $7,%eax,%eax - addl %ebp,%edx - vpxor %xmm8,%xmm5,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%ecx - cmpl $11,%r8d - jb L$vaesenclast7 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je L$vaesenclast7 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -L$vaesenclast7: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm8,%xmm5,%xmm5 - addl 28(%rsp),%eax - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm8 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%rsp),%ebp - vmovdqu 32(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,16(%r13,%r12,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - movl %eax,%edi - xorl %ecx,%esi - vpaddd %xmm5,%xmm10,%xmm9 - shldl $5,%eax,%eax - addl %esi,%ebp - vpxor %xmm8,%xmm6,%xmm6 - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 36(%rsp),%edx - vpsrld $30,%xmm6,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - addl 40(%rsp),%ecx - andl %eax,%esi - vpor %xmm8,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%edi - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - movl %ecx,%esi - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm8 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - movl %ebx,%edi - xorl %edx,%esi - vpaddd %xmm6,%xmm10,%xmm9 - vmovdqa 48(%r11),%xmm10 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm8,%xmm7,%xmm7 - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%rsp),%ebp - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - vpsrld $30,%xmm7,%xmm8 - vmovdqa %xmm9,32(%rsp) - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - addl 56(%rsp),%edx - andl %ebx,%esi - vpor %xmm8,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%edi - xorl %ebx,%esi - shldl $5,%ebp,%ebp - addl %esi,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - vpxor %xmm1,%xmm0,%xmm0 - movl %ecx,%edi - xorl %ebp,%esi - vpaddd %xmm7,%xmm10,%xmm9 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm8,%xmm0,%xmm0 - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 4(%rsp),%eax - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - andl %ecx,%esi - vpor %xmm8,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%edi - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - vpxor %xmm2,%xmm1,%xmm1 - movl %edx,%edi - xorl %eax,%esi - vpaddd %xmm0,%xmm10,%xmm9 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 20(%rsp),%ebx - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - addl 24(%rsp),%eax - andl %edx,%esi - vpor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%edi - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb L$vaesenclast8 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je L$vaesenclast8 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -L$vaesenclast8: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - movl %ebp,%edi - xorl %ebx,%esi - vpaddd %xmm1,%xmm10,%xmm9 - shldl $5,%ebp,%ebp - addl %esi,%edx - vmovdqu 48(%r12),%xmm13 - vpxor %xmm15,%xmm13,%xmm13 - vmovups %xmm12,32(%r13,%r12,1) - vpxor %xmm13,%xmm12,%xmm12 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -80(%r15),%xmm15 - vpxor %xmm8,%xmm2,%xmm2 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 36(%rsp),%ecx - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - addl 40(%rsp),%ebx - andl %ebp,%esi - vpor %xmm8,%xmm2,%xmm2 - xorl %eax,%ebp - shrdl $7,%edx,%edx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -64(%r15),%xmm14 - movl %ecx,%edi - xorl %ebp,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -48(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm2,%xmm10,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups -32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - vpaddd %xmm3,%xmm10,%xmm9 - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm9,48(%rsp) - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups -16(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 0(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je L$done_avx - vmovdqa 64(%r11),%xmm9 - vmovdqa 0(%r11),%xmm10 - vmovdqu 0(%r10),%xmm0 - vmovdqu 16(%r10),%xmm1 - vmovdqu 32(%r10),%xmm2 - vmovdqu 48(%r10),%xmm3 - vpshufb %xmm9,%xmm0,%xmm0 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - vpshufb %xmm9,%xmm1,%xmm1 - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpaddd %xmm10,%xmm0,%xmm8 - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm8,0(%rsp) - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - vpshufb %xmm9,%xmm2,%xmm2 - movl %edx,%edi - shldl $5,%edx,%edx - vpaddd %xmm10,%xmm1,%xmm8 - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vmovdqa %xmm8,16(%rsp) - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - vpshufb %xmm9,%xmm3,%xmm3 - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpaddd %xmm10,%xmm2,%xmm8 - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vmovdqa %xmm8,32(%rsp) - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$vaesenclast9 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je L$vaesenclast9 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -L$vaesenclast9: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vmovups %xmm12,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp L$oop_avx - -L$done_avx: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 16(%r15),%xmm15 - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 32(%r15),%xmm14 - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 48(%r15),%xmm15 - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$vaesenclast10 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 64(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 80(%r15),%xmm15 - je L$vaesenclast10 - vaesenc %xmm15,%xmm12,%xmm12 - vmovups 96(%r15),%xmm14 - vaesenc %xmm14,%xmm12,%xmm12 - vmovups 112(%r15),%xmm15 -L$vaesenclast10: - vaesenclast %xmm15,%xmm12,%xmm12 - vmovups -112(%r15),%xmm15 - vmovups 16-112(%r15),%xmm14 - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vmovups %xmm12,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - vmovups %xmm12,(%r8) - vzeroall - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - -.p2align 6 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 - -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 - -.p2align 5 -aesni_cbc_sha1_enc_shaext: - movq 8(%rsp),%r10 - movdqu (%r9),%xmm8 - movd 16(%r9),%xmm9 - movdqa K_XX_XX+80(%rip),%xmm7 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm2 - movups 16(%rcx),%xmm0 - leaq 112(%rcx),%rcx - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqu (%r10),%xmm3 - movdqa %xmm9,%xmm12 -.byte 102,15,56,0,223 - movdqu 16(%r10),%xmm4 - movdqa %xmm8,%xmm11 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,0,231 - - paddd %xmm3,%xmm9 - movdqu 32(%r10),%xmm5 - leaq 64(%r10),%r10 - pxor %xmm12,%xmm3 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm3 - movdqa %xmm8,%xmm10 -.byte 102,15,56,0,239 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 15,56,201,220 - movdqu -16(%r10),%xmm6 - movdqa %xmm8,%xmm9 -.byte 102,15,56,0,247 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,205 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,203 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - cmpl $11,%r11d - jb L$aesenclast11 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast11 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast11: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,214 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,203 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,212 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - cmpl $11,%r11d - jb L$aesenclast12 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast12 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast12: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,203 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,212 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,205 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - cmpl $11,%r11d - jb L$aesenclast13 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast13 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast13: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,203 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,212 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 -.byte 15,56,202,245 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm12,%xmm5 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 - cmpl $11,%r11d - jb L$aesenclast14 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast14 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast14: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - decq %rdx - - paddd %xmm11,%xmm8 - movups %xmm2,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz L$oop_shaext - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - movups %xmm2,(%r8) - movdqu %xmm8,(%r9) - movd %xmm9,16(%r9) - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha256-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha256-x86_64.s deleted file mode 100644 index 40e75bfedb6d3a..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/aesni-sha256-x86_64.s +++ /dev/null @@ -1,4354 +0,0 @@ -.text - - -.globl _aesni_cbc_sha256_enc - -.p2align 4 -_aesni_cbc_sha256_enc: - leaq _OPENSSL_ia32cap_P(%rip),%r11 - movl $1,%eax - cmpq $0,%rdi - je L$probe - movl 0(%r11),%eax - movq 4(%r11),%r10 - btq $61,%r10 - jc aesni_cbc_sha256_enc_shaext - movq %r10,%r11 - shrq $32,%r11 - - testl $2048,%r10d - jnz aesni_cbc_sha256_enc_xop - andl $296,%r11d - cmpl $296,%r11d - je aesni_cbc_sha256_enc_avx2 - andl $268435456,%r10d - jnz aesni_cbc_sha256_enc_avx - ud2 - xorl %eax,%eax - cmpq $0,%rdi - je L$probe - ud2 -L$probe: - .byte 0xf3,0xc3 - - -.p2align 6 - -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0,0,0,0, 0,0,0,0, -1,-1,-1,-1 -.long 0,0,0,0, 0,0,0,0 -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 - -.p2align 6 -aesni_cbc_sha256_enc_xop: -L$xop_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $128,%rsp - andq $-64,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -L$prologue_xop: - vzeroall - - movq %rdi,%r12 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r13 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - subq $9,%r14 - - movl 0(%r15),%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - - vmovdqa 0(%r13,%r14,8),%xmm14 - vmovdqa 16(%r13,%r14,8),%xmm13 - vmovdqa 32(%r13,%r14,8),%xmm12 - vmovdqu 0-128(%rdi),%xmm10 - jmp L$loop_xop -.p2align 4 -L$loop_xop: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi,%r12,1),%xmm0 - vmovdqu 16(%rsi,%r12,1),%xmm1 - vmovdqu 32(%rsi,%r12,1),%xmm2 - vmovdqu 48(%rsi,%r12,1),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%esi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%esi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp L$xop_00_47 - -.p2align 4 -L$xop_00_47: - subq $-32*4,%rbp - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - vpalignr $4,%xmm0,%xmm1,%xmm4 - rorl $14,%r13d - movl %r14d,%eax - vpalignr $4,%xmm2,%xmm3,%xmm7 - movl %r9d,%r12d - xorl %r8d,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %r10d,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %eax,%r14d - vpaddd %xmm7,%xmm0,%xmm0 - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %r10d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi -.byte 143,232,120,194,251,13 - xorl %eax,%r14d - addl %r13d,%r11d - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%esi - addl %r11d,%edx - vpsrld $10,%xmm3,%xmm6 - rorl $2,%r14d - addl %esi,%r11d - vpaddd %xmm4,%xmm0,%xmm0 - movl %edx,%r13d - addl %r11d,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%r11d - vpxor %xmm6,%xmm7,%xmm7 - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 4(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d -.byte 143,232,120,194,248,13 - xorl %r11d,%r14d - addl %r13d,%r10d - vpsrld $10,%xmm0,%xmm6 - xorl %eax,%r15d - addl %r10d,%ecx -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%r10d - vpxor %xmm6,%xmm7,%xmm7 - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - vpxor %xmm5,%xmm7,%xmm7 - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - vpaddd %xmm7,%xmm0,%xmm0 - addl 8(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - vpaddd 0(%rbp),%xmm0,%xmm6 - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - rorl $14,%r13d - movl %r14d,%r8d - vpalignr $4,%xmm3,%xmm0,%xmm7 - movl %ebx,%r12d - xorl %eax,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %ecx,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %r8d,%r14d - vpaddd %xmm7,%xmm1,%xmm1 - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %ecx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi -.byte 143,232,120,194,248,13 - xorl %r8d,%r14d - addl %r13d,%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %r9d,%esi - addl %edx,%r11d - vpsrld $10,%xmm0,%xmm6 - rorl $2,%r14d - addl %esi,%edx - vpaddd %xmm4,%xmm1,%xmm1 - movl %r11d,%r13d - addl %edx,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%edx - vpxor %xmm6,%xmm7,%xmm7 - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 20(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d -.byte 143,232,120,194,249,13 - xorl %edx,%r14d - addl %r13d,%ecx - vpsrld $10,%xmm1,%xmm6 - xorl %r8d,%r15d - addl %ecx,%r10d -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%ecx - vpxor %xmm6,%xmm7,%xmm7 - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - vpxor %xmm5,%xmm7,%xmm7 - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - vpaddd %xmm7,%xmm1,%xmm1 - addl 24(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - vpaddd 32(%rbp),%xmm1,%xmm6 - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - rorl $14,%r13d - movl %r14d,%eax - vpalignr $4,%xmm0,%xmm1,%xmm7 - movl %r9d,%r12d - xorl %r8d,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %r10d,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %eax,%r14d - vpaddd %xmm7,%xmm2,%xmm2 - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %r10d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi -.byte 143,232,120,194,249,13 - xorl %eax,%r14d - addl %r13d,%r11d - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%esi - addl %r11d,%edx - vpsrld $10,%xmm1,%xmm6 - rorl $2,%r14d - addl %esi,%r11d - vpaddd %xmm4,%xmm2,%xmm2 - movl %edx,%r13d - addl %r11d,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%r11d - vpxor %xmm6,%xmm7,%xmm7 - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 36(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d -.byte 143,232,120,194,250,13 - xorl %r11d,%r14d - addl %r13d,%r10d - vpsrld $10,%xmm2,%xmm6 - xorl %eax,%r15d - addl %r10d,%ecx -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%r10d - vpxor %xmm6,%xmm7,%xmm7 - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - vpxor %xmm5,%xmm7,%xmm7 - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - vpaddd %xmm7,%xmm2,%xmm2 - addl 40(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - vpaddd 64(%rbp),%xmm2,%xmm6 - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - rorl $14,%r13d - movl %r14d,%r8d - vpalignr $4,%xmm1,%xmm2,%xmm7 - movl %ebx,%r12d - xorl %eax,%r13d -.byte 143,232,120,194,236,14 - rorl $9,%r14d - xorl %ecx,%r12d - vpsrld $3,%xmm4,%xmm4 - rorl $5,%r13d - xorl %r8d,%r14d - vpaddd %xmm7,%xmm3,%xmm3 - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d -.byte 143,232,120,194,245,11 - rorl $11,%r14d - xorl %ecx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi -.byte 143,232,120,194,250,13 - xorl %r8d,%r14d - addl %r13d,%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %r9d,%esi - addl %edx,%r11d - vpsrld $10,%xmm2,%xmm6 - rorl $2,%r14d - addl %esi,%edx - vpaddd %xmm4,%xmm3,%xmm3 - movl %r11d,%r13d - addl %edx,%r14d -.byte 143,232,120,194,239,2 - rorl $14,%r13d - movl %r14d,%edx - vpxor %xmm6,%xmm7,%xmm7 - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - vpxor %xmm5,%xmm7,%xmm7 - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrldq $8,%xmm7,%xmm7 - addl 52(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d -.byte 143,232,120,194,251,13 - xorl %edx,%r14d - addl %r13d,%ecx - vpsrld $10,%xmm3,%xmm6 - xorl %r8d,%r15d - addl %ecx,%r10d -.byte 143,232,120,194,239,2 - rorl $2,%r14d - addl %r15d,%ecx - vpxor %xmm6,%xmm7,%xmm7 - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - vpxor %xmm5,%xmm7,%xmm7 - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - vpslldq $8,%xmm7,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - vpaddd %xmm7,%xmm3,%xmm3 - addl 56(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - vpaddd 96(%rbp),%xmm3,%xmm6 - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - movq 64+0(%rsp),%r12 - vpand %xmm14,%xmm11,%xmm11 - movq 64+8(%rsp),%r15 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r12,1) - leaq 16(%r12),%r12 - cmpb $0,131(%rbp) - jne L$xop_00_47 - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - rorl $11,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - rorl $2,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - rorl $2,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - rorl $11,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - rorl $2,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - rorl $2,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - rorl $11,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - rorl $6,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - rorl $2,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%esi - rorl $11,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - rorl $6,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - rorl $2,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - rorl $11,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - rorl $6,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - rorl $2,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - rorl $11,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - rorl $6,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - rorl $2,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - rorl $11,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - rorl $6,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - rorl $2,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%esi - rorl $11,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - rorl $6,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - rorl $2,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - rorl $11,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - rorl $6,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - rorl $2,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - rorl $11,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - rorl $6,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - rorl $2,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%r12 - movq 64+8(%rsp),%r13 - movq 64+40(%rsp),%r15 - movq 64+48(%rsp),%rsi - - vpand %xmm14,%xmm11,%xmm11 - movl %r14d,%eax - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r12),%r12 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r12 - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - jb L$loop_xop - - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_xop: - .byte 0xf3,0xc3 - - -.p2align 6 -aesni_cbc_sha256_enc_avx: -L$avx_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $128,%rsp - andq $-64,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -L$prologue_avx: - vzeroall - - movq %rdi,%r12 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r13 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - subq $9,%r14 - - movl 0(%r15),%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - - vmovdqa 0(%r13,%r14,8),%xmm14 - vmovdqa 16(%r13,%r14,8),%xmm13 - vmovdqa 32(%r13,%r14,8),%xmm12 - vmovdqu 0-128(%rdi),%xmm10 - jmp L$loop_avx -.p2align 4 -L$loop_avx: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi,%r12,1),%xmm0 - vmovdqu 16(%rsi,%r12,1),%xmm1 - vmovdqu 32(%rsi,%r12,1),%xmm2 - vmovdqu 48(%rsi,%r12,1),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%esi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%esi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp L$avx_00_47 - -.p2align 4 -L$avx_00_47: - subq $-32*4,%rbp - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - vpalignr $4,%xmm0,%xmm1,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm2,%xmm3,%xmm7 - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - vpshufd $250,%xmm3,%xmm7 - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 4(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm0,%xmm0 - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - vpaddd %xmm6,%xmm0,%xmm0 - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - vpshufd $80,%xmm0,%xmm7 - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - vpsrlq $17,%xmm7,%xmm7 - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - vpaddd %xmm6,%xmm0,%xmm0 - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - vpaddd 0(%rbp),%xmm0,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm3,%xmm0,%xmm7 - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - vpshufd $250,%xmm0,%xmm7 - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 20(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm1,%xmm1 - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - vpaddd %xmm6,%xmm1,%xmm1 - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - vpshufd $80,%xmm1,%xmm7 - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - vpsrlq $17,%xmm7,%xmm7 - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - vpaddd %xmm6,%xmm1,%xmm1 - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - vpaddd 32(%rbp),%xmm1,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm0,%xmm1,%xmm7 - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - vpshufd $250,%xmm1,%xmm7 - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 36(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm2,%xmm2 - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - vpaddd %xmm6,%xmm2,%xmm2 - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - vpshufd $80,%xmm2,%xmm7 - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - vpsrlq $17,%xmm7,%xmm7 - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpslldq $8,%xmm6,%xmm6 - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - vpaddd %xmm6,%xmm2,%xmm2 - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - vpaddd 64(%rbp),%xmm2,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm1,%xmm2,%xmm7 - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - vpshufd $250,%xmm2,%xmm7 - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - vpslld $11,%xmm5,%xmm5 - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 52(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - vpxor %xmm5,%xmm4,%xmm4 - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm3,%xmm3 - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - vpshufd $132,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpsrldq $8,%xmm6,%xmm6 - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - vpaddd %xmm6,%xmm3,%xmm3 - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - vpshufd $80,%xmm3,%xmm7 - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - vpsrld $10,%xmm7,%xmm6 - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - vpsrlq $17,%xmm7,%xmm7 - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpsrlq $2,%xmm7,%xmm7 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - vpshufd $232,%xmm6,%xmm6 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpslldq $8,%xmm6,%xmm6 - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - vpaddd %xmm6,%xmm3,%xmm3 - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - vpaddd 96(%rbp),%xmm3,%xmm6 - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - movq 64+0(%rsp),%r12 - vpand %xmm14,%xmm11,%xmm11 - movq 64+8(%rsp),%r15 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r12,1) - leaq 16(%r12),%r12 - cmpb $0,131(%rbp) - jne L$avx_00_47 - vmovdqu (%r12),%xmm9 - movq %r12,64+0(%rsp) - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vpxor %xmm8,%xmm9,%xmm9 - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%esi - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%esi - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - xorl %r8d,%r13d - shrdl $9,%r14d,%r14d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - shrdl $11,%r14d,%r14d - xorl %r10d,%r12d - xorl %ebx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r11d - andl %r15d,%esi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%esi - addl %r11d,%edx - shrdl $2,%r14d,%r14d - addl %esi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - xorl %edx,%r13d - shrdl $9,%r14d,%r14d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%esi - shrdl $11,%r14d,%r14d - xorl %r9d,%r12d - xorl %eax,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r10d - andl %esi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - addl %r10d,%ecx - shrdl $2,%r14d,%r14d - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - xorl %ecx,%r13d - shrdl $9,%r14d,%r14d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - shrdl $11,%r14d,%r14d - xorl %r8d,%r12d - xorl %r11d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%r9d - andl %r15d,%esi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%esi - addl %r9d,%ebx - shrdl $2,%r14d,%r14d - addl %esi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - xorl %ebx,%r13d - shrdl $9,%r14d,%r14d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%esi - shrdl $11,%r14d,%r14d - xorl %edx,%r12d - xorl %r10d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%r8d - andl %esi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - addl %r8d,%eax - shrdl $2,%r14d,%r14d - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - xorl %eax,%r13d - shrdl $9,%r14d,%r14d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - shrdl $11,%r14d,%r14d - xorl %ecx,%r12d - xorl %r9d,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%edx - andl %r15d,%esi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%esi - addl %edx,%r11d - shrdl $2,%r14d,%r14d - addl %esi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - xorl %r11d,%r13d - shrdl $9,%r14d,%r14d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%esi - shrdl $11,%r14d,%r14d - xorl %ebx,%r12d - xorl %r8d,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%ecx - andl %esi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - addl %ecx,%r10d - shrdl $2,%r14d,%r14d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - xorl %r10d,%r13d - shrdl $9,%r14d,%r14d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - shrdl $11,%r14d,%r14d - xorl %eax,%r12d - xorl %edx,%r15d - shrdl $6,%r13d,%r13d - addl %r12d,%ebx - andl %r15d,%esi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%esi - addl %ebx,%r9d - shrdl $2,%r14d,%r14d - addl %esi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - xorl %r9d,%r13d - shrdl $9,%r14d,%r14d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%esi - shrdl $11,%r14d,%r14d - xorl %r11d,%r12d - xorl %ecx,%esi - shrdl $6,%r13d,%r13d - addl %r12d,%eax - andl %esi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - addl %eax,%r8d - shrdl $2,%r14d,%r14d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%r12 - movq 64+8(%rsp),%r13 - movq 64+40(%rsp),%r15 - movq 64+48(%rsp),%rsi - - vpand %xmm14,%xmm11,%xmm11 - movl %r14d,%eax - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r12),%r12 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r12 - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - jb L$loop_avx - - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 6 -aesni_cbc_sha256_enc_avx2: -L$avx2_shortcut: - movq 8(%rsp),%r10 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $576,%rsp - andq $-1024,%rsp - addq $448,%rsp - - shlq $6,%rdx - subq %rdi,%rsi - subq %rdi,%r10 - addq %rdi,%rdx - - - - movq %rdx,64+16(%rsp) - - movq %r8,64+32(%rsp) - movq %r9,64+40(%rsp) - movq %r10,64+48(%rsp) - movq %r11,64+56(%rsp) -L$prologue_avx2: - vzeroall - - movq %rdi,%r13 - vpinsrq $1,%rsi,%xmm15,%xmm15 - leaq 128(%rcx),%rdi - leaq K256+544(%rip),%r12 - movl 240-128(%rdi),%r14d - movq %r9,%r15 - movq %r10,%rsi - vmovdqu (%r8),%xmm8 - leaq -9(%r14),%r14 - - vmovdqa 0(%r12,%r14,8),%xmm14 - vmovdqa 16(%r12,%r14,8),%xmm13 - vmovdqa 32(%r12,%r14,8),%xmm12 - - subq $-64,%r13 - movl 0(%r15),%eax - leaq (%rsi,%r13,1),%r12 - movl 4(%r15),%ebx - cmpq %rdx,%r13 - movl 8(%r15),%ecx - cmoveq %rsp,%r12 - movl 12(%r15),%edx - movl 16(%r15),%r8d - movl 20(%r15),%r9d - movl 24(%r15),%r10d - movl 28(%r15),%r11d - vmovdqu 0-128(%rdi),%xmm10 - jmp L$oop_avx2 -.p2align 4 -L$oop_avx2: - vmovdqa K256+512(%rip),%ymm7 - vmovdqu -64+0(%rsi,%r13,1),%xmm0 - vmovdqu -64+16(%rsi,%r13,1),%xmm1 - vmovdqu -64+32(%rsi,%r13,1),%xmm2 - vmovdqu -64+48(%rsi,%r13,1),%xmm3 - - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm7,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm7,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - - leaq K256(%rip),%rbp - vpshufb %ymm7,%ymm2,%ymm2 - leaq -64(%r13),%r13 - vpaddd 0(%rbp),%ymm0,%ymm4 - vpshufb %ymm7,%ymm3,%ymm3 - vpaddd 32(%rbp),%ymm1,%ymm5 - vpaddd 64(%rbp),%ymm2,%ymm6 - vpaddd 96(%rbp),%ymm3,%ymm7 - vmovdqa %ymm4,0(%rsp) - xorl %r14d,%r14d - vmovdqa %ymm5,32(%rsp) - leaq -64(%rsp),%rsp - movl %ebx,%esi - vmovdqa %ymm6,0(%rsp) - xorl %ecx,%esi - vmovdqa %ymm7,32(%rsp) - movl %r9d,%r12d - subq $-32*4,%rbp - jmp L$avx2_00_47 - -.p2align 4 -L$avx2_00_47: - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - leaq -64(%rsp),%rsp - vpalignr $4,%ymm0,%ymm1,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm2,%ymm3,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm0,%ymm0 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - vpshufd $250,%ymm3,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm0,%ymm0 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpshufd $80,%ymm0,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpsrlq $2,%ymm7,%ymm7 - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - vpaddd %ymm6,%ymm0,%ymm0 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - vpaddd 0(%rbp),%ymm0,%ymm6 - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm1,%ymm2,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm3,%ymm0,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm1,%ymm1 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - vpshufd $250,%ymm0,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm1,%ymm1 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpshufd $80,%ymm1,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpsrlq $2,%ymm7,%ymm7 - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - vpaddd %ymm6,%ymm1,%ymm1 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - vpaddd 32(%rbp),%ymm1,%ymm6 - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq -64(%rsp),%rsp - vpalignr $4,%ymm2,%ymm3,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm0,%ymm1,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm2,%ymm2 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - vpshufd $250,%ymm1,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm2,%ymm2 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpshufd $80,%ymm2,%ymm7 - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpsrlq $2,%ymm7,%ymm7 - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - vpaddd %ymm6,%ymm2,%ymm2 - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - vpaddd 64(%rbp),%ymm2,%ymm6 - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm3,%ymm0,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm1,%ymm2,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm3,%ymm3 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - vpshufd $250,%ymm2,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm3,%ymm3 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufd $132,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpsrldq $8,%ymm6,%ymm6 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpshufd $80,%ymm3,%ymm7 - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - vpsrld $10,%ymm7,%ymm6 - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - vpsrlq $17,%ymm7,%ymm7 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpxor %ymm7,%ymm6,%ymm6 - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpsrlq $2,%ymm7,%ymm7 - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - vpxor %ymm7,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - vpshufd $232,%ymm6,%ymm6 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - vpslldq $8,%ymm6,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - vpaddd %ymm6,%ymm3,%ymm3 - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - vpaddd 96(%rbp),%ymm3,%ymm6 - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - vmovq %xmm15,%r13 - vpextrq $1,%xmm15,%r15 - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r15,%r13,1) - leaq 16(%r13),%r13 - leaq 128(%rbp),%rbp - cmpb $0,3(%rbp) - jne L$avx2_00_47 - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - addl 0+64(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+64(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+64(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+64(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+64(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+64(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+64(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+64(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - addl 0(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vpextrq $1,%xmm15,%r12 - vmovq %xmm15,%r13 - movq 552(%rsp),%r15 - addl %r14d,%eax - leaq 448(%rsp),%rbp - - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - vmovdqu %xmm8,(%r12,%r13,1) - leaq 16(%r13),%r13 - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - addl 28(%r15),%r11d - - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - cmpq 80(%rbp),%r13 - je L$done_avx2 - - xorl %r14d,%r14d - movl %ebx,%esi - movl %r9d,%r12d - xorl %ecx,%esi - jmp L$ower_avx2 -.p2align 4 -L$ower_avx2: - vmovdqu (%r13),%xmm9 - vpinsrq $0,%r13,%xmm15,%xmm15 - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vpxor %xmm10,%xmm9,%xmm9 - vmovdqu 16-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vpxor %xmm8,%xmm9,%xmm9 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 32-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 48-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 80-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 96-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 112-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - leaq -64(%rbp),%rbp - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 128-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ebx,%esi - xorl %r13d,%r14d - leal (%r11,%rsi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%esi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %esi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%esi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%esi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %esi,%r15d - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 144-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%esi - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r11d,%esi - xorl %r13d,%r14d - leal (%r9,%rsi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%esi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %esi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%esi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%esi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 176-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%esi - vpand %xmm12,%xmm11,%xmm8 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 192-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r9d,%esi - xorl %r13d,%r14d - leal (%rdx,%rsi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%esi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %esi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%esi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%esi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %esi,%r15d - vaesenclast %xmm10,%xmm9,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 208-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%esi - vpand %xmm13,%xmm11,%xmm11 - vaesenc %xmm10,%xmm9,%xmm9 - vmovdqu 224-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %edx,%esi - xorl %r13d,%r14d - leal (%rbx,%rsi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%esi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %esi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%esi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%esi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %esi,%r15d - vpor %xmm11,%xmm8,%xmm8 - vaesenclast %xmm10,%xmm9,%xmm11 - vmovdqu 0-128(%rdi),%xmm10 - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovq %xmm15,%r13 - vpextrq $1,%xmm15,%r15 - vpand %xmm14,%xmm11,%xmm11 - vpor %xmm11,%xmm8,%xmm8 - leaq -64(%rbp),%rbp - vmovdqu %xmm8,(%r15,%r13,1) - leaq 16(%r13),%r13 - cmpq %rsp,%rbp - jae L$ower_avx2 - - movq 552(%rsp),%r15 - leaq 64(%r13),%r13 - movq 560(%rsp),%rsi - addl %r14d,%eax - leaq 448(%rsp),%rsp - - addl 0(%r15),%eax - addl 4(%r15),%ebx - addl 8(%r15),%ecx - addl 12(%r15),%edx - addl 16(%r15),%r8d - addl 20(%r15),%r9d - addl 24(%r15),%r10d - leaq (%rsi,%r13,1),%r12 - addl 28(%r15),%r11d - - cmpq 64+16(%rsp),%r13 - - movl %eax,0(%r15) - cmoveq %rsp,%r12 - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - movl %r8d,16(%r15) - movl %r9d,20(%r15) - movl %r10d,24(%r15) - movl %r11d,28(%r15) - - jbe L$oop_avx2 - leaq (%rsp),%rbp - -L$done_avx2: - leaq (%rbp),%rsp - movq 64+32(%rsp),%r8 - movq 64+56(%rsp),%rsi - vmovdqu %xmm8,(%r8) - vzeroall - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 - - -.p2align 5 -aesni_cbc_sha256_enc_shaext: - movq 8(%rsp),%r10 - leaq K256+128(%rip),%rax - movdqu (%r9),%xmm1 - movdqu 16(%r9),%xmm2 - movdqa 512-128(%rax),%xmm3 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm6 - movups 16(%rcx),%xmm4 - leaq 112(%rcx),%rcx - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - movdqu (%r10),%xmm10 - movdqu 16(%r10),%xmm11 - movdqu 32(%r10),%xmm12 -.byte 102,68,15,56,0,211 - movdqu 48(%r10),%xmm13 - - movdqa 0-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 102,68,15,56,0,219 - movdqa %xmm2,%xmm9 - movdqa %xmm1,%xmm8 - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 32-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 102,68,15,56,0,227 - leaq 64(%r10),%r10 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 64-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 102,68,15,56,0,235 -.byte 69,15,56,204,211 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 96-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 -.byte 15,56,203,202 - movdqa 128-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - cmpl $11,%r11d - jb L$aesenclast1 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je L$aesenclast1 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -L$aesenclast1: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,202 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,0(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movdqa 160-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 192-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 -.byte 69,15,56,204,211 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 224-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 256-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - cmpl $11,%r11d - jb L$aesenclast2 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je L$aesenclast2 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -L$aesenclast2: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,202 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,16(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movdqa 288-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 320-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 -.byte 69,15,56,204,211 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm13,%xmm3 -.byte 102,65,15,58,15,220,4 - paddd %xmm3,%xmm10 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 352-128(%rax),%xmm0 - paddd %xmm13,%xmm0 -.byte 69,15,56,205,213 -.byte 69,15,56,204,220 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,221,4 - paddd %xmm3,%xmm11 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 384-128(%rax),%xmm0 - paddd %xmm10,%xmm0 -.byte 69,15,56,205,218 -.byte 69,15,56,204,229 - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 - paddd %xmm3,%xmm12 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - movdqa 416-128(%rax),%xmm0 - paddd %xmm11,%xmm0 -.byte 69,15,56,205,227 -.byte 69,15,56,204,234 - cmpl $11,%r11d - jb L$aesenclast3 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je L$aesenclast3 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -L$aesenclast3: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm12,%xmm3 -.byte 102,65,15,58,15,219,4 - paddd %xmm3,%xmm13 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm6,32(%rsi,%rdi,1) - xorps %xmm14,%xmm6 - movups -80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movups -64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 448-128(%rax),%xmm0 - paddd %xmm12,%xmm0 -.byte 69,15,56,205,236 - movdqa %xmm7,%xmm3 - movups -48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups -32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,202 - - movdqa 480-128(%rax),%xmm0 - paddd %xmm13,%xmm0 - movups -16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - movups 0(%rcx),%xmm4 - aesenc %xmm5,%xmm6 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movups 16(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -.byte 15,56,203,202 - - movups 32(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 48(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - cmpl $11,%r11d - jb L$aesenclast4 - movups 64(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 80(%rcx),%xmm5 - aesenc %xmm4,%xmm6 - je L$aesenclast4 - movups 96(%rcx),%xmm4 - aesenc %xmm5,%xmm6 - movups 112(%rcx),%xmm5 - aesenc %xmm4,%xmm6 -L$aesenclast4: - aesenclast %xmm5,%xmm6 - movups 16-112(%rcx),%xmm4 - nop - - paddd %xmm9,%xmm2 - paddd %xmm8,%xmm1 - - decq %rdx - movups %xmm6,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz L$oop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm3 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,211,8 - - movups %xmm6,(%r8) - movdqu %xmm1,(%r9) - movdqu %xmm2,16(%r9) - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/aesni-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/aesni-x86_64.s deleted file mode 100644 index dde837980cf730..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/aesni-x86_64.s +++ /dev/null @@ -1,3551 +0,0 @@ -.text - -.globl _aesni_encrypt - -.p2align 4 -_aesni_encrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -L$oop_enc1_1: -.byte 102,15,56,220,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz L$oop_enc1_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 - - -.globl _aesni_decrypt - -.p2align 4 -_aesni_decrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -L$oop_dec1_2: -.byte 102,15,56,222,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz L$oop_dec1_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$enc_loop2: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop2 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$dec_loop2: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop2 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$enc_loop3: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop3 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$dec_loop3: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop3 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -L$enc_loop4: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop4 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -L$dec_loop4: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop4 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$enc_loop6_enter -.p2align 4 -L$enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -L$enc_loop6_enter: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop6 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$dec_loop6_enter -.p2align 4 -L$dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -L$dec_loop6_enter: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop6 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$enc_loop8_inner -.p2align 4 -L$enc_loop8: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -L$enc_loop8_inner: -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -L$enc_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop8 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 -.byte 102,68,15,56,221,192 -.byte 102,68,15,56,221,200 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$dec_loop8_inner -.p2align 4 -L$dec_loop8: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -L$dec_loop8_inner: -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -L$dec_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop8 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 -.byte 102,68,15,56,223,192 -.byte 102,68,15,56,223,200 - .byte 0xf3,0xc3 - -.globl _aesni_ecb_encrypt - -.p2align 4 -_aesni_ecb_encrypt: - andq $-16,%rdx - jz L$ecb_ret - - movl 240(%rcx),%eax - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %eax,%r10d - testl %r8d,%r8d - jz L$ecb_decrypt - - cmpq $0x80,%rdx - jb L$ecb_enc_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp L$ecb_enc_loop8_enter -.p2align 4 -L$ecb_enc_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -L$ecb_enc_loop8_enter: - - call _aesni_encrypt8 - - subq $0x80,%rdx - jnc L$ecb_enc_loop8 - - movups %xmm2,(%rsi) - movq %r11,%rcx - movups %xmm3,16(%rsi) - movl %r10d,%eax - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz L$ecb_ret - -L$ecb_enc_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb L$ecb_enc_one - movups 16(%rdi),%xmm3 - je L$ecb_enc_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb L$ecb_enc_three - movups 48(%rdi),%xmm5 - je L$ecb_enc_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb L$ecb_enc_five - movups 80(%rdi),%xmm7 - je L$ecb_enc_six - movdqu 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_encrypt8 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_3: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_3 -.byte 102,15,56,221,209 - movups %xmm2,(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_five: - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_six: - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - jmp L$ecb_ret - -.p2align 4 -L$ecb_decrypt: - cmpq $0x80,%rdx - jb L$ecb_dec_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp L$ecb_dec_loop8_enter -.p2align 4 -L$ecb_dec_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -L$ecb_dec_loop8_enter: - - call _aesni_decrypt8 - - movups (%r11),%xmm0 - subq $0x80,%rdx - jnc L$ecb_dec_loop8 - - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movq %r11,%rcx - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movl %r10d,%eax - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - movups %xmm9,112(%rsi) - pxor %xmm9,%xmm9 - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz L$ecb_ret - -L$ecb_dec_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb L$ecb_dec_one - movups 16(%rdi),%xmm3 - je L$ecb_dec_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb L$ecb_dec_three - movups 48(%rdi),%xmm5 - je L$ecb_dec_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb L$ecb_dec_five - movups 80(%rdi),%xmm7 - je L$ecb_dec_six - movups 96(%rdi),%xmm8 - movups (%rcx),%xmm0 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_4: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_4 -.byte 102,15,56,223,209 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_five: - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_six: - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - -L$ecb_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - .byte 0xf3,0xc3 - -.globl _aesni_ccm64_encrypt_blocks - -.p2align 4 -_aesni_ccm64_encrypt_blocks: - movl 240(%rcx),%eax - movdqu (%r8),%xmm6 - movdqa L$increment64(%rip),%xmm9 - movdqa L$bswap_mask(%rip),%xmm7 - - shll $4,%eax - movl $16,%r10d - leaq 0(%rcx),%r11 - movdqu (%r9),%xmm3 - movdqa %xmm6,%xmm2 - leaq 32(%rcx,%rax,1),%rcx -.byte 102,15,56,0,247 - subq %rax,%r10 - jmp L$ccm64_enc_outer -.p2align 4 -L$ccm64_enc_outer: - movups (%r11),%xmm0 - movq %r10,%rax - movups (%rdi),%xmm8 - - xorps %xmm0,%xmm2 - movups 16(%r11),%xmm1 - xorps %xmm8,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%r11),%xmm0 - -L$ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq %xmm9,%xmm6 - decq %rdx -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - - leaq 16(%rdi),%rdi - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) -.byte 102,15,56,0,215 - leaq 16(%rsi),%rsi - jnz L$ccm64_enc_outer - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 - -.globl _aesni_ccm64_decrypt_blocks - -.p2align 4 -_aesni_ccm64_decrypt_blocks: - movl 240(%rcx),%eax - movups (%r8),%xmm6 - movdqu (%r9),%xmm3 - movdqa L$increment64(%rip),%xmm9 - movdqa L$bswap_mask(%rip),%xmm7 - - movaps %xmm6,%xmm2 - movl %eax,%r10d - movq %rcx,%r11 -.byte 102,15,56,0,247 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_5: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_5 -.byte 102,15,56,221,209 - shll $4,%r10d - movl $16,%eax - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 - leaq 16(%rdi),%rdi - subq %r10,%rax - leaq 32(%r11,%r10,1),%rcx - movq %rax,%r10 - jmp L$ccm64_dec_outer -.p2align 4 -L$ccm64_dec_outer: - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) - leaq 16(%rsi),%rsi -.byte 102,15,56,0,215 - - subq $1,%rdx - jz L$ccm64_dec_break - - movups (%r11),%xmm0 - movq %r10,%rax - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - xorps %xmm0,%xmm2 - xorps %xmm8,%xmm3 - movups 32(%r11),%xmm0 - jmp L$ccm64_dec2_loop -.p2align 4 -L$ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$ccm64_dec2_loop - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leaq 16(%rdi),%rdi - jmp L$ccm64_dec_outer - -.p2align 4 -L$ccm64_dec_break: - - movl 240(%r11),%eax - movups (%r11),%xmm0 - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - leaq 32(%r11),%r11 - xorps %xmm8,%xmm3 -L$oop_enc1_6: -.byte 102,15,56,220,217 - decl %eax - movups (%r11),%xmm1 - leaq 16(%r11),%r11 - jnz L$oop_enc1_6 -.byte 102,15,56,221,217 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 - -.globl _aesni_ctr32_encrypt_blocks - -.p2align 4 -_aesni_ctr32_encrypt_blocks: - cmpq $1,%rdx - jne L$ctr32_bulk - - - - movups (%r8),%xmm2 - movups (%rdi),%xmm3 - movl 240(%rcx),%edx - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_7: -.byte 102,15,56,220,209 - decl %edx - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_7 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - xorps %xmm2,%xmm2 - jmp L$ctr32_epilogue - -.p2align 4 -L$ctr32_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $128,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - - - - - movdqu (%r8),%xmm2 - movdqu (%rcx),%xmm0 - movl 12(%r8),%r8d - pxor %xmm0,%xmm2 - movl 12(%rcx),%r11d - movdqa %xmm2,0(%rsp) - bswapl %r8d - movdqa %xmm2,%xmm3 - movdqa %xmm2,%xmm4 - movdqa %xmm2,%xmm5 - movdqa %xmm2,64(%rsp) - movdqa %xmm2,80(%rsp) - movdqa %xmm2,96(%rsp) - movq %rdx,%r10 - movdqa %xmm2,112(%rsp) - - leaq 1(%r8),%rax - leaq 2(%r8),%rdx - bswapl %eax - bswapl %edx - xorl %r11d,%eax - xorl %r11d,%edx -.byte 102,15,58,34,216,3 - leaq 3(%r8),%rax - movdqa %xmm3,16(%rsp) -.byte 102,15,58,34,226,3 - bswapl %eax - movq %r10,%rdx - leaq 4(%r8),%r10 - movdqa %xmm4,32(%rsp) - xorl %r11d,%eax - bswapl %r10d -.byte 102,15,58,34,232,3 - xorl %r11d,%r10d - movdqa %xmm5,48(%rsp) - leaq 5(%r8),%r9 - movl %r10d,64+12(%rsp) - bswapl %r9d - leaq 6(%r8),%r10 - movl 240(%rcx),%eax - xorl %r11d,%r9d - bswapl %r10d - movl %r9d,80+12(%rsp) - xorl %r11d,%r10d - leaq 7(%r8),%r9 - movl %r10d,96+12(%rsp) - bswapl %r9d - movl _OPENSSL_ia32cap_P+4(%rip),%r10d - xorl %r11d,%r9d - andl $71303168,%r10d - movl %r9d,112+12(%rsp) - - movups 16(%rcx),%xmm1 - - movdqa 64(%rsp),%xmm6 - movdqa 80(%rsp),%xmm7 - - cmpq $8,%rdx - jb L$ctr32_tail - - subq $6,%rdx - cmpl $4194304,%r10d - je L$ctr32_6x - - leaq 128(%rcx),%rcx - subq $2,%rdx - jmp L$ctr32_loop8 - -.p2align 4 -L$ctr32_6x: - shll $4,%eax - movl $48,%r10d - bswapl %r11d - leaq 32(%rcx,%rax,1),%rcx - subq %rax,%r10 - jmp L$ctr32_loop6 - -.p2align 4 -L$ctr32_loop6: - addl $6,%r8d - movups -48(%rcx,%r10,1),%xmm0 -.byte 102,15,56,220,209 - movl %r8d,%eax - xorl %r11d,%eax -.byte 102,15,56,220,217 -.byte 0x0f,0x38,0xf1,0x44,0x24,12 - leal 1(%r8),%eax -.byte 102,15,56,220,225 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,28 -.byte 102,15,56,220,233 - leal 2(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,241 -.byte 0x0f,0x38,0xf1,0x44,0x24,44 - leal 3(%r8),%eax -.byte 102,15,56,220,249 - movups -32(%rcx,%r10,1),%xmm1 - xorl %r11d,%eax - -.byte 102,15,56,220,208 -.byte 0x0f,0x38,0xf1,0x44,0x24,60 - leal 4(%r8),%eax -.byte 102,15,56,220,216 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,76 -.byte 102,15,56,220,224 - leal 5(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,232 -.byte 0x0f,0x38,0xf1,0x44,0x24,92 - movq %r10,%rax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%r10,1),%xmm0 - - call L$enc_loop6 - - movdqu (%rdi),%xmm8 - movdqu 16(%rdi),%xmm9 - movdqu 32(%rdi),%xmm10 - movdqu 48(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 80(%rdi),%xmm13 - leaq 96(%rdi),%rdi - movups -64(%rcx,%r10,1),%xmm1 - pxor %xmm2,%xmm8 - movaps 0(%rsp),%xmm2 - pxor %xmm3,%xmm9 - movaps 16(%rsp),%xmm3 - pxor %xmm4,%xmm10 - movaps 32(%rsp),%xmm4 - pxor %xmm5,%xmm11 - movaps 48(%rsp),%xmm5 - pxor %xmm6,%xmm12 - movaps 64(%rsp),%xmm6 - pxor %xmm7,%xmm13 - movaps 80(%rsp),%xmm7 - movdqu %xmm8,(%rsi) - movdqu %xmm9,16(%rsi) - movdqu %xmm10,32(%rsi) - movdqu %xmm11,48(%rsi) - movdqu %xmm12,64(%rsi) - movdqu %xmm13,80(%rsi) - leaq 96(%rsi),%rsi - - subq $6,%rdx - jnc L$ctr32_loop6 - - addq $6,%rdx - jz L$ctr32_done - - leal -48(%r10),%eax - leaq -80(%rcx,%r10,1),%rcx - negl %eax - shrl $4,%eax - jmp L$ctr32_tail - -.p2align 5 -L$ctr32_loop8: - addl $8,%r8d - movdqa 96(%rsp),%xmm8 -.byte 102,15,56,220,209 - movl %r8d,%r9d - movdqa 112(%rsp),%xmm9 -.byte 102,15,56,220,217 - bswapl %r9d - movups 32-128(%rcx),%xmm0 -.byte 102,15,56,220,225 - xorl %r11d,%r9d - nop -.byte 102,15,56,220,233 - movl %r9d,0+12(%rsp) - leaq 1(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 48-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,16+12(%rsp) - leaq 2(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 64-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,32+12(%rsp) - leaq 3(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 80-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,48+12(%rsp) - leaq 4(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 96-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,64+12(%rsp) - leaq 5(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 112-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,80+12(%rsp) - leaq 6(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 128-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,96+12(%rsp) - leaq 7(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 144-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - xorl %r11d,%r9d - movdqu 0(%rdi),%xmm10 -.byte 102,15,56,220,232 - movl %r9d,112+12(%rsp) - cmpl $11,%eax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 160-128(%rcx),%xmm0 - - jb L$ctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 176-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 192-128(%rcx),%xmm0 - je L$ctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 208-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 224-128(%rcx),%xmm0 - jmp L$ctr32_enc_done - -.p2align 4 -L$ctr32_enc_done: - movdqu 16(%rdi),%xmm11 - pxor %xmm0,%xmm10 - movdqu 32(%rdi),%xmm12 - pxor %xmm0,%xmm11 - movdqu 48(%rdi),%xmm13 - pxor %xmm0,%xmm12 - movdqu 64(%rdi),%xmm14 - pxor %xmm0,%xmm13 - movdqu 80(%rdi),%xmm15 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movdqu 96(%rdi),%xmm1 - leaq 128(%rdi),%rdi - -.byte 102,65,15,56,221,210 - pxor %xmm0,%xmm1 - movdqu 112-128(%rdi),%xmm10 -.byte 102,65,15,56,221,219 - pxor %xmm0,%xmm10 - movdqa 0(%rsp),%xmm11 -.byte 102,65,15,56,221,228 -.byte 102,65,15,56,221,237 - movdqa 16(%rsp),%xmm12 - movdqa 32(%rsp),%xmm13 -.byte 102,65,15,56,221,246 -.byte 102,65,15,56,221,255 - movdqa 48(%rsp),%xmm14 - movdqa 64(%rsp),%xmm15 -.byte 102,68,15,56,221,193 - movdqa 80(%rsp),%xmm0 - movups 16-128(%rcx),%xmm1 -.byte 102,69,15,56,221,202 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm0,%xmm7 - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - - subq $8,%rdx - jnc L$ctr32_loop8 - - addq $8,%rdx - jz L$ctr32_done - leaq -128(%rcx),%rcx - -L$ctr32_tail: - - - leaq 16(%rcx),%rcx - cmpq $4,%rdx - jb L$ctr32_loop3 - je L$ctr32_loop4 - - - shll $4,%eax - movdqa 96(%rsp),%xmm8 - pxor %xmm9,%xmm9 - - movups 16(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - leaq 32-16(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,225 - addq $16,%rax - movups (%rdi),%xmm10 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - movups 16(%rdi),%xmm11 - movups 32(%rdi),%xmm12 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 - - call L$enc_loop8_enter - - movdqu 48(%rdi),%xmm13 - pxor %xmm10,%xmm2 - movdqu 64(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm10,%xmm6 - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - cmpq $6,%rdx - jb L$ctr32_done - - movups 80(%rdi),%xmm11 - xorps %xmm11,%xmm7 - movups %xmm7,80(%rsi) - je L$ctr32_done - - movups 96(%rdi),%xmm12 - xorps %xmm12,%xmm8 - movups %xmm8,96(%rsi) - jmp L$ctr32_done - -.p2align 5 -L$ctr32_loop4: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx),%xmm1 - jnz L$ctr32_loop4 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 - movups (%rdi),%xmm10 - movups 16(%rdi),%xmm11 -.byte 102,15,56,221,225 -.byte 102,15,56,221,233 - movups 32(%rdi),%xmm12 - movups 48(%rdi),%xmm13 - - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm4,32(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm5,48(%rsi) - jmp L$ctr32_done - -.p2align 5 -L$ctr32_loop3: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx),%xmm1 - jnz L$ctr32_loop3 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 -.byte 102,15,56,221,225 - - movups (%rdi),%xmm10 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - cmpq $2,%rdx - jb L$ctr32_done - - movups 16(%rdi),%xmm11 - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - je L$ctr32_done - - movups 32(%rdi),%xmm12 - xorps %xmm12,%xmm4 - movups %xmm4,32(%rsi) - -L$ctr32_done: - xorps %xmm0,%xmm0 - xorl %r11d,%r11d - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - movaps %xmm0,112(%rsp) - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$ctr32_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_xts_encrypt - -.p2align 4 -_aesni_xts_encrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -L$oop_enc1_8: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz L$oop_enc1_8 -.byte 102,15,56,221,209 - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa L$xts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc L$xts_enc_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq L$xts_magic(%rip),%r8 - jmp L$xts_enc_grandloop - -.p2align 5 -L$xts_enc_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,220,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,220,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,220,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,220,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,220,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,220,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,220,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,220,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp L$xts_enc_loop6 -.p2align 5 -L$xts_enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz L$xts_enc_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,220,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,220,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,220,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,220,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,220,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,221,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,221,92,36,16 -.byte 102,15,56,221,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,221,108,36,48 -.byte 102,15,56,221,116,36,64 -.byte 102,15,56,221,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc L$xts_enc_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -L$xts_enc_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - addq $96,%rdx - jz L$xts_enc_done - - pxor %xmm0,%xmm11 - cmpq $0x20,%rdx - jb L$xts_enc_one - pxor %xmm0,%xmm12 - je L$xts_enc_two - - pxor %xmm0,%xmm13 - cmpq $0x40,%rdx - jb L$xts_enc_three - pxor %xmm0,%xmm14 - je L$xts_enc_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - pxor %xmm7,%xmm7 - - call _aesni_encrypt6 - - xorps %xmm10,%xmm2 - movdqa %xmm15,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_9: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_9 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - leaq 16(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_encrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_encrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_encrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_done: - andq $15,%r9 - jz L$xts_enc_ret - movq %r9,%rdx - -L$xts_enc_steal: - movzbl (%rdi),%eax - movzbl -16(%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,-16(%rsi) - movb %cl,0(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz L$xts_enc_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups -16(%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_10: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_10 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movups %xmm2,-16(%rsi) - -L$xts_enc_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$xts_enc_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_xts_decrypt - -.p2align 4 -_aesni_xts_decrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -L$oop_enc1_11: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz L$oop_enc1_11 -.byte 102,15,56,221,209 - xorl %eax,%eax - testq $15,%rdx - setnz %al - shlq $4,%rax - subq %rax,%rdx - - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa L$xts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc L$xts_dec_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq L$xts_magic(%rip),%r8 - jmp L$xts_dec_grandloop - -.p2align 5 -L$xts_dec_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,222,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,222,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,222,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,222,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,222,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,222,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,222,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,222,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp L$xts_dec_loop6 -.p2align 5 -L$xts_dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz L$xts_dec_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,222,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,222,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,222,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,222,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,222,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,223,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,223,92,36,16 -.byte 102,15,56,223,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,223,108,36,48 -.byte 102,15,56,223,116,36,64 -.byte 102,15,56,223,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc L$xts_dec_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -L$xts_dec_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 - addq $96,%rdx - jz L$xts_dec_done - - pxor %xmm0,%xmm12 - cmpq $0x20,%rdx - jb L$xts_dec_one - pxor %xmm0,%xmm13 - je L$xts_dec_two - - pxor %xmm0,%xmm14 - cmpq $0x40,%rdx - jb L$xts_dec_three - je L$xts_dec_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - - call _aesni_decrypt6 - - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm14 - movdqu %xmm5,48(%rsi) - pcmpgtd %xmm15,%xmm14 - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - pshufd $0x13,%xmm14,%xmm11 - andq $15,%r9 - jz L$xts_dec_ret - - movdqa %xmm15,%xmm10 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm11 - pxor %xmm15,%xmm11 - jmp L$xts_dec_done2 - -.p2align 4 -L$xts_dec_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_12: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_12 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - movdqa %xmm12,%xmm11 - leaq 16(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_decrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm13,%xmm11 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_decrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm14,%xmm11 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_decrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqa %xmm15,%xmm11 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_done: - andq $15,%r9 - jz L$xts_dec_ret -L$xts_dec_done2: - movq %r9,%rdx - movq %r11,%rcx - movl %r10d,%eax - - movups (%rdi),%xmm2 - xorps %xmm11,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_13: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_13 -.byte 102,15,56,223,209 - xorps %xmm11,%xmm2 - movups %xmm2,(%rsi) - -L$xts_dec_steal: - movzbl 16(%rdi),%eax - movzbl (%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,(%rsi) - movb %cl,16(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz L$xts_dec_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups (%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_14: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_14 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - -L$xts_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$xts_dec_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_cbc_encrypt - -.p2align 4 -_aesni_cbc_encrypt: - testq %rdx,%rdx - jz L$cbc_ret - - movl 240(%rcx),%r10d - movq %rcx,%r11 - testl %r9d,%r9d - jz L$cbc_decrypt - - movups (%r8),%xmm2 - movl %r10d,%eax - cmpq $16,%rdx - jb L$cbc_enc_tail - subq $16,%rdx - jmp L$cbc_enc_loop -.p2align 4 -L$cbc_enc_loop: - movups (%rdi),%xmm3 - leaq 16(%rdi),%rdi - - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm3 - leaq 32(%rcx),%rcx - xorps %xmm3,%xmm2 -L$oop_enc1_15: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_15 -.byte 102,15,56,221,209 - movl %r10d,%eax - movq %r11,%rcx - movups %xmm2,0(%rsi) - leaq 16(%rsi),%rsi - subq $16,%rdx - jnc L$cbc_enc_loop - addq $16,%rdx - jnz L$cbc_enc_tail - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%r8) - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - jmp L$cbc_ret - -L$cbc_enc_tail: - movq %rdx,%rcx - xchgq %rdi,%rsi -.long 0x9066A4F3 - movl $16,%ecx - subq %rdx,%rcx - xorl %eax,%eax -.long 0x9066AAF3 - leaq -16(%rdi),%rdi - movl %r10d,%eax - movq %rdi,%rsi - movq %r11,%rcx - xorq %rdx,%rdx - jmp L$cbc_enc_loop - -.p2align 4 -L$cbc_decrypt: - cmpq $16,%rdx - jne L$cbc_decrypt_bulk - - - - movdqu (%rdi),%xmm2 - movdqu (%r8),%xmm3 - movdqa %xmm2,%xmm4 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_16: -.byte 102,15,56,222,209 - decl %r10d - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_16 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqu %xmm4,(%r8) - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$cbc_ret -.p2align 4 -L$cbc_decrypt_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $16,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r8),%xmm10 - movl %r10d,%eax - cmpq $0x50,%rdx - jbe L$cbc_dec_tail - - movups (%rcx),%xmm0 - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 - movl _OPENSSL_ia32cap_P+4(%rip),%r9d - cmpq $0x70,%rdx - jbe L$cbc_dec_six_or_seven - - andl $71303168,%r9d - subq $0x50,%rdx - cmpl $4194304,%r9d - je L$cbc_dec_loop6_enter - subq $0x20,%rdx - leaq 112(%rcx),%rcx - jmp L$cbc_dec_loop8_enter -.p2align 4 -L$cbc_dec_loop8: - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi -L$cbc_dec_loop8_enter: - movdqu 96(%rdi),%xmm8 - pxor %xmm0,%xmm2 - movdqu 112(%rdi),%xmm9 - pxor %xmm0,%xmm3 - movups 16-112(%rcx),%xmm1 - pxor %xmm0,%xmm4 - xorq %r11,%r11 - cmpq $0x70,%rdx - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 - -.byte 102,15,56,222,209 - pxor %xmm0,%xmm9 - movups 32-112(%rcx),%xmm0 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 - setnc %r11b - shlq $7,%r11 -.byte 102,68,15,56,222,201 - addq %rdi,%r11 - movups 48-112(%rcx),%xmm1 -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 64-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 80-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 96-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 112-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 128-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 144-112(%rcx),%xmm1 - cmpl $11,%eax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 160-112(%rcx),%xmm0 - jb L$cbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 176-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 192-112(%rcx),%xmm0 - je L$cbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 208-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 224-112(%rcx),%xmm0 - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_done: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm12 - pxor %xmm0,%xmm13 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movdqu 80(%rdi),%xmm1 - -.byte 102,65,15,56,223,210 - movdqu 96(%rdi),%xmm10 - pxor %xmm0,%xmm1 -.byte 102,65,15,56,223,219 - pxor %xmm0,%xmm10 - movdqu 112(%rdi),%xmm0 -.byte 102,65,15,56,223,228 - leaq 128(%rdi),%rdi - movdqu 0(%r11),%xmm11 -.byte 102,65,15,56,223,237 -.byte 102,65,15,56,223,246 - movdqu 16(%r11),%xmm12 - movdqu 32(%r11),%xmm13 -.byte 102,65,15,56,223,255 -.byte 102,68,15,56,223,193 - movdqu 48(%r11),%xmm14 - movdqu 64(%r11),%xmm15 -.byte 102,69,15,56,223,202 - movdqa %xmm0,%xmm10 - movdqu 80(%r11),%xmm1 - movups -112(%rcx),%xmm0 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm1,%xmm7 - movups %xmm8,96(%rsi) - leaq 112(%rsi),%rsi - - subq $0x80,%rdx - ja L$cbc_dec_loop8 - - movaps %xmm9,%xmm2 - leaq -112(%rcx),%rcx - addq $0x70,%rdx - jle L$cbc_dec_clear_tail_collected - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi - cmpq $0x50,%rdx - jbe L$cbc_dec_tail - - movaps %xmm11,%xmm2 -L$cbc_dec_six_or_seven: - cmpq $0x60,%rdx - ja L$cbc_dec_seven - - movaps %xmm7,%xmm8 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - leaq 80(%rsi),%rsi - movdqa %xmm7,%xmm2 - pxor %xmm7,%xmm7 - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_seven: - movups 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups 80(%rdi),%xmm9 - pxor %xmm10,%xmm2 - movups 96(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm9,%xmm8 - movdqu %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - leaq 96(%rsi),%rsi - movdqa %xmm8,%xmm2 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_loop6: - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 -L$cbc_dec_loop6_enter: - leaq 96(%rdi),%rdi - movdqa %xmm7,%xmm8 - - call _aesni_decrypt6 - - pxor %xmm10,%xmm2 - movdqa %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm6 - movq %r11,%rcx - movdqu %xmm5,48(%rsi) - pxor %xmm15,%xmm7 - movl %r10d,%eax - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - subq $0x60,%rdx - ja L$cbc_dec_loop6 - - movdqa %xmm7,%xmm2 - addq $0x50,%rdx - jle L$cbc_dec_clear_tail_collected - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - -L$cbc_dec_tail: - movups (%rdi),%xmm2 - subq $0x10,%rdx - jbe L$cbc_dec_one - - movups 16(%rdi),%xmm3 - movaps %xmm2,%xmm11 - subq $0x10,%rdx - jbe L$cbc_dec_two - - movups 32(%rdi),%xmm4 - movaps %xmm3,%xmm12 - subq $0x10,%rdx - jbe L$cbc_dec_three - - movups 48(%rdi),%xmm5 - movaps %xmm4,%xmm13 - subq $0x10,%rdx - jbe L$cbc_dec_four - - movups 64(%rdi),%xmm6 - movaps %xmm5,%xmm14 - movaps %xmm6,%xmm15 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm15,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - leaq 64(%rsi),%rsi - movdqa %xmm6,%xmm2 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - subq $0x10,%rdx - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_one: - movaps %xmm2,%xmm11 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_17: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_17 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movaps %xmm11,%xmm10 - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_two: - movaps %xmm3,%xmm12 - call _aesni_decrypt2 - pxor %xmm10,%xmm2 - movaps %xmm12,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - movdqa %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leaq 16(%rsi),%rsi - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_three: - movaps %xmm4,%xmm13 - call _aesni_decrypt3 - pxor %xmm10,%xmm2 - movaps %xmm13,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movdqa %xmm4,%xmm2 - pxor %xmm4,%xmm4 - leaq 32(%rsi),%rsi - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_four: - movaps %xmm5,%xmm14 - call _aesni_decrypt4 - pxor %xmm10,%xmm2 - movaps %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movdqa %xmm5,%xmm2 - pxor %xmm5,%xmm5 - leaq 48(%rsi),%rsi - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 -L$cbc_dec_tail_collected: - movups %xmm10,(%r8) - andq $15,%rdx - jnz L$cbc_dec_tail_partial - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$cbc_dec_ret -.p2align 4 -L$cbc_dec_tail_partial: - movaps %xmm2,(%rsp) - pxor %xmm2,%xmm2 - movq $16,%rcx - movq %rsi,%rdi - subq %rdx,%rcx - leaq (%rsp),%rsi -.long 0x9066A4F3 - movdqa %xmm2,(%rsp) - -L$cbc_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - leaq (%rbp),%rsp - popq %rbp -L$cbc_ret: - .byte 0xf3,0xc3 - -.globl _aesni_set_decrypt_key - -.p2align 4 -_aesni_set_decrypt_key: -.byte 0x48,0x83,0xEC,0x08 - call __aesni_set_encrypt_key - shll $4,%esi - testl %eax,%eax - jnz L$dec_key_ret - leaq 16(%rdx,%rsi,1),%rdi - - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 - movups %xmm0,(%rdi) - movups %xmm1,(%rdx) - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - -L$dec_key_inverse: - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - movups %xmm0,16(%rdi) - movups %xmm1,-16(%rdx) - cmpq %rdx,%rdi - ja L$dec_key_inverse - - movups (%rdx),%xmm0 -.byte 102,15,56,219,192 - pxor %xmm1,%xmm1 - movups %xmm0,(%rdi) - pxor %xmm0,%xmm0 -L$dec_key_ret: - addq $8,%rsp - .byte 0xf3,0xc3 -L$SEH_end_set_decrypt_key: - -.globl _aesni_set_encrypt_key - -.p2align 4 -_aesni_set_encrypt_key: -__aesni_set_encrypt_key: -.byte 0x48,0x83,0xEC,0x08 - movq $-1,%rax - testq %rdi,%rdi - jz L$enc_key_ret - testq %rdx,%rdx - jz L$enc_key_ret - - movl $268437504,%r10d - movups (%rdi),%xmm0 - xorps %xmm4,%xmm4 - andl _OPENSSL_ia32cap_P+4(%rip),%r10d - leaq 16(%rdx),%rax - cmpl $256,%esi - je L$14rounds - cmpl $192,%esi - je L$12rounds - cmpl $128,%esi - jne L$bad_keybits - -L$10rounds: - movl $9,%esi - cmpl $268435456,%r10d - je L$10rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,200,1 - call L$key_expansion_128_cold -.byte 102,15,58,223,200,2 - call L$key_expansion_128 -.byte 102,15,58,223,200,4 - call L$key_expansion_128 -.byte 102,15,58,223,200,8 - call L$key_expansion_128 -.byte 102,15,58,223,200,16 - call L$key_expansion_128 -.byte 102,15,58,223,200,32 - call L$key_expansion_128 -.byte 102,15,58,223,200,64 - call L$key_expansion_128 -.byte 102,15,58,223,200,128 - call L$key_expansion_128 -.byte 102,15,58,223,200,27 - call L$key_expansion_128 -.byte 102,15,58,223,200,54 - call L$key_expansion_128 - movups %xmm0,(%rax) - movl %esi,80(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$10rounds_alt: - movdqa L$key_rotate(%rip),%xmm5 - movl $8,%r10d - movdqa L$key_rcon1(%rip),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,(%rdx) - jmp L$oop_key128 - -.p2align 4 -L$oop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leaq 16(%rax),%rax - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%rax) - movdqa %xmm0,%xmm2 - - decl %r10d - jnz L$oop_key128 - - movdqa L$key_rcon1b(%rip),%xmm4 - -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%rax) - - movl %esi,96(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$12rounds: - movq 16(%rdi),%xmm2 - movl $11,%esi - cmpl $268435456,%r10d - je L$12rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,202,1 - call L$key_expansion_192a_cold -.byte 102,15,58,223,202,2 - call L$key_expansion_192b -.byte 102,15,58,223,202,4 - call L$key_expansion_192a -.byte 102,15,58,223,202,8 - call L$key_expansion_192b -.byte 102,15,58,223,202,16 - call L$key_expansion_192a -.byte 102,15,58,223,202,32 - call L$key_expansion_192b -.byte 102,15,58,223,202,64 - call L$key_expansion_192a -.byte 102,15,58,223,202,128 - call L$key_expansion_192b - movups %xmm0,(%rax) - movl %esi,48(%rax) - xorq %rax,%rax - jmp L$enc_key_ret - -.p2align 4 -L$12rounds_alt: - movdqa L$key_rotate192(%rip),%xmm5 - movdqa L$key_rcon1(%rip),%xmm4 - movl $8,%r10d - movdqu %xmm0,(%rdx) - jmp L$oop_key192 - -.p2align 4 -L$oop_key192: - movq %xmm2,0(%rax) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leaq 24(%rax),%rax - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - - pshufd $0xff,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%rax) - - decl %r10d - jnz L$oop_key192 - - movl %esi,32(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$14rounds: - movups 16(%rdi),%xmm2 - movl $13,%esi - leaq 16(%rax),%rax - cmpl $268435456,%r10d - je L$14rounds_alt - - movups %xmm0,(%rdx) - movups %xmm2,16(%rdx) -.byte 102,15,58,223,202,1 - call L$key_expansion_256a_cold -.byte 102,15,58,223,200,1 - call L$key_expansion_256b -.byte 102,15,58,223,202,2 - call L$key_expansion_256a -.byte 102,15,58,223,200,2 - call L$key_expansion_256b -.byte 102,15,58,223,202,4 - call L$key_expansion_256a -.byte 102,15,58,223,200,4 - call L$key_expansion_256b -.byte 102,15,58,223,202,8 - call L$key_expansion_256a -.byte 102,15,58,223,200,8 - call L$key_expansion_256b -.byte 102,15,58,223,202,16 - call L$key_expansion_256a -.byte 102,15,58,223,200,16 - call L$key_expansion_256b -.byte 102,15,58,223,202,32 - call L$key_expansion_256a -.byte 102,15,58,223,200,32 - call L$key_expansion_256b -.byte 102,15,58,223,202,64 - call L$key_expansion_256a - movups %xmm0,(%rax) - movl %esi,16(%rax) - xorq %rax,%rax - jmp L$enc_key_ret - -.p2align 4 -L$14rounds_alt: - movdqa L$key_rotate(%rip),%xmm5 - movdqa L$key_rcon1(%rip),%xmm4 - movl $7,%r10d - movdqu %xmm0,0(%rdx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,16(%rdx) - jmp L$oop_key256 - -.p2align 4 -L$oop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - decl %r10d - jz L$done_key256 - - pshufd $0xff,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%rax) - leaq 32(%rax),%rax - movdqa %xmm2,%xmm1 - - jmp L$oop_key256 - -L$done_key256: - movl %esi,16(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$bad_keybits: - movq $-2,%rax -L$enc_key_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - addq $8,%rsp - .byte 0xf3,0xc3 -L$SEH_end_set_encrypt_key: - -.p2align 4 -L$key_expansion_128: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -L$key_expansion_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_192a: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -L$key_expansion_192a_cold: - movaps %xmm2,%xmm5 -L$key_expansion_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%rax) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%rax) - leaq 32(%rax),%rax - jmp L$key_expansion_192b_warm - -.p2align 4 -L$key_expansion_256a: - movups %xmm2,(%rax) - leaq 16(%rax),%rax -L$key_expansion_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_256b: - movups %xmm0,(%rax) - leaq 16(%rax),%rax - - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - .byte 0xf3,0xc3 - - -.p2align 6 -L$bswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -L$increment32: -.long 6,6,6,0 -L$increment64: -.long 1,0,0,0 -L$xts_magic: -.long 0x87,0,1,0 -L$increment1: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -L$key_rotate: -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d -L$key_rotate192: -.long 0x04070605,0x04070605,0x04070605,0x04070605 -L$key_rcon1: -.long 1,1,1,1 -L$key_rcon1b: -.long 0x1b,0x1b,0x1b,0x1b - -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/bsaes-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/bsaes-x86_64.s deleted file mode 100644 index 52ae782e9a2e48..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/bsaes-x86_64.s +++ /dev/null @@ -1,2497 +0,0 @@ -.text - - - - - -.p2align 6 -_bsaes_encrypt8: - leaq L$BS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa 80(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 -_bsaes_encrypt8_bitslice: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp L$enc_sbox -.p2align 4 -L$enc_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -L$enc_sbox: - pxor %xmm5,%xmm4 - pxor %xmm0,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm1,%xmm5 - pxor %xmm15,%xmm4 - - pxor %xmm2,%xmm5 - pxor %xmm6,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm3,%xmm2 - pxor %xmm4,%xmm3 - pxor %xmm0,%xmm2 - - pxor %xmm6,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm6,%xmm10 - movdqa %xmm0,%xmm9 - movdqa %xmm4,%xmm8 - movdqa %xmm1,%xmm12 - movdqa %xmm5,%xmm11 - - pxor %xmm3,%xmm10 - pxor %xmm1,%xmm9 - pxor %xmm2,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm3,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm15,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm2,%xmm11 - pxor %xmm15,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm6,%xmm12 - movdqa %xmm4,%xmm11 - pxor %xmm0,%xmm12 - pxor %xmm5,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm1,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm3,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm0,%xmm13 - pand %xmm2,%xmm11 - movdqa %xmm6,%xmm14 - pand %xmm15,%xmm12 - pand %xmm4,%xmm13 - por %xmm5,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm5,%xmm11 - movdqa %xmm4,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm5,%xmm9 - pxor %xmm4,%xmm5 - pand %xmm14,%xmm4 - pand %xmm13,%xmm5 - pxor %xmm4,%xmm5 - pxor %xmm9,%xmm4 - pxor %xmm15,%xmm11 - pxor %xmm2,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm2,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm2 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm2,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm2 - pxor %xmm11,%xmm5 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm2 - - movdqa %xmm6,%xmm11 - movdqa %xmm0,%xmm7 - pxor %xmm3,%xmm11 - pxor %xmm1,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm3,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm1,%xmm3 - pand %xmm14,%xmm7 - pand %xmm12,%xmm1 - pand %xmm13,%xmm11 - pand %xmm8,%xmm3 - pxor %xmm11,%xmm7 - pxor %xmm1,%xmm3 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm1 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm6,%xmm10 - pxor %xmm0,%xmm6 - pand %xmm14,%xmm0 - pand %xmm13,%xmm6 - pxor %xmm0,%xmm6 - pxor %xmm10,%xmm0 - pxor %xmm11,%xmm6 - pxor %xmm11,%xmm3 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm1 - pxor %xmm15,%xmm6 - pxor %xmm5,%xmm0 - pxor %xmm6,%xmm3 - pxor %xmm15,%xmm5 - pxor %xmm0,%xmm15 - - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm4 - pxor %xmm2,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm4,%xmm3 - - pxor %xmm2,%xmm5 - decl %r10d - jl L$enc_done - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm3,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm5,%xmm10 - pxor %xmm9,%xmm3 - pshufd $0x93,%xmm2,%xmm11 - pxor %xmm10,%xmm5 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm2 - pshufd $0x93,%xmm1,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm1 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm2,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm5,%xmm11 - pshufd $0x4E,%xmm2,%xmm7 - pxor %xmm1,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm3,%xmm10 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm1,%xmm5 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm12,%xmm8 - pxor %xmm10,%xmm2 - pxor %xmm14,%xmm6 - pxor %xmm13,%xmm5 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm1 - movdqa %xmm8,%xmm4 - movdqa 48(%r11),%xmm7 - jnz L$enc_loop - movdqa 64(%r11),%xmm7 - jmp L$enc_loop -.p2align 4 -L$enc_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm2,%xmm10 - psrlq $1,%xmm2 - pxor %xmm4,%xmm1 - pxor %xmm6,%xmm2 - pand %xmm7,%xmm1 - pand %xmm7,%xmm2 - pxor %xmm1,%xmm4 - psllq $1,%xmm1 - pxor %xmm2,%xmm6 - psllq $1,%xmm2 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm2 - movdqa %xmm3,%xmm9 - psrlq $1,%xmm3 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm5,%xmm3 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm3 - pand %xmm7,%xmm15 - pxor %xmm3,%xmm5 - psllq $1,%xmm3 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm2,%xmm10 - psrlq $2,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm1,%xmm2 - pand %xmm8,%xmm6 - pand %xmm8,%xmm2 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm2,%xmm1 - psllq $2,%xmm2 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm2 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm5,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm5 - psllq $2,%xmm0 - pxor %xmm15,%xmm3 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm5,%xmm9 - psrlq $4,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $4,%xmm3 - pxor %xmm4,%xmm5 - pxor %xmm1,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm4 - psllq $4,%xmm5 - pxor %xmm3,%xmm1 - psllq $4,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm2,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm2 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 - - - -.p2align 6 -_bsaes_decrypt8: - leaq L$BS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa -48(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp L$dec_sbox -.p2align 4 -L$dec_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -L$dec_sbox: - pxor %xmm3,%xmm2 - - pxor %xmm6,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm3,%xmm5 - pxor %xmm5,%xmm6 - pxor %xmm6,%xmm0 - - pxor %xmm0,%xmm15 - pxor %xmm4,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm15,%xmm4 - pxor %xmm2,%xmm0 - movdqa %xmm2,%xmm10 - movdqa %xmm6,%xmm9 - movdqa %xmm0,%xmm8 - movdqa %xmm3,%xmm12 - movdqa %xmm4,%xmm11 - - pxor %xmm15,%xmm10 - pxor %xmm3,%xmm9 - pxor %xmm5,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm15,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm1,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm5,%xmm11 - pxor %xmm1,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm2,%xmm12 - movdqa %xmm0,%xmm11 - pxor %xmm6,%xmm12 - pxor %xmm4,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm3,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm15,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm6,%xmm13 - pand %xmm5,%xmm11 - movdqa %xmm2,%xmm14 - pand %xmm1,%xmm12 - pand %xmm0,%xmm13 - por %xmm4,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm4,%xmm11 - movdqa %xmm0,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm4,%xmm9 - pxor %xmm0,%xmm4 - pand %xmm14,%xmm0 - pand %xmm13,%xmm4 - pxor %xmm0,%xmm4 - pxor %xmm9,%xmm0 - pxor %xmm1,%xmm11 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm1,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm5,%xmm1 - pand %xmm14,%xmm7 - pand %xmm12,%xmm5 - pand %xmm13,%xmm11 - pand %xmm8,%xmm1 - pxor %xmm11,%xmm7 - pxor %xmm5,%xmm1 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm5 - pxor %xmm11,%xmm4 - pxor %xmm11,%xmm1 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm5 - - movdqa %xmm2,%xmm11 - movdqa %xmm6,%xmm7 - pxor %xmm15,%xmm11 - pxor %xmm3,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm3,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm3 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm3,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm3 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm2,%xmm10 - pxor %xmm6,%xmm2 - pand %xmm14,%xmm6 - pand %xmm13,%xmm2 - pxor %xmm6,%xmm2 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm3 - pxor %xmm6,%xmm0 - pxor %xmm4,%xmm5 - - pxor %xmm0,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm6,%xmm4 - pxor %xmm1,%xmm3 - pxor %xmm15,%xmm6 - pxor %xmm4,%xmm3 - pxor %xmm5,%xmm2 - pxor %xmm0,%xmm5 - pxor %xmm3,%xmm2 - - pxor %xmm15,%xmm3 - pxor %xmm2,%xmm6 - decl %r10d - jl L$dec_done - - pshufd $0x4E,%xmm15,%xmm7 - pshufd $0x4E,%xmm2,%xmm13 - pxor %xmm15,%xmm7 - pshufd $0x4E,%xmm4,%xmm14 - pxor %xmm2,%xmm13 - pshufd $0x4E,%xmm0,%xmm8 - pxor %xmm4,%xmm14 - pshufd $0x4E,%xmm5,%xmm9 - pxor %xmm0,%xmm8 - pshufd $0x4E,%xmm3,%xmm10 - pxor %xmm5,%xmm9 - pxor %xmm13,%xmm15 - pxor %xmm13,%xmm0 - pshufd $0x4E,%xmm1,%xmm11 - pxor %xmm3,%xmm10 - pxor %xmm7,%xmm5 - pxor %xmm8,%xmm3 - pshufd $0x4E,%xmm6,%xmm12 - pxor %xmm1,%xmm11 - pxor %xmm14,%xmm0 - pxor %xmm9,%xmm1 - pxor %xmm6,%xmm12 - - pxor %xmm14,%xmm5 - pxor %xmm13,%xmm3 - pxor %xmm13,%xmm1 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm14,%xmm1 - pxor %xmm14,%xmm6 - pxor %xmm12,%xmm4 - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm5,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm3,%xmm10 - pxor %xmm9,%xmm5 - pshufd $0x93,%xmm1,%xmm11 - pxor %xmm10,%xmm3 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm1 - pshufd $0x93,%xmm2,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm2 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm1,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm3,%xmm11 - pshufd $0x4E,%xmm1,%xmm7 - pxor %xmm2,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm5,%xmm10 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm2,%xmm3 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm12,%xmm8 - pxor %xmm1,%xmm10 - pxor %xmm14,%xmm6 - pxor %xmm3,%xmm13 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm2 - movdqa %xmm13,%xmm5 - movdqa %xmm8,%xmm4 - movdqa %xmm2,%xmm1 - movdqa %xmm10,%xmm2 - movdqa -16(%r11),%xmm7 - jnz L$dec_loop - movdqa -32(%r11),%xmm7 - jmp L$dec_loop -.p2align 4 -L$dec_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm2,%xmm9 - psrlq $1,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $1,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm6,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm4 - psllq $1,%xmm2 - pxor %xmm1,%xmm6 - psllq $1,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm3,%xmm5 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm5 - pand %xmm7,%xmm15 - pxor %xmm5,%xmm3 - psllq $1,%xmm5 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm1,%xmm10 - psrlq $2,%xmm1 - pxor %xmm4,%xmm6 - pxor %xmm2,%xmm1 - pand %xmm8,%xmm6 - pand %xmm8,%xmm1 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm1,%xmm2 - psllq $2,%xmm1 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm3 - psllq $2,%xmm0 - pxor %xmm15,%xmm5 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm3,%xmm9 - psrlq $4,%xmm3 - movdqa %xmm5,%xmm10 - psrlq $4,%xmm5 - pxor %xmm4,%xmm3 - pxor %xmm2,%xmm5 - pand %xmm7,%xmm3 - pand %xmm7,%xmm5 - pxor %xmm3,%xmm4 - psllq $4,%xmm3 - pxor %xmm5,%xmm2 - psllq $4,%xmm5 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm5 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm1 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 - - -.p2align 4 -_bsaes_key_convert: - leaq L$masks(%rip),%r11 - movdqu (%rcx),%xmm7 - leaq 16(%rcx),%rcx - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - movdqa 48(%r11),%xmm3 - movdqa 64(%r11),%xmm4 - pcmpeqd %xmm5,%xmm5 - - movdqu (%rcx),%xmm6 - movdqa %xmm7,(%rax) - leaq 16(%rax),%rax - decl %r10d - jmp L$key_loop -.p2align 4 -L$key_loop: -.byte 102,15,56,0,244 - - movdqa %xmm0,%xmm8 - movdqa %xmm1,%xmm9 - - pand %xmm6,%xmm8 - pand %xmm6,%xmm9 - movdqa %xmm2,%xmm10 - pcmpeqb %xmm0,%xmm8 - psllq $4,%xmm0 - movdqa %xmm3,%xmm11 - pcmpeqb %xmm1,%xmm9 - psllq $4,%xmm1 - - pand %xmm6,%xmm10 - pand %xmm6,%xmm11 - movdqa %xmm0,%xmm12 - pcmpeqb %xmm2,%xmm10 - psllq $4,%xmm2 - movdqa %xmm1,%xmm13 - pcmpeqb %xmm3,%xmm11 - psllq $4,%xmm3 - - movdqa %xmm2,%xmm14 - movdqa %xmm3,%xmm15 - pxor %xmm5,%xmm8 - pxor %xmm5,%xmm9 - - pand %xmm6,%xmm12 - pand %xmm6,%xmm13 - movdqa %xmm8,0(%rax) - pcmpeqb %xmm0,%xmm12 - psrlq $4,%xmm0 - movdqa %xmm9,16(%rax) - pcmpeqb %xmm1,%xmm13 - psrlq $4,%xmm1 - leaq 16(%rcx),%rcx - - pand %xmm6,%xmm14 - pand %xmm6,%xmm15 - movdqa %xmm10,32(%rax) - pcmpeqb %xmm2,%xmm14 - psrlq $4,%xmm2 - movdqa %xmm11,48(%rax) - pcmpeqb %xmm3,%xmm15 - psrlq $4,%xmm3 - movdqu (%rcx),%xmm6 - - pxor %xmm5,%xmm13 - pxor %xmm5,%xmm14 - movdqa %xmm12,64(%rax) - movdqa %xmm13,80(%rax) - movdqa %xmm14,96(%rax) - movdqa %xmm15,112(%rax) - leaq 128(%rax),%rax - decl %r10d - jnz L$key_loop - - movdqa 80(%r11),%xmm7 - - .byte 0xf3,0xc3 - - -.globl _bsaes_cbc_encrypt - -.p2align 4 -_bsaes_cbc_encrypt: - cmpl $0,%r9d - jne _asm_AES_cbc_encrypt - cmpq $128,%rdx - jb _asm_AES_cbc_encrypt - - movq %rsp,%rax -L$cbc_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movq %r8,%rbx - shrq $4,%r14 - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - movdqu (%rbx),%xmm14 - subq $8,%r14 -L$cbc_dec_loop: - movdqu 0(%r12),%xmm15 - movdqu 16(%r12),%xmm0 - movdqu 32(%r12),%xmm1 - movdqu 48(%r12),%xmm2 - movdqu 64(%r12),%xmm3 - movdqu 80(%r12),%xmm4 - movq %rsp,%rax - movdqu 96(%r12),%xmm5 - movl %edx,%r10d - movdqu 112(%r12),%xmm6 - movdqa %xmm14,32(%rbp) - - call _bsaes_decrypt8 - - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm2 - movdqu 112(%r12),%xmm14 - pxor %xmm13,%xmm4 - movdqu %xmm15,0(%r13) - leaq 128(%r12),%r12 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - subq $8,%r14 - jnc L$cbc_dec_loop - - addq $8,%r14 - jz L$cbc_dec_done - - movdqu 0(%r12),%xmm15 - movq %rsp,%rax - movl %edx,%r10d - cmpq $2,%r14 - jb L$cbc_dec_one - movdqu 16(%r12),%xmm0 - je L$cbc_dec_two - movdqu 32(%r12),%xmm1 - cmpq $4,%r14 - jb L$cbc_dec_three - movdqu 48(%r12),%xmm2 - je L$cbc_dec_four - movdqu 64(%r12),%xmm3 - cmpq $6,%r14 - jb L$cbc_dec_five - movdqu 80(%r12),%xmm4 - je L$cbc_dec_six - movdqu 96(%r12),%xmm5 - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm14 - pxor %xmm12,%xmm2 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_six: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm14 - pxor %xmm11,%xmm6 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_five: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm14 - pxor %xmm10,%xmm1 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_four: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm14 - pxor %xmm9,%xmm3 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_three: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm14 - pxor %xmm8,%xmm5 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_two: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm14 - pxor %xmm7,%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_one: - leaq (%r12),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm14 - movdqu %xmm14,(%r13) - movdqa %xmm15,%xmm14 - -L$cbc_dec_done: - movdqu %xmm14,(%rbx) - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$cbc_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$cbc_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$cbc_dec_epilogue: - .byte 0xf3,0xc3 - - -.globl _bsaes_ctr32_encrypt_blocks - -.p2align 4 -_bsaes_ctr32_encrypt_blocks: - movq %rsp,%rax -L$ctr_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movdqu (%r8),%xmm0 - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movdqa %xmm0,32(%rbp) - cmpq $8,%rdx - jb L$ctr_enc_short - - movl %eax,%ebx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %ebx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - movdqa (%rsp),%xmm8 - leaq L$ADD1(%rip),%r11 - movdqa 32(%rbp),%xmm15 - movdqa -32(%r11),%xmm7 -.byte 102,68,15,56,0,199 -.byte 102,68,15,56,0,255 - movdqa %xmm8,(%rsp) - jmp L$ctr_enc_loop -.p2align 4 -L$ctr_enc_loop: - movdqa %xmm15,32(%rbp) - movdqa %xmm15,%xmm0 - movdqa %xmm15,%xmm1 - paddd 0(%r11),%xmm0 - movdqa %xmm15,%xmm2 - paddd 16(%r11),%xmm1 - movdqa %xmm15,%xmm3 - paddd 32(%r11),%xmm2 - movdqa %xmm15,%xmm4 - paddd 48(%r11),%xmm3 - movdqa %xmm15,%xmm5 - paddd 64(%r11),%xmm4 - movdqa %xmm15,%xmm6 - paddd 80(%r11),%xmm5 - paddd 96(%r11),%xmm6 - - - - movdqa (%rsp),%xmm8 - leaq 16(%rsp),%rax - movdqa -16(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq L$BS0(%rip),%r11 - movl %ebx,%r10d - - call _bsaes_encrypt8_bitslice - - subq $8,%r14 - jc L$ctr_enc_loop_done - - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - movdqu 32(%r12),%xmm9 - movdqu 48(%r12),%xmm10 - movdqu 64(%r12),%xmm11 - movdqu 80(%r12),%xmm12 - movdqu 96(%r12),%xmm13 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - pxor %xmm15,%xmm7 - movdqa 32(%rbp),%xmm15 - pxor %xmm8,%xmm0 - movdqu %xmm7,0(%r13) - pxor %xmm9,%xmm3 - movdqu %xmm0,16(%r13) - pxor %xmm10,%xmm5 - movdqu %xmm3,32(%r13) - pxor %xmm11,%xmm2 - movdqu %xmm5,48(%r13) - pxor %xmm12,%xmm6 - movdqu %xmm2,64(%r13) - pxor %xmm13,%xmm1 - movdqu %xmm6,80(%r13) - pxor %xmm14,%xmm4 - movdqu %xmm1,96(%r13) - leaq L$ADD1(%rip),%r11 - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - paddd 112(%r11),%xmm15 - jnz L$ctr_enc_loop - - jmp L$ctr_enc_done -.p2align 4 -L$ctr_enc_loop_done: - addq $8,%r14 - movdqu 0(%r12),%xmm7 - pxor %xmm7,%xmm15 - movdqu %xmm15,0(%r13) - cmpq $2,%r14 - jb L$ctr_enc_done - movdqu 16(%r12),%xmm8 - pxor %xmm8,%xmm0 - movdqu %xmm0,16(%r13) - je L$ctr_enc_done - movdqu 32(%r12),%xmm9 - pxor %xmm9,%xmm3 - movdqu %xmm3,32(%r13) - cmpq $4,%r14 - jb L$ctr_enc_done - movdqu 48(%r12),%xmm10 - pxor %xmm10,%xmm5 - movdqu %xmm5,48(%r13) - je L$ctr_enc_done - movdqu 64(%r12),%xmm11 - pxor %xmm11,%xmm2 - movdqu %xmm2,64(%r13) - cmpq $6,%r14 - jb L$ctr_enc_done - movdqu 80(%r12),%xmm12 - pxor %xmm12,%xmm6 - movdqu %xmm6,80(%r13) - je L$ctr_enc_done - movdqu 96(%r12),%xmm13 - pxor %xmm13,%xmm1 - movdqu %xmm1,96(%r13) - jmp L$ctr_enc_done - -.p2align 4 -L$ctr_enc_short: - leaq 32(%rbp),%rdi - leaq 48(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_encrypt - movdqu (%r12),%xmm0 - leaq 16(%r12),%r12 - movl 44(%rbp),%eax - bswapl %eax - pxor 48(%rbp),%xmm0 - incl %eax - movdqu %xmm0,(%r13) - bswapl %eax - leaq 16(%r13),%r13 - movl %eax,44(%rsp) - decq %r14 - jnz L$ctr_enc_short - -L$ctr_enc_done: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$ctr_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$ctr_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$ctr_enc_epilogue: - .byte 0xf3,0xc3 - -.globl _bsaes_xts_encrypt - -.p2align 4 -_bsaes_xts_encrypt: - movq %rsp,%rax -L$xts_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call _asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - andq $-16,%r14 - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc L$xts_enc_short - jmp L$xts_enc_loop - -.p2align 4 -L$xts_enc_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm1,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc L$xts_enc_loop - -L$xts_enc_short: - addq $0x80,%r14 - jz L$xts_enc_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je L$xts_enc_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je L$xts_enc_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je L$xts_enc_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je L$xts_enc_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je L$xts_enc_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je L$xts_enc_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - movdqu %xmm1,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - movdqu %xmm2,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - movdqu %xmm5,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - movdqu %xmm3,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_encrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -L$xts_enc_done: - andl $15,%ebx - jz L$xts_enc_ret - movq %r13,%rdx - -L$xts_enc_steal: - movzbl (%r12),%eax - movzbl -16(%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,-16(%rdx) - movb %cl,0(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz L$xts_enc_steal - - movdqu -16(%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_encrypt - pxor 32(%rbp),%xmm6 - movdqu %xmm6,-16(%r13) - -L$xts_enc_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$xts_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$xts_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$xts_enc_epilogue: - .byte 0xf3,0xc3 - - -.globl _bsaes_xts_decrypt - -.p2align 4 -_bsaes_xts_decrypt: - movq %rsp,%rax -L$xts_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call _asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - xorl %eax,%eax - andq $-16,%r14 - testl $15,%ebx - setnz %al - shlq $4,%rax - subq %rax,%r14 - - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc L$xts_dec_short - jmp L$xts_dec_loop - -.p2align 4 -L$xts_dec_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc L$xts_dec_loop - -L$xts_dec_short: - addq $0x80,%r14 - jz L$xts_dec_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je L$xts_dec_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je L$xts_dec_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je L$xts_dec_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je L$xts_dec_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je L$xts_dec_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je L$xts_dec_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -L$xts_dec_done: - andl $15,%ebx - jz L$xts_dec_ret - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - movdqa %xmm6,%xmm5 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - movdqu (%r12),%xmm15 - pxor %xmm13,%xmm6 - - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm6 - movq %r13,%rdx - movdqu %xmm6,(%r13) - -L$xts_dec_steal: - movzbl 16(%r12),%eax - movzbl (%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,(%rdx) - movb %cl,16(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz L$xts_dec_steal - - movdqu (%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm5,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm5 - movdqu %xmm5,(%r13) - -L$xts_dec_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$xts_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$xts_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$xts_dec_epilogue: - .byte 0xf3,0xc3 - - -.p2align 6 -_bsaes_const: -L$M0ISR: -.quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -L$ISRM0: -.quad 0x01040b0e0205080f, 0x0306090c00070a0d -L$ISR: -.quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -L$BS0: -.quad 0x5555555555555555, 0x5555555555555555 -L$BS1: -.quad 0x3333333333333333, 0x3333333333333333 -L$BS2: -.quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f -L$SR: -.quad 0x0504070600030201, 0x0f0e0d0c0a09080b -L$SRM0: -.quad 0x0304090e00050a0f, 0x01060b0c0207080d -L$M0SR: -.quad 0x0a0e02060f03070b, 0x0004080c05090d01 -L$SWPUP: -.quad 0x0706050403020100, 0x0c0d0e0f0b0a0908 -L$SWPUPM0SR: -.quad 0x0a0d02060c03070b, 0x0004080f05090e01 -L$ADD1: -.quad 0x0000000000000000, 0x0000000100000000 -L$ADD2: -.quad 0x0000000000000000, 0x0000000200000000 -L$ADD3: -.quad 0x0000000000000000, 0x0000000300000000 -L$ADD4: -.quad 0x0000000000000000, 0x0000000400000000 -L$ADD5: -.quad 0x0000000000000000, 0x0000000500000000 -L$ADD6: -.quad 0x0000000000000000, 0x0000000600000000 -L$ADD7: -.quad 0x0000000000000000, 0x0000000700000000 -L$ADD8: -.quad 0x0000000000000000, 0x0000000800000000 -L$xts_magic: -.long 0x87,0,1,0 -L$masks: -.quad 0x0101010101010101, 0x0101010101010101 -.quad 0x0202020202020202, 0x0202020202020202 -.quad 0x0404040404040404, 0x0404040404040404 -.quad 0x0808080808080808, 0x0808080808080808 -L$M0: -.quad 0x02060a0e03070b0f, 0x0004080c0105090d -L$63: -.quad 0x6363636363636363, 0x6363636363636363 -.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/aes/vpaes-x86_64.s b/deps/openssl/asm/x64-macosx-gas/aes/vpaes-x86_64.s deleted file mode 100644 index 2ffd0bc1007578..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/aes/vpaes-x86_64.s +++ /dev/null @@ -1,826 +0,0 @@ -.text - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_encrypt_core: - movq %rdx,%r9 - movq $16,%r11 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa L$k_ipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movdqu (%r9),%xmm5 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa L$k_ipt+16(%rip),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm5,%xmm2 - addq $16,%r9 - pxor %xmm2,%xmm0 - leaq L$k_mc_backward(%rip),%r10 - jmp L$enc_entry - -.p2align 4 -L$enc_loop: - - movdqa %xmm13,%xmm4 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa %xmm15,%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%r11,%r10,1),%xmm1 -.byte 102,15,56,0,234 - movdqa (%r11,%r10,1),%xmm4 - movdqa %xmm14,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addq $16,%r9 - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addq $16,%r11 - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andq $0x30,%r11 - subq $1,%rax - pxor %xmm3,%xmm0 - -L$enc_entry: - - movdqa %xmm9,%xmm1 - movdqa %xmm11,%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm10,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm5 - pxor %xmm1,%xmm3 - jnz L$enc_loop - - - movdqa -96(%r10),%xmm4 - movdqa -80(%r10),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%r11,%r10,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_decrypt_core: - movq %rdx,%r9 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa L$k_dipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movq %rax,%r11 - psrld $4,%xmm1 - movdqu (%r9),%xmm5 - shlq $4,%r11 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa L$k_dipt+16(%rip),%xmm0 - xorq $0x30,%r11 - leaq L$k_dsbd(%rip),%r10 -.byte 102,15,56,0,193 - andq $0x30,%r11 - pxor %xmm5,%xmm2 - movdqa L$k_mc_forward+48(%rip),%xmm5 - pxor %xmm2,%xmm0 - addq $16,%r9 - addq %r10,%r11 - jmp L$dec_entry - -.p2align 4 -L$dec_loop: - - - - movdqa -32(%r10),%xmm4 - movdqa -16(%r10),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 0(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addq $16,%r9 -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subq $1,%rax - -L$dec_entry: - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - movdqa %xmm11,%xmm2 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm0 - pxor %xmm1,%xmm3 - jnz L$dec_loop - - - movdqa 96(%r10),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%r10),%xmm0 - movdqa -352(%r11),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_schedule_core: - - - - - - call _vpaes_preheat - movdqa L$k_rcon(%rip),%xmm8 - movdqu (%rdi),%xmm0 - - - movdqa %xmm0,%xmm3 - leaq L$k_ipt(%rip),%r11 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - - leaq L$k_sr(%rip),%r10 - testq %rcx,%rcx - jnz L$schedule_am_decrypting - - - movdqu %xmm0,(%rdx) - jmp L$schedule_go - -L$schedule_am_decrypting: - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%rdx) - xorq $0x30,%r8 - -L$schedule_go: - cmpl $192,%esi - ja L$schedule_256 - je L$schedule_192 - - - - - - - - - - -L$schedule_128: - movl $10,%esi - -L$oop_schedule_128: - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - jmp L$oop_schedule_128 - - - - - - - - - - - - - - - - -.p2align 4 -L$schedule_192: - movdqu 8(%rdi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%esi - -L$oop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp L$oop_schedule_192 - - - - - - - - - - - -.p2align 4 -L$schedule_256: - movdqu 16(%rdi),%xmm0 - call _vpaes_schedule_transform - movl $7,%esi - -L$oop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - - - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd $0xFF,%xmm0,%xmm0 - movdqa %xmm7,%xmm5 - movdqa %xmm6,%xmm7 - call _vpaes_schedule_low_round - movdqa %xmm5,%xmm7 - - jmp L$oop_schedule_256 - - - - - - - - - - - - -.p2align 4 -L$schedule_mangle_last: - - leaq L$k_deskew(%rip),%r11 - testq %rcx,%rcx - jnz L$schedule_mangle_last_dec - - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,193 - leaq L$k_opt(%rip),%r11 - addq $32,%rdx - -L$schedule_mangle_last_dec: - addq $-16,%rdx - pxor L$k_s63(%rip),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%rdx) - - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_192_smear: - pshufd $0x80,%xmm6,%xmm1 - pshufd $0xFE,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_round: - - pxor %xmm1,%xmm1 -.byte 102,65,15,58,15,200,15 -.byte 102,69,15,58,15,192,15 - pxor %xmm1,%xmm7 - - - pshufd $0xFF,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round: - - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor L$k_s63(%rip),%xmm7 - - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm10,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa %xmm13,%xmm4 -.byte 102,15,56,0,226 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - - - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - .byte 0xf3,0xc3 - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_transform: - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa (%r11),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%r11),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa L$k_mc_forward(%rip),%xmm5 - testq %rcx,%rcx - jnz L$schedule_mangle_dec - - - addq $16,%rdx - pxor L$k_s63(%rip),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - - jmp L$schedule_mangle_both -.p2align 4 -L$schedule_mangle_dec: - - leaq L$k_dksd(%rip),%r11 - movdqa %xmm9,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm4 - - movdqa 0(%r11),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 32(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 64(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 96(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - - addq $-16,%rdx - -L$schedule_mangle_both: - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - addq $-16,%r8 - andq $0x30,%r8 - movdqu %xmm3,(%rdx) - .byte 0xf3,0xc3 - - - - - -.globl _vpaes_set_encrypt_key - -.p2align 4 -_vpaes_set_encrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - - movl $0,%ecx - movl $0x30,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _vpaes_set_decrypt_key - -.p2align 4 -_vpaes_set_decrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - shll $4,%eax - leaq 16(%rdx,%rax,1),%rdx - - movl $1,%ecx - movl %esi,%r8d - shrl $1,%r8d - andl $32,%r8d - xorl $32,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _vpaes_encrypt - -.p2align 4 -_vpaes_encrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 - - -.globl _vpaes_decrypt - -.p2align 4 -_vpaes_decrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 - -.globl _vpaes_cbc_encrypt - -.p2align 4 -_vpaes_cbc_encrypt: - xchgq %rcx,%rdx - subq $16,%rcx - jc L$cbc_abort - movdqu (%r8),%xmm6 - subq %rdi,%rsi - call _vpaes_preheat - cmpl $0,%r9d - je L$cbc_dec_loop - jmp L$cbc_enc_loop -.p2align 4 -L$cbc_enc_loop: - movdqu (%rdi),%xmm0 - pxor %xmm6,%xmm0 - call _vpaes_encrypt_core - movdqa %xmm0,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc L$cbc_enc_loop - jmp L$cbc_done -.p2align 4 -L$cbc_dec_loop: - movdqu (%rdi),%xmm0 - movdqa %xmm0,%xmm7 - call _vpaes_decrypt_core - pxor %xmm6,%xmm0 - movdqa %xmm7,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc L$cbc_dec_loop -L$cbc_done: - movdqu %xmm6,(%r8) -L$cbc_abort: - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_preheat: - leaq L$k_s0F(%rip),%r10 - movdqa -32(%r10),%xmm10 - movdqa -16(%r10),%xmm11 - movdqa 0(%r10),%xmm9 - movdqa 48(%r10),%xmm13 - movdqa 64(%r10),%xmm12 - movdqa 80(%r10),%xmm15 - movdqa 96(%r10),%xmm14 - .byte 0xf3,0xc3 - - - - - - - -.p2align 6 -_vpaes_consts: -L$k_inv: -.quad 0x0E05060F0D080180, 0x040703090A0B0C02 -.quad 0x01040A060F0B0780, 0x030D0E0C02050809 - -L$k_s0F: -.quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F - -L$k_ipt: -.quad 0xC2B2E8985A2A7000, 0xCABAE09052227808 -.quad 0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81 - -L$k_sb1: -.quad 0xB19BE18FCB503E00, 0xA5DF7A6E142AF544 -.quad 0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF -L$k_sb2: -.quad 0xE27A93C60B712400, 0x5EB7E955BC982FCD -.quad 0x69EB88400AE12900, 0xC2A163C8AB82234A -L$k_sbo: -.quad 0xD0D26D176FBDC700, 0x15AABF7AC502A878 -.quad 0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA - -L$k_mc_forward: -.quad 0x0407060500030201, 0x0C0F0E0D080B0A09 -.quad 0x080B0A0904070605, 0x000302010C0F0E0D -.quad 0x0C0F0E0D080B0A09, 0x0407060500030201 -.quad 0x000302010C0F0E0D, 0x080B0A0904070605 - -L$k_mc_backward: -.quad 0x0605040702010003, 0x0E0D0C0F0A09080B -.quad 0x020100030E0D0C0F, 0x0A09080B06050407 -.quad 0x0E0D0C0F0A09080B, 0x0605040702010003 -.quad 0x0A09080B06050407, 0x020100030E0D0C0F - -L$k_sr: -.quad 0x0706050403020100, 0x0F0E0D0C0B0A0908 -.quad 0x030E09040F0A0500, 0x0B06010C07020D08 -.quad 0x0F060D040B020900, 0x070E050C030A0108 -.quad 0x0B0E0104070A0D00, 0x0306090C0F020508 - -L$k_rcon: -.quad 0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81 - -L$k_s63: -.quad 0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B - -L$k_opt: -.quad 0xFF9F4929D6B66000, 0xF7974121DEBE6808 -.quad 0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0 - -L$k_deskew: -.quad 0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A -.quad 0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77 - - - - - -L$k_dksd: -.quad 0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9 -.quad 0x41C277F4B5368300, 0x5FDC69EAAB289D1E -L$k_dksb: -.quad 0x9A4FCA1F8550D500, 0x03D653861CC94C99 -.quad 0x115BEDA7B6FC4A00, 0xD993256F7E3482C8 -L$k_dkse: -.quad 0xD5031CCA1FC9D600, 0x53859A4C994F5086 -.quad 0xA23196054FDC7BE8, 0xCD5EF96A20B31487 -L$k_dks9: -.quad 0xB6116FC87ED9A700, 0x4AED933482255BFC -.quad 0x4576516227143300, 0x8BB89FACE9DAFDCE - - - - - -L$k_dipt: -.quad 0x0F505B040B545F00, 0x154A411E114E451A -.quad 0x86E383E660056500, 0x12771772F491F194 - -L$k_dsb9: -.quad 0x851C03539A86D600, 0xCAD51F504F994CC9 -.quad 0xC03B1789ECD74900, 0x725E2C9EB2FBA565 -L$k_dsbd: -.quad 0x7D57CCDFE6B1A200, 0xF56E9B13882A4439 -.quad 0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3 -L$k_dsbb: -.quad 0xD022649296B44200, 0x602646F6B0F2D404 -.quad 0xC19498A6CD596700, 0xF3FF0C3E3255AA6B -L$k_dsbe: -.quad 0x46F2929626D4D000, 0x2242600464B4F6B0 -.quad 0x0C55A6CDFFAAC100, 0x9467F36B98593E32 -L$k_dsbo: -.quad 0x1387EA537EF94000, 0xC7AA6DB9D4943E2D -.quad 0x12D7560F93441D00, 0xCA4B8159D8C58E9C -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s b/deps/openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s deleted file mode 100644 index f2bc63be34eee2..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s +++ /dev/null @@ -1,1697 +0,0 @@ -.text - -.globl _rsaz_1024_sqr_avx2 - -.p2align 6 -_rsaz_1024_sqr_avx2: - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - movq %rax,%rbp - movq %rdx,%r13 - subq $832,%rsp - movq %r13,%r15 - subq $-128,%rdi - subq $-128,%rsi - subq $-128,%r13 - - andq $4095,%r15 - addq $320,%r15 - shrq $12,%r15 - vpxor %ymm9,%ymm9,%ymm9 - jz L$sqr_1024_no_n_copy - - - - - - subq $320,%rsp - vmovdqu 0-128(%r13),%ymm0 - andq $-2048,%rsp - vmovdqu 32-128(%r13),%ymm1 - vmovdqu 64-128(%r13),%ymm2 - vmovdqu 96-128(%r13),%ymm3 - vmovdqu 128-128(%r13),%ymm4 - vmovdqu 160-128(%r13),%ymm5 - vmovdqu 192-128(%r13),%ymm6 - vmovdqu 224-128(%r13),%ymm7 - vmovdqu 256-128(%r13),%ymm8 - leaq 832+128(%rsp),%r13 - vmovdqu %ymm0,0-128(%r13) - vmovdqu %ymm1,32-128(%r13) - vmovdqu %ymm2,64-128(%r13) - vmovdqu %ymm3,96-128(%r13) - vmovdqu %ymm4,128-128(%r13) - vmovdqu %ymm5,160-128(%r13) - vmovdqu %ymm6,192-128(%r13) - vmovdqu %ymm7,224-128(%r13) - vmovdqu %ymm8,256-128(%r13) - vmovdqu %ymm9,288-128(%r13) - -L$sqr_1024_no_n_copy: - andq $-1024,%rsp - - vmovdqu 32-128(%rsi),%ymm1 - vmovdqu 64-128(%rsi),%ymm2 - vmovdqu 96-128(%rsi),%ymm3 - vmovdqu 128-128(%rsi),%ymm4 - vmovdqu 160-128(%rsi),%ymm5 - vmovdqu 192-128(%rsi),%ymm6 - vmovdqu 224-128(%rsi),%ymm7 - vmovdqu 256-128(%rsi),%ymm8 - - leaq 192(%rsp),%rbx - vmovdqu L$and_mask(%rip),%ymm15 - jmp L$OOP_GRANDE_SQR_1024 - -.p2align 5 -L$OOP_GRANDE_SQR_1024: - leaq 576+128(%rsp),%r9 - leaq 448(%rsp),%r12 - - - - - vpaddq %ymm1,%ymm1,%ymm1 - vpbroadcastq 0-128(%rsi),%ymm10 - vpaddq %ymm2,%ymm2,%ymm2 - vmovdqa %ymm1,0-128(%r9) - vpaddq %ymm3,%ymm3,%ymm3 - vmovdqa %ymm2,32-128(%r9) - vpaddq %ymm4,%ymm4,%ymm4 - vmovdqa %ymm3,64-128(%r9) - vpaddq %ymm5,%ymm5,%ymm5 - vmovdqa %ymm4,96-128(%r9) - vpaddq %ymm6,%ymm6,%ymm6 - vmovdqa %ymm5,128-128(%r9) - vpaddq %ymm7,%ymm7,%ymm7 - vmovdqa %ymm6,160-128(%r9) - vpaddq %ymm8,%ymm8,%ymm8 - vmovdqa %ymm7,192-128(%r9) - vpxor %ymm9,%ymm9,%ymm9 - vmovdqa %ymm8,224-128(%r9) - - vpmuludq 0-128(%rsi),%ymm10,%ymm0 - vpbroadcastq 32-128(%rsi),%ymm11 - vmovdqu %ymm9,288-192(%rbx) - vpmuludq %ymm10,%ymm1,%ymm1 - vmovdqu %ymm9,320-448(%r12) - vpmuludq %ymm10,%ymm2,%ymm2 - vmovdqu %ymm9,352-448(%r12) - vpmuludq %ymm10,%ymm3,%ymm3 - vmovdqu %ymm9,384-448(%r12) - vpmuludq %ymm10,%ymm4,%ymm4 - vmovdqu %ymm9,416-448(%r12) - vpmuludq %ymm10,%ymm5,%ymm5 - vmovdqu %ymm9,448-448(%r12) - vpmuludq %ymm10,%ymm6,%ymm6 - vmovdqu %ymm9,480-448(%r12) - vpmuludq %ymm10,%ymm7,%ymm7 - vmovdqu %ymm9,512-448(%r12) - vpmuludq %ymm10,%ymm8,%ymm8 - vpbroadcastq 64-128(%rsi),%ymm10 - vmovdqu %ymm9,544-448(%r12) - - movq %rsi,%r15 - movl $4,%r14d - jmp L$sqr_entry_1024 -.p2align 5 -L$OOP_SQR_1024: - vpbroadcastq 32-128(%r15),%ymm11 - vpmuludq 0-128(%rsi),%ymm10,%ymm0 - vpaddq 0-192(%rbx),%ymm0,%ymm0 - vpmuludq 0-128(%r9),%ymm10,%ymm1 - vpaddq 32-192(%rbx),%ymm1,%ymm1 - vpmuludq 32-128(%r9),%ymm10,%ymm2 - vpaddq 64-192(%rbx),%ymm2,%ymm2 - vpmuludq 64-128(%r9),%ymm10,%ymm3 - vpaddq 96-192(%rbx),%ymm3,%ymm3 - vpmuludq 96-128(%r9),%ymm10,%ymm4 - vpaddq 128-192(%rbx),%ymm4,%ymm4 - vpmuludq 128-128(%r9),%ymm10,%ymm5 - vpaddq 160-192(%rbx),%ymm5,%ymm5 - vpmuludq 160-128(%r9),%ymm10,%ymm6 - vpaddq 192-192(%rbx),%ymm6,%ymm6 - vpmuludq 192-128(%r9),%ymm10,%ymm7 - vpaddq 224-192(%rbx),%ymm7,%ymm7 - vpmuludq 224-128(%r9),%ymm10,%ymm8 - vpbroadcastq 64-128(%r15),%ymm10 - vpaddq 256-192(%rbx),%ymm8,%ymm8 -L$sqr_entry_1024: - vmovdqu %ymm0,0-192(%rbx) - vmovdqu %ymm1,32-192(%rbx) - - vpmuludq 32-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 32-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq 64-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 96-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 128-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq 160-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 192-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 224-128(%r9),%ymm11,%ymm0 - vpbroadcastq 96-128(%r15),%ymm11 - vpaddq 288-192(%rbx),%ymm0,%ymm0 - - vmovdqu %ymm2,64-192(%rbx) - vmovdqu %ymm3,96-192(%rbx) - - vpmuludq 64-128(%rsi),%ymm10,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 64-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 96-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq 128-128(%r9),%ymm10,%ymm13 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 160-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 192-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm0,%ymm0 - vpmuludq 224-128(%r9),%ymm10,%ymm1 - vpbroadcastq 128-128(%r15),%ymm10 - vpaddq 320-448(%r12),%ymm1,%ymm1 - - vmovdqu %ymm4,128-192(%rbx) - vmovdqu %ymm5,160-192(%rbx) - - vpmuludq 96-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm6,%ymm6 - vpmuludq 96-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm7,%ymm7 - vpmuludq 128-128(%r9),%ymm11,%ymm13 - vpaddq %ymm13,%ymm8,%ymm8 - vpmuludq 160-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm0,%ymm0 - vpmuludq 192-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm1,%ymm1 - vpmuludq 224-128(%r9),%ymm11,%ymm2 - vpbroadcastq 160-128(%r15),%ymm11 - vpaddq 352-448(%r12),%ymm2,%ymm2 - - vmovdqu %ymm6,192-192(%rbx) - vmovdqu %ymm7,224-192(%rbx) - - vpmuludq 128-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq 128-128(%r9),%ymm10,%ymm14 - vpaddq %ymm14,%ymm0,%ymm0 - vpmuludq 160-128(%r9),%ymm10,%ymm13 - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 192-128(%r9),%ymm10,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 224-128(%r9),%ymm10,%ymm3 - vpbroadcastq 192-128(%r15),%ymm10 - vpaddq 384-448(%r12),%ymm3,%ymm3 - - vmovdqu %ymm8,256-192(%rbx) - vmovdqu %ymm0,288-192(%rbx) - leaq 8(%rbx),%rbx - - vpmuludq 160-128(%rsi),%ymm11,%ymm13 - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 160-128(%r9),%ymm11,%ymm12 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 192-128(%r9),%ymm11,%ymm14 - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq 224-128(%r9),%ymm11,%ymm4 - vpbroadcastq 224-128(%r15),%ymm11 - vpaddq 416-448(%r12),%ymm4,%ymm4 - - vmovdqu %ymm1,320-448(%r12) - vmovdqu %ymm2,352-448(%r12) - - vpmuludq 192-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm3,%ymm3 - vpmuludq 192-128(%r9),%ymm10,%ymm14 - vpbroadcastq 256-128(%r15),%ymm0 - vpaddq %ymm14,%ymm4,%ymm4 - vpmuludq 224-128(%r9),%ymm10,%ymm5 - vpbroadcastq 0+8-128(%r15),%ymm10 - vpaddq 448-448(%r12),%ymm5,%ymm5 - - vmovdqu %ymm3,384-448(%r12) - vmovdqu %ymm4,416-448(%r12) - leaq 8(%r15),%r15 - - vpmuludq 224-128(%rsi),%ymm11,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 224-128(%r9),%ymm11,%ymm6 - vpaddq 480-448(%r12),%ymm6,%ymm6 - - vpmuludq 256-128(%rsi),%ymm0,%ymm7 - vmovdqu %ymm5,448-448(%r12) - vpaddq 512-448(%r12),%ymm7,%ymm7 - vmovdqu %ymm6,480-448(%r12) - vmovdqu %ymm7,512-448(%r12) - leaq 8(%r12),%r12 - - decl %r14d - jnz L$OOP_SQR_1024 - - vmovdqu 256(%rsp),%ymm8 - vmovdqu 288(%rsp),%ymm1 - vmovdqu 320(%rsp),%ymm2 - leaq 192(%rsp),%rbx - - vpsrlq $29,%ymm8,%ymm14 - vpand %ymm15,%ymm8,%ymm8 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - - vpermq $0x93,%ymm14,%ymm14 - vpxor %ymm9,%ymm9,%ymm9 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm8,%ymm8 - vpblendd $3,%ymm11,%ymm9,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vpaddq %ymm11,%ymm2,%ymm2 - vmovdqu %ymm1,288-192(%rbx) - vmovdqu %ymm2,320-192(%rbx) - - movq (%rsp),%rax - movq 8(%rsp),%r10 - movq 16(%rsp),%r11 - movq 24(%rsp),%r12 - vmovdqu 32(%rsp),%ymm1 - vmovdqu 64-192(%rbx),%ymm2 - vmovdqu 96-192(%rbx),%ymm3 - vmovdqu 128-192(%rbx),%ymm4 - vmovdqu 160-192(%rbx),%ymm5 - vmovdqu 192-192(%rbx),%ymm6 - vmovdqu 224-192(%rbx),%ymm7 - - movq %rax,%r9 - imull %ecx,%eax - andl $0x1fffffff,%eax - vmovd %eax,%xmm12 - - movq %rax,%rdx - imulq -128(%r13),%rax - vpbroadcastq %xmm12,%ymm12 - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%r13),%rax - shrq $29,%r9 - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%r13),%rax - addq %r9,%r10 - addq %rax,%r11 - imulq 24-128(%r13),%rdx - addq %rdx,%r12 - - movq %r10,%rax - imull %ecx,%eax - andl $0x1fffffff,%eax - - movl $9,%r14d - jmp L$OOP_REDUCE_1024 - -.p2align 5 -L$OOP_REDUCE_1024: - vmovd %eax,%xmm13 - vpbroadcastq %xmm13,%ymm13 - - vpmuludq 32-128(%r13),%ymm12,%ymm10 - movq %rax,%rdx - imulq -128(%r13),%rax - vpaddq %ymm10,%ymm1,%ymm1 - addq %rax,%r10 - vpmuludq 64-128(%r13),%ymm12,%ymm14 - movq %rdx,%rax - imulq 8-128(%r13),%rax - vpaddq %ymm14,%ymm2,%ymm2 - vpmuludq 96-128(%r13),%ymm12,%ymm11 -.byte 0x67 - addq %rax,%r11 -.byte 0x67 - movq %rdx,%rax - imulq 16-128(%r13),%rax - shrq $29,%r10 - vpaddq %ymm11,%ymm3,%ymm3 - vpmuludq 128-128(%r13),%ymm12,%ymm10 - addq %rax,%r12 - addq %r10,%r11 - vpaddq %ymm10,%ymm4,%ymm4 - vpmuludq 160-128(%r13),%ymm12,%ymm14 - movq %r11,%rax - imull %ecx,%eax - vpaddq %ymm14,%ymm5,%ymm5 - vpmuludq 192-128(%r13),%ymm12,%ymm11 - andl $0x1fffffff,%eax - vpaddq %ymm11,%ymm6,%ymm6 - vpmuludq 224-128(%r13),%ymm12,%ymm10 - vpaddq %ymm10,%ymm7,%ymm7 - vpmuludq 256-128(%r13),%ymm12,%ymm14 - vmovd %eax,%xmm12 - - vpaddq %ymm14,%ymm8,%ymm8 - - vpbroadcastq %xmm12,%ymm12 - - vpmuludq 32-8-128(%r13),%ymm13,%ymm11 - vmovdqu 96-8-128(%r13),%ymm14 - movq %rax,%rdx - imulq -128(%r13),%rax - vpaddq %ymm11,%ymm1,%ymm1 - vpmuludq 64-8-128(%r13),%ymm13,%ymm10 - vmovdqu 128-8-128(%r13),%ymm11 - addq %rax,%r11 - movq %rdx,%rax - imulq 8-128(%r13),%rax - vpaddq %ymm10,%ymm2,%ymm2 - addq %r12,%rax - shrq $29,%r11 - vpmuludq %ymm13,%ymm14,%ymm14 - vmovdqu 160-8-128(%r13),%ymm10 - addq %r11,%rax - vpaddq %ymm14,%ymm3,%ymm3 - vpmuludq %ymm13,%ymm11,%ymm11 - vmovdqu 192-8-128(%r13),%ymm14 -.byte 0x67 - movq %rax,%r12 - imull %ecx,%eax - vpaddq %ymm11,%ymm4,%ymm4 - vpmuludq %ymm13,%ymm10,%ymm10 -.byte 0xc4,0x41,0x7e,0x6f,0x9d,0x58,0x00,0x00,0x00 - andl $0x1fffffff,%eax - vpaddq %ymm10,%ymm5,%ymm5 - vpmuludq %ymm13,%ymm14,%ymm14 - vmovdqu 256-8-128(%r13),%ymm10 - vpaddq %ymm14,%ymm6,%ymm6 - vpmuludq %ymm13,%ymm11,%ymm11 - vmovdqu 288-8-128(%r13),%ymm9 - vmovd %eax,%xmm0 - imulq -128(%r13),%rax - vpaddq %ymm11,%ymm7,%ymm7 - vpmuludq %ymm13,%ymm10,%ymm10 - vmovdqu 32-16-128(%r13),%ymm14 - vpbroadcastq %xmm0,%ymm0 - vpaddq %ymm10,%ymm8,%ymm8 - vpmuludq %ymm13,%ymm9,%ymm9 - vmovdqu 64-16-128(%r13),%ymm11 - addq %rax,%r12 - - vmovdqu 32-24-128(%r13),%ymm13 - vpmuludq %ymm12,%ymm14,%ymm14 - vmovdqu 96-16-128(%r13),%ymm10 - vpaddq %ymm14,%ymm1,%ymm1 - vpmuludq %ymm0,%ymm13,%ymm13 - vpmuludq %ymm12,%ymm11,%ymm11 -.byte 0xc4,0x41,0x7e,0x6f,0xb5,0xf0,0xff,0xff,0xff - vpaddq %ymm1,%ymm13,%ymm13 - vpaddq %ymm11,%ymm2,%ymm2 - vpmuludq %ymm12,%ymm10,%ymm10 - vmovdqu 160-16-128(%r13),%ymm11 -.byte 0x67 - vmovq %xmm13,%rax - vmovdqu %ymm13,(%rsp) - vpaddq %ymm10,%ymm3,%ymm3 - vpmuludq %ymm12,%ymm14,%ymm14 - vmovdqu 192-16-128(%r13),%ymm10 - vpaddq %ymm14,%ymm4,%ymm4 - vpmuludq %ymm12,%ymm11,%ymm11 - vmovdqu 224-16-128(%r13),%ymm14 - vpaddq %ymm11,%ymm5,%ymm5 - vpmuludq %ymm12,%ymm10,%ymm10 - vmovdqu 256-16-128(%r13),%ymm11 - vpaddq %ymm10,%ymm6,%ymm6 - vpmuludq %ymm12,%ymm14,%ymm14 - shrq $29,%r12 - vmovdqu 288-16-128(%r13),%ymm10 - addq %r12,%rax - vpaddq %ymm14,%ymm7,%ymm7 - vpmuludq %ymm12,%ymm11,%ymm11 - - movq %rax,%r9 - imull %ecx,%eax - vpaddq %ymm11,%ymm8,%ymm8 - vpmuludq %ymm12,%ymm10,%ymm10 - andl $0x1fffffff,%eax - vmovd %eax,%xmm12 - vmovdqu 96-24-128(%r13),%ymm11 -.byte 0x67 - vpaddq %ymm10,%ymm9,%ymm9 - vpbroadcastq %xmm12,%ymm12 - - vpmuludq 64-24-128(%r13),%ymm0,%ymm14 - vmovdqu 128-24-128(%r13),%ymm10 - movq %rax,%rdx - imulq -128(%r13),%rax - movq 8(%rsp),%r10 - vpaddq %ymm14,%ymm2,%ymm1 - vpmuludq %ymm0,%ymm11,%ymm11 - vmovdqu 160-24-128(%r13),%ymm14 - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%r13),%rax -.byte 0x67 - shrq $29,%r9 - movq 16(%rsp),%r11 - vpaddq %ymm11,%ymm3,%ymm2 - vpmuludq %ymm0,%ymm10,%ymm10 - vmovdqu 192-24-128(%r13),%ymm11 - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%r13),%rax - vpaddq %ymm10,%ymm4,%ymm3 - vpmuludq %ymm0,%ymm14,%ymm14 - vmovdqu 224-24-128(%r13),%ymm10 - imulq 24-128(%r13),%rdx - addq %rax,%r11 - leaq (%r9,%r10,1),%rax - vpaddq %ymm14,%ymm5,%ymm4 - vpmuludq %ymm0,%ymm11,%ymm11 - vmovdqu 256-24-128(%r13),%ymm14 - movq %rax,%r10 - imull %ecx,%eax - vpmuludq %ymm0,%ymm10,%ymm10 - vpaddq %ymm11,%ymm6,%ymm5 - vmovdqu 288-24-128(%r13),%ymm11 - andl $0x1fffffff,%eax - vpaddq %ymm10,%ymm7,%ymm6 - vpmuludq %ymm0,%ymm14,%ymm14 - addq 24(%rsp),%rdx - vpaddq %ymm14,%ymm8,%ymm7 - vpmuludq %ymm0,%ymm11,%ymm11 - vpaddq %ymm11,%ymm9,%ymm8 - vmovq %r12,%xmm9 - movq %rdx,%r12 - - decl %r14d - jnz L$OOP_REDUCE_1024 - leaq 448(%rsp),%r12 - vpaddq %ymm9,%ymm13,%ymm0 - vpxor %ymm9,%ymm9,%ymm9 - - vpaddq 288-192(%rbx),%ymm0,%ymm0 - vpaddq 320-448(%r12),%ymm1,%ymm1 - vpaddq 352-448(%r12),%ymm2,%ymm2 - vpaddq 384-448(%r12),%ymm3,%ymm3 - vpaddq 416-448(%r12),%ymm4,%ymm4 - vpaddq 448-448(%r12),%ymm5,%ymm5 - vpaddq 480-448(%r12),%ymm6,%ymm6 - vpaddq 512-448(%r12),%ymm7,%ymm7 - vpaddq 544-448(%r12),%ymm8,%ymm8 - - vpsrlq $29,%ymm0,%ymm14 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm12,%ymm12 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm13,%ymm13 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm0,%ymm0 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm2,%ymm2 - vpblendd $3,%ymm13,%ymm9,%ymm13 - vpaddq %ymm12,%ymm3,%ymm3 - vpaddq %ymm13,%ymm4,%ymm4 - - vpsrlq $29,%ymm0,%ymm14 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm11 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm12,%ymm12 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm13,%ymm13 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm0,%ymm0 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm1,%ymm1 - vmovdqu %ymm0,0-128(%rdi) - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm2,%ymm2 - vmovdqu %ymm1,32-128(%rdi) - vpblendd $3,%ymm13,%ymm9,%ymm13 - vpaddq %ymm12,%ymm3,%ymm3 - vmovdqu %ymm2,64-128(%rdi) - vpaddq %ymm13,%ymm4,%ymm4 - vmovdqu %ymm3,96-128(%rdi) - vpsrlq $29,%ymm4,%ymm14 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm11 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm13,%ymm13 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm4,%ymm4 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm5,%ymm5 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm6,%ymm6 - vpblendd $3,%ymm13,%ymm0,%ymm13 - vpaddq %ymm12,%ymm7,%ymm7 - vpaddq %ymm13,%ymm8,%ymm8 - - vpsrlq $29,%ymm4,%ymm14 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm11 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm12 - vpermq $0x93,%ymm14,%ymm14 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm13 - vpermq $0x93,%ymm11,%ymm11 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm13,%ymm13 - - vpblendd $3,%ymm9,%ymm14,%ymm10 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm14,%ymm11,%ymm14 - vpaddq %ymm10,%ymm4,%ymm4 - vpblendd $3,%ymm11,%ymm12,%ymm11 - vpaddq %ymm14,%ymm5,%ymm5 - vmovdqu %ymm4,128-128(%rdi) - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm11,%ymm6,%ymm6 - vmovdqu %ymm5,160-128(%rdi) - vpblendd $3,%ymm13,%ymm0,%ymm13 - vpaddq %ymm12,%ymm7,%ymm7 - vmovdqu %ymm6,192-128(%rdi) - vpaddq %ymm13,%ymm8,%ymm8 - vmovdqu %ymm7,224-128(%rdi) - vmovdqu %ymm8,256-128(%rdi) - - movq %rdi,%rsi - decl %r8d - jne L$OOP_GRANDE_SQR_1024 - - vzeroall - movq %rbp,%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$sqr_1024_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_1024_mul_avx2 - -.p2align 6 -_rsaz_1024_mul_avx2: - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rax,%rbp - vzeroall - movq %rdx,%r13 - subq $64,%rsp - - - - - - -.byte 0x67,0x67 - movq %rsi,%r15 - andq $4095,%r15 - addq $320,%r15 - shrq $12,%r15 - movq %rsi,%r15 - cmovnzq %r13,%rsi - cmovnzq %r15,%r13 - - movq %rcx,%r15 - subq $-128,%rsi - subq $-128,%rcx - subq $-128,%rdi - - andq $4095,%r15 - addq $320,%r15 -.byte 0x67,0x67 - shrq $12,%r15 - jz L$mul_1024_no_n_copy - - - - - - subq $320,%rsp - vmovdqu 0-128(%rcx),%ymm0 - andq $-512,%rsp - vmovdqu 32-128(%rcx),%ymm1 - vmovdqu 64-128(%rcx),%ymm2 - vmovdqu 96-128(%rcx),%ymm3 - vmovdqu 128-128(%rcx),%ymm4 - vmovdqu 160-128(%rcx),%ymm5 - vmovdqu 192-128(%rcx),%ymm6 - vmovdqu 224-128(%rcx),%ymm7 - vmovdqu 256-128(%rcx),%ymm8 - leaq 64+128(%rsp),%rcx - vmovdqu %ymm0,0-128(%rcx) - vpxor %ymm0,%ymm0,%ymm0 - vmovdqu %ymm1,32-128(%rcx) - vpxor %ymm1,%ymm1,%ymm1 - vmovdqu %ymm2,64-128(%rcx) - vpxor %ymm2,%ymm2,%ymm2 - vmovdqu %ymm3,96-128(%rcx) - vpxor %ymm3,%ymm3,%ymm3 - vmovdqu %ymm4,128-128(%rcx) - vpxor %ymm4,%ymm4,%ymm4 - vmovdqu %ymm5,160-128(%rcx) - vpxor %ymm5,%ymm5,%ymm5 - vmovdqu %ymm6,192-128(%rcx) - vpxor %ymm6,%ymm6,%ymm6 - vmovdqu %ymm7,224-128(%rcx) - vpxor %ymm7,%ymm7,%ymm7 - vmovdqu %ymm8,256-128(%rcx) - vmovdqa %ymm0,%ymm8 - vmovdqu %ymm9,288-128(%rcx) -L$mul_1024_no_n_copy: - andq $-64,%rsp - - movq (%r13),%rbx - vpbroadcastq (%r13),%ymm10 - vmovdqu %ymm0,(%rsp) - xorq %r9,%r9 -.byte 0x67 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r12,%r12 - - vmovdqu L$and_mask(%rip),%ymm15 - movl $9,%r14d - vmovdqu %ymm9,288-128(%rdi) - jmp L$oop_mul_1024 - -.p2align 5 -L$oop_mul_1024: - vpsrlq $29,%ymm3,%ymm9 - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %r9,%rax - movq %rbx,%r10 - imulq 8-128(%rsi),%r10 - addq 8(%rsp),%r10 - - movq %rax,%r9 - imull %r8d,%eax - andl $0x1fffffff,%eax - - movq %rbx,%r11 - imulq 16-128(%rsi),%r11 - addq 16(%rsp),%r11 - - movq %rbx,%r12 - imulq 24-128(%rsi),%r12 - addq 24(%rsp),%r12 - vpmuludq 32-128(%rsi),%ymm10,%ymm0 - vmovd %eax,%xmm11 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq 64-128(%rsi),%ymm10,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq 96-128(%rsi),%ymm10,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq 128-128(%rsi),%ymm10,%ymm0 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq 160-128(%rsi),%ymm10,%ymm12 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq 192-128(%rsi),%ymm10,%ymm13 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq 224-128(%rsi),%ymm10,%ymm0 - vpermq $0x93,%ymm9,%ymm9 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq 256-128(%rsi),%ymm10,%ymm12 - vpbroadcastq 8(%r13),%ymm10 - vpaddq %ymm12,%ymm8,%ymm8 - - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r9 - movq %rdx,%rax - imulq 8-128(%rcx),%rax - addq %rax,%r10 - movq %rdx,%rax - imulq 16-128(%rcx),%rax - addq %rax,%r11 - shrq $29,%r9 - imulq 24-128(%rcx),%rdx - addq %rdx,%r12 - addq %r9,%r10 - - vpmuludq 32-128(%rcx),%ymm11,%ymm13 - vmovq %xmm10,%rbx - vpaddq %ymm13,%ymm1,%ymm1 - vpmuludq 64-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm0,%ymm2,%ymm2 - vpmuludq 96-128(%rcx),%ymm11,%ymm12 - vpaddq %ymm12,%ymm3,%ymm3 - vpmuludq 128-128(%rcx),%ymm11,%ymm13 - vpaddq %ymm13,%ymm4,%ymm4 - vpmuludq 160-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm0,%ymm5,%ymm5 - vpmuludq 192-128(%rcx),%ymm11,%ymm12 - vpaddq %ymm12,%ymm6,%ymm6 - vpmuludq 224-128(%rcx),%ymm11,%ymm13 - vpblendd $3,%ymm14,%ymm9,%ymm12 - vpaddq %ymm13,%ymm7,%ymm7 - vpmuludq 256-128(%rcx),%ymm11,%ymm0 - vpaddq %ymm12,%ymm3,%ymm3 - vpaddq %ymm0,%ymm8,%ymm8 - - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %rax,%r10 - vmovdqu -8+32-128(%rsi),%ymm12 - movq %rbx,%rax - imulq 8-128(%rsi),%rax - addq %rax,%r11 - vmovdqu -8+64-128(%rsi),%ymm13 - - movq %r10,%rax - vpblendd $0xfc,%ymm14,%ymm9,%ymm9 - imull %r8d,%eax - vpaddq %ymm9,%ymm4,%ymm4 - andl $0x1fffffff,%eax - - imulq 16-128(%rsi),%rbx - addq %rbx,%r12 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovd %eax,%xmm11 - vmovdqu -8+96-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -8+128-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -8+160-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -8+192-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -8+224-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -8+256-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -8+288-128(%rsi),%ymm9 - vpaddq %ymm12,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm13,%ymm13 - vpaddq %ymm13,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm9,%ymm9 - vpbroadcastq 16(%r13),%ymm10 - - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r10 - vmovdqu -8+32-128(%rcx),%ymm0 - movq %rdx,%rax - imulq 8-128(%rcx),%rax - addq %rax,%r11 - vmovdqu -8+64-128(%rcx),%ymm12 - shrq $29,%r10 - imulq 16-128(%rcx),%rdx - addq %rdx,%r12 - addq %r10,%r11 - - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -8+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -8+128-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -8+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -8+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -8+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -8+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -8+288-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm11,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm11,%ymm13,%ymm13 - vpaddq %ymm13,%ymm9,%ymm9 - - vmovdqu -16+32-128(%rsi),%ymm0 - movq %rbx,%rax - imulq -128(%rsi),%rax - addq %r11,%rax - - vmovdqu -16+64-128(%rsi),%ymm12 - movq %rax,%r11 - imull %r8d,%eax - andl $0x1fffffff,%eax - - imulq 8-128(%rsi),%rbx - addq %rbx,%r12 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovd %eax,%xmm11 - vmovdqu -16+96-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm12,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -16+128-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -16+160-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -16+192-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -16+224-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -16+256-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -16+288-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq 24(%r13),%ymm10 - vpaddq %ymm13,%ymm9,%ymm9 - - vmovdqu -16+32-128(%rcx),%ymm0 - movq %rax,%rdx - imulq -128(%rcx),%rax - addq %rax,%r11 - vmovdqu -16+64-128(%rcx),%ymm12 - imulq 8-128(%rcx),%rdx - addq %rdx,%r12 - shrq $29,%r11 - - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -16+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -16+128-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -16+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -16+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -16+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -16+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -16+288-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -24+32-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+64-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm9,%ymm9 - - addq %r11,%r12 - imulq -128(%rsi),%rbx - addq %rbx,%r12 - - movq %r12,%rax - imull %r8d,%eax - andl $0x1fffffff,%eax - - vpmuludq %ymm10,%ymm0,%ymm0 - vmovd %eax,%xmm11 - vmovdqu -24+96-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm1,%ymm1 - vpmuludq %ymm10,%ymm12,%ymm12 - vpbroadcastq %xmm11,%ymm11 - vmovdqu -24+128-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm2,%ymm2 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -24+160-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm3,%ymm3 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -24+192-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm4,%ymm4 - vpmuludq %ymm10,%ymm12,%ymm12 - vmovdqu -24+224-128(%rsi),%ymm0 - vpaddq %ymm12,%ymm5,%ymm5 - vpmuludq %ymm10,%ymm13,%ymm13 - vmovdqu -24+256-128(%rsi),%ymm12 - vpaddq %ymm13,%ymm6,%ymm6 - vpmuludq %ymm10,%ymm0,%ymm0 - vmovdqu -24+288-128(%rsi),%ymm13 - vpaddq %ymm0,%ymm7,%ymm7 - vpmuludq %ymm10,%ymm12,%ymm12 - vpaddq %ymm12,%ymm8,%ymm8 - vpmuludq %ymm10,%ymm13,%ymm13 - vpbroadcastq 32(%r13),%ymm10 - vpaddq %ymm13,%ymm9,%ymm9 - addq $32,%r13 - - vmovdqu -24+32-128(%rcx),%ymm0 - imulq -128(%rcx),%rax - addq %rax,%r12 - shrq $29,%r12 - - vmovdqu -24+64-128(%rcx),%ymm12 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovq %xmm10,%rbx - vmovdqu -24+96-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm1,%ymm0 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu %ymm0,(%rsp) - vpaddq %ymm12,%ymm2,%ymm1 - vmovdqu -24+128-128(%rcx),%ymm0 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+160-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm3,%ymm2 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -24+192-128(%rcx),%ymm13 - vpaddq %ymm0,%ymm4,%ymm3 - vpmuludq %ymm11,%ymm12,%ymm12 - vmovdqu -24+224-128(%rcx),%ymm0 - vpaddq %ymm12,%ymm5,%ymm4 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovdqu -24+256-128(%rcx),%ymm12 - vpaddq %ymm13,%ymm6,%ymm5 - vpmuludq %ymm11,%ymm0,%ymm0 - vmovdqu -24+288-128(%rcx),%ymm13 - movq %r12,%r9 - vpaddq %ymm0,%ymm7,%ymm6 - vpmuludq %ymm11,%ymm12,%ymm12 - addq (%rsp),%r9 - vpaddq %ymm12,%ymm8,%ymm7 - vpmuludq %ymm11,%ymm13,%ymm13 - vmovq %r12,%xmm12 - vpaddq %ymm13,%ymm9,%ymm8 - - decl %r14d - jnz L$oop_mul_1024 - vpaddq (%rsp),%ymm12,%ymm0 - - vpsrlq $29,%ymm0,%ymm12 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm13 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm10,%ymm10 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpermq $0x93,%ymm11,%ymm11 - vpaddq %ymm9,%ymm0,%ymm0 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm1,%ymm1 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm2,%ymm2 - vpblendd $3,%ymm11,%ymm14,%ymm11 - vpaddq %ymm10,%ymm3,%ymm3 - vpaddq %ymm11,%ymm4,%ymm4 - - vpsrlq $29,%ymm0,%ymm12 - vpand %ymm15,%ymm0,%ymm0 - vpsrlq $29,%ymm1,%ymm13 - vpand %ymm15,%ymm1,%ymm1 - vpsrlq $29,%ymm2,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm2,%ymm2 - vpsrlq $29,%ymm3,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm3,%ymm3 - vpermq $0x93,%ymm10,%ymm10 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm11,%ymm11 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm0,%ymm0 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm1,%ymm1 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm2,%ymm2 - vpblendd $3,%ymm11,%ymm14,%ymm11 - vpaddq %ymm10,%ymm3,%ymm3 - vpaddq %ymm11,%ymm4,%ymm4 - - vmovdqu %ymm0,0-128(%rdi) - vmovdqu %ymm1,32-128(%rdi) - vmovdqu %ymm2,64-128(%rdi) - vmovdqu %ymm3,96-128(%rdi) - vpsrlq $29,%ymm4,%ymm12 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm13 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm10,%ymm10 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm4,%ymm4 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm5,%ymm5 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm6,%ymm6 - vpblendd $3,%ymm11,%ymm0,%ymm11 - vpaddq %ymm10,%ymm7,%ymm7 - vpaddq %ymm11,%ymm8,%ymm8 - - vpsrlq $29,%ymm4,%ymm12 - vpand %ymm15,%ymm4,%ymm4 - vpsrlq $29,%ymm5,%ymm13 - vpand %ymm15,%ymm5,%ymm5 - vpsrlq $29,%ymm6,%ymm10 - vpermq $0x93,%ymm12,%ymm12 - vpand %ymm15,%ymm6,%ymm6 - vpsrlq $29,%ymm7,%ymm11 - vpermq $0x93,%ymm13,%ymm13 - vpand %ymm15,%ymm7,%ymm7 - vpsrlq $29,%ymm8,%ymm0 - vpermq $0x93,%ymm10,%ymm10 - vpand %ymm15,%ymm8,%ymm8 - vpermq $0x93,%ymm11,%ymm11 - - vpblendd $3,%ymm14,%ymm12,%ymm9 - vpermq $0x93,%ymm0,%ymm0 - vpblendd $3,%ymm12,%ymm13,%ymm12 - vpaddq %ymm9,%ymm4,%ymm4 - vpblendd $3,%ymm13,%ymm10,%ymm13 - vpaddq %ymm12,%ymm5,%ymm5 - vpblendd $3,%ymm10,%ymm11,%ymm10 - vpaddq %ymm13,%ymm6,%ymm6 - vpblendd $3,%ymm11,%ymm0,%ymm11 - vpaddq %ymm10,%ymm7,%ymm7 - vpaddq %ymm11,%ymm8,%ymm8 - - vmovdqu %ymm4,128-128(%rdi) - vmovdqu %ymm5,160-128(%rdi) - vmovdqu %ymm6,192-128(%rdi) - vmovdqu %ymm7,224-128(%rdi) - vmovdqu %ymm8,256-128(%rdi) - vzeroupper - - movq %rbp,%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_1024_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_1024_red2norm_avx2 - -.p2align 5 -_rsaz_1024_red2norm_avx2: - subq $-128,%rsi - xorq %rax,%rax - movq -128(%rsi),%r8 - movq -120(%rsi),%r9 - movq -112(%rsi),%r10 - shlq $0,%r8 - shlq $29,%r9 - movq %r10,%r11 - shlq $58,%r10 - shrq $6,%r11 - addq %r8,%rax - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,0(%rdi) - movq %r11,%rax - movq -104(%rsi),%r8 - movq -96(%rsi),%r9 - shlq $23,%r8 - movq %r9,%r10 - shlq $52,%r9 - shrq $12,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,8(%rdi) - movq %r10,%rax - movq -88(%rsi),%r11 - movq -80(%rsi),%r8 - shlq $17,%r11 - movq %r8,%r9 - shlq $46,%r8 - shrq $18,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,16(%rdi) - movq %r9,%rax - movq -72(%rsi),%r10 - movq -64(%rsi),%r11 - shlq $11,%r10 - movq %r11,%r8 - shlq $40,%r11 - shrq $24,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,24(%rdi) - movq %r8,%rax - movq -56(%rsi),%r9 - movq -48(%rsi),%r10 - movq -40(%rsi),%r11 - shlq $5,%r9 - shlq $34,%r10 - movq %r11,%r8 - shlq $63,%r11 - shrq $1,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,32(%rdi) - movq %r8,%rax - movq -32(%rsi),%r9 - movq -24(%rsi),%r10 - shlq $28,%r9 - movq %r10,%r11 - shlq $57,%r10 - shrq $7,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,40(%rdi) - movq %r11,%rax - movq -16(%rsi),%r8 - movq -8(%rsi),%r9 - shlq $22,%r8 - movq %r9,%r10 - shlq $51,%r9 - shrq $13,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,48(%rdi) - movq %r10,%rax - movq 0(%rsi),%r11 - movq 8(%rsi),%r8 - shlq $16,%r11 - movq %r8,%r9 - shlq $45,%r8 - shrq $19,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,56(%rdi) - movq %r9,%rax - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - shlq $10,%r10 - movq %r11,%r8 - shlq $39,%r11 - shrq $25,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,64(%rdi) - movq %r8,%rax - movq 32(%rsi),%r9 - movq 40(%rsi),%r10 - movq 48(%rsi),%r11 - shlq $4,%r9 - shlq $33,%r10 - movq %r11,%r8 - shlq $62,%r11 - shrq $2,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,72(%rdi) - movq %r8,%rax - movq 56(%rsi),%r9 - movq 64(%rsi),%r10 - shlq $27,%r9 - movq %r10,%r11 - shlq $56,%r10 - shrq $8,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,80(%rdi) - movq %r11,%rax - movq 72(%rsi),%r8 - movq 80(%rsi),%r9 - shlq $21,%r8 - movq %r9,%r10 - shlq $50,%r9 - shrq $14,%r10 - addq %r8,%rax - addq %r9,%rax - adcq $0,%r10 - movq %rax,88(%rdi) - movq %r10,%rax - movq 88(%rsi),%r11 - movq 96(%rsi),%r8 - shlq $15,%r11 - movq %r8,%r9 - shlq $44,%r8 - shrq $20,%r9 - addq %r11,%rax - addq %r8,%rax - adcq $0,%r9 - movq %rax,96(%rdi) - movq %r9,%rax - movq 104(%rsi),%r10 - movq 112(%rsi),%r11 - shlq $9,%r10 - movq %r11,%r8 - shlq $38,%r11 - shrq $26,%r8 - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,104(%rdi) - movq %r8,%rax - movq 120(%rsi),%r9 - movq 128(%rsi),%r10 - movq 136(%rsi),%r11 - shlq $3,%r9 - shlq $32,%r10 - movq %r11,%r8 - shlq $61,%r11 - shrq $3,%r8 - addq %r9,%rax - addq %r10,%rax - addq %r11,%rax - adcq $0,%r8 - movq %rax,112(%rdi) - movq %r8,%rax - movq 144(%rsi),%r9 - movq 152(%rsi),%r10 - shlq $26,%r9 - movq %r10,%r11 - shlq $55,%r10 - shrq $9,%r11 - addq %r9,%rax - addq %r10,%rax - adcq $0,%r11 - movq %rax,120(%rdi) - movq %r11,%rax - .byte 0xf3,0xc3 - - -.globl _rsaz_1024_norm2red_avx2 - -.p2align 5 -_rsaz_1024_norm2red_avx2: - subq $-128,%rdi - movq (%rsi),%r8 - movl $0x1fffffff,%eax - movq 8(%rsi),%r9 - movq %r8,%r11 - shrq $0,%r11 - andq %rax,%r11 - movq %r11,-128(%rdi) - movq %r8,%r10 - shrq $29,%r10 - andq %rax,%r10 - movq %r10,-120(%rdi) - shrdq $58,%r9,%r8 - andq %rax,%r8 - movq %r8,-112(%rdi) - movq 16(%rsi),%r10 - movq %r9,%r8 - shrq $23,%r8 - andq %rax,%r8 - movq %r8,-104(%rdi) - shrdq $52,%r10,%r9 - andq %rax,%r9 - movq %r9,-96(%rdi) - movq 24(%rsi),%r11 - movq %r10,%r9 - shrq $17,%r9 - andq %rax,%r9 - movq %r9,-88(%rdi) - shrdq $46,%r11,%r10 - andq %rax,%r10 - movq %r10,-80(%rdi) - movq 32(%rsi),%r8 - movq %r11,%r10 - shrq $11,%r10 - andq %rax,%r10 - movq %r10,-72(%rdi) - shrdq $40,%r8,%r11 - andq %rax,%r11 - movq %r11,-64(%rdi) - movq 40(%rsi),%r9 - movq %r8,%r11 - shrq $5,%r11 - andq %rax,%r11 - movq %r11,-56(%rdi) - movq %r8,%r10 - shrq $34,%r10 - andq %rax,%r10 - movq %r10,-48(%rdi) - shrdq $63,%r9,%r8 - andq %rax,%r8 - movq %r8,-40(%rdi) - movq 48(%rsi),%r10 - movq %r9,%r8 - shrq $28,%r8 - andq %rax,%r8 - movq %r8,-32(%rdi) - shrdq $57,%r10,%r9 - andq %rax,%r9 - movq %r9,-24(%rdi) - movq 56(%rsi),%r11 - movq %r10,%r9 - shrq $22,%r9 - andq %rax,%r9 - movq %r9,-16(%rdi) - shrdq $51,%r11,%r10 - andq %rax,%r10 - movq %r10,-8(%rdi) - movq 64(%rsi),%r8 - movq %r11,%r10 - shrq $16,%r10 - andq %rax,%r10 - movq %r10,0(%rdi) - shrdq $45,%r8,%r11 - andq %rax,%r11 - movq %r11,8(%rdi) - movq 72(%rsi),%r9 - movq %r8,%r11 - shrq $10,%r11 - andq %rax,%r11 - movq %r11,16(%rdi) - shrdq $39,%r9,%r8 - andq %rax,%r8 - movq %r8,24(%rdi) - movq 80(%rsi),%r10 - movq %r9,%r8 - shrq $4,%r8 - andq %rax,%r8 - movq %r8,32(%rdi) - movq %r9,%r11 - shrq $33,%r11 - andq %rax,%r11 - movq %r11,40(%rdi) - shrdq $62,%r10,%r9 - andq %rax,%r9 - movq %r9,48(%rdi) - movq 88(%rsi),%r11 - movq %r10,%r9 - shrq $27,%r9 - andq %rax,%r9 - movq %r9,56(%rdi) - shrdq $56,%r11,%r10 - andq %rax,%r10 - movq %r10,64(%rdi) - movq 96(%rsi),%r8 - movq %r11,%r10 - shrq $21,%r10 - andq %rax,%r10 - movq %r10,72(%rdi) - shrdq $50,%r8,%r11 - andq %rax,%r11 - movq %r11,80(%rdi) - movq 104(%rsi),%r9 - movq %r8,%r11 - shrq $15,%r11 - andq %rax,%r11 - movq %r11,88(%rdi) - shrdq $44,%r9,%r8 - andq %rax,%r8 - movq %r8,96(%rdi) - movq 112(%rsi),%r10 - movq %r9,%r8 - shrq $9,%r8 - andq %rax,%r8 - movq %r8,104(%rdi) - shrdq $38,%r10,%r9 - andq %rax,%r9 - movq %r9,112(%rdi) - movq 120(%rsi),%r11 - movq %r10,%r9 - shrq $3,%r9 - andq %rax,%r9 - movq %r9,120(%rdi) - movq %r10,%r8 - shrq $32,%r8 - andq %rax,%r8 - movq %r8,128(%rdi) - shrdq $61,%r11,%r10 - andq %rax,%r10 - movq %r10,136(%rdi) - xorq %r8,%r8 - movq %r11,%r10 - shrq $26,%r10 - andq %rax,%r10 - movq %r10,144(%rdi) - shrdq $55,%r8,%r11 - andq %rax,%r11 - movq %r11,152(%rdi) - movq %r8,160(%rdi) - movq %r8,168(%rdi) - movq %r8,176(%rdi) - movq %r8,184(%rdi) - .byte 0xf3,0xc3 - -.globl _rsaz_1024_scatter5_avx2 - -.p2align 5 -_rsaz_1024_scatter5_avx2: - vzeroupper - vmovdqu L$scatter_permd(%rip),%ymm5 - shll $4,%edx - leaq (%rdi,%rdx,1),%rdi - movl $9,%eax - jmp L$oop_scatter_1024 - -.p2align 5 -L$oop_scatter_1024: - vmovdqu (%rsi),%ymm0 - leaq 32(%rsi),%rsi - vpermd %ymm0,%ymm5,%ymm0 - vmovdqu %xmm0,(%rdi) - leaq 512(%rdi),%rdi - decl %eax - jnz L$oop_scatter_1024 - - vzeroupper - .byte 0xf3,0xc3 - - -.globl _rsaz_1024_gather5_avx2 - -.p2align 5 -_rsaz_1024_gather5_avx2: - vzeroupper - movq %rsp,%r11 - leaq -256(%rsp),%rsp - andq $-32,%rsp - leaq L$inc(%rip),%r10 - leaq -128(%rsp),%rax - - vmovd %edx,%xmm4 - vmovdqa (%r10),%ymm0 - vmovdqa 32(%r10),%ymm1 - vmovdqa 64(%r10),%ymm5 - vpbroadcastd %xmm4,%ymm4 - - vpaddd %ymm5,%ymm0,%ymm2 - vpcmpeqd %ymm4,%ymm0,%ymm0 - vpaddd %ymm5,%ymm1,%ymm3 - vpcmpeqd %ymm4,%ymm1,%ymm1 - vmovdqa %ymm0,0+128(%rax) - vpaddd %ymm5,%ymm2,%ymm0 - vpcmpeqd %ymm4,%ymm2,%ymm2 - vmovdqa %ymm1,32+128(%rax) - vpaddd %ymm5,%ymm3,%ymm1 - vpcmpeqd %ymm4,%ymm3,%ymm3 - vmovdqa %ymm2,64+128(%rax) - vpaddd %ymm5,%ymm0,%ymm2 - vpcmpeqd %ymm4,%ymm0,%ymm0 - vmovdqa %ymm3,96+128(%rax) - vpaddd %ymm5,%ymm1,%ymm3 - vpcmpeqd %ymm4,%ymm1,%ymm1 - vmovdqa %ymm0,128+128(%rax) - vpaddd %ymm5,%ymm2,%ymm8 - vpcmpeqd %ymm4,%ymm2,%ymm2 - vmovdqa %ymm1,160+128(%rax) - vpaddd %ymm5,%ymm3,%ymm9 - vpcmpeqd %ymm4,%ymm3,%ymm3 - vmovdqa %ymm2,192+128(%rax) - vpaddd %ymm5,%ymm8,%ymm10 - vpcmpeqd %ymm4,%ymm8,%ymm8 - vmovdqa %ymm3,224+128(%rax) - vpaddd %ymm5,%ymm9,%ymm11 - vpcmpeqd %ymm4,%ymm9,%ymm9 - vpaddd %ymm5,%ymm10,%ymm12 - vpcmpeqd %ymm4,%ymm10,%ymm10 - vpaddd %ymm5,%ymm11,%ymm13 - vpcmpeqd %ymm4,%ymm11,%ymm11 - vpaddd %ymm5,%ymm12,%ymm14 - vpcmpeqd %ymm4,%ymm12,%ymm12 - vpaddd %ymm5,%ymm13,%ymm15 - vpcmpeqd %ymm4,%ymm13,%ymm13 - vpcmpeqd %ymm4,%ymm14,%ymm14 - vpcmpeqd %ymm4,%ymm15,%ymm15 - - vmovdqa -32(%r10),%ymm7 - leaq 128(%rsi),%rsi - movl $9,%edx - -L$oop_gather_1024: - vmovdqa 0-128(%rsi),%ymm0 - vmovdqa 32-128(%rsi),%ymm1 - vmovdqa 64-128(%rsi),%ymm2 - vmovdqa 96-128(%rsi),%ymm3 - vpand 0+128(%rax),%ymm0,%ymm0 - vpand 32+128(%rax),%ymm1,%ymm1 - vpand 64+128(%rax),%ymm2,%ymm2 - vpor %ymm0,%ymm1,%ymm4 - vpand 96+128(%rax),%ymm3,%ymm3 - vmovdqa 128-128(%rsi),%ymm0 - vmovdqa 160-128(%rsi),%ymm1 - vpor %ymm2,%ymm3,%ymm5 - vmovdqa 192-128(%rsi),%ymm2 - vmovdqa 224-128(%rsi),%ymm3 - vpand 128+128(%rax),%ymm0,%ymm0 - vpand 160+128(%rax),%ymm1,%ymm1 - vpand 192+128(%rax),%ymm2,%ymm2 - vpor %ymm0,%ymm4,%ymm4 - vpand 224+128(%rax),%ymm3,%ymm3 - vpand 256-128(%rsi),%ymm8,%ymm0 - vpor %ymm1,%ymm5,%ymm5 - vpand 288-128(%rsi),%ymm9,%ymm1 - vpor %ymm2,%ymm4,%ymm4 - vpand 320-128(%rsi),%ymm10,%ymm2 - vpor %ymm3,%ymm5,%ymm5 - vpand 352-128(%rsi),%ymm11,%ymm3 - vpor %ymm0,%ymm4,%ymm4 - vpand 384-128(%rsi),%ymm12,%ymm0 - vpor %ymm1,%ymm5,%ymm5 - vpand 416-128(%rsi),%ymm13,%ymm1 - vpor %ymm2,%ymm4,%ymm4 - vpand 448-128(%rsi),%ymm14,%ymm2 - vpor %ymm3,%ymm5,%ymm5 - vpand 480-128(%rsi),%ymm15,%ymm3 - leaq 512(%rsi),%rsi - vpor %ymm0,%ymm4,%ymm4 - vpor %ymm1,%ymm5,%ymm5 - vpor %ymm2,%ymm4,%ymm4 - vpor %ymm3,%ymm5,%ymm5 - - vpor %ymm5,%ymm4,%ymm4 - vextracti128 $1,%ymm4,%xmm5 - vpor %xmm4,%xmm5,%xmm5 - vpermd %ymm5,%ymm7,%ymm5 - vmovdqu %ymm5,(%rdi) - leaq 32(%rdi),%rdi - decl %edx - jnz L$oop_gather_1024 - - vpxor %ymm0,%ymm0,%ymm0 - vmovdqu %ymm0,(%rdi) - vzeroupper - leaq (%r11),%rsp - .byte 0xf3,0xc3 - - -.globl _rsaz_avx2_eligible - -.p2align 5 -_rsaz_avx2_eligible: - movl _OPENSSL_ia32cap_P+8(%rip),%eax - movl $524544,%ecx - movl $0,%edx - andl %eax,%ecx - cmpl $524544,%ecx - cmovel %edx,%eax - andl $32,%eax - shrl $5,%eax - .byte 0xf3,0xc3 - - -.p2align 6 -L$and_mask: -.quad 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff -L$scatter_permd: -.long 0,2,4,6,7,7,7,7 -L$gather_permd: -.long 0,7,1,7,2,7,3,7 -L$inc: -.long 0,0,0,0, 1,1,1,1 -.long 2,2,2,2, 3,3,3,3 -.long 4,4,4,4, 4,4,4,4 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/rsaz-x86_64.s b/deps/openssl/asm/x64-macosx-gas/bn/rsaz-x86_64.s deleted file mode 100644 index 8a6e44932d99d3..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/bn/rsaz-x86_64.s +++ /dev/null @@ -1,1873 +0,0 @@ -.text - - - -.globl _rsaz_512_sqr - -.p2align 5 -_rsaz_512_sqr: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$sqr_body: - movq %rdx,%rbp - movq (%rsi),%rdx - movq 8(%rsi),%rax - movq %rcx,128(%rsp) - movl $0x80100,%r11d - andl _OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je L$oop_sqrx - jmp L$oop_sqr - -.p2align 5 -L$oop_sqr: - movl %r8d,128+8(%rsp) - - movq %rdx,%rbx - mulq %rdx - movq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq %rbx,%rax - movq %rdx,%r15 - adcq $0,%r15 - - addq %r8,%r8 - movq %r9,%rcx - adcq %r9,%r9 - - mulq %rax - movq %rax,(%rsp) - addq %rdx,%r8 - adcq $0,%r9 - - movq %r8,8(%rsp) - shrq $63,%rcx - - - movq 8(%rsi),%r8 - movq 16(%rsi),%rax - mulq %r8 - addq %rax,%r10 - movq 24(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r11 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r12 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r13 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r14 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r15 - movq %r8,%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%r8 - movq %r10,%rdx - adcq $0,%r8 - - addq %rdx,%rdx - leaq (%rcx,%r10,2),%r10 - movq %r11,%rbx - adcq %r11,%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,16(%rsp) - movq %r10,24(%rsp) - shrq $63,%rbx - - - movq 16(%rsi),%r9 - movq 24(%rsi),%rax - mulq %r9 - addq %rax,%r12 - movq 32(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r13 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r13 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r14 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r14 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - movq %r12,%r10 - leaq (%rbx,%r12,2),%r12 - addq %rax,%r15 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r15 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - shrq $63,%r10 - addq %rax,%r8 - movq %r9,%rax - adcq $0,%rdx - addq %rcx,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - movq %r13,%rcx - leaq (%r10,%r13,2),%r13 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,32(%rsp) - movq %r12,40(%rsp) - shrq $63,%rcx - - - movq 24(%rsi),%r10 - movq 32(%rsi),%rax - mulq %r10 - addq %rax,%r14 - movq 40(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - addq %rax,%r15 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - movq %r14,%r12 - leaq (%rcx,%r14,2),%r14 - addq %rax,%r8 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r8 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - shrq $63,%r12 - addq %rax,%r9 - movq %r10,%rax - adcq $0,%rdx - addq %rbx,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - movq %r15,%rbx - leaq (%r12,%r15,2),%r15 - - mulq %rax - addq %rax,%r13 - adcq %rdx,%r14 - adcq $0,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - shrq $63,%rbx - - - movq 32(%rsi),%r11 - movq 40(%rsi),%rax - mulq %r11 - addq %rax,%r8 - movq 48(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - addq %rax,%r9 - movq 56(%rsi),%rax - adcq $0,%rdx - movq %r8,%r12 - leaq (%rbx,%r8,2),%r8 - addq %rcx,%r9 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - shrq $63,%r12 - addq %rax,%r10 - movq %r11,%rax - adcq $0,%rdx - addq %rcx,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - movq %r9,%rcx - leaq (%r12,%r9,2),%r9 - - mulq %rax - addq %rax,%r15 - adcq %rdx,%r8 - adcq $0,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - shrq $63,%rcx - - - movq 40(%rsi),%r12 - movq 48(%rsi),%rax - mulq %r12 - addq %rax,%r10 - movq 56(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r12 - addq %rax,%r11 - movq %r12,%rax - movq %r10,%r15 - leaq (%rcx,%r10,2),%r10 - adcq $0,%rdx - shrq $63,%r15 - addq %rbx,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - movq %r11,%rbx - leaq (%r15,%r11,2),%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - - movq 48(%rsi),%r13 - movq 56(%rsi),%rax - mulq %r13 - addq %rax,%r12 - movq %r13,%rax - movq %rdx,%r13 - adcq $0,%r13 - - xorq %r14,%r14 - shlq $1,%rbx - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,96(%rsp) - movq %r12,104(%rsp) - - - movq 56(%rsi),%rax - mulq %rax - addq %rax,%r13 - adcq $0,%rdx - - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz L$oop_sqr - jmp L$sqr_tail - -.p2align 5 -L$oop_sqrx: - movl %r8d,128+8(%rsp) -.byte 102,72,15,110,199 -.byte 102,72,15,110,205 - - mulxq %rax,%r8,%r9 - - mulxq 16(%rsi),%rcx,%r10 - xorq %rbp,%rbp - - mulxq 24(%rsi),%rax,%r11 - adcxq %rcx,%r9 - - mulxq 32(%rsi),%rcx,%r12 - adcxq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rcx,%r11 - -.byte 0xc4,0x62,0xf3,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r12 - adcxq %rcx,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xbe,0x38,0x00,0x00,0x00 - adcxq %rax,%r14 - adcxq %rbp,%r15 - - movq %r9,%rcx - shldq $1,%r8,%r9 - shlq $1,%r8 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rdx,%r8 - movq 8(%rsi),%rdx - adcxq %rbp,%r9 - - movq %rax,(%rsp) - movq %r8,8(%rsp) - - - mulxq 16(%rsi),%rax,%rbx - adoxq %rax,%r10 - adcxq %rbx,%r11 - -.byte 0xc4,0x62,0xc3,0xf6,0x86,0x18,0x00,0x00,0x00 - adoxq %rdi,%r11 - adcxq %r8,%r12 - - mulxq 32(%rsi),%rax,%rbx - adoxq %rax,%r12 - adcxq %rbx,%r13 - - mulxq 40(%rsi),%rdi,%r8 - adoxq %rdi,%r13 - adcxq %r8,%r14 - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x30,0x00,0x00,0x00 - adoxq %rax,%r14 - adcxq %rbx,%r15 - -.byte 0xc4,0x62,0xc3,0xf6,0x86,0x38,0x00,0x00,0x00 - adoxq %rdi,%r15 - adcxq %rbp,%r8 - adoxq %rbp,%r8 - - movq %r11,%rbx - shldq $1,%r10,%r11 - shldq $1,%rcx,%r10 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rcx - movq 16(%rsi),%rdx - adcxq %rax,%r9 - adcxq %rcx,%r10 - adcxq %rbp,%r11 - - movq %r9,16(%rsp) -.byte 0x4c,0x89,0x94,0x24,0x18,0x00,0x00,0x00 - - -.byte 0xc4,0x62,0xc3,0xf6,0x8e,0x18,0x00,0x00,0x00 - adoxq %rdi,%r12 - adcxq %r9,%r13 - - mulxq 32(%rsi),%rax,%rcx - adoxq %rax,%r13 - adcxq %rcx,%r14 - - mulxq 40(%rsi),%rdi,%r9 - adoxq %rdi,%r14 - adcxq %r9,%r15 - -.byte 0xc4,0xe2,0xfb,0xf6,0x8e,0x30,0x00,0x00,0x00 - adoxq %rax,%r15 - adcxq %rcx,%r8 - -.byte 0xc4,0x62,0xc3,0xf6,0x8e,0x38,0x00,0x00,0x00 - adoxq %rdi,%r8 - adcxq %rbp,%r9 - adoxq %rbp,%r9 - - movq %r13,%rcx - shldq $1,%r12,%r13 - shldq $1,%rbx,%r12 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r11 - adcxq %rdx,%r12 - movq 24(%rsi),%rdx - adcxq %rbp,%r13 - - movq %r11,32(%rsp) -.byte 0x4c,0x89,0xa4,0x24,0x28,0x00,0x00,0x00 - - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x20,0x00,0x00,0x00 - adoxq %rax,%r14 - adcxq %rbx,%r15 - - mulxq 40(%rsi),%rdi,%r10 - adoxq %rdi,%r15 - adcxq %r10,%r8 - - mulxq 48(%rsi),%rax,%rbx - adoxq %rax,%r8 - adcxq %rbx,%r9 - - mulxq 56(%rsi),%rdi,%r10 - adoxq %rdi,%r9 - adcxq %rbp,%r10 - adoxq %rbp,%r10 - -.byte 0x66 - movq %r15,%rbx - shldq $1,%r14,%r15 - shldq $1,%rcx,%r14 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r13 - adcxq %rdx,%r14 - movq 32(%rsi),%rdx - adcxq %rbp,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - - -.byte 0xc4,0x62,0xc3,0xf6,0x9e,0x28,0x00,0x00,0x00 - adoxq %rdi,%r8 - adcxq %r11,%r9 - - mulxq 48(%rsi),%rax,%rcx - adoxq %rax,%r9 - adcxq %rcx,%r10 - - mulxq 56(%rsi),%rdi,%r11 - adoxq %rdi,%r10 - adcxq %rbp,%r11 - adoxq %rbp,%r11 - - movq %r9,%rcx - shldq $1,%r8,%r9 - shldq $1,%rbx,%r8 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r15 - adcxq %rdx,%r8 - movq 40(%rsi),%rdx - adcxq %rbp,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - - -.byte 0xc4,0xe2,0xfb,0xf6,0x9e,0x30,0x00,0x00,0x00 - adoxq %rax,%r10 - adcxq %rbx,%r11 - -.byte 0xc4,0x62,0xc3,0xf6,0xa6,0x38,0x00,0x00,0x00 - adoxq %rdi,%r11 - adcxq %rbp,%r12 - adoxq %rbp,%r12 - - movq %r11,%rbx - shldq $1,%r10,%r11 - shldq $1,%rcx,%r10 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r9 - adcxq %rdx,%r10 - movq 48(%rsi),%rdx - adcxq %rbp,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - -.byte 0xc4,0x62,0xfb,0xf6,0xae,0x38,0x00,0x00,0x00 - adoxq %rax,%r12 - adoxq %rbp,%r13 - - xorq %r14,%r14 - shldq $1,%r13,%r14 - shldq $1,%r12,%r13 - shldq $1,%rbx,%r12 - - xorl %ebp,%ebp - mulxq %rdx,%rax,%rdx - adcxq %rax,%r11 - adcxq %rdx,%r12 - movq 56(%rsi),%rdx - adcxq %rbp,%r13 - -.byte 0x4c,0x89,0x9c,0x24,0x60,0x00,0x00,0x00 -.byte 0x4c,0x89,0xa4,0x24,0x68,0x00,0x00,0x00 - - - mulxq %rdx,%rax,%rdx - adoxq %rax,%r13 - adoxq %rbp,%rdx - -.byte 0x66 - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz L$oop_sqrx - -L$sqr_tail: - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$sqr_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul - -.p2align 5 -_rsaz_512_mul: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$mul_body: -.byte 102,72,15,110,199 -.byte 102,72,15,110,201 - movq %r8,128(%rsp) - movl $0x80100,%r11d - andl _OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je L$mulx - movq (%rdx),%rbx - movq %rdx,%rbp - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp L$mul_tail - -.p2align 5 -L$mulx: - movq %rdx,%rbp - movq (%rdx),%rdx - call __rsaz_512_mulx - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex -L$mul_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_gather4 - -.p2align 5 -_rsaz_512_mul_gather4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $152,%rsp -L$mul_gather4_body: - movd %r9d,%xmm8 - movdqa L$inc+16(%rip),%xmm1 - movdqa L$inc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - - movdqa 0(%rdx),%xmm8 - movdqa 16(%rdx),%xmm9 - movdqa 32(%rdx),%xmm10 - movdqa 48(%rdx),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rdx),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rdx),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rdx),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rdx),%xmm15 - leaq 128(%rdx),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movl $0x80100,%r11d - andl _OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je L$mulx_gather -.byte 102,76,15,126,195 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - movq (%rsi),%rax - movq 8(%rsi),%rcx - mulq %rbx - movq %rax,(%rsp) - movq %rcx,%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rsp),%rdi - movl $7,%ecx - jmp L$oop_mul_gather - -.p2align 5 -L$oop_mul_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz L$oop_mul_gather - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp L$mul_gather_tail - -.p2align 5 -L$mulx_gather: -.byte 102,76,15,126,194 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - mulxq (%rsi),%rbx,%r8 - movq %rbx,(%rsp) - xorl %edi,%edi - - mulxq 8(%rsi),%rax,%r9 - - mulxq 16(%rsi),%rbx,%r10 - adcxq %rax,%r8 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rbx,%r9 - - mulxq 32(%rsi),%rbx,%r12 - adcxq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rbx,%r11 - - mulxq 48(%rsi),%rbx,%r14 - adcxq %rax,%r12 - - mulxq 56(%rsi),%rax,%r15 - adcxq %rbx,%r13 - adcxq %rax,%r14 -.byte 0x67 - movq %r8,%rbx - adcxq %rdi,%r15 - - movq $-7,%rcx - jmp L$oop_mulx_gather - -.p2align 5 -L$oop_mulx_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,194 - -.byte 0xc4,0x62,0xfb,0xf6,0x86,0x00,0x00,0x00,0x00 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rsi),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rsi),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - -.byte 0xc4,0x62,0xfb,0xf6,0x9e,0x18,0x00,0x00,0x00 - adcxq %rax,%r10 - adoxq %r12,%r11 - - mulxq 32(%rsi),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 -.byte 0x67 - adoxq %r15,%r14 - - mulxq 56(%rsi),%rax,%r15 - movq %rbx,64(%rsp,%rcx,8) - adcxq %rax,%r14 - adoxq %rdi,%r15 - movq %r8,%rbx - adcxq %rdi,%r15 - - incq %rcx - jnz L$oop_mulx_gather - - movq %r8,64(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - - movq 128(%rsp),%rdx - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - -L$mul_gather_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_gather4_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_scatter4 - -.p2align 5 -_rsaz_512_mul_scatter4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movl %r9d,%r9d - subq $128+24,%rsp -L$mul_scatter4_body: - leaq (%r8,%r9,8),%r8 -.byte 102,72,15,110,199 -.byte 102,72,15,110,202 -.byte 102,73,15,110,208 - movq %rcx,128(%rsp) - - movq %rdi,%rbp - movl $0x80100,%r11d - andl _OPENSSL_ia32cap_P+8(%rip),%r11d - cmpl $0x80100,%r11d - je L$mulx_scatter - movq (%rdi),%rbx - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - jmp L$mul_scatter_tail - -.p2align 5 -L$mulx_scatter: - movq (%rdi),%rdx - call __rsaz_512_mulx - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq 128(%rsp),%rdx - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reducex - -L$mul_scatter_tail: - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 -.byte 102,72,15,126,214 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,0(%rsi) - movq %r9,128(%rsi) - movq %r10,256(%rsi) - movq %r11,384(%rsi) - movq %r12,512(%rsi) - movq %r13,640(%rsi) - movq %r14,768(%rsi) - movq %r15,896(%rsi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_scatter4_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_by_one - -.p2align 5 -_rsaz_512_mul_by_one: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$mul_by_one_body: - movl _OPENSSL_ia32cap_P+8(%rip),%eax - movq %rdx,%rbp - movq %rcx,128(%rsp) - - movq (%rsi),%r8 - pxor %xmm0,%xmm0 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq 32(%rsi),%r12 - movq 40(%rsi),%r13 - movq 48(%rsi),%r14 - movq 56(%rsi),%r15 - - movdqa %xmm0,(%rsp) - movdqa %xmm0,16(%rsp) - movdqa %xmm0,32(%rsp) - movdqa %xmm0,48(%rsp) - movdqa %xmm0,64(%rsp) - movdqa %xmm0,80(%rsp) - movdqa %xmm0,96(%rsp) - andl $0x80100,%eax - cmpl $0x80100,%eax - je L$by_one_callx - call __rsaz_512_reduce - jmp L$by_one_tail -.p2align 5 -L$by_one_callx: - movq 128(%rsp),%rdx - call __rsaz_512_reducex -L$by_one_tail: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_by_one_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_reduce: - movq %r8,%rbx - imulq 128+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp L$reduction_loop - -.p2align 5 -L$reduction_loop: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq 128+8(%rsp),%rsi - - - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jne L$reduction_loop - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_reducex: - - imulq %r8,%rdx - xorq %rsi,%rsi - movl $8,%ecx - jmp L$reduction_loopx - -.p2align 5 -L$reduction_loopx: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rbx,%rax - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rbx,%r10 - adcxq %rbx,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rbx,%r11 - adcxq %rbx,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xe3,0xf6,0xa5,0x20,0x00,0x00,0x00 - movq %rdx,%rax - movq %r8,%rdx - adcxq %rbx,%r11 - adoxq %r13,%r12 - - mulxq 128+8(%rsp),%rbx,%rdx - movq %rax,%rdx - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb5,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq %rbx,%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - adcxq %rsi,%r15 - - decl %ecx - jne L$reduction_loopx - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_subtract: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 0(%rbp),%r8 - movq 8(%rbp),%r9 - negq %r8 - notq %r9 - andq %rcx,%r8 - movq 16(%rbp),%r10 - andq %rcx,%r9 - notq %r10 - movq 24(%rbp),%r11 - andq %rcx,%r10 - notq %r11 - movq 32(%rbp),%r12 - andq %rcx,%r11 - notq %r12 - movq 40(%rbp),%r13 - andq %rcx,%r12 - notq %r13 - movq 48(%rbp),%r14 - andq %rcx,%r13 - notq %r14 - movq 56(%rbp),%r15 - andq %rcx,%r14 - notq %r15 - andq %rcx,%r15 - - addq (%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_mul: - leaq 8(%rsp),%rdi - - movq (%rsi),%rax - mulq %rbx - movq %rax,(%rdi) - movq 8(%rsi),%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rbp),%rbp - leaq 8(%rdi),%rdi - - movl $7,%ecx - jmp L$oop_mul - -.p2align 5 -L$oop_mul: - movq (%rbp),%rbx - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - leaq 8(%rbp),%rbp - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz L$oop_mul - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_mulx: - mulxq (%rsi),%rbx,%r8 - movq $-6,%rcx - - mulxq 8(%rsi),%rax,%r9 - movq %rbx,8(%rsp) - - mulxq 16(%rsi),%rbx,%r10 - adcq %rax,%r8 - - mulxq 24(%rsi),%rax,%r11 - adcq %rbx,%r9 - - mulxq 32(%rsi),%rbx,%r12 - adcq %rax,%r10 - - mulxq 40(%rsi),%rax,%r13 - adcq %rbx,%r11 - - mulxq 48(%rsi),%rbx,%r14 - adcq %rax,%r12 - - mulxq 56(%rsi),%rax,%r15 - movq 8(%rbp),%rdx - adcq %rbx,%r13 - adcq %rax,%r14 - adcq $0,%r15 - - xorq %rdi,%rdi - jmp L$oop_mulx - -.p2align 5 -L$oop_mulx: - movq %r8,%rbx - mulxq (%rsi),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rsi),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rsi),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0x3e,0xc4,0x62,0xfb,0xf6,0xa6,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rsi),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rsi),%rax,%r15 - movq 64(%rbp,%rcx,8),%rdx - movq %rbx,8+64-8(%rsp,%rcx,8) - adcxq %rax,%r14 - adoxq %rdi,%r15 - adcxq %rdi,%r15 - - incq %rcx - jnz L$oop_mulx - - movq %r8,%rbx - mulxq (%rsi),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - -.byte 0xc4,0x62,0xfb,0xf6,0x8e,0x08,0x00,0x00,0x00 - adcxq %rax,%r8 - adoxq %r10,%r9 - -.byte 0xc4,0x62,0xfb,0xf6,0x96,0x10,0x00,0x00,0x00 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rsi),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - - mulxq 32(%rsi),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rsi),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - -.byte 0xc4,0x62,0xfb,0xf6,0xb6,0x30,0x00,0x00,0x00 - adcxq %rax,%r13 - adoxq %r15,%r14 - -.byte 0xc4,0x62,0xfb,0xf6,0xbe,0x38,0x00,0x00,0x00 - adcxq %rax,%r14 - adoxq %rdi,%r15 - adcxq %rdi,%r15 - - movq %rbx,8+64-8(%rsp) - movq %r8,8+64(%rsp) - movq %r9,8+64+8(%rsp) - movq %r10,8+64+16(%rsp) - movq %r11,8+64+24(%rsp) - movq %r12,8+64+32(%rsp) - movq %r13,8+64+40(%rsp) - movq %r14,8+64+48(%rsp) - movq %r15,8+64+56(%rsp) - - .byte 0xf3,0xc3 - -.globl _rsaz_512_scatter4 - -.p2align 4 -_rsaz_512_scatter4: - leaq (%rdi,%rdx,8),%rdi - movl $8,%r9d - jmp L$oop_scatter -.p2align 4 -L$oop_scatter: - movq (%rsi),%rax - leaq 8(%rsi),%rsi - movq %rax,(%rdi) - leaq 128(%rdi),%rdi - decl %r9d - jnz L$oop_scatter - .byte 0xf3,0xc3 - - -.globl _rsaz_512_gather4 - -.p2align 4 -_rsaz_512_gather4: - movd %edx,%xmm8 - movdqa L$inc+16(%rip),%xmm1 - movdqa L$inc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - movl $8,%r9d - jmp L$oop_gather -.p2align 4 -L$oop_gather: - movdqa 0(%rsi),%xmm8 - movdqa 16(%rsi),%xmm9 - movdqa 32(%rsi),%xmm10 - movdqa 48(%rsi),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rsi),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rsi),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rsi),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rsi),%xmm15 - leaq 128(%rsi),%rsi - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movq %xmm8,(%rdi) - leaq 8(%rdi),%rdi - decl %r9d - jnz L$oop_gather - .byte 0xf3,0xc3 -L$SEH_end_rsaz_512_gather4: - - -.p2align 6 -L$inc: -.long 0,0, 1,1 -.long 2,2, 2,2 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-gf2m.s b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-gf2m.s deleted file mode 100644 index c0f0b4bd6878b8..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-gf2m.s +++ /dev/null @@ -1,291 +0,0 @@ -.text - - -.p2align 4 -_mul_1x1: - subq $128+8,%rsp - movq $-1,%r9 - leaq (%rax,%rax,1),%rsi - shrq $3,%r9 - leaq (,%rax,4),%rdi - andq %rax,%r9 - leaq (,%rax,8),%r12 - sarq $63,%rax - leaq (%r9,%r9,1),%r10 - sarq $63,%rsi - leaq (,%r9,4),%r11 - andq %rbp,%rax - sarq $63,%rdi - movq %rax,%rdx - shlq $63,%rax - andq %rbp,%rsi - shrq $1,%rdx - movq %rsi,%rcx - shlq $62,%rsi - andq %rbp,%rdi - shrq $2,%rcx - xorq %rsi,%rax - movq %rdi,%rbx - shlq $61,%rdi - xorq %rcx,%rdx - shrq $3,%rbx - xorq %rdi,%rax - xorq %rbx,%rdx - - movq %r9,%r13 - movq $0,0(%rsp) - xorq %r10,%r13 - movq %r9,8(%rsp) - movq %r11,%r14 - movq %r10,16(%rsp) - xorq %r12,%r14 - movq %r13,24(%rsp) - - xorq %r11,%r9 - movq %r11,32(%rsp) - xorq %r11,%r10 - movq %r9,40(%rsp) - xorq %r11,%r13 - movq %r10,48(%rsp) - xorq %r14,%r9 - movq %r13,56(%rsp) - xorq %r14,%r10 - - movq %r12,64(%rsp) - xorq %r14,%r13 - movq %r9,72(%rsp) - xorq %r11,%r9 - movq %r10,80(%rsp) - xorq %r11,%r10 - movq %r13,88(%rsp) - - xorq %r11,%r13 - movq %r14,96(%rsp) - movq %r8,%rsi - movq %r9,104(%rsp) - andq %rbp,%rsi - movq %r10,112(%rsp) - shrq $4,%rbp - movq %r13,120(%rsp) - movq %r8,%rdi - andq %rbp,%rdi - shrq $4,%rbp - - movq (%rsp,%rsi,8),%xmm0 - movq %r8,%rsi - andq %rbp,%rsi - shrq $4,%rbp - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $4,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $60,%rbx - xorq %rcx,%rax - pslldq $1,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $12,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $52,%rbx - xorq %rcx,%rax - pslldq $2,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $20,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $44,%rbx - xorq %rcx,%rax - pslldq $3,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $28,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $36,%rbx - xorq %rcx,%rax - pslldq $4,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $36,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $28,%rbx - xorq %rcx,%rax - pslldq $5,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $44,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $20,%rbx - xorq %rcx,%rax - pslldq $6,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $52,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $12,%rbx - xorq %rcx,%rax - pslldq $7,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %rcx,%rbx - shlq $60,%rcx -.byte 102,72,15,126,198 - shrq $4,%rbx - xorq %rcx,%rax - psrldq $8,%xmm0 - xorq %rbx,%rdx -.byte 102,72,15,126,199 - xorq %rsi,%rax - xorq %rdi,%rdx - - addq $128+8,%rsp - .byte 0xf3,0xc3 -L$end_mul_1x1: - - -.globl _bn_GF2m_mul_2x2 - -.p2align 4 -_bn_GF2m_mul_2x2: - movq _OPENSSL_ia32cap_P(%rip),%rax - btq $33,%rax - jnc L$vanilla_mul_2x2 - -.byte 102,72,15,110,198 -.byte 102,72,15,110,201 -.byte 102,72,15,110,210 -.byte 102,73,15,110,216 - movdqa %xmm0,%xmm4 - movdqa %xmm1,%xmm5 -.byte 102,15,58,68,193,0 - pxor %xmm2,%xmm4 - pxor %xmm3,%xmm5 -.byte 102,15,58,68,211,0 -.byte 102,15,58,68,229,0 - xorps %xmm0,%xmm4 - xorps %xmm2,%xmm4 - movdqa %xmm4,%xmm5 - pslldq $8,%xmm4 - psrldq $8,%xmm5 - pxor %xmm4,%xmm2 - pxor %xmm5,%xmm0 - movdqu %xmm2,0(%rdi) - movdqu %xmm0,16(%rdi) - .byte 0xf3,0xc3 - -.p2align 4 -L$vanilla_mul_2x2: - leaq -136(%rsp),%rsp - movq %r14,80(%rsp) - movq %r13,88(%rsp) - movq %r12,96(%rsp) - movq %rbp,104(%rsp) - movq %rbx,112(%rsp) -L$body_mul_2x2: - movq %rdi,32(%rsp) - movq %rsi,40(%rsp) - movq %rdx,48(%rsp) - movq %rcx,56(%rsp) - movq %r8,64(%rsp) - - movq $0xf,%r8 - movq %rsi,%rax - movq %rcx,%rbp - call _mul_1x1 - movq %rax,16(%rsp) - movq %rdx,24(%rsp) - - movq 48(%rsp),%rax - movq 64(%rsp),%rbp - call _mul_1x1 - movq %rax,0(%rsp) - movq %rdx,8(%rsp) - - movq 40(%rsp),%rax - movq 56(%rsp),%rbp - xorq 48(%rsp),%rax - xorq 64(%rsp),%rbp - call _mul_1x1 - movq 0(%rsp),%rbx - movq 8(%rsp),%rcx - movq 16(%rsp),%rdi - movq 24(%rsp),%rsi - movq 32(%rsp),%rbp - - xorq %rdx,%rax - xorq %rcx,%rdx - xorq %rbx,%rax - movq %rbx,0(%rbp) - xorq %rdi,%rdx - movq %rsi,24(%rbp) - xorq %rsi,%rax - xorq %rsi,%rdx - xorq %rdx,%rax - movq %rdx,16(%rbp) - movq %rax,8(%rbp) - - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbp - movq 112(%rsp),%rbx - leaq 136(%rsp),%rsp - .byte 0xf3,0xc3 -L$end_mul_2x2: - -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 4 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s deleted file mode 100644 index 9fcda4ba3b69fe..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s +++ /dev/null @@ -1,1166 +0,0 @@ -.text - - - -.globl _bn_mul_mont - -.p2align 4 -_bn_mul_mont: - movl %r9d,%r9d - movq %rsp,%rax - testl $3,%r9d - jnz L$mul_enter - cmpl $8,%r9d - jb L$mul_enter - movl _OPENSSL_ia32cap_P+8(%rip),%r11d - cmpq %rsi,%rdx - jne L$mul4x_enter - testl $7,%r9d - jz L$sqr8x_enter - jmp L$mul4x_enter - -.p2align 4 -L$mul_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -16(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk - jmp L$mul_page_walk_done - -.p2align 4 -L$mul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk -L$mul_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -L$mul_body: - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$1st_enter - -.p2align 4 -L$1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne L$1st - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp L$outer -.p2align 4 -L$outer: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$inner_enter - -.p2align 4 -L$inner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$inner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne L$inner - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb L$outer - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp L$sub -.p2align 4 -L$sub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz L$sub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 -L$copy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz L$copy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - - -.p2align 4 -bn_mul4x_mont: - movl %r9d,%r9d - movq %rsp,%rax -L$mul4x_enter: - andl $0x80100,%r11d - cmpl $0x80100,%r11d - je L$mulx4x_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -32(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul4x_page_walk - jmp L$mul4x_page_walk_done - -L$mul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul4x_page_walk -L$mul4x_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -L$mul4x_body: - movq %rdi,16(%rsp,%r9,8) - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp L$1st4x -.p2align 4 -L$1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb L$1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - leaq 1(%r14),%r14 -.p2align 2 -L$outer4x: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq (%rsp),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%rsp),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp L$inner4x -.p2align 4 -L$inner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq 8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb L$inner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 1(%r14),%r14 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%rsp,%r9,8),%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - cmpq %r9,%r14 - jb L$outer4x - movq 16(%rsp,%r9,8),%rdi - movq 0(%rsp),%rax - pxor %xmm0,%xmm0 - movq 8(%rsp),%rdx - shrq $2,%r9 - leaq (%rsp),%rsi - xorq %r14,%r14 - - subq 0(%rcx),%rax - movq 16(%rsi),%rbx - movq 24(%rsi),%rbp - sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp L$sub4x -.p2align 4 -L$sub4x: - movq %rax,0(%rdi,%r14,8) - movq %rdx,8(%rdi,%r14,8) - sbbq 16(%rcx,%r14,8),%rbx - movq 32(%rsi,%r14,8),%rax - movq 40(%rsi,%r14,8),%rdx - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - movq %rbp,24(%rdi,%r14,8) - sbbq 32(%rcx,%r14,8),%rax - movq 48(%rsi,%r14,8),%rbx - movq 56(%rsi,%r14,8),%rbp - sbbq 40(%rcx,%r14,8),%rdx - leaq 4(%r14),%r14 - decq %r15 - jnz L$sub4x - - movq %rax,0(%rdi,%r14,8) - movq 32(%rsi,%r14,8),%rax - sbbq 16(%rcx,%r14,8),%rbx - movq %rdx,8(%rdi,%r14,8) - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - - sbbq $0,%rax - movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) - jmp L$copy4x -.p2align 4 -L$copy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 - decq %r15 - jnz L$copy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul4x_epilogue: - .byte 0xf3,0xc3 - - - - - -.p2align 5 -bn_sqr8x_mont: - movq %rsp,%rax -L$sqr8x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$sqr8x_prologue: - - movl %r9d,%r10d - shll $3,%r9d - shlq $3+2,%r10 - negq %r9 - - - - - - - leaq -64(%rsp,%r9,2),%r11 - movq %rsp,%rbp - movq (%r8),%r8 - subq %rsi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$sqr8x_sp_alt - subq %r11,%rbp - leaq -64(%rbp,%r9,2),%rbp - jmp L$sqr8x_sp_done - -.p2align 5 -L$sqr8x_sp_alt: - leaq 4096-64(,%r9,2),%r10 - leaq -64(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$sqr8x_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$sqr8x_page_walk - jmp L$sqr8x_page_walk_done - -.p2align 4 -L$sqr8x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$sqr8x_page_walk -L$sqr8x_page_walk_done: - - movq %r9,%r10 - negq %r9 - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$sqr8x_body: - -.byte 102,72,15,110,209 - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,73,15,110,218 - movl _OPENSSL_ia32cap_P+8(%rip),%eax - andl $0x80100,%eax - cmpl $0x80100,%eax - jne L$sqr8x_nox - - call _bn_sqrx8x_internal - - - - - leaq (%r8,%rcx,1),%rbx - movq %rcx,%r9 - movq %rcx,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp L$sqr8x_sub - -.p2align 5 -L$sqr8x_nox: - call _bn_sqr8x_internal - - - - - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx - movq %r9,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp L$sqr8x_sub - -.p2align 5 -L$sqr8x_sub: - movq 0(%rbx),%r12 - movq 8(%rbx),%r13 - movq 16(%rbx),%r14 - movq 24(%rbx),%r15 - leaq 32(%rbx),%rbx - sbbq 0(%rbp),%r12 - sbbq 8(%rbp),%r13 - sbbq 16(%rbp),%r14 - sbbq 24(%rbp),%r15 - leaq 32(%rbp),%rbp - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - incq %rcx - jnz L$sqr8x_sub - - sbbq $0,%rax - leaq (%rbx,%r9,1),%rbx - leaq (%rdi,%r9,1),%rdi - -.byte 102,72,15,110,200 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp L$sqr8x_cond_copy - -.p2align 5 -L$sqr8x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - movdqa %xmm0,-32(%rbx,%rdx,1) - movdqa %xmm0,-16(%rbx,%rdx,1) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - addq $32,%r9 - jnz L$sqr8x_cond_copy - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$sqr8x_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -bn_mulx4x_mont: - movq %rsp,%rax -L$mulx4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$mulx4x_prologue: - - shll $3,%r9d - xorq %r10,%r10 - subq %r9,%r10 - movq (%r8),%r8 - leaq -72(%rsp,%r10,1),%rbp - andq $-128,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mulx4x_page_walk - jmp L$mulx4x_page_walk_done - -.p2align 4 -L$mulx4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mulx4x_page_walk -L$mulx4x_page_walk_done: - - leaq (%rdx,%r9,1),%r10 - - - - - - - - - - - - - movq %r9,0(%rsp) - shrq $5,%r9 - movq %r10,16(%rsp) - subq $1,%r9 - movq %r8,24(%rsp) - movq %rdi,32(%rsp) - movq %rax,40(%rsp) - movq %r9,48(%rsp) - jmp L$mulx4x_body - -.p2align 5 -L$mulx4x_body: - leaq 8(%rdx),%rdi - movq (%rdx),%rdx - leaq 64+32(%rsp),%rbx - movq %rdx,%r9 - - mulxq 0(%rsi),%r8,%rax - mulxq 8(%rsi),%r11,%r14 - addq %rax,%r11 - movq %rdi,8(%rsp) - mulxq 16(%rsi),%r12,%r13 - adcq %r14,%r12 - adcq $0,%r13 - - movq %r8,%rdi - imulq 24(%rsp),%r8 - xorq %rbp,%rbp - - mulxq 24(%rsi),%rax,%r14 - movq %r8,%rdx - leaq 32(%rsi),%rsi - adcxq %rax,%r13 - adcxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%rdi - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 -.byte 0xc4,0x62,0xfb,0xf6,0xa1,0x10,0x00,0x00,0x00 - movq 48(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - adcxq %rax,%r12 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r12,-16(%rbx) - - jmp L$mulx4x_1st - -.p2align 5 -L$mulx4x_1st: - adcxq %rbp,%r15 - mulxq 0(%rsi),%r10,%rax - adcxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 -.byte 0x67,0x67 - movq %r8,%rdx - adcxq %rax,%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - movq %r11,-32(%rbx) - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz L$mulx4x_1st - - movq 0(%rsp),%rax - movq 8(%rsp),%rdi - adcq %rbp,%r15 - addq %r15,%r14 - sbbq %r15,%r15 - movq %r14,-8(%rbx) - jmp L$mulx4x_outer - -.p2align 5 -L$mulx4x_outer: - movq (%rdi),%rdx - leaq 8(%rdi),%rdi - subq %rax,%rsi - movq %r15,(%rbx) - leaq 64+32(%rsp),%rbx - subq %rax,%rcx - - mulxq 0(%rsi),%r8,%r11 - xorl %ebp,%ebp - movq %rdx,%r9 - mulxq 8(%rsi),%r14,%r12 - adoxq -32(%rbx),%r8 - adcxq %r14,%r11 - mulxq 16(%rsi),%r15,%r13 - adoxq -24(%rbx),%r11 - adcxq %r15,%r12 - adoxq -16(%rbx),%r12 - adcxq %rbp,%r13 - adoxq %rbp,%r13 - - movq %rdi,8(%rsp) - movq %r8,%r15 - imulq 24(%rsp),%r8 - xorl %ebp,%ebp - - mulxq 24(%rsi),%rax,%r14 - movq %r8,%rdx - adcxq %rax,%r13 - adoxq -8(%rbx),%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - adoxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - leaq 32(%rcx),%rcx - adcxq %rax,%r12 - adoxq %rbp,%r15 - movq 48(%rsp),%rdi - movq %r12,-16(%rbx) - - jmp L$mulx4x_inner - -.p2align 5 -L$mulx4x_inner: - mulxq 0(%rsi),%r10,%rax - adcxq %rbp,%r15 - adoxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq 0(%rbx),%r10 - adoxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq 8(%rbx),%r11 - adoxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 - movq %r8,%rdx - adcxq 16(%rbx),%r12 - adoxq %rax,%r13 - adcxq 24(%rbx),%r13 - adoxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - adcxq %rbp,%r14 - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-32(%rbx) - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz L$mulx4x_inner - - movq 0(%rsp),%rax - movq 8(%rsp),%rdi - adcq %rbp,%r15 - subq 0(%rbx),%rbp - adcq %r15,%r14 - sbbq %r15,%r15 - movq %r14,-8(%rbx) - - cmpq 16(%rsp),%rdi - jne L$mulx4x_outer - - leaq 64(%rsp),%rbx - subq %rax,%rcx - negq %r15 - movq %rax,%rdx - shrq $3+2,%rax - movq 32(%rsp),%rdi - jmp L$mulx4x_sub - -.p2align 5 -L$mulx4x_sub: - movq 0(%rbx),%r11 - movq 8(%rbx),%r12 - movq 16(%rbx),%r13 - movq 24(%rbx),%r14 - leaq 32(%rbx),%rbx - sbbq 0(%rcx),%r11 - sbbq 8(%rcx),%r12 - sbbq 16(%rcx),%r13 - sbbq 24(%rcx),%r14 - leaq 32(%rcx),%rcx - movq %r11,0(%rdi) - movq %r12,8(%rdi) - movq %r13,16(%rdi) - movq %r14,24(%rdi) - leaq 32(%rdi),%rdi - decq %rax - jnz L$mulx4x_sub - - sbbq $0,%r15 - leaq 64(%rsp),%rbx - subq %rdx,%rdi - -.byte 102,73,15,110,207 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp L$mulx4x_cond_copy - -.p2align 5 -L$mulx4x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - subq $32,%rdx - jnz L$mulx4x_cond_copy - - movq %rdx,(%rbx) - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mulx4x_epilogue: - .byte 0xf3,0xc3 - -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 4 diff --git a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s b/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s deleted file mode 100644 index 0cdcd14f1a493c..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s +++ /dev/null @@ -1,3652 +0,0 @@ -.text - - - -.globl _bn_mul_mont_gather5 - -.p2align 6 -_bn_mul_mont_gather5: - movl %r9d,%r9d - movq %rsp,%rax - testl $7,%r9d - jnz L$mul_enter - movl _OPENSSL_ia32cap_P+8(%rip),%r11d - jmp L$mul4x_enter - -.p2align 4 -L$mul_enter: - movd 8(%rsp),%xmm5 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -280(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk - jmp L$mul_page_walk_done - -L$mul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk -L$mul_page_walk_done: - - leaq L$inc(%rip),%r10 - movq %rax,8(%rsp,%r9,8) -L$mul_body: - - leaq 128(%rdx),%r12 - movdqa 0(%r10),%xmm0 - movdqa 16(%r10),%xmm1 - leaq 24-112(%rsp,%r9,8),%r10 - andq $-16,%r10 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r8),%r8 - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$1st_enter - -.p2align 4 -L$1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne L$1st - - - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp L$outer -.p2align 4 -L$outer: - leaq 24+128(%rsp,%r9,8),%rdx - andq $-16,%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 - - movq (%rsi),%rax -.byte 102,72,15,126,195 - - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$inner_enter - -.p2align 4 -L$inner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$inner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne L$inner - - addq %rax,%r13 - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r9,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb L$outer - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp L$sub -.p2align 4 -L$sub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz L$sub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 -L$copy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz L$copy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -bn_mul4x_mont_gather5: -.byte 0x67 - movq %rsp,%rax -L$mul4x_enter: - andl $0x80108,%r11d - cmpl $0x80108,%r11d - je L$mulx4x_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$mul4x_prologue: - -.byte 0x67 - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$mul4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$mul4xsp_done - -.p2align 5 -L$mul4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$mul4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mul4x_page_walk - jmp L$mul4x_page_walk_done - -L$mul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mul4x_page_walk -L$mul4x_page_walk_done: - - negq %r9 - - movq %rax,40(%rsp) -L$mul4x_body: - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul4x_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 5 -mul4x_internal: - shlq $5,%r9 - movd 8(%rax),%xmm5 - leaq L$inc(%rip),%rax - leaq 128(%rdx,%r9,1),%r13 - shrq $5,%r9 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r9,1),%r10 - leaq 128(%rdx),%r12 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67,0x67 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq %r13,16+8(%rsp) - movq %rdi,56+8(%rsp) - - movq (%r8),%r8 - movq (%rsi),%rax - leaq (%rsi,%r9,1),%rsi - negq %r9 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - leaq 64+8(%rsp),%r14 - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - jmp L$1st4x - -.p2align 5 -L$1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz L$1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - jmp L$outer4x - -.p2align 5 -L$outer4x: - leaq 16+128(%r14),%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r14,%r9,1),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - movq %rdi,(%r14) - - leaq (%r14,%r9,1),%r14 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdx,%r13 - jmp L$inner4x - -.p2align 5 -L$inner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - addq (%r14),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz L$inner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq %rbp,%rax - movq -8(%rcx),%rbp - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - movq %rdi,-16(%r14) - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%r14),%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - cmpq 16+8(%rsp),%r12 - jb L$outer4x - xorq %rax,%rax - subq %r13,%rbp - adcq %r15,%r15 - orq %r15,%rdi - subq %rdi,%rax - leaq (%r14,%r9,1),%rbx - movq (%rcx),%r12 - leaq (%rcx),%rbp - movq %r9,%rcx - sarq $3+2,%rcx - movq 56+8(%rsp),%rdi - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqr4x_sub_entry - -.globl _bn_power5 - -.p2align 5 -_bn_power5: - movq %rsp,%rax - movl _OPENSSL_ia32cap_P+8(%rip),%r11d - andl $0x80108,%r11d - cmpl $0x80108,%r11d - je L$powerx5_enter - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$power5_prologue: - - shll $3,%r9d - leal (%r9,%r9,2),%r10d - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$pwr_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$pwr_sp_done - -.p2align 5 -L$pwr_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$pwr_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwr_page_walk - jmp L$pwr_page_walk_done - -L$pwr_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwr_page_walk -L$pwr_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$power5_body: -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq %rsi,%rdi - movq 40(%rsp),%rax - leaq 32(%rsp),%r8 - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$power5_epilogue: - .byte 0xf3,0xc3 - - -.globl _bn_sqr8x_internal -.private_extern _bn_sqr8x_internal - -.p2align 5 -_bn_sqr8x_internal: -__bn_sqr8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 32(%r10),%rbp - leaq (%rsi,%r9,1),%rsi - - movq %r9,%rcx - - - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - movq %r10,-24(%rdi,%rbp,1) - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - movq %r11,-16(%rdi,%rbp,1) - movq %rdx,%r10 - - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - movq %rax,%r12 - movq %rbx,%rax - movq %rdx,%r13 - - leaq (%rbp),%rcx - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - jmp L$sqr4x_1st - -.p2align 5 -L$sqr4x_1st: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq 16(%rsi,%rcx,1),%rbx - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %r10,8(%rdi,%rcx,1) - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 24(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,16(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - leaq 32(%rcx),%rcx - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne L$sqr4x_1st - - mulq %r15 - addq %rax,%r13 - leaq 16(%rbp),%rbp - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - jmp L$sqr4x_outer - -.p2align 5 -L$sqr4x_outer: - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq -24(%rdi,%rbp,1),%r10 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - movq %r10,-24(%rdi,%rbp,1) - movq %rdx,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - addq -16(%rdi,%rbp,1),%r11 - movq %rdx,%r10 - adcq $0,%r10 - movq %r11,-16(%rdi,%rbp,1) - - xorq %r12,%r12 - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - adcq $0,%rdx - addq -8(%rdi,%rbp,1),%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rbp,1) - - leaq (%rbp),%rcx - jmp L$sqr4x_inner - -.p2align 5 -L$sqr4x_inner: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - addq (%rdi,%rcx,1),%r13 - adcq $0,%r12 - -.byte 0x67 - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %r11,(%rdi,%rcx,1) - movq %rbx,%rax - movq %rdx,%r13 - adcq $0,%r13 - addq 8(%rdi,%rcx,1),%r12 - leaq 16(%rcx),%rcx - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne L$sqr4x_inner - -.byte 0x67 - mulq %r15 - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - addq $16,%rbp - jnz L$sqr4x_outer - - - movq -32(%rsi),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi),%rbx - movq %rax,%r15 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq %r10,-24(%rdi) - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - movq -8(%rsi),%rbx - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,-16(%rdi) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi) - - mulq %r15 - addq %rax,%r13 - movq -16(%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - mulq %rbx - addq $16,%rbp - xorq %r14,%r14 - subq %r9,%rbp - xorq %r15,%r15 - - addq %r12,%rax - adcq $0,%rdx - movq %rax,8(%rdi) - movq %rdx,16(%rdi) - movq %r15,24(%rdi) - - movq -16(%rsi,%rbp,1),%rax - leaq 48+8(%rsp),%rdi - xorq %r10,%r10 - movq 8(%rdi),%r11 - - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - leaq 16(%rbp),%rbp - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - jmp L$sqr4x_shift_n_add - -.p2align 5 -L$sqr4x_shift_n_add: - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 0(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 8(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,-16(%rdi) - adcq %rdx,%r8 - - leaq (%r14,%r10,2),%r12 - movq %r8,-8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq 8(%rsi,%rbp,1),%rax - movq %r12,0(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 16(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - addq $32,%rbp - jnz L$sqr4x_shift_n_add - - leaq (%r14,%r10,2),%r12 -.byte 0x67 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - mulq %rax - negq %r15 - adcq %rax,%rbx - adcq %rdx,%r8 - movq %rbx,-16(%rdi) - movq %r8,-8(%rdi) -.byte 102,72,15,126,213 -__bn_sqr8x_reduction: - xorq %rax,%rax - leaq (%r9,%rbp,1),%rcx - leaq 48+8(%rsp,%r9,2),%rdx - movq %rcx,0+8(%rsp) - leaq 48+8(%rsp,%r9,1),%rdi - movq %rdx,8+8(%rsp) - negq %r9 - jmp L$8x_reduction_loop - -.p2align 5 -L$8x_reduction_loop: - leaq (%rdi,%r9,1),%rdi -.byte 0x66 - movq 0(%rdi),%rbx - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,(%rdx) - leaq 64(%rdi),%rdi - -.byte 0x67 - movq %rbx,%r8 - imulq 32+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp L$8x_reduce - -.p2align 5 -L$8x_reduce: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rbx,48-8+8(%rsp,%rcx,8) - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq 32+8(%rsp),%rsi - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz L$8x_reduce - - leaq 64(%rbp),%rbp - xorq %rax,%rax - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae L$8x_no_tail - -.byte 0x66 - addq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movq 48+56+8(%rsp),%rbx - movl $8,%ecx - movq 0(%rbp),%rax - jmp L$8x_tail - -.p2align 5 -L$8x_tail: - mulq %rbx - addq %rax,%r8 - movq 8(%rbp),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - leaq 8(%rdi),%rdi - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq 48-16+8(%rsp,%rcx,8),%rbx - addq %rax,%r15 - adcq $0,%rdx - addq %r15,%r14 - movq 0(%rbp),%rax - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz L$8x_tail - - leaq 64(%rbp),%rbp - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae L$8x_tail_done - - movq 48+56+8(%rsp),%rbx - negq %rsi - movq 0(%rbp),%rax - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movl $8,%ecx - jmp L$8x_tail - -.p2align 5 -L$8x_tail_done: - xorq %rax,%rax - addq (%rdx),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - negq %rsi -L$8x_no_tail: - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - movq -8(%rbp),%rcx - xorq %rsi,%rsi - -.byte 102,72,15,126,213 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) -.byte 102,73,15,126,217 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rdi),%rdi - - cmpq %rdx,%rdi - jb L$8x_reduction_loop - .byte 0xf3,0xc3 - - -.p2align 5 -__bn_post4x_internal: - movq 0(%rbp),%r12 - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx -.byte 102,72,15,126,207 - negq %rax -.byte 102,72,15,126,206 - sarq $3+2,%rcx - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqr4x_sub_entry - -.p2align 4 -L$sqr4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -L$sqr4x_sub_entry: - leaq 32(%rbp),%rbp - notq %r12 - notq %r13 - notq %r14 - notq %r15 - andq %rax,%r12 - andq %rax,%r13 - andq %rax,%r14 - andq %rax,%r15 - - negq %r10 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - adcq 16(%rbx),%r14 - adcq 24(%rbx),%r15 - movq %r12,0(%rdi) - leaq 32(%rbx),%rbx - movq %r13,8(%rdi) - sbbq %r10,%r10 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - - incq %rcx - jnz L$sqr4x_sub - - movq %r9,%r10 - negq %r9 - .byte 0xf3,0xc3 - -.globl _bn_from_montgomery - -.p2align 5 -_bn_from_montgomery: - testl $7,%r9d - jz bn_from_mont8x - xorl %eax,%eax - .byte 0xf3,0xc3 - - - -.p2align 5 -bn_from_mont8x: -.byte 0x67 - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$from_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$from_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$from_sp_done - -.p2align 5 -L$from_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$from_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$from_page_walk - jmp L$from_page_walk_done - -L$from_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$from_page_walk -L$from_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$from_body: - movq %r9,%r11 - leaq 48(%rsp),%rax - pxor %xmm0,%xmm0 - jmp L$mul_by_1 - -.p2align 5 -L$mul_by_1: - movdqu (%rsi),%xmm1 - movdqu 16(%rsi),%xmm2 - movdqu 32(%rsi),%xmm3 - movdqa %xmm0,(%rax,%r9,1) - movdqu 48(%rsi),%xmm4 - movdqa %xmm0,16(%rax,%r9,1) -.byte 0x48,0x8d,0xb6,0x40,0x00,0x00,0x00 - movdqa %xmm1,(%rax) - movdqa %xmm0,32(%rax,%r9,1) - movdqa %xmm2,16(%rax) - movdqa %xmm0,48(%rax,%r9,1) - movdqa %xmm3,32(%rax) - movdqa %xmm4,48(%rax) - leaq 64(%rax),%rax - subq $64,%r11 - jnz L$mul_by_1 - -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 0x67 - movq %rcx,%rbp -.byte 102,73,15,110,218 - movl _OPENSSL_ia32cap_P+8(%rip),%r11d - andl $0x80108,%r11d - cmpl $0x80108,%r11d - jne L$from_mont_nox - - leaq (%rax,%r9,1),%rdi - call __bn_sqrx8x_reduction - call __bn_postx4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp L$from_mont_zero - -.p2align 5 -L$from_mont_nox: - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp L$from_mont_zero - -.p2align 5 -L$from_mont_zero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - movdqa %xmm0,32(%rax) - movdqa %xmm0,48(%rax) - leaq 64(%rax),%rax - subq $32,%r9 - jnz L$from_mont_zero - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$from_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -bn_mulx4x_mont_gather5: - movq %rsp,%rax -L$mulx4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$mulx4x_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$mulx4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$mulx4xsp_done - -L$mulx4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$mulx4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mulx4x_page_walk - jmp L$mulx4x_page_walk_done - -L$mulx4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mulx4x_page_walk -L$mulx4x_page_walk_done: - - - - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$mulx4x_body: - call mulx4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mulx4x_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 5 -mulx4x_internal: - movq %r9,8(%rsp) - movq %r9,%r10 - negq %r9 - shlq $5,%r9 - negq %r10 - leaq 128(%rdx,%r9,1),%r13 - shrq $5+5,%r9 - movd 8(%rax),%xmm5 - subq $1,%r9 - leaq L$inc(%rip),%rax - movq %r13,16+8(%rsp) - movq %r9,24+8(%rsp) - movq %rdi,56+8(%rsp) - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r10,1),%r10 - leaq 128(%rdx),%rdi - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67 - movdqa %xmm1,%xmm2 -.byte 0x67 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 -.byte 0x67 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - - pand 64(%rdi),%xmm0 - pand 80(%rdi),%xmm1 - pand 96(%rdi),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%rdi),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%rdi),%xmm4 - movdqa -112(%rdi),%xmm5 - movdqa -96(%rdi),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%rdi),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%rdi),%xmm4 - movdqa -48(%rdi),%xmm5 - movdqa -32(%rdi),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%rdi),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%rdi),%xmm4 - movdqa 16(%rdi),%xmm5 - movdqa 32(%rdi),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%rdi),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - pxor %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%rdi),%rdi -.byte 102,72,15,126,194 - leaq 64+32+8(%rsp),%rbx - - movq %rdx,%r9 - mulxq 0(%rsi),%r8,%rax - mulxq 8(%rsi),%r11,%r12 - addq %rax,%r11 - mulxq 16(%rsi),%rax,%r13 - adcq %rax,%r12 - adcq $0,%r13 - mulxq 24(%rsi),%rax,%r14 - - movq %r8,%r15 - imulq 32+8(%rsp),%r8 - xorq %rbp,%rbp - movq %r8,%rdx - - movq %rdi,8+8(%rsp) - - leaq 32(%rsi),%rsi - adcxq %rax,%r13 - adcxq %rbp,%r14 - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - movq 24+8(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r11,-24(%rbx) - adcxq %rax,%r12 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r12,-16(%rbx) - jmp L$mulx4x_1st - -.p2align 5 -L$mulx4x_1st: - adcxq %rbp,%r15 - mulxq 0(%rsi),%r10,%rax - adcxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 -.byte 0x67,0x67 - movq %r8,%rdx - adcxq %rax,%r13 - adcxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - movq %r11,-32(%rbx) - adoxq %r15,%r13 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - leaq 32(%rcx),%rcx - movq %r13,-16(%rbx) - - decq %rdi - jnz L$mulx4x_1st - - movq 8(%rsp),%rax - adcq %rbp,%r15 - leaq (%rsi,%rax,1),%rsi - addq %r15,%r14 - movq 8+8(%rsp),%rdi - adcq %rbp,%rbp - movq %r14,-8(%rbx) - jmp L$mulx4x_outer - -.p2align 5 -L$mulx4x_outer: - leaq 16-256(%rbx),%r10 - pxor %xmm4,%xmm4 -.byte 0x67,0x67 - pxor %xmm5,%xmm5 - movdqa -128(%rdi),%xmm0 - movdqa -112(%rdi),%xmm1 - movdqa -96(%rdi),%xmm2 - pand 256(%r10),%xmm0 - movdqa -80(%rdi),%xmm3 - pand 272(%r10),%xmm1 - por %xmm0,%xmm4 - pand 288(%r10),%xmm2 - por %xmm1,%xmm5 - pand 304(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%rdi),%xmm0 - movdqa -48(%rdi),%xmm1 - movdqa -32(%rdi),%xmm2 - pand 320(%r10),%xmm0 - movdqa -16(%rdi),%xmm3 - pand 336(%r10),%xmm1 - por %xmm0,%xmm4 - pand 352(%r10),%xmm2 - por %xmm1,%xmm5 - pand 368(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%rdi),%xmm0 - movdqa 16(%rdi),%xmm1 - movdqa 32(%rdi),%xmm2 - pand 384(%r10),%xmm0 - movdqa 48(%rdi),%xmm3 - pand 400(%r10),%xmm1 - por %xmm0,%xmm4 - pand 416(%r10),%xmm2 - por %xmm1,%xmm5 - pand 432(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%rdi),%xmm0 - movdqa 80(%rdi),%xmm1 - movdqa 96(%rdi),%xmm2 - pand 448(%r10),%xmm0 - movdqa 112(%rdi),%xmm3 - pand 464(%r10),%xmm1 - por %xmm0,%xmm4 - pand 480(%r10),%xmm2 - por %xmm1,%xmm5 - pand 496(%r10),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%rdi),%rdi -.byte 102,72,15,126,194 - - movq %rbp,(%rbx) - leaq 32(%rbx,%rax,1),%rbx - mulxq 0(%rsi),%r8,%r11 - xorq %rbp,%rbp - movq %rdx,%r9 - mulxq 8(%rsi),%r14,%r12 - adoxq -32(%rbx),%r8 - adcxq %r14,%r11 - mulxq 16(%rsi),%r15,%r13 - adoxq -24(%rbx),%r11 - adcxq %r15,%r12 - mulxq 24(%rsi),%rdx,%r14 - adoxq -16(%rbx),%r12 - adcxq %rdx,%r13 - leaq (%rcx,%rax,1),%rcx - leaq 32(%rsi),%rsi - adoxq -8(%rbx),%r13 - adcxq %rbp,%r14 - adoxq %rbp,%r14 - - movq %r8,%r15 - imulq 32+8(%rsp),%r8 - - movq %r8,%rdx - xorq %rbp,%rbp - movq %rdi,8+8(%rsp) - - mulxq 0(%rcx),%rax,%r10 - adcxq %rax,%r15 - adoxq %r11,%r10 - mulxq 8(%rcx),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - mulxq 16(%rcx),%rax,%r12 - adcxq %rax,%r11 - adoxq %r13,%r12 - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - movq 24+8(%rsp),%rdi - movq %r10,-32(%rbx) - adcxq %rax,%r12 - movq %r11,-24(%rbx) - adoxq %rbp,%r15 - movq %r12,-16(%rbx) - leaq 32(%rcx),%rcx - jmp L$mulx4x_inner - -.p2align 5 -L$mulx4x_inner: - mulxq 0(%rsi),%r10,%rax - adcxq %rbp,%r15 - adoxq %r14,%r10 - mulxq 8(%rsi),%r11,%r14 - adcxq 0(%rbx),%r10 - adoxq %rax,%r11 - mulxq 16(%rsi),%r12,%rax - adcxq 8(%rbx),%r11 - adoxq %r14,%r12 - mulxq 24(%rsi),%r13,%r14 - movq %r8,%rdx - adcxq 16(%rbx),%r12 - adoxq %rax,%r13 - adcxq 24(%rbx),%r13 - adoxq %rbp,%r14 - leaq 32(%rsi),%rsi - leaq 32(%rbx),%rbx - adcxq %rbp,%r14 - - adoxq %r15,%r10 - mulxq 0(%rcx),%rax,%r15 - adcxq %rax,%r10 - adoxq %r15,%r11 - mulxq 8(%rcx),%rax,%r15 - adcxq %rax,%r11 - adoxq %r15,%r12 - mulxq 16(%rcx),%rax,%r15 - movq %r10,-40(%rbx) - adcxq %rax,%r12 - adoxq %r15,%r13 - movq %r11,-32(%rbx) - mulxq 24(%rcx),%rax,%r15 - movq %r9,%rdx - leaq 32(%rcx),%rcx - movq %r12,-24(%rbx) - adcxq %rax,%r13 - adoxq %rbp,%r15 - movq %r13,-16(%rbx) - - decq %rdi - jnz L$mulx4x_inner - - movq 0+8(%rsp),%rax - adcq %rbp,%r15 - subq 0(%rbx),%rdi - movq 8+8(%rsp),%rdi - movq 16+8(%rsp),%r10 - adcq %r15,%r14 - leaq (%rsi,%rax,1),%rsi - adcq %rbp,%rbp - movq %r14,-8(%rbx) - - cmpq %r10,%rdi - jb L$mulx4x_outer - - movq -8(%rcx),%r10 - movq %rbp,%r8 - movq (%rcx,%rax,1),%r12 - leaq (%rcx,%rax,1),%rbp - movq %rax,%rcx - leaq (%rbx,%rax,1),%rdi - xorl %eax,%eax - xorq %r15,%r15 - subq %r14,%r10 - adcq %r15,%r15 - orq %r15,%r8 - sarq $3+2,%rcx - subq %r8,%rax - movq 56+8(%rsp),%rdx - decq %r12 - movq 8(%rbp),%r13 - xorq %r8,%r8 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqrx4x_sub_entry - - -.p2align 5 -bn_powerx5: - movq %rsp,%rax -L$powerx5_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$powerx5_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$pwrx_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$pwrx_sp_done - -.p2align 5 -L$pwrx_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$pwrx_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwrx_page_walk - jmp L$pwrx_page_walk_done - -L$pwrx_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwrx_page_walk -L$pwrx_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - - - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$powerx5_body: - - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - - movq %r10,%r9 - movq %rsi,%rdi -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq 40(%rsp),%rax - - call mulx4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$powerx5_epilogue: - .byte 0xf3,0xc3 - - -.globl _bn_sqrx8x_internal -.private_extern _bn_sqrx8x_internal - -.p2align 5 -_bn_sqrx8x_internal: -__bn_sqrx8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 48+8(%rsp),%rdi - leaq (%rsi,%r9,1),%rbp - movq %r9,0+8(%rsp) - movq %rbp,8+8(%rsp) - jmp L$sqr8x_zero_start - -.p2align 5 -.byte 0x66,0x66,0x66,0x2e,0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00 -L$sqrx8x_zero: -.byte 0x3e - movdqa %xmm0,0(%rdi) - movdqa %xmm0,16(%rdi) - movdqa %xmm0,32(%rdi) - movdqa %xmm0,48(%rdi) -L$sqr8x_zero_start: - movdqa %xmm0,64(%rdi) - movdqa %xmm0,80(%rdi) - movdqa %xmm0,96(%rdi) - movdqa %xmm0,112(%rdi) - leaq 128(%rdi),%rdi - subq $64,%r9 - jnz L$sqrx8x_zero - - movq 0(%rsi),%rdx - - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r12,%r12 - xorq %r13,%r13 - xorq %r14,%r14 - xorq %r15,%r15 - leaq 48+8(%rsp),%rdi - xorq %rbp,%rbp - jmp L$sqrx8x_outer_loop - -.p2align 5 -L$sqrx8x_outer_loop: - mulxq 8(%rsi),%r8,%rax - adcxq %r9,%r8 - adoxq %rax,%r10 - mulxq 16(%rsi),%r9,%rax - adcxq %r10,%r9 - adoxq %rax,%r11 -.byte 0xc4,0xe2,0xab,0xf6,0x86,0x18,0x00,0x00,0x00 - adcxq %r11,%r10 - adoxq %rax,%r12 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x20,0x00,0x00,0x00 - adcxq %r12,%r11 - adoxq %rax,%r13 - mulxq 40(%rsi),%r12,%rax - adcxq %r13,%r12 - adoxq %rax,%r14 - mulxq 48(%rsi),%r13,%rax - adcxq %r14,%r13 - adoxq %r15,%rax - mulxq 56(%rsi),%r14,%r15 - movq 8(%rsi),%rdx - adcxq %rax,%r14 - adoxq %rbp,%r15 - adcq 64(%rdi),%r15 - movq %r8,8(%rdi) - movq %r9,16(%rdi) - sbbq %rcx,%rcx - xorq %rbp,%rbp - - - mulxq 16(%rsi),%r8,%rbx - mulxq 24(%rsi),%r9,%rax - adcxq %r10,%r8 - adoxq %rbx,%r9 - mulxq 32(%rsi),%r10,%rbx - adcxq %r11,%r9 - adoxq %rax,%r10 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x28,0x00,0x00,0x00 - adcxq %r12,%r10 - adoxq %rbx,%r11 -.byte 0xc4,0xe2,0x9b,0xf6,0x9e,0x30,0x00,0x00,0x00 - adcxq %r13,%r11 - adoxq %r14,%r12 -.byte 0xc4,0x62,0x93,0xf6,0xb6,0x38,0x00,0x00,0x00 - movq 16(%rsi),%rdx - adcxq %rax,%r12 - adoxq %rbx,%r13 - adcxq %r15,%r13 - adoxq %rbp,%r14 - adcxq %rbp,%r14 - - movq %r8,24(%rdi) - movq %r9,32(%rdi) - - mulxq 24(%rsi),%r8,%rbx - mulxq 32(%rsi),%r9,%rax - adcxq %r10,%r8 - adoxq %rbx,%r9 - mulxq 40(%rsi),%r10,%rbx - adcxq %r11,%r9 - adoxq %rax,%r10 -.byte 0xc4,0xe2,0xa3,0xf6,0x86,0x30,0x00,0x00,0x00 - adcxq %r12,%r10 - adoxq %r13,%r11 -.byte 0xc4,0x62,0x9b,0xf6,0xae,0x38,0x00,0x00,0x00 -.byte 0x3e - movq 24(%rsi),%rdx - adcxq %rbx,%r11 - adoxq %rax,%r12 - adcxq %r14,%r12 - movq %r8,40(%rdi) - movq %r9,48(%rdi) - mulxq 32(%rsi),%r8,%rax - adoxq %rbp,%r13 - adcxq %rbp,%r13 - - mulxq 40(%rsi),%r9,%rbx - adcxq %r10,%r8 - adoxq %rax,%r9 - mulxq 48(%rsi),%r10,%rax - adcxq %r11,%r9 - adoxq %r12,%r10 - mulxq 56(%rsi),%r11,%r12 - movq 32(%rsi),%rdx - movq 40(%rsi),%r14 - adcxq %rbx,%r10 - adoxq %rax,%r11 - movq 48(%rsi),%r15 - adcxq %r13,%r11 - adoxq %rbp,%r12 - adcxq %rbp,%r12 - - movq %r8,56(%rdi) - movq %r9,64(%rdi) - - mulxq %r14,%r9,%rax - movq 56(%rsi),%r8 - adcxq %r10,%r9 - mulxq %r15,%r10,%rbx - adoxq %rax,%r10 - adcxq %r11,%r10 - mulxq %r8,%r11,%rax - movq %r14,%rdx - adoxq %rbx,%r11 - adcxq %r12,%r11 - - adcxq %rbp,%rax - - mulxq %r15,%r14,%rbx - mulxq %r8,%r12,%r13 - movq %r15,%rdx - leaq 64(%rsi),%rsi - adcxq %r14,%r11 - adoxq %rbx,%r12 - adcxq %rax,%r12 - adoxq %rbp,%r13 - -.byte 0x67,0x67 - mulxq %r8,%r8,%r14 - adcxq %r8,%r13 - adcxq %rbp,%r14 - - cmpq 8+8(%rsp),%rsi - je L$sqrx8x_outer_break - - negq %rcx - movq $-8,%rcx - movq %rbp,%r15 - movq 64(%rdi),%r8 - adcxq 72(%rdi),%r9 - adcxq 80(%rdi),%r10 - adcxq 88(%rdi),%r11 - adcq 96(%rdi),%r12 - adcq 104(%rdi),%r13 - adcq 112(%rdi),%r14 - adcq 120(%rdi),%r15 - leaq (%rsi),%rbp - leaq 128(%rdi),%rdi - sbbq %rax,%rax - - movq -64(%rsi),%rdx - movq %rax,16+8(%rsp) - movq %rdi,24+8(%rsp) - - - xorl %eax,%eax - jmp L$sqrx8x_loop - -.p2align 5 -L$sqrx8x_loop: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xfb,0xf6,0xa5,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - movq %rbx,(%rdi,%rcx,8) - movl $0,%ebx - adcxq %rax,%r13 - adoxq %r15,%r14 - -.byte 0xc4,0x62,0xfb,0xf6,0xbd,0x38,0x00,0x00,0x00 - movq 8(%rsi,%rcx,8),%rdx - adcxq %rax,%r14 - adoxq %rbx,%r15 - adcxq %rbx,%r15 - -.byte 0x67 - incq %rcx - jnz L$sqrx8x_loop - - leaq 64(%rbp),%rbp - movq $-8,%rcx - cmpq 8+8(%rsp),%rbp - je L$sqrx8x_break - - subq 16+8(%rsp),%rbx -.byte 0x66 - movq -64(%rsi),%rdx - adcxq 0(%rdi),%r8 - adcxq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi -.byte 0x67 - sbbq %rax,%rax - xorl %ebx,%ebx - movq %rax,16+8(%rsp) - jmp L$sqrx8x_loop - -.p2align 5 -L$sqrx8x_break: - xorq %rbp,%rbp - subq 16+8(%rsp),%rbx - adcxq %rbp,%r8 - movq 24+8(%rsp),%rcx - adcxq %rbp,%r9 - movq 0(%rsi),%rdx - adcq $0,%r10 - movq %r8,0(%rdi) - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - cmpq %rcx,%rdi - je L$sqrx8x_outer_loop - - movq %r9,8(%rdi) - movq 8(%rcx),%r9 - movq %r10,16(%rdi) - movq 16(%rcx),%r10 - movq %r11,24(%rdi) - movq 24(%rcx),%r11 - movq %r12,32(%rdi) - movq 32(%rcx),%r12 - movq %r13,40(%rdi) - movq 40(%rcx),%r13 - movq %r14,48(%rdi) - movq 48(%rcx),%r14 - movq %r15,56(%rdi) - movq 56(%rcx),%r15 - movq %rcx,%rdi - jmp L$sqrx8x_outer_loop - -.p2align 5 -L$sqrx8x_outer_break: - movq %r9,72(%rdi) -.byte 102,72,15,126,217 - movq %r10,80(%rdi) - movq %r11,88(%rdi) - movq %r12,96(%rdi) - movq %r13,104(%rdi) - movq %r14,112(%rdi) - leaq 48+8(%rsp),%rdi - movq (%rsi,%rcx,1),%rdx - - movq 8(%rdi),%r11 - xorq %r10,%r10 - movq 0+8(%rsp),%r9 - adoxq %r11,%r11 - movq 16(%rdi),%r12 - movq 24(%rdi),%r13 - - -.p2align 5 -L$sqrx4x_shift_n_add: - mulxq %rdx,%rax,%rbx - adoxq %r12,%r12 - adcxq %r10,%rax -.byte 0x48,0x8b,0x94,0x0e,0x08,0x00,0x00,0x00 -.byte 0x4c,0x8b,0x97,0x20,0x00,0x00,0x00 - adoxq %r13,%r13 - adcxq %r11,%rbx - movq 40(%rdi),%r11 - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r10,%r10 - adcxq %r12,%rax - movq 16(%rsi,%rcx,1),%rdx - movq 48(%rdi),%r12 - adoxq %r11,%r11 - adcxq %r13,%rbx - movq 56(%rdi),%r13 - movq %rax,16(%rdi) - movq %rbx,24(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r12,%r12 - adcxq %r10,%rax - movq 24(%rsi,%rcx,1),%rdx - leaq 32(%rcx),%rcx - movq 64(%rdi),%r10 - adoxq %r13,%r13 - adcxq %r11,%rbx - movq 72(%rdi),%r11 - movq %rax,32(%rdi) - movq %rbx,40(%rdi) - - mulxq %rdx,%rax,%rbx - adoxq %r10,%r10 - adcxq %r12,%rax - jrcxz L$sqrx4x_shift_n_add_break -.byte 0x48,0x8b,0x94,0x0e,0x00,0x00,0x00,0x00 - adoxq %r11,%r11 - adcxq %r13,%rbx - movq 80(%rdi),%r12 - movq 88(%rdi),%r13 - movq %rax,48(%rdi) - movq %rbx,56(%rdi) - leaq 64(%rdi),%rdi - nop - jmp L$sqrx4x_shift_n_add - -.p2align 5 -L$sqrx4x_shift_n_add_break: - adcxq %r13,%rbx - movq %rax,48(%rdi) - movq %rbx,56(%rdi) - leaq 64(%rdi),%rdi -.byte 102,72,15,126,213 -__bn_sqrx8x_reduction: - xorl %eax,%eax - movq 32+8(%rsp),%rbx - movq 48+8(%rsp),%rdx - leaq -64(%rbp,%r9,1),%rcx - - movq %rcx,0+8(%rsp) - movq %rdi,8+8(%rsp) - - leaq 48+8(%rsp),%rdi - jmp L$sqrx8x_reduction_loop - -.p2align 5 -L$sqrx8x_reduction_loop: - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq %rdx,%r8 - imulq %rbx,%rdx - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,24+8(%rsp) - - leaq 64(%rdi),%rdi - xorq %rsi,%rsi - movq $-8,%rcx - jmp L$sqrx8x_reduce - -.p2align 5 -L$sqrx8x_reduce: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rbx,%rax - adoxq %r9,%r8 - - mulxq 8(%rbp),%rbx,%r9 - adcxq %rbx,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rbx,%r10 - adcxq %rbx,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rbx,%r11 - adcxq %rbx,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xe3,0xf6,0xa5,0x20,0x00,0x00,0x00 - movq %rdx,%rax - movq %r8,%rdx - adcxq %rbx,%r11 - adoxq %r13,%r12 - - mulxq 32+8(%rsp),%rbx,%rdx - movq %rax,%rdx - movq %rax,64+48+8(%rsp,%rcx,8) - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq %rbx,%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - adcxq %rsi,%r15 - -.byte 0x67,0x67,0x67 - incq %rcx - jnz L$sqrx8x_reduce - - movq %rsi,%rax - cmpq 0+8(%rsp),%rbp - jae L$sqrx8x_no_tail - - movq 48+8(%rsp),%rdx - addq 0(%rdi),%r8 - leaq 64(%rbp),%rbp - movq $-8,%rcx - adcxq 8(%rdi),%r9 - adcxq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi - sbbq %rax,%rax - - xorq %rsi,%rsi - movq %rax,16+8(%rsp) - jmp L$sqrx8x_tail - -.p2align 5 -L$sqrx8x_tail: - movq %r8,%rbx - mulxq 0(%rbp),%rax,%r8 - adcxq %rax,%rbx - adoxq %r9,%r8 - - mulxq 8(%rbp),%rax,%r9 - adcxq %rax,%r8 - adoxq %r10,%r9 - - mulxq 16(%rbp),%rax,%r10 - adcxq %rax,%r9 - adoxq %r11,%r10 - - mulxq 24(%rbp),%rax,%r11 - adcxq %rax,%r10 - adoxq %r12,%r11 - -.byte 0xc4,0x62,0xfb,0xf6,0xa5,0x20,0x00,0x00,0x00 - adcxq %rax,%r11 - adoxq %r13,%r12 - - mulxq 40(%rbp),%rax,%r13 - adcxq %rax,%r12 - adoxq %r14,%r13 - - mulxq 48(%rbp),%rax,%r14 - adcxq %rax,%r13 - adoxq %r15,%r14 - - mulxq 56(%rbp),%rax,%r15 - movq 72+48+8(%rsp,%rcx,8),%rdx - adcxq %rax,%r14 - adoxq %rsi,%r15 - movq %rbx,(%rdi,%rcx,8) - movq %r8,%rbx - adcxq %rsi,%r15 - - incq %rcx - jnz L$sqrx8x_tail - - cmpq 0+8(%rsp),%rbp - jae L$sqrx8x_tail_done - - subq 16+8(%rsp),%rsi - movq 48+8(%rsp),%rdx - leaq 64(%rbp),%rbp - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - leaq 64(%rdi),%rdi - sbbq %rax,%rax - subq $8,%rcx - - xorq %rsi,%rsi - movq %rax,16+8(%rsp) - jmp L$sqrx8x_tail - -.p2align 5 -L$sqrx8x_tail_done: - xorq %rax,%rax - addq 24+8(%rsp),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - subq 16+8(%rsp),%rsi -L$sqrx8x_no_tail: - adcq 0(%rdi),%r8 -.byte 102,72,15,126,217 - adcq 8(%rdi),%r9 - movq 56(%rbp),%rsi -.byte 102,72,15,126,213 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - - movq 32+8(%rsp),%rbx - movq 64(%rdi,%rcx,1),%rdx - - movq %r8,0(%rdi) - leaq 64(%rdi),%r8 - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 64(%rdi,%rcx,1),%rdi - cmpq 8+8(%rsp),%r8 - jb L$sqrx8x_reduction_loop - .byte 0xf3,0xc3 - -.p2align 5 -__bn_postx4x_internal: - movq 0(%rbp),%r12 - movq %rcx,%r10 - movq %rcx,%r9 - negq %rax - sarq $3+2,%rcx - -.byte 102,72,15,126,202 -.byte 102,72,15,126,206 - decq %r12 - movq 8(%rbp),%r13 - xorq %r8,%r8 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqrx4x_sub_entry - -.p2align 4 -L$sqrx4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -L$sqrx4x_sub_entry: - andnq %rax,%r12,%r12 - leaq 32(%rbp),%rbp - andnq %rax,%r13,%r13 - andnq %rax,%r14,%r14 - andnq %rax,%r15,%r15 - - negq %r8 - adcq 0(%rdi),%r12 - adcq 8(%rdi),%r13 - adcq 16(%rdi),%r14 - adcq 24(%rdi),%r15 - movq %r12,0(%rdx) - leaq 32(%rdi),%rdi - movq %r13,8(%rdx) - sbbq %r8,%r8 - movq %r14,16(%rdx) - movq %r15,24(%rdx) - leaq 32(%rdx),%rdx - - incq %rcx - jnz L$sqrx4x_sub - - negq %r9 - - .byte 0xf3,0xc3 - -.globl _bn_get_bits5 - -.p2align 4 -_bn_get_bits5: - leaq 0(%rdi),%r10 - leaq 1(%rdi),%r11 - movl %esi,%ecx - shrl $4,%esi - andl $15,%ecx - leal -8(%rcx),%eax - cmpl $11,%ecx - cmovaq %r11,%r10 - cmoval %eax,%ecx - movzwl (%r10,%rsi,2),%eax - shrl %cl,%eax - andl $31,%eax - .byte 0xf3,0xc3 - - -.globl _bn_scatter5 - -.p2align 4 -_bn_scatter5: - cmpl $0,%esi - jz L$scatter_epilogue - leaq (%rdx,%rcx,8),%rdx -L$scatter: - movq (%rdi),%rax - leaq 8(%rdi),%rdi - movq %rax,(%rdx) - leaq 256(%rdx),%rdx - subl $1,%esi - jnz L$scatter -L$scatter_epilogue: - .byte 0xf3,0xc3 - - -.globl _bn_gather5 - -.p2align 5 -_bn_gather5: -L$SEH_begin_bn_gather5: - -.byte 0x4c,0x8d,0x14,0x24 -.byte 0x48,0x81,0xec,0x08,0x01,0x00,0x00 - leaq L$inc(%rip),%rax - andq $-16,%rsp - - movd %ecx,%xmm5 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 128(%rdx),%r11 - leaq 128(%rsp),%rax - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-128(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-112(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-96(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-80(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-48(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-16(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,0(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,16(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,48(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,80(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,96(%rax) - movdqa %xmm4,%xmm2 - movdqa %xmm3,112(%rax) - jmp L$gather - -.p2align 5 -L$gather: - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r11),%xmm0 - movdqa -112(%r11),%xmm1 - movdqa -96(%r11),%xmm2 - pand -128(%rax),%xmm0 - movdqa -80(%r11),%xmm3 - pand -112(%rax),%xmm1 - por %xmm0,%xmm4 - pand -96(%rax),%xmm2 - por %xmm1,%xmm5 - pand -80(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r11),%xmm0 - movdqa -48(%r11),%xmm1 - movdqa -32(%r11),%xmm2 - pand -64(%rax),%xmm0 - movdqa -16(%r11),%xmm3 - pand -48(%rax),%xmm1 - por %xmm0,%xmm4 - pand -32(%rax),%xmm2 - por %xmm1,%xmm5 - pand -16(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - pand 0(%rax),%xmm0 - movdqa 48(%r11),%xmm3 - pand 16(%rax),%xmm1 - por %xmm0,%xmm4 - pand 32(%rax),%xmm2 - por %xmm1,%xmm5 - pand 48(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r11),%xmm0 - movdqa 80(%r11),%xmm1 - movdqa 96(%r11),%xmm2 - pand 64(%rax),%xmm0 - movdqa 112(%r11),%xmm3 - pand 80(%rax),%xmm1 - por %xmm0,%xmm4 - pand 96(%rax),%xmm2 - por %xmm1,%xmm5 - pand 112(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - leaq 256(%r11),%r11 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - movq %xmm0,(%rdi) - leaq 8(%rdi),%rdi - subl $1,%esi - jnz L$gather - - leaq (%r10),%rsp - .byte 0xf3,0xc3 -L$SEH_end_bn_gather5: - -.p2align 6 -L$inc: -.long 0,0, 1,1 -.long 2,2, 2,2 -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-macosx-gas/camellia/cmll-x86_64.s b/deps/openssl/asm/x64-macosx-gas/camellia/cmll-x86_64.s deleted file mode 100644 index 8025d088fdab4e..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/camellia/cmll-x86_64.s +++ /dev/null @@ -1,1838 +0,0 @@ -.text - - -.globl _Camellia_EncryptBlock - -.p2align 4 -_Camellia_EncryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp L$enc_rounds - - -.globl _Camellia_EncryptBlock_Rounds - -.p2align 4 -L$enc_rounds: -_Camellia_EncryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$enc_prologue: - - - movq %rcx,%r13 - movq %rdx,%r14 - - shll $6,%edi - leaq L$Camellia_SBOX(%rip),%rbp - leaq (%r14,%rdi,1),%r15 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$enc_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_Camellia_encrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.p2align 4 -L$eloop: - movl 16(%r14),%ebx - movl 20(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 56(%r14),%ebx - movl 60(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 64(%r14),%ebx - movl 68(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq 64(%r14),%r14 - cmpq %r15,%r14 - movl 8(%r14),%edx - movl 12(%r14),%ecx - je L$edone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - jmp L$eloop - -.p2align 4 -L$edone: - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r8d,%ecx - xorl %r9d,%edx - - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r10d - movl %edx,%r11d - -.byte 0xf3,0xc3 - - - -.globl _Camellia_DecryptBlock - -.p2align 4 -_Camellia_DecryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp L$dec_rounds - - -.globl _Camellia_DecryptBlock_Rounds - -.p2align 4 -L$dec_rounds: -_Camellia_DecryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$dec_prologue: - - - movq %rcx,%r13 - movq %rdx,%r15 - - shll $6,%edi - leaq L$Camellia_SBOX(%rip),%rbp - leaq (%r15,%rdi,1),%r14 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_decrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$dec_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_Camellia_decrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.p2align 4 -L$dloop: - movl -8(%r14),%ebx - movl -4(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -16(%r14),%ebx - movl -12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -24(%r14),%ebx - movl -20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -32(%r14),%ebx - movl -28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -40(%r14),%ebx - movl -36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -48(%r14),%ebx - movl -44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -56(%r14),%ebx - movl -52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq -64(%r14),%r14 - cmpq %r15,%r14 - movl 0(%r14),%edx - movl 4(%r14),%ecx - je L$ddone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - - jmp L$dloop - -.p2align 4 -L$ddone: - xorl %r10d,%ecx - xorl %r11d,%edx - xorl %r8d,%eax - xorl %r9d,%ebx - - movl %ecx,%r8d - movl %edx,%r9d - movl %eax,%r10d - movl %ebx,%r11d - -.byte 0xf3,0xc3 - -.globl _Camellia_Ekeygen - -.p2align 4 -_Camellia_Ekeygen: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$key_prologue: - - movl %edi,%r15d - movq %rdx,%r13 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - movl 12(%rsi),%r11d - - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,0(%r13) - movl %r8d,4(%r13) - movl %r11d,8(%r13) - movl %r10d,12(%r13) - cmpq $128,%r15 - je L$1st128 - - movl 16(%rsi),%r8d - movl 20(%rsi),%r9d - cmpq $192,%r15 - je L$1st192 - movl 24(%rsi),%r10d - movl 28(%rsi),%r11d - jmp L$1st256 -L$1st192: - movl %r8d,%r10d - movl %r9d,%r11d - notl %r10d - notl %r11d -L$1st256: - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,32(%r13) - movl %r8d,36(%r13) - movl %r11d,40(%r13) - movl %r10d,44(%r13) - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - -L$1st128: - leaq L$Camellia_SIGMA(%rip),%r14 - leaq L$Camellia_SBOX(%rip),%rbp - - movl 0(%r14),%ebx - movl 4(%r14),%eax - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 8(%r14),%ebx - movl 12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 16(%r14),%ebx - movl 20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - cmpq $128,%r15 - jne L$2nd256 - - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq -128(%r13),%rax - movq -120(%r13),%rbx - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,-96(%r13) - movq %rbx,-88(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-80(%r13) - movq %r10,-72(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-64(%r13) - movq %r10,-56(%r13) - movq %rax,%r11 - shlq $30,%rax - movq %rbx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rax - shlq $30,%rbx - orq %r11,%rbx - movq %rax,-48(%r13) - movq %rbx,-40(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-32(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rbx,-24(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-16(%r13) - movq %r10,-8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,16(%r13) - movq %rbx,24(%r13) - movq %r8,%r11 - shlq $34,%r8 - movq %r10,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%r8 - shlq $34,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r8,%r11 - shlq $17,%r8 - movq %r10,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r8 - shlq $17,%r10 - orq %r11,%r10 - movq %r8,64(%r13) - movq %r10,72(%r13) - movl $3,%eax - jmp L$done -.p2align 4 -L$2nd256: - movl %r9d,48(%r13) - movl %r8d,52(%r13) - movl %r11d,56(%r13) - movl %r10d,60(%r13) - xorl 32(%r13),%r9d - xorl 36(%r13),%r8d - xorl 40(%r13),%r11d - xorl 44(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - movq 0(%r13),%rax - movq 8(%r13),%rbx - movq 32(%r13),%rcx - movq 40(%r13),%rdx - movq 48(%r13),%r14 - movq 56(%r13),%r15 - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-96(%r13) - movq %rdx,-88(%r13) - movq %r14,%r11 - shlq $15,%r14 - movq %r15,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r14 - shlq $15,%r15 - orq %r11,%r15 - movq %r14,-80(%r13) - movq %r15,-72(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-64(%r13) - movq %rdx,-56(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,-48(%r13) - movq %r10,-40(%r13) - movq %rax,%r11 - shlq $45,%rax - movq %rbx,%r9 - shrq $19,%r9 - shrq $19,%r11 - orq %r9,%rax - shlq $45,%rbx - orq %r11,%rbx - movq %rax,-32(%r13) - movq %rbx,-24(%r13) - movq %r14,%r11 - shlq $30,%r14 - movq %r15,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r14 - shlq $30,%r15 - orq %r11,%r15 - movq %r14,-16(%r13) - movq %r15,-8(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rcx,%r11 - shlq $30,%rcx - movq %rdx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rcx - shlq $30,%rdx - orq %r11,%rdx - movq %rcx,16(%r13) - movq %rdx,24(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r14,%r11 - shlq $32,%r14 - movq %r15,%r9 - shrq $32,%r9 - shrq $32,%r11 - orq %r9,%r14 - shlq $32,%r15 - orq %r11,%r15 - movq %r14,64(%r13) - movq %r15,72(%r13) - movq %rcx,%r11 - shlq $34,%rcx - movq %rdx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rcx - shlq $34,%rdx - orq %r11,%rdx - movq %rcx,80(%r13) - movq %rdx,88(%r13) - movq %r14,%r11 - shlq $17,%r14 - movq %r15,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r14 - shlq $17,%r15 - orq %r11,%r15 - movq %r14,96(%r13) - movq %r15,104(%r13) - movq %rax,%r11 - shlq $34,%rax - movq %rbx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rax - shlq $34,%rbx - orq %r11,%rbx - movq %rax,112(%r13) - movq %rbx,120(%r13) - movq %r8,%r11 - shlq $51,%r8 - movq %r10,%r9 - shrq $13,%r9 - shrq $13,%r11 - orq %r9,%r8 - shlq $51,%r10 - orq %r11,%r10 - movq %r8,128(%r13) - movq %r10,136(%r13) - movl $4,%eax -L$done: - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$key_epilogue: - .byte 0xf3,0xc3 - -.p2align 6 -L$Camellia_SIGMA: -.long 0x3bcc908b, 0xa09e667f, 0x4caa73b2, 0xb67ae858 -.long 0xe94f82be, 0xc6ef372f, 0xf1d36f1c, 0x54ff53a5 -.long 0xde682d1d, 0x10e527fa, 0xb3e6c1fd, 0xb05688c2 -.long 0, 0, 0, 0 -L$Camellia_SBOX: -.long 0x70707000,0x70700070 -.long 0x82828200,0x2c2c002c -.long 0x2c2c2c00,0xb3b300b3 -.long 0xececec00,0xc0c000c0 -.long 0xb3b3b300,0xe4e400e4 -.long 0x27272700,0x57570057 -.long 0xc0c0c000,0xeaea00ea -.long 0xe5e5e500,0xaeae00ae -.long 0xe4e4e400,0x23230023 -.long 0x85858500,0x6b6b006b -.long 0x57575700,0x45450045 -.long 0x35353500,0xa5a500a5 -.long 0xeaeaea00,0xeded00ed -.long 0x0c0c0c00,0x4f4f004f -.long 0xaeaeae00,0x1d1d001d -.long 0x41414100,0x92920092 -.long 0x23232300,0x86860086 -.long 0xefefef00,0xafaf00af -.long 0x6b6b6b00,0x7c7c007c -.long 0x93939300,0x1f1f001f -.long 0x45454500,0x3e3e003e -.long 0x19191900,0xdcdc00dc -.long 0xa5a5a500,0x5e5e005e -.long 0x21212100,0x0b0b000b -.long 0xededed00,0xa6a600a6 -.long 0x0e0e0e00,0x39390039 -.long 0x4f4f4f00,0xd5d500d5 -.long 0x4e4e4e00,0x5d5d005d -.long 0x1d1d1d00,0xd9d900d9 -.long 0x65656500,0x5a5a005a -.long 0x92929200,0x51510051 -.long 0xbdbdbd00,0x6c6c006c -.long 0x86868600,0x8b8b008b -.long 0xb8b8b800,0x9a9a009a -.long 0xafafaf00,0xfbfb00fb -.long 0x8f8f8f00,0xb0b000b0 -.long 0x7c7c7c00,0x74740074 -.long 0xebebeb00,0x2b2b002b -.long 0x1f1f1f00,0xf0f000f0 -.long 0xcecece00,0x84840084 -.long 0x3e3e3e00,0xdfdf00df -.long 0x30303000,0xcbcb00cb -.long 0xdcdcdc00,0x34340034 -.long 0x5f5f5f00,0x76760076 -.long 0x5e5e5e00,0x6d6d006d -.long 0xc5c5c500,0xa9a900a9 -.long 0x0b0b0b00,0xd1d100d1 -.long 0x1a1a1a00,0x04040004 -.long 0xa6a6a600,0x14140014 -.long 0xe1e1e100,0x3a3a003a -.long 0x39393900,0xdede00de -.long 0xcacaca00,0x11110011 -.long 0xd5d5d500,0x32320032 -.long 0x47474700,0x9c9c009c -.long 0x5d5d5d00,0x53530053 -.long 0x3d3d3d00,0xf2f200f2 -.long 0xd9d9d900,0xfefe00fe -.long 0x01010100,0xcfcf00cf -.long 0x5a5a5a00,0xc3c300c3 -.long 0xd6d6d600,0x7a7a007a -.long 0x51515100,0x24240024 -.long 0x56565600,0xe8e800e8 -.long 0x6c6c6c00,0x60600060 -.long 0x4d4d4d00,0x69690069 -.long 0x8b8b8b00,0xaaaa00aa -.long 0x0d0d0d00,0xa0a000a0 -.long 0x9a9a9a00,0xa1a100a1 -.long 0x66666600,0x62620062 -.long 0xfbfbfb00,0x54540054 -.long 0xcccccc00,0x1e1e001e -.long 0xb0b0b000,0xe0e000e0 -.long 0x2d2d2d00,0x64640064 -.long 0x74747400,0x10100010 -.long 0x12121200,0x00000000 -.long 0x2b2b2b00,0xa3a300a3 -.long 0x20202000,0x75750075 -.long 0xf0f0f000,0x8a8a008a -.long 0xb1b1b100,0xe6e600e6 -.long 0x84848400,0x09090009 -.long 0x99999900,0xdddd00dd -.long 0xdfdfdf00,0x87870087 -.long 0x4c4c4c00,0x83830083 -.long 0xcbcbcb00,0xcdcd00cd -.long 0xc2c2c200,0x90900090 -.long 0x34343400,0x73730073 -.long 0x7e7e7e00,0xf6f600f6 -.long 0x76767600,0x9d9d009d -.long 0x05050500,0xbfbf00bf -.long 0x6d6d6d00,0x52520052 -.long 0xb7b7b700,0xd8d800d8 -.long 0xa9a9a900,0xc8c800c8 -.long 0x31313100,0xc6c600c6 -.long 0xd1d1d100,0x81810081 -.long 0x17171700,0x6f6f006f -.long 0x04040400,0x13130013 -.long 0xd7d7d700,0x63630063 -.long 0x14141400,0xe9e900e9 -.long 0x58585800,0xa7a700a7 -.long 0x3a3a3a00,0x9f9f009f -.long 0x61616100,0xbcbc00bc -.long 0xdedede00,0x29290029 -.long 0x1b1b1b00,0xf9f900f9 -.long 0x11111100,0x2f2f002f -.long 0x1c1c1c00,0xb4b400b4 -.long 0x32323200,0x78780078 -.long 0x0f0f0f00,0x06060006 -.long 0x9c9c9c00,0xe7e700e7 -.long 0x16161600,0x71710071 -.long 0x53535300,0xd4d400d4 -.long 0x18181800,0xabab00ab -.long 0xf2f2f200,0x88880088 -.long 0x22222200,0x8d8d008d -.long 0xfefefe00,0x72720072 -.long 0x44444400,0xb9b900b9 -.long 0xcfcfcf00,0xf8f800f8 -.long 0xb2b2b200,0xacac00ac -.long 0xc3c3c300,0x36360036 -.long 0xb5b5b500,0x2a2a002a -.long 0x7a7a7a00,0x3c3c003c -.long 0x91919100,0xf1f100f1 -.long 0x24242400,0x40400040 -.long 0x08080800,0xd3d300d3 -.long 0xe8e8e800,0xbbbb00bb -.long 0xa8a8a800,0x43430043 -.long 0x60606000,0x15150015 -.long 0xfcfcfc00,0xadad00ad -.long 0x69696900,0x77770077 -.long 0x50505000,0x80800080 -.long 0xaaaaaa00,0x82820082 -.long 0xd0d0d000,0xecec00ec -.long 0xa0a0a000,0x27270027 -.long 0x7d7d7d00,0xe5e500e5 -.long 0xa1a1a100,0x85850085 -.long 0x89898900,0x35350035 -.long 0x62626200,0x0c0c000c -.long 0x97979700,0x41410041 -.long 0x54545400,0xefef00ef -.long 0x5b5b5b00,0x93930093 -.long 0x1e1e1e00,0x19190019 -.long 0x95959500,0x21210021 -.long 0xe0e0e000,0x0e0e000e -.long 0xffffff00,0x4e4e004e -.long 0x64646400,0x65650065 -.long 0xd2d2d200,0xbdbd00bd -.long 0x10101000,0xb8b800b8 -.long 0xc4c4c400,0x8f8f008f -.long 0x00000000,0xebeb00eb -.long 0x48484800,0xcece00ce -.long 0xa3a3a300,0x30300030 -.long 0xf7f7f700,0x5f5f005f -.long 0x75757500,0xc5c500c5 -.long 0xdbdbdb00,0x1a1a001a -.long 0x8a8a8a00,0xe1e100e1 -.long 0x03030300,0xcaca00ca -.long 0xe6e6e600,0x47470047 -.long 0xdadada00,0x3d3d003d -.long 0x09090900,0x01010001 -.long 0x3f3f3f00,0xd6d600d6 -.long 0xdddddd00,0x56560056 -.long 0x94949400,0x4d4d004d -.long 0x87878700,0x0d0d000d -.long 0x5c5c5c00,0x66660066 -.long 0x83838300,0xcccc00cc -.long 0x02020200,0x2d2d002d -.long 0xcdcdcd00,0x12120012 -.long 0x4a4a4a00,0x20200020 -.long 0x90909000,0xb1b100b1 -.long 0x33333300,0x99990099 -.long 0x73737300,0x4c4c004c -.long 0x67676700,0xc2c200c2 -.long 0xf6f6f600,0x7e7e007e -.long 0xf3f3f300,0x05050005 -.long 0x9d9d9d00,0xb7b700b7 -.long 0x7f7f7f00,0x31310031 -.long 0xbfbfbf00,0x17170017 -.long 0xe2e2e200,0xd7d700d7 -.long 0x52525200,0x58580058 -.long 0x9b9b9b00,0x61610061 -.long 0xd8d8d800,0x1b1b001b -.long 0x26262600,0x1c1c001c -.long 0xc8c8c800,0x0f0f000f -.long 0x37373700,0x16160016 -.long 0xc6c6c600,0x18180018 -.long 0x3b3b3b00,0x22220022 -.long 0x81818100,0x44440044 -.long 0x96969600,0xb2b200b2 -.long 0x6f6f6f00,0xb5b500b5 -.long 0x4b4b4b00,0x91910091 -.long 0x13131300,0x08080008 -.long 0xbebebe00,0xa8a800a8 -.long 0x63636300,0xfcfc00fc -.long 0x2e2e2e00,0x50500050 -.long 0xe9e9e900,0xd0d000d0 -.long 0x79797900,0x7d7d007d -.long 0xa7a7a700,0x89890089 -.long 0x8c8c8c00,0x97970097 -.long 0x9f9f9f00,0x5b5b005b -.long 0x6e6e6e00,0x95950095 -.long 0xbcbcbc00,0xffff00ff -.long 0x8e8e8e00,0xd2d200d2 -.long 0x29292900,0xc4c400c4 -.long 0xf5f5f500,0x48480048 -.long 0xf9f9f900,0xf7f700f7 -.long 0xb6b6b600,0xdbdb00db -.long 0x2f2f2f00,0x03030003 -.long 0xfdfdfd00,0xdada00da -.long 0xb4b4b400,0x3f3f003f -.long 0x59595900,0x94940094 -.long 0x78787800,0x5c5c005c -.long 0x98989800,0x02020002 -.long 0x06060600,0x4a4a004a -.long 0x6a6a6a00,0x33330033 -.long 0xe7e7e700,0x67670067 -.long 0x46464600,0xf3f300f3 -.long 0x71717100,0x7f7f007f -.long 0xbababa00,0xe2e200e2 -.long 0xd4d4d400,0x9b9b009b -.long 0x25252500,0x26260026 -.long 0xababab00,0x37370037 -.long 0x42424200,0x3b3b003b -.long 0x88888800,0x96960096 -.long 0xa2a2a200,0x4b4b004b -.long 0x8d8d8d00,0xbebe00be -.long 0xfafafa00,0x2e2e002e -.long 0x72727200,0x79790079 -.long 0x07070700,0x8c8c008c -.long 0xb9b9b900,0x6e6e006e -.long 0x55555500,0x8e8e008e -.long 0xf8f8f800,0xf5f500f5 -.long 0xeeeeee00,0xb6b600b6 -.long 0xacacac00,0xfdfd00fd -.long 0x0a0a0a00,0x59590059 -.long 0x36363600,0x98980098 -.long 0x49494900,0x6a6a006a -.long 0x2a2a2a00,0x46460046 -.long 0x68686800,0xbaba00ba -.long 0x3c3c3c00,0x25250025 -.long 0x38383800,0x42420042 -.long 0xf1f1f100,0xa2a200a2 -.long 0xa4a4a400,0xfafa00fa -.long 0x40404000,0x07070007 -.long 0x28282800,0x55550055 -.long 0xd3d3d300,0xeeee00ee -.long 0x7b7b7b00,0x0a0a000a -.long 0xbbbbbb00,0x49490049 -.long 0xc9c9c900,0x68680068 -.long 0x43434300,0x38380038 -.long 0xc1c1c100,0xa4a400a4 -.long 0x15151500,0x28280028 -.long 0xe3e3e300,0x7b7b007b -.long 0xadadad00,0xc9c900c9 -.long 0xf4f4f400,0xc1c100c1 -.long 0x77777700,0xe3e300e3 -.long 0xc7c7c700,0xf4f400f4 -.long 0x80808000,0xc7c700c7 -.long 0x9e9e9e00,0x9e9e009e -.long 0x00e0e0e0,0x38003838 -.long 0x00050505,0x41004141 -.long 0x00585858,0x16001616 -.long 0x00d9d9d9,0x76007676 -.long 0x00676767,0xd900d9d9 -.long 0x004e4e4e,0x93009393 -.long 0x00818181,0x60006060 -.long 0x00cbcbcb,0xf200f2f2 -.long 0x00c9c9c9,0x72007272 -.long 0x000b0b0b,0xc200c2c2 -.long 0x00aeaeae,0xab00abab -.long 0x006a6a6a,0x9a009a9a -.long 0x00d5d5d5,0x75007575 -.long 0x00181818,0x06000606 -.long 0x005d5d5d,0x57005757 -.long 0x00828282,0xa000a0a0 -.long 0x00464646,0x91009191 -.long 0x00dfdfdf,0xf700f7f7 -.long 0x00d6d6d6,0xb500b5b5 -.long 0x00272727,0xc900c9c9 -.long 0x008a8a8a,0xa200a2a2 -.long 0x00323232,0x8c008c8c -.long 0x004b4b4b,0xd200d2d2 -.long 0x00424242,0x90009090 -.long 0x00dbdbdb,0xf600f6f6 -.long 0x001c1c1c,0x07000707 -.long 0x009e9e9e,0xa700a7a7 -.long 0x009c9c9c,0x27002727 -.long 0x003a3a3a,0x8e008e8e -.long 0x00cacaca,0xb200b2b2 -.long 0x00252525,0x49004949 -.long 0x007b7b7b,0xde00dede -.long 0x000d0d0d,0x43004343 -.long 0x00717171,0x5c005c5c -.long 0x005f5f5f,0xd700d7d7 -.long 0x001f1f1f,0xc700c7c7 -.long 0x00f8f8f8,0x3e003e3e -.long 0x00d7d7d7,0xf500f5f5 -.long 0x003e3e3e,0x8f008f8f -.long 0x009d9d9d,0x67006767 -.long 0x007c7c7c,0x1f001f1f -.long 0x00606060,0x18001818 -.long 0x00b9b9b9,0x6e006e6e -.long 0x00bebebe,0xaf00afaf -.long 0x00bcbcbc,0x2f002f2f -.long 0x008b8b8b,0xe200e2e2 -.long 0x00161616,0x85008585 -.long 0x00343434,0x0d000d0d -.long 0x004d4d4d,0x53005353 -.long 0x00c3c3c3,0xf000f0f0 -.long 0x00727272,0x9c009c9c -.long 0x00959595,0x65006565 -.long 0x00ababab,0xea00eaea -.long 0x008e8e8e,0xa300a3a3 -.long 0x00bababa,0xae00aeae -.long 0x007a7a7a,0x9e009e9e -.long 0x00b3b3b3,0xec00ecec -.long 0x00020202,0x80008080 -.long 0x00b4b4b4,0x2d002d2d -.long 0x00adadad,0x6b006b6b -.long 0x00a2a2a2,0xa800a8a8 -.long 0x00acacac,0x2b002b2b -.long 0x00d8d8d8,0x36003636 -.long 0x009a9a9a,0xa600a6a6 -.long 0x00171717,0xc500c5c5 -.long 0x001a1a1a,0x86008686 -.long 0x00353535,0x4d004d4d -.long 0x00cccccc,0x33003333 -.long 0x00f7f7f7,0xfd00fdfd -.long 0x00999999,0x66006666 -.long 0x00616161,0x58005858 -.long 0x005a5a5a,0x96009696 -.long 0x00e8e8e8,0x3a003a3a -.long 0x00242424,0x09000909 -.long 0x00565656,0x95009595 -.long 0x00404040,0x10001010 -.long 0x00e1e1e1,0x78007878 -.long 0x00636363,0xd800d8d8 -.long 0x00090909,0x42004242 -.long 0x00333333,0xcc00cccc -.long 0x00bfbfbf,0xef00efef -.long 0x00989898,0x26002626 -.long 0x00979797,0xe500e5e5 -.long 0x00858585,0x61006161 -.long 0x00686868,0x1a001a1a -.long 0x00fcfcfc,0x3f003f3f -.long 0x00ececec,0x3b003b3b -.long 0x000a0a0a,0x82008282 -.long 0x00dadada,0xb600b6b6 -.long 0x006f6f6f,0xdb00dbdb -.long 0x00535353,0xd400d4d4 -.long 0x00626262,0x98009898 -.long 0x00a3a3a3,0xe800e8e8 -.long 0x002e2e2e,0x8b008b8b -.long 0x00080808,0x02000202 -.long 0x00afafaf,0xeb00ebeb -.long 0x00282828,0x0a000a0a -.long 0x00b0b0b0,0x2c002c2c -.long 0x00747474,0x1d001d1d -.long 0x00c2c2c2,0xb000b0b0 -.long 0x00bdbdbd,0x6f006f6f -.long 0x00363636,0x8d008d8d -.long 0x00222222,0x88008888 -.long 0x00383838,0x0e000e0e -.long 0x00646464,0x19001919 -.long 0x001e1e1e,0x87008787 -.long 0x00393939,0x4e004e4e -.long 0x002c2c2c,0x0b000b0b -.long 0x00a6a6a6,0xa900a9a9 -.long 0x00303030,0x0c000c0c -.long 0x00e5e5e5,0x79007979 -.long 0x00444444,0x11001111 -.long 0x00fdfdfd,0x7f007f7f -.long 0x00888888,0x22002222 -.long 0x009f9f9f,0xe700e7e7 -.long 0x00656565,0x59005959 -.long 0x00878787,0xe100e1e1 -.long 0x006b6b6b,0xda00dada -.long 0x00f4f4f4,0x3d003d3d -.long 0x00232323,0xc800c8c8 -.long 0x00484848,0x12001212 -.long 0x00101010,0x04000404 -.long 0x00d1d1d1,0x74007474 -.long 0x00515151,0x54005454 -.long 0x00c0c0c0,0x30003030 -.long 0x00f9f9f9,0x7e007e7e -.long 0x00d2d2d2,0xb400b4b4 -.long 0x00a0a0a0,0x28002828 -.long 0x00555555,0x55005555 -.long 0x00a1a1a1,0x68006868 -.long 0x00414141,0x50005050 -.long 0x00fafafa,0xbe00bebe -.long 0x00434343,0xd000d0d0 -.long 0x00131313,0xc400c4c4 -.long 0x00c4c4c4,0x31003131 -.long 0x002f2f2f,0xcb00cbcb -.long 0x00a8a8a8,0x2a002a2a -.long 0x00b6b6b6,0xad00adad -.long 0x003c3c3c,0x0f000f0f -.long 0x002b2b2b,0xca00caca -.long 0x00c1c1c1,0x70007070 -.long 0x00ffffff,0xff00ffff -.long 0x00c8c8c8,0x32003232 -.long 0x00a5a5a5,0x69006969 -.long 0x00202020,0x08000808 -.long 0x00898989,0x62006262 -.long 0x00000000,0x00000000 -.long 0x00909090,0x24002424 -.long 0x00474747,0xd100d1d1 -.long 0x00efefef,0xfb00fbfb -.long 0x00eaeaea,0xba00baba -.long 0x00b7b7b7,0xed00eded -.long 0x00151515,0x45004545 -.long 0x00060606,0x81008181 -.long 0x00cdcdcd,0x73007373 -.long 0x00b5b5b5,0x6d006d6d -.long 0x00121212,0x84008484 -.long 0x007e7e7e,0x9f009f9f -.long 0x00bbbbbb,0xee00eeee -.long 0x00292929,0x4a004a4a -.long 0x000f0f0f,0xc300c3c3 -.long 0x00b8b8b8,0x2e002e2e -.long 0x00070707,0xc100c1c1 -.long 0x00040404,0x01000101 -.long 0x009b9b9b,0xe600e6e6 -.long 0x00949494,0x25002525 -.long 0x00212121,0x48004848 -.long 0x00666666,0x99009999 -.long 0x00e6e6e6,0xb900b9b9 -.long 0x00cecece,0xb300b3b3 -.long 0x00ededed,0x7b007b7b -.long 0x00e7e7e7,0xf900f9f9 -.long 0x003b3b3b,0xce00cece -.long 0x00fefefe,0xbf00bfbf -.long 0x007f7f7f,0xdf00dfdf -.long 0x00c5c5c5,0x71007171 -.long 0x00a4a4a4,0x29002929 -.long 0x00373737,0xcd00cdcd -.long 0x00b1b1b1,0x6c006c6c -.long 0x004c4c4c,0x13001313 -.long 0x00919191,0x64006464 -.long 0x006e6e6e,0x9b009b9b -.long 0x008d8d8d,0x63006363 -.long 0x00767676,0x9d009d9d -.long 0x00030303,0xc000c0c0 -.long 0x002d2d2d,0x4b004b4b -.long 0x00dedede,0xb700b7b7 -.long 0x00969696,0xa500a5a5 -.long 0x00262626,0x89008989 -.long 0x007d7d7d,0x5f005f5f -.long 0x00c6c6c6,0xb100b1b1 -.long 0x005c5c5c,0x17001717 -.long 0x00d3d3d3,0xf400f4f4 -.long 0x00f2f2f2,0xbc00bcbc -.long 0x004f4f4f,0xd300d3d3 -.long 0x00191919,0x46004646 -.long 0x003f3f3f,0xcf00cfcf -.long 0x00dcdcdc,0x37003737 -.long 0x00797979,0x5e005e5e -.long 0x001d1d1d,0x47004747 -.long 0x00525252,0x94009494 -.long 0x00ebebeb,0xfa00fafa -.long 0x00f3f3f3,0xfc00fcfc -.long 0x006d6d6d,0x5b005b5b -.long 0x005e5e5e,0x97009797 -.long 0x00fbfbfb,0xfe00fefe -.long 0x00696969,0x5a005a5a -.long 0x00b2b2b2,0xac00acac -.long 0x00f0f0f0,0x3c003c3c -.long 0x00313131,0x4c004c4c -.long 0x000c0c0c,0x03000303 -.long 0x00d4d4d4,0x35003535 -.long 0x00cfcfcf,0xf300f3f3 -.long 0x008c8c8c,0x23002323 -.long 0x00e2e2e2,0xb800b8b8 -.long 0x00757575,0x5d005d5d -.long 0x00a9a9a9,0x6a006a6a -.long 0x004a4a4a,0x92009292 -.long 0x00575757,0xd500d5d5 -.long 0x00848484,0x21002121 -.long 0x00111111,0x44004444 -.long 0x00454545,0x51005151 -.long 0x001b1b1b,0xc600c6c6 -.long 0x00f5f5f5,0x7d007d7d -.long 0x00e4e4e4,0x39003939 -.long 0x000e0e0e,0x83008383 -.long 0x00737373,0xdc00dcdc -.long 0x00aaaaaa,0xaa00aaaa -.long 0x00f1f1f1,0x7c007c7c -.long 0x00dddddd,0x77007777 -.long 0x00595959,0x56005656 -.long 0x00141414,0x05000505 -.long 0x006c6c6c,0x1b001b1b -.long 0x00929292,0xa400a4a4 -.long 0x00545454,0x15001515 -.long 0x00d0d0d0,0x34003434 -.long 0x00787878,0x1e001e1e -.long 0x00707070,0x1c001c1c -.long 0x00e3e3e3,0xf800f8f8 -.long 0x00494949,0x52005252 -.long 0x00808080,0x20002020 -.long 0x00505050,0x14001414 -.long 0x00a7a7a7,0xe900e9e9 -.long 0x00f6f6f6,0xbd00bdbd -.long 0x00777777,0xdd00dddd -.long 0x00939393,0xe400e4e4 -.long 0x00868686,0xa100a1a1 -.long 0x00838383,0xe000e0e0 -.long 0x002a2a2a,0x8a008a8a -.long 0x00c7c7c7,0xf100f1f1 -.long 0x005b5b5b,0xd600d6d6 -.long 0x00e9e9e9,0x7a007a7a -.long 0x00eeeeee,0xbb00bbbb -.long 0x008f8f8f,0xe300e3e3 -.long 0x00010101,0x40004040 -.long 0x003d3d3d,0x4f004f4f -.globl _Camellia_cbc_encrypt - -.p2align 4 -_Camellia_cbc_encrypt: - cmpq $0,%rdx - je L$cbc_abort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$cbc_prologue: - - movq %rsp,%rbp - subq $64,%rsp - andq $-64,%rsp - - - - leaq -64-63(%rcx),%r10 - subq %rsp,%r10 - negq %r10 - andq $0x3C0,%r10 - subq %r10,%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %r8,%rbx - movq %rcx,%r14 - movl 272(%rcx),%r15d - - movq %r8,40(%rsp) - movq %rbp,48(%rsp) - -L$cbc_body: - leaq L$Camellia_SBOX(%rip),%rbp - - movl $32,%ecx -.p2align 2 -L$cbc_prefetch_sbox: - movq 0(%rbp),%rax - movq 32(%rbp),%rsi - movq 64(%rbp),%rdi - movq 96(%rbp),%r11 - leaq 128(%rbp),%rbp - loop L$cbc_prefetch_sbox - subq $4096,%rbp - shlq $6,%r15 - movq %rdx,%rcx - leaq (%r14,%r15,1),%r15 - - cmpl $0,%r9d - je L$CBC_DECRYPT - - andq $-16,%rdx - andq $15,%rcx - leaq (%r12,%rdx,1),%rdx - movq %r14,0(%rsp) - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - cmpq %r12,%rdx - movl 0(%rbx),%r8d - movl 4(%rbx),%r9d - movl 8(%rbx),%r10d - movl 12(%rbx),%r11d - je L$cbc_enc_tail - jmp L$cbc_eloop - -.p2align 4 -L$cbc_eloop: - xorl 0(%r12),%r8d - xorl 4(%r12),%r9d - xorl 8(%r12),%r10d - bswapl %r8d - xorl 12(%r12),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - movq 0(%rsp),%r14 - bswapl %r8d - movq 8(%rsp),%rdx - bswapl %r9d - movq 16(%rsp),%rcx - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - leaq 16(%r12),%r12 - movl %r11d,12(%r13) - cmpq %rdx,%r12 - leaq 16(%r13),%r13 - jne L$cbc_eloop - - cmpq $0,%rcx - jne L$cbc_enc_tail - - movq 40(%rsp),%r13 - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - jmp L$cbc_done - -.p2align 4 -L$cbc_enc_tail: - xorq %rax,%rax - movq %rax,0+24(%rsp) - movq %rax,8+24(%rsp) - movq %rax,16(%rsp) - -L$cbc_enc_pushf: - pushfq - cld - movq %r12,%rsi - leaq 8+24(%rsp),%rdi -.long 0x9066A4F3 - popfq -L$cbc_enc_popf: - - leaq 24(%rsp),%r12 - leaq 16+24(%rsp),%rax - movq %rax,8(%rsp) - jmp L$cbc_eloop - -.p2align 4 -L$CBC_DECRYPT: - xchgq %r14,%r15 - addq $15,%rdx - andq $15,%rcx - andq $-16,%rdx - movq %r14,0(%rsp) - leaq (%r12,%rdx,1),%rdx - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - movq (%rbx),%rax - movq 8(%rbx),%rbx - jmp L$cbc_dloop -.p2align 4 -L$cbc_dloop: - movl 0(%r12),%r8d - movl 4(%r12),%r9d - movl 8(%r12),%r10d - bswapl %r8d - movl 12(%r12),%r11d - bswapl %r9d - movq %rax,0+24(%rsp) - bswapl %r10d - movq %rbx,8+24(%rsp) - bswapl %r11d - - call _x86_64_Camellia_decrypt - - movq 0(%rsp),%r14 - movq 8(%rsp),%rdx - movq 16(%rsp),%rcx - - bswapl %r8d - movq (%r12),%rax - bswapl %r9d - movq 8(%r12),%rbx - bswapl %r10d - xorl 0+24(%rsp),%r8d - bswapl %r11d - xorl 4+24(%rsp),%r9d - xorl 8+24(%rsp),%r10d - leaq 16(%r12),%r12 - xorl 12+24(%rsp),%r11d - cmpq %rdx,%r12 - je L$cbc_ddone - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - leaq 16(%r13),%r13 - jmp L$cbc_dloop - -.p2align 4 -L$cbc_ddone: - movq 40(%rsp),%rdx - cmpq $0,%rcx - jne L$cbc_dec_tail - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp L$cbc_done -.p2align 4 -L$cbc_dec_tail: - movl %r8d,0+24(%rsp) - movl %r9d,4+24(%rsp) - movl %r10d,8+24(%rsp) - movl %r11d,12+24(%rsp) - -L$cbc_dec_pushf: - pushfq - cld - leaq 8+24(%rsp),%rsi - leaq (%r13),%rdi -.long 0x9066A4F3 - popfq -L$cbc_dec_popf: - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp L$cbc_done - -.p2align 4 -L$cbc_done: - movq 48(%rsp),%rcx - movq 0(%rcx),%r15 - movq 8(%rcx),%r14 - movq 16(%rcx),%r13 - movq 24(%rcx),%r12 - movq 32(%rcx),%rbp - movq 40(%rcx),%rbx - leaq 48(%rcx),%rsp -L$cbc_abort: - .byte 0xf3,0xc3 - - -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54,95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-macosx-gas/ec/ecp_nistz256-x86_64.s b/deps/openssl/asm/x64-macosx-gas/ec/ecp_nistz256-x86_64.s deleted file mode 100644 index 19df69f08afeb9..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/ec/ecp_nistz256-x86_64.s +++ /dev/null @@ -1,3516 +0,0 @@ -.text - - - -.p2align 6 -L$poly: -.quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001 - - -L$RR: -.quad 0x0000000000000003, 0xfffffffbffffffff, 0xfffffffffffffffe, 0x00000004fffffffd - -L$One: -.long 1,1,1,1,1,1,1,1 -L$Two: -.long 2,2,2,2,2,2,2,2 -L$Three: -.long 3,3,3,3,3,3,3,3 -L$ONE_mont: -.quad 0x0000000000000001, 0xffffffff00000000, 0xffffffffffffffff, 0x00000000fffffffe - -.globl _ecp_nistz256_mul_by_2 - -.p2align 6 -_ecp_nistz256_mul_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_div_by_2 - -.p2align 5 -_ecp_nistz256_div_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq %r8,%rax - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - movq %r9,%rdx - xorq %r13,%r13 - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - adcq $0,%r13 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - cmovzq %rcx,%r10 - cmovzq %r12,%r11 - cmovzq %rsi,%r13 - - movq %r9,%rax - shrq $1,%r8 - shlq $63,%rax - movq %r10,%rdx - shrq $1,%r9 - orq %rax,%r8 - shlq $63,%rdx - movq %r11,%rcx - shrq $1,%r10 - orq %rdx,%r9 - shlq $63,%rcx - shrq $1,%r11 - shlq $63,%r13 - orq %rcx,%r10 - orq %r13,%r11 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_mul_by_3 - -.p2align 5 -_ecp_nistz256_mul_by_3: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq L$poly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq L$poly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - cmovcq %rcx,%r10 - cmovcq %r12,%r11 - - xorq %r13,%r13 - addq 0(%rsi),%r8 - adcq 8(%rsi),%r9 - movq %r8,%rax - adcq 16(%rsi),%r10 - adcq 24(%rsi),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq L$poly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq L$poly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_add - -.p2align 5 -_ecp_nistz256_add: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - addq 0(%rdx),%r8 - adcq 8(%rdx),%r9 - movq %r8,%rax - adcq 16(%rdx),%r10 - adcq 24(%rdx),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_sub - -.p2align 5 -_ecp_nistz256_sub: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - subq 0(%rdx),%r8 - sbbq 8(%rdx),%r9 - movq %r8,%rax - sbbq 16(%rdx),%r10 - sbbq 24(%rdx),%r11 - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_neg - -.p2align 5 -_ecp_nistz256_neg: - pushq %r12 - pushq %r13 - - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r13,%r13 - - subq 0(%rsi),%r8 - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r8,%rax - sbbq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - - -.globl _ecp_nistz256_to_mont - -.p2align 5 -_ecp_nistz256_to_mont: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx - leaq L$RR(%rip),%rdx - jmp L$mul_mont - - - - - - - - -.globl _ecp_nistz256_mul_mont - -.p2align 5 -_ecp_nistz256_mul_mont: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx -L$mul_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - cmpl $0x80100,%ecx - je L$mul_montx - movq %rdx,%rbx - movq 0(%rdx),%rax - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - - call __ecp_nistz256_mul_montq - jmp L$mul_mont_done - -.p2align 5 -L$mul_montx: - movq %rdx,%rbx - movq 0(%rdx),%rdx - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - leaq -128(%rsi),%rsi - - call __ecp_nistz256_mul_montx -L$mul_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_mul_montq: - - - movq %rax,%rbp - mulq %r9 - movq L$poly+8(%rip),%r14 - movq %rax,%r8 - movq %rbp,%rax - movq %rdx,%r9 - - mulq %r10 - movq L$poly+24(%rip),%r15 - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %r11 - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r12 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - xorq %r13,%r13 - movq %rdx,%r12 - - - - - - - - - - - movq %r8,%rbp - shlq $32,%r8 - mulq %r15 - shrq $32,%rbp - addq %r8,%r9 - adcq %rbp,%r10 - adcq %rax,%r11 - movq 8(%rbx),%rax - adcq %rdx,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r10 - adcq $0,%rdx - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %r9,%rax - adcq %rdx,%r13 - adcq $0,%r8 - - - - movq %r9,%rbp - shlq $32,%r9 - mulq %r15 - shrq $32,%rbp - addq %r9,%r10 - adcq %rbp,%r11 - adcq %rax,%r12 - movq 16(%rbx),%rax - adcq %rdx,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %r10,%rax - adcq %rdx,%r8 - adcq $0,%r9 - - - - movq %r10,%rbp - shlq $32,%r10 - mulq %r15 - shrq $32,%rbp - addq %r10,%r11 - adcq %rbp,%r12 - adcq %rax,%r13 - movq 24(%rbx),%rax - adcq %rdx,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r8 - adcq $0,%rdx - addq %rax,%r8 - movq %r11,%rax - adcq %rdx,%r9 - adcq $0,%r10 - - - - movq %r11,%rbp - shlq $32,%r11 - mulq %r15 - shrq $32,%rbp - addq %r11,%r12 - adcq %rbp,%r13 - movq %r12,%rcx - adcq %rax,%r8 - adcq %rdx,%r9 - movq %r13,%rbp - adcq $0,%r10 - - - - subq $-1,%r12 - movq %r8,%rbx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rdx - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rcx,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rbx,%r8 - movq %r13,8(%rdi) - cmovcq %rdx,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - - - - - - - -.globl _ecp_nistz256_sqr_mont - -.p2align 5 -_ecp_nistz256_sqr_mont: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - cmpl $0x80100,%ecx - je L$sqr_montx - movq 0(%rsi),%rax - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - - call __ecp_nistz256_sqr_montq - jmp L$sqr_mont_done - -.p2align 5 -L$sqr_montx: - movq 0(%rsi),%rdx - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - leaq -128(%rsi),%rsi - - call __ecp_nistz256_sqr_montx -L$sqr_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sqr_montq: - movq %rax,%r13 - mulq %r14 - movq %rax,%r9 - movq %r15,%rax - movq %rdx,%r10 - - mulq %r13 - addq %rax,%r10 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r13 - addq %rax,%r11 - movq %r15,%rax - adcq $0,%rdx - movq %rdx,%r12 - - - mulq %r14 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%rbp - - mulq %r14 - addq %rax,%r12 - movq %r8,%rax - adcq $0,%rdx - addq %rbp,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - - mulq %r15 - xorq %r15,%r15 - addq %rax,%r13 - movq 0(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - addq %r9,%r9 - adcq %r10,%r10 - adcq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - adcq $0,%r15 - - mulq %rax - movq %rax,%r8 - movq 8(%rsi),%rax - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r9 - adcq %rax,%r10 - movq 16(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r11 - adcq %rax,%r12 - movq 24(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r13 - adcq %rax,%r14 - movq %r8,%rax - adcq %rdx,%r15 - - movq L$poly+8(%rip),%rsi - movq L$poly+24(%rip),%rbp - - - - - movq %r8,%rcx - shlq $32,%r8 - mulq %rbp - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %rbp - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %rbp - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %rbp - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - adcq %rax,%r10 - adcq $0,%rdx - xorq %r11,%r11 - - - - addq %r8,%r12 - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %rdx,%r15 - movq %r13,%r9 - adcq $0,%r11 - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%rcx - sbbq %rbp,%r15 - sbbq $0,%r11 - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %rcx,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 - - -.p2align 5 -__ecp_nistz256_mul_montx: - - - mulxq %r9,%r8,%r9 - mulxq %r10,%rcx,%r10 - movq $32,%r14 - xorq %r13,%r13 - mulxq %r11,%rbp,%r11 - movq L$poly+24(%rip),%r15 - adcq %rcx,%r9 - mulxq %r12,%rcx,%r12 - movq %r8,%rdx - adcq %rbp,%r10 - shlxq %r14,%r8,%rbp - adcq %rcx,%r11 - shrxq %r14,%r8,%rcx - adcq $0,%r12 - - - - addq %rbp,%r9 - adcq %rcx,%r10 - - mulxq %r15,%rcx,%rbp - movq 8(%rbx),%rdx - adcq %rcx,%r11 - adcq %rbp,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r9 - adoxq %rbp,%r10 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r10 - adoxq %rbp,%r11 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r9,%rdx - adcxq %rcx,%r12 - shlxq %r14,%r9,%rcx - adoxq %rbp,%r13 - shrxq %r14,%r9,%rbp - - adcxq %r8,%r13 - adoxq %r8,%r8 - adcq $0,%r8 - - - - addq %rcx,%r10 - adcq %rbp,%r11 - - mulxq %r15,%rcx,%rbp - movq 16(%rbx),%rdx - adcq %rcx,%r12 - adcq %rbp,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r10 - adoxq %rbp,%r11 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r12 - adoxq %rbp,%r13 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r10,%rdx - adcxq %rcx,%r13 - shlxq %r14,%r10,%rcx - adoxq %rbp,%r8 - shrxq %r14,%r10,%rbp - - adcxq %r9,%r8 - adoxq %r9,%r9 - adcq $0,%r9 - - - - addq %rcx,%r11 - adcq %rbp,%r12 - - mulxq %r15,%rcx,%rbp - movq 24(%rbx),%rdx - adcq %rcx,%r13 - adcq %rbp,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - mulxq 0+128(%rsi),%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq 8+128(%rsi),%rcx,%rbp - adcxq %rcx,%r12 - adoxq %rbp,%r13 - - mulxq 16+128(%rsi),%rcx,%rbp - adcxq %rcx,%r13 - adoxq %rbp,%r8 - - mulxq 24+128(%rsi),%rcx,%rbp - movq %r11,%rdx - adcxq %rcx,%r8 - shlxq %r14,%r11,%rcx - adoxq %rbp,%r9 - shrxq %r14,%r11,%rbp - - adcxq %r10,%r9 - adoxq %r10,%r10 - adcq $0,%r10 - - - - addq %rcx,%r12 - adcq %rbp,%r13 - - mulxq %r15,%rcx,%rbp - movq %r12,%rbx - movq L$poly+8(%rip),%r14 - adcq %rcx,%r8 - movq %r13,%rdx - adcq %rbp,%r9 - adcq $0,%r10 - - - - xorl %eax,%eax - movq %r8,%rcx - sbbq $-1,%r12 - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rbp - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rbx,%r12 - cmovcq %rdx,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %rbp,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sqr_montx: - mulxq %r14,%r9,%r10 - mulxq %r15,%rcx,%r11 - xorl %eax,%eax - adcq %rcx,%r10 - mulxq %r8,%rbp,%r12 - movq %r14,%rdx - adcq %rbp,%r11 - adcq $0,%r12 - xorq %r13,%r13 - - - mulxq %r15,%rcx,%rbp - adcxq %rcx,%r11 - adoxq %rbp,%r12 - - mulxq %r8,%rcx,%rbp - movq %r15,%rdx - adcxq %rcx,%r12 - adoxq %rbp,%r13 - adcq $0,%r13 - - - mulxq %r8,%rcx,%r14 - movq 0+128(%rsi),%rdx - xorq %r15,%r15 - adcxq %r9,%r9 - adoxq %rcx,%r13 - adcxq %r10,%r10 - adoxq %r15,%r14 - - mulxq %rdx,%r8,%rbp - movq 8+128(%rsi),%rdx - adcxq %r11,%r11 - adoxq %rbp,%r9 - adcxq %r12,%r12 - mulxq %rdx,%rcx,%rax - movq 16+128(%rsi),%rdx - adcxq %r13,%r13 - adoxq %rcx,%r10 - adcxq %r14,%r14 -.byte 0x67 - mulxq %rdx,%rcx,%rbp - movq 24+128(%rsi),%rdx - adoxq %rax,%r11 - adcxq %r15,%r15 - adoxq %rcx,%r12 - movq $32,%rsi - adoxq %rbp,%r13 -.byte 0x67,0x67 - mulxq %rdx,%rcx,%rax - movq L$poly+24(%rip),%rdx - adoxq %rcx,%r14 - shlxq %rsi,%r8,%rcx - adoxq %rax,%r15 - shrxq %rsi,%r8,%rax - movq %rdx,%rbp - - - addq %rcx,%r9 - adcq %rax,%r10 - - mulxq %r8,%rcx,%r8 - adcq %rcx,%r11 - shlxq %rsi,%r9,%rcx - adcq $0,%r8 - shrxq %rsi,%r9,%rax - - - addq %rcx,%r10 - adcq %rax,%r11 - - mulxq %r9,%rcx,%r9 - adcq %rcx,%r8 - shlxq %rsi,%r10,%rcx - adcq $0,%r9 - shrxq %rsi,%r10,%rax - - - addq %rcx,%r11 - adcq %rax,%r8 - - mulxq %r10,%rcx,%r10 - adcq %rcx,%r9 - shlxq %rsi,%r11,%rcx - adcq $0,%r10 - shrxq %rsi,%r11,%rax - - - addq %rcx,%r8 - adcq %rax,%r9 - - mulxq %r11,%rcx,%r11 - adcq %rcx,%r10 - adcq $0,%r11 - - xorq %rdx,%rdx - addq %r8,%r12 - movq L$poly+8(%rip),%rsi - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %r11,%r15 - movq %r13,%r9 - adcq $0,%rdx - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%r11 - sbbq %rbp,%r15 - sbbq $0,%rdx - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %r11,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 - - - - - - - -.globl _ecp_nistz256_from_mont - -.p2align 5 -_ecp_nistz256_from_mont: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%rax - movq L$poly+24(%rip),%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq %rax,%r8 - movq L$poly+8(%rip),%r12 - - - - movq %rax,%rcx - shlq $32,%r8 - mulq %r13 - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %r13 - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %r13 - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %r13 - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - movq %r8,%rcx - adcq %rax,%r10 - movq %r9,%rsi - adcq $0,%rdx - - - - subq $-1,%r8 - movq %r10,%rax - sbbq %r12,%r9 - sbbq $0,%r10 - movq %rdx,%r11 - sbbq %r13,%rdx - sbbq %r13,%r13 - - cmovnzq %rcx,%r8 - cmovnzq %rsi,%r9 - movq %r8,0(%rdi) - cmovnzq %rax,%r10 - movq %r9,8(%rdi) - cmovzq %rdx,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - -.globl _ecp_nistz256_select_w5 - -.p2align 5 -_ecp_nistz256_select_w5: - movl _OPENSSL_ia32cap_P+8(%rip),%eax - testl $32,%eax - jnz L$avx2_select_w5 - movdqa L$One(%rip),%xmm0 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - - movdqa %xmm0,%xmm8 - pshufd $0,%xmm1,%xmm1 - - movq $16,%rax -L$select_loop_sse_w5: - - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - pcmpeqd %xmm1,%xmm15 - - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - movdqa 64(%rsi),%xmm13 - movdqa 80(%rsi),%xmm14 - leaq 96(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - pand %xmm15,%xmm13 - por %xmm12,%xmm5 - pand %xmm15,%xmm14 - por %xmm13,%xmm6 - por %xmm14,%xmm7 - - decq %rax - jnz L$select_loop_sse_w5 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - movdqu %xmm6,64(%rdi) - movdqu %xmm7,80(%rdi) - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_select_w7 - -.p2align 5 -_ecp_nistz256_select_w7: - movl _OPENSSL_ia32cap_P+8(%rip),%eax - testl $32,%eax - jnz L$avx2_select_w7 - movdqa L$One(%rip),%xmm8 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - - movdqa %xmm8,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq $64,%rax - -L$select_loop_sse_w7: - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - pcmpeqd %xmm1,%xmm15 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - leaq 64(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - prefetcht0 255(%rsi) - por %xmm12,%xmm5 - - decq %rax - jnz L$select_loop_sse_w7 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - .byte 0xf3,0xc3 - - - - -.p2align 5 -ecp_nistz256_avx2_select_w5: -L$avx2_select_w5: - vzeroupper - vmovdqa L$Two(%rip),%ymm0 - - vpxor %ymm2,%ymm2,%ymm2 - vpxor %ymm3,%ymm3,%ymm3 - vpxor %ymm4,%ymm4,%ymm4 - - vmovdqa L$One(%rip),%ymm5 - vmovdqa L$Two(%rip),%ymm10 - - vmovd %edx,%xmm1 - vpermd %ymm1,%ymm2,%ymm1 - - movq $8,%rax -L$select_loop_avx2_w5: - - vmovdqa 0(%rsi),%ymm6 - vmovdqa 32(%rsi),%ymm7 - vmovdqa 64(%rsi),%ymm8 - - vmovdqa 96(%rsi),%ymm11 - vmovdqa 128(%rsi),%ymm12 - vmovdqa 160(%rsi),%ymm13 - - vpcmpeqd %ymm1,%ymm5,%ymm9 - vpcmpeqd %ymm1,%ymm10,%ymm14 - - vpaddd %ymm0,%ymm5,%ymm5 - vpaddd %ymm0,%ymm10,%ymm10 - leaq 192(%rsi),%rsi - - vpand %ymm9,%ymm6,%ymm6 - vpand %ymm9,%ymm7,%ymm7 - vpand %ymm9,%ymm8,%ymm8 - vpand %ymm14,%ymm11,%ymm11 - vpand %ymm14,%ymm12,%ymm12 - vpand %ymm14,%ymm13,%ymm13 - - vpxor %ymm6,%ymm2,%ymm2 - vpxor %ymm7,%ymm3,%ymm3 - vpxor %ymm8,%ymm4,%ymm4 - vpxor %ymm11,%ymm2,%ymm2 - vpxor %ymm12,%ymm3,%ymm3 - vpxor %ymm13,%ymm4,%ymm4 - - decq %rax - jnz L$select_loop_avx2_w5 - - vmovdqu %ymm2,0(%rdi) - vmovdqu %ymm3,32(%rdi) - vmovdqu %ymm4,64(%rdi) - vzeroupper - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_avx2_select_w7 - -.p2align 5 -_ecp_nistz256_avx2_select_w7: -L$avx2_select_w7: - vzeroupper - vmovdqa L$Three(%rip),%ymm0 - - vpxor %ymm2,%ymm2,%ymm2 - vpxor %ymm3,%ymm3,%ymm3 - - vmovdqa L$One(%rip),%ymm4 - vmovdqa L$Two(%rip),%ymm8 - vmovdqa L$Three(%rip),%ymm12 - - vmovd %edx,%xmm1 - vpermd %ymm1,%ymm2,%ymm1 - - - movq $21,%rax -L$select_loop_avx2_w7: - - vmovdqa 0(%rsi),%ymm5 - vmovdqa 32(%rsi),%ymm6 - - vmovdqa 64(%rsi),%ymm9 - vmovdqa 96(%rsi),%ymm10 - - vmovdqa 128(%rsi),%ymm13 - vmovdqa 160(%rsi),%ymm14 - - vpcmpeqd %ymm1,%ymm4,%ymm7 - vpcmpeqd %ymm1,%ymm8,%ymm11 - vpcmpeqd %ymm1,%ymm12,%ymm15 - - vpaddd %ymm0,%ymm4,%ymm4 - vpaddd %ymm0,%ymm8,%ymm8 - vpaddd %ymm0,%ymm12,%ymm12 - leaq 192(%rsi),%rsi - - vpand %ymm7,%ymm5,%ymm5 - vpand %ymm7,%ymm6,%ymm6 - vpand %ymm11,%ymm9,%ymm9 - vpand %ymm11,%ymm10,%ymm10 - vpand %ymm15,%ymm13,%ymm13 - vpand %ymm15,%ymm14,%ymm14 - - vpxor %ymm5,%ymm2,%ymm2 - vpxor %ymm6,%ymm3,%ymm3 - vpxor %ymm9,%ymm2,%ymm2 - vpxor %ymm10,%ymm3,%ymm3 - vpxor %ymm13,%ymm2,%ymm2 - vpxor %ymm14,%ymm3,%ymm3 - - decq %rax - jnz L$select_loop_avx2_w7 - - - vmovdqa 0(%rsi),%ymm5 - vmovdqa 32(%rsi),%ymm6 - - vpcmpeqd %ymm1,%ymm4,%ymm7 - - vpand %ymm7,%ymm5,%ymm5 - vpand %ymm7,%ymm6,%ymm6 - - vpxor %ymm5,%ymm2,%ymm2 - vpxor %ymm6,%ymm3,%ymm3 - - vmovdqu %ymm2,0(%rdi) - vmovdqu %ymm3,32(%rdi) - vzeroupper - .byte 0xf3,0xc3 - - -.p2align 5 -__ecp_nistz256_add_toq: - xorq %r11,%r11 - addq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sub_fromq: - subq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq %r11,%r11 - - addq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - testq %r11,%r11 - - cmovzq %rax,%r12 - cmovzq %rbp,%r13 - movq %r12,0(%rdi) - cmovzq %rcx,%r8 - movq %r13,8(%rdi) - cmovzq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_subq: - subq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq %r11,%r11 - - addq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - testq %r11,%r11 - - cmovnzq %rax,%r12 - cmovnzq %rbp,%r13 - cmovnzq %rcx,%r8 - cmovnzq %r10,%r9 - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_mul_by_2q: - xorq %r11,%r11 - addq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_double - -.p2align 5 -_ecp_nistz256_point_double: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je L$point_doublex - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -L$point_double_shortcutq: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq L$poly+8(%rip),%r14 - movq L$poly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-0(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 32(%rbx),%rax - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-0(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rax - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 0+32(%rsp),%rax - movq 8+32(%rsp),%r14 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subq - - movq 32(%rsp),%rax - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-0(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_add - -.p2align 5 -_ecp_nistz256_point_add: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je L$point_addx - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-0(%rsi),%rsi - movq %rax,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rax - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-0(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 416(%rsp),%rax - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 512(%rsp),%rax - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq 0+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 480(%rsp),%rax - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz L$add_proceedq -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz L$add_proceedq - testq %r9,%r9 - jz L$add_doubleq - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp L$add_doneq - -.p2align 5 -L$add_doubleq: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp L$point_double_shortcutq - -.p2align 5 -L$add_proceedq: - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq 0+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0(%rsp),%rax - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 160(%rsp),%rax - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -L$add_doneq: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_add_affine - -.p2align 5 -_ecp_nistz256_point_add_affine: - movl $0x80100,%ecx - andl _OPENSSL_ia32cap_P+8(%rip),%ecx - cmpl $0x80100,%ecx - je L$point_add_affinex - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-0(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rax - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-0(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+96(%rsp),%rax - movq 8+96(%rsp),%r14 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq 0+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rax - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq 0+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand L$ONE_mont(%rip),%xmm2 - pand L$ONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - -.p2align 5 -__ecp_nistz256_add_tox: - xorq %r11,%r11 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - xorq %r10,%r10 - sbbq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sub_fromx: - xorq %r11,%r11 - sbbq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq $0,%r11 - - xorq %r10,%r10 - adcq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - - btq $0,%r11 - cmovncq %rax,%r12 - cmovncq %rbp,%r13 - movq %r12,0(%rdi) - cmovncq %rcx,%r8 - movq %r13,8(%rdi) - cmovncq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_subx: - xorq %r11,%r11 - sbbq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq $0,%r11 - - xorq %r9,%r9 - adcq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - - btq $0,%r11 - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - cmovcq %rcx,%r8 - cmovcq %r10,%r9 - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_mul_by_2x: - xorq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - xorq %r10,%r10 - sbbq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - -.p2align 5 -ecp_nistz256_point_doublex: -L$point_doublex: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -L$point_double_shortcutx: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq L$poly+8(%rip),%r14 - movq L$poly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-128(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 32(%rbx),%rdx - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-128(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montx - call __ecp_nistz256_mul_by_2x - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_tox - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montx - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rdx - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_tox - - movq 96(%rsp),%rdx - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2x - - movq 0+32(%rsp),%rdx - movq 8+32(%rsp),%r14 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montx - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subx - - movq 32(%rsp),%rdx - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-128(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromx - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - -.p2align 5 -ecp_nistz256_point_addx: -L$point_addx: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-128(%rsi),%rsi - movq %rdx,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rdx - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-128(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 544(%rsp),%rdx - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 416(%rsp),%rdx - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq -128+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 512(%rsp),%rdx - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq -128+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 480(%rsp),%rdx - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz L$add_proceedx -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz L$add_proceedx - testq %r9,%r9 - jz L$add_doublex - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp L$add_donex - -.p2align 5 -L$add_doublex: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp L$point_double_shortcutx - -.p2align 5 -L$add_proceedx: - movq 0+64(%rsp),%rdx - movq 8+64(%rsp),%r14 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 0+0(%rsp),%rdx - movq 8+0(%rsp),%r14 - leaq -128+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 544(%rsp),%rdx - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq -128+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 0(%rsp),%rdx - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 160(%rsp),%rdx - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montx - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subx - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subx - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rdx - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq -128+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 320(%rsp),%rdx - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromx - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -L$add_donex: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - -.p2align 5 -ecp_nistz256_point_add_affinex: -L$point_add_affinex: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rdx - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-128(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rdx - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-128(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 384(%rsp),%rdx - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 448(%rsp),%rdx - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq -128+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+64(%rsp),%rdx - movq 8+64(%rsp),%r14 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 0+96(%rsp),%rdx - movq 8+96(%rsp),%r14 - leaq -128+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montx - - movq 128(%rsp),%rdx - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 320(%rsp),%rdx - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq -128+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montx - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subx - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromx - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subx - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rdx - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq -128+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montx - - movq 96(%rsp),%rdx - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq -128+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montx - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromx - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand L$ONE_mont(%rip),%xmm2 - pand L$ONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/md5/md5-x86_64.s b/deps/openssl/asm/x64-macosx-gas/md5/md5-x86_64.s deleted file mode 100644 index 5b1f44ea01a076..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/md5/md5-x86_64.s +++ /dev/null @@ -1,667 +0,0 @@ -.text -.p2align 4 - -.globl _md5_block_asm_data_order - -_md5_block_asm_data_order: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r14 - pushq %r15 -L$prologue: - - - - - movq %rdi,%rbp - shlq $6,%rdx - leaq (%rsi,%rdx,1),%rdi - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - - - - - - - - cmpq %rdi,%rsi - je L$end - - -L$loop: - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r14d - movl %edx,%r15d - movl 0(%rsi),%r10d - movl %edx,%r11d - xorl %ecx,%r11d - leal -680876936(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 4(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -389564586(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 8(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal 606105819(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 12(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1044525330(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 16(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal -176418897(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 20(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal 1200080426(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 24(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1473231341(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 28(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -45705983(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 32(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1770035416(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 36(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -1958414417(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 40(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -42063(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 44(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1990404162(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 48(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1804603682(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 52(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -40341101(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 56(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1502002290(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 60(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal 1236535329(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 0(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - movl 4(%rsi),%r10d - movl %edx,%r11d - movl %edx,%r12d - notl %r11d - leal -165796510(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 24(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1069501632(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 44(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 643717713(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -373897302(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 20(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -701558691(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 40(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal 38016083(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 60(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -660478335(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 16(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -405537848(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 36(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal 568446438(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 56(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1019803690(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 12(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -187363961(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 32(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal 1163531501(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 52(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -1444681467(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 8(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -51403784(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 28(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 1735328473(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 48(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -1926607734(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - movl 20(%rsi),%r10d - movl %ecx,%r11d - leal -378558(%rax,%r10,1),%eax - movl 32(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -2022574463(%rdx,%r10,1),%edx - movl 44(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 1839030562(%rcx,%r10,1),%ecx - movl 56(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -35309556(%rbx,%r10,1),%ebx - movl 4(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -1530992060(%rax,%r10,1),%eax - movl 16(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal 1272893353(%rdx,%r10,1),%edx - movl 28(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -155497632(%rcx,%r10,1),%ecx - movl 40(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -1094730640(%rbx,%r10,1),%ebx - movl 52(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal 681279174(%rax,%r10,1),%eax - movl 0(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -358537222(%rdx,%r10,1),%edx - movl 12(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -722521979(%rcx,%r10,1),%ecx - movl 24(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal 76029189(%rbx,%r10,1),%ebx - movl 36(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -640364487(%rax,%r10,1),%eax - movl 48(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -421815835(%rdx,%r10,1),%edx - movl 60(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 530742520(%rcx,%r10,1),%ecx - movl 8(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -995338651(%rbx,%r10,1),%ebx - movl 0(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - xorl %edx,%r11d - leal -198630844(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 28(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal 1126891415(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 56(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1416354905(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 20(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -57434055(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 48(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1700485571(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 12(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1894986606(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 40(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1051523(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 4(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -2054922799(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 32(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1873313359(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 60(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -30611744(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 24(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1560198380(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 52(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal 1309151649(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 16(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal -145523070(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 44(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1120210379(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 8(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal 718787259(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 36(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -343485551(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - - addl %r8d,%eax - addl %r9d,%ebx - addl %r14d,%ecx - addl %r15d,%edx - - - addq $64,%rsi - cmpq %rdi,%rsi - jb L$loop - - -L$end: - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - movq (%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r12 - movq 24(%rsp),%rbx - movq 32(%rsp),%rbp - addq $40,%rsp -L$epilogue: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/modes/aesni-gcm-x86_64.s b/deps/openssl/asm/x64-macosx-gas/modes/aesni-gcm-x86_64.s deleted file mode 100644 index 39b2fb84ef7bfb..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/modes/aesni-gcm-x86_64.s +++ /dev/null @@ -1,753 +0,0 @@ -.text - - -.p2align 5 -_aesni_ctr32_ghash_6x: - vmovdqu 32(%r11),%xmm2 - subq $6,%rdx - vpxor %xmm4,%xmm4,%xmm4 - vmovdqu 0-128(%rcx),%xmm15 - vpaddb %xmm2,%xmm1,%xmm10 - vpaddb %xmm2,%xmm10,%xmm11 - vpaddb %xmm2,%xmm11,%xmm12 - vpaddb %xmm2,%xmm12,%xmm13 - vpaddb %xmm2,%xmm13,%xmm14 - vpxor %xmm15,%xmm1,%xmm9 - vmovdqu %xmm4,16+8(%rsp) - jmp L$oop6x - -.p2align 5 -L$oop6x: - addl $100663296,%ebx - jc L$handle_ctr32 - vmovdqu 0-32(%r9),%xmm3 - vpaddb %xmm2,%xmm14,%xmm1 - vpxor %xmm15,%xmm10,%xmm10 - vpxor %xmm15,%xmm11,%xmm11 - -L$resume_ctr32: - vmovdqu %xmm1,(%r8) - vpclmulqdq $0x10,%xmm3,%xmm7,%xmm5 - vpxor %xmm15,%xmm12,%xmm12 - vmovups 16-128(%rcx),%xmm2 - vpclmulqdq $0x01,%xmm3,%xmm7,%xmm6 - xorq %r12,%r12 - cmpq %r14,%r15 - - vaesenc %xmm2,%xmm9,%xmm9 - vmovdqu 48+8(%rsp),%xmm0 - vpxor %xmm15,%xmm13,%xmm13 - vpclmulqdq $0x00,%xmm3,%xmm7,%xmm1 - vaesenc %xmm2,%xmm10,%xmm10 - vpxor %xmm15,%xmm14,%xmm14 - setnc %r12b - vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7 - vaesenc %xmm2,%xmm11,%xmm11 - vmovdqu 16-32(%r9),%xmm3 - negq %r12 - vaesenc %xmm2,%xmm12,%xmm12 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm3,%xmm0,%xmm5 - vpxor %xmm4,%xmm8,%xmm8 - vaesenc %xmm2,%xmm13,%xmm13 - vpxor %xmm5,%xmm1,%xmm4 - andq $0x60,%r12 - vmovups 32-128(%rcx),%xmm15 - vpclmulqdq $0x10,%xmm3,%xmm0,%xmm1 - vaesenc %xmm2,%xmm14,%xmm14 - - vpclmulqdq $0x01,%xmm3,%xmm0,%xmm2 - leaq (%r14,%r12,1),%r14 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor 16+8(%rsp),%xmm8,%xmm8 - vpclmulqdq $0x11,%xmm3,%xmm0,%xmm3 - vmovdqu 64+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 88(%r14),%r13 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 80(%r14),%r12 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,32+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,40+8(%rsp) - vmovdqu 48-32(%r9),%xmm5 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 48-128(%rcx),%xmm15 - vpxor %xmm1,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm5,%xmm0,%xmm1 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm2,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm5,%xmm0,%xmm2 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor %xmm3,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm5,%xmm0,%xmm3 - vaesenc %xmm15,%xmm11,%xmm11 - vpclmulqdq $0x11,%xmm5,%xmm0,%xmm5 - vmovdqu 80+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqu 64-32(%r9),%xmm1 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 64-128(%rcx),%xmm15 - vpxor %xmm2,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm1,%xmm0,%xmm2 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm3,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm1,%xmm0,%xmm3 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 72(%r14),%r13 - vpxor %xmm5,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm1,%xmm0,%xmm5 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 64(%r14),%r12 - vpclmulqdq $0x11,%xmm1,%xmm0,%xmm1 - vmovdqu 96+8(%rsp),%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,48+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,56+8(%rsp) - vpxor %xmm2,%xmm4,%xmm4 - vmovdqu 96-32(%r9),%xmm2 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 80-128(%rcx),%xmm15 - vpxor %xmm3,%xmm6,%xmm6 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm3 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm2,%xmm0,%xmm5 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 56(%r14),%r13 - vpxor %xmm1,%xmm7,%xmm7 - vpclmulqdq $0x01,%xmm2,%xmm0,%xmm1 - vpxor 112+8(%rsp),%xmm8,%xmm8 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 48(%r14),%r12 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm2 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,64+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,72+8(%rsp) - vpxor %xmm3,%xmm4,%xmm4 - vmovdqu 112-32(%r9),%xmm3 - vaesenc %xmm15,%xmm14,%xmm14 - - vmovups 96-128(%rcx),%xmm15 - vpxor %xmm5,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm5 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm1,%xmm6,%xmm6 - vpclmulqdq $0x01,%xmm3,%xmm8,%xmm1 - vaesenc %xmm15,%xmm10,%xmm10 - movbeq 40(%r14),%r13 - vpxor %xmm2,%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm3,%xmm8,%xmm2 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 32(%r14),%r12 - vpclmulqdq $0x11,%xmm3,%xmm8,%xmm8 - vaesenc %xmm15,%xmm12,%xmm12 - movq %r13,80+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - movq %r12,88+8(%rsp) - vpxor %xmm5,%xmm6,%xmm6 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor %xmm1,%xmm6,%xmm6 - - vmovups 112-128(%rcx),%xmm15 - vpslldq $8,%xmm6,%xmm5 - vpxor %xmm2,%xmm4,%xmm4 - vmovdqu 16(%r11),%xmm3 - - vaesenc %xmm15,%xmm9,%xmm9 - vpxor %xmm8,%xmm7,%xmm7 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor %xmm5,%xmm4,%xmm4 - movbeq 24(%r14),%r13 - vaesenc %xmm15,%xmm11,%xmm11 - movbeq 16(%r14),%r12 - vpalignr $8,%xmm4,%xmm4,%xmm0 - vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4 - movq %r13,96+8(%rsp) - vaesenc %xmm15,%xmm12,%xmm12 - movq %r12,104+8(%rsp) - vaesenc %xmm15,%xmm13,%xmm13 - vmovups 128-128(%rcx),%xmm1 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vmovups 144-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm10,%xmm10 - vpsrldq $8,%xmm6,%xmm6 - vaesenc %xmm1,%xmm11,%xmm11 - vpxor %xmm6,%xmm7,%xmm7 - vaesenc %xmm1,%xmm12,%xmm12 - vpxor %xmm0,%xmm4,%xmm4 - movbeq 8(%r14),%r13 - vaesenc %xmm1,%xmm13,%xmm13 - movbeq 0(%r14),%r12 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 160-128(%rcx),%xmm1 - cmpl $11,%ebp - jb L$enc_tail - - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vaesenc %xmm1,%xmm10,%xmm10 - vaesenc %xmm1,%xmm11,%xmm11 - vaesenc %xmm1,%xmm12,%xmm12 - vaesenc %xmm1,%xmm13,%xmm13 - vmovups 176-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 192-128(%rcx),%xmm1 - je L$enc_tail - - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - - vaesenc %xmm1,%xmm9,%xmm9 - vaesenc %xmm1,%xmm10,%xmm10 - vaesenc %xmm1,%xmm11,%xmm11 - vaesenc %xmm1,%xmm12,%xmm12 - vaesenc %xmm1,%xmm13,%xmm13 - vmovups 208-128(%rcx),%xmm15 - vaesenc %xmm1,%xmm14,%xmm14 - vmovups 224-128(%rcx),%xmm1 - jmp L$enc_tail - -.p2align 5 -L$handle_ctr32: - vmovdqu (%r11),%xmm0 - vpshufb %xmm0,%xmm1,%xmm6 - vmovdqu 48(%r11),%xmm5 - vpaddd 64(%r11),%xmm6,%xmm10 - vpaddd %xmm5,%xmm6,%xmm11 - vmovdqu 0-32(%r9),%xmm3 - vpaddd %xmm5,%xmm10,%xmm12 - vpshufb %xmm0,%xmm10,%xmm10 - vpaddd %xmm5,%xmm11,%xmm13 - vpshufb %xmm0,%xmm11,%xmm11 - vpxor %xmm15,%xmm10,%xmm10 - vpaddd %xmm5,%xmm12,%xmm14 - vpshufb %xmm0,%xmm12,%xmm12 - vpxor %xmm15,%xmm11,%xmm11 - vpaddd %xmm5,%xmm13,%xmm1 - vpshufb %xmm0,%xmm13,%xmm13 - vpshufb %xmm0,%xmm14,%xmm14 - vpshufb %xmm0,%xmm1,%xmm1 - jmp L$resume_ctr32 - -.p2align 5 -L$enc_tail: - vaesenc %xmm15,%xmm9,%xmm9 - vmovdqu %xmm7,16+8(%rsp) - vpalignr $8,%xmm4,%xmm4,%xmm8 - vaesenc %xmm15,%xmm10,%xmm10 - vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4 - vpxor 0(%rdi),%xmm1,%xmm2 - vaesenc %xmm15,%xmm11,%xmm11 - vpxor 16(%rdi),%xmm1,%xmm0 - vaesenc %xmm15,%xmm12,%xmm12 - vpxor 32(%rdi),%xmm1,%xmm5 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor 48(%rdi),%xmm1,%xmm6 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor 64(%rdi),%xmm1,%xmm7 - vpxor 80(%rdi),%xmm1,%xmm3 - vmovdqu (%r8),%xmm1 - - vaesenclast %xmm2,%xmm9,%xmm9 - vmovdqu 32(%r11),%xmm2 - vaesenclast %xmm0,%xmm10,%xmm10 - vpaddb %xmm2,%xmm1,%xmm0 - movq %r13,112+8(%rsp) - leaq 96(%rdi),%rdi - vaesenclast %xmm5,%xmm11,%xmm11 - vpaddb %xmm2,%xmm0,%xmm5 - movq %r12,120+8(%rsp) - leaq 96(%rsi),%rsi - vmovdqu 0-128(%rcx),%xmm15 - vaesenclast %xmm6,%xmm12,%xmm12 - vpaddb %xmm2,%xmm5,%xmm6 - vaesenclast %xmm7,%xmm13,%xmm13 - vpaddb %xmm2,%xmm6,%xmm7 - vaesenclast %xmm3,%xmm14,%xmm14 - vpaddb %xmm2,%xmm7,%xmm3 - - addq $0x60,%r10 - subq $0x6,%rdx - jc L$6x_done - - vmovups %xmm9,-96(%rsi) - vpxor %xmm15,%xmm1,%xmm9 - vmovups %xmm10,-80(%rsi) - vmovdqa %xmm0,%xmm10 - vmovups %xmm11,-64(%rsi) - vmovdqa %xmm5,%xmm11 - vmovups %xmm12,-48(%rsi) - vmovdqa %xmm6,%xmm12 - vmovups %xmm13,-32(%rsi) - vmovdqa %xmm7,%xmm13 - vmovups %xmm14,-16(%rsi) - vmovdqa %xmm3,%xmm14 - vmovdqu 32+8(%rsp),%xmm7 - jmp L$oop6x - -L$6x_done: - vpxor 16+8(%rsp),%xmm8,%xmm8 - vpxor %xmm4,%xmm8,%xmm8 - - .byte 0xf3,0xc3 - -.globl _aesni_gcm_decrypt - -.p2align 5 -_aesni_gcm_decrypt: - xorq %r10,%r10 - cmpq $0x60,%rdx - jb L$gcm_dec_abort - - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - - vmovdqu (%r8),%xmm1 - addq $-128,%rsp - movl 12(%r8),%ebx - leaq L$bswap_mask(%rip),%r11 - leaq -128(%rcx),%r14 - movq $0xf80,%r15 - vmovdqu (%r9),%xmm8 - andq $-128,%rsp - vmovdqu (%r11),%xmm0 - leaq 128(%rcx),%rcx - leaq 32+32(%r9),%r9 - movl 240-128(%rcx),%ebp - vpshufb %xmm0,%xmm8,%xmm8 - - andq %r15,%r14 - andq %rsp,%r15 - subq %r14,%r15 - jc L$dec_no_key_aliasing - cmpq $768,%r15 - jnc L$dec_no_key_aliasing - subq %r15,%rsp -L$dec_no_key_aliasing: - - vmovdqu 80(%rdi),%xmm7 - leaq (%rdi),%r14 - vmovdqu 64(%rdi),%xmm4 - leaq -192(%rdi,%rdx,1),%r15 - vmovdqu 48(%rdi),%xmm5 - shrq $4,%rdx - xorq %r10,%r10 - vmovdqu 32(%rdi),%xmm6 - vpshufb %xmm0,%xmm7,%xmm7 - vmovdqu 16(%rdi),%xmm2 - vpshufb %xmm0,%xmm4,%xmm4 - vmovdqu (%rdi),%xmm3 - vpshufb %xmm0,%xmm5,%xmm5 - vmovdqu %xmm4,48(%rsp) - vpshufb %xmm0,%xmm6,%xmm6 - vmovdqu %xmm5,64(%rsp) - vpshufb %xmm0,%xmm2,%xmm2 - vmovdqu %xmm6,80(%rsp) - vpshufb %xmm0,%xmm3,%xmm3 - vmovdqu %xmm2,96(%rsp) - vmovdqu %xmm3,112(%rsp) - - call _aesni_ctr32_ghash_6x - - vmovups %xmm9,-96(%rsi) - vmovups %xmm10,-80(%rsi) - vmovups %xmm11,-64(%rsi) - vmovups %xmm12,-48(%rsi) - vmovups %xmm13,-32(%rsi) - vmovups %xmm14,-16(%rsi) - - vpshufb (%r11),%xmm8,%xmm8 - vmovdqu %xmm8,-64(%r9) - - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$gcm_dec_abort: - movq %r10,%rax - .byte 0xf3,0xc3 - - -.p2align 5 -_aesni_ctr32_6x: - vmovdqu 0-128(%rcx),%xmm4 - vmovdqu 32(%r11),%xmm2 - leaq -1(%rbp),%r13 - vmovups 16-128(%rcx),%xmm15 - leaq 32-128(%rcx),%r12 - vpxor %xmm4,%xmm1,%xmm9 - addl $100663296,%ebx - jc L$handle_ctr32_2 - vpaddb %xmm2,%xmm1,%xmm10 - vpaddb %xmm2,%xmm10,%xmm11 - vpxor %xmm4,%xmm10,%xmm10 - vpaddb %xmm2,%xmm11,%xmm12 - vpxor %xmm4,%xmm11,%xmm11 - vpaddb %xmm2,%xmm12,%xmm13 - vpxor %xmm4,%xmm12,%xmm12 - vpaddb %xmm2,%xmm13,%xmm14 - vpxor %xmm4,%xmm13,%xmm13 - vpaddb %xmm2,%xmm14,%xmm1 - vpxor %xmm4,%xmm14,%xmm14 - jmp L$oop_ctr32 - -.p2align 4 -L$oop_ctr32: - vaesenc %xmm15,%xmm9,%xmm9 - vaesenc %xmm15,%xmm10,%xmm10 - vaesenc %xmm15,%xmm11,%xmm11 - vaesenc %xmm15,%xmm12,%xmm12 - vaesenc %xmm15,%xmm13,%xmm13 - vaesenc %xmm15,%xmm14,%xmm14 - vmovups (%r12),%xmm15 - leaq 16(%r12),%r12 - decl %r13d - jnz L$oop_ctr32 - - vmovdqu (%r12),%xmm3 - vaesenc %xmm15,%xmm9,%xmm9 - vpxor 0(%rdi),%xmm3,%xmm4 - vaesenc %xmm15,%xmm10,%xmm10 - vpxor 16(%rdi),%xmm3,%xmm5 - vaesenc %xmm15,%xmm11,%xmm11 - vpxor 32(%rdi),%xmm3,%xmm6 - vaesenc %xmm15,%xmm12,%xmm12 - vpxor 48(%rdi),%xmm3,%xmm8 - vaesenc %xmm15,%xmm13,%xmm13 - vpxor 64(%rdi),%xmm3,%xmm2 - vaesenc %xmm15,%xmm14,%xmm14 - vpxor 80(%rdi),%xmm3,%xmm3 - leaq 96(%rdi),%rdi - - vaesenclast %xmm4,%xmm9,%xmm9 - vaesenclast %xmm5,%xmm10,%xmm10 - vaesenclast %xmm6,%xmm11,%xmm11 - vaesenclast %xmm8,%xmm12,%xmm12 - vaesenclast %xmm2,%xmm13,%xmm13 - vaesenclast %xmm3,%xmm14,%xmm14 - vmovups %xmm9,0(%rsi) - vmovups %xmm10,16(%rsi) - vmovups %xmm11,32(%rsi) - vmovups %xmm12,48(%rsi) - vmovups %xmm13,64(%rsi) - vmovups %xmm14,80(%rsi) - leaq 96(%rsi),%rsi - - .byte 0xf3,0xc3 -.p2align 5 -L$handle_ctr32_2: - vpshufb %xmm0,%xmm1,%xmm6 - vmovdqu 48(%r11),%xmm5 - vpaddd 64(%r11),%xmm6,%xmm10 - vpaddd %xmm5,%xmm6,%xmm11 - vpaddd %xmm5,%xmm10,%xmm12 - vpshufb %xmm0,%xmm10,%xmm10 - vpaddd %xmm5,%xmm11,%xmm13 - vpshufb %xmm0,%xmm11,%xmm11 - vpxor %xmm4,%xmm10,%xmm10 - vpaddd %xmm5,%xmm12,%xmm14 - vpshufb %xmm0,%xmm12,%xmm12 - vpxor %xmm4,%xmm11,%xmm11 - vpaddd %xmm5,%xmm13,%xmm1 - vpshufb %xmm0,%xmm13,%xmm13 - vpxor %xmm4,%xmm12,%xmm12 - vpshufb %xmm0,%xmm14,%xmm14 - vpxor %xmm4,%xmm13,%xmm13 - vpshufb %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm14,%xmm14 - jmp L$oop_ctr32 - - -.globl _aesni_gcm_encrypt - -.p2align 5 -_aesni_gcm_encrypt: - xorq %r10,%r10 - cmpq $288,%rdx - jb L$gcm_enc_abort - - leaq (%rsp),%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - vzeroupper - - vmovdqu (%r8),%xmm1 - addq $-128,%rsp - movl 12(%r8),%ebx - leaq L$bswap_mask(%rip),%r11 - leaq -128(%rcx),%r14 - movq $0xf80,%r15 - leaq 128(%rcx),%rcx - vmovdqu (%r11),%xmm0 - andq $-128,%rsp - movl 240-128(%rcx),%ebp - - andq %r15,%r14 - andq %rsp,%r15 - subq %r14,%r15 - jc L$enc_no_key_aliasing - cmpq $768,%r15 - jnc L$enc_no_key_aliasing - subq %r15,%rsp -L$enc_no_key_aliasing: - - leaq (%rsi),%r14 - leaq -192(%rsi,%rdx,1),%r15 - shrq $4,%rdx - - call _aesni_ctr32_6x - vpshufb %xmm0,%xmm9,%xmm8 - vpshufb %xmm0,%xmm10,%xmm2 - vmovdqu %xmm8,112(%rsp) - vpshufb %xmm0,%xmm11,%xmm4 - vmovdqu %xmm2,96(%rsp) - vpshufb %xmm0,%xmm12,%xmm5 - vmovdqu %xmm4,80(%rsp) - vpshufb %xmm0,%xmm13,%xmm6 - vmovdqu %xmm5,64(%rsp) - vpshufb %xmm0,%xmm14,%xmm7 - vmovdqu %xmm6,48(%rsp) - - call _aesni_ctr32_6x - - vmovdqu (%r9),%xmm8 - leaq 32+32(%r9),%r9 - subq $12,%rdx - movq $192,%r10 - vpshufb %xmm0,%xmm8,%xmm8 - - call _aesni_ctr32_ghash_6x - vmovdqu 32(%rsp),%xmm7 - vmovdqu (%r11),%xmm0 - vmovdqu 0-32(%r9),%xmm3 - vpunpckhqdq %xmm7,%xmm7,%xmm1 - vmovdqu 32-32(%r9),%xmm15 - vmovups %xmm9,-96(%rsi) - vpshufb %xmm0,%xmm9,%xmm9 - vpxor %xmm7,%xmm1,%xmm1 - vmovups %xmm10,-80(%rsi) - vpshufb %xmm0,%xmm10,%xmm10 - vmovups %xmm11,-64(%rsi) - vpshufb %xmm0,%xmm11,%xmm11 - vmovups %xmm12,-48(%rsi) - vpshufb %xmm0,%xmm12,%xmm12 - vmovups %xmm13,-32(%rsi) - vpshufb %xmm0,%xmm13,%xmm13 - vmovups %xmm14,-16(%rsi) - vpshufb %xmm0,%xmm14,%xmm14 - vmovdqu %xmm9,16(%rsp) - vmovdqu 48(%rsp),%xmm6 - vmovdqu 16-32(%r9),%xmm0 - vpunpckhqdq %xmm6,%xmm6,%xmm2 - vpclmulqdq $0x00,%xmm3,%xmm7,%xmm5 - vpxor %xmm6,%xmm2,%xmm2 - vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1 - - vmovdqu 64(%rsp),%xmm9 - vpclmulqdq $0x00,%xmm0,%xmm6,%xmm4 - vmovdqu 48-32(%r9),%xmm3 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm9,%xmm9,%xmm5 - vpclmulqdq $0x11,%xmm0,%xmm6,%xmm6 - vpxor %xmm9,%xmm5,%xmm5 - vpxor %xmm7,%xmm6,%xmm6 - vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2 - vmovdqu 80-32(%r9),%xmm15 - vpxor %xmm1,%xmm2,%xmm2 - - vmovdqu 80(%rsp),%xmm1 - vpclmulqdq $0x00,%xmm3,%xmm9,%xmm7 - vmovdqu 64-32(%r9),%xmm0 - vpxor %xmm4,%xmm7,%xmm7 - vpunpckhqdq %xmm1,%xmm1,%xmm4 - vpclmulqdq $0x11,%xmm3,%xmm9,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpxor %xmm6,%xmm9,%xmm9 - vpclmulqdq $0x00,%xmm15,%xmm5,%xmm5 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 96(%rsp),%xmm2 - vpclmulqdq $0x00,%xmm0,%xmm1,%xmm6 - vmovdqu 96-32(%r9),%xmm3 - vpxor %xmm7,%xmm6,%xmm6 - vpunpckhqdq %xmm2,%xmm2,%xmm7 - vpclmulqdq $0x11,%xmm0,%xmm1,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpxor %xmm9,%xmm1,%xmm1 - vpclmulqdq $0x10,%xmm15,%xmm4,%xmm4 - vmovdqu 128-32(%r9),%xmm15 - vpxor %xmm5,%xmm4,%xmm4 - - vpxor 112(%rsp),%xmm8,%xmm8 - vpclmulqdq $0x00,%xmm3,%xmm2,%xmm5 - vmovdqu 112-32(%r9),%xmm0 - vpunpckhqdq %xmm8,%xmm8,%xmm9 - vpxor %xmm6,%xmm5,%xmm5 - vpclmulqdq $0x11,%xmm3,%xmm2,%xmm2 - vpxor %xmm8,%xmm9,%xmm9 - vpxor %xmm1,%xmm2,%xmm2 - vpclmulqdq $0x00,%xmm15,%xmm7,%xmm7 - vpxor %xmm4,%xmm7,%xmm4 - - vpclmulqdq $0x00,%xmm0,%xmm8,%xmm6 - vmovdqu 0-32(%r9),%xmm3 - vpunpckhqdq %xmm14,%xmm14,%xmm1 - vpclmulqdq $0x11,%xmm0,%xmm8,%xmm8 - vpxor %xmm14,%xmm1,%xmm1 - vpxor %xmm5,%xmm6,%xmm5 - vpclmulqdq $0x10,%xmm15,%xmm9,%xmm9 - vmovdqu 32-32(%r9),%xmm15 - vpxor %xmm2,%xmm8,%xmm7 - vpxor %xmm4,%xmm9,%xmm6 - - vmovdqu 16-32(%r9),%xmm0 - vpxor %xmm5,%xmm7,%xmm9 - vpclmulqdq $0x00,%xmm3,%xmm14,%xmm4 - vpxor %xmm9,%xmm6,%xmm6 - vpunpckhqdq %xmm13,%xmm13,%xmm2 - vpclmulqdq $0x11,%xmm3,%xmm14,%xmm14 - vpxor %xmm13,%xmm2,%xmm2 - vpslldq $8,%xmm6,%xmm9 - vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1 - vpxor %xmm9,%xmm5,%xmm8 - vpsrldq $8,%xmm6,%xmm6 - vpxor %xmm6,%xmm7,%xmm7 - - vpclmulqdq $0x00,%xmm0,%xmm13,%xmm5 - vmovdqu 48-32(%r9),%xmm3 - vpxor %xmm4,%xmm5,%xmm5 - vpunpckhqdq %xmm12,%xmm12,%xmm9 - vpclmulqdq $0x11,%xmm0,%xmm13,%xmm13 - vpxor %xmm12,%xmm9,%xmm9 - vpxor %xmm14,%xmm13,%xmm13 - vpalignr $8,%xmm8,%xmm8,%xmm14 - vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2 - vmovdqu 80-32(%r9),%xmm15 - vpxor %xmm1,%xmm2,%xmm2 - - vpclmulqdq $0x00,%xmm3,%xmm12,%xmm4 - vmovdqu 64-32(%r9),%xmm0 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm11,%xmm11,%xmm1 - vpclmulqdq $0x11,%xmm3,%xmm12,%xmm12 - vpxor %xmm11,%xmm1,%xmm1 - vpxor %xmm13,%xmm12,%xmm12 - vxorps 16(%rsp),%xmm7,%xmm7 - vpclmulqdq $0x00,%xmm15,%xmm9,%xmm9 - vpxor %xmm2,%xmm9,%xmm9 - - vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8 - vxorps %xmm14,%xmm8,%xmm8 - - vpclmulqdq $0x00,%xmm0,%xmm11,%xmm5 - vmovdqu 96-32(%r9),%xmm3 - vpxor %xmm4,%xmm5,%xmm5 - vpunpckhqdq %xmm10,%xmm10,%xmm2 - vpclmulqdq $0x11,%xmm0,%xmm11,%xmm11 - vpxor %xmm10,%xmm2,%xmm2 - vpalignr $8,%xmm8,%xmm8,%xmm14 - vpxor %xmm12,%xmm11,%xmm11 - vpclmulqdq $0x10,%xmm15,%xmm1,%xmm1 - vmovdqu 128-32(%r9),%xmm15 - vpxor %xmm9,%xmm1,%xmm1 - - vxorps %xmm7,%xmm14,%xmm14 - vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8 - vxorps %xmm14,%xmm8,%xmm8 - - vpclmulqdq $0x00,%xmm3,%xmm10,%xmm4 - vmovdqu 112-32(%r9),%xmm0 - vpxor %xmm5,%xmm4,%xmm4 - vpunpckhqdq %xmm8,%xmm8,%xmm9 - vpclmulqdq $0x11,%xmm3,%xmm10,%xmm10 - vpxor %xmm8,%xmm9,%xmm9 - vpxor %xmm11,%xmm10,%xmm10 - vpclmulqdq $0x00,%xmm15,%xmm2,%xmm2 - vpxor %xmm1,%xmm2,%xmm2 - - vpclmulqdq $0x00,%xmm0,%xmm8,%xmm5 - vpclmulqdq $0x11,%xmm0,%xmm8,%xmm7 - vpxor %xmm4,%xmm5,%xmm5 - vpclmulqdq $0x10,%xmm15,%xmm9,%xmm6 - vpxor %xmm10,%xmm7,%xmm7 - vpxor %xmm2,%xmm6,%xmm6 - - vpxor %xmm5,%xmm7,%xmm4 - vpxor %xmm4,%xmm6,%xmm6 - vpslldq $8,%xmm6,%xmm1 - vmovdqu 16(%r11),%xmm3 - vpsrldq $8,%xmm6,%xmm6 - vpxor %xmm1,%xmm5,%xmm8 - vpxor %xmm6,%xmm7,%xmm7 - - vpalignr $8,%xmm8,%xmm8,%xmm2 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8 - vpxor %xmm2,%xmm8,%xmm8 - - vpalignr $8,%xmm8,%xmm8,%xmm2 - vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8 - vpxor %xmm7,%xmm2,%xmm2 - vpxor %xmm2,%xmm8,%xmm8 - vpshufb (%r11),%xmm8,%xmm8 - vmovdqu %xmm8,-64(%r9) - - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$gcm_enc_abort: - movq %r10,%rax - .byte 0xf3,0xc3 - -.p2align 6 -L$bswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -L$poly: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -L$one_msb: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -L$two_lsb: -.byte 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -L$one_lsb: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108,101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/modes/ghash-x86_64.s b/deps/openssl/asm/x64-macosx-gas/modes/ghash-x86_64.s deleted file mode 100644 index 76f3b7cdfd1590..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/modes/ghash-x86_64.s +++ /dev/null @@ -1,1789 +0,0 @@ -.text - - -.globl _gcm_gmult_4bit - -.p2align 4 -_gcm_gmult_4bit: - pushq %rbx - pushq %rbp - pushq %r12 -L$gmult_prologue: - - movzbq 15(%rdi),%r8 - leaq L$rem_4bit(%rip),%r11 - xorq %rax,%rax - xorq %rbx,%rbx - movb %r8b,%al - movb %r8b,%bl - shlb $4,%al - movq $14,%rcx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - movq %r8,%rdx - jmp L$oop1 - -.p2align 4 -L$oop1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - movb (%rdi,%rcx,1),%al - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - movb %al,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - shlb $4,%al - xorq %r10,%r8 - decq %rcx - js L$break1 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - jmp L$oop1 - -.p2align 4 -L$break1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - xorq %r10,%r8 - xorq (%r11,%rdx,8),%r9 - - bswapq %r8 - bswapq %r9 - movq %r8,8(%rdi) - movq %r9,(%rdi) - - movq 16(%rsp),%rbx - leaq 24(%rsp),%rsp -L$gmult_epilogue: - .byte 0xf3,0xc3 - -.globl _gcm_ghash_4bit - -.p2align 4 -_gcm_ghash_4bit: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $280,%rsp -L$ghash_prologue: - movq %rdx,%r14 - movq %rcx,%r15 - subq $-128,%rsi - leaq 16+128(%rsp),%rbp - xorl %edx,%edx - movq 0+0-128(%rsi),%r8 - movq 0+8-128(%rsi),%rax - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq 16+0-128(%rsi),%r9 - shlb $4,%dl - movq 16+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,0(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,0(%rbp) - movq 32+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,0-128(%rbp) - movq 32+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,1(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,8(%rbp) - movq 48+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,8-128(%rbp) - movq 48+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,2(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,16(%rbp) - movq 64+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,16-128(%rbp) - movq 64+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,3(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,24(%rbp) - movq 80+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,24-128(%rbp) - movq 80+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,4(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,32(%rbp) - movq 96+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,32-128(%rbp) - movq 96+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,5(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,40(%rbp) - movq 112+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,40-128(%rbp) - movq 112+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,6(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,48(%rbp) - movq 128+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,48-128(%rbp) - movq 128+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,7(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,56(%rbp) - movq 144+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,56-128(%rbp) - movq 144+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,8(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,64(%rbp) - movq 160+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,64-128(%rbp) - movq 160+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,9(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,72(%rbp) - movq 176+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,72-128(%rbp) - movq 176+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,10(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,80(%rbp) - movq 192+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,80-128(%rbp) - movq 192+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,11(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,88(%rbp) - movq 208+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,88-128(%rbp) - movq 208+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,12(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,96(%rbp) - movq 224+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,96-128(%rbp) - movq 224+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,13(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,104(%rbp) - movq 240+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,104-128(%rbp) - movq 240+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,14(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,112(%rbp) - shlb $4,%dl - movq %rax,112-128(%rbp) - shlq $60,%r10 - movb %dl,15(%rsp) - orq %r10,%rbx - movq %r9,120(%rbp) - movq %rbx,120-128(%rbp) - addq $-128,%rsi - movq 8(%rdi),%r8 - movq 0(%rdi),%r9 - addq %r14,%r15 - leaq L$rem_8bit(%rip),%r11 - jmp L$outer_loop -.p2align 4 -L$outer_loop: - xorq (%r14),%r9 - movq 8(%r14),%rdx - leaq 16(%r14),%r14 - xorq %r8,%rdx - movq %r9,(%rdi) - movq %rdx,8(%rdi) - shrq $32,%rdx - xorq %rax,%rax - roll $8,%edx - movb %dl,%al - movzbl %dl,%ebx - shlb $4,%al - shrl $4,%ebx - roll $8,%edx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - movb %dl,%al - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - xorq %r8,%r12 - movq %r9,%r10 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 8(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 0(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - andl $240,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl -4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - movzwq (%r11,%r12,2),%r12 - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - shlq $48,%r12 - xorq %r10,%r8 - xorq %r12,%r9 - movzbq %r8b,%r13 - shrq $4,%r8 - movq %r9,%r10 - shlb $4,%r13b - shrq $4,%r9 - xorq 8(%rsi,%rcx,1),%r8 - movzwq (%r11,%r13,2),%r13 - shlq $60,%r10 - xorq (%rsi,%rcx,1),%r9 - xorq %r10,%r8 - shlq $48,%r13 - bswapq %r8 - xorq %r13,%r9 - bswapq %r9 - cmpq %r15,%r14 - jb L$outer_loop - movq %r8,8(%rdi) - movq %r9,(%rdi) - - leaq 280(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$ghash_epilogue: - .byte 0xf3,0xc3 - -.globl _gcm_init_clmul - -.p2align 4 -_gcm_init_clmul: -L$_init_clmul: - movdqu (%rsi),%xmm2 - pshufd $78,%xmm2,%xmm2 - - - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - - - pand L$0x1c2_polynomial(%rip),%xmm5 - pxor %xmm5,%xmm2 - - - pshufd $78,%xmm2,%xmm6 - movdqa %xmm2,%xmm0 - pxor %xmm2,%xmm6 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,0(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%rdi) - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm5 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm5,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm5,%xmm3 - movdqu %xmm5,48(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,64(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,80(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_gmult_clmul - -.p2align 4 -_gcm_gmult_clmul: -L$_gmult_clmul: - movdqu (%rdi),%xmm0 - movdqa L$bswap_mask(%rip),%xmm5 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm4 -.byte 102,15,56,0,197 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_ghash_clmul - -.p2align 5 -_gcm_ghash_clmul: -L$_ghash_clmul: - movdqa L$bswap_mask(%rip),%xmm10 - - movdqu (%rdi),%xmm0 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm7 -.byte 102,65,15,56,0,194 - - subq $0x10,%rcx - jz L$odd_tail - - movdqu 16(%rsi),%xmm6 - movl _OPENSSL_ia32cap_P+4(%rip),%eax - cmpq $0x30,%rcx - jb L$skip4x - - andl $71303168,%eax - cmpl $4194304,%eax - je L$skip4x - - subq $0x30,%rcx - movq $0xA040608020C0E000,%rax - movdqu 48(%rsi),%xmm14 - movdqu 64(%rsi),%xmm15 - - - - - movdqu 48(%rdx),%xmm3 - movdqu 32(%rdx),%xmm11 -.byte 102,65,15,56,0,218 -.byte 102,69,15,56,0,218 - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm11,%xmm12 -.byte 102,68,15,58,68,222,0 -.byte 102,68,15,58,68,238,17 -.byte 102,68,15,58,68,231,16 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 - xorps %xmm12,%xmm4 - - movdqu 16(%rdx),%xmm11 - movdqu 0(%rdx),%xmm8 -.byte 102,69,15,56,0,218 -.byte 102,69,15,56,0,194 - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm8,%xmm0 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 -.byte 102,69,15,58,68,238,17 -.byte 102,68,15,58,68,231,0 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jc L$tail4x - - jmp L$mod4_loop -.p2align 5 -L$mod4_loop: -.byte 102,65,15,58,68,199,0 - xorps %xmm12,%xmm4 - movdqu 48(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,65,15,58,68,207,17 - xorps %xmm3,%xmm0 - movdqu 32(%rdx),%xmm3 - movdqa %xmm11,%xmm13 -.byte 102,68,15,58,68,199,16 - pshufd $78,%xmm11,%xmm12 - xorps %xmm5,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,65,15,56,0,218 - movups 32(%rsi),%xmm7 - xorps %xmm4,%xmm8 -.byte 102,68,15,58,68,218,0 - pshufd $78,%xmm3,%xmm4 - - pxor %xmm0,%xmm8 - movdqa %xmm3,%xmm5 - pxor %xmm1,%xmm8 - pxor %xmm3,%xmm4 - movdqa %xmm8,%xmm9 -.byte 102,68,15,58,68,234,17 - pslldq $8,%xmm8 - psrldq $8,%xmm9 - pxor %xmm8,%xmm0 - movdqa L$7_mask(%rip),%xmm8 - pxor %xmm9,%xmm1 -.byte 102,76,15,110,200 - - pand %xmm0,%xmm8 -.byte 102,69,15,56,0,200 - pxor %xmm0,%xmm9 -.byte 102,68,15,58,68,231,0 - psllq $57,%xmm9 - movdqa %xmm9,%xmm8 - pslldq $8,%xmm9 -.byte 102,15,58,68,222,0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - movdqu 0(%rdx),%xmm8 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,238,17 - xorps %xmm11,%xmm3 - movdqu 16(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,15,58,68,231,16 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 -.byte 102,69,15,56,0,194 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - - movdqa %xmm11,%xmm13 - pxor %xmm12,%xmm4 - pshufd $78,%xmm11,%xmm12 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm1 -.byte 102,69,15,58,68,238,17 - xorps %xmm11,%xmm3 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 - -.byte 102,68,15,58,68,231,0 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jnc L$mod4_loop - -L$tail4x: -.byte 102,65,15,58,68,199,0 -.byte 102,65,15,58,68,207,17 -.byte 102,68,15,58,68,199,16 - xorps %xmm12,%xmm4 - xorps %xmm3,%xmm0 - xorps %xmm5,%xmm1 - pxor %xmm0,%xmm1 - pxor %xmm4,%xmm8 - - pxor %xmm1,%xmm8 - pxor %xmm0,%xmm1 - - movdqa %xmm8,%xmm9 - psrldq $8,%xmm8 - pslldq $8,%xmm9 - pxor %xmm8,%xmm1 - pxor %xmm9,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - addq $0x40,%rcx - jz L$done - movdqu 32(%rsi),%xmm7 - subq $0x10,%rcx - jz L$odd_tail -L$skip4x: - - - - - - movdqu (%rdx),%xmm8 - movdqu 16(%rdx),%xmm3 -.byte 102,69,15,56,0,194 -.byte 102,65,15,56,0,218 - pxor %xmm8,%xmm0 - - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - leaq 32(%rdx),%rdx - nop - subq $0x20,%rcx - jbe L$even_tail - nop - jmp L$mod_loop - -.p2align 5 -L$mod_loop: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - movdqu (%rdx),%xmm9 - pxor %xmm0,%xmm8 -.byte 102,69,15,56,0,202 - movdqu 16(%rdx),%xmm3 - - pxor %xmm1,%xmm8 - pxor %xmm9,%xmm1 - pxor %xmm8,%xmm4 -.byte 102,65,15,56,0,218 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm3,%xmm5 - - movdqa %xmm0,%xmm9 - movdqa %xmm0,%xmm8 - psllq $5,%xmm0 - pxor %xmm0,%xmm8 -.byte 102,15,58,68,218,0 - psllq $1,%xmm0 - pxor %xmm8,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm8 - pslldq $8,%xmm0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pshufd $78,%xmm5,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm5,%xmm4 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,234,17 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - pxor %xmm9,%xmm0 - leaq 32(%rdx),%rdx - psrlq $1,%xmm0 -.byte 102,15,58,68,231,0 - pxor %xmm1,%xmm0 - - subq $0x20,%rcx - ja L$mod_loop - -L$even_tail: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm1,%xmm8 - pxor %xmm8,%xmm4 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testq %rcx,%rcx - jnz L$done - -L$odd_tail: - movdqu (%rdx),%xmm8 -.byte 102,69,15,56,0,194 - pxor %xmm8,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,223,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -L$done: -.byte 102,65,15,56,0,194 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_init_avx - -.p2align 5 -_gcm_init_avx: - vzeroupper - - vmovdqu (%rsi),%xmm2 - vpshufd $78,%xmm2,%xmm2 - - - vpshufd $255,%xmm2,%xmm4 - vpsrlq $63,%xmm2,%xmm3 - vpsllq $1,%xmm2,%xmm2 - vpxor %xmm5,%xmm5,%xmm5 - vpcmpgtd %xmm4,%xmm5,%xmm5 - vpslldq $8,%xmm3,%xmm3 - vpor %xmm3,%xmm2,%xmm2 - - - vpand L$0x1c2_polynomial(%rip),%xmm5,%xmm5 - vpxor %xmm5,%xmm2,%xmm2 - - vpunpckhqdq %xmm2,%xmm2,%xmm6 - vmovdqa %xmm2,%xmm0 - vpxor %xmm2,%xmm6,%xmm6 - movq $4,%r10 - jmp L$init_start_avx -.p2align 5 -L$init_loop_avx: - vpalignr $8,%xmm3,%xmm4,%xmm5 - vmovdqu %xmm5,-16(%rdi) - vpunpckhqdq %xmm0,%xmm0,%xmm3 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm3,%xmm3 - vpxor %xmm0,%xmm1,%xmm4 - vpxor %xmm4,%xmm3,%xmm3 - - vpslldq $8,%xmm3,%xmm4 - vpsrldq $8,%xmm3,%xmm3 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm3,%xmm1,%xmm1 - vpsllq $57,%xmm0,%xmm3 - vpsllq $62,%xmm0,%xmm4 - vpxor %xmm3,%xmm4,%xmm4 - vpsllq $63,%xmm0,%xmm3 - vpxor %xmm3,%xmm4,%xmm4 - vpslldq $8,%xmm4,%xmm3 - vpsrldq $8,%xmm4,%xmm4 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm4,%xmm1,%xmm1 - - vpsrlq $1,%xmm0,%xmm4 - vpxor %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $5,%xmm4,%xmm4 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $1,%xmm0,%xmm0 - vpxor %xmm1,%xmm0,%xmm0 -L$init_start_avx: - vmovdqa %xmm0,%xmm5 - vpunpckhqdq %xmm0,%xmm0,%xmm3 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x00,%xmm2,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm3,%xmm3 - vpxor %xmm0,%xmm1,%xmm4 - vpxor %xmm4,%xmm3,%xmm3 - - vpslldq $8,%xmm3,%xmm4 - vpsrldq $8,%xmm3,%xmm3 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm3,%xmm1,%xmm1 - vpsllq $57,%xmm0,%xmm3 - vpsllq $62,%xmm0,%xmm4 - vpxor %xmm3,%xmm4,%xmm4 - vpsllq $63,%xmm0,%xmm3 - vpxor %xmm3,%xmm4,%xmm4 - vpslldq $8,%xmm4,%xmm3 - vpsrldq $8,%xmm4,%xmm4 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm4,%xmm1,%xmm1 - - vpsrlq $1,%xmm0,%xmm4 - vpxor %xmm0,%xmm1,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $5,%xmm4,%xmm4 - vpxor %xmm4,%xmm0,%xmm0 - vpsrlq $1,%xmm0,%xmm0 - vpxor %xmm1,%xmm0,%xmm0 - vpshufd $78,%xmm5,%xmm3 - vpshufd $78,%xmm0,%xmm4 - vpxor %xmm5,%xmm3,%xmm3 - vmovdqu %xmm5,0(%rdi) - vpxor %xmm0,%xmm4,%xmm4 - vmovdqu %xmm0,16(%rdi) - leaq 48(%rdi),%rdi - subq $1,%r10 - jnz L$init_loop_avx - - vpalignr $8,%xmm4,%xmm3,%xmm5 - vmovdqu %xmm5,-16(%rdi) - - vzeroupper - .byte 0xf3,0xc3 - -.globl _gcm_gmult_avx - -.p2align 5 -_gcm_gmult_avx: - jmp L$_gmult_clmul - -.globl _gcm_ghash_avx - -.p2align 5 -_gcm_ghash_avx: - vzeroupper - - vmovdqu (%rdi),%xmm10 - leaq L$0x1c2_polynomial(%rip),%r10 - leaq 64(%rsi),%rsi - vmovdqu L$bswap_mask(%rip),%xmm13 - vpshufb %xmm13,%xmm10,%xmm10 - cmpq $0x80,%rcx - jb L$short_avx - subq $0x80,%rcx - - vmovdqu 112(%rdx),%xmm14 - vmovdqu 0-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm14 - vmovdqu 32-64(%rsi),%xmm7 - - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vmovdqu 96(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm14,%xmm9,%xmm9 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 16-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vmovdqu 80(%rdx),%xmm14 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 48-64(%rsi),%xmm6 - vpxor %xmm14,%xmm9,%xmm9 - vmovdqu 64(%rdx),%xmm15 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 80-64(%rsi),%xmm7 - - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vmovdqu 48(%rdx),%xmm14 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm4,%xmm1,%xmm1 - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 96-64(%rsi),%xmm6 - vpxor %xmm5,%xmm2,%xmm2 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 128-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu 32(%rdx),%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - - vmovdqu 16(%rdx),%xmm14 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm4,%xmm1,%xmm1 - vpshufb %xmm13,%xmm14,%xmm14 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 144-64(%rsi),%xmm6 - vpxor %xmm5,%xmm2,%xmm2 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 176-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu (%rdx),%xmm15 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm1,%xmm4,%xmm4 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 160-64(%rsi),%xmm6 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x10,%xmm7,%xmm9,%xmm2 - - leaq 128(%rdx),%rdx - cmpq $0x80,%rcx - jb L$tail_avx - - vpxor %xmm10,%xmm15,%xmm15 - subq $0x80,%rcx - jmp L$oop8x_avx - -.p2align 5 -L$oop8x_avx: - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vmovdqu 112(%rdx),%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpxor %xmm15,%xmm8,%xmm8 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm10 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm11 - vmovdqu 0-64(%rsi),%xmm6 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm12 - vmovdqu 32-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - - vmovdqu 96(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpxor %xmm3,%xmm10,%xmm10 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vxorps %xmm4,%xmm11,%xmm11 - vmovdqu 16-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm5,%xmm12,%xmm12 - vxorps %xmm15,%xmm8,%xmm8 - - vmovdqu 80(%rdx),%xmm14 - vpxor %xmm10,%xmm12,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpxor %xmm11,%xmm12,%xmm12 - vpslldq $8,%xmm12,%xmm9 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vpsrldq $8,%xmm12,%xmm12 - vpxor %xmm9,%xmm10,%xmm10 - vmovdqu 48-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm14 - vxorps %xmm12,%xmm11,%xmm11 - vpxor %xmm1,%xmm4,%xmm4 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 80-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 64(%rdx),%xmm15 - vpalignr $8,%xmm10,%xmm10,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm4,%xmm1,%xmm1 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vxorps %xmm15,%xmm8,%xmm8 - vpxor %xmm5,%xmm2,%xmm2 - - vmovdqu 48(%rdx),%xmm14 - vpclmulqdq $0x10,(%r10),%xmm10,%xmm10 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 96-64(%rsi),%xmm6 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 128-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu 32(%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpxor %xmm3,%xmm0,%xmm0 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm4,%xmm1,%xmm1 - vpclmulqdq $0x00,%xmm7,%xmm9,%xmm2 - vpxor %xmm15,%xmm8,%xmm8 - vpxor %xmm5,%xmm2,%xmm2 - vxorps %xmm12,%xmm10,%xmm10 - - vmovdqu 16(%rdx),%xmm14 - vpalignr $8,%xmm10,%xmm10,%xmm12 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm3 - vpshufb %xmm13,%xmm14,%xmm14 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm4 - vmovdqu 144-64(%rsi),%xmm6 - vpclmulqdq $0x10,(%r10),%xmm10,%xmm10 - vxorps %xmm11,%xmm12,%xmm12 - vpunpckhqdq %xmm14,%xmm14,%xmm9 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x10,%xmm7,%xmm8,%xmm5 - vmovdqu 176-64(%rsi),%xmm7 - vpxor %xmm14,%xmm9,%xmm9 - vpxor %xmm2,%xmm5,%xmm5 - - vmovdqu (%rdx),%xmm15 - vpclmulqdq $0x00,%xmm6,%xmm14,%xmm0 - vpshufb %xmm13,%xmm15,%xmm15 - vpclmulqdq $0x11,%xmm6,%xmm14,%xmm1 - vmovdqu 160-64(%rsi),%xmm6 - vpxor %xmm12,%xmm15,%xmm15 - vpclmulqdq $0x10,%xmm7,%xmm9,%xmm2 - vpxor %xmm10,%xmm15,%xmm15 - - leaq 128(%rdx),%rdx - subq $0x80,%rcx - jnc L$oop8x_avx - - addq $0x80,%rcx - jmp L$tail_no_xor_avx - -.p2align 5 -L$short_avx: - vmovdqu -16(%rdx,%rcx,1),%xmm14 - leaq (%rdx,%rcx,1),%rdx - vmovdqu 0-64(%rsi),%xmm6 - vmovdqu 32-64(%rsi),%xmm7 - vpshufb %xmm13,%xmm14,%xmm15 - - vmovdqa %xmm0,%xmm3 - vmovdqa %xmm1,%xmm4 - vmovdqa %xmm2,%xmm5 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -32(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 16-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -48(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 48-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovdqu 80-64(%rsi),%xmm7 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -64(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 64-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -80(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 96-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovdqu 128-64(%rsi),%xmm7 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -96(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 112-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vpsrldq $8,%xmm7,%xmm7 - subq $0x10,%rcx - jz L$tail_avx - - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vmovdqu -112(%rdx),%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vmovdqu 144-64(%rsi),%xmm6 - vpshufb %xmm13,%xmm14,%xmm15 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - vmovq 184-64(%rsi),%xmm7 - subq $0x10,%rcx - jmp L$tail_avx - -.p2align 5 -L$tail_avx: - vpxor %xmm10,%xmm15,%xmm15 -L$tail_no_xor_avx: - vpunpckhqdq %xmm15,%xmm15,%xmm8 - vpxor %xmm0,%xmm3,%xmm3 - vpclmulqdq $0x00,%xmm6,%xmm15,%xmm0 - vpxor %xmm15,%xmm8,%xmm8 - vpxor %xmm1,%xmm4,%xmm4 - vpclmulqdq $0x11,%xmm6,%xmm15,%xmm1 - vpxor %xmm2,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm7,%xmm8,%xmm2 - - vmovdqu (%r10),%xmm12 - - vpxor %xmm0,%xmm3,%xmm10 - vpxor %xmm1,%xmm4,%xmm11 - vpxor %xmm2,%xmm5,%xmm5 - - vpxor %xmm10,%xmm5,%xmm5 - vpxor %xmm11,%xmm5,%xmm5 - vpslldq $8,%xmm5,%xmm9 - vpsrldq $8,%xmm5,%xmm5 - vpxor %xmm9,%xmm10,%xmm10 - vpxor %xmm5,%xmm11,%xmm11 - - vpclmulqdq $0x10,%xmm12,%xmm10,%xmm9 - vpalignr $8,%xmm10,%xmm10,%xmm10 - vpxor %xmm9,%xmm10,%xmm10 - - vpclmulqdq $0x10,%xmm12,%xmm10,%xmm9 - vpalignr $8,%xmm10,%xmm10,%xmm10 - vpxor %xmm11,%xmm10,%xmm10 - vpxor %xmm9,%xmm10,%xmm10 - - cmpq $0,%rcx - jne L$short_avx - - vpshufb %xmm13,%xmm10,%xmm10 - vmovdqu %xmm10,(%rdi) - vzeroupper - .byte 0xf3,0xc3 - -.p2align 6 -L$bswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -L$0x1c2_polynomial: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -L$7_mask: -.long 7,0,7,0 -L$7_mask_poly: -.long 7,0,450,0 -.p2align 6 - -L$rem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 - -L$rem_8bit: -.value 0x0000,0x01C2,0x0384,0x0246,0x0708,0x06CA,0x048C,0x054E -.value 0x0E10,0x0FD2,0x0D94,0x0C56,0x0918,0x08DA,0x0A9C,0x0B5E -.value 0x1C20,0x1DE2,0x1FA4,0x1E66,0x1B28,0x1AEA,0x18AC,0x196E -.value 0x1230,0x13F2,0x11B4,0x1076,0x1538,0x14FA,0x16BC,0x177E -.value 0x3840,0x3982,0x3BC4,0x3A06,0x3F48,0x3E8A,0x3CCC,0x3D0E -.value 0x3650,0x3792,0x35D4,0x3416,0x3158,0x309A,0x32DC,0x331E -.value 0x2460,0x25A2,0x27E4,0x2626,0x2368,0x22AA,0x20EC,0x212E -.value 0x2A70,0x2BB2,0x29F4,0x2836,0x2D78,0x2CBA,0x2EFC,0x2F3E -.value 0x7080,0x7142,0x7304,0x72C6,0x7788,0x764A,0x740C,0x75CE -.value 0x7E90,0x7F52,0x7D14,0x7CD6,0x7998,0x785A,0x7A1C,0x7BDE -.value 0x6CA0,0x6D62,0x6F24,0x6EE6,0x6BA8,0x6A6A,0x682C,0x69EE -.value 0x62B0,0x6372,0x6134,0x60F6,0x65B8,0x647A,0x663C,0x67FE -.value 0x48C0,0x4902,0x4B44,0x4A86,0x4FC8,0x4E0A,0x4C4C,0x4D8E -.value 0x46D0,0x4712,0x4554,0x4496,0x41D8,0x401A,0x425C,0x439E -.value 0x54E0,0x5522,0x5764,0x56A6,0x53E8,0x522A,0x506C,0x51AE -.value 0x5AF0,0x5B32,0x5974,0x58B6,0x5DF8,0x5C3A,0x5E7C,0x5FBE -.value 0xE100,0xE0C2,0xE284,0xE346,0xE608,0xE7CA,0xE58C,0xE44E -.value 0xEF10,0xEED2,0xEC94,0xED56,0xE818,0xE9DA,0xEB9C,0xEA5E -.value 0xFD20,0xFCE2,0xFEA4,0xFF66,0xFA28,0xFBEA,0xF9AC,0xF86E -.value 0xF330,0xF2F2,0xF0B4,0xF176,0xF438,0xF5FA,0xF7BC,0xF67E -.value 0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A,0xDDCC,0xDC0E -.value 0xD750,0xD692,0xD4D4,0xD516,0xD058,0xD19A,0xD3DC,0xD21E -.value 0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E -.value 0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE3E -.value 0x9180,0x9042,0x9204,0x93C6,0x9688,0x974A,0x950C,0x94CE -.value 0x9F90,0x9E52,0x9C14,0x9DD6,0x9898,0x995A,0x9B1C,0x9ADE -.value 0x8DA0,0x8C62,0x8E24,0x8FE6,0x8AA8,0x8B6A,0x892C,0x88EE -.value 0x83B0,0x8272,0x8034,0x81F6,0x84B8,0x857A,0x873C,0x86FE -.value 0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A,0xAD4C,0xAC8E -.value 0xA7D0,0xA612,0xA454,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E -.value 0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE -.value 0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBEBE - -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/sha/sha1-mb-x86_64.s b/deps/openssl/asm/x64-macosx-gas/sha/sha1-mb-x86_64.s deleted file mode 100644 index ac6ad9bb8cbb31..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/sha/sha1-mb-x86_64.s +++ /dev/null @@ -1,7221 +0,0 @@ -.text - - - -.globl _sha1_multi_block - -.p2align 5 -_sha1_multi_block: - movq _OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - testl $268435456,%ecx - jnz _avx_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - -L$oop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done - - movdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - movdqu 32(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 96(%rdi),%xmm13 - movdqu 128(%rdi),%xmm14 - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - jmp L$oop - -.p2align 5 -L$oop: - movd (%r8),%xmm0 - leaq 64(%r8),%r8 - movd (%r9),%xmm2 - leaq 64(%r9),%r9 - movd (%r10),%xmm3 - leaq 64(%r10),%r10 - movd (%r11),%xmm4 - leaq 64(%r11),%r11 - punpckldq %xmm3,%xmm0 - movd -60(%r8),%xmm1 - punpckldq %xmm4,%xmm2 - movd -60(%r9),%xmm9 - punpckldq %xmm2,%xmm0 - movd -60(%r10),%xmm8 -.byte 102,15,56,0,197 - movd -60(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,0-128(%rax) - paddd %xmm0,%xmm14 - movd -56(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -56(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -56(%r10),%xmm8 - por %xmm7,%xmm11 - movd -56(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,16-128(%rax) - paddd %xmm1,%xmm13 - movd -52(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -52(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -52(%r10),%xmm8 - por %xmm7,%xmm10 - movd -52(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,32-128(%rax) - paddd %xmm2,%xmm12 - movd -48(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -48(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -48(%r10),%xmm8 - por %xmm7,%xmm14 - movd -48(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,48-128(%rax) - paddd %xmm3,%xmm11 - movd -44(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -44(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -44(%r10),%xmm8 - por %xmm7,%xmm13 - movd -44(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,64-128(%rax) - paddd %xmm4,%xmm10 - movd -40(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -40(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -40(%r10),%xmm8 - por %xmm7,%xmm12 - movd -40(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,80-128(%rax) - paddd %xmm0,%xmm14 - movd -36(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -36(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -36(%r10),%xmm8 - por %xmm7,%xmm11 - movd -36(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,96-128(%rax) - paddd %xmm1,%xmm13 - movd -32(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -32(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -32(%r10),%xmm8 - por %xmm7,%xmm10 - movd -32(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,112-128(%rax) - paddd %xmm2,%xmm12 - movd -28(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -28(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -28(%r10),%xmm8 - por %xmm7,%xmm14 - movd -28(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,128-128(%rax) - paddd %xmm3,%xmm11 - movd -24(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -24(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -24(%r10),%xmm8 - por %xmm7,%xmm13 - movd -24(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,144-128(%rax) - paddd %xmm4,%xmm10 - movd -20(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -20(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -20(%r10),%xmm8 - por %xmm7,%xmm12 - movd -20(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,160-128(%rax) - paddd %xmm0,%xmm14 - movd -16(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -16(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -16(%r10),%xmm8 - por %xmm7,%xmm11 - movd -16(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,176-128(%rax) - paddd %xmm1,%xmm13 - movd -12(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -12(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -12(%r10),%xmm8 - por %xmm7,%xmm10 - movd -12(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,192-128(%rax) - paddd %xmm2,%xmm12 - movd -8(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -8(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -8(%r10),%xmm8 - por %xmm7,%xmm14 - movd -8(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,208-128(%rax) - paddd %xmm3,%xmm11 - movd -4(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -4(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -4(%r10),%xmm8 - por %xmm7,%xmm13 - movdqa 0-128(%rax),%xmm1 - movd -4(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - prefetcht0 63(%r8) - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,224-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - prefetcht0 63(%r9) - - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - prefetcht0 63(%r10) - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - prefetcht0 63(%r11) - por %xmm7,%xmm12 - movdqa 16-128(%rax),%xmm2 - pxor %xmm3,%xmm1 - movdqa 32-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - pxor 128-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - movdqa %xmm11,%xmm7 - pslld $5,%xmm8 - pxor %xmm3,%xmm1 - movdqa %xmm11,%xmm6 - pandn %xmm13,%xmm7 - movdqa %xmm1,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm10,%xmm9 - psrld $31,%xmm5 - paddd %xmm1,%xmm1 - - movdqa %xmm0,240-128(%rax) - paddd %xmm0,%xmm14 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm11,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 48-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - pxor 144-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - movdqa %xmm10,%xmm7 - pslld $5,%xmm8 - pxor %xmm4,%xmm2 - movdqa %xmm10,%xmm6 - pandn %xmm12,%xmm7 - movdqa %xmm2,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm14,%xmm9 - psrld $31,%xmm5 - paddd %xmm2,%xmm2 - - movdqa %xmm1,0-128(%rax) - paddd %xmm1,%xmm13 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm10,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 64-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - pxor 160-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - movdqa %xmm14,%xmm7 - pslld $5,%xmm8 - pxor %xmm0,%xmm3 - movdqa %xmm14,%xmm6 - pandn %xmm11,%xmm7 - movdqa %xmm3,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm13,%xmm9 - psrld $31,%xmm5 - paddd %xmm3,%xmm3 - - movdqa %xmm2,16-128(%rax) - paddd %xmm2,%xmm12 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm14,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 80-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - pxor 176-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - movdqa %xmm13,%xmm7 - pslld $5,%xmm8 - pxor %xmm1,%xmm4 - movdqa %xmm13,%xmm6 - pandn %xmm10,%xmm7 - movdqa %xmm4,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm12,%xmm9 - psrld $31,%xmm5 - paddd %xmm4,%xmm4 - - movdqa %xmm3,32-128(%rax) - paddd %xmm3,%xmm11 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm13,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 96-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - pxor 192-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - movdqa %xmm12,%xmm7 - pslld $5,%xmm8 - pxor %xmm2,%xmm0 - movdqa %xmm12,%xmm6 - pandn %xmm14,%xmm7 - movdqa %xmm0,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm11,%xmm9 - psrld $31,%xmm5 - paddd %xmm0,%xmm0 - - movdqa %xmm4,48-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm12,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 0(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 112-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 208-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,64-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 128-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 224-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,80-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 144-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 240-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,96-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 160-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 0-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,112-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 176-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 16-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,128-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 192-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 32-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,144-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 208-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 48-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,160-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 224-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 64-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,176-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 240-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 80-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,192-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 0-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 96-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,208-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 16-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 112-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,224-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 32-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 128-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,240-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 48-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 144-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,0-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 64-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 160-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,16-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 80-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 176-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,32-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 96-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 192-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,48-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 112-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 208-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,64-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 128-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 224-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,80-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 144-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 240-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,96-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 160-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 0-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,112-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 32(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 176-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 16-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,128-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 192-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 32-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,144-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 208-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 48-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,160-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 224-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 64-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,176-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 240-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 80-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,192-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 0-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 96-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,208-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 16-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 112-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,224-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 32-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 128-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,240-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 48-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 144-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,0-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 64-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 160-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,16-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 80-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 176-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,32-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 96-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 192-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,48-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 112-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 208-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,64-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 128-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 224-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,80-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 144-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 240-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,96-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 160-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 0-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,112-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 176-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 16-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,128-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 192-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 32-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,144-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 208-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 48-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,160-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 224-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 64-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,176-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 64(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 240-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 80-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,192-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 0-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 96-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,208-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 16-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 112-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,224-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 32-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 128-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,240-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 48-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 144-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,0-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 64-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 160-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,16-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 80-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 176-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,32-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 96-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 192-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,48-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 112-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 208-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,64-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 128-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 224-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,80-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 144-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 240-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,96-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 160-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 0-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,112-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 176-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 16-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 192-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 32-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 208-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 48-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 224-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 64-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 240-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 80-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 0-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 96-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 16-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 112-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - movdqa %xmm12,%xmm7 - pxor %xmm13,%xmm6 - - pslld $30,%xmm7 - por %xmm9,%xmm8 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm7,%xmm12 - movdqa (%rbx),%xmm0 - movl $1,%ecx - cmpl 0(%rbx),%ecx - pxor %xmm8,%xmm8 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm0,%xmm1 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm8,%xmm1 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm1,%xmm0 - cmovgeq %rbp,%r11 - - movdqu 0(%rdi),%xmm6 - pand %xmm1,%xmm10 - movdqu 32(%rdi),%xmm7 - pand %xmm1,%xmm11 - paddd %xmm6,%xmm10 - movdqu 64(%rdi),%xmm8 - pand %xmm1,%xmm12 - paddd %xmm7,%xmm11 - movdqu 96(%rdi),%xmm9 - pand %xmm1,%xmm13 - paddd %xmm8,%xmm12 - movdqu 128(%rdi),%xmm5 - pand %xmm1,%xmm14 - movdqu %xmm10,0(%rdi) - paddd %xmm9,%xmm13 - movdqu %xmm11,32(%rdi) - paddd %xmm5,%xmm14 - movdqu %xmm12,64(%rdi) - movdqu %xmm13,96(%rdi) - movdqu %xmm14,128(%rdi) - - movdqa %xmm0,(%rbx) - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - decl %edx - jnz L$oop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande - -L$done: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 64(%rdi),%rdi - movq %rax,272(%rsp) -L$body_shaext: - leaq 256(%rsp),%rbx - movdqa K_XX_XX+128(%rip),%xmm3 - -L$oop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz L$done_shaext - - movq 0-64(%rdi),%xmm0 - movq 32-64(%rdi),%xmm4 - movq 64-64(%rdi),%xmm5 - movq 96-64(%rdi),%xmm6 - movq 128-64(%rdi),%xmm7 - - punpckldq %xmm4,%xmm0 - punpckldq %xmm6,%xmm5 - - movdqa %xmm0,%xmm8 - punpcklqdq %xmm5,%xmm0 - punpckhqdq %xmm5,%xmm8 - - pshufd $63,%xmm7,%xmm1 - pshufd $127,%xmm7,%xmm9 - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - jmp L$oop_shaext - -.p2align 5 -L$oop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm11 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm12 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm13 -.byte 102,68,15,56,0,219 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 -.byte 102,15,56,0,235 - movdqu 48(%r9),%xmm14 - leaq 64(%r9),%r9 -.byte 102,68,15,56,0,227 - - movdqa %xmm1,80(%rsp) - paddd %xmm4,%xmm1 - movdqa %xmm9,112(%rsp) - paddd %xmm11,%xmm9 - movdqa %xmm0,64(%rsp) - movdqa %xmm0,%xmm2 - movdqa %xmm8,96(%rsp) - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 102,15,56,0,243 - prefetcht0 127(%r8) -.byte 15,56,201,229 -.byte 102,68,15,56,0,235 - prefetcht0 127(%r9) -.byte 69,15,56,201,220 - -.byte 102,15,56,0,251 - movdqa %xmm0,%xmm1 -.byte 102,68,15,56,0,243 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,206 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,205 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,215 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,204 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,215 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,204 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,213 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,204 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,213 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,206 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,213 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - - movl $1,%ecx - pxor %xmm4,%xmm4 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,206 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - movq (%rbx),%xmm6 - - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,215 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,214 - - pshufd $0x00,%xmm6,%xmm11 - pshufd $0x55,%xmm6,%xmm12 - movdqa %xmm6,%xmm7 - pcmpgtd %xmm4,%xmm11 - pcmpgtd %xmm4,%xmm12 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,204 - - pcmpgtd %xmm4,%xmm7 - pand %xmm11,%xmm0 - pand %xmm11,%xmm1 - pand %xmm12,%xmm8 - pand %xmm12,%xmm9 - paddd %xmm7,%xmm6 - - paddd 64(%rsp),%xmm0 - paddd 80(%rsp),%xmm1 - paddd 96(%rsp),%xmm8 - paddd 112(%rsp),%xmm9 - - movq %xmm6,(%rbx) - decl %edx - jnz L$oop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - - movdqa %xmm0,%xmm6 - punpckldq %xmm8,%xmm0 - punpckhdq %xmm8,%xmm6 - punpckhdq %xmm9,%xmm1 - movq %xmm0,0-64(%rdi) - psrldq $8,%xmm0 - movq %xmm6,64-64(%rdi) - psrldq $8,%xmm6 - movq %xmm0,32-64(%rdi) - psrldq $8,%xmm1 - movq %xmm6,96-64(%rdi) - movq %xmm1,128-64(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz L$oop_grande_shaext - -L$done_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_shaext: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_multi_block_avx: -_avx_shortcut: - shrq $32,%rcx - cmpl $2,%edx - jb L$avx - testl $32,%ecx - jnz _avx2_shortcut - jmp L$avx -.p2align 5 -L$avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body_avx: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - - vzeroupper -L$oop_grande_avx: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done_avx - - vmovdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - vmovdqu 32(%rdi),%xmm11 - vmovdqu 64(%rdi),%xmm12 - vmovdqu 96(%rdi),%xmm13 - vmovdqu 128(%rdi),%xmm14 - vmovdqu 96(%rbp),%xmm5 - jmp L$oop_avx - -.p2align 5 -L$oop_avx: - vmovdqa -32(%rbp),%xmm15 - vmovd (%r8),%xmm0 - leaq 64(%r8),%r8 - vmovd (%r9),%xmm2 - leaq 64(%r9),%r9 - vpinsrd $1,(%r10),%xmm0,%xmm0 - leaq 64(%r10),%r10 - vpinsrd $1,(%r11),%xmm2,%xmm2 - leaq 64(%r11),%r11 - vmovd -60(%r8),%xmm1 - vpunpckldq %xmm2,%xmm0,%xmm0 - vmovd -60(%r9),%xmm9 - vpshufb %xmm5,%xmm0,%xmm0 - vpinsrd $1,-60(%r10),%xmm1,%xmm1 - vpinsrd $1,-60(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,0-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -56(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -56(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-56(%r10),%xmm2,%xmm2 - vpinsrd $1,-56(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,16-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -52(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -52(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-52(%r10),%xmm3,%xmm3 - vpinsrd $1,-52(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,32-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -48(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -48(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-48(%r10),%xmm4,%xmm4 - vpinsrd $1,-48(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,48-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -44(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -44(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpinsrd $1,-44(%r10),%xmm0,%xmm0 - vpinsrd $1,-44(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,64-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -40(%r8),%xmm1 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -40(%r9),%xmm9 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpinsrd $1,-40(%r10),%xmm1,%xmm1 - vpinsrd $1,-40(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,80-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -36(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -36(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-36(%r10),%xmm2,%xmm2 - vpinsrd $1,-36(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,96-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -32(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -32(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-32(%r10),%xmm3,%xmm3 - vpinsrd $1,-32(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,112-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -28(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -28(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-28(%r10),%xmm4,%xmm4 - vpinsrd $1,-28(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,128-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -24(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -24(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpinsrd $1,-24(%r10),%xmm0,%xmm0 - vpinsrd $1,-24(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,144-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -20(%r8),%xmm1 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -20(%r9),%xmm9 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpinsrd $1,-20(%r10),%xmm1,%xmm1 - vpinsrd $1,-20(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,160-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpunpckldq %xmm9,%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -16(%r8),%xmm2 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -16(%r9),%xmm9 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpshufb %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpinsrd $1,-16(%r10),%xmm2,%xmm2 - vpinsrd $1,-16(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,176-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpunpckldq %xmm9,%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -12(%r8),%xmm3 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -12(%r9),%xmm9 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpshufb %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpinsrd $1,-12(%r10),%xmm3,%xmm3 - vpinsrd $1,-12(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,192-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpunpckldq %xmm9,%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -8(%r8),%xmm4 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -8(%r9),%xmm9 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpshufb %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpinsrd $1,-8(%r10),%xmm4,%xmm4 - vpinsrd $1,-8(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,208-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpunpckldq %xmm9,%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vmovd -4(%r8),%xmm0 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vmovd -4(%r9),%xmm9 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpshufb %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vmovdqa 0-128(%rax),%xmm1 - vpinsrd $1,-4(%r10),%xmm0,%xmm0 - vpinsrd $1,-4(%r11),%xmm9,%xmm9 - vpaddd %xmm15,%xmm10,%xmm10 - prefetcht0 63(%r8) - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,224-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpunpckldq %xmm9,%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - prefetcht0 63(%r9) - vpxor %xmm7,%xmm6,%xmm6 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - prefetcht0 63(%r10) - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - prefetcht0 63(%r11) - vpshufb %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 16-128(%rax),%xmm2 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 32-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpandn %xmm13,%xmm11,%xmm7 - - vpand %xmm12,%xmm11,%xmm6 - - vmovdqa %xmm0,240-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 128-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 48-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpandn %xmm12,%xmm10,%xmm7 - - vpand %xmm11,%xmm10,%xmm6 - - vmovdqa %xmm1,0-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 144-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 64-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpandn %xmm11,%xmm14,%xmm7 - - vpand %xmm10,%xmm14,%xmm6 - - vmovdqa %xmm2,16-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 160-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 80-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpandn %xmm10,%xmm13,%xmm7 - - vpand %xmm14,%xmm13,%xmm6 - - vmovdqa %xmm3,32-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 176-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 96-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpandn %xmm14,%xmm12,%xmm7 - - vpand %xmm13,%xmm12,%xmm6 - - vmovdqa %xmm4,48-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 192-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm7,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 0(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 112-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,64-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 208-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 128-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,80-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 224-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 144-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,96-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 240-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 160-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,112-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 0-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 176-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,128-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 16-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 192-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,144-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 32-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 208-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,160-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 48-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 224-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,176-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 64-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 240-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,192-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 80-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 0-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,208-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 96-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 16-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,224-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 112-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 32-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,240-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 128-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 48-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,0-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 144-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 64-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,16-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 160-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 80-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,32-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 176-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 96-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,48-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 192-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 112-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,64-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 208-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 128-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,80-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 224-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 144-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,96-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 240-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 160-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,112-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 0-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 32(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 176-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 16-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,128-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 192-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 32-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,144-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 208-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 48-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,160-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 224-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 64-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,176-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 240-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 80-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,192-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 0-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 96-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,208-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 16-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 112-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,224-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 32-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 128-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,240-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 48-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 144-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,0-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 64-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 160-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,16-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 80-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 176-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,32-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 96-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 192-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,48-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 112-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 208-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,64-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 128-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 224-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,80-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 144-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 240-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,96-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 160-128(%rax),%xmm3 - - vpaddd %xmm15,%xmm14,%xmm14 - vpslld $5,%xmm10,%xmm8 - vpand %xmm12,%xmm13,%xmm7 - vpxor 0-128(%rax),%xmm1,%xmm1 - - vpaddd %xmm7,%xmm14,%xmm14 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm13,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vmovdqu %xmm0,112-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm1,%xmm5 - vpand %xmm11,%xmm6,%xmm6 - vpaddd %xmm1,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpaddd %xmm6,%xmm14,%xmm14 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 176-128(%rax),%xmm4 - - vpaddd %xmm15,%xmm13,%xmm13 - vpslld $5,%xmm14,%xmm8 - vpand %xmm11,%xmm12,%xmm7 - vpxor 16-128(%rax),%xmm2,%xmm2 - - vpaddd %xmm7,%xmm13,%xmm13 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm12,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vmovdqu %xmm1,128-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm2,%xmm5 - vpand %xmm10,%xmm6,%xmm6 - vpaddd %xmm2,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpaddd %xmm6,%xmm13,%xmm13 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 192-128(%rax),%xmm0 - - vpaddd %xmm15,%xmm12,%xmm12 - vpslld $5,%xmm13,%xmm8 - vpand %xmm10,%xmm11,%xmm7 - vpxor 32-128(%rax),%xmm3,%xmm3 - - vpaddd %xmm7,%xmm12,%xmm12 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm11,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vmovdqu %xmm2,144-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm3,%xmm5 - vpand %xmm14,%xmm6,%xmm6 - vpaddd %xmm3,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpaddd %xmm6,%xmm12,%xmm12 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 208-128(%rax),%xmm1 - - vpaddd %xmm15,%xmm11,%xmm11 - vpslld $5,%xmm12,%xmm8 - vpand %xmm14,%xmm10,%xmm7 - vpxor 48-128(%rax),%xmm4,%xmm4 - - vpaddd %xmm7,%xmm11,%xmm11 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm10,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vmovdqu %xmm3,160-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm4,%xmm5 - vpand %xmm13,%xmm6,%xmm6 - vpaddd %xmm4,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpaddd %xmm6,%xmm11,%xmm11 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 224-128(%rax),%xmm2 - - vpaddd %xmm15,%xmm10,%xmm10 - vpslld $5,%xmm11,%xmm8 - vpand %xmm13,%xmm14,%xmm7 - vpxor 64-128(%rax),%xmm0,%xmm0 - - vpaddd %xmm7,%xmm10,%xmm10 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm14,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vmovdqu %xmm4,176-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpor %xmm9,%xmm8,%xmm8 - vpsrld $31,%xmm0,%xmm5 - vpand %xmm12,%xmm6,%xmm6 - vpaddd %xmm0,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vmovdqa 64(%rbp),%xmm15 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 240-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,192-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 80-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 0-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,208-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 96-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 16-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,224-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 112-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 32-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,240-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 128-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 48-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,0-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 144-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 64-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,16-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 160-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 80-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,32-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 176-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 96-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vmovdqa %xmm2,48-128(%rax) - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 192-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 112-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vmovdqa %xmm3,64-128(%rax) - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 208-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 128-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vmovdqa %xmm4,80-128(%rax) - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 224-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 144-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vmovdqa %xmm0,96-128(%rax) - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 240-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 160-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vmovdqa %xmm1,112-128(%rax) - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 0-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 176-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 16-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 192-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 32-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpxor %xmm2,%xmm0,%xmm0 - vmovdqa 208-128(%rax),%xmm2 - - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - vpaddd %xmm4,%xmm10,%xmm10 - vpxor 48-128(%rax),%xmm0,%xmm0 - vpsrld $27,%xmm11,%xmm9 - vpxor %xmm13,%xmm6,%xmm6 - vpxor %xmm2,%xmm0,%xmm0 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - vpsrld $31,%xmm0,%xmm5 - vpaddd %xmm0,%xmm0,%xmm0 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm5,%xmm0,%xmm0 - vpor %xmm7,%xmm12,%xmm12 - vpxor %xmm3,%xmm1,%xmm1 - vmovdqa 224-128(%rax),%xmm3 - - vpslld $5,%xmm10,%xmm8 - vpaddd %xmm15,%xmm14,%xmm14 - vpxor %xmm11,%xmm13,%xmm6 - vpaddd %xmm0,%xmm14,%xmm14 - vpxor 64-128(%rax),%xmm1,%xmm1 - vpsrld $27,%xmm10,%xmm9 - vpxor %xmm12,%xmm6,%xmm6 - vpxor %xmm3,%xmm1,%xmm1 - - vpslld $30,%xmm11,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm14,%xmm14 - vpsrld $31,%xmm1,%xmm5 - vpaddd %xmm1,%xmm1,%xmm1 - - vpsrld $2,%xmm11,%xmm11 - vpaddd %xmm8,%xmm14,%xmm14 - vpor %xmm5,%xmm1,%xmm1 - vpor %xmm7,%xmm11,%xmm11 - vpxor %xmm4,%xmm2,%xmm2 - vmovdqa 240-128(%rax),%xmm4 - - vpslld $5,%xmm14,%xmm8 - vpaddd %xmm15,%xmm13,%xmm13 - vpxor %xmm10,%xmm12,%xmm6 - vpaddd %xmm1,%xmm13,%xmm13 - vpxor 80-128(%rax),%xmm2,%xmm2 - vpsrld $27,%xmm14,%xmm9 - vpxor %xmm11,%xmm6,%xmm6 - vpxor %xmm4,%xmm2,%xmm2 - - vpslld $30,%xmm10,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm13,%xmm13 - vpsrld $31,%xmm2,%xmm5 - vpaddd %xmm2,%xmm2,%xmm2 - - vpsrld $2,%xmm10,%xmm10 - vpaddd %xmm8,%xmm13,%xmm13 - vpor %xmm5,%xmm2,%xmm2 - vpor %xmm7,%xmm10,%xmm10 - vpxor %xmm0,%xmm3,%xmm3 - vmovdqa 0-128(%rax),%xmm0 - - vpslld $5,%xmm13,%xmm8 - vpaddd %xmm15,%xmm12,%xmm12 - vpxor %xmm14,%xmm11,%xmm6 - vpaddd %xmm2,%xmm12,%xmm12 - vpxor 96-128(%rax),%xmm3,%xmm3 - vpsrld $27,%xmm13,%xmm9 - vpxor %xmm10,%xmm6,%xmm6 - vpxor %xmm0,%xmm3,%xmm3 - - vpslld $30,%xmm14,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - vpsrld $31,%xmm3,%xmm5 - vpaddd %xmm3,%xmm3,%xmm3 - - vpsrld $2,%xmm14,%xmm14 - vpaddd %xmm8,%xmm12,%xmm12 - vpor %xmm5,%xmm3,%xmm3 - vpor %xmm7,%xmm14,%xmm14 - vpxor %xmm1,%xmm4,%xmm4 - vmovdqa 16-128(%rax),%xmm1 - - vpslld $5,%xmm12,%xmm8 - vpaddd %xmm15,%xmm11,%xmm11 - vpxor %xmm13,%xmm10,%xmm6 - vpaddd %xmm3,%xmm11,%xmm11 - vpxor 112-128(%rax),%xmm4,%xmm4 - vpsrld $27,%xmm12,%xmm9 - vpxor %xmm14,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm4 - - vpslld $30,%xmm13,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm11,%xmm11 - vpsrld $31,%xmm4,%xmm5 - vpaddd %xmm4,%xmm4,%xmm4 - - vpsrld $2,%xmm13,%xmm13 - vpaddd %xmm8,%xmm11,%xmm11 - vpor %xmm5,%xmm4,%xmm4 - vpor %xmm7,%xmm13,%xmm13 - vpslld $5,%xmm11,%xmm8 - vpaddd %xmm15,%xmm10,%xmm10 - vpxor %xmm12,%xmm14,%xmm6 - - vpsrld $27,%xmm11,%xmm9 - vpaddd %xmm4,%xmm10,%xmm10 - vpxor %xmm13,%xmm6,%xmm6 - - vpslld $30,%xmm12,%xmm7 - vpor %xmm9,%xmm8,%xmm8 - vpaddd %xmm6,%xmm10,%xmm10 - - vpsrld $2,%xmm12,%xmm12 - vpaddd %xmm8,%xmm10,%xmm10 - vpor %xmm7,%xmm12,%xmm12 - movl $1,%ecx - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqu (%rbx),%xmm6 - vpxor %xmm8,%xmm8,%xmm8 - vmovdqa %xmm6,%xmm7 - vpcmpgtd %xmm8,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - - vpand %xmm7,%xmm10,%xmm10 - vpand %xmm7,%xmm11,%xmm11 - vpaddd 0(%rdi),%xmm10,%xmm10 - vpand %xmm7,%xmm12,%xmm12 - vpaddd 32(%rdi),%xmm11,%xmm11 - vpand %xmm7,%xmm13,%xmm13 - vpaddd 64(%rdi),%xmm12,%xmm12 - vpand %xmm7,%xmm14,%xmm14 - vpaddd 96(%rdi),%xmm13,%xmm13 - vpaddd 128(%rdi),%xmm14,%xmm14 - vmovdqu %xmm10,0(%rdi) - vmovdqu %xmm11,32(%rdi) - vmovdqu %xmm12,64(%rdi) - vmovdqu %xmm13,96(%rdi) - vmovdqu %xmm14,128(%rdi) - - vmovdqu %xmm6,(%rbx) - vmovdqu 96(%rbp),%xmm5 - decl %edx - jnz L$oop_avx - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande_avx - -L$done_avx: - movq 272(%rsp),%rax - vzeroupper - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_multi_block_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576,%rsp - andq $-256,%rsp - movq %rax,544(%rsp) -L$body_avx2: - leaq K_XX_XX(%rip),%rbp - shrl $1,%edx - - vzeroupper -L$oop_grande_avx2: - movl %edx,552(%rsp) - xorl %edx,%edx - leaq 512(%rsp),%rbx - movq 0(%rsi),%r12 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r12 - movq 16(%rsi),%r13 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r13 - movq 32(%rsi),%r14 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r14 - movq 48(%rsi),%r15 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r15 - movq 64(%rsi),%r8 - movl 72(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,16(%rbx) - cmovleq %rbp,%r8 - movq 80(%rsi),%r9 - movl 88(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,20(%rbx) - cmovleq %rbp,%r9 - movq 96(%rsi),%r10 - movl 104(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,24(%rbx) - cmovleq %rbp,%r10 - movq 112(%rsi),%r11 - movl 120(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,28(%rbx) - cmovleq %rbp,%r11 - vmovdqu 0(%rdi),%ymm0 - leaq 128(%rsp),%rax - vmovdqu 32(%rdi),%ymm1 - leaq 256+128(%rsp),%rbx - vmovdqu 64(%rdi),%ymm2 - vmovdqu 96(%rdi),%ymm3 - vmovdqu 128(%rdi),%ymm4 - vmovdqu 96(%rbp),%ymm9 - jmp L$oop_avx2 - -.p2align 5 -L$oop_avx2: - vmovdqa -32(%rbp),%ymm15 - vmovd (%r12),%xmm10 - leaq 64(%r12),%r12 - vmovd (%r8),%xmm12 - leaq 64(%r8),%r8 - vmovd (%r13),%xmm7 - leaq 64(%r13),%r13 - vmovd (%r9),%xmm6 - leaq 64(%r9),%r9 - vpinsrd $1,(%r14),%xmm10,%xmm10 - leaq 64(%r14),%r14 - vpinsrd $1,(%r10),%xmm12,%xmm12 - leaq 64(%r10),%r10 - vpinsrd $1,(%r15),%xmm7,%xmm7 - leaq 64(%r15),%r15 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,(%r11),%xmm6,%xmm6 - leaq 64(%r11),%r11 - vpunpckldq %ymm6,%ymm12,%ymm12 - vmovd -60(%r12),%xmm11 - vinserti128 $1,%xmm12,%ymm10,%ymm10 - vmovd -60(%r8),%xmm8 - vpshufb %ymm9,%ymm10,%ymm10 - vmovd -60(%r13),%xmm7 - vmovd -60(%r9),%xmm6 - vpinsrd $1,-60(%r14),%xmm11,%xmm11 - vpinsrd $1,-60(%r10),%xmm8,%xmm8 - vpinsrd $1,-60(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-60(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,0-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -56(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -56(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -56(%r13),%xmm7 - vmovd -56(%r9),%xmm6 - vpinsrd $1,-56(%r14),%xmm12,%xmm12 - vpinsrd $1,-56(%r10),%xmm8,%xmm8 - vpinsrd $1,-56(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-56(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,32-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -52(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -52(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -52(%r13),%xmm7 - vmovd -52(%r9),%xmm6 - vpinsrd $1,-52(%r14),%xmm13,%xmm13 - vpinsrd $1,-52(%r10),%xmm8,%xmm8 - vpinsrd $1,-52(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-52(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,64-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -48(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -48(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -48(%r13),%xmm7 - vmovd -48(%r9),%xmm6 - vpinsrd $1,-48(%r14),%xmm14,%xmm14 - vpinsrd $1,-48(%r10),%xmm8,%xmm8 - vpinsrd $1,-48(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-48(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,96-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -44(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -44(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovd -44(%r13),%xmm7 - vmovd -44(%r9),%xmm6 - vpinsrd $1,-44(%r14),%xmm10,%xmm10 - vpinsrd $1,-44(%r10),%xmm8,%xmm8 - vpinsrd $1,-44(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-44(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,128-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -40(%r12),%xmm11 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -40(%r8),%xmm8 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovd -40(%r13),%xmm7 - vmovd -40(%r9),%xmm6 - vpinsrd $1,-40(%r14),%xmm11,%xmm11 - vpinsrd $1,-40(%r10),%xmm8,%xmm8 - vpinsrd $1,-40(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-40(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,160-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -36(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -36(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -36(%r13),%xmm7 - vmovd -36(%r9),%xmm6 - vpinsrd $1,-36(%r14),%xmm12,%xmm12 - vpinsrd $1,-36(%r10),%xmm8,%xmm8 - vpinsrd $1,-36(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-36(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,192-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -32(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -32(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -32(%r13),%xmm7 - vmovd -32(%r9),%xmm6 - vpinsrd $1,-32(%r14),%xmm13,%xmm13 - vpinsrd $1,-32(%r10),%xmm8,%xmm8 - vpinsrd $1,-32(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-32(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,224-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -28(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -28(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -28(%r13),%xmm7 - vmovd -28(%r9),%xmm6 - vpinsrd $1,-28(%r14),%xmm14,%xmm14 - vpinsrd $1,-28(%r10),%xmm8,%xmm8 - vpinsrd $1,-28(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-28(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,256-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -24(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -24(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovd -24(%r13),%xmm7 - vmovd -24(%r9),%xmm6 - vpinsrd $1,-24(%r14),%xmm10,%xmm10 - vpinsrd $1,-24(%r10),%xmm8,%xmm8 - vpinsrd $1,-24(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-24(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,288-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -20(%r12),%xmm11 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -20(%r8),%xmm8 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovd -20(%r13),%xmm7 - vmovd -20(%r9),%xmm6 - vpinsrd $1,-20(%r14),%xmm11,%xmm11 - vpinsrd $1,-20(%r10),%xmm8,%xmm8 - vpinsrd $1,-20(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm11,%ymm11 - vpinsrd $1,-20(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,320-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vinserti128 $1,%xmm8,%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -16(%r12),%xmm12 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -16(%r8),%xmm8 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpshufb %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vmovd -16(%r13),%xmm7 - vmovd -16(%r9),%xmm6 - vpinsrd $1,-16(%r14),%xmm12,%xmm12 - vpinsrd $1,-16(%r10),%xmm8,%xmm8 - vpinsrd $1,-16(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm12,%ymm12 - vpinsrd $1,-16(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,352-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vinserti128 $1,%xmm8,%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -12(%r12),%xmm13 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -12(%r8),%xmm8 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpshufb %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vmovd -12(%r13),%xmm7 - vmovd -12(%r9),%xmm6 - vpinsrd $1,-12(%r14),%xmm13,%xmm13 - vpinsrd $1,-12(%r10),%xmm8,%xmm8 - vpinsrd $1,-12(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm13,%ymm13 - vpinsrd $1,-12(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,384-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vinserti128 $1,%xmm8,%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -8(%r12),%xmm14 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -8(%r8),%xmm8 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpshufb %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vmovd -8(%r13),%xmm7 - vmovd -8(%r9),%xmm6 - vpinsrd $1,-8(%r14),%xmm14,%xmm14 - vpinsrd $1,-8(%r10),%xmm8,%xmm8 - vpinsrd $1,-8(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm14,%ymm14 - vpinsrd $1,-8(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,416-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vinserti128 $1,%xmm8,%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vmovd -4(%r12),%xmm10 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vmovd -4(%r8),%xmm8 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpshufb %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vmovdqa 0-128(%rax),%ymm11 - vmovd -4(%r13),%xmm7 - vmovd -4(%r9),%xmm6 - vpinsrd $1,-4(%r14),%xmm10,%xmm10 - vpinsrd $1,-4(%r10),%xmm8,%xmm8 - vpinsrd $1,-4(%r15),%xmm7,%xmm7 - vpunpckldq %ymm7,%ymm10,%ymm10 - vpinsrd $1,-4(%r11),%xmm6,%xmm6 - vpunpckldq %ymm6,%ymm8,%ymm8 - vpaddd %ymm15,%ymm0,%ymm0 - prefetcht0 63(%r12) - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,448-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vinserti128 $1,%xmm8,%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - prefetcht0 63(%r13) - vpxor %ymm6,%ymm5,%ymm5 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - prefetcht0 63(%r14) - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - prefetcht0 63(%r15) - vpshufb %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 32-128(%rax),%ymm12 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 64-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpandn %ymm3,%ymm1,%ymm6 - prefetcht0 63(%r8) - vpand %ymm2,%ymm1,%ymm5 - - vmovdqa %ymm10,480-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 256-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - prefetcht0 63(%r9) - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - prefetcht0 63(%r10) - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - prefetcht0 63(%r11) - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 96-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpandn %ymm2,%ymm0,%ymm6 - - vpand %ymm1,%ymm0,%ymm5 - - vmovdqa %ymm11,0-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 288-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 128-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpandn %ymm1,%ymm4,%ymm6 - - vpand %ymm0,%ymm4,%ymm5 - - vmovdqa %ymm12,32-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 320-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 160-128(%rax),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpandn %ymm0,%ymm3,%ymm6 - - vpand %ymm4,%ymm3,%ymm5 - - vmovdqa %ymm13,64-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 352-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 192-128(%rax),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpandn %ymm4,%ymm2,%ymm6 - - vpand %ymm3,%ymm2,%ymm5 - - vmovdqa %ymm14,96-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 384-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm6,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 0(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 224-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,128-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 416-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 256-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,160-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 448-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 288-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,192-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 480-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 320-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,224-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 0-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 352-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,256-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 32-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 384-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,288-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 64-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 416-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,320-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 96-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 448-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,352-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 128-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 480-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,384-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 160-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 0-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,416-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 192-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 32-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,448-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 224-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 64-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,480-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 256-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 96-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,0-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 288-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 128-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,32-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 320-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 160-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,64-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 352-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 192-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,96-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 384-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 224-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,128-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 416-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 256-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,160-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 448-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 288-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,192-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 480-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 320-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,224-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 0-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 32(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 352-256-128(%rbx),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 32-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,256-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 384-256-128(%rbx),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 64-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,288-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 416-256-128(%rbx),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 96-128(%rax),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,320-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 448-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 128-128(%rax),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,352-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 480-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 160-128(%rax),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,384-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 0-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 192-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,416-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 32-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 224-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,448-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 64-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 256-256-128(%rbx),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,480-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 96-128(%rax),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 288-256-128(%rbx),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,0-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 128-128(%rax),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 320-256-128(%rbx),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,32-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 160-128(%rax),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 352-256-128(%rbx),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,64-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 192-128(%rax),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 384-256-128(%rbx),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,96-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 224-128(%rax),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 416-256-128(%rbx),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,128-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 256-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 448-256-128(%rbx),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,160-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 288-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 480-256-128(%rbx),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,192-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 320-256-128(%rbx),%ymm13 - - vpaddd %ymm15,%ymm4,%ymm4 - vpslld $5,%ymm0,%ymm7 - vpand %ymm2,%ymm3,%ymm6 - vpxor 0-128(%rax),%ymm11,%ymm11 - - vpaddd %ymm6,%ymm4,%ymm4 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm3,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vmovdqu %ymm10,224-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm11,%ymm9 - vpand %ymm1,%ymm5,%ymm5 - vpaddd %ymm11,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpaddd %ymm5,%ymm4,%ymm4 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 352-256-128(%rbx),%ymm14 - - vpaddd %ymm15,%ymm3,%ymm3 - vpslld $5,%ymm4,%ymm7 - vpand %ymm1,%ymm2,%ymm6 - vpxor 32-128(%rax),%ymm12,%ymm12 - - vpaddd %ymm6,%ymm3,%ymm3 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm2,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vmovdqu %ymm11,256-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm12,%ymm9 - vpand %ymm0,%ymm5,%ymm5 - vpaddd %ymm12,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpaddd %ymm5,%ymm3,%ymm3 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 384-256-128(%rbx),%ymm10 - - vpaddd %ymm15,%ymm2,%ymm2 - vpslld $5,%ymm3,%ymm7 - vpand %ymm0,%ymm1,%ymm6 - vpxor 64-128(%rax),%ymm13,%ymm13 - - vpaddd %ymm6,%ymm2,%ymm2 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm1,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vmovdqu %ymm12,288-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm13,%ymm9 - vpand %ymm4,%ymm5,%ymm5 - vpaddd %ymm13,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpaddd %ymm5,%ymm2,%ymm2 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 416-256-128(%rbx),%ymm11 - - vpaddd %ymm15,%ymm1,%ymm1 - vpslld $5,%ymm2,%ymm7 - vpand %ymm4,%ymm0,%ymm6 - vpxor 96-128(%rax),%ymm14,%ymm14 - - vpaddd %ymm6,%ymm1,%ymm1 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm0,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vmovdqu %ymm13,320-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm14,%ymm9 - vpand %ymm3,%ymm5,%ymm5 - vpaddd %ymm14,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpaddd %ymm5,%ymm1,%ymm1 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 448-256-128(%rbx),%ymm12 - - vpaddd %ymm15,%ymm0,%ymm0 - vpslld $5,%ymm1,%ymm7 - vpand %ymm3,%ymm4,%ymm6 - vpxor 128-128(%rax),%ymm10,%ymm10 - - vpaddd %ymm6,%ymm0,%ymm0 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm4,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vmovdqu %ymm14,352-256-128(%rbx) - vpaddd %ymm14,%ymm0,%ymm0 - vpor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm10,%ymm9 - vpand %ymm2,%ymm5,%ymm5 - vpaddd %ymm10,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vmovdqa 64(%rbp),%ymm15 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 480-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,384-256-128(%rbx) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 160-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 0-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,416-256-128(%rbx) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 192-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 32-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,448-256-128(%rbx) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 224-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 64-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,480-256-128(%rbx) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 256-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 96-128(%rax),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,0-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 288-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 128-128(%rax),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,32-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 320-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 160-128(%rax),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,64-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 352-256-128(%rbx),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 192-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vmovdqa %ymm12,96-128(%rax) - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 384-256-128(%rbx),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 224-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vmovdqa %ymm13,128-128(%rax) - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 416-256-128(%rbx),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 256-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vmovdqa %ymm14,160-128(%rax) - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 448-256-128(%rbx),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 288-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vmovdqa %ymm10,192-128(%rax) - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 480-256-128(%rbx),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 320-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vmovdqa %ymm11,224-128(%rax) - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 0-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 352-256-128(%rbx),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 32-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 384-256-128(%rbx),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 64-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpxor %ymm12,%ymm10,%ymm10 - vmovdqa 416-256-128(%rbx),%ymm12 - - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - vpaddd %ymm14,%ymm0,%ymm0 - vpxor 96-128(%rax),%ymm10,%ymm10 - vpsrld $27,%ymm1,%ymm8 - vpxor %ymm3,%ymm5,%ymm5 - vpxor %ymm12,%ymm10,%ymm10 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - vpsrld $31,%ymm10,%ymm9 - vpaddd %ymm10,%ymm10,%ymm10 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm9,%ymm10,%ymm10 - vpor %ymm6,%ymm2,%ymm2 - vpxor %ymm13,%ymm11,%ymm11 - vmovdqa 448-256-128(%rbx),%ymm13 - - vpslld $5,%ymm0,%ymm7 - vpaddd %ymm15,%ymm4,%ymm4 - vpxor %ymm1,%ymm3,%ymm5 - vpaddd %ymm10,%ymm4,%ymm4 - vpxor 128-128(%rax),%ymm11,%ymm11 - vpsrld $27,%ymm0,%ymm8 - vpxor %ymm2,%ymm5,%ymm5 - vpxor %ymm13,%ymm11,%ymm11 - - vpslld $30,%ymm1,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm4,%ymm4 - vpsrld $31,%ymm11,%ymm9 - vpaddd %ymm11,%ymm11,%ymm11 - - vpsrld $2,%ymm1,%ymm1 - vpaddd %ymm7,%ymm4,%ymm4 - vpor %ymm9,%ymm11,%ymm11 - vpor %ymm6,%ymm1,%ymm1 - vpxor %ymm14,%ymm12,%ymm12 - vmovdqa 480-256-128(%rbx),%ymm14 - - vpslld $5,%ymm4,%ymm7 - vpaddd %ymm15,%ymm3,%ymm3 - vpxor %ymm0,%ymm2,%ymm5 - vpaddd %ymm11,%ymm3,%ymm3 - vpxor 160-128(%rax),%ymm12,%ymm12 - vpsrld $27,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm14,%ymm12,%ymm12 - - vpslld $30,%ymm0,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm3,%ymm3 - vpsrld $31,%ymm12,%ymm9 - vpaddd %ymm12,%ymm12,%ymm12 - - vpsrld $2,%ymm0,%ymm0 - vpaddd %ymm7,%ymm3,%ymm3 - vpor %ymm9,%ymm12,%ymm12 - vpor %ymm6,%ymm0,%ymm0 - vpxor %ymm10,%ymm13,%ymm13 - vmovdqa 0-128(%rax),%ymm10 - - vpslld $5,%ymm3,%ymm7 - vpaddd %ymm15,%ymm2,%ymm2 - vpxor %ymm4,%ymm1,%ymm5 - vpaddd %ymm12,%ymm2,%ymm2 - vpxor 192-128(%rax),%ymm13,%ymm13 - vpsrld $27,%ymm3,%ymm8 - vpxor %ymm0,%ymm5,%ymm5 - vpxor %ymm10,%ymm13,%ymm13 - - vpslld $30,%ymm4,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm2,%ymm2 - vpsrld $31,%ymm13,%ymm9 - vpaddd %ymm13,%ymm13,%ymm13 - - vpsrld $2,%ymm4,%ymm4 - vpaddd %ymm7,%ymm2,%ymm2 - vpor %ymm9,%ymm13,%ymm13 - vpor %ymm6,%ymm4,%ymm4 - vpxor %ymm11,%ymm14,%ymm14 - vmovdqa 32-128(%rax),%ymm11 - - vpslld $5,%ymm2,%ymm7 - vpaddd %ymm15,%ymm1,%ymm1 - vpxor %ymm3,%ymm0,%ymm5 - vpaddd %ymm13,%ymm1,%ymm1 - vpxor 224-128(%rax),%ymm14,%ymm14 - vpsrld $27,%ymm2,%ymm8 - vpxor %ymm4,%ymm5,%ymm5 - vpxor %ymm11,%ymm14,%ymm14 - - vpslld $30,%ymm3,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm1,%ymm1 - vpsrld $31,%ymm14,%ymm9 - vpaddd %ymm14,%ymm14,%ymm14 - - vpsrld $2,%ymm3,%ymm3 - vpaddd %ymm7,%ymm1,%ymm1 - vpor %ymm9,%ymm14,%ymm14 - vpor %ymm6,%ymm3,%ymm3 - vpslld $5,%ymm1,%ymm7 - vpaddd %ymm15,%ymm0,%ymm0 - vpxor %ymm2,%ymm4,%ymm5 - - vpsrld $27,%ymm1,%ymm8 - vpaddd %ymm14,%ymm0,%ymm0 - vpxor %ymm3,%ymm5,%ymm5 - - vpslld $30,%ymm2,%ymm6 - vpor %ymm8,%ymm7,%ymm7 - vpaddd %ymm5,%ymm0,%ymm0 - - vpsrld $2,%ymm2,%ymm2 - vpaddd %ymm7,%ymm0,%ymm0 - vpor %ymm6,%ymm2,%ymm2 - movl $1,%ecx - leaq 512(%rsp),%rbx - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r12 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r13 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r14 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r15 - cmpl 16(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 20(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 24(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 28(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqu (%rbx),%ymm5 - vpxor %ymm7,%ymm7,%ymm7 - vmovdqa %ymm5,%ymm6 - vpcmpgtd %ymm7,%ymm6,%ymm6 - vpaddd %ymm6,%ymm5,%ymm5 - - vpand %ymm6,%ymm0,%ymm0 - vpand %ymm6,%ymm1,%ymm1 - vpaddd 0(%rdi),%ymm0,%ymm0 - vpand %ymm6,%ymm2,%ymm2 - vpaddd 32(%rdi),%ymm1,%ymm1 - vpand %ymm6,%ymm3,%ymm3 - vpaddd 64(%rdi),%ymm2,%ymm2 - vpand %ymm6,%ymm4,%ymm4 - vpaddd 96(%rdi),%ymm3,%ymm3 - vpaddd 128(%rdi),%ymm4,%ymm4 - vmovdqu %ymm0,0(%rdi) - vmovdqu %ymm1,32(%rdi) - vmovdqu %ymm2,64(%rdi) - vmovdqu %ymm3,96(%rdi) - vmovdqu %ymm4,128(%rdi) - - vmovdqu %ymm5,(%rbx) - leaq 256+128(%rsp),%rbx - vmovdqu 96(%rbp),%ymm9 - decl %edx - jnz L$oop_avx2 - - - - - - - -L$done_avx2: - movq 544(%rsp),%rax - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 - - -.p2align 8 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -K_XX_XX: -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-macosx-gas/sha/sha1-x86_64.s b/deps/openssl/asm/x64-macosx-gas/sha/sha1-x86_64.s deleted file mode 100644 index 1c52e05e399eb6..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/sha/sha1-x86_64.s +++ /dev/null @@ -1,5396 +0,0 @@ -.text - - -.globl _sha1_block_data_order - -.p2align 4 -_sha1_block_data_order: - movl _OPENSSL_ia32cap_P+0(%rip),%r9d - movl _OPENSSL_ia32cap_P+4(%rip),%r8d - movl _OPENSSL_ia32cap_P+8(%rip),%r10d - testl $512,%r8d - jz L$ialu - testl $536870912,%r10d - jnz _shaext_shortcut - andl $296,%r10d - cmpl $296,%r10d - je _avx2_shortcut - andl $268435456,%r8d - andl $1073741824,%r9d - orl %r9d,%r8d - cmpl $1342177280,%r8d - je _avx_shortcut - jmp _ssse3_shortcut - -.p2align 4 -L$ialu: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - movq %rdi,%r8 - subq $72,%rsp - movq %rsi,%r9 - andq $-64,%rsp - movq %rdx,%r10 - movq %rax,64(%rsp) -L$prologue: - - movl 0(%r8),%esi - movl 4(%r8),%edi - movl 8(%r8),%r11d - movl 12(%r8),%r12d - movl 16(%r8),%r13d - jmp L$loop - -.p2align 4 -L$loop: - movl 0(%r9),%edx - bswapl %edx - movl 4(%r9),%ebp - movl %r12d,%eax - movl %edx,0(%rsp) - movl %esi,%ecx - bswapl %ebp - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 8(%r9),%r14d - movl %r11d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ecx - bswapl %r14d - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 12(%r9),%edx - movl %edi,%eax - movl %r14d,8(%rsp) - movl %r12d,%ecx - bswapl %edx - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 16(%r9),%ebp - movl %esi,%eax - movl %edx,12(%rsp) - movl %r11d,%ecx - bswapl %ebp - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 20(%r9),%r14d - movl %r13d,%eax - movl %ebp,16(%rsp) - movl %edi,%ecx - bswapl %r14d - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 24(%r9),%edx - movl %r12d,%eax - movl %r14d,20(%rsp) - movl %esi,%ecx - bswapl %edx - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%r14,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 28(%r9),%ebp - movl %r11d,%eax - movl %edx,24(%rsp) - movl %r13d,%ecx - bswapl %ebp - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rdx,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 32(%r9),%r14d - movl %edi,%eax - movl %ebp,28(%rsp) - movl %r12d,%ecx - bswapl %r14d - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rbp,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 36(%r9),%edx - movl %esi,%eax - movl %r14d,32(%rsp) - movl %r11d,%ecx - bswapl %edx - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%r14,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 40(%r9),%ebp - movl %r13d,%eax - movl %edx,36(%rsp) - movl %edi,%ecx - bswapl %ebp - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rdx,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 44(%r9),%r14d - movl %r12d,%eax - movl %ebp,40(%rsp) - movl %esi,%ecx - bswapl %r14d - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rbp,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 48(%r9),%edx - movl %r11d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ecx - bswapl %edx - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%r14,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 52(%r9),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %r12d,%ecx - bswapl %ebp - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rdx,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 56(%r9),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r11d,%ecx - bswapl %r14d - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rbp,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 60(%r9),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %edi,%ecx - bswapl %edx - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%r14,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %esi,%ecx - xorl 8(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - roll $30,%edi - xorl %r12d,%eax - addl %ecx,%r13d - roll $1,%ebp - addl %eax,%r13d - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %r13d,%ecx - xorl 12(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - roll $30,%esi - xorl %r11d,%eax - addl %ecx,%r12d - roll $1,%r14d - addl %eax,%r12d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %r12d,%ecx - xorl 16(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - roll $30,%r13d - xorl %edi,%eax - addl %ecx,%r11d - roll $1,%edx - addl %eax,%r11d - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r11d,%ecx - xorl 20(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - roll $30,%r12d - xorl %esi,%eax - addl %ecx,%edi - roll $1,%ebp - addl %eax,%edi - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %edi,%ecx - xorl 24(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - roll $30,%r11d - xorl %r13d,%eax - addl %ecx,%esi - roll $1,%r14d - addl %eax,%esi - xorl 20(%rsp),%edx - movl %edi,%eax - movl %r14d,16(%rsp) - movl %esi,%ecx - xorl 28(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 24(%rsp),%ebp - movl %esi,%eax - movl %edx,20(%rsp) - movl %r13d,%ecx - xorl 32(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %r13d,%eax - movl %ebp,24(%rsp) - movl %r12d,%ecx - xorl 36(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %r12d,%eax - movl %r14d,28(%rsp) - movl %r11d,%ecx - xorl 40(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r11d,%eax - movl %edx,32(%rsp) - movl %edi,%ecx - xorl 44(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %edi,%eax - movl %ebp,36(%rsp) - movl %esi,%ecx - xorl 48(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal 1859775393(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 44(%rsp),%edx - movl %esi,%eax - movl %r14d,40(%rsp) - movl %r13d,%ecx - xorl 52(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal 1859775393(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 48(%rsp),%ebp - movl %r13d,%eax - movl %edx,44(%rsp) - movl %r12d,%ecx - xorl 56(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal 1859775393(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %r12d,%eax - movl %ebp,48(%rsp) - movl %r11d,%ecx - xorl 60(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal 1859775393(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r11d,%eax - movl %r14d,52(%rsp) - movl %edi,%ecx - xorl 0(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal 1859775393(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 60(%rsp),%ebp - movl %edi,%eax - movl %edx,56(%rsp) - movl %esi,%ecx - xorl 4(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal 1859775393(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 0(%rsp),%r14d - movl %esi,%eax - movl %ebp,60(%rsp) - movl %r13d,%ecx - xorl 8(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%r14d - leal 1859775393(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 4(%rsp),%edx - movl %r13d,%eax - movl %r14d,0(%rsp) - movl %r12d,%ecx - xorl 12(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%edx - leal 1859775393(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 8(%rsp),%ebp - movl %r12d,%eax - movl %edx,4(%rsp) - movl %r11d,%ecx - xorl 16(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%ebp - leal 1859775393(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 12(%rsp),%r14d - movl %r11d,%eax - movl %ebp,8(%rsp) - movl %edi,%ecx - xorl 20(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%r14d - leal 1859775393(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 16(%rsp),%edx - movl %edi,%eax - movl %r14d,12(%rsp) - movl %esi,%ecx - xorl 24(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 20(%rsp),%ebp - movl %esi,%eax - movl %edx,16(%rsp) - movl %r13d,%ecx - xorl 28(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 52(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 24(%rsp),%r14d - movl %r13d,%eax - movl %ebp,20(%rsp) - movl %r12d,%ecx - xorl 32(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 56(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 28(%rsp),%edx - movl %r12d,%eax - movl %r14d,24(%rsp) - movl %r11d,%ecx - xorl 36(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 60(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 32(%rsp),%ebp - movl %r11d,%eax - movl %edx,28(%rsp) - movl %edi,%ecx - xorl 40(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 0(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 36(%rsp),%r14d - movl %r12d,%eax - movl %ebp,32(%rsp) - movl %r12d,%ebx - xorl 44(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 4(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 40(%rsp),%edx - movl %r11d,%eax - movl %r14d,36(%rsp) - movl %r11d,%ebx - xorl 48(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 8(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 44(%rsp),%ebp - movl %edi,%eax - movl %edx,40(%rsp) - movl %edi,%ebx - xorl 52(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 12(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 48(%rsp),%r14d - movl %esi,%eax - movl %ebp,44(%rsp) - movl %esi,%ebx - xorl 56(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 16(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 52(%rsp),%edx - movl %r13d,%eax - movl %r14d,48(%rsp) - movl %r13d,%ebx - xorl 60(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 20(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 56(%rsp),%ebp - movl %r12d,%eax - movl %edx,52(%rsp) - movl %r12d,%ebx - xorl 0(%rsp),%ebp - andl %r11d,%eax - movl %esi,%ecx - xorl 24(%rsp),%ebp - leal -1894007588(%rdx,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%ebp - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 60(%rsp),%r14d - movl %r11d,%eax - movl %ebp,56(%rsp) - movl %r11d,%ebx - xorl 4(%rsp),%r14d - andl %edi,%eax - movl %r13d,%ecx - xorl 28(%rsp),%r14d - leal -1894007588(%rbp,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%r14d - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 0(%rsp),%edx - movl %edi,%eax - movl %r14d,60(%rsp) - movl %edi,%ebx - xorl 8(%rsp),%edx - andl %esi,%eax - movl %r12d,%ecx - xorl 32(%rsp),%edx - leal -1894007588(%r14,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%edx - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 4(%rsp),%ebp - movl %esi,%eax - movl %edx,0(%rsp) - movl %esi,%ebx - xorl 12(%rsp),%ebp - andl %r13d,%eax - movl %r11d,%ecx - xorl 36(%rsp),%ebp - leal -1894007588(%rdx,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%ebp - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 8(%rsp),%r14d - movl %r13d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ebx - xorl 16(%rsp),%r14d - andl %r12d,%eax - movl %edi,%ecx - xorl 40(%rsp),%r14d - leal -1894007588(%rbp,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%r14d - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 12(%rsp),%edx - movl %r12d,%eax - movl %r14d,8(%rsp) - movl %r12d,%ebx - xorl 20(%rsp),%edx - andl %r11d,%eax - movl %esi,%ecx - xorl 44(%rsp),%edx - leal -1894007588(%r14,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%edx - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 16(%rsp),%ebp - movl %r11d,%eax - movl %edx,12(%rsp) - movl %r11d,%ebx - xorl 24(%rsp),%ebp - andl %edi,%eax - movl %r13d,%ecx - xorl 48(%rsp),%ebp - leal -1894007588(%rdx,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%ebp - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 20(%rsp),%r14d - movl %edi,%eax - movl %ebp,16(%rsp) - movl %edi,%ebx - xorl 28(%rsp),%r14d - andl %esi,%eax - movl %r12d,%ecx - xorl 52(%rsp),%r14d - leal -1894007588(%rbp,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%r14d - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 24(%rsp),%edx - movl %esi,%eax - movl %r14d,20(%rsp) - movl %esi,%ebx - xorl 32(%rsp),%edx - andl %r13d,%eax - movl %r11d,%ecx - xorl 56(%rsp),%edx - leal -1894007588(%r14,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%edx - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 28(%rsp),%ebp - movl %r13d,%eax - movl %edx,24(%rsp) - movl %r13d,%ebx - xorl 36(%rsp),%ebp - andl %r12d,%eax - movl %edi,%ecx - xorl 60(%rsp),%ebp - leal -1894007588(%rdx,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%ebp - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 32(%rsp),%r14d - movl %r12d,%eax - movl %ebp,28(%rsp) - movl %r12d,%ebx - xorl 40(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 0(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 36(%rsp),%edx - movl %r11d,%eax - movl %r14d,32(%rsp) - movl %r11d,%ebx - xorl 44(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 4(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 40(%rsp),%ebp - movl %edi,%eax - movl %edx,36(%rsp) - movl %edi,%ebx - xorl 48(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 8(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 44(%rsp),%r14d - movl %esi,%eax - movl %ebp,40(%rsp) - movl %esi,%ebx - xorl 52(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 12(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 48(%rsp),%edx - movl %r13d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ebx - xorl 56(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 16(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 52(%rsp),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %esi,%ecx - xorl 60(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 20(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 56(%rsp),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r13d,%ecx - xorl 0(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 24(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 60(%rsp),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %r12d,%ecx - xorl 4(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 28(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %r11d,%ecx - xorl 8(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %edi,%ecx - xorl 12(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - leal -899497514(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %esi,%ecx - xorl 16(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - leal -899497514(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r13d,%ecx - xorl 20(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - leal -899497514(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %r12d,%ecx - xorl 24(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - leal -899497514(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 20(%rsp),%edx - movl %r12d,%eax - movl %r14d,16(%rsp) - movl %r11d,%ecx - xorl 28(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal -899497514(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 24(%rsp),%ebp - movl %r11d,%eax - movl %edx,20(%rsp) - movl %edi,%ecx - xorl 32(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal -899497514(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %edi,%eax - movl %ebp,24(%rsp) - movl %esi,%ecx - xorl 36(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal -899497514(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %esi,%eax - movl %r14d,28(%rsp) - movl %r13d,%ecx - xorl 40(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal -899497514(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r13d,%eax - - movl %r12d,%ecx - xorl 44(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal -899497514(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %r12d,%eax - - movl %r11d,%ecx - xorl 48(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal -899497514(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 44(%rsp),%edx - movl %r11d,%eax - - movl %edi,%ecx - xorl 52(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal -899497514(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 48(%rsp),%ebp - movl %edi,%eax - - movl %esi,%ecx - xorl 56(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %esi,%eax - - movl %r13d,%ecx - xorl 60(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r13d,%eax - - movl %r12d,%ecx - xorl 0(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 60(%rsp),%ebp - movl %r12d,%eax - - movl %r11d,%ecx - xorl 4(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - movl %r11d,%eax - movl %edi,%ecx - xorl %r13d,%eax - leal -899497514(%rbp,%rsi,1),%esi - roll $5,%ecx - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - addl 0(%r8),%esi - addl 4(%r8),%edi - addl 8(%r8),%r11d - addl 12(%r8),%r12d - addl 16(%r8),%r13d - movl %esi,0(%r8) - movl %edi,4(%r8) - movl %r11d,8(%r8) - movl %r12d,12(%r8) - movl %r13d,16(%r8) - - subq $1,%r10 - leaq 64(%r9),%r9 - jnz L$loop - - movq 64(%rsp),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_block_data_order_shaext: -_shaext_shortcut: - movdqu (%rdi),%xmm0 - movd 16(%rdi),%xmm1 - movdqa K_XX_XX+160(%rip),%xmm3 - - movdqu (%rsi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%rsi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - movdqa %xmm1,%xmm9 -.byte 102,15,56,0,251 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - decq %rdx - leaq 64(%rsi),%r8 - paddd %xmm4,%xmm1 - cmovneq %r8,%rsi - movdqa %xmm0,%xmm8 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%rsi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%rsi),%xmm5 -.byte 102,15,56,0,227 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,235 - - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,243 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 65,15,56,200,201 -.byte 102,15,56,0,251 - - paddd %xmm8,%xmm0 - movdqa %xmm1,%xmm9 - - jnz L$oop_shaext - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%rdi) - movd %xmm1,16(%rdi) - .byte 0xf3,0xc3 - - -.p2align 4 -sha1_block_data_order_ssse3: -_ssse3_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - addq $64,%r9 - paddd %xmm9,%xmm0 -.byte 102,15,56,0,222 - paddd %xmm9,%xmm1 - paddd %xmm9,%xmm2 - movdqa %xmm0,0(%rsp) - psubd %xmm9,%xmm0 - movdqa %xmm1,16(%rsp) - psubd %xmm9,%xmm1 - movdqa %xmm2,32(%rsp) - psubd %xmm9,%xmm2 - jmp L$oop_ssse3 -.p2align 4 -L$oop_ssse3: - rorl $2,%ebx - pshufd $238,%xmm0,%xmm4 - xorl %edx,%esi - movdqa %xmm3,%xmm8 - paddd %xmm3,%xmm9 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm1,%xmm4 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm2,%xmm8 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm8,%xmm4 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - movdqa %xmm4,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm4,%xmm8 - xorl %ebx,%esi - pslldq $12,%xmm10 - paddd %xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm8 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm9 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm10 - addl %edx,%ecx - rorl $7,%edx - por %xmm8,%xmm4 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - pslld $2,%xmm9 - pxor %xmm10,%xmm4 - xorl %ebp,%edx - movdqa -64(%r11),%xmm10 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm9,%xmm4 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm1,%xmm5 - xorl %ebp,%esi - movdqa %xmm4,%xmm9 - paddd %xmm4,%xmm10 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm2,%xmm5 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm9 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm9,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm10,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm5,%xmm9 - xorl %ecx,%esi - pslldq $12,%xmm8 - paddd %xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm10 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm8 - addl %ebp,%edx - rorl $7,%ebp - por %xmm9,%xmm5 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm10 - pxor %xmm8,%xmm5 - xorl %eax,%ebp - movdqa -32(%r11),%xmm8 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm10,%xmm5 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm2,%xmm6 - xorl %eax,%esi - movdqa %xmm5,%xmm10 - paddd %xmm5,%xmm8 - movl %ecx,%edi - addl 32(%rsp),%ebx - punpcklqdq %xmm3,%xmm6 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm10 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm10 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm10,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm8,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm9 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm10 - xorl %edx,%esi - pslldq $12,%xmm9 - paddd %xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm10 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm9,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm9 - addl %eax,%ebp - rorl $7,%eax - por %xmm10,%xmm6 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm8 - pxor %xmm9,%xmm6 - xorl %ebx,%eax - movdqa -32(%r11),%xmm9 - roll $5,%ebp - addl %edi,%edx - andl %eax,%esi - pxor %xmm8,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%esi - movdqa %xmm6,%xmm8 - paddd %xmm6,%xmm9 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm4,%xmm7 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm8 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - pxor %xmm8,%xmm7 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm10 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm8 - xorl %ebp,%esi - pslldq $12,%xmm10 - paddd %xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm8 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm10,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm10 - addl %ebx,%eax - rorl $7,%ebx - por %xmm8,%xmm7 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm9 - pxor %xmm10,%xmm7 - xorl %ecx,%ebx - movdqa -32(%r11),%xmm10 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm9,%xmm7 - pshufd $238,%xmm6,%xmm9 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm4,%xmm0 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm7,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%edi - movdqa %xmm10,%xmm8 - xorl %ebx,%eax - paddd %xmm7,%xmm10 - addl %ebp,%edx - pxor %xmm9,%xmm0 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm0,%xmm9 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm10,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm0 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm9 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - por %xmm9,%xmm0 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm7,%xmm10 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm5,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm0,%xmm10 - movl %eax,%edi - roll $5,%eax - pxor %xmm2,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebx - paddd %xmm0,%xmm8 - addl %eax,%ebp - pxor %xmm10,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm1,%xmm10 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm8,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm1 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm10 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm10,%xmm1 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm0,%xmm8 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm6,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm1,%xmm8 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm3,%xmm2 - addl %esi,%eax - xorl %edx,%edi - movdqa 0(%r11),%xmm10 - rorl $7,%ecx - paddd %xmm1,%xmm9 - addl %ebx,%eax - pxor %xmm8,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm8 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm9,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm2 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm8 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm8,%xmm2 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm1,%xmm9 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm2,%xmm9 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm4,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm10,%xmm8 - rorl $7,%edx - paddd %xmm2,%xmm10 - addl %ecx,%ebx - pxor %xmm9,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm9 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm10,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - pslld $2,%xmm3 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm9 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm9,%xmm3 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm2,%xmm10 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm0,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm3,%xmm10 - movl %edx,%edi - roll $5,%edx - pxor %xmm5,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebp - paddd %xmm3,%xmm8 - addl %edx,%ecx - pxor %xmm10,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm10 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm8,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm4 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm10 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm10,%xmm4 - addl %ebx,%eax - addl 12(%rsp),%ebp - pshufd $238,%xmm3,%xmm8 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm1,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm4,%xmm8 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm6,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%eax - paddd %xmm4,%xmm9 - addl %ebp,%edx - pxor %xmm8,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm8 - addl %edi,%ecx - xorl %eax,%esi - movdqa %xmm9,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm5 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm8 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm8,%xmm5 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm4,%xmm9 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm2,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm5,%xmm9 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm7,%xmm6 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm10,%xmm8 - xorl %ebx,%edi - paddd %xmm5,%xmm10 - xorl %ecx,%ebx - pxor %xmm9,%xmm6 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm6,%xmm9 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm10,16(%rsp) - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - pslld $2,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm9 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm9,%xmm6 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm5,%xmm10 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm3,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm6,%xmm10 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm0,%xmm7 - roll $5,%ebx - addl %esi,%eax - movdqa 32(%r11),%xmm9 - xorl %ecx,%edi - paddd %xmm6,%xmm8 - xorl %edx,%ecx - pxor %xmm10,%xmm7 - addl %ebx,%eax - addl 52(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm7,%xmm10 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm8,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm7 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm10 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm10,%xmm7 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm6,%xmm8 - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm4,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - punpcklqdq %xmm7,%xmm8 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm1,%xmm0 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm9,%xmm10 - xorl %edx,%edi - paddd %xmm7,%xmm9 - xorl %ebp,%edx - pxor %xmm8,%xmm0 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm0,%xmm8 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm9,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm8 - addl 8(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - por %xmm8,%xmm0 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm7,%xmm9 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm5,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm0,%xmm9 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm2,%xmm1 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm8 - xorl %ebp,%edi - paddd %xmm0,%xmm10 - xorl %eax,%ebp - pxor %xmm9,%xmm1 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movdqa %xmm1,%xmm9 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm10,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm1 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm9 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm9,%xmm1 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm0,%xmm10 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm6,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm1,%xmm10 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm3,%xmm2 - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm9 - xorl %eax,%edi - paddd %xmm1,%xmm8 - xorl %ebx,%eax - pxor %xmm10,%xmm2 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm2,%xmm10 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm8,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm2 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm10 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm10,%xmm2 - rorl $7,%edx - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm1,%xmm8 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm2,%xmm8 - movl %eax,%edi - roll $5,%eax - pxor %xmm4,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%ebx - paddd %xmm2,%xmm9 - addl %eax,%ebp - pxor %xmm8,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm3,%xmm8 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm9,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm3 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm8 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm8,%xmm3 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm3,%xmm10 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm10,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je L$done_ssse3 - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,206 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm9,%xmm0 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm0,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm9,%xmm0 - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,214 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm9,%xmm1 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm1,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm9,%xmm1 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,222 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm9,%xmm2 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm2,32(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm9,%xmm2 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp L$oop_ssse3 - -.p2align 4 -L$done_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 - - -.p2align 4 -sha1_block_data_order_avx: -_avx_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - vzeroupper - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - vmovdqa 64(%r11),%xmm6 - vmovdqa -64(%r11),%xmm11 - vmovdqu 0(%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r9 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm11,%xmm0,%xmm4 - vpaddd %xmm11,%xmm1,%xmm5 - vpaddd %xmm11,%xmm2,%xmm6 - vmovdqa %xmm4,0(%rsp) - vmovdqa %xmm5,16(%rsp) - vmovdqa %xmm6,32(%rsp) - jmp L$oop_avx -.p2align 4 -L$oop_avx: - shrdl $2,%ebx,%ebx - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%edi - addl 0(%rsp),%ebp - vpaddd %xmm3,%xmm11,%xmm9 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm8 - addl %esi,%ebp - andl %ebx,%edi - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%ebp - vpxor %xmm2,%xmm8,%xmm8 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - vpxor %xmm8,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vmovdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - vpsrld $31,%xmm4,%xmm8 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm10 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm4,%xmm4 - addl %esi,%ecx - andl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm4,%xmm4 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - vpxor %xmm10,%xmm4,%xmm4 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %edi,%ebx - andl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%edi - addl 16(%rsp),%eax - vpaddd %xmm4,%xmm11,%xmm9 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm8 - addl %esi,%eax - andl %ecx,%edi - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm8,%xmm8 - shrdl $7,%ebx,%ebx - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - vpxor %xmm8,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - vmovdqa %xmm9,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm10 - vpaddd %xmm5,%xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm5,%xmm5 - addl %esi,%edx - andl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm5,%xmm5 - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - vpxor %xmm10,%xmm5,%xmm5 - xorl %eax,%ebp - shldl $5,%edx,%edx - vmovdqa -32(%r11),%xmm11 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%edi - addl 32(%rsp),%ebx - vpaddd %xmm5,%xmm11,%xmm9 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm8 - addl %esi,%ebx - andl %edx,%edi - vpxor %xmm2,%xmm6,%xmm6 - xorl %ebp,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm8,%xmm8 - shrdl $7,%ecx,%ecx - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - vpxor %xmm8,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vmovdqa %xmm9,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm8 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm10 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm6,%xmm6 - addl %esi,%ebp - andl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - vpxor %xmm10,%xmm6,%xmm6 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - addl %edi,%edx - andl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%edi - addl 48(%rsp),%ecx - vpaddd %xmm6,%xmm11,%xmm9 - xorl %eax,%ebp - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm8 - addl %esi,%ecx - andl %ebp,%edi - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%ebp - addl %edx,%ecx - vpxor %xmm5,%xmm8,%xmm8 - shrdl $7,%edx,%edx - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - vpxor %xmm8,%xmm7,%xmm7 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - vmovdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %ebp,%esi - vpslldq $12,%xmm7,%xmm10 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrld $30,%xmm10,%xmm9 - vpor %xmm8,%xmm7,%xmm7 - addl %esi,%eax - andl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm10,%xmm10 - vpxor %xmm9,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - vpxor %xmm10,%xmm7,%xmm7 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %edi,%ebp - andl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - vpxor %xmm1,%xmm0,%xmm0 - xorl %ebx,%eax - shldl $5,%ebp,%ebp - vpaddd %xmm7,%xmm11,%xmm9 - addl %esi,%edx - andl %eax,%edi - vpxor %xmm8,%xmm0,%xmm0 - xorl %ebx,%eax - addl %ebp,%edx - shrdl $7,%ebp,%ebp - xorl %ebx,%edi - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - movl %edx,%esi - addl 4(%rsp),%ecx - xorl %eax,%ebp - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - vpor %xmm8,%xmm0,%xmm0 - xorl %ebp,%edx - shldl $5,%ecx,%ecx - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm0,%xmm11,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm1,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm1,%xmm1 - addl 28(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - addl %esi,%eax - xorl %edx,%edi - vpaddd %xmm1,%xmm11,%xmm9 - vmovdqa 0(%r11),%xmm11 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm8,%xmm2,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpslld $2,%xmm2,%xmm2 - addl 40(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpor %xmm8,%xmm2,%xmm2 - addl 44(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - vpaddd %xmm2,%xmm11,%xmm9 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpalignr $8,%xmm2,%xmm3,%xmm8 - vpxor %xmm0,%xmm4,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - vpaddd %xmm3,%xmm11,%xmm9 - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpxor %xmm8,%xmm4,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm8 - vmovdqa %xmm9,48(%rsp) - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm8,%xmm4,%xmm4 - addl 12(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm3,%xmm4,%xmm8 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpxor %xmm6,%xmm5,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - vpaddd %xmm4,%xmm11,%xmm9 - shrdl $7,%eax,%eax - addl %ebp,%edx - vpxor %xmm8,%xmm5,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm8 - vmovdqa %xmm9,0(%rsp) - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm8,%xmm5,%xmm5 - addl 28(%rsp),%eax - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm8 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - movl %eax,%edi - xorl %ecx,%esi - vpaddd %xmm5,%xmm11,%xmm9 - shldl $5,%eax,%eax - addl %esi,%ebp - vpxor %xmm8,%xmm6,%xmm6 - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 36(%rsp),%edx - vpsrld $30,%xmm6,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - addl 40(%rsp),%ecx - andl %eax,%esi - vpor %xmm8,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%edi - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%esi - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm8 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - movl %ebx,%edi - xorl %edx,%esi - vpaddd %xmm6,%xmm11,%xmm9 - vmovdqa 32(%r11),%xmm11 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm8,%xmm7,%xmm7 - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%rsp),%ebp - vpsrld $30,%xmm7,%xmm8 - vmovdqa %xmm9,32(%rsp) - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - addl 56(%rsp),%edx - andl %ebx,%esi - vpor %xmm8,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%edi - xorl %ebx,%esi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm8 - vpxor %xmm4,%xmm0,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - shrdl $7,%edx,%edx - vpxor %xmm1,%xmm0,%xmm0 - movl %ecx,%edi - xorl %ebp,%esi - vpaddd %xmm7,%xmm11,%xmm9 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm8,%xmm0,%xmm0 - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 4(%rsp),%eax - vpsrld $30,%xmm0,%xmm8 - vmovdqa %xmm9,48(%rsp) - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%rsp),%ebp - andl %ecx,%esi - vpor %xmm8,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%edi - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %ebp,%esi - xorl %ebx,%edi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - vpalignr $8,%xmm7,%xmm0,%xmm8 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - vpxor %xmm2,%xmm1,%xmm1 - movl %edx,%edi - xorl %eax,%esi - vpaddd %xmm0,%xmm11,%xmm9 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 20(%rsp),%ebx - vpsrld $30,%xmm1,%xmm8 - vmovdqa %xmm9,0(%rsp) - andl %ebp,%edi - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %ebp,%edi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - addl 24(%rsp),%eax - andl %edx,%esi - vpor %xmm8,%xmm1,%xmm1 - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%edi - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%edi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - vpalignr $8,%xmm0,%xmm1,%xmm8 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - movl %ebp,%edi - xorl %ebx,%esi - vpaddd %xmm1,%xmm11,%xmm9 - shldl $5,%ebp,%ebp - addl %esi,%edx - vpxor %xmm8,%xmm2,%xmm2 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 36(%rsp),%ecx - vpsrld $30,%xmm2,%xmm8 - vmovdqa %xmm9,16(%rsp) - andl %eax,%edi - xorl %ebx,%eax - shrdl $7,%ebp,%ebp - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%edi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - addl 40(%rsp),%ebx - andl %ebp,%esi - vpor %xmm8,%xmm2,%xmm2 - xorl %eax,%ebp - shrdl $7,%edx,%edx - movl %ecx,%edi - xorl %ebp,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%edi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm8 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - vpaddd %xmm2,%xmm11,%xmm9 - shrdl $7,%ebx,%ebx - addl %eax,%ebp - vpxor %xmm8,%xmm3,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - vpsrld $30,%xmm3,%xmm8 - vmovdqa %xmm9,32(%rsp) - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vpor %xmm8,%xmm3,%xmm3 - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - vpaddd %xmm3,%xmm11,%xmm9 - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm9,48(%rsp) - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je L$done_avx - vmovdqa 64(%r11),%xmm6 - vmovdqa -64(%r11),%xmm11 - vmovdqu 0(%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - vpshufb %xmm6,%xmm1,%xmm1 - movl %ecx,%edi - shldl $5,%ecx,%ecx - vpaddd %xmm11,%xmm0,%xmm4 - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm4,0(%rsp) - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - vpshufb %xmm6,%xmm2,%xmm2 - movl %edx,%edi - shldl $5,%edx,%edx - vpaddd %xmm11,%xmm1,%xmm5 - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - vmovdqa %xmm5,16(%rsp) - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - vpshufb %xmm6,%xmm3,%xmm3 - movl %ebp,%edi - shldl $5,%ebp,%ebp - vpaddd %xmm11,%xmm2,%xmm6 - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - vmovdqa %xmm6,32(%rsp) - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp L$oop_avx - -.p2align 4 -L$done_avx: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - shldl $5,%eax,%eax - addl %esi,%ebp - xorl %ecx,%edi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - shldl $5,%ebp,%ebp - addl %edi,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%edi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %edi,%ebx - xorl %ebp,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%edi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - shldl $5,%eax,%eax - addl %edi,%ebp - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - shldl $5,%ebp,%ebp - addl %esi,%edx - xorl %ebx,%edi - shrdl $7,%eax,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - shldl $5,%edx,%edx - addl %edi,%ecx - xorl %eax,%esi - shrdl $7,%ebp,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %ebp,%edi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %edi,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vzeroupper - - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 4 -sha1_block_data_order_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - vzeroupper - movq %rax,%r14 - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - leaq -640(%rsp),%rsp - shlq $6,%r10 - leaq 64(%r9),%r13 - andq $-128,%rsp - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - cmpq %r10,%r13 - cmovaeq %r9,%r13 - movl 4(%r8),%ebp - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl 16(%r8),%esi - vmovdqu 64(%r11),%ymm6 - - vmovdqu (%r9),%xmm0 - vmovdqu 16(%r9),%xmm1 - vmovdqu 32(%r9),%xmm2 - vmovdqu 48(%r9),%xmm3 - leaq 64(%r9),%r9 - vinserti128 $1,(%r13),%ymm0,%ymm0 - vinserti128 $1,16(%r13),%ymm1,%ymm1 - vpshufb %ymm6,%ymm0,%ymm0 - vinserti128 $1,32(%r13),%ymm2,%ymm2 - vpshufb %ymm6,%ymm1,%ymm1 - vinserti128 $1,48(%r13),%ymm3,%ymm3 - vpshufb %ymm6,%ymm2,%ymm2 - vmovdqu -64(%r11),%ymm11 - vpshufb %ymm6,%ymm3,%ymm3 - - vpaddd %ymm11,%ymm0,%ymm4 - vpaddd %ymm11,%ymm1,%ymm5 - vmovdqu %ymm4,0(%rsp) - vpaddd %ymm11,%ymm2,%ymm6 - vmovdqu %ymm5,32(%rsp) - vpaddd %ymm11,%ymm3,%ymm7 - vmovdqu %ymm6,64(%rsp) - vmovdqu %ymm7,96(%rsp) - vpalignr $8,%ymm0,%ymm1,%ymm4 - vpsrldq $4,%ymm3,%ymm8 - vpxor %ymm0,%ymm4,%ymm4 - vpxor %ymm2,%ymm8,%ymm8 - vpxor %ymm8,%ymm4,%ymm4 - vpsrld $31,%ymm4,%ymm8 - vpslldq $12,%ymm4,%ymm10 - vpaddd %ymm4,%ymm4,%ymm4 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm4,%ymm4 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm4,%ymm4 - vpxor %ymm10,%ymm4,%ymm4 - vpaddd %ymm11,%ymm4,%ymm9 - vmovdqu %ymm9,128(%rsp) - vpalignr $8,%ymm1,%ymm2,%ymm5 - vpsrldq $4,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm3,%ymm8,%ymm8 - vpxor %ymm8,%ymm5,%ymm5 - vpsrld $31,%ymm5,%ymm8 - vmovdqu -32(%r11),%ymm11 - vpslldq $12,%ymm5,%ymm10 - vpaddd %ymm5,%ymm5,%ymm5 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm5,%ymm5 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm5,%ymm5 - vpxor %ymm10,%ymm5,%ymm5 - vpaddd %ymm11,%ymm5,%ymm9 - vmovdqu %ymm9,160(%rsp) - vpalignr $8,%ymm2,%ymm3,%ymm6 - vpsrldq $4,%ymm5,%ymm8 - vpxor %ymm2,%ymm6,%ymm6 - vpxor %ymm4,%ymm8,%ymm8 - vpxor %ymm8,%ymm6,%ymm6 - vpsrld $31,%ymm6,%ymm8 - vpslldq $12,%ymm6,%ymm10 - vpaddd %ymm6,%ymm6,%ymm6 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm6,%ymm6 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm6,%ymm6 - vpxor %ymm10,%ymm6,%ymm6 - vpaddd %ymm11,%ymm6,%ymm9 - vmovdqu %ymm9,192(%rsp) - vpalignr $8,%ymm3,%ymm4,%ymm7 - vpsrldq $4,%ymm6,%ymm8 - vpxor %ymm3,%ymm7,%ymm7 - vpxor %ymm5,%ymm8,%ymm8 - vpxor %ymm8,%ymm7,%ymm7 - vpsrld $31,%ymm7,%ymm8 - vpslldq $12,%ymm7,%ymm10 - vpaddd %ymm7,%ymm7,%ymm7 - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm7,%ymm7 - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm7,%ymm7 - vpxor %ymm10,%ymm7,%ymm7 - vpaddd %ymm11,%ymm7,%ymm9 - vmovdqu %ymm9,224(%rsp) - leaq 128(%rsp),%r13 - jmp L$oop_avx2 -.p2align 5 -L$oop_avx2: - rorxl $2,%ebp,%ebx - andnl %edx,%ebp,%edi - andl %ecx,%ebp - xorl %edi,%ebp - jmp L$align32_1 -.p2align 5 -L$align32_1: - vpalignr $8,%ymm6,%ymm7,%ymm8 - vpxor %ymm4,%ymm0,%ymm0 - addl -128(%r13),%esi - andnl %ecx,%eax,%edi - vpxor %ymm1,%ymm0,%ymm0 - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpxor %ymm8,%ymm0,%ymm0 - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - vpsrld $30,%ymm0,%ymm8 - vpslld $2,%ymm0,%ymm0 - addl -124(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - vpor %ymm8,%ymm0,%ymm0 - addl %r12d,%edx - xorl %edi,%esi - addl -120(%r13),%ecx - andnl %ebp,%edx,%edi - vpaddd %ymm11,%ymm0,%ymm9 - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - vmovdqu %ymm9,256(%rsp) - addl %r12d,%ecx - xorl %edi,%edx - addl -116(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -96(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - vpalignr $8,%ymm7,%ymm0,%ymm8 - vpxor %ymm5,%ymm1,%ymm1 - addl -92(%r13),%eax - andnl %edx,%ebp,%edi - vpxor %ymm2,%ymm1,%ymm1 - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - vpxor %ymm8,%ymm1,%ymm1 - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - vpsrld $30,%ymm1,%ymm8 - vpslld $2,%ymm1,%ymm1 - addl -88(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - vpor %ymm8,%ymm1,%ymm1 - addl %r12d,%esi - xorl %edi,%eax - addl -84(%r13),%edx - andnl %ebx,%esi,%edi - vpaddd %ymm11,%ymm1,%ymm9 - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - vmovdqu %ymm9,288(%rsp) - addl %r12d,%edx - xorl %edi,%esi - addl -64(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -60(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - vpalignr $8,%ymm0,%ymm1,%ymm8 - vpxor %ymm6,%ymm2,%ymm2 - addl -56(%r13),%ebp - andnl %esi,%ebx,%edi - vpxor %ymm3,%ymm2,%ymm2 - vmovdqu 0(%r11),%ymm11 - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpxor %ymm8,%ymm2,%ymm2 - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - vpsrld $30,%ymm2,%ymm8 - vpslld $2,%ymm2,%ymm2 - addl -52(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - vpor %ymm8,%ymm2,%ymm2 - addl %r12d,%eax - xorl %edi,%ebp - addl -32(%r13),%esi - andnl %ecx,%eax,%edi - vpaddd %ymm11,%ymm2,%ymm9 - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - vmovdqu %ymm9,320(%rsp) - addl %r12d,%esi - xorl %edi,%eax - addl -28(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -24(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - vpalignr $8,%ymm1,%ymm2,%ymm8 - vpxor %ymm7,%ymm3,%ymm3 - addl -20(%r13),%ebx - andnl %eax,%ecx,%edi - vpxor %ymm4,%ymm3,%ymm3 - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpxor %ymm8,%ymm3,%ymm3 - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - vpsrld $30,%ymm3,%ymm8 - vpslld $2,%ymm3,%ymm3 - addl 0(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - vpor %ymm8,%ymm3,%ymm3 - addl %r12d,%ebp - xorl %edi,%ebx - addl 4(%r13),%eax - andnl %edx,%ebp,%edi - vpaddd %ymm11,%ymm3,%ymm9 - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - vmovdqu %ymm9,352(%rsp) - addl %r12d,%eax - xorl %edi,%ebp - addl 8(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl 12(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vpalignr $8,%ymm2,%ymm3,%ymm8 - vpxor %ymm0,%ymm4,%ymm4 - addl 32(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - vpxor %ymm5,%ymm4,%ymm4 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpxor %ymm8,%ymm4,%ymm4 - addl %r12d,%ecx - xorl %ebp,%edx - addl 36(%r13),%ebx - vpsrld $30,%ymm4,%ymm8 - vpslld $2,%ymm4,%ymm4 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vpor %ymm8,%ymm4,%ymm4 - addl 40(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpaddd %ymm11,%ymm4,%ymm9 - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 44(%r13),%eax - vmovdqu %ymm9,384(%rsp) - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpalignr $8,%ymm3,%ymm4,%ymm8 - vpxor %ymm1,%ymm5,%ymm5 - addl 68(%r13),%edx - leal (%rdx,%rax,1),%edx - vpxor %ymm6,%ymm5,%ymm5 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - vpxor %ymm8,%ymm5,%ymm5 - addl %r12d,%edx - xorl %ebx,%esi - addl 72(%r13),%ecx - vpsrld $30,%ymm5,%ymm8 - vpslld $2,%ymm5,%ymm5 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - vpor %ymm8,%ymm5,%ymm5 - addl 76(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpaddd %ymm11,%ymm5,%ymm9 - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 96(%r13),%ebp - vmovdqu %ymm9,416(%rsp) - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 100(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpalignr $8,%ymm4,%ymm5,%ymm8 - vpxor %ymm2,%ymm6,%ymm6 - addl 104(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpxor %ymm7,%ymm6,%ymm6 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - vpxor %ymm8,%ymm6,%ymm6 - addl %r12d,%esi - xorl %ecx,%eax - addl 108(%r13),%edx - leaq 256(%r13),%r13 - vpsrld $30,%ymm6,%ymm8 - vpslld $2,%ymm6,%ymm6 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vpor %ymm8,%ymm6,%ymm6 - addl -128(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpaddd %ymm11,%ymm6,%ymm9 - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -124(%r13),%ebx - vmovdqu %ymm9,448(%rsp) - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -120(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpalignr $8,%ymm5,%ymm6,%ymm8 - vpxor %ymm3,%ymm7,%ymm7 - addl -116(%r13),%eax - leal (%rax,%rbx,1),%eax - vpxor %ymm0,%ymm7,%ymm7 - vmovdqu 32(%r11),%ymm11 - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - vpxor %ymm8,%ymm7,%ymm7 - addl %r12d,%eax - xorl %edx,%ebp - addl -96(%r13),%esi - vpsrld $30,%ymm7,%ymm8 - vpslld $2,%ymm7,%ymm7 - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpor %ymm8,%ymm7,%ymm7 - addl -92(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpaddd %ymm11,%ymm7,%ymm9 - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -88(%r13),%ecx - vmovdqu %ymm9,480(%rsp) - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -84(%r13),%ebx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - jmp L$align32_2 -.p2align 5 -L$align32_2: - vpalignr $8,%ymm6,%ymm7,%ymm8 - vpxor %ymm4,%ymm0,%ymm0 - addl -64(%r13),%ebp - xorl %esi,%ecx - vpxor %ymm1,%ymm0,%ymm0 - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - vpxor %ymm8,%ymm0,%ymm0 - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - vpsrld $30,%ymm0,%ymm8 - vpslld $2,%ymm0,%ymm0 - addl %r12d,%ebp - andl %edi,%ebx - addl -60(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - vpor %ymm8,%ymm0,%ymm0 - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - vpaddd %ymm11,%ymm0,%ymm9 - addl %r12d,%eax - andl %edi,%ebp - addl -56(%r13),%esi - xorl %ecx,%ebp - vmovdqu %ymm9,512(%rsp) - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl -52(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - addl -32(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - vpalignr $8,%ymm7,%ymm0,%ymm8 - vpxor %ymm5,%ymm1,%ymm1 - addl -28(%r13),%ebx - xorl %eax,%edx - vpxor %ymm2,%ymm1,%ymm1 - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - vpxor %ymm8,%ymm1,%ymm1 - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vpsrld $30,%ymm1,%ymm8 - vpslld $2,%ymm1,%ymm1 - addl %r12d,%ebx - andl %edi,%ecx - addl -24(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - vpor %ymm8,%ymm1,%ymm1 - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - vpaddd %ymm11,%ymm1,%ymm9 - addl %r12d,%ebp - andl %edi,%ebx - addl -20(%r13),%eax - xorl %edx,%ebx - vmovdqu %ymm9,544(%rsp) - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 0(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl 4(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - vpalignr $8,%ymm0,%ymm1,%ymm8 - vpxor %ymm6,%ymm2,%ymm2 - addl 8(%r13),%ecx - xorl %ebp,%esi - vpxor %ymm3,%ymm2,%ymm2 - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - vpxor %ymm8,%ymm2,%ymm2 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpsrld $30,%ymm2,%ymm8 - vpslld $2,%ymm2,%ymm2 - addl %r12d,%ecx - andl %edi,%edx - addl 12(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - vpor %ymm8,%ymm2,%ymm2 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vpaddd %ymm11,%ymm2,%ymm9 - addl %r12d,%ebx - andl %edi,%ecx - addl 32(%r13),%ebp - xorl %esi,%ecx - vmovdqu %ymm9,576(%rsp) - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 36(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 40(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - vpalignr $8,%ymm1,%ymm2,%ymm8 - vpxor %ymm7,%ymm3,%ymm3 - addl 44(%r13),%edx - xorl %ebx,%eax - vpxor %ymm4,%ymm3,%ymm3 - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - vpxor %ymm8,%ymm3,%ymm3 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - vpsrld $30,%ymm3,%ymm8 - vpslld $2,%ymm3,%ymm3 - addl %r12d,%edx - andl %edi,%esi - addl 64(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - vpor %ymm8,%ymm3,%ymm3 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - vpaddd %ymm11,%ymm3,%ymm9 - addl %r12d,%ecx - andl %edi,%edx - addl 68(%r13),%ebx - xorl %eax,%edx - vmovdqu %ymm9,608(%rsp) - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl 72(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 76(%r13),%eax - xorl %edx,%ebx - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl 100(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 104(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 108(%r13),%ebx - leaq 256(%r13),%r13 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -128(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -124(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -120(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -116(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -96(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -92(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -88(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -84(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -60(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -56(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -52(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -32(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -28(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -24(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -20(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - addl %r12d,%edx - leaq 128(%r9),%r13 - leaq 128(%r9),%rdi - cmpq %r10,%r13 - cmovaeq %r9,%r13 - - - addl 0(%r8),%edx - addl 4(%r8),%esi - addl 8(%r8),%ebp - movl %edx,0(%r8) - addl 12(%r8),%ebx - movl %esi,4(%r8) - movl %edx,%eax - addl 16(%r8),%ecx - movl %ebp,%r12d - movl %ebp,8(%r8) - movl %ebx,%edx - - movl %ebx,12(%r8) - movl %esi,%ebp - movl %ecx,16(%r8) - - movl %ecx,%esi - movl %r12d,%ecx - - - cmpq %r10,%r9 - je L$done_avx2 - vmovdqu 64(%r11),%ymm6 - cmpq %r10,%rdi - ja L$ast_avx2 - - vmovdqu -64(%rdi),%xmm0 - vmovdqu -48(%rdi),%xmm1 - vmovdqu -32(%rdi),%xmm2 - vmovdqu -16(%rdi),%xmm3 - vinserti128 $1,0(%r13),%ymm0,%ymm0 - vinserti128 $1,16(%r13),%ymm1,%ymm1 - vinserti128 $1,32(%r13),%ymm2,%ymm2 - vinserti128 $1,48(%r13),%ymm3,%ymm3 - jmp L$ast_avx2 - -.p2align 5 -L$ast_avx2: - leaq 128+16(%rsp),%r13 - rorxl $2,%ebp,%ebx - andnl %edx,%ebp,%edi - andl %ecx,%ebp - xorl %edi,%ebp - subq $-128,%r9 - addl -128(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -124(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -120(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -116(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -96(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl -92(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl -88(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -84(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -64(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -60(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl -56(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl -52(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl -32(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl -28(%r13),%edx - andnl %ebx,%esi,%edi - addl %eax,%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - andl %ebp,%esi - addl %r12d,%edx - xorl %edi,%esi - addl -24(%r13),%ecx - andnl %ebp,%edx,%edi - addl %esi,%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - andl %eax,%edx - addl %r12d,%ecx - xorl %edi,%edx - addl -20(%r13),%ebx - andnl %eax,%ecx,%edi - addl %edx,%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - andl %esi,%ecx - addl %r12d,%ebx - xorl %edi,%ecx - addl 0(%r13),%ebp - andnl %esi,%ebx,%edi - addl %ecx,%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - andl %edx,%ebx - addl %r12d,%ebp - xorl %edi,%ebx - addl 4(%r13),%eax - andnl %edx,%ebp,%edi - addl %ebx,%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - andl %ecx,%ebp - addl %r12d,%eax - xorl %edi,%ebp - addl 8(%r13),%esi - andnl %ecx,%eax,%edi - addl %ebp,%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - andl %ebx,%eax - addl %r12d,%esi - xorl %edi,%eax - addl 12(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 32(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 36(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 40(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 44(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl 64(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vmovdqu -64(%r11),%ymm11 - vpshufb %ymm6,%ymm0,%ymm0 - addl 68(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl 72(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl 76(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl 96(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl 100(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpshufb %ymm6,%ymm1,%ymm1 - vpaddd %ymm11,%ymm0,%ymm8 - addl 104(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl 108(%r13),%edx - leaq 256(%r13),%r13 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -128(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -124(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -120(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vmovdqu %ymm8,0(%rsp) - vpshufb %ymm6,%ymm2,%ymm2 - vpaddd %ymm11,%ymm1,%ymm9 - addl -116(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -92(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - addl -88(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -84(%r13),%ebx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - vmovdqu %ymm9,32(%rsp) - vpshufb %ymm6,%ymm3,%ymm3 - vpaddd %ymm11,%ymm2,%ymm6 - addl -64(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl -60(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl -56(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl -52(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - addl -32(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - jmp L$align32_3 -.p2align 5 -L$align32_3: - vmovdqu %ymm6,64(%rsp) - vpaddd %ymm11,%ymm3,%ymm7 - addl -28(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl -24(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl -20(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 0(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - addl 4(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - andl %edi,%esi - vmovdqu %ymm7,96(%rsp) - addl 8(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - andl %edi,%edx - addl 12(%r13),%ebx - xorl %eax,%edx - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - andl %edi,%ecx - addl 32(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 36(%r13),%eax - xorl %edx,%ebx - movl %ecx,%edi - xorl %edx,%edi - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - andl %edi,%ebp - addl 40(%r13),%esi - xorl %ecx,%ebp - movl %ebx,%edi - xorl %ecx,%edi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - andl %edi,%eax - vpalignr $8,%ymm0,%ymm1,%ymm4 - addl 44(%r13),%edx - xorl %ebx,%eax - movl %ebp,%edi - xorl %ebx,%edi - vpsrldq $4,%ymm3,%ymm8 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpxor %ymm0,%ymm4,%ymm4 - vpxor %ymm2,%ymm8,%ymm8 - xorl %ebp,%esi - addl %r12d,%edx - vpxor %ymm8,%ymm4,%ymm4 - andl %edi,%esi - addl 64(%r13),%ecx - xorl %ebp,%esi - movl %eax,%edi - vpsrld $31,%ymm4,%ymm8 - xorl %ebp,%edi - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - vpslldq $12,%ymm4,%ymm10 - vpaddd %ymm4,%ymm4,%ymm4 - rorxl $2,%edx,%esi - xorl %eax,%edx - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm4,%ymm4 - addl %r12d,%ecx - andl %edi,%edx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm4,%ymm4 - addl 68(%r13),%ebx - xorl %eax,%edx - vpxor %ymm10,%ymm4,%ymm4 - movl %esi,%edi - xorl %eax,%edi - leal (%rbx,%rdx,1),%ebx - vpaddd %ymm11,%ymm4,%ymm9 - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - vmovdqu %ymm9,128(%rsp) - addl %r12d,%ebx - andl %edi,%ecx - addl 72(%r13),%ebp - xorl %esi,%ecx - movl %edx,%edi - xorl %esi,%edi - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - andl %edi,%ebx - addl 76(%r13),%eax - xorl %edx,%ebx - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpalignr $8,%ymm1,%ymm2,%ymm5 - addl 96(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpsrldq $4,%ymm4,%ymm8 - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - vpxor %ymm1,%ymm5,%ymm5 - vpxor %ymm3,%ymm8,%ymm8 - addl 100(%r13),%edx - leal (%rdx,%rax,1),%edx - vpxor %ymm8,%ymm5,%ymm5 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - xorl %ebp,%esi - addl %r12d,%edx - vpsrld $31,%ymm5,%ymm8 - vmovdqu -32(%r11),%ymm11 - xorl %ebx,%esi - addl 104(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - vpslldq $12,%ymm5,%ymm10 - vpaddd %ymm5,%ymm5,%ymm5 - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm5,%ymm5 - xorl %eax,%edx - addl %r12d,%ecx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm5,%ymm5 - xorl %ebp,%edx - addl 108(%r13),%ebx - leaq 256(%r13),%r13 - vpxor %ymm10,%ymm5,%ymm5 - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - vpaddd %ymm11,%ymm5,%ymm9 - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vmovdqu %ymm9,160(%rsp) - addl -128(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpalignr $8,%ymm2,%ymm3,%ymm6 - addl -124(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - vpsrldq $4,%ymm5,%ymm8 - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - vpxor %ymm2,%ymm6,%ymm6 - vpxor %ymm4,%ymm8,%ymm8 - addl -120(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpxor %ymm8,%ymm6,%ymm6 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - vpsrld $31,%ymm6,%ymm8 - xorl %ecx,%eax - addl -116(%r13),%edx - leal (%rdx,%rax,1),%edx - vpslldq $12,%ymm6,%ymm10 - vpaddd %ymm6,%ymm6,%ymm6 - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm6,%ymm6 - xorl %ebp,%esi - addl %r12d,%edx - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm6,%ymm6 - xorl %ebx,%esi - addl -96(%r13),%ecx - vpxor %ymm10,%ymm6,%ymm6 - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - vpaddd %ymm11,%ymm6,%ymm9 - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - vmovdqu %ymm9,192(%rsp) - addl -92(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - vpalignr $8,%ymm3,%ymm4,%ymm7 - addl -88(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - vpsrldq $4,%ymm6,%ymm8 - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - vpxor %ymm3,%ymm7,%ymm7 - vpxor %ymm5,%ymm8,%ymm8 - addl -84(%r13),%eax - leal (%rax,%rbx,1),%eax - vpxor %ymm8,%ymm7,%ymm7 - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - vpsrld $31,%ymm7,%ymm8 - xorl %edx,%ebp - addl -64(%r13),%esi - leal (%rsi,%rbp,1),%esi - vpslldq $12,%ymm7,%ymm10 - vpaddd %ymm7,%ymm7,%ymm7 - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - vpsrld $30,%ymm10,%ymm9 - vpor %ymm8,%ymm7,%ymm7 - xorl %ebx,%eax - addl %r12d,%esi - vpslld $2,%ymm10,%ymm10 - vpxor %ymm9,%ymm7,%ymm7 - xorl %ecx,%eax - addl -60(%r13),%edx - vpxor %ymm10,%ymm7,%ymm7 - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - rorxl $2,%esi,%eax - vpaddd %ymm11,%ymm7,%ymm9 - xorl %ebp,%esi - addl %r12d,%edx - xorl %ebx,%esi - vmovdqu %ymm9,224(%rsp) - addl -56(%r13),%ecx - leal (%rcx,%rsi,1),%ecx - rorxl $27,%edx,%r12d - rorxl $2,%edx,%esi - xorl %eax,%edx - addl %r12d,%ecx - xorl %ebp,%edx - addl -52(%r13),%ebx - leal (%rbx,%rdx,1),%ebx - rorxl $27,%ecx,%r12d - rorxl $2,%ecx,%edx - xorl %esi,%ecx - addl %r12d,%ebx - xorl %eax,%ecx - addl -32(%r13),%ebp - leal (%rcx,%rbp,1),%ebp - rorxl $27,%ebx,%r12d - rorxl $2,%ebx,%ecx - xorl %edx,%ebx - addl %r12d,%ebp - xorl %esi,%ebx - addl -28(%r13),%eax - leal (%rax,%rbx,1),%eax - rorxl $27,%ebp,%r12d - rorxl $2,%ebp,%ebx - xorl %ecx,%ebp - addl %r12d,%eax - xorl %edx,%ebp - addl -24(%r13),%esi - leal (%rsi,%rbp,1),%esi - rorxl $27,%eax,%r12d - rorxl $2,%eax,%ebp - xorl %ebx,%eax - addl %r12d,%esi - xorl %ecx,%eax - addl -20(%r13),%edx - leal (%rdx,%rax,1),%edx - rorxl $27,%esi,%r12d - addl %r12d,%edx - leaq 128(%rsp),%r13 - - - addl 0(%r8),%edx - addl 4(%r8),%esi - addl 8(%r8),%ebp - movl %edx,0(%r8) - addl 12(%r8),%ebx - movl %esi,4(%r8) - movl %edx,%eax - addl 16(%r8),%ecx - movl %ebp,%r12d - movl %ebp,8(%r8) - movl %ebx,%edx - - movl %ebx,12(%r8) - movl %esi,%ebp - movl %ecx,16(%r8) - - movl %ecx,%esi - movl %r12d,%ecx - - - cmpq %r10,%r9 - jbe L$oop_avx2 - -L$done_avx2: - vzeroupper - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 - -.p2align 6 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm/x64-macosx-gas/sha/sha256-mb-x86_64.s b/deps/openssl/asm/x64-macosx-gas/sha/sha256-mb-x86_64.s deleted file mode 100644 index 897dacd5b40847..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/sha/sha256-mb-x86_64.s +++ /dev/null @@ -1,7902 +0,0 @@ -.text - - - -.globl _sha256_multi_block - -.p2align 5 -_sha256_multi_block: - movq _OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - testl $268435456,%ecx - jnz _avx_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -L$oop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done - - movdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - movdqu 32-128(%rdi),%xmm9 - movdqu 64-128(%rdi),%xmm10 - movdqu 96-128(%rdi),%xmm11 - movdqu 128-128(%rdi),%xmm12 - movdqu 160-128(%rdi),%xmm13 - movdqu 192-128(%rdi),%xmm14 - movdqu 224-128(%rdi),%xmm15 - movdqu L$pbswap(%rip),%xmm6 - jmp L$oop - -.p2align 5 -L$oop: - movdqa %xmm10,%xmm4 - pxor %xmm9,%xmm4 - movd 0(%r8),%xmm5 - movd 0(%r9),%xmm0 - movd 0(%r10),%xmm1 - movd 0(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 4(%r8),%xmm5 - movd 4(%r9),%xmm0 - movd 4(%r10),%xmm1 - movd 4(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,16-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 8(%r8),%xmm5 - movd 8(%r9),%xmm0 - movd 8(%r10),%xmm1 - movd 8(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 12(%r8),%xmm5 - movd 12(%r9),%xmm0 - movd 12(%r10),%xmm1 - movd 12(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,48-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 16(%r8),%xmm5 - movd 16(%r9),%xmm0 - movd 16(%r10),%xmm1 - movd 16(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 20(%r8),%xmm5 - movd 20(%r9),%xmm0 - movd 20(%r10),%xmm1 - movd 20(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,80-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 24(%r8),%xmm5 - movd 24(%r9),%xmm0 - movd 24(%r10),%xmm1 - movd 24(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 28(%r8),%xmm5 - movd 28(%r9),%xmm0 - movd 28(%r10),%xmm1 - movd 28(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,112-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movd 32(%r8),%xmm5 - movd 32(%r9),%xmm0 - movd 32(%r10),%xmm1 - movd 32(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 36(%r8),%xmm5 - movd 36(%r9),%xmm0 - movd 36(%r10),%xmm1 - movd 36(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,144-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 40(%r8),%xmm5 - movd 40(%r9),%xmm0 - movd 40(%r10),%xmm1 - movd 40(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 44(%r8),%xmm5 - movd 44(%r9),%xmm0 - movd 44(%r10),%xmm1 - movd 44(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,176-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 48(%r8),%xmm5 - movd 48(%r9),%xmm0 - movd 48(%r10),%xmm1 - movd 48(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 52(%r8),%xmm5 - movd 52(%r9),%xmm0 - movd 52(%r10),%xmm1 - movd 52(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,208-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 56(%r8),%xmm5 - movd 56(%r9),%xmm0 - movd 56(%r10),%xmm1 - movd 56(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - movd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - movd 60(%r10),%xmm1 - leaq 64(%r10),%r10 - movd 60(%r11),%xmm2 - leaq 64(%r11),%r11 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,240-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - prefetcht0 63(%r8) - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - prefetcht0 63(%r9) - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - prefetcht0 63(%r10) - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - prefetcht0 63(%r11) - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp L$oop_16_xx -.p2align 5 -L$oop_16_xx: - movdqa 16-128(%rax),%xmm6 - paddd 144-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 224-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 32-128(%rax),%xmm5 - paddd 160-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 240-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,16-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 48-128(%rax),%xmm6 - paddd 176-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 0-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 64-128(%rax),%xmm5 - paddd 192-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 16-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,48-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 80-128(%rax),%xmm6 - paddd 208-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 32-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 96-128(%rax),%xmm5 - paddd 224-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 48-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,80-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 112-128(%rax),%xmm6 - paddd 240-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 64-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 128-128(%rax),%xmm5 - paddd 0-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 80-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,112-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqa 144-128(%rax),%xmm6 - paddd 16-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 96-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 160-128(%rax),%xmm5 - paddd 32-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 112-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,144-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 176-128(%rax),%xmm6 - paddd 48-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 128-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 192-128(%rax),%xmm5 - paddd 64-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 144-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,176-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 208-128(%rax),%xmm6 - paddd 80-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 160-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 224-128(%rax),%xmm5 - paddd 96-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 176-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,208-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 240-128(%rax),%xmm6 - paddd 112-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 192-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 0-128(%rax),%xmm5 - paddd 128-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 208-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,240-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - decl %ecx - jnz L$oop_16_xx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - - movdqa (%rbx),%xmm7 - cmpl 0(%rbx),%ecx - pxor %xmm0,%xmm0 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm7,%xmm6 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm0,%xmm6 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm6,%xmm7 - cmovgeq %rbp,%r11 - - movdqu 0-128(%rdi),%xmm0 - pand %xmm6,%xmm8 - movdqu 32-128(%rdi),%xmm1 - pand %xmm6,%xmm9 - movdqu 64-128(%rdi),%xmm2 - pand %xmm6,%xmm10 - movdqu 96-128(%rdi),%xmm5 - pand %xmm6,%xmm11 - paddd %xmm0,%xmm8 - movdqu 128-128(%rdi),%xmm0 - pand %xmm6,%xmm12 - paddd %xmm1,%xmm9 - movdqu 160-128(%rdi),%xmm1 - pand %xmm6,%xmm13 - paddd %xmm2,%xmm10 - movdqu 192-128(%rdi),%xmm2 - pand %xmm6,%xmm14 - paddd %xmm5,%xmm11 - movdqu 224-128(%rdi),%xmm5 - pand %xmm6,%xmm15 - paddd %xmm0,%xmm12 - paddd %xmm1,%xmm13 - movdqu %xmm8,0-128(%rdi) - paddd %xmm2,%xmm14 - movdqu %xmm9,32-128(%rdi) - paddd %xmm5,%xmm15 - movdqu %xmm10,64-128(%rdi) - movdqu %xmm11,96-128(%rdi) - movdqu %xmm12,128-128(%rdi) - movdqu %xmm13,160-128(%rdi) - movdqu %xmm14,192-128(%rdi) - movdqu %xmm15,224-128(%rdi) - - movdqa %xmm7,(%rbx) - movdqa L$pbswap(%rip),%xmm6 - decl %edx - jnz L$oop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande - -L$done: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha256_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 128(%rdi),%rdi - movq %rax,272(%rsp) -L$body_shaext: - leaq 256(%rsp),%rbx - leaq K256_shaext+128(%rip),%rbp - -L$oop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz L$done_shaext - - movq 0-128(%rdi),%xmm12 - movq 32-128(%rdi),%xmm4 - movq 64-128(%rdi),%xmm13 - movq 96-128(%rdi),%xmm5 - movq 128-128(%rdi),%xmm8 - movq 160-128(%rdi),%xmm9 - movq 192-128(%rdi),%xmm10 - movq 224-128(%rdi),%xmm11 - - punpckldq %xmm4,%xmm12 - punpckldq %xmm5,%xmm13 - punpckldq %xmm9,%xmm8 - punpckldq %xmm11,%xmm10 - movdqa K256_shaext-16(%rip),%xmm3 - - movdqa %xmm12,%xmm14 - movdqa %xmm13,%xmm15 - punpcklqdq %xmm8,%xmm12 - punpcklqdq %xmm10,%xmm13 - punpckhqdq %xmm8,%xmm14 - punpckhqdq %xmm10,%xmm15 - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - jmp L$oop_shaext - -.p2align 5 -L$oop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm8 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm9 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm10 -.byte 102,68,15,56,0,195 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 - movdqu 48(%r9),%xmm11 - leaq 64(%r9),%r9 - - movdqa 0-128(%rbp),%xmm0 -.byte 102,15,56,0,235 - paddd %xmm4,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm0,%xmm1 - movdqa 0-128(%rbp),%xmm2 -.byte 102,68,15,56,0,203 - paddd %xmm8,%xmm2 - movdqa %xmm13,80(%rsp) -.byte 69,15,56,203,236 - pxor %xmm14,%xmm8 - movdqa %xmm2,%xmm0 - movdqa %xmm15,112(%rsp) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm12,64(%rsp) -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pxor %xmm14,%xmm8 - movdqa %xmm14,96(%rsp) - movdqa 16-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 102,15,56,0,243 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 16-128(%rbp),%xmm2 - paddd %xmm9,%xmm2 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - prefetcht0 127(%r8) -.byte 102,15,56,0,251 -.byte 102,68,15,56,0,211 - prefetcht0 127(%r9) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,68,15,56,0,219 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 32-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 32-128(%rbp),%xmm2 - paddd %xmm10,%xmm2 -.byte 69,15,56,203,236 -.byte 69,15,56,204,193 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,15,58,15,222,4 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 48-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - - movdqa %xmm1,%xmm0 - movdqa 48-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 64-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 64-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 80-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 80-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 96-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 96-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 112-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 112-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 128-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 128-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 144-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 144-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 160-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 160-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 176-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 176-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 192-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 192-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 208-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 208-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 224-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 224-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 - nop -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movl $1,%ecx - pxor %xmm6,%xmm6 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - movdqa 240-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 - movq (%rbx),%xmm7 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 240-128(%rbp),%xmm2 - paddd %xmm11,%xmm2 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - pshufd $0x00,%xmm7,%xmm9 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - pshufd $0x55,%xmm7,%xmm10 - movdqa %xmm7,%xmm11 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pcmpgtd %xmm6,%xmm9 - pcmpgtd %xmm6,%xmm10 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pcmpgtd %xmm6,%xmm11 - movdqa K256_shaext-16(%rip),%xmm3 -.byte 69,15,56,203,247 - - pand %xmm9,%xmm13 - pand %xmm10,%xmm15 - pand %xmm9,%xmm12 - pand %xmm10,%xmm14 - paddd %xmm7,%xmm11 - - paddd 80(%rsp),%xmm13 - paddd 112(%rsp),%xmm15 - paddd 64(%rsp),%xmm12 - paddd 96(%rsp),%xmm14 - - movq %xmm11,(%rbx) - decl %edx - jnz L$oop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - - movdqa %xmm12,%xmm5 - movdqa %xmm13,%xmm6 - punpckldq %xmm14,%xmm12 - punpckhdq %xmm14,%xmm5 - punpckldq %xmm15,%xmm13 - punpckhdq %xmm15,%xmm6 - - movq %xmm12,0-128(%rdi) - psrldq $8,%xmm12 - movq %xmm5,128-128(%rdi) - psrldq $8,%xmm5 - movq %xmm12,32-128(%rdi) - movq %xmm5,160-128(%rdi) - - movq %xmm13,64-128(%rdi) - psrldq $8,%xmm13 - movq %xmm6,192-128(%rdi) - psrldq $8,%xmm6 - movq %xmm13,96-128(%rdi) - movq %xmm6,224-128(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz L$oop_grande_shaext - -L$done_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_shaext: - .byte 0xf3,0xc3 - - -.p2align 5 -sha256_multi_block_avx: -_avx_shortcut: - shrq $32,%rcx - cmpl $2,%edx - jb L$avx - testl $32,%ecx - jnz _avx2_shortcut - jmp L$avx -.p2align 5 -L$avx: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body_avx: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -L$oop_grande_avx: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done_avx - - vmovdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - vmovdqu 32-128(%rdi),%xmm9 - vmovdqu 64-128(%rdi),%xmm10 - vmovdqu 96-128(%rdi),%xmm11 - vmovdqu 128-128(%rdi),%xmm12 - vmovdqu 160-128(%rdi),%xmm13 - vmovdqu 192-128(%rdi),%xmm14 - vmovdqu 224-128(%rdi),%xmm15 - vmovdqu L$pbswap(%rip),%xmm6 - jmp L$oop_avx - -.p2align 5 -L$oop_avx: - vpxor %xmm9,%xmm10,%xmm4 - vmovd 0(%r8),%xmm5 - vmovd 0(%r9),%xmm0 - vpinsrd $1,0(%r10),%xmm5,%xmm5 - vpinsrd $1,0(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,0-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovd 4(%r8),%xmm5 - vmovd 4(%r9),%xmm0 - vpinsrd $1,4(%r10),%xmm5,%xmm5 - vpinsrd $1,4(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm5,16-128(%rax) - vpaddd %xmm14,%xmm5,%xmm5 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm5,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovd 8(%r8),%xmm5 - vmovd 8(%r9),%xmm0 - vpinsrd $1,8(%r10),%xmm5,%xmm5 - vpinsrd $1,8(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,32-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovd 12(%r8),%xmm5 - vmovd 12(%r9),%xmm0 - vpinsrd $1,12(%r10),%xmm5,%xmm5 - vpinsrd $1,12(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm5,48-128(%rax) - vpaddd %xmm12,%xmm5,%xmm5 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm5,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovd 16(%r8),%xmm5 - vmovd 16(%r9),%xmm0 - vpinsrd $1,16(%r10),%xmm5,%xmm5 - vpinsrd $1,16(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,64-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovd 20(%r8),%xmm5 - vmovd 20(%r9),%xmm0 - vpinsrd $1,20(%r10),%xmm5,%xmm5 - vpinsrd $1,20(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm5,80-128(%rax) - vpaddd %xmm10,%xmm5,%xmm5 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm5,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovd 24(%r8),%xmm5 - vmovd 24(%r9),%xmm0 - vpinsrd $1,24(%r10),%xmm5,%xmm5 - vpinsrd $1,24(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,96-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovd 28(%r8),%xmm5 - vmovd 28(%r9),%xmm0 - vpinsrd $1,28(%r10),%xmm5,%xmm5 - vpinsrd $1,28(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm5,112-128(%rax) - vpaddd %xmm8,%xmm5,%xmm5 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm5,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovd 32(%r8),%xmm5 - vmovd 32(%r9),%xmm0 - vpinsrd $1,32(%r10),%xmm5,%xmm5 - vpinsrd $1,32(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,128-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovd 36(%r8),%xmm5 - vmovd 36(%r9),%xmm0 - vpinsrd $1,36(%r10),%xmm5,%xmm5 - vpinsrd $1,36(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm5,144-128(%rax) - vpaddd %xmm14,%xmm5,%xmm5 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm5,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovd 40(%r8),%xmm5 - vmovd 40(%r9),%xmm0 - vpinsrd $1,40(%r10),%xmm5,%xmm5 - vpinsrd $1,40(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,160-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovd 44(%r8),%xmm5 - vmovd 44(%r9),%xmm0 - vpinsrd $1,44(%r10),%xmm5,%xmm5 - vpinsrd $1,44(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm5,176-128(%rax) - vpaddd %xmm12,%xmm5,%xmm5 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm5,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovd 48(%r8),%xmm5 - vmovd 48(%r9),%xmm0 - vpinsrd $1,48(%r10),%xmm5,%xmm5 - vpinsrd $1,48(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,192-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovd 52(%r8),%xmm5 - vmovd 52(%r9),%xmm0 - vpinsrd $1,52(%r10),%xmm5,%xmm5 - vpinsrd $1,52(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm5,208-128(%rax) - vpaddd %xmm10,%xmm5,%xmm5 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm5,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovd 56(%r8),%xmm5 - vmovd 56(%r9),%xmm0 - vpinsrd $1,56(%r10),%xmm5,%xmm5 - vpinsrd $1,56(%r11),%xmm0,%xmm0 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,224-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - vmovd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - vpinsrd $1,60(%r10),%xmm5,%xmm5 - leaq 64(%r10),%r10 - vpinsrd $1,60(%r11),%xmm0,%xmm0 - leaq 64(%r11),%r11 - vpunpckldq %xmm0,%xmm5,%xmm5 - vpshufb %xmm6,%xmm5,%xmm5 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm5,240-128(%rax) - vpaddd %xmm8,%xmm5,%xmm5 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - prefetcht0 63(%r8) - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - prefetcht0 63(%r9) - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - prefetcht0 63(%r10) - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - prefetcht0 63(%r11) - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm5,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp L$oop_16_xx_avx -.p2align 5 -L$oop_16_xx_avx: - vmovdqu 16-128(%rax),%xmm6 - vpaddd 144-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 224-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,0-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovdqu 32-128(%rax),%xmm5 - vpaddd 160-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 240-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm6,16-128(%rax) - vpaddd %xmm14,%xmm6,%xmm6 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm6,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovdqu 48-128(%rax),%xmm6 - vpaddd 176-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 0-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,32-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovdqu 64-128(%rax),%xmm5 - vpaddd 192-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 16-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm6,48-128(%rax) - vpaddd %xmm12,%xmm6,%xmm6 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm6,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovdqu 80-128(%rax),%xmm6 - vpaddd 208-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 32-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,64-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovdqu 96-128(%rax),%xmm5 - vpaddd 224-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 48-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm6,80-128(%rax) - vpaddd %xmm10,%xmm6,%xmm6 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm6,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovdqu 112-128(%rax),%xmm6 - vpaddd 240-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 64-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,96-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovdqu 128-128(%rax),%xmm5 - vpaddd 0-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 80-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm6,112-128(%rax) - vpaddd %xmm8,%xmm6,%xmm6 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - vmovdqu 144-128(%rax),%xmm6 - vpaddd 16-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 96-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm12,%xmm7 - vpslld $26,%xmm12,%xmm2 - vmovdqu %xmm5,128-128(%rax) - vpaddd %xmm15,%xmm5,%xmm5 - - vpsrld $11,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm12,%xmm2 - vpaddd -128(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm12,%xmm2 - vpandn %xmm14,%xmm12,%xmm0 - vpand %xmm13,%xmm12,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm8,%xmm15 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm8,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm8,%xmm9,%xmm3 - - vpxor %xmm1,%xmm15,%xmm15 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm8,%xmm1 - - vpslld $19,%xmm8,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm15,%xmm7 - - vpsrld $22,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm8,%xmm2 - vpxor %xmm4,%xmm9,%xmm15 - vpaddd %xmm5,%xmm11,%xmm11 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm15,%xmm15 - vpaddd %xmm7,%xmm15,%xmm15 - vmovdqu 160-128(%rax),%xmm5 - vpaddd 32-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 112-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm11,%xmm7 - vpslld $26,%xmm11,%xmm2 - vmovdqu %xmm6,144-128(%rax) - vpaddd %xmm14,%xmm6,%xmm6 - - vpsrld $11,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm11,%xmm2 - vpaddd -96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm11,%xmm2 - vpandn %xmm13,%xmm11,%xmm0 - vpand %xmm12,%xmm11,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm15,%xmm14 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm15,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm15,%xmm8,%xmm4 - - vpxor %xmm1,%xmm14,%xmm14 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm15,%xmm1 - - vpslld $19,%xmm15,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm14,%xmm7 - - vpsrld $22,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm15,%xmm2 - vpxor %xmm3,%xmm8,%xmm14 - vpaddd %xmm6,%xmm10,%xmm10 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm14,%xmm14 - vpaddd %xmm7,%xmm14,%xmm14 - vmovdqu 176-128(%rax),%xmm6 - vpaddd 48-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 128-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm10,%xmm7 - vpslld $26,%xmm10,%xmm2 - vmovdqu %xmm5,160-128(%rax) - vpaddd %xmm13,%xmm5,%xmm5 - - vpsrld $11,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm10,%xmm2 - vpaddd -64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm10,%xmm2 - vpandn %xmm12,%xmm10,%xmm0 - vpand %xmm11,%xmm10,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm14,%xmm13 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm14,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm14,%xmm15,%xmm3 - - vpxor %xmm1,%xmm13,%xmm13 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm14,%xmm1 - - vpslld $19,%xmm14,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm13,%xmm7 - - vpsrld $22,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm14,%xmm2 - vpxor %xmm4,%xmm15,%xmm13 - vpaddd %xmm5,%xmm9,%xmm9 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm13,%xmm13 - vpaddd %xmm7,%xmm13,%xmm13 - vmovdqu 192-128(%rax),%xmm5 - vpaddd 64-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 144-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm9,%xmm7 - vpslld $26,%xmm9,%xmm2 - vmovdqu %xmm6,176-128(%rax) - vpaddd %xmm12,%xmm6,%xmm6 - - vpsrld $11,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm9,%xmm2 - vpaddd -32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm9,%xmm2 - vpandn %xmm11,%xmm9,%xmm0 - vpand %xmm10,%xmm9,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm13,%xmm12 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm13,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm13,%xmm14,%xmm4 - - vpxor %xmm1,%xmm12,%xmm12 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm13,%xmm1 - - vpslld $19,%xmm13,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm12,%xmm7 - - vpsrld $22,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm13,%xmm2 - vpxor %xmm3,%xmm14,%xmm12 - vpaddd %xmm6,%xmm8,%xmm8 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm12,%xmm12 - vpaddd %xmm7,%xmm12,%xmm12 - vmovdqu 208-128(%rax),%xmm6 - vpaddd 80-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 160-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm8,%xmm7 - vpslld $26,%xmm8,%xmm2 - vmovdqu %xmm5,192-128(%rax) - vpaddd %xmm11,%xmm5,%xmm5 - - vpsrld $11,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm8,%xmm2 - vpaddd 0(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm8,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm8,%xmm2 - vpandn %xmm10,%xmm8,%xmm0 - vpand %xmm9,%xmm8,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm12,%xmm11 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm12,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm12,%xmm13,%xmm3 - - vpxor %xmm1,%xmm11,%xmm11 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm12,%xmm1 - - vpslld $19,%xmm12,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm11,%xmm7 - - vpsrld $22,%xmm12,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm12,%xmm2 - vpxor %xmm4,%xmm13,%xmm11 - vpaddd %xmm5,%xmm15,%xmm15 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm11,%xmm11 - vpaddd %xmm7,%xmm11,%xmm11 - vmovdqu 224-128(%rax),%xmm5 - vpaddd 96-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 176-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm15,%xmm7 - vpslld $26,%xmm15,%xmm2 - vmovdqu %xmm6,208-128(%rax) - vpaddd %xmm10,%xmm6,%xmm6 - - vpsrld $11,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm15,%xmm2 - vpaddd 32(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm15,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm15,%xmm2 - vpandn %xmm9,%xmm15,%xmm0 - vpand %xmm8,%xmm15,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm11,%xmm10 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm11,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm11,%xmm12,%xmm4 - - vpxor %xmm1,%xmm10,%xmm10 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm11,%xmm1 - - vpslld $19,%xmm11,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm10,%xmm7 - - vpsrld $22,%xmm11,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm11,%xmm2 - vpxor %xmm3,%xmm12,%xmm10 - vpaddd %xmm6,%xmm14,%xmm14 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm10,%xmm10 - vpaddd %xmm7,%xmm10,%xmm10 - vmovdqu 240-128(%rax),%xmm6 - vpaddd 112-128(%rax),%xmm5,%xmm5 - - vpsrld $3,%xmm6,%xmm7 - vpsrld $7,%xmm6,%xmm1 - vpslld $25,%xmm6,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm6,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm6,%xmm2 - vmovdqu 192-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm5,%xmm5 - vpxor %xmm1,%xmm3,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm5,%xmm5 - vpsrld $6,%xmm14,%xmm7 - vpslld $26,%xmm14,%xmm2 - vmovdqu %xmm5,224-128(%rax) - vpaddd %xmm9,%xmm5,%xmm5 - - vpsrld $11,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm14,%xmm2 - vpaddd 64(%rbp),%xmm5,%xmm5 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm14,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm14,%xmm2 - vpandn %xmm8,%xmm14,%xmm0 - vpand %xmm15,%xmm14,%xmm3 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm10,%xmm9 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm10,%xmm1 - vpxor %xmm3,%xmm0,%xmm0 - vpxor %xmm10,%xmm11,%xmm3 - - vpxor %xmm1,%xmm9,%xmm9 - vpaddd %xmm7,%xmm5,%xmm5 - - vpsrld $13,%xmm10,%xmm1 - - vpslld $19,%xmm10,%xmm2 - vpaddd %xmm0,%xmm5,%xmm5 - vpand %xmm3,%xmm4,%xmm4 - - vpxor %xmm1,%xmm9,%xmm7 - - vpsrld $22,%xmm10,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm10,%xmm2 - vpxor %xmm4,%xmm11,%xmm9 - vpaddd %xmm5,%xmm13,%xmm13 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm5,%xmm9,%xmm9 - vpaddd %xmm7,%xmm9,%xmm9 - vmovdqu 0-128(%rax),%xmm5 - vpaddd 128-128(%rax),%xmm6,%xmm6 - - vpsrld $3,%xmm5,%xmm7 - vpsrld $7,%xmm5,%xmm1 - vpslld $25,%xmm5,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $18,%xmm5,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $14,%xmm5,%xmm2 - vmovdqu 208-128(%rax),%xmm0 - vpsrld $10,%xmm0,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - vpsrld $17,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $15,%xmm0,%xmm2 - vpaddd %xmm7,%xmm6,%xmm6 - vpxor %xmm1,%xmm4,%xmm7 - vpsrld $19,%xmm0,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $13,%xmm0,%xmm2 - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - vpaddd %xmm7,%xmm6,%xmm6 - vpsrld $6,%xmm13,%xmm7 - vpslld $26,%xmm13,%xmm2 - vmovdqu %xmm6,240-128(%rax) - vpaddd %xmm8,%xmm6,%xmm6 - - vpsrld $11,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - vpslld $21,%xmm13,%xmm2 - vpaddd 96(%rbp),%xmm6,%xmm6 - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $25,%xmm13,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $7,%xmm13,%xmm2 - vpandn %xmm15,%xmm13,%xmm0 - vpand %xmm14,%xmm13,%xmm4 - - vpxor %xmm1,%xmm7,%xmm7 - - vpsrld $2,%xmm9,%xmm8 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $30,%xmm9,%xmm1 - vpxor %xmm4,%xmm0,%xmm0 - vpxor %xmm9,%xmm10,%xmm4 - - vpxor %xmm1,%xmm8,%xmm8 - vpaddd %xmm7,%xmm6,%xmm6 - - vpsrld $13,%xmm9,%xmm1 - - vpslld $19,%xmm9,%xmm2 - vpaddd %xmm0,%xmm6,%xmm6 - vpand %xmm4,%xmm3,%xmm3 - - vpxor %xmm1,%xmm8,%xmm7 - - vpsrld $22,%xmm9,%xmm1 - vpxor %xmm2,%xmm7,%xmm7 - - vpslld $10,%xmm9,%xmm2 - vpxor %xmm3,%xmm10,%xmm8 - vpaddd %xmm6,%xmm12,%xmm12 - - vpxor %xmm1,%xmm7,%xmm7 - vpxor %xmm2,%xmm7,%xmm7 - - vpaddd %xmm6,%xmm8,%xmm8 - vpaddd %xmm7,%xmm8,%xmm8 - addq $256,%rbp - decl %ecx - jnz L$oop_16_xx_avx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqa (%rbx),%xmm7 - vpxor %xmm0,%xmm0,%xmm0 - vmovdqa %xmm7,%xmm6 - vpcmpgtd %xmm0,%xmm6,%xmm6 - vpaddd %xmm6,%xmm7,%xmm7 - - vmovdqu 0-128(%rdi),%xmm0 - vpand %xmm6,%xmm8,%xmm8 - vmovdqu 32-128(%rdi),%xmm1 - vpand %xmm6,%xmm9,%xmm9 - vmovdqu 64-128(%rdi),%xmm2 - vpand %xmm6,%xmm10,%xmm10 - vmovdqu 96-128(%rdi),%xmm5 - vpand %xmm6,%xmm11,%xmm11 - vpaddd %xmm0,%xmm8,%xmm8 - vmovdqu 128-128(%rdi),%xmm0 - vpand %xmm6,%xmm12,%xmm12 - vpaddd %xmm1,%xmm9,%xmm9 - vmovdqu 160-128(%rdi),%xmm1 - vpand %xmm6,%xmm13,%xmm13 - vpaddd %xmm2,%xmm10,%xmm10 - vmovdqu 192-128(%rdi),%xmm2 - vpand %xmm6,%xmm14,%xmm14 - vpaddd %xmm5,%xmm11,%xmm11 - vmovdqu 224-128(%rdi),%xmm5 - vpand %xmm6,%xmm15,%xmm15 - vpaddd %xmm0,%xmm12,%xmm12 - vpaddd %xmm1,%xmm13,%xmm13 - vmovdqu %xmm8,0-128(%rdi) - vpaddd %xmm2,%xmm14,%xmm14 - vmovdqu %xmm9,32-128(%rdi) - vpaddd %xmm5,%xmm15,%xmm15 - vmovdqu %xmm10,64-128(%rdi) - vmovdqu %xmm11,96-128(%rdi) - vmovdqu %xmm12,128-128(%rdi) - vmovdqu %xmm13,160-128(%rdi) - vmovdqu %xmm14,192-128(%rdi) - vmovdqu %xmm15,224-128(%rdi) - - vmovdqu %xmm7,(%rbx) - vmovdqu L$pbswap(%rip),%xmm6 - decl %edx - jnz L$oop_avx - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande_avx - -L$done_avx: - movq 272(%rsp),%rax - vzeroupper - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 5 -sha256_multi_block_avx2: -_avx2_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576,%rsp - andq $-256,%rsp - movq %rax,544(%rsp) -L$body_avx2: - leaq K256+128(%rip),%rbp - leaq 128(%rdi),%rdi - -L$oop_grande_avx2: - movl %edx,552(%rsp) - xorl %edx,%edx - leaq 512(%rsp),%rbx - movq 0(%rsi),%r12 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r12 - movq 16(%rsi),%r13 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r13 - movq 32(%rsi),%r14 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r14 - movq 48(%rsi),%r15 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r15 - movq 64(%rsi),%r8 - movl 72(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,16(%rbx) - cmovleq %rbp,%r8 - movq 80(%rsi),%r9 - movl 88(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,20(%rbx) - cmovleq %rbp,%r9 - movq 96(%rsi),%r10 - movl 104(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,24(%rbx) - cmovleq %rbp,%r10 - movq 112(%rsi),%r11 - movl 120(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,28(%rbx) - cmovleq %rbp,%r11 - vmovdqu 0-128(%rdi),%ymm8 - leaq 128(%rsp),%rax - vmovdqu 32-128(%rdi),%ymm9 - leaq 256+128(%rsp),%rbx - vmovdqu 64-128(%rdi),%ymm10 - vmovdqu 96-128(%rdi),%ymm11 - vmovdqu 128-128(%rdi),%ymm12 - vmovdqu 160-128(%rdi),%ymm13 - vmovdqu 192-128(%rdi),%ymm14 - vmovdqu 224-128(%rdi),%ymm15 - vmovdqu L$pbswap(%rip),%ymm6 - jmp L$oop_avx2 - -.p2align 5 -L$oop_avx2: - vpxor %ymm9,%ymm10,%ymm4 - vmovd 0(%r12),%xmm5 - vmovd 0(%r8),%xmm0 - vmovd 0(%r13),%xmm1 - vmovd 0(%r9),%xmm2 - vpinsrd $1,0(%r14),%xmm5,%xmm5 - vpinsrd $1,0(%r10),%xmm0,%xmm0 - vpinsrd $1,0(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,0(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,0-128(%rax) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovd 4(%r12),%xmm5 - vmovd 4(%r8),%xmm0 - vmovd 4(%r13),%xmm1 - vmovd 4(%r9),%xmm2 - vpinsrd $1,4(%r14),%xmm5,%xmm5 - vpinsrd $1,4(%r10),%xmm0,%xmm0 - vpinsrd $1,4(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,4(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm5,32-128(%rax) - vpaddd %ymm14,%ymm5,%ymm5 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm5,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovd 8(%r12),%xmm5 - vmovd 8(%r8),%xmm0 - vmovd 8(%r13),%xmm1 - vmovd 8(%r9),%xmm2 - vpinsrd $1,8(%r14),%xmm5,%xmm5 - vpinsrd $1,8(%r10),%xmm0,%xmm0 - vpinsrd $1,8(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,8(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,64-128(%rax) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovd 12(%r12),%xmm5 - vmovd 12(%r8),%xmm0 - vmovd 12(%r13),%xmm1 - vmovd 12(%r9),%xmm2 - vpinsrd $1,12(%r14),%xmm5,%xmm5 - vpinsrd $1,12(%r10),%xmm0,%xmm0 - vpinsrd $1,12(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,12(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm5,96-128(%rax) - vpaddd %ymm12,%ymm5,%ymm5 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm5,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovd 16(%r12),%xmm5 - vmovd 16(%r8),%xmm0 - vmovd 16(%r13),%xmm1 - vmovd 16(%r9),%xmm2 - vpinsrd $1,16(%r14),%xmm5,%xmm5 - vpinsrd $1,16(%r10),%xmm0,%xmm0 - vpinsrd $1,16(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,16(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,128-128(%rax) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovd 20(%r12),%xmm5 - vmovd 20(%r8),%xmm0 - vmovd 20(%r13),%xmm1 - vmovd 20(%r9),%xmm2 - vpinsrd $1,20(%r14),%xmm5,%xmm5 - vpinsrd $1,20(%r10),%xmm0,%xmm0 - vpinsrd $1,20(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,20(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm5,160-128(%rax) - vpaddd %ymm10,%ymm5,%ymm5 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm5,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovd 24(%r12),%xmm5 - vmovd 24(%r8),%xmm0 - vmovd 24(%r13),%xmm1 - vmovd 24(%r9),%xmm2 - vpinsrd $1,24(%r14),%xmm5,%xmm5 - vpinsrd $1,24(%r10),%xmm0,%xmm0 - vpinsrd $1,24(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,24(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,192-128(%rax) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovd 28(%r12),%xmm5 - vmovd 28(%r8),%xmm0 - vmovd 28(%r13),%xmm1 - vmovd 28(%r9),%xmm2 - vpinsrd $1,28(%r14),%xmm5,%xmm5 - vpinsrd $1,28(%r10),%xmm0,%xmm0 - vpinsrd $1,28(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,28(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm5,224-128(%rax) - vpaddd %ymm8,%ymm5,%ymm5 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm5,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovd 32(%r12),%xmm5 - vmovd 32(%r8),%xmm0 - vmovd 32(%r13),%xmm1 - vmovd 32(%r9),%xmm2 - vpinsrd $1,32(%r14),%xmm5,%xmm5 - vpinsrd $1,32(%r10),%xmm0,%xmm0 - vpinsrd $1,32(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,32(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,256-256-128(%rbx) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovd 36(%r12),%xmm5 - vmovd 36(%r8),%xmm0 - vmovd 36(%r13),%xmm1 - vmovd 36(%r9),%xmm2 - vpinsrd $1,36(%r14),%xmm5,%xmm5 - vpinsrd $1,36(%r10),%xmm0,%xmm0 - vpinsrd $1,36(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,36(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm5,288-256-128(%rbx) - vpaddd %ymm14,%ymm5,%ymm5 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm5,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovd 40(%r12),%xmm5 - vmovd 40(%r8),%xmm0 - vmovd 40(%r13),%xmm1 - vmovd 40(%r9),%xmm2 - vpinsrd $1,40(%r14),%xmm5,%xmm5 - vpinsrd $1,40(%r10),%xmm0,%xmm0 - vpinsrd $1,40(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,40(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,320-256-128(%rbx) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovd 44(%r12),%xmm5 - vmovd 44(%r8),%xmm0 - vmovd 44(%r13),%xmm1 - vmovd 44(%r9),%xmm2 - vpinsrd $1,44(%r14),%xmm5,%xmm5 - vpinsrd $1,44(%r10),%xmm0,%xmm0 - vpinsrd $1,44(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,44(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm5,352-256-128(%rbx) - vpaddd %ymm12,%ymm5,%ymm5 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm5,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovd 48(%r12),%xmm5 - vmovd 48(%r8),%xmm0 - vmovd 48(%r13),%xmm1 - vmovd 48(%r9),%xmm2 - vpinsrd $1,48(%r14),%xmm5,%xmm5 - vpinsrd $1,48(%r10),%xmm0,%xmm0 - vpinsrd $1,48(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,48(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,384-256-128(%rbx) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovd 52(%r12),%xmm5 - vmovd 52(%r8),%xmm0 - vmovd 52(%r13),%xmm1 - vmovd 52(%r9),%xmm2 - vpinsrd $1,52(%r14),%xmm5,%xmm5 - vpinsrd $1,52(%r10),%xmm0,%xmm0 - vpinsrd $1,52(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,52(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm5,416-256-128(%rbx) - vpaddd %ymm10,%ymm5,%ymm5 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm5,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovd 56(%r12),%xmm5 - vmovd 56(%r8),%xmm0 - vmovd 56(%r13),%xmm1 - vmovd 56(%r9),%xmm2 - vpinsrd $1,56(%r14),%xmm5,%xmm5 - vpinsrd $1,56(%r10),%xmm0,%xmm0 - vpinsrd $1,56(%r15),%xmm1,%xmm1 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,56(%r11),%xmm2,%xmm2 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,448-256-128(%rbx) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovd 60(%r12),%xmm5 - leaq 64(%r12),%r12 - vmovd 60(%r8),%xmm0 - leaq 64(%r8),%r8 - vmovd 60(%r13),%xmm1 - leaq 64(%r13),%r13 - vmovd 60(%r9),%xmm2 - leaq 64(%r9),%r9 - vpinsrd $1,60(%r14),%xmm5,%xmm5 - leaq 64(%r14),%r14 - vpinsrd $1,60(%r10),%xmm0,%xmm0 - leaq 64(%r10),%r10 - vpinsrd $1,60(%r15),%xmm1,%xmm1 - leaq 64(%r15),%r15 - vpunpckldq %ymm1,%ymm5,%ymm5 - vpinsrd $1,60(%r11),%xmm2,%xmm2 - leaq 64(%r11),%r11 - vpunpckldq %ymm2,%ymm0,%ymm0 - vinserti128 $1,%xmm0,%ymm5,%ymm5 - vpshufb %ymm6,%ymm5,%ymm5 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm5,480-256-128(%rbx) - vpaddd %ymm8,%ymm5,%ymm5 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r12) - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - prefetcht0 63(%r13) - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r14) - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - prefetcht0 63(%r15) - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm9,%ymm1 - prefetcht0 63(%r8) - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm4,%ymm3,%ymm3 - prefetcht0 63(%r9) - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - prefetcht0 63(%r10) - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm5,%ymm12,%ymm12 - prefetcht0 63(%r11) - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovdqu 0-128(%rax),%ymm5 - movl $3,%ecx - jmp L$oop_16_xx_avx2 -.p2align 5 -L$oop_16_xx_avx2: - vmovdqu 32-128(%rax),%ymm6 - vpaddd 288-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 448-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,0-128(%rax) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovdqu 64-128(%rax),%ymm5 - vpaddd 320-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 480-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm6,32-128(%rax) - vpaddd %ymm14,%ymm6,%ymm6 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm6,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovdqu 96-128(%rax),%ymm6 - vpaddd 352-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 0-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,64-128(%rax) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovdqu 128-128(%rax),%ymm5 - vpaddd 384-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 32-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm6,96-128(%rax) - vpaddd %ymm12,%ymm6,%ymm6 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm6,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovdqu 160-128(%rax),%ymm6 - vpaddd 416-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 64-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,128-128(%rax) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovdqu 192-128(%rax),%ymm5 - vpaddd 448-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 96-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm6,160-128(%rax) - vpaddd %ymm10,%ymm6,%ymm6 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm6,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovdqu 224-128(%rax),%ymm6 - vpaddd 480-256-128(%rbx),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 128-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,192-128(%rax) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovdqu 256-256-128(%rbx),%ymm5 - vpaddd 0-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 160-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm6,224-128(%rax) - vpaddd %ymm8,%ymm6,%ymm6 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm6,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - vmovdqu 288-256-128(%rbx),%ymm6 - vpaddd 32-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 192-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm12,%ymm7 - vpslld $26,%ymm12,%ymm2 - vmovdqu %ymm5,256-256-128(%rbx) - vpaddd %ymm15,%ymm5,%ymm5 - - vpsrld $11,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm12,%ymm2 - vpaddd -128(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm12,%ymm2 - vpandn %ymm14,%ymm12,%ymm0 - vpand %ymm13,%ymm12,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm8,%ymm15 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm8,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm8,%ymm9,%ymm3 - - vpxor %ymm1,%ymm15,%ymm15 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm8,%ymm1 - - vpslld $19,%ymm8,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm15,%ymm7 - - vpsrld $22,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm8,%ymm2 - vpxor %ymm4,%ymm9,%ymm15 - vpaddd %ymm5,%ymm11,%ymm11 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm15,%ymm15 - vpaddd %ymm7,%ymm15,%ymm15 - vmovdqu 320-256-128(%rbx),%ymm5 - vpaddd 64-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 224-128(%rax),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm11,%ymm7 - vpslld $26,%ymm11,%ymm2 - vmovdqu %ymm6,288-256-128(%rbx) - vpaddd %ymm14,%ymm6,%ymm6 - - vpsrld $11,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm11,%ymm2 - vpaddd -96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm11,%ymm2 - vpandn %ymm13,%ymm11,%ymm0 - vpand %ymm12,%ymm11,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm15,%ymm14 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm15,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm15,%ymm8,%ymm4 - - vpxor %ymm1,%ymm14,%ymm14 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm15,%ymm1 - - vpslld $19,%ymm15,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm14,%ymm7 - - vpsrld $22,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm15,%ymm2 - vpxor %ymm3,%ymm8,%ymm14 - vpaddd %ymm6,%ymm10,%ymm10 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm14,%ymm14 - vpaddd %ymm7,%ymm14,%ymm14 - vmovdqu 352-256-128(%rbx),%ymm6 - vpaddd 96-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 256-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm10,%ymm7 - vpslld $26,%ymm10,%ymm2 - vmovdqu %ymm5,320-256-128(%rbx) - vpaddd %ymm13,%ymm5,%ymm5 - - vpsrld $11,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm10,%ymm2 - vpaddd -64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm10,%ymm2 - vpandn %ymm12,%ymm10,%ymm0 - vpand %ymm11,%ymm10,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm14,%ymm13 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm14,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm14,%ymm15,%ymm3 - - vpxor %ymm1,%ymm13,%ymm13 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm14,%ymm1 - - vpslld $19,%ymm14,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm13,%ymm7 - - vpsrld $22,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm14,%ymm2 - vpxor %ymm4,%ymm15,%ymm13 - vpaddd %ymm5,%ymm9,%ymm9 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm13,%ymm13 - vpaddd %ymm7,%ymm13,%ymm13 - vmovdqu 384-256-128(%rbx),%ymm5 - vpaddd 128-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 288-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm9,%ymm7 - vpslld $26,%ymm9,%ymm2 - vmovdqu %ymm6,352-256-128(%rbx) - vpaddd %ymm12,%ymm6,%ymm6 - - vpsrld $11,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm9,%ymm2 - vpaddd -32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm9,%ymm2 - vpandn %ymm11,%ymm9,%ymm0 - vpand %ymm10,%ymm9,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm13,%ymm12 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm13,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm13,%ymm14,%ymm4 - - vpxor %ymm1,%ymm12,%ymm12 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm13,%ymm1 - - vpslld $19,%ymm13,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm12,%ymm7 - - vpsrld $22,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm13,%ymm2 - vpxor %ymm3,%ymm14,%ymm12 - vpaddd %ymm6,%ymm8,%ymm8 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm12,%ymm12 - vpaddd %ymm7,%ymm12,%ymm12 - vmovdqu 416-256-128(%rbx),%ymm6 - vpaddd 160-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 320-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm8,%ymm7 - vpslld $26,%ymm8,%ymm2 - vmovdqu %ymm5,384-256-128(%rbx) - vpaddd %ymm11,%ymm5,%ymm5 - - vpsrld $11,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm8,%ymm2 - vpaddd 0(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm8,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm8,%ymm2 - vpandn %ymm10,%ymm8,%ymm0 - vpand %ymm9,%ymm8,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm12,%ymm11 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm12,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm12,%ymm13,%ymm3 - - vpxor %ymm1,%ymm11,%ymm11 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm12,%ymm1 - - vpslld $19,%ymm12,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm11,%ymm7 - - vpsrld $22,%ymm12,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm12,%ymm2 - vpxor %ymm4,%ymm13,%ymm11 - vpaddd %ymm5,%ymm15,%ymm15 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm11,%ymm11 - vpaddd %ymm7,%ymm11,%ymm11 - vmovdqu 448-256-128(%rbx),%ymm5 - vpaddd 192-128(%rax),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 352-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm15,%ymm7 - vpslld $26,%ymm15,%ymm2 - vmovdqu %ymm6,416-256-128(%rbx) - vpaddd %ymm10,%ymm6,%ymm6 - - vpsrld $11,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm15,%ymm2 - vpaddd 32(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm15,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm15,%ymm2 - vpandn %ymm9,%ymm15,%ymm0 - vpand %ymm8,%ymm15,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm11,%ymm10 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm11,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm11,%ymm12,%ymm4 - - vpxor %ymm1,%ymm10,%ymm10 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm11,%ymm1 - - vpslld $19,%ymm11,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm10,%ymm7 - - vpsrld $22,%ymm11,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm11,%ymm2 - vpxor %ymm3,%ymm12,%ymm10 - vpaddd %ymm6,%ymm14,%ymm14 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm10,%ymm10 - vpaddd %ymm7,%ymm10,%ymm10 - vmovdqu 480-256-128(%rbx),%ymm6 - vpaddd 224-128(%rax),%ymm5,%ymm5 - - vpsrld $3,%ymm6,%ymm7 - vpsrld $7,%ymm6,%ymm1 - vpslld $25,%ymm6,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm6,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm6,%ymm2 - vmovdqu 384-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm5,%ymm5 - vpxor %ymm1,%ymm3,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm5,%ymm5 - vpsrld $6,%ymm14,%ymm7 - vpslld $26,%ymm14,%ymm2 - vmovdqu %ymm5,448-256-128(%rbx) - vpaddd %ymm9,%ymm5,%ymm5 - - vpsrld $11,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm14,%ymm2 - vpaddd 64(%rbp),%ymm5,%ymm5 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm14,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm14,%ymm2 - vpandn %ymm8,%ymm14,%ymm0 - vpand %ymm15,%ymm14,%ymm3 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm10,%ymm9 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm10,%ymm1 - vpxor %ymm3,%ymm0,%ymm0 - vpxor %ymm10,%ymm11,%ymm3 - - vpxor %ymm1,%ymm9,%ymm9 - vpaddd %ymm7,%ymm5,%ymm5 - - vpsrld $13,%ymm10,%ymm1 - - vpslld $19,%ymm10,%ymm2 - vpaddd %ymm0,%ymm5,%ymm5 - vpand %ymm3,%ymm4,%ymm4 - - vpxor %ymm1,%ymm9,%ymm7 - - vpsrld $22,%ymm10,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm10,%ymm2 - vpxor %ymm4,%ymm11,%ymm9 - vpaddd %ymm5,%ymm13,%ymm13 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm5,%ymm9,%ymm9 - vpaddd %ymm7,%ymm9,%ymm9 - vmovdqu 0-128(%rax),%ymm5 - vpaddd 256-256-128(%rbx),%ymm6,%ymm6 - - vpsrld $3,%ymm5,%ymm7 - vpsrld $7,%ymm5,%ymm1 - vpslld $25,%ymm5,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $18,%ymm5,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $14,%ymm5,%ymm2 - vmovdqu 416-256-128(%rbx),%ymm0 - vpsrld $10,%ymm0,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - vpsrld $17,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $15,%ymm0,%ymm2 - vpaddd %ymm7,%ymm6,%ymm6 - vpxor %ymm1,%ymm4,%ymm7 - vpsrld $19,%ymm0,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $13,%ymm0,%ymm2 - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - vpaddd %ymm7,%ymm6,%ymm6 - vpsrld $6,%ymm13,%ymm7 - vpslld $26,%ymm13,%ymm2 - vmovdqu %ymm6,480-256-128(%rbx) - vpaddd %ymm8,%ymm6,%ymm6 - - vpsrld $11,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - vpslld $21,%ymm13,%ymm2 - vpaddd 96(%rbp),%ymm6,%ymm6 - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $25,%ymm13,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $7,%ymm13,%ymm2 - vpandn %ymm15,%ymm13,%ymm0 - vpand %ymm14,%ymm13,%ymm4 - - vpxor %ymm1,%ymm7,%ymm7 - - vpsrld $2,%ymm9,%ymm8 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $30,%ymm9,%ymm1 - vpxor %ymm4,%ymm0,%ymm0 - vpxor %ymm9,%ymm10,%ymm4 - - vpxor %ymm1,%ymm8,%ymm8 - vpaddd %ymm7,%ymm6,%ymm6 - - vpsrld $13,%ymm9,%ymm1 - - vpslld $19,%ymm9,%ymm2 - vpaddd %ymm0,%ymm6,%ymm6 - vpand %ymm4,%ymm3,%ymm3 - - vpxor %ymm1,%ymm8,%ymm7 - - vpsrld $22,%ymm9,%ymm1 - vpxor %ymm2,%ymm7,%ymm7 - - vpslld $10,%ymm9,%ymm2 - vpxor %ymm3,%ymm10,%ymm8 - vpaddd %ymm6,%ymm12,%ymm12 - - vpxor %ymm1,%ymm7,%ymm7 - vpxor %ymm2,%ymm7,%ymm7 - - vpaddd %ymm6,%ymm8,%ymm8 - vpaddd %ymm7,%ymm8,%ymm8 - addq $256,%rbp - decl %ecx - jnz L$oop_16_xx_avx2 - - movl $1,%ecx - leaq 512(%rsp),%rbx - leaq K256+128(%rip),%rbp - cmpl 0(%rbx),%ecx - cmovgeq %rbp,%r12 - cmpl 4(%rbx),%ecx - cmovgeq %rbp,%r13 - cmpl 8(%rbx),%ecx - cmovgeq %rbp,%r14 - cmpl 12(%rbx),%ecx - cmovgeq %rbp,%r15 - cmpl 16(%rbx),%ecx - cmovgeq %rbp,%r8 - cmpl 20(%rbx),%ecx - cmovgeq %rbp,%r9 - cmpl 24(%rbx),%ecx - cmovgeq %rbp,%r10 - cmpl 28(%rbx),%ecx - cmovgeq %rbp,%r11 - vmovdqa (%rbx),%ymm7 - vpxor %ymm0,%ymm0,%ymm0 - vmovdqa %ymm7,%ymm6 - vpcmpgtd %ymm0,%ymm6,%ymm6 - vpaddd %ymm6,%ymm7,%ymm7 - - vmovdqu 0-128(%rdi),%ymm0 - vpand %ymm6,%ymm8,%ymm8 - vmovdqu 32-128(%rdi),%ymm1 - vpand %ymm6,%ymm9,%ymm9 - vmovdqu 64-128(%rdi),%ymm2 - vpand %ymm6,%ymm10,%ymm10 - vmovdqu 96-128(%rdi),%ymm5 - vpand %ymm6,%ymm11,%ymm11 - vpaddd %ymm0,%ymm8,%ymm8 - vmovdqu 128-128(%rdi),%ymm0 - vpand %ymm6,%ymm12,%ymm12 - vpaddd %ymm1,%ymm9,%ymm9 - vmovdqu 160-128(%rdi),%ymm1 - vpand %ymm6,%ymm13,%ymm13 - vpaddd %ymm2,%ymm10,%ymm10 - vmovdqu 192-128(%rdi),%ymm2 - vpand %ymm6,%ymm14,%ymm14 - vpaddd %ymm5,%ymm11,%ymm11 - vmovdqu 224-128(%rdi),%ymm5 - vpand %ymm6,%ymm15,%ymm15 - vpaddd %ymm0,%ymm12,%ymm12 - vpaddd %ymm1,%ymm13,%ymm13 - vmovdqu %ymm8,0-128(%rdi) - vpaddd %ymm2,%ymm14,%ymm14 - vmovdqu %ymm9,32-128(%rdi) - vpaddd %ymm5,%ymm15,%ymm15 - vmovdqu %ymm10,64-128(%rdi) - vmovdqu %ymm11,96-128(%rdi) - vmovdqu %ymm12,128-128(%rdi) - vmovdqu %ymm13,160-128(%rdi) - vmovdqu %ymm14,192-128(%rdi) - vmovdqu %ymm15,224-128(%rdi) - - vmovdqu %ymm7,(%rbx) - leaq 256+128(%rsp),%rbx - vmovdqu L$pbswap(%rip),%ymm6 - decl %edx - jnz L$oop_avx2 - - - - - - - -L$done_avx2: - movq 544(%rsp),%rax - vzeroupper - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 - -.p2align 8 -K256: -.long 1116352408,1116352408,1116352408,1116352408 -.long 1116352408,1116352408,1116352408,1116352408 -.long 1899447441,1899447441,1899447441,1899447441 -.long 1899447441,1899447441,1899447441,1899447441 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3921009573,3921009573,3921009573,3921009573 -.long 3921009573,3921009573,3921009573,3921009573 -.long 961987163,961987163,961987163,961987163 -.long 961987163,961987163,961987163,961987163 -.long 1508970993,1508970993,1508970993,1508970993 -.long 1508970993,1508970993,1508970993,1508970993 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2870763221,2870763221,2870763221,2870763221 -.long 2870763221,2870763221,2870763221,2870763221 -.long 3624381080,3624381080,3624381080,3624381080 -.long 3624381080,3624381080,3624381080,3624381080 -.long 310598401,310598401,310598401,310598401 -.long 310598401,310598401,310598401,310598401 -.long 607225278,607225278,607225278,607225278 -.long 607225278,607225278,607225278,607225278 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1925078388,1925078388,1925078388,1925078388 -.long 1925078388,1925078388,1925078388,1925078388 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2614888103,2614888103,2614888103,2614888103 -.long 2614888103,2614888103,2614888103,2614888103 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3835390401,3835390401,3835390401,3835390401 -.long 3835390401,3835390401,3835390401,3835390401 -.long 4022224774,4022224774,4022224774,4022224774 -.long 4022224774,4022224774,4022224774,4022224774 -.long 264347078,264347078,264347078,264347078 -.long 264347078,264347078,264347078,264347078 -.long 604807628,604807628,604807628,604807628 -.long 604807628,604807628,604807628,604807628 -.long 770255983,770255983,770255983,770255983 -.long 770255983,770255983,770255983,770255983 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1996064986,1996064986,1996064986,1996064986 -.long 1996064986,1996064986,1996064986,1996064986 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2952996808,2952996808,2952996808,2952996808 -.long 2952996808,2952996808,2952996808,2952996808 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3584528711,3584528711,3584528711,3584528711 -.long 3584528711,3584528711,3584528711,3584528711 -.long 113926993,113926993,113926993,113926993 -.long 113926993,113926993,113926993,113926993 -.long 338241895,338241895,338241895,338241895 -.long 338241895,338241895,338241895,338241895 -.long 666307205,666307205,666307205,666307205 -.long 666307205,666307205,666307205,666307205 -.long 773529912,773529912,773529912,773529912 -.long 773529912,773529912,773529912,773529912 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1986661051,1986661051,1986661051,1986661051 -.long 1986661051,1986661051,1986661051,1986661051 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2820302411,2820302411,2820302411,2820302411 -.long 2820302411,2820302411,2820302411,2820302411 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3600352804,3600352804,3600352804,3600352804 -.long 3600352804,3600352804,3600352804,3600352804 -.long 4094571909,4094571909,4094571909,4094571909 -.long 4094571909,4094571909,4094571909,4094571909 -.long 275423344,275423344,275423344,275423344 -.long 275423344,275423344,275423344,275423344 -.long 430227734,430227734,430227734,430227734 -.long 430227734,430227734,430227734,430227734 -.long 506948616,506948616,506948616,506948616 -.long 506948616,506948616,506948616,506948616 -.long 659060556,659060556,659060556,659060556 -.long 659060556,659060556,659060556,659060556 -.long 883997877,883997877,883997877,883997877 -.long 883997877,883997877,883997877,883997877 -.long 958139571,958139571,958139571,958139571 -.long 958139571,958139571,958139571,958139571 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1955562222,1955562222,1955562222,1955562222 -.long 1955562222,1955562222,1955562222,1955562222 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2756734187,2756734187,2756734187,2756734187 -.long 2756734187,2756734187,2756734187,2756734187 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3329325298,3329325298,3329325298,3329325298 -.long 3329325298,3329325298,3329325298,3329325298 -L$pbswap: -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -K256_shaext: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x64-macosx-gas/sha/sha256-x86_64.s b/deps/openssl/asm/x64-macosx-gas/sha/sha256-x86_64.s deleted file mode 100644 index 3cbe0a170c6f71..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/sha/sha256-x86_64.s +++ /dev/null @@ -1,5357 +0,0 @@ -.text - - -.globl _sha256_block_data_order - -.p2align 4 -_sha256_block_data_order: - leaq _OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $536870912,%r11d - jnz _shaext_shortcut - andl $296,%r11d - cmpl $296,%r11d - je L$avx2_shortcut - andl $1073741824,%r9d - andl $268435968,%r10d - orl %r9d,%r10d - cmpl $1342177792,%r10d - je L$avx_shortcut - testl $512,%r10d - jnz L$ssse3_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $64+32,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - jmp L$loop - -.p2align 4 -L$loop: - movl %ebx,%edi - leaq K256(%rip),%rbp - xorl %ecx,%edi - movl 0(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 4(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 8(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 12(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 16(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 20(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 24(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 28(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - addl %r14d,%eax - movl 32(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 36(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 40(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 44(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 48(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 52(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 56(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 60(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - jmp L$rounds_16_xx -.p2align 4 -L$rounds_16_xx: - movl 4(%rsp),%r13d - movl 56(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 36(%rsp),%r12d - - addl 0(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 8(%rsp),%r13d - movl 60(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 40(%rsp),%r12d - - addl 4(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 12(%rsp),%r13d - movl 0(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 44(%rsp),%r12d - - addl 8(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 16(%rsp),%r13d - movl 4(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 48(%rsp),%r12d - - addl 12(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 20(%rsp),%r13d - movl 8(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 52(%rsp),%r12d - - addl 16(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 24(%rsp),%r13d - movl 12(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 56(%rsp),%r12d - - addl 20(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 28(%rsp),%r13d - movl 16(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 60(%rsp),%r12d - - addl 24(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 32(%rsp),%r13d - movl 20(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 0(%rsp),%r12d - - addl 28(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - movl 36(%rsp),%r13d - movl 24(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 4(%rsp),%r12d - - addl 32(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 40(%rsp),%r13d - movl 28(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 8(%rsp),%r12d - - addl 36(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 44(%rsp),%r13d - movl 32(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 12(%rsp),%r12d - - addl 40(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 48(%rsp),%r13d - movl 36(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 16(%rsp),%r12d - - addl 44(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 52(%rsp),%r13d - movl 40(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 20(%rsp),%r12d - - addl 48(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 56(%rsp),%r13d - movl 44(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 24(%rsp),%r12d - - addl 52(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 60(%rsp),%r13d - movl 48(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 28(%rsp),%r12d - - addl 56(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 0(%rsp),%r13d - movl 52(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 32(%rsp),%r12d - - addl 60(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - cmpb $0,3(%rbp) - jnz L$rounds_16_xx - - movq 64+0(%rsp),%rdi - addl %r14d,%eax - leaq 64(%rsi),%rsi - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb L$loop - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - -.p2align 6 - -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 - -.p2align 6 -sha256_block_data_order_shaext: -_shaext_shortcut: - leaq K256+128(%rip),%rcx - movdqu (%rdi),%xmm1 - movdqu 16(%rdi),%xmm2 - movdqa 512-128(%rcx),%xmm7 - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm7,%xmm8 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - movdqu (%rsi),%xmm3 - movdqu 16(%rsi),%xmm4 - movdqu 32(%rsi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%rsi),%xmm6 - - movdqa 0-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 - movdqa %xmm2,%xmm10 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - nop - movdqa %xmm1,%xmm9 -.byte 15,56,203,202 - - movdqa 32-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - leaq 64(%rsi),%rsi -.byte 15,56,204,220 -.byte 15,56,203,202 - - movdqa 64-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - - movdqa 96-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 128-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 160-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 192-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 224-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 256-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 288-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 320-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 352-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 384-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 416-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - - movdqa 448-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa %xmm8,%xmm7 -.byte 15,56,203,202 - - movdqa 480-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - decq %rdx - nop -.byte 15,56,203,202 - - paddd %xmm10,%xmm2 - paddd %xmm9,%xmm1 - jnz L$oop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm7 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - - movdqu %xmm1,(%rdi) - movdqu %xmm2,16(%rdi) - .byte 0xf3,0xc3 - - -.p2align 6 -sha256_block_data_order_ssse3: -L$ssse3_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue_ssse3: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - - - jmp L$loop_ssse3 -.p2align 4 -L$loop_ssse3: - movdqa K256+512(%rip),%xmm7 - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 -.byte 102,15,56,0,199 - movdqu 48(%rsi),%xmm3 - leaq K256(%rip),%rbp -.byte 102,15,56,0,207 - movdqa 0(%rbp),%xmm4 - movdqa 32(%rbp),%xmm5 -.byte 102,15,56,0,215 - paddd %xmm0,%xmm4 - movdqa 64(%rbp),%xmm6 -.byte 102,15,56,0,223 - movdqa 96(%rbp),%xmm7 - paddd %xmm1,%xmm5 - paddd %xmm2,%xmm6 - paddd %xmm3,%xmm7 - movdqa %xmm4,0(%rsp) - movl %eax,%r14d - movdqa %xmm5,16(%rsp) - movl %ebx,%edi - movdqa %xmm6,32(%rsp) - xorl %ecx,%edi - movdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp L$ssse3_00_47 - -.p2align 4 -L$ssse3_00_47: - subq $-128,%rbp - rorl $14,%r13d - movdqa %xmm1,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm3,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,224,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,250,4 - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm3,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 4(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm0 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm0 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm0,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 0(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm0,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,0(%rsp) - rorl $14,%r13d - movdqa %xmm2,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm0,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,225,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,251,4 - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm0,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 20(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm1 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm1 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm1,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 32(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm1,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,16(%rsp) - rorl $14,%r13d - movdqa %xmm3,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm1,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,226,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,248,4 - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm1,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 36(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm2 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm2 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm2,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 64(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm2,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,32(%rsp) - rorl $14,%r13d - movdqa %xmm0,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm2,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,227,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,249,4 - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm2,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 52(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm3 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm3 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm3,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 96(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm3,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne L$ssse3_00_47 - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb L$loop_ssse3 - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 - - -.p2align 6 -sha256_block_data_order_avx: -L$avx_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue_avx: - - vzeroupper - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - vmovdqa K256+512+32(%rip),%xmm8 - vmovdqa K256+512+64(%rip),%xmm9 - jmp L$loop_avx -.p2align 4 -L$loop_avx: - vmovdqa K256+512(%rip),%xmm7 - vmovdqu 0(%rsi),%xmm0 - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm7,%xmm0,%xmm0 - leaq K256(%rip),%rbp - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd 0(%rbp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 32(%rbp),%xmm1,%xmm5 - vpaddd 64(%rbp),%xmm2,%xmm6 - vpaddd 96(%rbp),%xmm3,%xmm7 - vmovdqa %xmm4,0(%rsp) - movl %eax,%r14d - vmovdqa %xmm5,16(%rsp) - movl %ebx,%edi - vmovdqa %xmm6,32(%rsp) - xorl %ecx,%edi - vmovdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp L$avx_00_47 - -.p2align 4 -L$avx_00_47: - subq $-128,%rbp - vpalignr $4,%xmm0,%xmm1,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm2,%xmm3,%xmm7 - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm0,%xmm0 - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - vpshufd $250,%xmm3,%xmm7 - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm0,%xmm0 - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpaddd %xmm6,%xmm0,%xmm0 - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - vpshufd $80,%xmm0,%xmm7 - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - vpaddd %xmm6,%xmm0,%xmm0 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpaddd 0(%rbp),%xmm0,%xmm6 - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,0(%rsp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm3,%xmm0,%xmm7 - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm1,%xmm1 - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - vpshufd $250,%xmm0,%xmm7 - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm1,%xmm1 - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpaddd %xmm6,%xmm1,%xmm1 - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - vpshufd $80,%xmm1,%xmm7 - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - vpxor %xmm7,%xmm6,%xmm6 - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - vpaddd %xmm6,%xmm1,%xmm1 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpaddd 32(%rbp),%xmm1,%xmm6 - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,16(%rsp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - vpalignr $4,%xmm0,%xmm1,%xmm7 - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - vpaddd %xmm7,%xmm2,%xmm2 - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - vpshufd $250,%xmm1,%xmm7 - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - vpsrld $11,%xmm6,%xmm6 - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - vpaddd %xmm4,%xmm2,%xmm2 - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - vpxor %xmm7,%xmm6,%xmm6 - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - vpaddd %xmm6,%xmm2,%xmm2 - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - vpshufd $80,%xmm2,%xmm7 - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - vpxor %xmm7,%xmm6,%xmm6 - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - vpaddd %xmm6,%xmm2,%xmm2 - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - vpaddd 64(%rbp),%xmm2,%xmm6 - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - vmovdqa %xmm6,32(%rsp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - vpalignr $4,%xmm1,%xmm2,%xmm7 - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - vpaddd %xmm7,%xmm3,%xmm3 - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - vpsrld $3,%xmm4,%xmm7 - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - vpslld $14,%xmm4,%xmm5 - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - vpxor %xmm6,%xmm7,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - vpshufd $250,%xmm2,%xmm7 - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - vpsrld $11,%xmm6,%xmm6 - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - vpxor %xmm5,%xmm4,%xmm4 - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - vpslld $11,%xmm5,%xmm5 - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - vpxor %xmm6,%xmm4,%xmm4 - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - vpsrld $10,%xmm7,%xmm6 - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - vpxor %xmm5,%xmm4,%xmm4 - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - vpsrlq $17,%xmm7,%xmm7 - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - vpaddd %xmm4,%xmm3,%xmm3 - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - vpxor %xmm7,%xmm6,%xmm6 - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - vpsrlq $2,%xmm7,%xmm7 - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - vpxor %xmm7,%xmm6,%xmm6 - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - vpshufb %xmm8,%xmm6,%xmm6 - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - vpaddd %xmm6,%xmm3,%xmm3 - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - vpshufd $80,%xmm3,%xmm7 - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - vpsrld $10,%xmm7,%xmm6 - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - vpsrlq $17,%xmm7,%xmm7 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - vpxor %xmm7,%xmm6,%xmm6 - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - vpsrlq $2,%xmm7,%xmm7 - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - vpxor %xmm7,%xmm6,%xmm6 - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - vpshufb %xmm9,%xmm6,%xmm6 - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - vpaddd %xmm6,%xmm3,%xmm3 - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - vpaddd 96(%rbp),%xmm3,%xmm6 - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - vmovdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne L$avx_00_47 - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%eax - movl %r9d,%r12d - shrdl $9,%r14d,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - shrdl $5,%r13d,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - shrdl $11,%r14d,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - shrdl $2,%r14d,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - shrdl $9,%r14d,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - shrdl $5,%r13d,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - shrdl $11,%r14d,%r14d - xorl %eax,%edi - addl %r12d,%r10d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - shrdl $2,%r14d,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r10d - movl %edx,%r12d - shrdl $9,%r14d,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - shrdl $5,%r13d,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - shrdl $11,%r14d,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - shrdl $2,%r14d,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - shrdl $9,%r14d,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - shrdl $5,%r13d,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - shrdl $11,%r14d,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - shrdl $2,%r14d,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - shrdl $9,%r14d,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - shrdl $5,%r13d,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - shrdl $11,%r14d,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - shrdl $2,%r14d,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%edx - movl %eax,%r12d - shrdl $9,%r14d,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - shrdl $5,%r13d,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - shrdl $11,%r14d,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - shrdl $2,%r14d,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - shrdl $9,%r14d,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - shrdl $5,%r13d,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - shrdl $11,%r14d,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - shrdl $6,%r13d,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - shrdl $2,%r14d,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - shrdl $14,%r13d,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - shrdl $9,%r14d,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - shrdl $5,%r13d,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - shrdl $11,%r14d,%r14d - xorl %ecx,%edi - addl %r12d,%eax - shrdl $6,%r13d,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - shrdl $2,%r14d,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb L$loop_avx - - movq 64+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 6 -sha256_block_data_order_avx2: -L$avx2_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $544,%rsp - shlq $4,%rdx - andq $-1024,%rsp - leaq (%rsi,%rdx,4),%rdx - addq $448,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue_avx2: - - vzeroupper - subq $-64,%rsi - movl 0(%rdi),%eax - movq %rsi,%r12 - movl 4(%rdi),%ebx - cmpq %rdx,%rsi - movl 8(%rdi),%ecx - cmoveq %rsp,%r12 - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - vmovdqa K256+512+32(%rip),%ymm8 - vmovdqa K256+512+64(%rip),%ymm9 - jmp L$oop_avx2 -.p2align 4 -L$oop_avx2: - vmovdqa K256+512(%rip),%ymm7 - vmovdqu -64+0(%rsi),%xmm0 - vmovdqu -64+16(%rsi),%xmm1 - vmovdqu -64+32(%rsi),%xmm2 - vmovdqu -64+48(%rsi),%xmm3 - - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm7,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm7,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - - leaq K256(%rip),%rbp - vpshufb %ymm7,%ymm2,%ymm2 - vpaddd 0(%rbp),%ymm0,%ymm4 - vpshufb %ymm7,%ymm3,%ymm3 - vpaddd 32(%rbp),%ymm1,%ymm5 - vpaddd 64(%rbp),%ymm2,%ymm6 - vpaddd 96(%rbp),%ymm3,%ymm7 - vmovdqa %ymm4,0(%rsp) - xorl %r14d,%r14d - vmovdqa %ymm5,32(%rsp) - leaq -64(%rsp),%rsp - movl %ebx,%edi - vmovdqa %ymm6,0(%rsp) - xorl %ecx,%edi - vmovdqa %ymm7,32(%rsp) - movl %r9d,%r12d - subq $-32*4,%rbp - jmp L$avx2_00_47 - -.p2align 4 -L$avx2_00_47: - leaq -64(%rsp),%rsp - vpalignr $4,%ymm0,%ymm1,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm2,%ymm3,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm0,%ymm0 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - vpshufd $250,%ymm3,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm0,%ymm0 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpshufd $80,%ymm0,%ymm7 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpxor %ymm7,%ymm6,%ymm6 - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - vpaddd %ymm6,%ymm0,%ymm0 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - vpaddd 0(%rbp),%ymm0,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm1,%ymm2,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm3,%ymm0,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm1,%ymm1 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - vpshufd $250,%ymm0,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm1,%ymm1 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpshufd $80,%ymm1,%ymm7 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpxor %ymm7,%ymm6,%ymm6 - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - vpaddd %ymm6,%ymm1,%ymm1 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - vpaddd 32(%rbp),%ymm1,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq -64(%rsp),%rsp - vpalignr $4,%ymm2,%ymm3,%ymm4 - addl 0+128(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - vpalignr $4,%ymm0,%ymm1,%ymm7 - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - vpsrld $7,%ymm4,%ymm6 - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - vpaddd %ymm7,%ymm2,%ymm2 - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - vpshufd $250,%ymm1,%ymm7 - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 4+128(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - vpslld $11,%ymm5,%ymm5 - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - vpaddd %ymm4,%ymm2,%ymm2 - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 8+128(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - vpxor %ymm7,%ymm6,%ymm6 - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - vpshufd $80,%ymm2,%ymm7 - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 12+128(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - vpxor %ymm7,%ymm6,%ymm6 - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - vpaddd %ymm6,%ymm2,%ymm2 - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - vpaddd 64(%rbp),%ymm2,%ymm6 - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - vmovdqa %ymm6,0(%rsp) - vpalignr $4,%ymm3,%ymm0,%ymm4 - addl 32+128(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - vpalignr $4,%ymm1,%ymm2,%ymm7 - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - vpsrld $7,%ymm4,%ymm6 - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - vpaddd %ymm7,%ymm3,%ymm3 - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - vpsrld $3,%ymm4,%ymm7 - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - vpslld $14,%ymm4,%ymm5 - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - vpxor %ymm6,%ymm7,%ymm4 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - vpshufd $250,%ymm2,%ymm7 - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - vpsrld $11,%ymm6,%ymm6 - addl 36+128(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - vpxor %ymm5,%ymm4,%ymm4 - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - vpslld $11,%ymm5,%ymm5 - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - vpxor %ymm6,%ymm4,%ymm4 - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - vpsrld $10,%ymm7,%ymm6 - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - vpxor %ymm5,%ymm4,%ymm4 - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - vpsrlq $17,%ymm7,%ymm7 - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - vpaddd %ymm4,%ymm3,%ymm3 - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 40+128(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - vpxor %ymm7,%ymm6,%ymm6 - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - vpshufb %ymm8,%ymm6,%ymm6 - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - vpshufd $80,%ymm3,%ymm7 - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - vpsrld $10,%ymm7,%ymm6 - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - vpsrlq $17,%ymm7,%ymm7 - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - vpxor %ymm7,%ymm6,%ymm6 - addl 44+128(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - vpsrlq $2,%ymm7,%ymm7 - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - vpxor %ymm7,%ymm6,%ymm6 - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - vpshufb %ymm9,%ymm6,%ymm6 - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - vpaddd %ymm6,%ymm3,%ymm3 - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - vpaddd 96(%rbp),%ymm3,%ymm6 - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - vmovdqa %ymm6,32(%rsp) - leaq 128(%rbp),%rbp - cmpb $0,3(%rbp) - jne L$avx2_00_47 - addl 0+64(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4+64(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+64(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12+64(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+64(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36+64(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+64(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44+64(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - addl 0(%rsp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4(%rsp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8(%rsp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12(%rsp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32(%rsp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36(%rsp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40(%rsp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44(%rsp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - movq 512(%rsp),%rdi - addl %r14d,%eax - - leaq 448(%rsp),%rbp - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - - cmpq 80(%rbp),%rsi - je L$done_avx2 - - xorl %r14d,%r14d - movl %ebx,%edi - xorl %ecx,%edi - movl %r9d,%r12d - jmp L$ower_avx2 -.p2align 4 -L$ower_avx2: - addl 0+16(%rbp),%r11d - andl %r8d,%r12d - rorxl $25,%r8d,%r13d - rorxl $11,%r8d,%r15d - leal (%rax,%r14,1),%eax - leal (%r11,%r12,1),%r11d - andnl %r10d,%r8d,%r12d - xorl %r15d,%r13d - rorxl $6,%r8d,%r14d - leal (%r11,%r12,1),%r11d - xorl %r14d,%r13d - movl %eax,%r15d - rorxl $22,%eax,%r12d - leal (%r11,%r13,1),%r11d - xorl %ebx,%r15d - rorxl $13,%eax,%r14d - rorxl $2,%eax,%r13d - leal (%rdx,%r11,1),%edx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %ebx,%edi - xorl %r13d,%r14d - leal (%r11,%rdi,1),%r11d - movl %r8d,%r12d - addl 4+16(%rbp),%r10d - andl %edx,%r12d - rorxl $25,%edx,%r13d - rorxl $11,%edx,%edi - leal (%r11,%r14,1),%r11d - leal (%r10,%r12,1),%r10d - andnl %r9d,%edx,%r12d - xorl %edi,%r13d - rorxl $6,%edx,%r14d - leal (%r10,%r12,1),%r10d - xorl %r14d,%r13d - movl %r11d,%edi - rorxl $22,%r11d,%r12d - leal (%r10,%r13,1),%r10d - xorl %eax,%edi - rorxl $13,%r11d,%r14d - rorxl $2,%r11d,%r13d - leal (%rcx,%r10,1),%ecx - andl %edi,%r15d - xorl %r12d,%r14d - xorl %eax,%r15d - xorl %r13d,%r14d - leal (%r10,%r15,1),%r10d - movl %edx,%r12d - addl 8+16(%rbp),%r9d - andl %ecx,%r12d - rorxl $25,%ecx,%r13d - rorxl $11,%ecx,%r15d - leal (%r10,%r14,1),%r10d - leal (%r9,%r12,1),%r9d - andnl %r8d,%ecx,%r12d - xorl %r15d,%r13d - rorxl $6,%ecx,%r14d - leal (%r9,%r12,1),%r9d - xorl %r14d,%r13d - movl %r10d,%r15d - rorxl $22,%r10d,%r12d - leal (%r9,%r13,1),%r9d - xorl %r11d,%r15d - rorxl $13,%r10d,%r14d - rorxl $2,%r10d,%r13d - leal (%rbx,%r9,1),%ebx - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r11d,%edi - xorl %r13d,%r14d - leal (%r9,%rdi,1),%r9d - movl %ecx,%r12d - addl 12+16(%rbp),%r8d - andl %ebx,%r12d - rorxl $25,%ebx,%r13d - rorxl $11,%ebx,%edi - leal (%r9,%r14,1),%r9d - leal (%r8,%r12,1),%r8d - andnl %edx,%ebx,%r12d - xorl %edi,%r13d - rorxl $6,%ebx,%r14d - leal (%r8,%r12,1),%r8d - xorl %r14d,%r13d - movl %r9d,%edi - rorxl $22,%r9d,%r12d - leal (%r8,%r13,1),%r8d - xorl %r10d,%edi - rorxl $13,%r9d,%r14d - rorxl $2,%r9d,%r13d - leal (%rax,%r8,1),%eax - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r10d,%r15d - xorl %r13d,%r14d - leal (%r8,%r15,1),%r8d - movl %ebx,%r12d - addl 32+16(%rbp),%edx - andl %eax,%r12d - rorxl $25,%eax,%r13d - rorxl $11,%eax,%r15d - leal (%r8,%r14,1),%r8d - leal (%rdx,%r12,1),%edx - andnl %ecx,%eax,%r12d - xorl %r15d,%r13d - rorxl $6,%eax,%r14d - leal (%rdx,%r12,1),%edx - xorl %r14d,%r13d - movl %r8d,%r15d - rorxl $22,%r8d,%r12d - leal (%rdx,%r13,1),%edx - xorl %r9d,%r15d - rorxl $13,%r8d,%r14d - rorxl $2,%r8d,%r13d - leal (%r11,%rdx,1),%r11d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %r9d,%edi - xorl %r13d,%r14d - leal (%rdx,%rdi,1),%edx - movl %eax,%r12d - addl 36+16(%rbp),%ecx - andl %r11d,%r12d - rorxl $25,%r11d,%r13d - rorxl $11,%r11d,%edi - leal (%rdx,%r14,1),%edx - leal (%rcx,%r12,1),%ecx - andnl %ebx,%r11d,%r12d - xorl %edi,%r13d - rorxl $6,%r11d,%r14d - leal (%rcx,%r12,1),%ecx - xorl %r14d,%r13d - movl %edx,%edi - rorxl $22,%edx,%r12d - leal (%rcx,%r13,1),%ecx - xorl %r8d,%edi - rorxl $13,%edx,%r14d - rorxl $2,%edx,%r13d - leal (%r10,%rcx,1),%r10d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %r8d,%r15d - xorl %r13d,%r14d - leal (%rcx,%r15,1),%ecx - movl %r11d,%r12d - addl 40+16(%rbp),%ebx - andl %r10d,%r12d - rorxl $25,%r10d,%r13d - rorxl $11,%r10d,%r15d - leal (%rcx,%r14,1),%ecx - leal (%rbx,%r12,1),%ebx - andnl %eax,%r10d,%r12d - xorl %r15d,%r13d - rorxl $6,%r10d,%r14d - leal (%rbx,%r12,1),%ebx - xorl %r14d,%r13d - movl %ecx,%r15d - rorxl $22,%ecx,%r12d - leal (%rbx,%r13,1),%ebx - xorl %edx,%r15d - rorxl $13,%ecx,%r14d - rorxl $2,%ecx,%r13d - leal (%r9,%rbx,1),%r9d - andl %r15d,%edi - xorl %r12d,%r14d - xorl %edx,%edi - xorl %r13d,%r14d - leal (%rbx,%rdi,1),%ebx - movl %r10d,%r12d - addl 44+16(%rbp),%eax - andl %r9d,%r12d - rorxl $25,%r9d,%r13d - rorxl $11,%r9d,%edi - leal (%rbx,%r14,1),%ebx - leal (%rax,%r12,1),%eax - andnl %r11d,%r9d,%r12d - xorl %edi,%r13d - rorxl $6,%r9d,%r14d - leal (%rax,%r12,1),%eax - xorl %r14d,%r13d - movl %ebx,%edi - rorxl $22,%ebx,%r12d - leal (%rax,%r13,1),%eax - xorl %ecx,%edi - rorxl $13,%ebx,%r14d - rorxl $2,%ebx,%r13d - leal (%r8,%rax,1),%r8d - andl %edi,%r15d - xorl %r12d,%r14d - xorl %ecx,%r15d - xorl %r13d,%r14d - leal (%rax,%r15,1),%eax - movl %r9d,%r12d - leaq -64(%rbp),%rbp - cmpq %rsp,%rbp - jae L$ower_avx2 - - movq 512(%rsp),%rdi - addl %r14d,%eax - - leaq 448(%rsp),%rsp - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - leaq 128(%rsi),%rsi - addl 24(%rdi),%r10d - movq %rsi,%r12 - addl 28(%rdi),%r11d - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - cmoveq %rsp,%r12 - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - - jbe L$oop_avx2 - leaq (%rsp),%rbp - -L$done_avx2: - leaq (%rbp),%rsp - movq 64+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/sha/sha512-x86_64.s b/deps/openssl/asm/x64-macosx-gas/sha/sha512-x86_64.s deleted file mode 100644 index 91821da1264e86..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/sha/sha512-x86_64.s +++ /dev/null @@ -1,5364 +0,0 @@ -.text - - -.globl _sha512_block_data_order - -.p2align 4 -_sha512_block_data_order: - leaq _OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $2048,%r10d - jnz L$xop_shortcut - andl $296,%r11d - cmpl $296,%r11d - je L$avx2_shortcut - andl $1073741824,%r9d - andl $268435968,%r10d - orl %r9d,%r10d - cmpl $1342177792,%r10d - je L$avx_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $128+32,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -L$prologue: - - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp L$loop - -.p2align 4 -L$loop: - movq %rbx,%rdi - leaq K512(%rip),%rbp - xorq %rcx,%rdi - movq 0(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 8(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 16(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 24(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 32(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 40(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 48(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 56(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - addq %r14,%rax - movq 64(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 72(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 80(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 88(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 96(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 104(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 112(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 120(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - jmp L$rounds_16_xx -.p2align 4 -L$rounds_16_xx: - movq 8(%rsp),%r13 - movq 112(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 72(%rsp),%r12 - - addq 0(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 16(%rsp),%r13 - movq 120(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 80(%rsp),%r12 - - addq 8(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 24(%rsp),%r13 - movq 0(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 88(%rsp),%r12 - - addq 16(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 32(%rsp),%r13 - movq 8(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 96(%rsp),%r12 - - addq 24(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 40(%rsp),%r13 - movq 16(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 104(%rsp),%r12 - - addq 32(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 48(%rsp),%r13 - movq 24(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 112(%rsp),%r12 - - addq 40(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 56(%rsp),%r13 - movq 32(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 120(%rsp),%r12 - - addq 48(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 64(%rsp),%r13 - movq 40(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 0(%rsp),%r12 - - addq 56(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - movq 72(%rsp),%r13 - movq 48(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 8(%rsp),%r12 - - addq 64(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 80(%rsp),%r13 - movq 56(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 16(%rsp),%r12 - - addq 72(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 88(%rsp),%r13 - movq 64(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 24(%rsp),%r12 - - addq 80(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 96(%rsp),%r13 - movq 72(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 32(%rsp),%r12 - - addq 88(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 104(%rsp),%r13 - movq 80(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 40(%rsp),%r12 - - addq 96(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 112(%rsp),%r13 - movq 88(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 48(%rsp),%r12 - - addq 104(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 120(%rsp),%r13 - movq 96(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 56(%rsp),%r12 - - addq 112(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 0(%rsp),%r13 - movq 104(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 64(%rsp),%r12 - - addq 120(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - cmpb $0,7(%rbp) - jnz L$rounds_16_xx - - movq 128+0(%rsp),%rdi - addq %r14,%rax - leaq 128(%rsi),%rsi - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb L$loop - - movq 128+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - -.p2align 6 - -K512: -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 - -.p2align 6 -sha512_block_data_order_xop: -L$xop_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $160,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -L$prologue_xop: - - vzeroupper - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp L$loop_xop -.p2align 4 -L$loop_xop: - vmovdqa K512+1280(%rip),%xmm11 - vmovdqu 0(%rsi),%xmm0 - leaq K512+128(%rip),%rbp - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vpshufb %xmm11,%xmm0,%xmm0 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm11,%xmm1,%xmm1 - vmovdqu 64(%rsi),%xmm4 - vpshufb %xmm11,%xmm2,%xmm2 - vmovdqu 80(%rsi),%xmm5 - vpshufb %xmm11,%xmm3,%xmm3 - vmovdqu 96(%rsi),%xmm6 - vpshufb %xmm11,%xmm4,%xmm4 - vmovdqu 112(%rsi),%xmm7 - vpshufb %xmm11,%xmm5,%xmm5 - vpaddq -128(%rbp),%xmm0,%xmm8 - vpshufb %xmm11,%xmm6,%xmm6 - vpaddq -96(%rbp),%xmm1,%xmm9 - vpshufb %xmm11,%xmm7,%xmm7 - vpaddq -64(%rbp),%xmm2,%xmm10 - vpaddq -32(%rbp),%xmm3,%xmm11 - vmovdqa %xmm8,0(%rsp) - vpaddq 0(%rbp),%xmm4,%xmm8 - vmovdqa %xmm9,16(%rsp) - vpaddq 32(%rbp),%xmm5,%xmm9 - vmovdqa %xmm10,32(%rsp) - vpaddq 64(%rbp),%xmm6,%xmm10 - vmovdqa %xmm11,48(%rsp) - vpaddq 96(%rbp),%xmm7,%xmm11 - vmovdqa %xmm8,64(%rsp) - movq %rax,%r14 - vmovdqa %xmm9,80(%rsp) - movq %rbx,%rdi - vmovdqa %xmm10,96(%rsp) - xorq %rcx,%rdi - vmovdqa %xmm11,112(%rsp) - movq %r8,%r13 - jmp L$xop_00_47 - -.p2align 4 -L$xop_00_47: - addq $256,%rbp - vpalignr $8,%xmm0,%xmm1,%xmm8 - rorq $23,%r13 - movq %r14,%rax - vpalignr $8,%xmm4,%xmm5,%xmm11 - movq %r9,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r8,%r13 - xorq %r10,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rax,%r14 - vpaddq %xmm11,%xmm0,%xmm0 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 -.byte 143,72,120,195,209,7 - xorq %r10,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,223,3 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm7,%xmm10 - addq %r11,%rdx - addq %rdi,%r11 - vpaddq %xmm8,%xmm0,%xmm0 - movq %rdx,%r13 - addq %r11,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r11 - vpxor %xmm10,%xmm11,%xmm11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - vpaddq %xmm11,%xmm0,%xmm0 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - vpaddq -128(%rbp),%xmm0,%xmm10 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,0(%rsp) - vpalignr $8,%xmm1,%xmm2,%xmm8 - rorq $23,%r13 - movq %r14,%r10 - vpalignr $8,%xmm5,%xmm6,%xmm11 - movq %rdx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rcx,%r13 - xorq %r8,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r10,%r14 - vpaddq %xmm11,%xmm1,%xmm1 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 -.byte 143,72,120,195,209,7 - xorq %r8,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,216,3 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm0,%xmm10 - addq %r9,%rbx - addq %rdi,%r9 - vpaddq %xmm8,%xmm1,%xmm1 - movq %rbx,%r13 - addq %r9,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r9 - vpxor %xmm10,%xmm11,%xmm11 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - vpaddq %xmm11,%xmm1,%xmm1 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - vpaddq -96(%rbp),%xmm1,%xmm10 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,16(%rsp) - vpalignr $8,%xmm2,%xmm3,%xmm8 - rorq $23,%r13 - movq %r14,%r8 - vpalignr $8,%xmm6,%xmm7,%xmm11 - movq %rbx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rax,%r13 - xorq %rcx,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r8,%r14 - vpaddq %xmm11,%xmm2,%xmm2 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 -.byte 143,72,120,195,209,7 - xorq %rcx,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,217,3 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm1,%xmm10 - addq %rdx,%r11 - addq %rdi,%rdx - vpaddq %xmm8,%xmm2,%xmm2 - movq %r11,%r13 - addq %rdx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rdx - vpxor %xmm10,%xmm11,%xmm11 - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - vpaddq %xmm11,%xmm2,%xmm2 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - vpaddq -64(%rbp),%xmm2,%xmm10 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,32(%rsp) - vpalignr $8,%xmm3,%xmm4,%xmm8 - rorq $23,%r13 - movq %r14,%rcx - vpalignr $8,%xmm7,%xmm0,%xmm11 - movq %r11,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r10,%r13 - xorq %rax,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rcx,%r14 - vpaddq %xmm11,%xmm3,%xmm3 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 -.byte 143,72,120,195,209,7 - xorq %rax,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,218,3 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm2,%xmm10 - addq %rbx,%r9 - addq %rdi,%rbx - vpaddq %xmm8,%xmm3,%xmm3 - movq %r9,%r13 - addq %rbx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rbx - vpxor %xmm10,%xmm11,%xmm11 - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - vpaddq %xmm11,%xmm3,%xmm3 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - vpaddq -32(%rbp),%xmm3,%xmm10 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,48(%rsp) - vpalignr $8,%xmm4,%xmm5,%xmm8 - rorq $23,%r13 - movq %r14,%rax - vpalignr $8,%xmm0,%xmm1,%xmm11 - movq %r9,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r8,%r13 - xorq %r10,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rax,%r14 - vpaddq %xmm11,%xmm4,%xmm4 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 -.byte 143,72,120,195,209,7 - xorq %r10,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,219,3 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm3,%xmm10 - addq %r11,%rdx - addq %rdi,%r11 - vpaddq %xmm8,%xmm4,%xmm4 - movq %rdx,%r13 - addq %r11,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r11 - vpxor %xmm10,%xmm11,%xmm11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - vpaddq %xmm11,%xmm4,%xmm4 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - vpaddq 0(%rbp),%xmm4,%xmm10 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,64(%rsp) - vpalignr $8,%xmm5,%xmm6,%xmm8 - rorq $23,%r13 - movq %r14,%r10 - vpalignr $8,%xmm1,%xmm2,%xmm11 - movq %rdx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rcx,%r13 - xorq %r8,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r10,%r14 - vpaddq %xmm11,%xmm5,%xmm5 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 -.byte 143,72,120,195,209,7 - xorq %r8,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,220,3 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm4,%xmm10 - addq %r9,%rbx - addq %rdi,%r9 - vpaddq %xmm8,%xmm5,%xmm5 - movq %rbx,%r13 - addq %r9,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%r9 - vpxor %xmm10,%xmm11,%xmm11 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - vpaddq %xmm11,%xmm5,%xmm5 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - vpaddq 32(%rbp),%xmm5,%xmm10 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,80(%rsp) - vpalignr $8,%xmm6,%xmm7,%xmm8 - rorq $23,%r13 - movq %r14,%r8 - vpalignr $8,%xmm2,%xmm3,%xmm11 - movq %rbx,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %rax,%r13 - xorq %rcx,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %r8,%r14 - vpaddq %xmm11,%xmm6,%xmm6 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 -.byte 143,72,120,195,209,7 - xorq %rcx,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,221,3 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm5,%xmm10 - addq %rdx,%r11 - addq %rdi,%rdx - vpaddq %xmm8,%xmm6,%xmm6 - movq %r11,%r13 - addq %rdx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rdx - vpxor %xmm10,%xmm11,%xmm11 - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - vpaddq %xmm11,%xmm6,%xmm6 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - vpaddq 64(%rbp),%xmm6,%xmm10 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,96(%rsp) - vpalignr $8,%xmm7,%xmm0,%xmm8 - rorq $23,%r13 - movq %r14,%rcx - vpalignr $8,%xmm3,%xmm4,%xmm11 - movq %r11,%r12 - rorq $5,%r14 -.byte 143,72,120,195,200,56 - xorq %r10,%r13 - xorq %rax,%r12 - vpsrlq $7,%xmm8,%xmm8 - rorq $4,%r13 - xorq %rcx,%r14 - vpaddq %xmm11,%xmm7,%xmm7 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 -.byte 143,72,120,195,209,7 - xorq %rax,%r12 - rorq $6,%r14 - vpxor %xmm9,%xmm8,%xmm8 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi -.byte 143,104,120,195,222,3 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - rorq $28,%r14 - vpsrlq $6,%xmm6,%xmm10 - addq %rbx,%r9 - addq %rdi,%rbx - vpaddq %xmm8,%xmm7,%xmm7 - movq %r9,%r13 - addq %rbx,%r14 -.byte 143,72,120,195,203,42 - rorq $23,%r13 - movq %r14,%rbx - vpxor %xmm10,%xmm11,%xmm11 - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm9,%xmm11,%xmm11 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - vpaddq %xmm11,%xmm7,%xmm7 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - vpaddq 96(%rbp),%xmm7,%xmm10 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,112(%rsp) - cmpb $0,135(%rbp) - jne L$xop_00_47 - rorq $23,%r13 - movq %r14,%rax - movq %r9,%r12 - rorq $5,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - rorq $4,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - rorq $6,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - rorq $28,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - rorq $23,%r13 - movq %r14,%r11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - rorq $23,%r13 - movq %r14,%r10 - movq %rdx,%r12 - rorq $5,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - rorq $4,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - rorq $6,%r14 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - rorq $28,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - rorq $23,%r13 - movq %r14,%r9 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - rorq $23,%r13 - movq %r14,%r8 - movq %rbx,%r12 - rorq $5,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - rorq $4,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - rorq $6,%r14 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - rorq $28,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - rorq $23,%r13 - movq %r14,%rdx - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - rorq $23,%r13 - movq %r14,%rcx - movq %r11,%r12 - rorq $5,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - rorq $4,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - rorq $6,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - rorq $28,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - rorq $23,%r13 - movq %r14,%rbx - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - rorq $23,%r13 - movq %r14,%rax - movq %r9,%r12 - rorq $5,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - rorq $4,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - rorq $6,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - rorq $14,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - rorq $28,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - rorq $23,%r13 - movq %r14,%r11 - movq %r8,%r12 - rorq $5,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - rorq $4,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - rorq $6,%r14 - xorq %rax,%rdi - addq %r12,%r10 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - rorq $28,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - rorq $23,%r13 - movq %r14,%r10 - movq %rdx,%r12 - rorq $5,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - rorq $4,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - rorq $6,%r14 - xorq %r11,%r15 - addq %r12,%r9 - rorq $14,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - rorq $28,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - rorq $23,%r13 - movq %r14,%r9 - movq %rcx,%r12 - rorq $5,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - rorq $4,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - rorq $6,%r14 - xorq %r10,%rdi - addq %r12,%r8 - rorq $14,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - rorq $28,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - rorq $23,%r13 - movq %r14,%r8 - movq %rbx,%r12 - rorq $5,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - rorq $4,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - rorq $6,%r14 - xorq %r9,%r15 - addq %r12,%rdx - rorq $14,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - rorq $28,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - rorq $23,%r13 - movq %r14,%rdx - movq %rax,%r12 - rorq $5,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - rorq $4,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - rorq $6,%r14 - xorq %r8,%rdi - addq %r12,%rcx - rorq $14,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - rorq $28,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - rorq $23,%r13 - movq %r14,%rcx - movq %r11,%r12 - rorq $5,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - rorq $4,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - rorq $6,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - rorq $14,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - rorq $28,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - rorq $23,%r13 - movq %r14,%rbx - movq %r10,%r12 - rorq $5,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - rorq $4,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - rorq $6,%r14 - xorq %rcx,%rdi - addq %r12,%rax - rorq $14,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - rorq $28,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - movq 128+0(%rsp),%rdi - movq %r14,%rax - - addq 0(%rdi),%rax - leaq 128(%rsi),%rsi - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb L$loop_xop - - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_xop: - .byte 0xf3,0xc3 - - -.p2align 6 -sha512_block_data_order_avx: -L$avx_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $160,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -L$prologue_avx: - - vzeroupper - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp L$loop_avx -.p2align 4 -L$loop_avx: - vmovdqa K512+1280(%rip),%xmm11 - vmovdqu 0(%rsi),%xmm0 - leaq K512+128(%rip),%rbp - vmovdqu 16(%rsi),%xmm1 - vmovdqu 32(%rsi),%xmm2 - vpshufb %xmm11,%xmm0,%xmm0 - vmovdqu 48(%rsi),%xmm3 - vpshufb %xmm11,%xmm1,%xmm1 - vmovdqu 64(%rsi),%xmm4 - vpshufb %xmm11,%xmm2,%xmm2 - vmovdqu 80(%rsi),%xmm5 - vpshufb %xmm11,%xmm3,%xmm3 - vmovdqu 96(%rsi),%xmm6 - vpshufb %xmm11,%xmm4,%xmm4 - vmovdqu 112(%rsi),%xmm7 - vpshufb %xmm11,%xmm5,%xmm5 - vpaddq -128(%rbp),%xmm0,%xmm8 - vpshufb %xmm11,%xmm6,%xmm6 - vpaddq -96(%rbp),%xmm1,%xmm9 - vpshufb %xmm11,%xmm7,%xmm7 - vpaddq -64(%rbp),%xmm2,%xmm10 - vpaddq -32(%rbp),%xmm3,%xmm11 - vmovdqa %xmm8,0(%rsp) - vpaddq 0(%rbp),%xmm4,%xmm8 - vmovdqa %xmm9,16(%rsp) - vpaddq 32(%rbp),%xmm5,%xmm9 - vmovdqa %xmm10,32(%rsp) - vpaddq 64(%rbp),%xmm6,%xmm10 - vmovdqa %xmm11,48(%rsp) - vpaddq 96(%rbp),%xmm7,%xmm11 - vmovdqa %xmm8,64(%rsp) - movq %rax,%r14 - vmovdqa %xmm9,80(%rsp) - movq %rbx,%rdi - vmovdqa %xmm10,96(%rsp) - xorq %rcx,%rdi - vmovdqa %xmm11,112(%rsp) - movq %r8,%r13 - jmp L$avx_00_47 - -.p2align 4 -L$avx_00_47: - addq $256,%rbp - vpalignr $8,%xmm0,%xmm1,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rax - vpalignr $8,%xmm4,%xmm5,%xmm11 - movq %r9,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r8,%r13 - xorq %r10,%r12 - vpaddq %xmm11,%xmm0,%xmm0 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r8,%r12 - xorq %r8,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 0(%rsp),%r11 - movq %rax,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rbx,%r15 - addq %r12,%r11 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm7,%xmm11 - addq %r11,%rdx - addq %rdi,%r11 - vpxor %xmm9,%xmm8,%xmm8 - movq %rdx,%r13 - addq %r11,%r14 - vpsllq $3,%xmm7,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r11 - vpaddq %xmm8,%xmm0,%xmm0 - movq %r8,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm7,%xmm9 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rdx,%r12 - xorq %rdx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 8(%rsp),%r10 - movq %r11,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r9,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rax,%rdi - addq %r12,%r10 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm0,%xmm0 - xorq %r11,%r14 - addq %r13,%r10 - vpaddq -128(%rbp),%xmm0,%xmm10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,0(%rsp) - vpalignr $8,%xmm1,%xmm2,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r10 - vpalignr $8,%xmm5,%xmm6,%xmm11 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rcx,%r13 - xorq %r8,%r12 - vpaddq %xmm11,%xmm1,%xmm1 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rcx,%r12 - xorq %rcx,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 16(%rsp),%r9 - movq %r10,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r11,%r15 - addq %r12,%r9 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm0,%xmm11 - addq %r9,%rbx - addq %rdi,%r9 - vpxor %xmm9,%xmm8,%xmm8 - movq %rbx,%r13 - addq %r9,%r14 - vpsllq $3,%xmm0,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r9 - vpaddq %xmm8,%xmm1,%xmm1 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm0,%xmm9 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rbx,%r12 - xorq %rbx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 24(%rsp),%r8 - movq %r9,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r10,%rdi - addq %r12,%r8 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm1,%xmm1 - xorq %r9,%r14 - addq %r13,%r8 - vpaddq -96(%rbp),%xmm1,%xmm10 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,16(%rsp) - vpalignr $8,%xmm2,%xmm3,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r8 - vpalignr $8,%xmm6,%xmm7,%xmm11 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rax,%r13 - xorq %rcx,%r12 - vpaddq %xmm11,%xmm2,%xmm2 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rax,%r12 - xorq %rax,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 32(%rsp),%rdx - movq %r8,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r9,%r15 - addq %r12,%rdx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm1,%xmm11 - addq %rdx,%r11 - addq %rdi,%rdx - vpxor %xmm9,%xmm8,%xmm8 - movq %r11,%r13 - addq %rdx,%r14 - vpsllq $3,%xmm1,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rdx - vpaddq %xmm8,%xmm2,%xmm2 - movq %rax,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm1,%xmm9 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r11,%r12 - xorq %r11,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 40(%rsp),%rcx - movq %rdx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r8,%rdi - addq %r12,%rcx - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm2,%xmm2 - xorq %rdx,%r14 - addq %r13,%rcx - vpaddq -64(%rbp),%xmm2,%xmm10 - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,32(%rsp) - vpalignr $8,%xmm3,%xmm4,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rcx - vpalignr $8,%xmm7,%xmm0,%xmm11 - movq %r11,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r10,%r13 - xorq %rax,%r12 - vpaddq %xmm11,%xmm3,%xmm3 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r10,%r12 - xorq %r10,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 48(%rsp),%rbx - movq %rcx,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rdx,%r15 - addq %r12,%rbx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm2,%xmm11 - addq %rbx,%r9 - addq %rdi,%rbx - vpxor %xmm9,%xmm8,%xmm8 - movq %r9,%r13 - addq %rbx,%r14 - vpsllq $3,%xmm2,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rbx - vpaddq %xmm8,%xmm3,%xmm3 - movq %r10,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm2,%xmm9 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r9,%r12 - xorq %r9,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 56(%rsp),%rax - movq %rbx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r11,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rcx,%rdi - addq %r12,%rax - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm3,%xmm3 - xorq %rbx,%r14 - addq %r13,%rax - vpaddq -32(%rbp),%xmm3,%xmm10 - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,48(%rsp) - vpalignr $8,%xmm4,%xmm5,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rax - vpalignr $8,%xmm0,%xmm1,%xmm11 - movq %r9,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r8,%r13 - xorq %r10,%r12 - vpaddq %xmm11,%xmm4,%xmm4 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r8,%r12 - xorq %r8,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 64(%rsp),%r11 - movq %rax,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rbx,%r15 - addq %r12,%r11 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rax,%r14 - addq %r13,%r11 - vpxor %xmm10,%xmm8,%xmm8 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm3,%xmm11 - addq %r11,%rdx - addq %rdi,%r11 - vpxor %xmm9,%xmm8,%xmm8 - movq %rdx,%r13 - addq %r11,%r14 - vpsllq $3,%xmm3,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r11 - vpaddq %xmm8,%xmm4,%xmm4 - movq %r8,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm3,%xmm9 - xorq %rdx,%r13 - xorq %r9,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rdx,%r12 - xorq %rdx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 72(%rsp),%r10 - movq %r11,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r9,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rax,%rdi - addq %r12,%r10 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm4,%xmm4 - xorq %r11,%r14 - addq %r13,%r10 - vpaddq 0(%rbp),%xmm4,%xmm10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - vmovdqa %xmm10,64(%rsp) - vpalignr $8,%xmm5,%xmm6,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r10 - vpalignr $8,%xmm1,%xmm2,%xmm11 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rcx,%r13 - xorq %r8,%r12 - vpaddq %xmm11,%xmm5,%xmm5 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rcx,%r12 - xorq %rcx,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 80(%rsp),%r9 - movq %r10,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r11,%r15 - addq %r12,%r9 - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r10,%r14 - addq %r13,%r9 - vpxor %xmm10,%xmm8,%xmm8 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm4,%xmm11 - addq %r9,%rbx - addq %rdi,%r9 - vpxor %xmm9,%xmm8,%xmm8 - movq %rbx,%r13 - addq %r9,%r14 - vpsllq $3,%xmm4,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%r9 - vpaddq %xmm8,%xmm5,%xmm5 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm4,%xmm9 - xorq %rbx,%r13 - xorq %rdx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %rbx,%r12 - xorq %rbx,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 88(%rsp),%r8 - movq %r9,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r10,%rdi - addq %r12,%r8 - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm5,%xmm5 - xorq %r9,%r14 - addq %r13,%r8 - vpaddq 32(%rbp),%xmm5,%xmm10 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - vmovdqa %xmm10,80(%rsp) - vpalignr $8,%xmm6,%xmm7,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%r8 - vpalignr $8,%xmm2,%xmm3,%xmm11 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %rax,%r13 - xorq %rcx,%r12 - vpaddq %xmm11,%xmm6,%xmm6 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %rax,%r12 - xorq %rax,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 96(%rsp),%rdx - movq %r8,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %r9,%r15 - addq %r12,%rdx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %r8,%r14 - addq %r13,%rdx - vpxor %xmm10,%xmm8,%xmm8 - xorq %r9,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm5,%xmm11 - addq %rdx,%r11 - addq %rdi,%rdx - vpxor %xmm9,%xmm8,%xmm8 - movq %r11,%r13 - addq %rdx,%r14 - vpsllq $3,%xmm5,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rdx - vpaddq %xmm8,%xmm6,%xmm6 - movq %rax,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm5,%xmm9 - xorq %r11,%r13 - xorq %rbx,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r11,%r12 - xorq %r11,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 104(%rsp),%rcx - movq %rdx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %r8,%rdi - addq %r12,%rcx - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm6,%xmm6 - xorq %rdx,%r14 - addq %r13,%rcx - vpaddq 64(%rbp),%xmm6,%xmm10 - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - vmovdqa %xmm10,96(%rsp) - vpalignr $8,%xmm7,%xmm0,%xmm8 - shrdq $23,%r13,%r13 - movq %r14,%rcx - vpalignr $8,%xmm3,%xmm4,%xmm11 - movq %r11,%r12 - shrdq $5,%r14,%r14 - vpsrlq $1,%xmm8,%xmm10 - xorq %r10,%r13 - xorq %rax,%r12 - vpaddq %xmm11,%xmm7,%xmm7 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - vpsrlq $7,%xmm8,%xmm11 - andq %r10,%r12 - xorq %r10,%r13 - vpsllq $56,%xmm8,%xmm9 - addq 112(%rsp),%rbx - movq %rcx,%r15 - vpxor %xmm10,%xmm11,%xmm8 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - vpsrlq $7,%xmm10,%xmm10 - xorq %rdx,%r15 - addq %r12,%rbx - vpxor %xmm9,%xmm8,%xmm8 - shrdq $14,%r13,%r13 - andq %r15,%rdi - vpsllq $7,%xmm9,%xmm9 - xorq %rcx,%r14 - addq %r13,%rbx - vpxor %xmm10,%xmm8,%xmm8 - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - vpsrlq $6,%xmm6,%xmm11 - addq %rbx,%r9 - addq %rdi,%rbx - vpxor %xmm9,%xmm8,%xmm8 - movq %r9,%r13 - addq %rbx,%r14 - vpsllq $3,%xmm6,%xmm10 - shrdq $23,%r13,%r13 - movq %r14,%rbx - vpaddq %xmm8,%xmm7,%xmm7 - movq %r10,%r12 - shrdq $5,%r14,%r14 - vpsrlq $19,%xmm6,%xmm9 - xorq %r9,%r13 - xorq %r11,%r12 - vpxor %xmm10,%xmm11,%xmm11 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - vpsllq $42,%xmm10,%xmm10 - andq %r9,%r12 - xorq %r9,%r13 - vpxor %xmm9,%xmm11,%xmm11 - addq 120(%rsp),%rax - movq %rbx,%rdi - vpsrlq $42,%xmm9,%xmm9 - xorq %r11,%r12 - shrdq $6,%r14,%r14 - vpxor %xmm10,%xmm11,%xmm11 - xorq %rcx,%rdi - addq %r12,%rax - vpxor %xmm9,%xmm11,%xmm11 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - vpaddq %xmm11,%xmm7,%xmm7 - xorq %rbx,%r14 - addq %r13,%rax - vpaddq 96(%rbp),%xmm7,%xmm10 - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - vmovdqa %xmm10,112(%rsp) - cmpb $0,135(%rbp) - jne L$avx_00_47 - shrdq $23,%r13,%r13 - movq %r14,%rax - movq %r9,%r12 - shrdq $5,%r14,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 0(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r11 - movq %r8,%r12 - shrdq $5,%r14,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 8(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - shrdq $6,%r14,%r14 - xorq %rax,%rdi - addq %r12,%r10 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r10 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 16(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - xorq %r11,%r15 - addq %r12,%r9 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r9 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 24(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - xorq %r10,%rdi - addq %r12,%r8 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r8 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 32(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - xorq %r9,%r15 - addq %r12,%rdx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - shrdq $28,%r14,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rdx - movq %rax,%r12 - shrdq $5,%r14,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 40(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - xorq %r8,%rdi - addq %r12,%rcx - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rcx - movq %r11,%r12 - shrdq $5,%r14,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 48(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rbx - movq %r10,%r12 - shrdq $5,%r14,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 56(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - shrdq $6,%r14,%r14 - xorq %rcx,%rdi - addq %r12,%rax - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rax - movq %r9,%r12 - shrdq $5,%r14,%r14 - xorq %r8,%r13 - xorq %r10,%r12 - shrdq $4,%r13,%r13 - xorq %rax,%r14 - andq %r8,%r12 - xorq %r8,%r13 - addq 64(%rsp),%r11 - movq %rax,%r15 - xorq %r10,%r12 - shrdq $6,%r14,%r14 - xorq %rbx,%r15 - addq %r12,%r11 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rax,%r14 - addq %r13,%r11 - xorq %rbx,%rdi - shrdq $28,%r14,%r14 - addq %r11,%rdx - addq %rdi,%r11 - movq %rdx,%r13 - addq %r11,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r11 - movq %r8,%r12 - shrdq $5,%r14,%r14 - xorq %rdx,%r13 - xorq %r9,%r12 - shrdq $4,%r13,%r13 - xorq %r11,%r14 - andq %rdx,%r12 - xorq %rdx,%r13 - addq 72(%rsp),%r10 - movq %r11,%rdi - xorq %r9,%r12 - shrdq $6,%r14,%r14 - xorq %rax,%rdi - addq %r12,%r10 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r11,%r14 - addq %r13,%r10 - xorq %rax,%r15 - shrdq $28,%r14,%r14 - addq %r10,%rcx - addq %r15,%r10 - movq %rcx,%r13 - addq %r10,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r10 - movq %rdx,%r12 - shrdq $5,%r14,%r14 - xorq %rcx,%r13 - xorq %r8,%r12 - shrdq $4,%r13,%r13 - xorq %r10,%r14 - andq %rcx,%r12 - xorq %rcx,%r13 - addq 80(%rsp),%r9 - movq %r10,%r15 - xorq %r8,%r12 - shrdq $6,%r14,%r14 - xorq %r11,%r15 - addq %r12,%r9 - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r10,%r14 - addq %r13,%r9 - xorq %r11,%rdi - shrdq $28,%r14,%r14 - addq %r9,%rbx - addq %rdi,%r9 - movq %rbx,%r13 - addq %r9,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r9 - movq %rcx,%r12 - shrdq $5,%r14,%r14 - xorq %rbx,%r13 - xorq %rdx,%r12 - shrdq $4,%r13,%r13 - xorq %r9,%r14 - andq %rbx,%r12 - xorq %rbx,%r13 - addq 88(%rsp),%r8 - movq %r9,%rdi - xorq %rdx,%r12 - shrdq $6,%r14,%r14 - xorq %r10,%rdi - addq %r12,%r8 - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %r9,%r14 - addq %r13,%r8 - xorq %r10,%r15 - shrdq $28,%r14,%r14 - addq %r8,%rax - addq %r15,%r8 - movq %rax,%r13 - addq %r8,%r14 - shrdq $23,%r13,%r13 - movq %r14,%r8 - movq %rbx,%r12 - shrdq $5,%r14,%r14 - xorq %rax,%r13 - xorq %rcx,%r12 - shrdq $4,%r13,%r13 - xorq %r8,%r14 - andq %rax,%r12 - xorq %rax,%r13 - addq 96(%rsp),%rdx - movq %r8,%r15 - xorq %rcx,%r12 - shrdq $6,%r14,%r14 - xorq %r9,%r15 - addq %r12,%rdx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %r8,%r14 - addq %r13,%rdx - xorq %r9,%rdi - shrdq $28,%r14,%r14 - addq %rdx,%r11 - addq %rdi,%rdx - movq %r11,%r13 - addq %rdx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rdx - movq %rax,%r12 - shrdq $5,%r14,%r14 - xorq %r11,%r13 - xorq %rbx,%r12 - shrdq $4,%r13,%r13 - xorq %rdx,%r14 - andq %r11,%r12 - xorq %r11,%r13 - addq 104(%rsp),%rcx - movq %rdx,%rdi - xorq %rbx,%r12 - shrdq $6,%r14,%r14 - xorq %r8,%rdi - addq %r12,%rcx - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rdx,%r14 - addq %r13,%rcx - xorq %r8,%r15 - shrdq $28,%r14,%r14 - addq %rcx,%r10 - addq %r15,%rcx - movq %r10,%r13 - addq %rcx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rcx - movq %r11,%r12 - shrdq $5,%r14,%r14 - xorq %r10,%r13 - xorq %rax,%r12 - shrdq $4,%r13,%r13 - xorq %rcx,%r14 - andq %r10,%r12 - xorq %r10,%r13 - addq 112(%rsp),%rbx - movq %rcx,%r15 - xorq %rax,%r12 - shrdq $6,%r14,%r14 - xorq %rdx,%r15 - addq %r12,%rbx - shrdq $14,%r13,%r13 - andq %r15,%rdi - xorq %rcx,%r14 - addq %r13,%rbx - xorq %rdx,%rdi - shrdq $28,%r14,%r14 - addq %rbx,%r9 - addq %rdi,%rbx - movq %r9,%r13 - addq %rbx,%r14 - shrdq $23,%r13,%r13 - movq %r14,%rbx - movq %r10,%r12 - shrdq $5,%r14,%r14 - xorq %r9,%r13 - xorq %r11,%r12 - shrdq $4,%r13,%r13 - xorq %rbx,%r14 - andq %r9,%r12 - xorq %r9,%r13 - addq 120(%rsp),%rax - movq %rbx,%rdi - xorq %r11,%r12 - shrdq $6,%r14,%r14 - xorq %rcx,%rdi - addq %r12,%rax - shrdq $14,%r13,%r13 - andq %rdi,%r15 - xorq %rbx,%r14 - addq %r13,%rax - xorq %rcx,%r15 - shrdq $28,%r14,%r14 - addq %rax,%r8 - addq %r15,%rax - movq %r8,%r13 - addq %rax,%r14 - movq 128+0(%rsp),%rdi - movq %r14,%rax - - addq 0(%rdi),%rax - leaq 128(%rsi),%rsi - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb L$loop_avx - - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx: - .byte 0xf3,0xc3 - - -.p2align 6 -sha512_block_data_order_avx2: -L$avx2_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - subq $1312,%rsp - shlq $4,%rdx - andq $-2048,%rsp - leaq (%rsi,%rdx,8),%rdx - addq $1152,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -L$prologue_avx2: - - vzeroupper - subq $-128,%rsi - movq 0(%rdi),%rax - movq %rsi,%r12 - movq 8(%rdi),%rbx - cmpq %rdx,%rsi - movq 16(%rdi),%rcx - cmoveq %rsp,%r12 - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp L$oop_avx2 -.p2align 4 -L$oop_avx2: - vmovdqu -128(%rsi),%xmm0 - vmovdqu -128+16(%rsi),%xmm1 - vmovdqu -128+32(%rsi),%xmm2 - leaq K512+128(%rip),%rbp - vmovdqu -128+48(%rsi),%xmm3 - vmovdqu -128+64(%rsi),%xmm4 - vmovdqu -128+80(%rsi),%xmm5 - vmovdqu -128+96(%rsi),%xmm6 - vmovdqu -128+112(%rsi),%xmm7 - - vmovdqa 1152(%rbp),%ymm10 - vinserti128 $1,(%r12),%ymm0,%ymm0 - vinserti128 $1,16(%r12),%ymm1,%ymm1 - vpshufb %ymm10,%ymm0,%ymm0 - vinserti128 $1,32(%r12),%ymm2,%ymm2 - vpshufb %ymm10,%ymm1,%ymm1 - vinserti128 $1,48(%r12),%ymm3,%ymm3 - vpshufb %ymm10,%ymm2,%ymm2 - vinserti128 $1,64(%r12),%ymm4,%ymm4 - vpshufb %ymm10,%ymm3,%ymm3 - vinserti128 $1,80(%r12),%ymm5,%ymm5 - vpshufb %ymm10,%ymm4,%ymm4 - vinserti128 $1,96(%r12),%ymm6,%ymm6 - vpshufb %ymm10,%ymm5,%ymm5 - vinserti128 $1,112(%r12),%ymm7,%ymm7 - - vpaddq -128(%rbp),%ymm0,%ymm8 - vpshufb %ymm10,%ymm6,%ymm6 - vpaddq -96(%rbp),%ymm1,%ymm9 - vpshufb %ymm10,%ymm7,%ymm7 - vpaddq -64(%rbp),%ymm2,%ymm10 - vpaddq -32(%rbp),%ymm3,%ymm11 - vmovdqa %ymm8,0(%rsp) - vpaddq 0(%rbp),%ymm4,%ymm8 - vmovdqa %ymm9,32(%rsp) - vpaddq 32(%rbp),%ymm5,%ymm9 - vmovdqa %ymm10,64(%rsp) - vpaddq 64(%rbp),%ymm6,%ymm10 - vmovdqa %ymm11,96(%rsp) - leaq -128(%rsp),%rsp - vpaddq 96(%rbp),%ymm7,%ymm11 - vmovdqa %ymm8,0(%rsp) - xorq %r14,%r14 - vmovdqa %ymm9,32(%rsp) - movq %rbx,%rdi - vmovdqa %ymm10,64(%rsp) - xorq %rcx,%rdi - vmovdqa %ymm11,96(%rsp) - movq %r9,%r12 - addq $32*8,%rbp - jmp L$avx2_00_47 - -.p2align 4 -L$avx2_00_47: - leaq -128(%rsp),%rsp - vpalignr $8,%ymm0,%ymm1,%ymm8 - addq 0+256(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - vpalignr $8,%ymm4,%ymm5,%ymm11 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - vpsrlq $1,%ymm8,%ymm10 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - vpaddq %ymm11,%ymm0,%ymm0 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - vpsrlq $6,%ymm7,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - vpsllq $3,%ymm7,%ymm10 - vpaddq %ymm8,%ymm0,%ymm0 - addq 8+256(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - vpsrlq $19,%ymm7,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - vpaddq %ymm11,%ymm0,%ymm0 - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - vpaddq -128(%rbp),%ymm0,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - vmovdqa %ymm10,0(%rsp) - vpalignr $8,%ymm1,%ymm2,%ymm8 - addq 32+256(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - vpalignr $8,%ymm5,%ymm6,%ymm11 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - vpsrlq $1,%ymm8,%ymm10 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - vpaddq %ymm11,%ymm1,%ymm1 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - vpsrlq $6,%ymm0,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - vpsllq $3,%ymm0,%ymm10 - vpaddq %ymm8,%ymm1,%ymm1 - addq 40+256(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - vpsrlq $19,%ymm0,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - vpaddq %ymm11,%ymm1,%ymm1 - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - vpaddq -96(%rbp),%ymm1,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - vmovdqa %ymm10,32(%rsp) - vpalignr $8,%ymm2,%ymm3,%ymm8 - addq 64+256(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - vpalignr $8,%ymm6,%ymm7,%ymm11 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - vpsrlq $1,%ymm8,%ymm10 - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - vpaddq %ymm11,%ymm2,%ymm2 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - vpsrlq $6,%ymm1,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - vpsllq $3,%ymm1,%ymm10 - vpaddq %ymm8,%ymm2,%ymm2 - addq 72+256(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - vpsrlq $19,%ymm1,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - vpaddq %ymm11,%ymm2,%ymm2 - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - vpaddq -64(%rbp),%ymm2,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - vmovdqa %ymm10,64(%rsp) - vpalignr $8,%ymm3,%ymm4,%ymm8 - addq 96+256(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - vpalignr $8,%ymm7,%ymm0,%ymm11 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - vpsrlq $1,%ymm8,%ymm10 - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - vpaddq %ymm11,%ymm3,%ymm3 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - vpsrlq $6,%ymm2,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - vpsllq $3,%ymm2,%ymm10 - vpaddq %ymm8,%ymm3,%ymm3 - addq 104+256(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - vpsrlq $19,%ymm2,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - vpaddq %ymm11,%ymm3,%ymm3 - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - vpaddq -32(%rbp),%ymm3,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - vmovdqa %ymm10,96(%rsp) - leaq -128(%rsp),%rsp - vpalignr $8,%ymm4,%ymm5,%ymm8 - addq 0+256(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - vpalignr $8,%ymm0,%ymm1,%ymm11 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - vpsrlq $1,%ymm8,%ymm10 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - vpaddq %ymm11,%ymm4,%ymm4 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - vpsrlq $6,%ymm3,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - vpsllq $3,%ymm3,%ymm10 - vpaddq %ymm8,%ymm4,%ymm4 - addq 8+256(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - vpsrlq $19,%ymm3,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - vpaddq %ymm11,%ymm4,%ymm4 - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - vpaddq 0(%rbp),%ymm4,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - vmovdqa %ymm10,0(%rsp) - vpalignr $8,%ymm5,%ymm6,%ymm8 - addq 32+256(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - vpalignr $8,%ymm1,%ymm2,%ymm11 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - vpsrlq $1,%ymm8,%ymm10 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - vpaddq %ymm11,%ymm5,%ymm5 - vpsrlq $7,%ymm8,%ymm11 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - vpsrlq $6,%ymm4,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - vpsllq $3,%ymm4,%ymm10 - vpaddq %ymm8,%ymm5,%ymm5 - addq 40+256(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - vpsrlq $19,%ymm4,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - vpaddq %ymm11,%ymm5,%ymm5 - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - vpaddq 32(%rbp),%ymm5,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - vmovdqa %ymm10,32(%rsp) - vpalignr $8,%ymm6,%ymm7,%ymm8 - addq 64+256(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - vpalignr $8,%ymm2,%ymm3,%ymm11 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - vpsrlq $1,%ymm8,%ymm10 - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - vpaddq %ymm11,%ymm6,%ymm6 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - vpsrlq $6,%ymm5,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - vpsllq $3,%ymm5,%ymm10 - vpaddq %ymm8,%ymm6,%ymm6 - addq 72+256(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - vpsrlq $19,%ymm5,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - vpaddq %ymm11,%ymm6,%ymm6 - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - vpaddq 64(%rbp),%ymm6,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - vmovdqa %ymm10,64(%rsp) - vpalignr $8,%ymm7,%ymm0,%ymm8 - addq 96+256(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - vpalignr $8,%ymm3,%ymm4,%ymm11 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - vpsrlq $1,%ymm8,%ymm10 - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - vpaddq %ymm11,%ymm7,%ymm7 - vpsrlq $7,%ymm8,%ymm11 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - vpsllq $56,%ymm8,%ymm9 - vpxor %ymm10,%ymm11,%ymm8 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - vpsrlq $7,%ymm10,%ymm10 - vpxor %ymm9,%ymm8,%ymm8 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - vpsllq $7,%ymm9,%ymm9 - vpxor %ymm10,%ymm8,%ymm8 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - vpsrlq $6,%ymm6,%ymm11 - vpxor %ymm9,%ymm8,%ymm8 - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - vpsllq $3,%ymm6,%ymm10 - vpaddq %ymm8,%ymm7,%ymm7 - addq 104+256(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - vpsrlq $19,%ymm6,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - vpsllq $42,%ymm10,%ymm10 - vpxor %ymm9,%ymm11,%ymm11 - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - vpsrlq $42,%ymm9,%ymm9 - vpxor %ymm10,%ymm11,%ymm11 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - vpxor %ymm9,%ymm11,%ymm11 - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - vpaddq %ymm11,%ymm7,%ymm7 - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - vpaddq 96(%rbp),%ymm7,%ymm10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - vmovdqa %ymm10,96(%rsp) - leaq 256(%rbp),%rbp - cmpb $0,-121(%rbp) - jne L$avx2_00_47 - addq 0+128(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8+128(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32+128(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40+128(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64+128(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72+128(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96+128(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104+128(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - addq 0(%rsp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8(%rsp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32(%rsp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40(%rsp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64(%rsp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72(%rsp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96(%rsp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104(%rsp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - movq 1280(%rsp),%rdi - addq %r14,%rax - - leaq 1152(%rsp),%rbp - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - - cmpq 144(%rbp),%rsi - je L$done_avx2 - - xorq %r14,%r14 - movq %rbx,%rdi - xorq %rcx,%rdi - movq %r9,%r12 - jmp L$ower_avx2 -.p2align 4 -L$ower_avx2: - addq 0+16(%rbp),%r11 - andq %r8,%r12 - rorxq $41,%r8,%r13 - rorxq $18,%r8,%r15 - leaq (%rax,%r14,1),%rax - leaq (%r11,%r12,1),%r11 - andnq %r10,%r8,%r12 - xorq %r15,%r13 - rorxq $14,%r8,%r14 - leaq (%r11,%r12,1),%r11 - xorq %r14,%r13 - movq %rax,%r15 - rorxq $39,%rax,%r12 - leaq (%r11,%r13,1),%r11 - xorq %rbx,%r15 - rorxq $34,%rax,%r14 - rorxq $28,%rax,%r13 - leaq (%rdx,%r11,1),%rdx - andq %r15,%rdi - xorq %r12,%r14 - xorq %rbx,%rdi - xorq %r13,%r14 - leaq (%r11,%rdi,1),%r11 - movq %r8,%r12 - addq 8+16(%rbp),%r10 - andq %rdx,%r12 - rorxq $41,%rdx,%r13 - rorxq $18,%rdx,%rdi - leaq (%r11,%r14,1),%r11 - leaq (%r10,%r12,1),%r10 - andnq %r9,%rdx,%r12 - xorq %rdi,%r13 - rorxq $14,%rdx,%r14 - leaq (%r10,%r12,1),%r10 - xorq %r14,%r13 - movq %r11,%rdi - rorxq $39,%r11,%r12 - leaq (%r10,%r13,1),%r10 - xorq %rax,%rdi - rorxq $34,%r11,%r14 - rorxq $28,%r11,%r13 - leaq (%rcx,%r10,1),%rcx - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rax,%r15 - xorq %r13,%r14 - leaq (%r10,%r15,1),%r10 - movq %rdx,%r12 - addq 32+16(%rbp),%r9 - andq %rcx,%r12 - rorxq $41,%rcx,%r13 - rorxq $18,%rcx,%r15 - leaq (%r10,%r14,1),%r10 - leaq (%r9,%r12,1),%r9 - andnq %r8,%rcx,%r12 - xorq %r15,%r13 - rorxq $14,%rcx,%r14 - leaq (%r9,%r12,1),%r9 - xorq %r14,%r13 - movq %r10,%r15 - rorxq $39,%r10,%r12 - leaq (%r9,%r13,1),%r9 - xorq %r11,%r15 - rorxq $34,%r10,%r14 - rorxq $28,%r10,%r13 - leaq (%rbx,%r9,1),%rbx - andq %r15,%rdi - xorq %r12,%r14 - xorq %r11,%rdi - xorq %r13,%r14 - leaq (%r9,%rdi,1),%r9 - movq %rcx,%r12 - addq 40+16(%rbp),%r8 - andq %rbx,%r12 - rorxq $41,%rbx,%r13 - rorxq $18,%rbx,%rdi - leaq (%r9,%r14,1),%r9 - leaq (%r8,%r12,1),%r8 - andnq %rdx,%rbx,%r12 - xorq %rdi,%r13 - rorxq $14,%rbx,%r14 - leaq (%r8,%r12,1),%r8 - xorq %r14,%r13 - movq %r9,%rdi - rorxq $39,%r9,%r12 - leaq (%r8,%r13,1),%r8 - xorq %r10,%rdi - rorxq $34,%r9,%r14 - rorxq $28,%r9,%r13 - leaq (%rax,%r8,1),%rax - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r10,%r15 - xorq %r13,%r14 - leaq (%r8,%r15,1),%r8 - movq %rbx,%r12 - addq 64+16(%rbp),%rdx - andq %rax,%r12 - rorxq $41,%rax,%r13 - rorxq $18,%rax,%r15 - leaq (%r8,%r14,1),%r8 - leaq (%rdx,%r12,1),%rdx - andnq %rcx,%rax,%r12 - xorq %r15,%r13 - rorxq $14,%rax,%r14 - leaq (%rdx,%r12,1),%rdx - xorq %r14,%r13 - movq %r8,%r15 - rorxq $39,%r8,%r12 - leaq (%rdx,%r13,1),%rdx - xorq %r9,%r15 - rorxq $34,%r8,%r14 - rorxq $28,%r8,%r13 - leaq (%r11,%rdx,1),%r11 - andq %r15,%rdi - xorq %r12,%r14 - xorq %r9,%rdi - xorq %r13,%r14 - leaq (%rdx,%rdi,1),%rdx - movq %rax,%r12 - addq 72+16(%rbp),%rcx - andq %r11,%r12 - rorxq $41,%r11,%r13 - rorxq $18,%r11,%rdi - leaq (%rdx,%r14,1),%rdx - leaq (%rcx,%r12,1),%rcx - andnq %rbx,%r11,%r12 - xorq %rdi,%r13 - rorxq $14,%r11,%r14 - leaq (%rcx,%r12,1),%rcx - xorq %r14,%r13 - movq %rdx,%rdi - rorxq $39,%rdx,%r12 - leaq (%rcx,%r13,1),%rcx - xorq %r8,%rdi - rorxq $34,%rdx,%r14 - rorxq $28,%rdx,%r13 - leaq (%r10,%rcx,1),%r10 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %r8,%r15 - xorq %r13,%r14 - leaq (%rcx,%r15,1),%rcx - movq %r11,%r12 - addq 96+16(%rbp),%rbx - andq %r10,%r12 - rorxq $41,%r10,%r13 - rorxq $18,%r10,%r15 - leaq (%rcx,%r14,1),%rcx - leaq (%rbx,%r12,1),%rbx - andnq %rax,%r10,%r12 - xorq %r15,%r13 - rorxq $14,%r10,%r14 - leaq (%rbx,%r12,1),%rbx - xorq %r14,%r13 - movq %rcx,%r15 - rorxq $39,%rcx,%r12 - leaq (%rbx,%r13,1),%rbx - xorq %rdx,%r15 - rorxq $34,%rcx,%r14 - rorxq $28,%rcx,%r13 - leaq (%r9,%rbx,1),%r9 - andq %r15,%rdi - xorq %r12,%r14 - xorq %rdx,%rdi - xorq %r13,%r14 - leaq (%rbx,%rdi,1),%rbx - movq %r10,%r12 - addq 104+16(%rbp),%rax - andq %r9,%r12 - rorxq $41,%r9,%r13 - rorxq $18,%r9,%rdi - leaq (%rbx,%r14,1),%rbx - leaq (%rax,%r12,1),%rax - andnq %r11,%r9,%r12 - xorq %rdi,%r13 - rorxq $14,%r9,%r14 - leaq (%rax,%r12,1),%rax - xorq %r14,%r13 - movq %rbx,%rdi - rorxq $39,%rbx,%r12 - leaq (%rax,%r13,1),%rax - xorq %rcx,%rdi - rorxq $34,%rbx,%r14 - rorxq $28,%rbx,%r13 - leaq (%r8,%rax,1),%r8 - andq %rdi,%r15 - xorq %r12,%r14 - xorq %rcx,%r15 - xorq %r13,%r14 - leaq (%rax,%r15,1),%rax - movq %r9,%r12 - leaq -128(%rbp),%rbp - cmpq %rsp,%rbp - jae L$ower_avx2 - - movq 1280(%rsp),%rdi - addq %r14,%rax - - leaq 1152(%rsp),%rsp - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - leaq 256(%rsi),%rsi - addq 48(%rdi),%r10 - movq %rsi,%r12 - addq 56(%rdi),%r11 - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - cmoveq %rsp,%r12 - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - - jbe L$oop_avx2 - leaq (%rsp),%rbp - -L$done_avx2: - leaq (%rbp),%rsp - movq 128+24(%rsp),%rsi - vzeroupper - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_avx2: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-macosx-gas/whrlpool/wp-x86_64.s b/deps/openssl/asm/x64-macosx-gas/whrlpool/wp-x86_64.s deleted file mode 100644 index ad43b5a1b35149..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/whrlpool/wp-x86_64.s +++ /dev/null @@ -1,861 +0,0 @@ -.text - -.globl _whirlpool_block - -.p2align 4 -_whirlpool_block: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movq %rsp,%r11 - subq $128+40,%rsp - andq $-64,%rsp - - leaq 128(%rsp),%r10 - movq %rdi,0(%r10) - movq %rsi,8(%r10) - movq %rdx,16(%r10) - movq %r11,32(%r10) -L$prologue: - - movq %r10,%rbx - leaq L$table(%rip),%rbp - - xorq %rcx,%rcx - xorq %rdx,%rdx - movq 0(%rdi),%r8 - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 -L$outerloop: - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - xorq %rsi,%rsi - movq %rsi,24(%rbx) - jmp L$round -.p2align 4 -L$round: - movq 4096(%rbp,%rsi,8),%r8 - movl 0(%rsp),%eax - movl 4(%rsp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - movq 7(%rbp,%rdi,8),%r9 - movl 0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 6(%rbp,%rsi,8),%r10 - movq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 4(%rbp,%rsi,8),%r12 - movq 3(%rbp,%rdi,8),%r13 - movl 0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - movq 2(%rbp,%rsi,8),%r14 - movq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - movl 56+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - movl 56+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - xorq 7(%rbp,%rdi,8),%r9 - movl 64+0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r10 - xorq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r12 - xorq 3(%rbp,%rdi,8),%r13 - movl 64+0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r14 - xorq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 64+8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 64+8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 64+16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 64+16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 64+24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 64+24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 64+32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 64+32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 64+40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 64+40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 64+48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 64+48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - leaq 128(%rsp),%rbx - movq 24(%rbx),%rsi - addq $1,%rsi - cmpq $10,%rsi - je L$roundsdone - - movq %rsi,24(%rbx) - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - jmp L$round -.p2align 4 -L$roundsdone: - movq 0(%rbx),%rdi - movq 8(%rbx),%rsi - movq 16(%rbx),%rax - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - xorq 0(%rdi),%r8 - xorq 8(%rdi),%r9 - xorq 16(%rdi),%r10 - xorq 24(%rdi),%r11 - xorq 32(%rdi),%r12 - xorq 40(%rdi),%r13 - xorq 48(%rdi),%r14 - xorq 56(%rdi),%r15 - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rsi),%rsi - subq $1,%rax - jz L$alldone - movq %rsi,8(%rbx) - movq %rax,16(%rbx) - jmp L$outerloop -L$alldone: - movq 32(%rbx),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 6 - -L$table: -.byte 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s b/deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s deleted file mode 100644 index 7075cf80d3015b..00000000000000 --- a/deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s +++ /dev/null @@ -1,275 +0,0 @@ - -.private_extern _OPENSSL_cpuid_setup -.mod_init_func - .p2align 3 - .quad _OPENSSL_cpuid_setup - -.private_extern _OPENSSL_ia32cap_P -.comm _OPENSSL_ia32cap_P,16,2 - -.text - -.globl _OPENSSL_atomic_add - -.p2align 4 -_OPENSSL_atomic_add: - movl (%rdi),%eax -L$spin: leaq (%rsi,%rax,1),%r8 -.byte 0xf0 - cmpxchgl %r8d,(%rdi) - jne L$spin - movl %r8d,%eax -.byte 0x48,0x98 - .byte 0xf3,0xc3 - - -.globl _OPENSSL_rdtsc - -.p2align 4 -_OPENSSL_rdtsc: - rdtsc - shlq $32,%rdx - orq %rdx,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_ia32_cpuid - -.p2align 4 -_OPENSSL_ia32_cpuid: - movq %rbx,%r8 - - xorl %eax,%eax - movl %eax,8(%rdi) - cpuid - movl %eax,%r11d - - xorl %eax,%eax - cmpl $0x756e6547,%ebx - setne %al - movl %eax,%r9d - cmpl $0x49656e69,%edx - setne %al - orl %eax,%r9d - cmpl $0x6c65746e,%ecx - setne %al - orl %eax,%r9d - jz L$intel - - cmpl $0x68747541,%ebx - setne %al - movl %eax,%r10d - cmpl $0x69746E65,%edx - setne %al - orl %eax,%r10d - cmpl $0x444D4163,%ecx - setne %al - orl %eax,%r10d - jnz L$intel - - - movl $0x80000000,%eax - cpuid - cmpl $0x80000001,%eax - jb L$intel - movl %eax,%r10d - movl $0x80000001,%eax - cpuid - orl %ecx,%r9d - andl $0x00000801,%r9d - - cmpl $0x80000008,%r10d - jb L$intel - - movl $0x80000008,%eax - cpuid - movzbq %cl,%r10 - incq %r10 - - movl $1,%eax - cpuid - btl $28,%edx - jnc L$generic - shrl $16,%ebx - cmpb %r10b,%bl - ja L$generic - andl $0xefffffff,%edx - jmp L$generic - -L$intel: - cmpl $4,%r11d - movl $-1,%r10d - jb L$nocacheinfo - - movl $4,%eax - movl $0,%ecx - cpuid - movl %eax,%r10d - shrl $14,%r10d - andl $0xfff,%r10d - -L$nocacheinfo: - movl $1,%eax - cpuid - andl $0xbfefffff,%edx - cmpl $0,%r9d - jne L$notintel - orl $0x40000000,%edx - andb $15,%ah - cmpb $15,%ah - jne L$notP4 - orl $0x00100000,%edx -L$notP4: - cmpb $6,%ah - jne L$notintel - andl $0x0fff0ff0,%eax - cmpl $0x00050670,%eax - je L$knights - cmpl $0x00080650,%eax - jne L$notintel -L$knights: - andl $0xfbffffff,%ecx - -L$notintel: - btl $28,%edx - jnc L$generic - andl $0xefffffff,%edx - cmpl $0,%r10d - je L$generic - - orl $0x10000000,%edx - shrl $16,%ebx - cmpb $1,%bl - ja L$generic - andl $0xefffffff,%edx -L$generic: - andl $0x00000800,%r9d - andl $0xfffff7ff,%ecx - orl %ecx,%r9d - - movl %edx,%r10d - - cmpl $7,%r11d - jb L$no_extended_info - movl $7,%eax - xorl %ecx,%ecx - cpuid - btl $26,%r9d - jc L$notknights - andl $0xfff7ffff,%ebx -L$notknights: - movl %ebx,8(%rdi) -L$no_extended_info: - - btl $27,%r9d - jnc L$clear_avx - xorl %ecx,%ecx -.byte 0x0f,0x01,0xd0 - andl $6,%eax - cmpl $6,%eax - je L$done -L$clear_avx: - movl $0xefffe7ff,%eax - andl %eax,%r9d - andl $0xffffffdf,8(%rdi) -L$done: - shlq $32,%r9 - movl %r10d,%eax - movq %r8,%rbx - orq %r9,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_cleanse - -.p2align 4 -_OPENSSL_cleanse: - xorq %rax,%rax - cmpq $15,%rsi - jae L$ot - cmpq $0,%rsi - je L$ret -L$ittle: - movb %al,(%rdi) - subq $1,%rsi - leaq 1(%rdi),%rdi - jnz L$ittle -L$ret: - .byte 0xf3,0xc3 -.p2align 4 -L$ot: - testq $7,%rdi - jz L$aligned - movb %al,(%rdi) - leaq -1(%rsi),%rsi - leaq 1(%rdi),%rdi - jmp L$ot -L$aligned: - movq %rax,(%rdi) - leaq -8(%rsi),%rsi - testq $-8,%rsi - leaq 8(%rdi),%rdi - jnz L$aligned - cmpq $0,%rsi - jne L$ittle - .byte 0xf3,0xc3 - -.globl _OPENSSL_wipe_cpu - -.p2align 4 -_OPENSSL_wipe_cpu: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - pxor %xmm10,%xmm10 - pxor %xmm11,%xmm11 - pxor %xmm12,%xmm12 - pxor %xmm13,%xmm13 - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - xorq %rcx,%rcx - xorq %rdx,%rdx - xorq %rsi,%rsi - xorq %rdi,%rdi - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - leaq 8(%rsp),%rax - .byte 0xf3,0xc3 - -.globl _OPENSSL_ia32_rdrand - -.p2align 4 -_OPENSSL_ia32_rdrand: - movl $8,%ecx -L$oop_rdrand: -.byte 72,15,199,240 - jc L$break_rdrand - loop L$oop_rdrand -L$break_rdrand: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_ia32_rdseed - -.p2align 4 -_OPENSSL_ia32_rdseed: - movl $8,%ecx -L$oop_rdseed: -.byte 72,15,199,248 - jc L$break_rdseed - loop L$oop_rdseed -L$break_rdseed: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm deleted file mode 100644 index 64f07ad589a53d..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm +++ /dev/null @@ -1,2870 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -ALIGN 16 -_x86_64_AES_encrypt PROC PRIVATE - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - - mov r13d,DWORD PTR[240+r15] - sub r13d,1 - jmp $L$enc_loop -ALIGN 16 -$L$enc_loop:: - - movzx esi,al - movzx edi,bl - movzx ebp,cl - mov r10d,DWORD PTR[rsi*8+r14] - mov r11d,DWORD PTR[rdi*8+r14] - mov r12d,DWORD PTR[rbp*8+r14] - - movzx esi,bh - movzx edi,ch - movzx ebp,dl - xor r10d,DWORD PTR[3+rsi*8+r14] - xor r11d,DWORD PTR[3+rdi*8+r14] - mov r8d,DWORD PTR[rbp*8+r14] - - movzx esi,dh - shr ecx,16 - movzx ebp,ah - xor r12d,DWORD PTR[3+rsi*8+r14] - shr edx,16 - xor r8d,DWORD PTR[3+rbp*8+r14] - - shr ebx,16 - lea r15,QWORD PTR[16+r15] - shr eax,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - xor r10d,DWORD PTR[2+rsi*8+r14] - xor r11d,DWORD PTR[2+rdi*8+r14] - xor r12d,DWORD PTR[2+rbp*8+r14] - - movzx esi,dh - movzx edi,ah - movzx ebp,bl - xor r10d,DWORD PTR[1+rsi*8+r14] - xor r11d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[2+rbp*8+r14] - - mov edx,DWORD PTR[12+r15] - movzx edi,bh - movzx ebp,ch - mov eax,DWORD PTR[r15] - xor r12d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[1+rbp*8+r14] - - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d - sub r13d,1 - jnz $L$enc_loop - movzx esi,al - movzx edi,bl - movzx ebp,cl - movzx r10d,BYTE PTR[2+rsi*8+r14] - movzx r11d,BYTE PTR[2+rdi*8+r14] - movzx r12d,BYTE PTR[2+rbp*8+r14] - - movzx esi,dl - movzx edi,bh - movzx ebp,ch - movzx r8d,BYTE PTR[2+rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - mov ebp,DWORD PTR[rbp*8+r14] - - and edi,00000ff00h - and ebp,00000ff00h - - xor r10d,edi - xor r11d,ebp - shr ecx,16 - - movzx esi,dh - movzx edi,ah - shr edx,16 - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - - and esi,00000ff00h - and edi,00000ff00h - shr ebx,16 - xor r12d,esi - xor r8d,edi - shr eax,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - mov ebp,DWORD PTR[rbp*8+r14] - - and esi,000ff0000h - and edi,000ff0000h - and ebp,000ff0000h - - xor r10d,esi - xor r11d,edi - xor r12d,ebp - - movzx esi,bl - movzx edi,dh - movzx ebp,ah - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[2+rdi*8+r14] - mov ebp,DWORD PTR[2+rbp*8+r14] - - and esi,000ff0000h - and edi,0ff000000h - and ebp,0ff000000h - - xor r8d,esi - xor r10d,edi - xor r11d,ebp - - movzx esi,bh - movzx edi,ch - mov edx,DWORD PTR[((16+12))+r15] - mov esi,DWORD PTR[2+rsi*8+r14] - mov edi,DWORD PTR[2+rdi*8+r14] - mov eax,DWORD PTR[((16+0))+r15] - - and esi,0ff000000h - and edi,0ff000000h - - xor r12d,esi - xor r8d,edi - - mov ebx,DWORD PTR[((16+4))+r15] - mov ecx,DWORD PTR[((16+8))+r15] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d -DB 0f3h,0c3h -_x86_64_AES_encrypt ENDP - -ALIGN 16 -_x86_64_AES_encrypt_compact PROC PRIVATE - lea r8,QWORD PTR[128+r14] - mov edi,DWORD PTR[((0-128))+r8] - mov ebp,DWORD PTR[((32-128))+r8] - mov r10d,DWORD PTR[((64-128))+r8] - mov r11d,DWORD PTR[((96-128))+r8] - mov edi,DWORD PTR[((128-128))+r8] - mov ebp,DWORD PTR[((160-128))+r8] - mov r10d,DWORD PTR[((192-128))+r8] - mov r11d,DWORD PTR[((224-128))+r8] - jmp $L$enc_loop_compact -ALIGN 16 -$L$enc_loop_compact:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - lea r15,QWORD PTR[16+r15] - movzx r10d,al - movzx r11d,bl - movzx r12d,cl - movzx r8d,dl - movzx esi,bh - movzx edi,ch - shr ecx,16 - movzx ebp,dh - movzx r10d,BYTE PTR[r10*1+r14] - movzx r11d,BYTE PTR[r11*1+r14] - movzx r12d,BYTE PTR[r12*1+r14] - movzx r8d,BYTE PTR[r8*1+r14] - - movzx r9d,BYTE PTR[rsi*1+r14] - movzx esi,ah - movzx r13d,BYTE PTR[rdi*1+r14] - movzx edi,cl - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - - shl r9d,8 - shr edx,16 - shl r13d,8 - xor r10d,r9d - shr eax,16 - movzx r9d,dl - shr ebx,16 - xor r11d,r13d - shl ebp,8 - movzx r13d,al - movzx edi,BYTE PTR[rdi*1+r14] - xor r12d,ebp - - shl esi,8 - movzx ebp,bl - shl edi,16 - xor r8d,esi - movzx r9d,BYTE PTR[r9*1+r14] - movzx esi,dh - movzx r13d,BYTE PTR[r13*1+r14] - xor r10d,edi - - shr ecx,8 - movzx edi,ah - shl r9d,16 - shr ebx,8 - shl r13d,16 - xor r11d,r9d - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx edx,BYTE PTR[rcx*1+r14] - movzx ecx,BYTE PTR[rbx*1+r14] - - shl ebp,16 - xor r12d,r13d - shl esi,24 - xor r8d,ebp - shl edi,24 - xor r10d,esi - shl edx,24 - xor r11d,edi - shl ecx,24 - mov eax,r10d - mov ebx,r11d - xor ecx,r12d - xor edx,r8d - cmp r15,QWORD PTR[16+rsp] - je $L$enc_compact_done - mov r10d,080808080h - mov r11d,080808080h - and r10d,eax - and r11d,ebx - mov esi,r10d - mov edi,r11d - shr r10d,7 - lea r8d,DWORD PTR[rax*1+rax] - shr r11d,7 - lea r9d,DWORD PTR[rbx*1+rbx] - sub esi,r10d - sub edi,r11d - and r8d,0fefefefeh - and r9d,0fefefefeh - and esi,01b1b1b1bh - and edi,01b1b1b1bh - mov r10d,eax - mov r11d,ebx - xor r8d,esi - xor r9d,edi - - xor eax,r8d - xor ebx,r9d - mov r12d,080808080h - rol eax,24 - mov ebp,080808080h - rol ebx,24 - and r12d,ecx - and ebp,edx - xor eax,r8d - xor ebx,r9d - mov esi,r12d - ror r10d,16 - mov edi,ebp - ror r11d,16 - lea r8d,DWORD PTR[rcx*1+rcx] - shr r12d,7 - xor eax,r10d - shr ebp,7 - xor ebx,r11d - ror r10d,8 - lea r9d,DWORD PTR[rdx*1+rdx] - ror r11d,8 - sub esi,r12d - sub edi,ebp - xor eax,r10d - xor ebx,r11d - - and r8d,0fefefefeh - and r9d,0fefefefeh - and esi,01b1b1b1bh - and edi,01b1b1b1bh - mov r12d,ecx - mov ebp,edx - xor r8d,esi - xor r9d,edi - - ror r12d,16 - xor ecx,r8d - ror ebp,16 - xor edx,r9d - rol ecx,24 - mov esi,DWORD PTR[r14] - rol edx,24 - xor ecx,r8d - mov edi,DWORD PTR[64+r14] - xor edx,r9d - mov r8d,DWORD PTR[128+r14] - xor ecx,r12d - ror r12d,8 - xor edx,ebp - ror ebp,8 - xor ecx,r12d - mov r9d,DWORD PTR[192+r14] - xor edx,ebp - jmp $L$enc_loop_compact -ALIGN 16 -$L$enc_compact_done:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] -DB 0f3h,0c3h -_x86_64_AES_encrypt_compact ENDP -PUBLIC AES_encrypt - -ALIGN 16 -PUBLIC asm_AES_encrypt - -asm_AES_encrypt:: -AES_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - - mov r10,rsp - lea rcx,QWORD PTR[((-63))+rdx] - and rsp,-64 - sub rcx,rsp - neg rcx - and rcx,03c0h - sub rsp,rcx - sub rsp,32 - - mov QWORD PTR[16+rsp],rsi - mov QWORD PTR[24+rsp],r10 -$L$enc_prologue:: - - mov r15,rdx - mov r13d,DWORD PTR[240+r15] - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - - shl r13d,4 - lea rbp,QWORD PTR[r13*1+r15] - mov QWORD PTR[rsp],r15 - mov QWORD PTR[8+rsp],rbp - - - lea r14,QWORD PTR[(($L$AES_Te+2048))] - lea rbp,QWORD PTR[768+rsp] - sub rbp,r14 - and rbp,0300h - lea r14,QWORD PTR[rbp*1+r14] - - call _x86_64_AES_encrypt_compact - - mov r9,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_encrypt:: -AES_encrypt ENDP - -ALIGN 16 -_x86_64_AES_decrypt PROC PRIVATE - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - - mov r13d,DWORD PTR[240+r15] - sub r13d,1 - jmp $L$dec_loop -ALIGN 16 -$L$dec_loop:: - - movzx esi,al - movzx edi,bl - movzx ebp,cl - mov r10d,DWORD PTR[rsi*8+r14] - mov r11d,DWORD PTR[rdi*8+r14] - mov r12d,DWORD PTR[rbp*8+r14] - - movzx esi,dh - movzx edi,ah - movzx ebp,dl - xor r10d,DWORD PTR[3+rsi*8+r14] - xor r11d,DWORD PTR[3+rdi*8+r14] - mov r8d,DWORD PTR[rbp*8+r14] - - movzx esi,bh - shr eax,16 - movzx ebp,ch - xor r12d,DWORD PTR[3+rsi*8+r14] - shr edx,16 - xor r8d,DWORD PTR[3+rbp*8+r14] - - shr ebx,16 - lea r15,QWORD PTR[16+r15] - shr ecx,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - xor r10d,DWORD PTR[2+rsi*8+r14] - xor r11d,DWORD PTR[2+rdi*8+r14] - xor r12d,DWORD PTR[2+rbp*8+r14] - - movzx esi,bh - movzx edi,ch - movzx ebp,bl - xor r10d,DWORD PTR[1+rsi*8+r14] - xor r11d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[2+rbp*8+r14] - - movzx esi,dh - mov edx,DWORD PTR[12+r15] - movzx ebp,ah - xor r12d,DWORD PTR[1+rsi*8+r14] - mov eax,DWORD PTR[r15] - xor r8d,DWORD PTR[1+rbp*8+r14] - - xor eax,r10d - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - xor ecx,r12d - xor ebx,r11d - xor edx,r8d - sub r13d,1 - jnz $L$dec_loop - lea r14,QWORD PTR[2048+r14] - movzx esi,al - movzx edi,bl - movzx ebp,cl - movzx r10d,BYTE PTR[rsi*1+r14] - movzx r11d,BYTE PTR[rdi*1+r14] - movzx r12d,BYTE PTR[rbp*1+r14] - - movzx esi,dl - movzx edi,dh - movzx ebp,ah - movzx r8d,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl edi,8 - shl ebp,8 - - xor r10d,edi - xor r11d,ebp - shr edx,16 - - movzx esi,bh - movzx edi,ch - shr eax,16 - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - - shl esi,8 - shl edi,8 - shr ebx,16 - xor r12d,esi - xor r8d,edi - shr ecx,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl esi,16 - shl edi,16 - shl ebp,16 - - xor r10d,esi - xor r11d,edi - xor r12d,ebp - - movzx esi,bl - movzx edi,bh - movzx ebp,ch - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl esi,16 - shl edi,24 - shl ebp,24 - - xor r8d,esi - xor r10d,edi - xor r11d,ebp - - movzx esi,dh - movzx edi,ah - mov edx,DWORD PTR[((16+12))+r15] - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - mov eax,DWORD PTR[((16+0))+r15] - - shl esi,24 - shl edi,24 - - xor r12d,esi - xor r8d,edi - - mov ebx,DWORD PTR[((16+4))+r15] - mov ecx,DWORD PTR[((16+8))+r15] - lea r14,QWORD PTR[((-2048))+r14] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d -DB 0f3h,0c3h -_x86_64_AES_decrypt ENDP - -ALIGN 16 -_x86_64_AES_decrypt_compact PROC PRIVATE - lea r8,QWORD PTR[128+r14] - mov edi,DWORD PTR[((0-128))+r8] - mov ebp,DWORD PTR[((32-128))+r8] - mov r10d,DWORD PTR[((64-128))+r8] - mov r11d,DWORD PTR[((96-128))+r8] - mov edi,DWORD PTR[((128-128))+r8] - mov ebp,DWORD PTR[((160-128))+r8] - mov r10d,DWORD PTR[((192-128))+r8] - mov r11d,DWORD PTR[((224-128))+r8] - jmp $L$dec_loop_compact - -ALIGN 16 -$L$dec_loop_compact:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - lea r15,QWORD PTR[16+r15] - movzx r10d,al - movzx r11d,bl - movzx r12d,cl - movzx r8d,dl - movzx esi,dh - movzx edi,ah - shr edx,16 - movzx ebp,bh - movzx r10d,BYTE PTR[r10*1+r14] - movzx r11d,BYTE PTR[r11*1+r14] - movzx r12d,BYTE PTR[r12*1+r14] - movzx r8d,BYTE PTR[r8*1+r14] - - movzx r9d,BYTE PTR[rsi*1+r14] - movzx esi,ch - movzx r13d,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - - shr ecx,16 - shl r13d,8 - shl r9d,8 - movzx edi,cl - shr eax,16 - xor r10d,r9d - shr ebx,16 - movzx r9d,dl - - shl ebp,8 - xor r11d,r13d - shl esi,8 - movzx r13d,al - movzx edi,BYTE PTR[rdi*1+r14] - xor r12d,ebp - movzx ebp,bl - - shl edi,16 - xor r8d,esi - movzx r9d,BYTE PTR[r9*1+r14] - movzx esi,bh - movzx ebp,BYTE PTR[rbp*1+r14] - xor r10d,edi - movzx r13d,BYTE PTR[r13*1+r14] - movzx edi,ch - - shl ebp,16 - shl r9d,16 - shl r13d,16 - xor r8d,ebp - movzx ebp,dh - xor r11d,r9d - shr eax,8 - xor r12d,r13d - - movzx esi,BYTE PTR[rsi*1+r14] - movzx ebx,BYTE PTR[rdi*1+r14] - movzx ecx,BYTE PTR[rbp*1+r14] - movzx edx,BYTE PTR[rax*1+r14] - - mov eax,r10d - shl esi,24 - shl ebx,24 - shl ecx,24 - xor eax,esi - shl edx,24 - xor ebx,r11d - xor ecx,r12d - xor edx,r8d - cmp r15,QWORD PTR[16+rsp] - je $L$dec_compact_done - - mov rsi,QWORD PTR[((256+0))+r14] - shl rbx,32 - shl rdx,32 - mov rdi,QWORD PTR[((256+8))+r14] - or rax,rbx - or rcx,rdx - mov rbp,QWORD PTR[((256+16))+r14] - mov r9,rsi - mov r12,rsi - and r9,rax - and r12,rcx - mov rbx,r9 - mov rdx,r12 - shr r9,7 - lea r8,QWORD PTR[rax*1+rax] - shr r12,7 - lea r11,QWORD PTR[rcx*1+rcx] - sub rbx,r9 - sub rdx,r12 - and r8,rdi - and r11,rdi - and rbx,rbp - and rdx,rbp - xor r8,rbx - xor r11,rdx - mov r10,rsi - mov r13,rsi - - and r10,r8 - and r13,r11 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - lea r9,QWORD PTR[r8*1+r8] - shr r13,7 - lea r12,QWORD PTR[r11*1+r11] - sub rbx,r10 - sub rdx,r13 - and r9,rdi - and r12,rdi - and rbx,rbp - and rdx,rbp - xor r9,rbx - xor r12,rdx - mov r10,rsi - mov r13,rsi - - and r10,r9 - and r13,r12 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - xor r8,rax - shr r13,7 - xor r11,rcx - sub rbx,r10 - sub rdx,r13 - lea r10,QWORD PTR[r9*1+r9] - lea r13,QWORD PTR[r12*1+r12] - xor r9,rax - xor r12,rcx - and r10,rdi - and r13,rdi - and rbx,rbp - and rdx,rbp - xor r10,rbx - xor r13,rdx - - xor rax,r10 - xor rcx,r13 - xor r8,r10 - xor r11,r13 - mov rbx,rax - mov rdx,rcx - xor r9,r10 - shr rbx,32 - xor r12,r13 - shr rdx,32 - xor r10,r8 - rol eax,8 - xor r13,r11 - rol ecx,8 - xor r10,r9 - rol ebx,8 - xor r13,r12 - - rol edx,8 - xor eax,r10d - shr r10,32 - xor ecx,r13d - shr r13,32 - xor ebx,r10d - xor edx,r13d - - mov r10,r8 - rol r8d,24 - mov r13,r11 - rol r11d,24 - shr r10,32 - xor eax,r8d - shr r13,32 - xor ecx,r11d - rol r10d,24 - mov r8,r9 - rol r13d,24 - mov r11,r12 - shr r8,32 - xor ebx,r10d - shr r11,32 - xor edx,r13d - - mov rsi,QWORD PTR[r14] - rol r9d,16 - mov rdi,QWORD PTR[64+r14] - rol r12d,16 - mov rbp,QWORD PTR[128+r14] - rol r8d,16 - mov r10,QWORD PTR[192+r14] - xor eax,r9d - rol r11d,16 - xor ecx,r12d - mov r13,QWORD PTR[256+r14] - xor ebx,r8d - xor edx,r11d - jmp $L$dec_loop_compact -ALIGN 16 -$L$dec_compact_done:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] -DB 0f3h,0c3h -_x86_64_AES_decrypt_compact ENDP -PUBLIC AES_decrypt - -ALIGN 16 -PUBLIC asm_AES_decrypt - -asm_AES_decrypt:: -AES_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - - mov r10,rsp - lea rcx,QWORD PTR[((-63))+rdx] - and rsp,-64 - sub rcx,rsp - neg rcx - and rcx,03c0h - sub rsp,rcx - sub rsp,32 - - mov QWORD PTR[16+rsp],rsi - mov QWORD PTR[24+rsp],r10 -$L$dec_prologue:: - - mov r15,rdx - mov r13d,DWORD PTR[240+r15] - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - - shl r13d,4 - lea rbp,QWORD PTR[r13*1+r15] - mov QWORD PTR[rsp],r15 - mov QWORD PTR[8+rsp],rbp - - - lea r14,QWORD PTR[(($L$AES_Td+2048))] - lea rbp,QWORD PTR[768+rsp] - sub rbp,r14 - and rbp,0300h - lea r14,QWORD PTR[rbp*1+r14] - shr rbp,3 - add r14,rbp - - call _x86_64_AES_decrypt_compact - - mov r9,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_decrypt:: -AES_decrypt ENDP -PUBLIC private_AES_set_encrypt_key - -ALIGN 16 -private_AES_set_encrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_AES_set_encrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,8 -$L$enc_key_prologue:: - - call _x86_64_AES_set_encrypt_key - - mov rbp,QWORD PTR[40+rsp] - mov rbx,QWORD PTR[48+rsp] - add rsp,56 -$L$enc_key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_AES_set_encrypt_key:: -private_AES_set_encrypt_key ENDP - - -ALIGN 16 -_x86_64_AES_set_encrypt_key PROC PRIVATE - mov ecx,esi - mov rsi,rdi - mov rdi,rdx - - test rsi,-1 - jz $L$badpointer - test rdi,-1 - jz $L$badpointer - - lea rbp,QWORD PTR[$L$AES_Te] - lea rbp,QWORD PTR[((2048+128))+rbp] - - - mov eax,DWORD PTR[((0-128))+rbp] - mov ebx,DWORD PTR[((32-128))+rbp] - mov r8d,DWORD PTR[((64-128))+rbp] - mov edx,DWORD PTR[((96-128))+rbp] - mov eax,DWORD PTR[((128-128))+rbp] - mov ebx,DWORD PTR[((160-128))+rbp] - mov r8d,DWORD PTR[((192-128))+rbp] - mov edx,DWORD PTR[((224-128))+rbp] - - cmp ecx,128 - je $L$10rounds - cmp ecx,192 - je $L$12rounds - cmp ecx,256 - je $L$14rounds - mov rax,-2 - jmp $L$exit - -$L$10rounds:: - mov rax,QWORD PTR[rsi] - mov rdx,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$10shortcut -ALIGN 4 -$L$10loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[12+rdi] -$L$10shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[16+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[20+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[24+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[28+rdi],eax - add ecx,1 - lea rdi,QWORD PTR[16+rdi] - cmp ecx,10 - jl $L$10loop - - mov DWORD PTR[80+rdi],10 - xor rax,rax - jmp $L$exit - -$L$12rounds:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rdx,QWORD PTR[16+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$12shortcut -ALIGN 4 -$L$12loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[20+rdi] -$L$12shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[24+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[28+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[32+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[36+rdi],eax - - cmp ecx,7 - je $L$12break - add ecx,1 - - xor eax,DWORD PTR[16+rdi] - mov DWORD PTR[40+rdi],eax - xor eax,DWORD PTR[20+rdi] - mov DWORD PTR[44+rdi],eax - - lea rdi,QWORD PTR[24+rdi] - jmp $L$12loop -$L$12break:: - mov DWORD PTR[72+rdi],12 - xor rax,rax - jmp $L$exit - -$L$14rounds:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rcx,QWORD PTR[16+rsi] - mov rdx,QWORD PTR[24+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$14shortcut -ALIGN 4 -$L$14loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[28+rdi] -$L$14shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[32+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[36+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[40+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[44+rdi],eax - - cmp ecx,6 - je $L$14break - add ecx,1 - - mov edx,eax - mov eax,DWORD PTR[16+rdi] - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - shl ebx,8 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,16 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,24 - xor eax,ebx - - mov DWORD PTR[48+rdi],eax - xor eax,DWORD PTR[20+rdi] - mov DWORD PTR[52+rdi],eax - xor eax,DWORD PTR[24+rdi] - mov DWORD PTR[56+rdi],eax - xor eax,DWORD PTR[28+rdi] - mov DWORD PTR[60+rdi],eax - - lea rdi,QWORD PTR[32+rdi] - jmp $L$14loop -$L$14break:: - mov DWORD PTR[48+rdi],14 - xor rax,rax - jmp $L$exit - -$L$badpointer:: - mov rax,-1 -$L$exit:: -DB 0f3h,0c3h -_x86_64_AES_set_encrypt_key ENDP -PUBLIC private_AES_set_decrypt_key - -ALIGN 16 -private_AES_set_decrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_AES_set_decrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - push rdx -$L$dec_key_prologue:: - - call _x86_64_AES_set_encrypt_key - mov r8,QWORD PTR[rsp] - cmp eax,0 - jne $L$abort - - mov r14d,DWORD PTR[240+r8] - xor rdi,rdi - lea rcx,QWORD PTR[r14*4+rdi] - mov rsi,r8 - lea rdi,QWORD PTR[rcx*4+r8] -ALIGN 4 -$L$invert:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rcx,QWORD PTR[rdi] - mov rdx,QWORD PTR[8+rdi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[rsi],rcx - mov QWORD PTR[8+rsi],rdx - lea rsi,QWORD PTR[16+rsi] - lea rdi,QWORD PTR[((-16))+rdi] - cmp rdi,rsi - jne $L$invert - - lea rax,QWORD PTR[(($L$AES_Te+2048+1024))] - - mov rsi,QWORD PTR[40+rax] - mov rdi,QWORD PTR[48+rax] - mov rbp,QWORD PTR[56+rax] - - mov r15,r8 - sub r14d,1 -ALIGN 4 -$L$permute:: - lea r15,QWORD PTR[16+r15] - mov rax,QWORD PTR[r15] - mov rcx,QWORD PTR[8+r15] - mov r9,rsi - mov r12,rsi - and r9,rax - and r12,rcx - mov rbx,r9 - mov rdx,r12 - shr r9,7 - lea r8,QWORD PTR[rax*1+rax] - shr r12,7 - lea r11,QWORD PTR[rcx*1+rcx] - sub rbx,r9 - sub rdx,r12 - and r8,rdi - and r11,rdi - and rbx,rbp - and rdx,rbp - xor r8,rbx - xor r11,rdx - mov r10,rsi - mov r13,rsi - - and r10,r8 - and r13,r11 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - lea r9,QWORD PTR[r8*1+r8] - shr r13,7 - lea r12,QWORD PTR[r11*1+r11] - sub rbx,r10 - sub rdx,r13 - and r9,rdi - and r12,rdi - and rbx,rbp - and rdx,rbp - xor r9,rbx - xor r12,rdx - mov r10,rsi - mov r13,rsi - - and r10,r9 - and r13,r12 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - xor r8,rax - shr r13,7 - xor r11,rcx - sub rbx,r10 - sub rdx,r13 - lea r10,QWORD PTR[r9*1+r9] - lea r13,QWORD PTR[r12*1+r12] - xor r9,rax - xor r12,rcx - and r10,rdi - and r13,rdi - and rbx,rbp - and rdx,rbp - xor r10,rbx - xor r13,rdx - - xor rax,r10 - xor rcx,r13 - xor r8,r10 - xor r11,r13 - mov rbx,rax - mov rdx,rcx - xor r9,r10 - shr rbx,32 - xor r12,r13 - shr rdx,32 - xor r10,r8 - rol eax,8 - xor r13,r11 - rol ecx,8 - xor r10,r9 - rol ebx,8 - xor r13,r12 - - rol edx,8 - xor eax,r10d - shr r10,32 - xor ecx,r13d - shr r13,32 - xor ebx,r10d - xor edx,r13d - - mov r10,r8 - rol r8d,24 - mov r13,r11 - rol r11d,24 - shr r10,32 - xor eax,r8d - shr r13,32 - xor ecx,r11d - rol r10d,24 - mov r8,r9 - rol r13d,24 - mov r11,r12 - shr r8,32 - xor ebx,r10d - shr r11,32 - xor edx,r13d - - - rol r9d,16 - - rol r12d,16 - - rol r8d,16 - - xor eax,r9d - rol r11d,16 - xor ecx,r12d - - xor ebx,r8d - xor edx,r11d - mov DWORD PTR[r15],eax - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - sub r14d,1 - jnz $L$permute - - xor rax,rax -$L$abort:: - mov r15,QWORD PTR[8+rsp] - mov r14,QWORD PTR[16+rsp] - mov r13,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov rbp,QWORD PTR[40+rsp] - mov rbx,QWORD PTR[48+rsp] - add rsp,56 -$L$dec_key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_AES_set_decrypt_key:: -private_AES_set_decrypt_key ENDP -PUBLIC AES_cbc_encrypt - -ALIGN 16 -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC asm_AES_cbc_encrypt - -asm_AES_cbc_encrypt:: -AES_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp rdx,0 - je $L$cbc_epilogue - pushfq - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$cbc_prologue:: - - cld - mov r9d,r9d - - lea r14,QWORD PTR[$L$AES_Te] - cmp r9,0 - jne $L$cbc_picked_te - lea r14,QWORD PTR[$L$AES_Td] -$L$cbc_picked_te:: - - mov r10d,DWORD PTR[OPENSSL_ia32cap_P] - cmp rdx,512 - jb $L$cbc_slow_prologue - test rdx,15 - jnz $L$cbc_slow_prologue - bt r10d,28 - jc $L$cbc_slow_prologue - - - lea r15,QWORD PTR[((-88-248))+rsp] - and r15,-64 - - - mov r10,r14 - lea r11,QWORD PTR[2304+r14] - mov r12,r15 - and r10,0FFFh - and r11,0FFFh - and r12,0FFFh - - cmp r12,r11 - jb $L$cbc_te_break_out - sub r12,r11 - sub r15,r12 - jmp $L$cbc_te_ok -$L$cbc_te_break_out:: - sub r12,r10 - and r12,0FFFh - add r12,320 - sub r15,r12 -ALIGN 4 -$L$cbc_te_ok:: - - xchg r15,rsp - - mov QWORD PTR[16+rsp],r15 -$L$cbc_fast_body:: - mov QWORD PTR[24+rsp],rdi - mov QWORD PTR[32+rsp],rsi - mov QWORD PTR[40+rsp],rdx - mov QWORD PTR[48+rsp],rcx - mov QWORD PTR[56+rsp],r8 - mov DWORD PTR[((80+240))+rsp],0 - mov rbp,r8 - mov rbx,r9 - mov r9,rsi - mov r8,rdi - mov r15,rcx - - mov eax,DWORD PTR[240+r15] - - mov r10,r15 - sub r10,r14 - and r10,0fffh - cmp r10,2304 - jb $L$cbc_do_ecopy - cmp r10,4096-248 - jb $L$cbc_skip_ecopy -ALIGN 4 -$L$cbc_do_ecopy:: - mov rsi,r15 - lea rdi,QWORD PTR[80+rsp] - lea r15,QWORD PTR[80+rsp] - mov ecx,240/8 - DD 090A548F3h - mov DWORD PTR[rdi],eax -$L$cbc_skip_ecopy:: - mov QWORD PTR[rsp],r15 - - mov ecx,18 -ALIGN 4 -$L$cbc_prefetch_te:: - mov r10,QWORD PTR[r14] - mov r11,QWORD PTR[32+r14] - mov r12,QWORD PTR[64+r14] - mov r13,QWORD PTR[96+r14] - lea r14,QWORD PTR[128+r14] - sub ecx,1 - jnz $L$cbc_prefetch_te - lea r14,QWORD PTR[((-2304))+r14] - - cmp rbx,0 - je $L$FAST_DECRYPT - - - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - -ALIGN 4 -$L$cbc_fast_enc_loop:: - xor eax,DWORD PTR[r8] - xor ebx,DWORD PTR[4+r8] - xor ecx,DWORD PTR[8+r8] - xor edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_encrypt - - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - sub r10,16 - test r10,-16 - mov QWORD PTR[40+rsp],r10 - jnz $L$cbc_fast_enc_loop - mov rbp,QWORD PTR[56+rsp] - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - jmp $L$cbc_fast_cleanup - - -ALIGN 16 -$L$FAST_DECRYPT:: - cmp r9,r8 - je $L$cbc_fast_dec_in_place - - mov QWORD PTR[64+rsp],rbp -ALIGN 4 -$L$cbc_fast_dec_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_decrypt - - mov rbp,QWORD PTR[64+rsp] - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[rbp] - xor ebx,DWORD PTR[4+rbp] - xor ecx,DWORD PTR[8+rbp] - xor edx,DWORD PTR[12+rbp] - mov rbp,r8 - - sub r10,16 - mov QWORD PTR[40+rsp],r10 - mov QWORD PTR[64+rsp],rbp - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - jnz $L$cbc_fast_dec_loop - mov r12,QWORD PTR[56+rsp] - mov r10,QWORD PTR[rbp] - mov r11,QWORD PTR[8+rbp] - mov QWORD PTR[r12],r10 - mov QWORD PTR[8+r12],r11 - jmp $L$cbc_fast_cleanup - -ALIGN 16 -$L$cbc_fast_dec_in_place:: - mov r10,QWORD PTR[rbp] - mov r11,QWORD PTR[8+rbp] - mov QWORD PTR[((0+64))+rsp],r10 - mov QWORD PTR[((8+64))+rsp],r11 -ALIGN 4 -$L$cbc_fast_dec_in_place_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_decrypt - - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[((0+64))+rsp] - xor ebx,DWORD PTR[((4+64))+rsp] - xor ecx,DWORD PTR[((8+64))+rsp] - xor edx,DWORD PTR[((12+64))+rsp] - - mov r11,QWORD PTR[r8] - mov r12,QWORD PTR[8+r8] - sub r10,16 - jz $L$cbc_fast_dec_in_place_done - - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - mov QWORD PTR[40+rsp],r10 - jmp $L$cbc_fast_dec_in_place_loop -$L$cbc_fast_dec_in_place_done:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - -ALIGN 4 -$L$cbc_fast_cleanup:: - cmp DWORD PTR[((80+240))+rsp],0 - lea rdi,QWORD PTR[80+rsp] - je $L$cbc_exit - mov ecx,240/8 - xor rax,rax - DD 090AB48F3h - - jmp $L$cbc_exit - - -ALIGN 16 -$L$cbc_slow_prologue:: - - lea rbp,QWORD PTR[((-88))+rsp] - and rbp,-64 - - lea r10,QWORD PTR[((-88-63))+rcx] - sub r10,rbp - neg r10 - and r10,03c0h - sub rbp,r10 - - xchg rbp,rsp - - mov QWORD PTR[16+rsp],rbp -$L$cbc_slow_body:: - - - - - mov QWORD PTR[56+rsp],r8 - mov rbp,r8 - mov rbx,r9 - mov r9,rsi - mov r8,rdi - mov r15,rcx - mov r10,rdx - - mov eax,DWORD PTR[240+r15] - mov QWORD PTR[rsp],r15 - shl eax,4 - lea rax,QWORD PTR[rax*1+r15] - mov QWORD PTR[8+rsp],rax - - - lea r14,QWORD PTR[2048+r14] - lea rax,QWORD PTR[((768-8))+rsp] - sub rax,r14 - and rax,0300h - lea r14,QWORD PTR[rax*1+r14] - - cmp rbx,0 - je $L$SLOW_DECRYPT - - - test r10,-16 - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - jz $L$cbc_slow_enc_tail - -ALIGN 4 -$L$cbc_slow_enc_loop:: - xor eax,DWORD PTR[r8] - xor ebx,DWORD PTR[4+r8] - xor ecx,DWORD PTR[8+r8] - xor edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - mov QWORD PTR[32+rsp],r9 - mov QWORD PTR[40+rsp],r10 - - call _x86_64_AES_encrypt_compact - - mov r8,QWORD PTR[24+rsp] - mov r9,QWORD PTR[32+rsp] - mov r10,QWORD PTR[40+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - sub r10,16 - test r10,-16 - jnz $L$cbc_slow_enc_loop - test r10,15 - jnz $L$cbc_slow_enc_tail - mov rbp,QWORD PTR[56+rsp] - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - jmp $L$cbc_exit - -ALIGN 4 -$L$cbc_slow_enc_tail:: - mov r11,rax - mov r12,rcx - mov rcx,r10 - mov rsi,r8 - mov rdi,r9 - DD 09066A4F3h - mov rcx,16 - sub rcx,r10 - xor rax,rax - DD 09066AAF3h - mov r8,r9 - mov r10,16 - mov rax,r11 - mov rcx,r12 - jmp $L$cbc_slow_enc_loop - -ALIGN 16 -$L$SLOW_DECRYPT:: - shr rax,3 - add r14,rax - - mov r11,QWORD PTR[rbp] - mov r12,QWORD PTR[8+rbp] - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - -ALIGN 4 -$L$cbc_slow_dec_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - mov QWORD PTR[32+rsp],r9 - mov QWORD PTR[40+rsp],r10 - - call _x86_64_AES_decrypt_compact - - mov r8,QWORD PTR[24+rsp] - mov r9,QWORD PTR[32+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[((0+64))+rsp] - xor ebx,DWORD PTR[((4+64))+rsp] - xor ecx,DWORD PTR[((8+64))+rsp] - xor edx,DWORD PTR[((12+64))+rsp] - - mov r11,QWORD PTR[r8] - mov r12,QWORD PTR[8+r8] - sub r10,16 - jc $L$cbc_slow_dec_partial - jz $L$cbc_slow_dec_done - - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - jmp $L$cbc_slow_dec_loop -$L$cbc_slow_dec_done:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - jmp $L$cbc_exit - -ALIGN 4 -$L$cbc_slow_dec_partial:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[((0+64))+rsp],eax - mov DWORD PTR[((4+64))+rsp],ebx - mov DWORD PTR[((8+64))+rsp],ecx - mov DWORD PTR[((12+64))+rsp],edx - - mov rdi,r9 - lea rsi,QWORD PTR[64+rsp] - lea rcx,QWORD PTR[16+r10] - DD 09066A4F3h - jmp $L$cbc_exit - -ALIGN 16 -$L$cbc_exit:: - mov rsi,QWORD PTR[16+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$cbc_popfq:: - popfq -$L$cbc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_cbc_encrypt:: -AES_cbc_encrypt ENDP -ALIGN 64 -$L$AES_Te:: - DD 0a56363c6h,0a56363c6h - DD 0847c7cf8h,0847c7cf8h - DD 0997777eeh,0997777eeh - DD 08d7b7bf6h,08d7b7bf6h - DD 00df2f2ffh,00df2f2ffh - DD 0bd6b6bd6h,0bd6b6bd6h - DD 0b16f6fdeh,0b16f6fdeh - DD 054c5c591h,054c5c591h - DD 050303060h,050303060h - DD 003010102h,003010102h - DD 0a96767ceh,0a96767ceh - DD 07d2b2b56h,07d2b2b56h - DD 019fefee7h,019fefee7h - DD 062d7d7b5h,062d7d7b5h - DD 0e6abab4dh,0e6abab4dh - DD 09a7676ech,09a7676ech - DD 045caca8fh,045caca8fh - DD 09d82821fh,09d82821fh - DD 040c9c989h,040c9c989h - DD 0877d7dfah,0877d7dfah - DD 015fafaefh,015fafaefh - DD 0eb5959b2h,0eb5959b2h - DD 0c947478eh,0c947478eh - DD 00bf0f0fbh,00bf0f0fbh - DD 0ecadad41h,0ecadad41h - DD 067d4d4b3h,067d4d4b3h - DD 0fda2a25fh,0fda2a25fh - DD 0eaafaf45h,0eaafaf45h - DD 0bf9c9c23h,0bf9c9c23h - DD 0f7a4a453h,0f7a4a453h - DD 0967272e4h,0967272e4h - DD 05bc0c09bh,05bc0c09bh - DD 0c2b7b775h,0c2b7b775h - DD 01cfdfde1h,01cfdfde1h - DD 0ae93933dh,0ae93933dh - DD 06a26264ch,06a26264ch - DD 05a36366ch,05a36366ch - DD 0413f3f7eh,0413f3f7eh - DD 002f7f7f5h,002f7f7f5h - DD 04fcccc83h,04fcccc83h - DD 05c343468h,05c343468h - DD 0f4a5a551h,0f4a5a551h - DD 034e5e5d1h,034e5e5d1h - DD 008f1f1f9h,008f1f1f9h - DD 0937171e2h,0937171e2h - DD 073d8d8abh,073d8d8abh - DD 053313162h,053313162h - DD 03f15152ah,03f15152ah - DD 00c040408h,00c040408h - DD 052c7c795h,052c7c795h - DD 065232346h,065232346h - DD 05ec3c39dh,05ec3c39dh - DD 028181830h,028181830h - DD 0a1969637h,0a1969637h - DD 00f05050ah,00f05050ah - DD 0b59a9a2fh,0b59a9a2fh - DD 00907070eh,00907070eh - DD 036121224h,036121224h - DD 09b80801bh,09b80801bh - DD 03de2e2dfh,03de2e2dfh - DD 026ebebcdh,026ebebcdh - DD 06927274eh,06927274eh - DD 0cdb2b27fh,0cdb2b27fh - DD 09f7575eah,09f7575eah - DD 01b090912h,01b090912h - DD 09e83831dh,09e83831dh - DD 0742c2c58h,0742c2c58h - DD 02e1a1a34h,02e1a1a34h - DD 02d1b1b36h,02d1b1b36h - DD 0b26e6edch,0b26e6edch - DD 0ee5a5ab4h,0ee5a5ab4h - DD 0fba0a05bh,0fba0a05bh - DD 0f65252a4h,0f65252a4h - DD 04d3b3b76h,04d3b3b76h - DD 061d6d6b7h,061d6d6b7h - DD 0ceb3b37dh,0ceb3b37dh - DD 07b292952h,07b292952h - DD 03ee3e3ddh,03ee3e3ddh - DD 0712f2f5eh,0712f2f5eh - DD 097848413h,097848413h - DD 0f55353a6h,0f55353a6h - DD 068d1d1b9h,068d1d1b9h - DD 000000000h,000000000h - DD 02cededc1h,02cededc1h - DD 060202040h,060202040h - DD 01ffcfce3h,01ffcfce3h - DD 0c8b1b179h,0c8b1b179h - DD 0ed5b5bb6h,0ed5b5bb6h - DD 0be6a6ad4h,0be6a6ad4h - DD 046cbcb8dh,046cbcb8dh - DD 0d9bebe67h,0d9bebe67h - DD 04b393972h,04b393972h - DD 0de4a4a94h,0de4a4a94h - DD 0d44c4c98h,0d44c4c98h - DD 0e85858b0h,0e85858b0h - DD 04acfcf85h,04acfcf85h - DD 06bd0d0bbh,06bd0d0bbh - DD 02aefefc5h,02aefefc5h - DD 0e5aaaa4fh,0e5aaaa4fh - DD 016fbfbedh,016fbfbedh - DD 0c5434386h,0c5434386h - DD 0d74d4d9ah,0d74d4d9ah - DD 055333366h,055333366h - DD 094858511h,094858511h - DD 0cf45458ah,0cf45458ah - DD 010f9f9e9h,010f9f9e9h - DD 006020204h,006020204h - DD 0817f7ffeh,0817f7ffeh - DD 0f05050a0h,0f05050a0h - DD 0443c3c78h,0443c3c78h - DD 0ba9f9f25h,0ba9f9f25h - DD 0e3a8a84bh,0e3a8a84bh - DD 0f35151a2h,0f35151a2h - DD 0fea3a35dh,0fea3a35dh - DD 0c0404080h,0c0404080h - DD 08a8f8f05h,08a8f8f05h - DD 0ad92923fh,0ad92923fh - DD 0bc9d9d21h,0bc9d9d21h - DD 048383870h,048383870h - DD 004f5f5f1h,004f5f5f1h - DD 0dfbcbc63h,0dfbcbc63h - DD 0c1b6b677h,0c1b6b677h - DD 075dadaafh,075dadaafh - DD 063212142h,063212142h - DD 030101020h,030101020h - DD 01affffe5h,01affffe5h - DD 00ef3f3fdh,00ef3f3fdh - DD 06dd2d2bfh,06dd2d2bfh - DD 04ccdcd81h,04ccdcd81h - DD 0140c0c18h,0140c0c18h - DD 035131326h,035131326h - DD 02fececc3h,02fececc3h - DD 0e15f5fbeh,0e15f5fbeh - DD 0a2979735h,0a2979735h - DD 0cc444488h,0cc444488h - DD 03917172eh,03917172eh - DD 057c4c493h,057c4c493h - DD 0f2a7a755h,0f2a7a755h - DD 0827e7efch,0827e7efch - DD 0473d3d7ah,0473d3d7ah - DD 0ac6464c8h,0ac6464c8h - DD 0e75d5dbah,0e75d5dbah - DD 02b191932h,02b191932h - DD 0957373e6h,0957373e6h - DD 0a06060c0h,0a06060c0h - DD 098818119h,098818119h - DD 0d14f4f9eh,0d14f4f9eh - DD 07fdcdca3h,07fdcdca3h - DD 066222244h,066222244h - DD 07e2a2a54h,07e2a2a54h - DD 0ab90903bh,0ab90903bh - DD 08388880bh,08388880bh - DD 0ca46468ch,0ca46468ch - DD 029eeeec7h,029eeeec7h - DD 0d3b8b86bh,0d3b8b86bh - DD 03c141428h,03c141428h - DD 079dedea7h,079dedea7h - DD 0e25e5ebch,0e25e5ebch - DD 01d0b0b16h,01d0b0b16h - DD 076dbdbadh,076dbdbadh - DD 03be0e0dbh,03be0e0dbh - DD 056323264h,056323264h - DD 04e3a3a74h,04e3a3a74h - DD 01e0a0a14h,01e0a0a14h - DD 0db494992h,0db494992h - DD 00a06060ch,00a06060ch - DD 06c242448h,06c242448h - DD 0e45c5cb8h,0e45c5cb8h - DD 05dc2c29fh,05dc2c29fh - DD 06ed3d3bdh,06ed3d3bdh - DD 0efacac43h,0efacac43h - DD 0a66262c4h,0a66262c4h - DD 0a8919139h,0a8919139h - DD 0a4959531h,0a4959531h - DD 037e4e4d3h,037e4e4d3h - DD 08b7979f2h,08b7979f2h - DD 032e7e7d5h,032e7e7d5h - DD 043c8c88bh,043c8c88bh - DD 05937376eh,05937376eh - DD 0b76d6ddah,0b76d6ddah - DD 08c8d8d01h,08c8d8d01h - DD 064d5d5b1h,064d5d5b1h - DD 0d24e4e9ch,0d24e4e9ch - DD 0e0a9a949h,0e0a9a949h - DD 0b46c6cd8h,0b46c6cd8h - DD 0fa5656ach,0fa5656ach - DD 007f4f4f3h,007f4f4f3h - DD 025eaeacfh,025eaeacfh - DD 0af6565cah,0af6565cah - DD 08e7a7af4h,08e7a7af4h - DD 0e9aeae47h,0e9aeae47h - DD 018080810h,018080810h - DD 0d5baba6fh,0d5baba6fh - DD 0887878f0h,0887878f0h - DD 06f25254ah,06f25254ah - DD 0722e2e5ch,0722e2e5ch - DD 0241c1c38h,0241c1c38h - DD 0f1a6a657h,0f1a6a657h - DD 0c7b4b473h,0c7b4b473h - DD 051c6c697h,051c6c697h - DD 023e8e8cbh,023e8e8cbh - DD 07cdddda1h,07cdddda1h - DD 09c7474e8h,09c7474e8h - DD 0211f1f3eh,0211f1f3eh - DD 0dd4b4b96h,0dd4b4b96h - DD 0dcbdbd61h,0dcbdbd61h - DD 0868b8b0dh,0868b8b0dh - DD 0858a8a0fh,0858a8a0fh - DD 0907070e0h,0907070e0h - DD 0423e3e7ch,0423e3e7ch - DD 0c4b5b571h,0c4b5b571h - DD 0aa6666cch,0aa6666cch - DD 0d8484890h,0d8484890h - DD 005030306h,005030306h - DD 001f6f6f7h,001f6f6f7h - DD 0120e0e1ch,0120e0e1ch - DD 0a36161c2h,0a36161c2h - DD 05f35356ah,05f35356ah - DD 0f95757aeh,0f95757aeh - DD 0d0b9b969h,0d0b9b969h - DD 091868617h,091868617h - DD 058c1c199h,058c1c199h - DD 0271d1d3ah,0271d1d3ah - DD 0b99e9e27h,0b99e9e27h - DD 038e1e1d9h,038e1e1d9h - DD 013f8f8ebh,013f8f8ebh - DD 0b398982bh,0b398982bh - DD 033111122h,033111122h - DD 0bb6969d2h,0bb6969d2h - DD 070d9d9a9h,070d9d9a9h - DD 0898e8e07h,0898e8e07h - DD 0a7949433h,0a7949433h - DD 0b69b9b2dh,0b69b9b2dh - DD 0221e1e3ch,0221e1e3ch - DD 092878715h,092878715h - DD 020e9e9c9h,020e9e9c9h - DD 049cece87h,049cece87h - DD 0ff5555aah,0ff5555aah - DD 078282850h,078282850h - DD 07adfdfa5h,07adfdfa5h - DD 08f8c8c03h,08f8c8c03h - DD 0f8a1a159h,0f8a1a159h - DD 080898909h,080898909h - DD 0170d0d1ah,0170d0d1ah - DD 0dabfbf65h,0dabfbf65h - DD 031e6e6d7h,031e6e6d7h - DD 0c6424284h,0c6424284h - DD 0b86868d0h,0b86868d0h - DD 0c3414182h,0c3414182h - DD 0b0999929h,0b0999929h - DD 0772d2d5ah,0772d2d5ah - DD 0110f0f1eh,0110f0f1eh - DD 0cbb0b07bh,0cbb0b07bh - DD 0fc5454a8h,0fc5454a8h - DD 0d6bbbb6dh,0d6bbbb6dh - DD 03a16162ch,03a16162ch -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h - DD 000000001h,000000002h,000000004h,000000008h - DD 000000010h,000000020h,000000040h,000000080h - DD 00000001bh,000000036h,080808080h,080808080h - DD 0fefefefeh,0fefefefeh,01b1b1b1bh,01b1b1b1bh -ALIGN 64 -$L$AES_Td:: - DD 050a7f451h,050a7f451h - DD 05365417eh,05365417eh - DD 0c3a4171ah,0c3a4171ah - DD 0965e273ah,0965e273ah - DD 0cb6bab3bh,0cb6bab3bh - DD 0f1459d1fh,0f1459d1fh - DD 0ab58faach,0ab58faach - DD 09303e34bh,09303e34bh - DD 055fa3020h,055fa3020h - DD 0f66d76adh,0f66d76adh - DD 09176cc88h,09176cc88h - DD 0254c02f5h,0254c02f5h - DD 0fcd7e54fh,0fcd7e54fh - DD 0d7cb2ac5h,0d7cb2ac5h - DD 080443526h,080443526h - DD 08fa362b5h,08fa362b5h - DD 0495ab1deh,0495ab1deh - DD 0671bba25h,0671bba25h - DD 0980eea45h,0980eea45h - DD 0e1c0fe5dh,0e1c0fe5dh - DD 002752fc3h,002752fc3h - DD 012f04c81h,012f04c81h - DD 0a397468dh,0a397468dh - DD 0c6f9d36bh,0c6f9d36bh - DD 0e75f8f03h,0e75f8f03h - DD 0959c9215h,0959c9215h - DD 0eb7a6dbfh,0eb7a6dbfh - DD 0da595295h,0da595295h - DD 02d83bed4h,02d83bed4h - DD 0d3217458h,0d3217458h - DD 02969e049h,02969e049h - DD 044c8c98eh,044c8c98eh - DD 06a89c275h,06a89c275h - DD 078798ef4h,078798ef4h - DD 06b3e5899h,06b3e5899h - DD 0dd71b927h,0dd71b927h - DD 0b64fe1beh,0b64fe1beh - DD 017ad88f0h,017ad88f0h - DD 066ac20c9h,066ac20c9h - DD 0b43ace7dh,0b43ace7dh - DD 0184adf63h,0184adf63h - DD 082311ae5h,082311ae5h - DD 060335197h,060335197h - DD 0457f5362h,0457f5362h - DD 0e07764b1h,0e07764b1h - DD 084ae6bbbh,084ae6bbbh - DD 01ca081feh,01ca081feh - DD 0942b08f9h,0942b08f9h - DD 058684870h,058684870h - DD 019fd458fh,019fd458fh - DD 0876cde94h,0876cde94h - DD 0b7f87b52h,0b7f87b52h - DD 023d373abh,023d373abh - DD 0e2024b72h,0e2024b72h - DD 0578f1fe3h,0578f1fe3h - DD 02aab5566h,02aab5566h - DD 00728ebb2h,00728ebb2h - DD 003c2b52fh,003c2b52fh - DD 09a7bc586h,09a7bc586h - DD 0a50837d3h,0a50837d3h - DD 0f2872830h,0f2872830h - DD 0b2a5bf23h,0b2a5bf23h - DD 0ba6a0302h,0ba6a0302h - DD 05c8216edh,05c8216edh - DD 02b1ccf8ah,02b1ccf8ah - DD 092b479a7h,092b479a7h - DD 0f0f207f3h,0f0f207f3h - DD 0a1e2694eh,0a1e2694eh - DD 0cdf4da65h,0cdf4da65h - DD 0d5be0506h,0d5be0506h - DD 01f6234d1h,01f6234d1h - DD 08afea6c4h,08afea6c4h - DD 09d532e34h,09d532e34h - DD 0a055f3a2h,0a055f3a2h - DD 032e18a05h,032e18a05h - DD 075ebf6a4h,075ebf6a4h - DD 039ec830bh,039ec830bh - DD 0aaef6040h,0aaef6040h - DD 0069f715eh,0069f715eh - DD 051106ebdh,051106ebdh - DD 0f98a213eh,0f98a213eh - DD 03d06dd96h,03d06dd96h - DD 0ae053eddh,0ae053eddh - DD 046bde64dh,046bde64dh - DD 0b58d5491h,0b58d5491h - DD 0055dc471h,0055dc471h - DD 06fd40604h,06fd40604h - DD 0ff155060h,0ff155060h - DD 024fb9819h,024fb9819h - DD 097e9bdd6h,097e9bdd6h - DD 0cc434089h,0cc434089h - DD 0779ed967h,0779ed967h - DD 0bd42e8b0h,0bd42e8b0h - DD 0888b8907h,0888b8907h - DD 0385b19e7h,0385b19e7h - DD 0dbeec879h,0dbeec879h - DD 0470a7ca1h,0470a7ca1h - DD 0e90f427ch,0e90f427ch - DD 0c91e84f8h,0c91e84f8h - DD 000000000h,000000000h - DD 083868009h,083868009h - DD 048ed2b32h,048ed2b32h - DD 0ac70111eh,0ac70111eh - DD 04e725a6ch,04e725a6ch - DD 0fbff0efdh,0fbff0efdh - DD 05638850fh,05638850fh - DD 01ed5ae3dh,01ed5ae3dh - DD 027392d36h,027392d36h - DD 064d90f0ah,064d90f0ah - DD 021a65c68h,021a65c68h - DD 0d1545b9bh,0d1545b9bh - DD 03a2e3624h,03a2e3624h - DD 0b1670a0ch,0b1670a0ch - DD 00fe75793h,00fe75793h - DD 0d296eeb4h,0d296eeb4h - DD 09e919b1bh,09e919b1bh - DD 04fc5c080h,04fc5c080h - DD 0a220dc61h,0a220dc61h - DD 0694b775ah,0694b775ah - DD 0161a121ch,0161a121ch - DD 00aba93e2h,00aba93e2h - DD 0e52aa0c0h,0e52aa0c0h - DD 043e0223ch,043e0223ch - DD 01d171b12h,01d171b12h - DD 00b0d090eh,00b0d090eh - DD 0adc78bf2h,0adc78bf2h - DD 0b9a8b62dh,0b9a8b62dh - DD 0c8a91e14h,0c8a91e14h - DD 08519f157h,08519f157h - DD 04c0775afh,04c0775afh - DD 0bbdd99eeh,0bbdd99eeh - DD 0fd607fa3h,0fd607fa3h - DD 09f2601f7h,09f2601f7h - DD 0bcf5725ch,0bcf5725ch - DD 0c53b6644h,0c53b6644h - DD 0347efb5bh,0347efb5bh - DD 07629438bh,07629438bh - DD 0dcc623cbh,0dcc623cbh - DD 068fcedb6h,068fcedb6h - DD 063f1e4b8h,063f1e4b8h - DD 0cadc31d7h,0cadc31d7h - DD 010856342h,010856342h - DD 040229713h,040229713h - DD 02011c684h,02011c684h - DD 07d244a85h,07d244a85h - DD 0f83dbbd2h,0f83dbbd2h - DD 01132f9aeh,01132f9aeh - DD 06da129c7h,06da129c7h - DD 04b2f9e1dh,04b2f9e1dh - DD 0f330b2dch,0f330b2dch - DD 0ec52860dh,0ec52860dh - DD 0d0e3c177h,0d0e3c177h - DD 06c16b32bh,06c16b32bh - DD 099b970a9h,099b970a9h - DD 0fa489411h,0fa489411h - DD 02264e947h,02264e947h - DD 0c48cfca8h,0c48cfca8h - DD 01a3ff0a0h,01a3ff0a0h - DD 0d82c7d56h,0d82c7d56h - DD 0ef903322h,0ef903322h - DD 0c74e4987h,0c74e4987h - DD 0c1d138d9h,0c1d138d9h - DD 0fea2ca8ch,0fea2ca8ch - DD 0360bd498h,0360bd498h - DD 0cf81f5a6h,0cf81f5a6h - DD 028de7aa5h,028de7aa5h - DD 0268eb7dah,0268eb7dah - DD 0a4bfad3fh,0a4bfad3fh - DD 0e49d3a2ch,0e49d3a2ch - DD 00d927850h,00d927850h - DD 09bcc5f6ah,09bcc5f6ah - DD 062467e54h,062467e54h - DD 0c2138df6h,0c2138df6h - DD 0e8b8d890h,0e8b8d890h - DD 05ef7392eh,05ef7392eh - DD 0f5afc382h,0f5afc382h - DD 0be805d9fh,0be805d9fh - DD 07c93d069h,07c93d069h - DD 0a92dd56fh,0a92dd56fh - DD 0b31225cfh,0b31225cfh - DD 03b99acc8h,03b99acc8h - DD 0a77d1810h,0a77d1810h - DD 06e639ce8h,06e639ce8h - DD 07bbb3bdbh,07bbb3bdbh - DD 0097826cdh,0097826cdh - DD 0f418596eh,0f418596eh - DD 001b79aech,001b79aech - DD 0a89a4f83h,0a89a4f83h - DD 0656e95e6h,0656e95e6h - DD 07ee6ffaah,07ee6ffaah - DD 008cfbc21h,008cfbc21h - DD 0e6e815efh,0e6e815efh - DD 0d99be7bah,0d99be7bah - DD 0ce366f4ah,0ce366f4ah - DD 0d4099feah,0d4099feah - DD 0d67cb029h,0d67cb029h - DD 0afb2a431h,0afb2a431h - DD 031233f2ah,031233f2ah - DD 03094a5c6h,03094a5c6h - DD 0c066a235h,0c066a235h - DD 037bc4e74h,037bc4e74h - DD 0a6ca82fch,0a6ca82fch - DD 0b0d090e0h,0b0d090e0h - DD 015d8a733h,015d8a733h - DD 04a9804f1h,04a9804f1h - DD 0f7daec41h,0f7daec41h - DD 00e50cd7fh,00e50cd7fh - DD 02ff69117h,02ff69117h - DD 08dd64d76h,08dd64d76h - DD 04db0ef43h,04db0ef43h - DD 0544daacch,0544daacch - DD 0df0496e4h,0df0496e4h - DD 0e3b5d19eh,0e3b5d19eh - DD 01b886a4ch,01b886a4ch - DD 0b81f2cc1h,0b81f2cc1h - DD 07f516546h,07f516546h - DD 004ea5e9dh,004ea5e9dh - DD 05d358c01h,05d358c01h - DD 0737487fah,0737487fah - DD 02e410bfbh,02e410bfbh - DD 05a1d67b3h,05a1d67b3h - DD 052d2db92h,052d2db92h - DD 0335610e9h,0335610e9h - DD 01347d66dh,01347d66dh - DD 08c61d79ah,08c61d79ah - DD 07a0ca137h,07a0ca137h - DD 08e14f859h,08e14f859h - DD 0893c13ebh,0893c13ebh - DD 0ee27a9ceh,0ee27a9ceh - DD 035c961b7h,035c961b7h - DD 0ede51ce1h,0ede51ce1h - DD 03cb1477ah,03cb1477ah - DD 059dfd29ch,059dfd29ch - DD 03f73f255h,03f73f255h - DD 079ce1418h,079ce1418h - DD 0bf37c773h,0bf37c773h - DD 0eacdf753h,0eacdf753h - DD 05baafd5fh,05baafd5fh - DD 0146f3ddfh,0146f3ddfh - DD 086db4478h,086db4478h - DD 081f3afcah,081f3afcah - DD 03ec468b9h,03ec468b9h - DD 02c342438h,02c342438h - DD 05f40a3c2h,05f40a3c2h - DD 072c31d16h,072c31d16h - DD 00c25e2bch,00c25e2bch - DD 08b493c28h,08b493c28h - DD 041950dffh,041950dffh - DD 07101a839h,07101a839h - DD 0deb30c08h,0deb30c08h - DD 09ce4b4d8h,09ce4b4d8h - DD 090c15664h,090c15664h - DD 06184cb7bh,06184cb7bh - DD 070b632d5h,070b632d5h - DD 0745c6c48h,0745c6c48h - DD 04257b8d0h,04257b8d0h -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -block_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_block_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_block_prologue - - mov rax,QWORD PTR[24+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_block_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -block_se_handler ENDP - - -ALIGN 16 -key_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_key_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_key_prologue - - lea rax,QWORD PTR[56+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_key_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -key_se_handler ENDP - - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_prologue] - cmp rbx,r10 - jb $L$in_cbc_prologue - - lea r10,QWORD PTR[$L$cbc_fast_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - - lea r10,QWORD PTR[$L$cbc_slow_prologue] - cmp rbx,r10 - jb $L$in_cbc_body - - lea r10,QWORD PTR[$L$cbc_slow_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - -$L$in_cbc_body:: - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$cbc_epilogue] - cmp rbx,r10 - jae $L$in_cbc_prologue - - lea rax,QWORD PTR[8+rax] - - lea r10,QWORD PTR[$L$cbc_popfq] - cmp rbx,r10 - jae $L$in_cbc_prologue - - mov rax,QWORD PTR[8+rax] - lea rax,QWORD PTR[56+rax] - -$L$in_cbc_frame_setup:: - mov rbx,QWORD PTR[((-16))+rax] - mov rbp,QWORD PTR[((-24))+rax] - mov r12,QWORD PTR[((-32))+rax] - mov r13,QWORD PTR[((-40))+rax] - mov r14,QWORD PTR[((-48))+rax] - mov r15,QWORD PTR[((-56))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_cbc_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_AES_encrypt - DD imagerel $L$SEH_end_AES_encrypt - DD imagerel $L$SEH_info_AES_encrypt - - DD imagerel $L$SEH_begin_AES_decrypt - DD imagerel $L$SEH_end_AES_decrypt - DD imagerel $L$SEH_info_AES_decrypt - - DD imagerel $L$SEH_begin_private_AES_set_encrypt_key - DD imagerel $L$SEH_end_private_AES_set_encrypt_key - DD imagerel $L$SEH_info_private_AES_set_encrypt_key - - DD imagerel $L$SEH_begin_private_AES_set_decrypt_key - DD imagerel $L$SEH_end_private_AES_set_decrypt_key - DD imagerel $L$SEH_info_private_AES_set_decrypt_key - - DD imagerel $L$SEH_begin_AES_cbc_encrypt - DD imagerel $L$SEH_end_AES_cbc_encrypt - DD imagerel $L$SEH_info_AES_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_AES_encrypt:: -DB 9,0,0,0 - DD imagerel block_se_handler - DD imagerel $L$enc_prologue,imagerel $L$enc_epilogue -$L$SEH_info_AES_decrypt:: -DB 9,0,0,0 - DD imagerel block_se_handler - DD imagerel $L$dec_prologue,imagerel $L$dec_epilogue -$L$SEH_info_private_AES_set_encrypt_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - DD imagerel $L$enc_key_prologue,imagerel $L$enc_key_epilogue -$L$SEH_info_private_AES_set_decrypt_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - DD imagerel $L$dec_key_prologue,imagerel $L$dec_key_epilogue -$L$SEH_info_AES_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel cbc_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/aesni-mb-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/aesni-mb-x86_64.asm deleted file mode 100644 index f482b8566399e2..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/aesni-mb-x86_64.asm +++ /dev/null @@ -1,1698 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC aesni_multi_cbc_encrypt - -ALIGN 32 -aesni_multi_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - cmp edx,2 - jb $L$enc_non_avx - mov ecx,DWORD PTR[((OPENSSL_ia32cap_P+4))] - test ecx,268435456 - jnz _avx_cbc_enc_shortcut - jmp $L$enc_non_avx -ALIGN 16 -$L$enc_non_avx:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[96+rsp],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - sub rsp,48 - and rsp,-64 - mov QWORD PTR[16+rsp],rax - -$L$enc4x_body:: - movdqu xmm12,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[80+rdi] - -$L$enc4x_loop_grande:: - mov DWORD PTR[24+rsp],edx - xor edx,edx - mov ecx,DWORD PTR[((-64))+rdi] - mov r8,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov r12,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm2,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - mov ecx,DWORD PTR[((-24))+rdi] - mov r9,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov r13,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm3,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - mov ecx,DWORD PTR[16+rdi] - mov r10,QWORD PTR[rdi] - cmp ecx,edx - mov r14,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm4,XMMWORD PTR[24+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - mov ecx,DWORD PTR[56+rdi] - mov r11,QWORD PTR[40+rdi] - cmp ecx,edx - mov r15,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm5,XMMWORD PTR[64+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - test edx,edx - jz $L$enc4x_done - - movups xmm1,XMMWORD PTR[((16-120))+rsi] - pxor xmm2,xmm12 - movups xmm0,XMMWORD PTR[((32-120))+rsi] - pxor xmm3,xmm12 - mov eax,DWORD PTR[((240-120))+rsi] - pxor xmm4,xmm12 - movdqu xmm6,XMMWORD PTR[r8] - pxor xmm5,xmm12 - movdqu xmm7,XMMWORD PTR[r9] - pxor xmm2,xmm6 - movdqu xmm8,XMMWORD PTR[r10] - pxor xmm3,xmm7 - movdqu xmm9,XMMWORD PTR[r11] - pxor xmm4,xmm8 - pxor xmm5,xmm9 - movdqa xmm10,XMMWORD PTR[32+rsp] - xor rbx,rbx - jmp $L$oop_enc4x - -ALIGN 32 -$L$oop_enc4x:: - add rbx,16 - lea rbp,QWORD PTR[16+rsp] - mov ecx,1 - sub rbp,rbx - -DB 102,15,56,220,209 - prefetcht0 [31+rbx*1+r8] - prefetcht0 [31+rbx*1+r9] -DB 102,15,56,220,217 - prefetcht0 [31+rbx*1+r10] - prefetcht0 [31+rbx*1+r10] -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((48-120))+rsi] - cmp ecx,DWORD PTR[32+rsp] -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - cmovge r8,rbp - cmovg r12,rbp -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-56))+rsi] - cmp ecx,DWORD PTR[36+rsp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - cmovge r9,rbp - cmovg r13,rbp -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((-40))+rsi] - cmp ecx,DWORD PTR[40+rsp] -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - cmovge r10,rbp - cmovg r14,rbp -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-24))+rsi] - cmp ecx,DWORD PTR[44+rsp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - cmovge r11,rbp - cmovg r15,rbp -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((-8))+rsi] - movdqa xmm11,xmm10 -DB 102,15,56,220,208 - prefetcht0 [15+rbx*1+r12] - prefetcht0 [15+rbx*1+r13] -DB 102,15,56,220,216 - prefetcht0 [15+rbx*1+r14] - prefetcht0 [15+rbx*1+r15] -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((128-120))+rsi] - pxor xmm12,xmm12 - -DB 102,15,56,220,209 - pcmpgtd xmm11,xmm12 - movdqu xmm12,XMMWORD PTR[((-120))+rsi] -DB 102,15,56,220,217 - paddd xmm10,xmm11 - movdqa XMMWORD PTR[32+rsp],xmm10 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((144-120))+rsi] - - cmp eax,11 - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((160-120))+rsi] - - jb $L$enc4x_tail - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((176-120))+rsi] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((192-120))+rsi] - - je $L$enc4x_tail - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((208-120))+rsi] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((224-120))+rsi] - jmp $L$enc4x_tail - -ALIGN 32 -$L$enc4x_tail:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movdqu xmm6,XMMWORD PTR[rbx*1+r8] - movdqu xmm1,XMMWORD PTR[((16-120))+rsi] - -DB 102,15,56,221,208 - movdqu xmm7,XMMWORD PTR[rbx*1+r9] - pxor xmm6,xmm12 -DB 102,15,56,221,216 - movdqu xmm8,XMMWORD PTR[rbx*1+r10] - pxor xmm7,xmm12 -DB 102,15,56,221,224 - movdqu xmm9,XMMWORD PTR[rbx*1+r11] - pxor xmm8,xmm12 -DB 102,15,56,221,232 - movdqu xmm0,XMMWORD PTR[((32-120))+rsi] - pxor xmm9,xmm12 - - movups XMMWORD PTR[(-16)+rbx*1+r12],xmm2 - pxor xmm2,xmm6 - movups XMMWORD PTR[(-16)+rbx*1+r13],xmm3 - pxor xmm3,xmm7 - movups XMMWORD PTR[(-16)+rbx*1+r14],xmm4 - pxor xmm4,xmm8 - movups XMMWORD PTR[(-16)+rbx*1+r15],xmm5 - pxor xmm5,xmm9 - - dec edx - jnz $L$oop_enc4x - - mov rax,QWORD PTR[16+rsp] - mov edx,DWORD PTR[24+rsp] - - - - - - - - - - - lea rdi,QWORD PTR[160+rdi] - dec edx - jnz $L$enc4x_loop_grande - -$L$enc4x_done:: - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - - - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$enc4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_encrypt:: -aesni_multi_cbc_encrypt ENDP - -PUBLIC aesni_multi_cbc_decrypt - -ALIGN 32 -aesni_multi_cbc_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - cmp edx,2 - jb $L$dec_non_avx - mov ecx,DWORD PTR[((OPENSSL_ia32cap_P+4))] - test ecx,268435456 - jnz _avx_cbc_dec_shortcut - jmp $L$dec_non_avx -ALIGN 16 -$L$dec_non_avx:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[96+rsp],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - sub rsp,48 - and rsp,-64 - mov QWORD PTR[16+rsp],rax - -$L$dec4x_body:: - movdqu xmm12,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[80+rdi] - -$L$dec4x_loop_grande:: - mov DWORD PTR[24+rsp],edx - xor edx,edx - mov ecx,DWORD PTR[((-64))+rdi] - mov r8,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov r12,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm6,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - mov ecx,DWORD PTR[((-24))+rdi] - mov r9,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov r13,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm7,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - mov ecx,DWORD PTR[16+rdi] - mov r10,QWORD PTR[rdi] - cmp ecx,edx - mov r14,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm8,XMMWORD PTR[24+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - mov ecx,DWORD PTR[56+rdi] - mov r11,QWORD PTR[40+rdi] - cmp ecx,edx - mov r15,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm9,XMMWORD PTR[64+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - test edx,edx - jz $L$dec4x_done - - movups xmm1,XMMWORD PTR[((16-120))+rsi] - movups xmm0,XMMWORD PTR[((32-120))+rsi] - mov eax,DWORD PTR[((240-120))+rsi] - movdqu xmm2,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[r9] - pxor xmm2,xmm12 - movdqu xmm4,XMMWORD PTR[r10] - pxor xmm3,xmm12 - movdqu xmm5,XMMWORD PTR[r11] - pxor xmm4,xmm12 - pxor xmm5,xmm12 - movdqa xmm10,XMMWORD PTR[32+rsp] - xor rbx,rbx - jmp $L$oop_dec4x - -ALIGN 32 -$L$oop_dec4x:: - add rbx,16 - lea rbp,QWORD PTR[16+rsp] - mov ecx,1 - sub rbp,rbx - -DB 102,15,56,222,209 - prefetcht0 [31+rbx*1+r8] - prefetcht0 [31+rbx*1+r9] -DB 102,15,56,222,217 - prefetcht0 [31+rbx*1+r10] - prefetcht0 [31+rbx*1+r11] -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((48-120))+rsi] - cmp ecx,DWORD PTR[32+rsp] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - cmovge r8,rbp - cmovg r12,rbp -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-56))+rsi] - cmp ecx,DWORD PTR[36+rsp] -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - cmovge r9,rbp - cmovg r13,rbp -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((-40))+rsi] - cmp ecx,DWORD PTR[40+rsp] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - cmovge r10,rbp - cmovg r14,rbp -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-24))+rsi] - cmp ecx,DWORD PTR[44+rsp] -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - cmovge r11,rbp - cmovg r15,rbp -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((-8))+rsi] - movdqa xmm11,xmm10 -DB 102,15,56,222,208 - prefetcht0 [15+rbx*1+r12] - prefetcht0 [15+rbx*1+r13] -DB 102,15,56,222,216 - prefetcht0 [15+rbx*1+r14] - prefetcht0 [15+rbx*1+r15] -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((128-120))+rsi] - pxor xmm12,xmm12 - -DB 102,15,56,222,209 - pcmpgtd xmm11,xmm12 - movdqu xmm12,XMMWORD PTR[((-120))+rsi] -DB 102,15,56,222,217 - paddd xmm10,xmm11 - movdqa XMMWORD PTR[32+rsp],xmm10 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((144-120))+rsi] - - cmp eax,11 - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((160-120))+rsi] - - jb $L$dec4x_tail - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((176-120))+rsi] - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((192-120))+rsi] - - je $L$dec4x_tail - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((208-120))+rsi] - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((224-120))+rsi] - jmp $L$dec4x_tail - -ALIGN 32 -$L$dec4x_tail:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - pxor xmm6,xmm0 - pxor xmm7,xmm0 -DB 102,15,56,222,233 - movdqu xmm1,XMMWORD PTR[((16-120))+rsi] - pxor xmm8,xmm0 - pxor xmm9,xmm0 - movdqu xmm0,XMMWORD PTR[((32-120))+rsi] - -DB 102,15,56,223,214 -DB 102,15,56,223,223 - movdqu xmm6,XMMWORD PTR[((-16))+rbx*1+r8] - movdqu xmm7,XMMWORD PTR[((-16))+rbx*1+r9] -DB 102,65,15,56,223,224 -DB 102,65,15,56,223,233 - movdqu xmm8,XMMWORD PTR[((-16))+rbx*1+r10] - movdqu xmm9,XMMWORD PTR[((-16))+rbx*1+r11] - - movups XMMWORD PTR[(-16)+rbx*1+r12],xmm2 - movdqu xmm2,XMMWORD PTR[rbx*1+r8] - movups XMMWORD PTR[(-16)+rbx*1+r13],xmm3 - movdqu xmm3,XMMWORD PTR[rbx*1+r9] - pxor xmm2,xmm12 - movups XMMWORD PTR[(-16)+rbx*1+r14],xmm4 - movdqu xmm4,XMMWORD PTR[rbx*1+r10] - pxor xmm3,xmm12 - movups XMMWORD PTR[(-16)+rbx*1+r15],xmm5 - movdqu xmm5,XMMWORD PTR[rbx*1+r11] - pxor xmm4,xmm12 - pxor xmm5,xmm12 - - dec edx - jnz $L$oop_dec4x - - mov rax,QWORD PTR[16+rsp] - mov edx,DWORD PTR[24+rsp] - - lea rdi,QWORD PTR[160+rdi] - dec edx - jnz $L$dec4x_loop_grande - -$L$dec4x_done:: - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - - - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$dec4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_decrypt:: -aesni_multi_cbc_decrypt ENDP - -ALIGN 32 -aesni_multi_cbc_encrypt_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_encrypt_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx_cbc_enc_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - - - sub rsp,192 - and rsp,-128 - mov QWORD PTR[16+rsp],rax - -$L$enc8x_body:: - vzeroupper - vmovdqu xmm15,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[160+rdi] - shr edx,1 - -$L$enc8x_loop_grande:: - - xor edx,edx - mov ecx,DWORD PTR[((-144))+rdi] - mov r8,QWORD PTR[((-160))+rdi] - cmp ecx,edx - mov rbx,QWORD PTR[((-152))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm2,XMMWORD PTR[((-136))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - sub rbx,r8 - mov QWORD PTR[64+rsp],rbx - mov ecx,DWORD PTR[((-104))+rdi] - mov r9,QWORD PTR[((-120))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-112))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm3,XMMWORD PTR[((-96))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - sub rbp,r9 - mov QWORD PTR[72+rsp],rbp - mov ecx,DWORD PTR[((-64))+rdi] - mov r10,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm4,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - sub rbp,r10 - mov QWORD PTR[80+rsp],rbp - mov ecx,DWORD PTR[((-24))+rdi] - mov r11,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm5,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - sub rbp,r11 - mov QWORD PTR[88+rsp],rbp - mov ecx,DWORD PTR[16+rdi] - mov r12,QWORD PTR[rdi] - cmp ecx,edx - mov rbp,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm6,XMMWORD PTR[24+rdi] - mov DWORD PTR[48+rsp],ecx - cmovle r12,rsp - sub rbp,r12 - mov QWORD PTR[96+rsp],rbp - mov ecx,DWORD PTR[56+rdi] - mov r13,QWORD PTR[40+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm7,XMMWORD PTR[64+rdi] - mov DWORD PTR[52+rsp],ecx - cmovle r13,rsp - sub rbp,r13 - mov QWORD PTR[104+rsp],rbp - mov ecx,DWORD PTR[96+rdi] - mov r14,QWORD PTR[80+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[88+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm8,XMMWORD PTR[104+rdi] - mov DWORD PTR[56+rsp],ecx - cmovle r14,rsp - sub rbp,r14 - mov QWORD PTR[112+rsp],rbp - mov ecx,DWORD PTR[136+rdi] - mov r15,QWORD PTR[120+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[128+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm9,XMMWORD PTR[144+rdi] - mov DWORD PTR[60+rsp],ecx - cmovle r15,rsp - sub rbp,r15 - mov QWORD PTR[120+rsp],rbp - test edx,edx - jz $L$enc8x_done - - vmovups xmm1,XMMWORD PTR[((16-120))+rsi] - vmovups xmm0,XMMWORD PTR[((32-120))+rsi] - mov eax,DWORD PTR[((240-120))+rsi] - - vpxor xmm10,xmm15,XMMWORD PTR[r8] - lea rbp,QWORD PTR[128+rsp] - vpxor xmm11,xmm15,XMMWORD PTR[r9] - vpxor xmm12,xmm15,XMMWORD PTR[r10] - vpxor xmm13,xmm15,XMMWORD PTR[r11] - vpxor xmm2,xmm2,xmm10 - vpxor xmm10,xmm15,XMMWORD PTR[r12] - vpxor xmm3,xmm3,xmm11 - vpxor xmm11,xmm15,XMMWORD PTR[r13] - vpxor xmm4,xmm4,xmm12 - vpxor xmm12,xmm15,XMMWORD PTR[r14] - vpxor xmm5,xmm5,xmm13 - vpxor xmm13,xmm15,XMMWORD PTR[r15] - vpxor xmm6,xmm6,xmm10 - mov ecx,1 - vpxor xmm7,xmm7,xmm11 - vpxor xmm8,xmm8,xmm12 - vpxor xmm9,xmm9,xmm13 - jmp $L$oop_enc8x - -ALIGN 32 -$L$oop_enc8x:: - vaesenc xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+0))+rsp] - vaesenc xmm3,xmm3,xmm1 - prefetcht0 [31+r8] - vaesenc xmm4,xmm4,xmm1 - vaesenc xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r8] - cmovge r8,rsp - vaesenc xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm1 - sub rbx,r8 - vaesenc xmm8,xmm8,xmm1 - vpxor xmm10,xmm15,XMMWORD PTR[16+r8] - mov QWORD PTR[((64+0))+rsp],rbx - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-72))+rsi] - lea r8,QWORD PTR[16+rbx*1+r8] - vmovdqu XMMWORD PTR[rbp],xmm10 - vaesenc xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+4))+rsp] - mov rbx,QWORD PTR[((64+8))+rsp] - vaesenc xmm3,xmm3,xmm0 - prefetcht0 [31+r9] - vaesenc xmm4,xmm4,xmm0 - vaesenc xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r9] - cmovge r9,rsp - vaesenc xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm0 - sub rbx,r9 - vaesenc xmm8,xmm8,xmm0 - vpxor xmm11,xmm15,XMMWORD PTR[16+r9] - mov QWORD PTR[((64+8))+rsp],rbx - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((-56))+rsi] - lea r9,QWORD PTR[16+rbx*1+r9] - vmovdqu XMMWORD PTR[16+rbp],xmm11 - vaesenc xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+8))+rsp] - mov rbx,QWORD PTR[((64+16))+rsp] - vaesenc xmm3,xmm3,xmm1 - prefetcht0 [31+r10] - vaesenc xmm4,xmm4,xmm1 - prefetcht0 [15+r8] - vaesenc xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r10] - cmovge r10,rsp - vaesenc xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm1 - sub rbx,r10 - vaesenc xmm8,xmm8,xmm1 - vpxor xmm12,xmm15,XMMWORD PTR[16+r10] - mov QWORD PTR[((64+16))+rsp],rbx - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-40))+rsi] - lea r10,QWORD PTR[16+rbx*1+r10] - vmovdqu XMMWORD PTR[32+rbp],xmm12 - vaesenc xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+12))+rsp] - mov rbx,QWORD PTR[((64+24))+rsp] - vaesenc xmm3,xmm3,xmm0 - prefetcht0 [31+r11] - vaesenc xmm4,xmm4,xmm0 - prefetcht0 [15+r9] - vaesenc xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r11] - cmovge r11,rsp - vaesenc xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm0 - sub rbx,r11 - vaesenc xmm8,xmm8,xmm0 - vpxor xmm13,xmm15,XMMWORD PTR[16+r11] - mov QWORD PTR[((64+24))+rsp],rbx - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((-24))+rsi] - lea r11,QWORD PTR[16+rbx*1+r11] - vmovdqu XMMWORD PTR[48+rbp],xmm13 - vaesenc xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+16))+rsp] - mov rbx,QWORD PTR[((64+32))+rsp] - vaesenc xmm3,xmm3,xmm1 - prefetcht0 [31+r12] - vaesenc xmm4,xmm4,xmm1 - prefetcht0 [15+r10] - vaesenc xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r12] - cmovge r12,rsp - vaesenc xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm1 - sub rbx,r12 - vaesenc xmm8,xmm8,xmm1 - vpxor xmm10,xmm15,XMMWORD PTR[16+r12] - mov QWORD PTR[((64+32))+rsp],rbx - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-8))+rsi] - lea r12,QWORD PTR[16+rbx*1+r12] - vaesenc xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+20))+rsp] - mov rbx,QWORD PTR[((64+40))+rsp] - vaesenc xmm3,xmm3,xmm0 - prefetcht0 [31+r13] - vaesenc xmm4,xmm4,xmm0 - prefetcht0 [15+r11] - vaesenc xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[r13*1+rbx] - cmovge r13,rsp - vaesenc xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm0 - sub rbx,r13 - vaesenc xmm8,xmm8,xmm0 - vpxor xmm11,xmm15,XMMWORD PTR[16+r13] - mov QWORD PTR[((64+40))+rsp],rbx - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[8+rsi] - lea r13,QWORD PTR[16+rbx*1+r13] - vaesenc xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+24))+rsp] - mov rbx,QWORD PTR[((64+48))+rsp] - vaesenc xmm3,xmm3,xmm1 - prefetcht0 [31+r14] - vaesenc xmm4,xmm4,xmm1 - prefetcht0 [15+r12] - vaesenc xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r14] - cmovge r14,rsp - vaesenc xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm1 - sub rbx,r14 - vaesenc xmm8,xmm8,xmm1 - vpxor xmm12,xmm15,XMMWORD PTR[16+r14] - mov QWORD PTR[((64+48))+rsp],rbx - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[24+rsi] - lea r14,QWORD PTR[16+rbx*1+r14] - vaesenc xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+28))+rsp] - mov rbx,QWORD PTR[((64+56))+rsp] - vaesenc xmm3,xmm3,xmm0 - prefetcht0 [31+r15] - vaesenc xmm4,xmm4,xmm0 - prefetcht0 [15+r13] - vaesenc xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r15] - cmovge r15,rsp - vaesenc xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesenc xmm7,xmm7,xmm0 - sub rbx,r15 - vaesenc xmm8,xmm8,xmm0 - vpxor xmm13,xmm15,XMMWORD PTR[16+r15] - mov QWORD PTR[((64+56))+rsp],rbx - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[40+rsi] - lea r15,QWORD PTR[16+rbx*1+r15] - vmovdqu xmm14,XMMWORD PTR[32+rsp] - prefetcht0 [15+r14] - prefetcht0 [15+r15] - cmp eax,11 - jb $L$enc8x_tail - - vaesenc xmm2,xmm2,xmm1 - vaesenc xmm3,xmm3,xmm1 - vaesenc xmm4,xmm4,xmm1 - vaesenc xmm5,xmm5,xmm1 - vaesenc xmm6,xmm6,xmm1 - vaesenc xmm7,xmm7,xmm1 - vaesenc xmm8,xmm8,xmm1 - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((176-120))+rsi] - - vaesenc xmm2,xmm2,xmm0 - vaesenc xmm3,xmm3,xmm0 - vaesenc xmm4,xmm4,xmm0 - vaesenc xmm5,xmm5,xmm0 - vaesenc xmm6,xmm6,xmm0 - vaesenc xmm7,xmm7,xmm0 - vaesenc xmm8,xmm8,xmm0 - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((192-120))+rsi] - je $L$enc8x_tail - - vaesenc xmm2,xmm2,xmm1 - vaesenc xmm3,xmm3,xmm1 - vaesenc xmm4,xmm4,xmm1 - vaesenc xmm5,xmm5,xmm1 - vaesenc xmm6,xmm6,xmm1 - vaesenc xmm7,xmm7,xmm1 - vaesenc xmm8,xmm8,xmm1 - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((208-120))+rsi] - - vaesenc xmm2,xmm2,xmm0 - vaesenc xmm3,xmm3,xmm0 - vaesenc xmm4,xmm4,xmm0 - vaesenc xmm5,xmm5,xmm0 - vaesenc xmm6,xmm6,xmm0 - vaesenc xmm7,xmm7,xmm0 - vaesenc xmm8,xmm8,xmm0 - vaesenc xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((224-120))+rsi] - -$L$enc8x_tail:: - vaesenc xmm2,xmm2,xmm1 - vpxor xmm15,xmm15,xmm15 - vaesenc xmm3,xmm3,xmm1 - vaesenc xmm4,xmm4,xmm1 - vpcmpgtd xmm15,xmm14,xmm15 - vaesenc xmm5,xmm5,xmm1 - vaesenc xmm6,xmm6,xmm1 - vpaddd xmm15,xmm15,xmm14 - vmovdqu xmm14,XMMWORD PTR[48+rsp] - vaesenc xmm7,xmm7,xmm1 - mov rbx,QWORD PTR[64+rsp] - vaesenc xmm8,xmm8,xmm1 - vaesenc xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((16-120))+rsi] - - vaesenclast xmm2,xmm2,xmm0 - vmovdqa XMMWORD PTR[32+rsp],xmm15 - vpxor xmm15,xmm15,xmm15 - vaesenclast xmm3,xmm3,xmm0 - vaesenclast xmm4,xmm4,xmm0 - vpcmpgtd xmm15,xmm14,xmm15 - vaesenclast xmm5,xmm5,xmm0 - vaesenclast xmm6,xmm6,xmm0 - vpaddd xmm14,xmm14,xmm15 - vmovdqu xmm15,XMMWORD PTR[((-120))+rsi] - vaesenclast xmm7,xmm7,xmm0 - vaesenclast xmm8,xmm8,xmm0 - vmovdqa XMMWORD PTR[48+rsp],xmm14 - vaesenclast xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((32-120))+rsi] - - vmovups XMMWORD PTR[(-16)+r8],xmm2 - sub r8,rbx - vpxor xmm2,xmm2,XMMWORD PTR[rbp] - vmovups XMMWORD PTR[(-16)+r9],xmm3 - sub r9,QWORD PTR[72+rsp] - vpxor xmm3,xmm3,XMMWORD PTR[16+rbp] - vmovups XMMWORD PTR[(-16)+r10],xmm4 - sub r10,QWORD PTR[80+rsp] - vpxor xmm4,xmm4,XMMWORD PTR[32+rbp] - vmovups XMMWORD PTR[(-16)+r11],xmm5 - sub r11,QWORD PTR[88+rsp] - vpxor xmm5,xmm5,XMMWORD PTR[48+rbp] - vmovups XMMWORD PTR[(-16)+r12],xmm6 - sub r12,QWORD PTR[96+rsp] - vpxor xmm6,xmm6,xmm10 - vmovups XMMWORD PTR[(-16)+r13],xmm7 - sub r13,QWORD PTR[104+rsp] - vpxor xmm7,xmm7,xmm11 - vmovups XMMWORD PTR[(-16)+r14],xmm8 - sub r14,QWORD PTR[112+rsp] - vpxor xmm8,xmm8,xmm12 - vmovups XMMWORD PTR[(-16)+r15],xmm9 - sub r15,QWORD PTR[120+rsp] - vpxor xmm9,xmm9,xmm13 - - dec edx - jnz $L$oop_enc8x - - mov rax,QWORD PTR[16+rsp] - - - - - -$L$enc8x_done:: - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$enc8x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_encrypt_avx:: -aesni_multi_cbc_encrypt_avx ENDP - - -ALIGN 32 -aesni_multi_cbc_decrypt_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_decrypt_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx_cbc_dec_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - - - - sub rsp,256 - and rsp,-256 - sub rsp,192 - mov QWORD PTR[16+rsp],rax - -$L$dec8x_body:: - vzeroupper - vmovdqu xmm15,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[160+rdi] - shr edx,1 - -$L$dec8x_loop_grande:: - - xor edx,edx - mov ecx,DWORD PTR[((-144))+rdi] - mov r8,QWORD PTR[((-160))+rdi] - cmp ecx,edx - mov rbx,QWORD PTR[((-152))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm2,XMMWORD PTR[((-136))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - sub rbx,r8 - mov QWORD PTR[64+rsp],rbx - vmovdqu XMMWORD PTR[192+rsp],xmm2 - mov ecx,DWORD PTR[((-104))+rdi] - mov r9,QWORD PTR[((-120))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-112))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm3,XMMWORD PTR[((-96))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - sub rbp,r9 - mov QWORD PTR[72+rsp],rbp - vmovdqu XMMWORD PTR[208+rsp],xmm3 - mov ecx,DWORD PTR[((-64))+rdi] - mov r10,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm4,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - sub rbp,r10 - mov QWORD PTR[80+rsp],rbp - vmovdqu XMMWORD PTR[224+rsp],xmm4 - mov ecx,DWORD PTR[((-24))+rdi] - mov r11,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm5,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - sub rbp,r11 - mov QWORD PTR[88+rsp],rbp - vmovdqu XMMWORD PTR[240+rsp],xmm5 - mov ecx,DWORD PTR[16+rdi] - mov r12,QWORD PTR[rdi] - cmp ecx,edx - mov rbp,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm6,XMMWORD PTR[24+rdi] - mov DWORD PTR[48+rsp],ecx - cmovle r12,rsp - sub rbp,r12 - mov QWORD PTR[96+rsp],rbp - vmovdqu XMMWORD PTR[256+rsp],xmm6 - mov ecx,DWORD PTR[56+rdi] - mov r13,QWORD PTR[40+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm7,XMMWORD PTR[64+rdi] - mov DWORD PTR[52+rsp],ecx - cmovle r13,rsp - sub rbp,r13 - mov QWORD PTR[104+rsp],rbp - vmovdqu XMMWORD PTR[272+rsp],xmm7 - mov ecx,DWORD PTR[96+rdi] - mov r14,QWORD PTR[80+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[88+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm8,XMMWORD PTR[104+rdi] - mov DWORD PTR[56+rsp],ecx - cmovle r14,rsp - sub rbp,r14 - mov QWORD PTR[112+rsp],rbp - vmovdqu XMMWORD PTR[288+rsp],xmm8 - mov ecx,DWORD PTR[136+rdi] - mov r15,QWORD PTR[120+rdi] - cmp ecx,edx - mov rbp,QWORD PTR[128+rdi] - cmovg edx,ecx - test ecx,ecx - vmovdqu xmm9,XMMWORD PTR[144+rdi] - mov DWORD PTR[60+rsp],ecx - cmovle r15,rsp - sub rbp,r15 - mov QWORD PTR[120+rsp],rbp - vmovdqu XMMWORD PTR[304+rsp],xmm9 - test edx,edx - jz $L$dec8x_done - - vmovups xmm1,XMMWORD PTR[((16-120))+rsi] - vmovups xmm0,XMMWORD PTR[((32-120))+rsi] - mov eax,DWORD PTR[((240-120))+rsi] - lea rbp,QWORD PTR[((192+128))+rsp] - - vmovdqu xmm2,XMMWORD PTR[r8] - vmovdqu xmm3,XMMWORD PTR[r9] - vmovdqu xmm4,XMMWORD PTR[r10] - vmovdqu xmm5,XMMWORD PTR[r11] - vmovdqu xmm6,XMMWORD PTR[r12] - vmovdqu xmm7,XMMWORD PTR[r13] - vmovdqu xmm8,XMMWORD PTR[r14] - vmovdqu xmm9,XMMWORD PTR[r15] - vmovdqu XMMWORD PTR[rbp],xmm2 - vpxor xmm2,xmm2,xmm15 - vmovdqu XMMWORD PTR[16+rbp],xmm3 - vpxor xmm3,xmm3,xmm15 - vmovdqu XMMWORD PTR[32+rbp],xmm4 - vpxor xmm4,xmm4,xmm15 - vmovdqu XMMWORD PTR[48+rbp],xmm5 - vpxor xmm5,xmm5,xmm15 - vmovdqu XMMWORD PTR[64+rbp],xmm6 - vpxor xmm6,xmm6,xmm15 - vmovdqu XMMWORD PTR[80+rbp],xmm7 - vpxor xmm7,xmm7,xmm15 - vmovdqu XMMWORD PTR[96+rbp],xmm8 - vpxor xmm8,xmm8,xmm15 - vmovdqu XMMWORD PTR[112+rbp],xmm9 - vpxor xmm9,xmm9,xmm15 - xor rbp,080h - mov ecx,1 - jmp $L$oop_dec8x - -ALIGN 32 -$L$oop_dec8x:: - vaesdec xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+0))+rsp] - vaesdec xmm3,xmm3,xmm1 - prefetcht0 [31+r8] - vaesdec xmm4,xmm4,xmm1 - vaesdec xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r8] - cmovge r8,rsp - vaesdec xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm1 - sub rbx,r8 - vaesdec xmm8,xmm8,xmm1 - vmovdqu xmm10,XMMWORD PTR[16+r8] - mov QWORD PTR[((64+0))+rsp],rbx - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-72))+rsi] - lea r8,QWORD PTR[16+rbx*1+r8] - vmovdqu XMMWORD PTR[128+rsp],xmm10 - vaesdec xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+4))+rsp] - mov rbx,QWORD PTR[((64+8))+rsp] - vaesdec xmm3,xmm3,xmm0 - prefetcht0 [31+r9] - vaesdec xmm4,xmm4,xmm0 - vaesdec xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r9] - cmovge r9,rsp - vaesdec xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm0 - sub rbx,r9 - vaesdec xmm8,xmm8,xmm0 - vmovdqu xmm11,XMMWORD PTR[16+r9] - mov QWORD PTR[((64+8))+rsp],rbx - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((-56))+rsi] - lea r9,QWORD PTR[16+rbx*1+r9] - vmovdqu XMMWORD PTR[144+rsp],xmm11 - vaesdec xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+8))+rsp] - mov rbx,QWORD PTR[((64+16))+rsp] - vaesdec xmm3,xmm3,xmm1 - prefetcht0 [31+r10] - vaesdec xmm4,xmm4,xmm1 - prefetcht0 [15+r8] - vaesdec xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r10] - cmovge r10,rsp - vaesdec xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm1 - sub rbx,r10 - vaesdec xmm8,xmm8,xmm1 - vmovdqu xmm12,XMMWORD PTR[16+r10] - mov QWORD PTR[((64+16))+rsp],rbx - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-40))+rsi] - lea r10,QWORD PTR[16+rbx*1+r10] - vmovdqu XMMWORD PTR[160+rsp],xmm12 - vaesdec xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+12))+rsp] - mov rbx,QWORD PTR[((64+24))+rsp] - vaesdec xmm3,xmm3,xmm0 - prefetcht0 [31+r11] - vaesdec xmm4,xmm4,xmm0 - prefetcht0 [15+r9] - vaesdec xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r11] - cmovge r11,rsp - vaesdec xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm0 - sub rbx,r11 - vaesdec xmm8,xmm8,xmm0 - vmovdqu xmm13,XMMWORD PTR[16+r11] - mov QWORD PTR[((64+24))+rsp],rbx - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((-24))+rsi] - lea r11,QWORD PTR[16+rbx*1+r11] - vmovdqu XMMWORD PTR[176+rsp],xmm13 - vaesdec xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+16))+rsp] - mov rbx,QWORD PTR[((64+32))+rsp] - vaesdec xmm3,xmm3,xmm1 - prefetcht0 [31+r12] - vaesdec xmm4,xmm4,xmm1 - prefetcht0 [15+r10] - vaesdec xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r12] - cmovge r12,rsp - vaesdec xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm1 - sub rbx,r12 - vaesdec xmm8,xmm8,xmm1 - vmovdqu xmm10,XMMWORD PTR[16+r12] - mov QWORD PTR[((64+32))+rsp],rbx - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((-8))+rsi] - lea r12,QWORD PTR[16+rbx*1+r12] - vaesdec xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+20))+rsp] - mov rbx,QWORD PTR[((64+40))+rsp] - vaesdec xmm3,xmm3,xmm0 - prefetcht0 [31+r13] - vaesdec xmm4,xmm4,xmm0 - prefetcht0 [15+r11] - vaesdec xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[r13*1+rbx] - cmovge r13,rsp - vaesdec xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm0 - sub rbx,r13 - vaesdec xmm8,xmm8,xmm0 - vmovdqu xmm11,XMMWORD PTR[16+r13] - mov QWORD PTR[((64+40))+rsp],rbx - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[8+rsi] - lea r13,QWORD PTR[16+rbx*1+r13] - vaesdec xmm2,xmm2,xmm1 - cmp ecx,DWORD PTR[((32+24))+rsp] - mov rbx,QWORD PTR[((64+48))+rsp] - vaesdec xmm3,xmm3,xmm1 - prefetcht0 [31+r14] - vaesdec xmm4,xmm4,xmm1 - prefetcht0 [15+r12] - vaesdec xmm5,xmm5,xmm1 - lea rbx,QWORD PTR[rbx*1+r14] - cmovge r14,rsp - vaesdec xmm6,xmm6,xmm1 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm1 - sub rbx,r14 - vaesdec xmm8,xmm8,xmm1 - vmovdqu xmm12,XMMWORD PTR[16+r14] - mov QWORD PTR[((64+48))+rsp],rbx - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[24+rsi] - lea r14,QWORD PTR[16+rbx*1+r14] - vaesdec xmm2,xmm2,xmm0 - cmp ecx,DWORD PTR[((32+28))+rsp] - mov rbx,QWORD PTR[((64+56))+rsp] - vaesdec xmm3,xmm3,xmm0 - prefetcht0 [31+r15] - vaesdec xmm4,xmm4,xmm0 - prefetcht0 [15+r13] - vaesdec xmm5,xmm5,xmm0 - lea rbx,QWORD PTR[rbx*1+r15] - cmovge r15,rsp - vaesdec xmm6,xmm6,xmm0 - cmovg rbx,rsp - vaesdec xmm7,xmm7,xmm0 - sub rbx,r15 - vaesdec xmm8,xmm8,xmm0 - vmovdqu xmm13,XMMWORD PTR[16+r15] - mov QWORD PTR[((64+56))+rsp],rbx - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[40+rsi] - lea r15,QWORD PTR[16+rbx*1+r15] - vmovdqu xmm14,XMMWORD PTR[32+rsp] - prefetcht0 [15+r14] - prefetcht0 [15+r15] - cmp eax,11 - jb $L$dec8x_tail - - vaesdec xmm2,xmm2,xmm1 - vaesdec xmm3,xmm3,xmm1 - vaesdec xmm4,xmm4,xmm1 - vaesdec xmm5,xmm5,xmm1 - vaesdec xmm6,xmm6,xmm1 - vaesdec xmm7,xmm7,xmm1 - vaesdec xmm8,xmm8,xmm1 - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((176-120))+rsi] - - vaesdec xmm2,xmm2,xmm0 - vaesdec xmm3,xmm3,xmm0 - vaesdec xmm4,xmm4,xmm0 - vaesdec xmm5,xmm5,xmm0 - vaesdec xmm6,xmm6,xmm0 - vaesdec xmm7,xmm7,xmm0 - vaesdec xmm8,xmm8,xmm0 - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((192-120))+rsi] - je $L$dec8x_tail - - vaesdec xmm2,xmm2,xmm1 - vaesdec xmm3,xmm3,xmm1 - vaesdec xmm4,xmm4,xmm1 - vaesdec xmm5,xmm5,xmm1 - vaesdec xmm6,xmm6,xmm1 - vaesdec xmm7,xmm7,xmm1 - vaesdec xmm8,xmm8,xmm1 - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((208-120))+rsi] - - vaesdec xmm2,xmm2,xmm0 - vaesdec xmm3,xmm3,xmm0 - vaesdec xmm4,xmm4,xmm0 - vaesdec xmm5,xmm5,xmm0 - vaesdec xmm6,xmm6,xmm0 - vaesdec xmm7,xmm7,xmm0 - vaesdec xmm8,xmm8,xmm0 - vaesdec xmm9,xmm9,xmm0 - vmovups xmm0,XMMWORD PTR[((224-120))+rsi] - -$L$dec8x_tail:: - vaesdec xmm2,xmm2,xmm1 - vpxor xmm15,xmm15,xmm15 - vaesdec xmm3,xmm3,xmm1 - vaesdec xmm4,xmm4,xmm1 - vpcmpgtd xmm15,xmm14,xmm15 - vaesdec xmm5,xmm5,xmm1 - vaesdec xmm6,xmm6,xmm1 - vpaddd xmm15,xmm15,xmm14 - vmovdqu xmm14,XMMWORD PTR[48+rsp] - vaesdec xmm7,xmm7,xmm1 - mov rbx,QWORD PTR[64+rsp] - vaesdec xmm8,xmm8,xmm1 - vaesdec xmm9,xmm9,xmm1 - vmovups xmm1,XMMWORD PTR[((16-120))+rsi] - - vaesdeclast xmm2,xmm2,xmm0 - vmovdqa XMMWORD PTR[32+rsp],xmm15 - vpxor xmm15,xmm15,xmm15 - vaesdeclast xmm3,xmm3,xmm0 - vpxor xmm2,xmm2,XMMWORD PTR[rbp] - vaesdeclast xmm4,xmm4,xmm0 - vpxor xmm3,xmm3,XMMWORD PTR[16+rbp] - vpcmpgtd xmm15,xmm14,xmm15 - vaesdeclast xmm5,xmm5,xmm0 - vpxor xmm4,xmm4,XMMWORD PTR[32+rbp] - vaesdeclast xmm6,xmm6,xmm0 - vpxor xmm5,xmm5,XMMWORD PTR[48+rbp] - vpaddd xmm14,xmm14,xmm15 - vmovdqu xmm15,XMMWORD PTR[((-120))+rsi] - vaesdeclast xmm7,xmm7,xmm0 - vpxor xmm6,xmm6,XMMWORD PTR[64+rbp] - vaesdeclast xmm8,xmm8,xmm0 - vpxor xmm7,xmm7,XMMWORD PTR[80+rbp] - vmovdqa XMMWORD PTR[48+rsp],xmm14 - vaesdeclast xmm9,xmm9,xmm0 - vpxor xmm8,xmm8,XMMWORD PTR[96+rbp] - vmovups xmm0,XMMWORD PTR[((32-120))+rsi] - - vmovups XMMWORD PTR[(-16)+r8],xmm2 - sub r8,rbx - vmovdqu xmm2,XMMWORD PTR[((128+0))+rsp] - vpxor xmm9,xmm9,XMMWORD PTR[112+rbp] - vmovups XMMWORD PTR[(-16)+r9],xmm3 - sub r9,QWORD PTR[72+rsp] - vmovdqu XMMWORD PTR[rbp],xmm2 - vpxor xmm2,xmm2,xmm15 - vmovdqu xmm3,XMMWORD PTR[((128+16))+rsp] - vmovups XMMWORD PTR[(-16)+r10],xmm4 - sub r10,QWORD PTR[80+rsp] - vmovdqu XMMWORD PTR[16+rbp],xmm3 - vpxor xmm3,xmm3,xmm15 - vmovdqu xmm4,XMMWORD PTR[((128+32))+rsp] - vmovups XMMWORD PTR[(-16)+r11],xmm5 - sub r11,QWORD PTR[88+rsp] - vmovdqu XMMWORD PTR[32+rbp],xmm4 - vpxor xmm4,xmm4,xmm15 - vmovdqu xmm5,XMMWORD PTR[((128+48))+rsp] - vmovups XMMWORD PTR[(-16)+r12],xmm6 - sub r12,QWORD PTR[96+rsp] - vmovdqu XMMWORD PTR[48+rbp],xmm5 - vpxor xmm5,xmm5,xmm15 - vmovdqu XMMWORD PTR[64+rbp],xmm10 - vpxor xmm6,xmm15,xmm10 - vmovups XMMWORD PTR[(-16)+r13],xmm7 - sub r13,QWORD PTR[104+rsp] - vmovdqu XMMWORD PTR[80+rbp],xmm11 - vpxor xmm7,xmm15,xmm11 - vmovups XMMWORD PTR[(-16)+r14],xmm8 - sub r14,QWORD PTR[112+rsp] - vmovdqu XMMWORD PTR[96+rbp],xmm12 - vpxor xmm8,xmm15,xmm12 - vmovups XMMWORD PTR[(-16)+r15],xmm9 - sub r15,QWORD PTR[120+rsp] - vmovdqu XMMWORD PTR[112+rbp],xmm13 - vpxor xmm9,xmm15,xmm13 - - xor rbp,128 - dec edx - jnz $L$oop_dec8x - - mov rax,QWORD PTR[16+rsp] - - - - - -$L$dec8x_done:: - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$dec8x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_decrypt_avx:: -aesni_multi_cbc_decrypt_avx ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[16+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea rsi,QWORD PTR[((-56-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_end_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_info_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_begin_aesni_multi_cbc_decrypt - DD imagerel $L$SEH_end_aesni_multi_cbc_decrypt - DD imagerel $L$SEH_info_aesni_multi_cbc_decrypt - DD imagerel $L$SEH_begin_aesni_multi_cbc_encrypt_avx - DD imagerel $L$SEH_end_aesni_multi_cbc_encrypt_avx - DD imagerel $L$SEH_info_aesni_multi_cbc_encrypt_avx - DD imagerel $L$SEH_begin_aesni_multi_cbc_decrypt_avx - DD imagerel $L$SEH_end_aesni_multi_cbc_decrypt_avx - DD imagerel $L$SEH_info_aesni_multi_cbc_decrypt_avx -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_aesni_multi_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc4x_body,imagerel $L$enc4x_epilogue -$L$SEH_info_aesni_multi_cbc_decrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec4x_body,imagerel $L$dec4x_epilogue -$L$SEH_info_aesni_multi_cbc_encrypt_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc8x_body,imagerel $L$enc8x_epilogue -$L$SEH_info_aesni_multi_cbc_decrypt_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec8x_body,imagerel $L$dec8x_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/aesni-sha1-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/aesni-sha1-x86_64.asm deleted file mode 100644 index 5a2c8e0eb52b0b..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/aesni-sha1-x86_64.asm +++ /dev/null @@ -1,3234 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC aesni_cbc_sha1_enc - -ALIGN 32 -aesni_cbc_sha1_enc PROC PUBLIC - - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+0))] - mov r11,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt r11,61 - jc aesni_cbc_sha1_enc_shaext - and r11d,268435456 - and r10d,1073741824 - or r10d,r11d - cmp r10d,1342177280 - je aesni_cbc_sha1_enc_avx - jmp aesni_cbc_sha1_enc_ssse3 - DB 0F3h,0C3h ;repret -aesni_cbc_sha1_enc ENDP - -ALIGN 32 -aesni_cbc_sha1_enc_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha1_enc_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-264))+rsp] - - - movaps XMMWORD PTR[(96+0)+rsp],xmm6 - movaps XMMWORD PTR[(96+16)+rsp],xmm7 - movaps XMMWORD PTR[(96+32)+rsp],xmm8 - movaps XMMWORD PTR[(96+48)+rsp],xmm9 - movaps XMMWORD PTR[(96+64)+rsp],xmm10 - movaps XMMWORD PTR[(96+80)+rsp],xmm11 - movaps XMMWORD PTR[(96+96)+rsp],xmm12 - movaps XMMWORD PTR[(96+112)+rsp],xmm13 - movaps XMMWORD PTR[(96+128)+rsp],xmm14 - movaps XMMWORD PTR[(96+144)+rsp],xmm15 -$L$prologue_ssse3:: - mov r12,rdi - mov r13,rsi - mov r14,rdx - lea r15,QWORD PTR[112+rcx] - movdqu xmm2,XMMWORD PTR[r8] - mov QWORD PTR[88+rsp],r8 - shl r14,6 - sub r13,r12 - mov r8d,DWORD PTR[((240-112))+r15] - add r14,r10 - - lea r11,QWORD PTR[K_XX_XX] - mov eax,DWORD PTR[r9] - mov ebx,DWORD PTR[4+r9] - mov ecx,DWORD PTR[8+r9] - mov edx,DWORD PTR[12+r9] - mov esi,ebx - mov ebp,DWORD PTR[16+r9] - mov edi,ecx - xor edi,edx - and esi,edi - - movdqa xmm3,XMMWORD PTR[64+r11] - movdqa xmm13,XMMWORD PTR[r11] - movdqu xmm4,XMMWORD PTR[r10] - movdqu xmm5,XMMWORD PTR[16+r10] - movdqu xmm6,XMMWORD PTR[32+r10] - movdqu xmm7,XMMWORD PTR[48+r10] -DB 102,15,56,0,227 -DB 102,15,56,0,235 -DB 102,15,56,0,243 - add r10,64 - paddd xmm4,xmm13 -DB 102,15,56,0,251 - paddd xmm5,xmm13 - paddd xmm6,xmm13 - movdqa XMMWORD PTR[rsp],xmm4 - psubd xmm4,xmm13 - movdqa XMMWORD PTR[16+rsp],xmm5 - psubd xmm5,xmm13 - movdqa XMMWORD PTR[32+rsp],xmm6 - psubd xmm6,xmm13 - movups xmm15,XMMWORD PTR[((-112))+r15] - movups xmm0,XMMWORD PTR[((16-112))+r15] - jmp $L$oop_ssse3 -ALIGN 32 -$L$oop_ssse3:: - ror ebx,2 - movups xmm14,XMMWORD PTR[r12] - xorps xmm14,xmm15 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - pshufd xmm8,xmm4,238 - xor esi,edx - movdqa xmm12,xmm7 - paddd xmm13,xmm7 - mov edi,eax - add ebp,DWORD PTR[rsp] - punpcklqdq xmm8,xmm5 - xor ebx,ecx - rol eax,5 - add ebp,esi - psrldq xmm12,4 - and edi,ebx - xor ebx,ecx - pxor xmm8,xmm4 - add ebp,eax - ror eax,7 - pxor xmm12,xmm6 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - pxor xmm8,xmm12 - xor eax,ebx - rol ebp,5 - movdqa XMMWORD PTR[48+rsp],xmm13 - add edx,edi - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - and esi,eax - movdqa xmm3,xmm8 - xor eax,ebx - add edx,ebp - ror ebp,7 - movdqa xmm12,xmm8 - xor esi,ebx - pslldq xmm3,12 - paddd xmm8,xmm8 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - psrld xmm12,31 - xor ebp,eax - rol edx,5 - add ecx,esi - movdqa xmm13,xmm3 - and edi,ebp - xor ebp,eax - psrld xmm3,30 - add ecx,edx - ror edx,7 - por xmm8,xmm12 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - pslld xmm13,2 - pxor xmm8,xmm3 - xor edx,ebp - movdqa xmm3,XMMWORD PTR[r11] - rol ecx,5 - add ebx,edi - and esi,edx - pxor xmm8,xmm13 - xor edx,ebp - add ebx,ecx - ror ecx,7 - pshufd xmm9,xmm5,238 - xor esi,ebp - movdqa xmm13,xmm8 - paddd xmm3,xmm8 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - punpcklqdq xmm9,xmm6 - xor ecx,edx - rol ebx,5 - add eax,esi - psrldq xmm13,4 - and edi,ecx - xor ecx,edx - pxor xmm9,xmm5 - add eax,ebx - ror ebx,7 - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - pxor xmm13,xmm7 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - pxor xmm9,xmm13 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR[rsp],xmm3 - add ebp,edi - and esi,ebx - movdqa xmm12,xmm9 - xor ebx,ecx - add ebp,eax - ror eax,7 - movdqa xmm13,xmm9 - xor esi,ecx - pslldq xmm12,12 - paddd xmm9,xmm9 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - psrld xmm13,31 - xor eax,ebx - rol ebp,5 - add edx,esi - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - movdqa xmm3,xmm12 - and edi,eax - xor eax,ebx - psrld xmm12,30 - add edx,ebp - ror ebp,7 - por xmm9,xmm13 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - pslld xmm3,2 - pxor xmm9,xmm12 - xor ebp,eax - movdqa xmm12,XMMWORD PTR[16+r11] - rol edx,5 - add ecx,edi - and esi,ebp - pxor xmm9,xmm3 - xor ebp,eax - add ecx,edx - ror edx,7 - pshufd xmm10,xmm6,238 - xor esi,eax - movdqa xmm3,xmm9 - paddd xmm12,xmm9 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - punpcklqdq xmm10,xmm7 - xor edx,ebp - rol ecx,5 - add ebx,esi - psrldq xmm3,4 - and edi,edx - xor edx,ebp - pxor xmm10,xmm6 - add ebx,ecx - ror ecx,7 - pxor xmm3,xmm8 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - pxor xmm10,xmm3 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR[16+rsp],xmm12 - add eax,edi - and esi,ecx - movdqa xmm13,xmm10 - xor ecx,edx - add eax,ebx - ror ebx,7 - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - movdqa xmm3,xmm10 - xor esi,edx - pslldq xmm13,12 - paddd xmm10,xmm10 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - psrld xmm3,31 - xor ebx,ecx - rol eax,5 - add ebp,esi - movdqa xmm12,xmm13 - and edi,ebx - xor ebx,ecx - psrld xmm13,30 - add ebp,eax - ror eax,7 - por xmm10,xmm3 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - pslld xmm12,2 - pxor xmm10,xmm13 - xor eax,ebx - movdqa xmm13,XMMWORD PTR[16+r11] - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - and esi,eax - pxor xmm10,xmm12 - xor eax,ebx - add edx,ebp - ror ebp,7 - pshufd xmm11,xmm7,238 - xor esi,ebx - movdqa xmm12,xmm10 - paddd xmm13,xmm10 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - punpcklqdq xmm11,xmm8 - xor ebp,eax - rol edx,5 - add ecx,esi - psrldq xmm12,4 - and edi,ebp - xor ebp,eax - pxor xmm11,xmm7 - add ecx,edx - ror edx,7 - pxor xmm12,xmm9 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - pxor xmm11,xmm12 - xor edx,ebp - rol ecx,5 - movdqa XMMWORD PTR[32+rsp],xmm13 - add ebx,edi - and esi,edx - movdqa xmm3,xmm11 - xor edx,ebp - add ebx,ecx - ror ecx,7 - movdqa xmm12,xmm11 - xor esi,ebp - pslldq xmm3,12 - paddd xmm11,xmm11 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - psrld xmm12,31 - xor ecx,edx - rol ebx,5 - add eax,esi - movdqa xmm13,xmm3 - and edi,ecx - xor ecx,edx - psrld xmm3,30 - add eax,ebx - ror ebx,7 - cmp r8d,11 - jb $L$aesenclast1 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast1 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast1:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - por xmm11,xmm12 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - pslld xmm13,2 - pxor xmm11,xmm3 - xor ebx,ecx - movdqa xmm3,XMMWORD PTR[16+r11] - rol eax,5 - add ebp,edi - and esi,ebx - pxor xmm11,xmm13 - pshufd xmm13,xmm10,238 - xor ebx,ecx - add ebp,eax - ror eax,7 - pxor xmm4,xmm8 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - punpcklqdq xmm13,xmm11 - xor eax,ebx - rol ebp,5 - pxor xmm4,xmm5 - add edx,esi - movups xmm14,XMMWORD PTR[16+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[r13*1+r12],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - and edi,eax - movdqa xmm12,xmm3 - xor eax,ebx - paddd xmm3,xmm11 - add edx,ebp - pxor xmm4,xmm13 - ror ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[4+rsp] - movdqa xmm13,xmm4 - xor ebp,eax - rol edx,5 - movdqa XMMWORD PTR[48+rsp],xmm3 - add ecx,edi - and esi,ebp - xor ebp,eax - pslld xmm4,2 - add ecx,edx - ror edx,7 - psrld xmm13,30 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - por xmm4,xmm13 - xor edx,ebp - rol ecx,5 - pshufd xmm3,xmm11,238 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - pxor xmm5,xmm9 - add ebp,DWORD PTR[16+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - xor esi,ecx - punpcklqdq xmm3,xmm4 - mov edi,eax - rol eax,5 - pxor xmm5,xmm6 - add ebp,esi - xor edi,ecx - movdqa xmm13,xmm12 - ror ebx,7 - paddd xmm12,xmm4 - add ebp,eax - pxor xmm5,xmm3 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm3,xmm5 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[rsp],xmm12 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[24+rsp] - pslld xmm5,2 - xor esi,eax - mov edi,edx - psrld xmm3,30 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - por xmm5,xmm3 - add ecx,edx - add ebx,DWORD PTR[28+rsp] - pshufd xmm12,xmm4,238 - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - pxor xmm6,xmm10 - add eax,DWORD PTR[32+rsp] - xor esi,edx - punpcklqdq xmm12,xmm5 - mov edi,ebx - rol ebx,5 - pxor xmm6,xmm7 - add eax,esi - xor edi,edx - movdqa xmm3,XMMWORD PTR[32+r11] - ror ecx,7 - paddd xmm13,xmm5 - add eax,ebx - pxor xmm6,xmm12 - add ebp,DWORD PTR[36+rsp] - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - movdqa xmm12,xmm6 - add ebp,edi - xor esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm13 - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[40+rsp] - pslld xmm6,2 - xor esi,ebx - mov edi,ebp - psrld xmm12,30 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - por xmm6,xmm12 - add edx,ebp - add ecx,DWORD PTR[44+rsp] - pshufd xmm13,xmm5,238 - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - xor esi,eax - ror ebp,7 - add ecx,edx - pxor xmm7,xmm11 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - punpcklqdq xmm13,xmm6 - mov edi,ecx - rol ecx,5 - pxor xmm7,xmm8 - add ebx,esi - xor edi,ebp - movdqa xmm12,xmm3 - ror edx,7 - paddd xmm3,xmm6 - add ebx,ecx - pxor xmm7,xmm13 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - movdqa xmm13,xmm7 - add eax,edi - xor esi,edx - movdqa XMMWORD PTR[32+rsp],xmm3 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[56+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - pslld xmm7,2 - xor esi,ecx - mov edi,eax - psrld xmm13,30 - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - por xmm7,xmm13 - add ebp,eax - add edx,DWORD PTR[60+rsp] - pshufd xmm3,xmm6,238 - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - pxor xmm8,xmm4 - add ecx,DWORD PTR[rsp] - xor esi,eax - punpcklqdq xmm3,xmm7 - mov edi,edx - rol edx,5 - pxor xmm8,xmm9 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - movdqa xmm13,xmm12 - ror ebp,7 - paddd xmm12,xmm7 - add ecx,edx - pxor xmm8,xmm3 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - movdqa xmm3,xmm8 - add ebx,edi - xor esi,ebp - movdqa XMMWORD PTR[48+rsp],xmm12 - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[8+rsp] - pslld xmm8,2 - xor esi,edx - mov edi,ebx - psrld xmm3,30 - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - por xmm8,xmm3 - add eax,ebx - add ebp,DWORD PTR[12+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - pshufd xmm12,xmm7,238 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - pxor xmm9,xmm5 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - punpcklqdq xmm12,xmm8 - mov edi,ebp - rol ebp,5 - pxor xmm9,xmm10 - add edx,esi - xor edi,ebx - movdqa xmm3,xmm13 - ror eax,7 - paddd xmm13,xmm8 - add edx,ebp - pxor xmm9,xmm12 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - movdqa xmm12,xmm9 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast2 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast2 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast2:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - movdqa XMMWORD PTR[rsp],xmm13 - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[24+rsp] - pslld xmm9,2 - xor esi,ebp - mov edi,ecx - psrld xmm12,30 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - por xmm9,xmm12 - add ebx,ecx - add eax,DWORD PTR[28+rsp] - pshufd xmm13,xmm8,238 - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - pxor xmm10,xmm6 - add ebp,DWORD PTR[32+rsp] - movups xmm14,XMMWORD PTR[32+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[16+r12*1+r13],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - and esi,ecx - xor ecx,edx - ror ebx,7 - punpcklqdq xmm13,xmm9 - mov edi,eax - xor esi,ecx - pxor xmm10,xmm11 - rol eax,5 - add ebp,esi - movdqa xmm12,xmm3 - xor edi,ebx - paddd xmm3,xmm9 - xor ebx,ecx - pxor xmm10,xmm13 - add ebp,eax - add edx,DWORD PTR[36+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - movdqa xmm13,xmm10 - mov esi,ebp - xor edi,ebx - movdqa XMMWORD PTR[16+rsp],xmm3 - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - xor esi,eax - pslld xmm10,2 - xor eax,ebx - add edx,ebp - psrld xmm13,30 - add ecx,DWORD PTR[40+rsp] - and esi,eax - xor eax,ebx - por xmm10,xmm13 - ror ebp,7 - mov edi,edx - xor esi,eax - rol edx,5 - pshufd xmm3,xmm9,238 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - mov esi,ecx - xor edi,ebp - rol ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - pxor xmm11,xmm7 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - ror ecx,7 - punpcklqdq xmm3,xmm10 - mov edi,ebx - xor esi,edx - pxor xmm11,xmm4 - rol ebx,5 - add eax,esi - movdqa xmm13,XMMWORD PTR[48+r11] - xor edi,ecx - paddd xmm12,xmm10 - xor ecx,edx - pxor xmm11,xmm3 - add eax,ebx - add ebp,DWORD PTR[52+rsp] - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - and edi,ecx - xor ecx,edx - ror ebx,7 - movdqa xmm3,xmm11 - mov esi,eax - xor edi,ecx - movdqa XMMWORD PTR[32+rsp],xmm12 - rol eax,5 - add ebp,edi - xor esi,ebx - pslld xmm11,2 - xor ebx,ecx - add ebp,eax - psrld xmm3,30 - add edx,DWORD PTR[56+rsp] - and esi,ebx - xor ebx,ecx - por xmm11,xmm3 - ror eax,7 - mov edi,ebp - xor esi,ebx - rol ebp,5 - pshufd xmm12,xmm10,238 - add edx,esi - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - mov esi,edx - xor edi,eax - rol edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - pxor xmm4,xmm8 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - ror edx,7 - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - punpcklqdq xmm12,xmm11 - mov edi,ecx - xor esi,ebp - pxor xmm4,xmm5 - rol ecx,5 - add ebx,esi - movdqa xmm3,xmm13 - xor edi,edx - paddd xmm13,xmm11 - xor edx,ebp - pxor xmm4,xmm12 - add ebx,ecx - add eax,DWORD PTR[4+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - movdqa xmm12,xmm4 - mov esi,ebx - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm13 - rol ebx,5 - add eax,edi - xor esi,ecx - pslld xmm4,2 - xor ecx,edx - add eax,ebx - psrld xmm12,30 - add ebp,DWORD PTR[8+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - and esi,ecx - xor ecx,edx - por xmm4,xmm12 - ror ebx,7 - mov edi,eax - xor esi,ecx - rol eax,5 - pshufd xmm13,xmm11,238 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - mov esi,ebp - xor edi,ebx - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor esi,eax - xor eax,ebx - add edx,ebp - pxor xmm5,xmm9 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - ror ebp,7 - punpcklqdq xmm13,xmm4 - mov edi,edx - xor esi,eax - pxor xmm5,xmm6 - rol edx,5 - add ecx,esi - movdqa xmm12,xmm3 - xor edi,ebp - paddd xmm3,xmm4 - xor ebp,eax - pxor xmm5,xmm13 - add ecx,edx - add ebx,DWORD PTR[20+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - movdqa xmm13,xmm5 - mov esi,ecx - xor edi,ebp - movdqa XMMWORD PTR[rsp],xmm3 - rol ecx,5 - add ebx,edi - xor esi,edx - pslld xmm5,2 - xor edx,ebp - add ebx,ecx - psrld xmm13,30 - add eax,DWORD PTR[24+rsp] - and esi,edx - xor edx,ebp - por xmm5,xmm13 - ror ecx,7 - mov edi,ebx - xor esi,edx - rol ebx,5 - pshufd xmm3,xmm4,238 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - cmp r8d,11 - jb $L$aesenclast3 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast3 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast3:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - and edi,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor edi,ecx - rol eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - pxor xmm6,xmm10 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - ror eax,7 - punpcklqdq xmm3,xmm5 - mov edi,ebp - xor esi,ebx - pxor xmm6,xmm7 - rol ebp,5 - add edx,esi - movups xmm14,XMMWORD PTR[48+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[32+r12*1+r13],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - movdqa xmm13,xmm12 - xor edi,eax - paddd xmm12,xmm5 - xor eax,ebx - pxor xmm6,xmm3 - add edx,ebp - add ecx,DWORD PTR[36+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - movdqa xmm3,xmm6 - mov esi,edx - xor edi,eax - movdqa XMMWORD PTR[16+rsp],xmm12 - rol edx,5 - add ecx,edi - xor esi,ebp - pslld xmm6,2 - xor ebp,eax - add ecx,edx - psrld xmm3,30 - add ebx,DWORD PTR[40+rsp] - and esi,ebp - xor ebp,eax - por xmm6,xmm3 - ror edx,7 - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - mov edi,ecx - xor esi,ebp - rol ecx,5 - pshufd xmm12,xmm5,238 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - pxor xmm7,xmm11 - add ebp,DWORD PTR[48+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - xor esi,ecx - punpcklqdq xmm12,xmm6 - mov edi,eax - rol eax,5 - pxor xmm7,xmm8 - add ebp,esi - xor edi,ecx - movdqa xmm3,xmm13 - ror ebx,7 - paddd xmm13,xmm6 - add ebp,eax - pxor xmm7,xmm12 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm12,xmm7 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[32+rsp],xmm13 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[56+rsp] - pslld xmm7,2 - xor esi,eax - mov edi,edx - psrld xmm12,30 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - por xmm7,xmm12 - add ecx,edx - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - paddd xmm3,xmm7 - add eax,esi - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm3 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - xor esi,eax - ror ebp,7 - add ecx,edx - cmp r10,r14 - je $L$done_ssse3 - movdqa xmm3,XMMWORD PTR[64+r11] - movdqa xmm13,XMMWORD PTR[r11] - movdqu xmm4,XMMWORD PTR[r10] - movdqu xmm5,XMMWORD PTR[16+r10] - movdqu xmm6,XMMWORD PTR[32+r10] - movdqu xmm7,XMMWORD PTR[48+r10] -DB 102,15,56,0,227 - add r10,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx -DB 102,15,56,0,235 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - paddd xmm4,xmm13 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - movdqa XMMWORD PTR[rsp],xmm4 - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - psubd xmm4,xmm13 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx -DB 102,15,56,0,243 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - paddd xmm5,xmm13 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm5 - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - psubd xmm5,xmm13 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp -DB 102,15,56,0,251 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - paddd xmm6,xmm13 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - movdqa XMMWORD PTR[32+rsp],xmm6 - rol edx,5 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast4 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast4 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast4:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - ror ebp,7 - psubd xmm6,xmm13 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - movups XMMWORD PTR[48+r12*1+r13],xmm2 - lea r12,QWORD PTR[64+r12] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - add edx,DWORD PTR[12+r9] - mov DWORD PTR[r9],eax - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[4+r9],esi - mov ebx,esi - mov DWORD PTR[8+r9],ecx - mov edi,ecx - mov DWORD PTR[12+r9],edx - xor edi,edx - mov DWORD PTR[16+r9],ebp - and esi,edi - jmp $L$oop_ssse3 - -$L$done_ssse3:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast5 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast5 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast5:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - movups XMMWORD PTR[48+r12*1+r13],xmm2 - mov r8,QWORD PTR[88+rsp] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - mov DWORD PTR[r9],eax - add edx,DWORD PTR[12+r9] - mov DWORD PTR[4+r9],esi - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - mov DWORD PTR[16+r9],ebp - movups XMMWORD PTR[r8],xmm2 - movaps xmm6,XMMWORD PTR[((96+0))+rsp] - movaps xmm7,XMMWORD PTR[((96+16))+rsp] - movaps xmm8,XMMWORD PTR[((96+32))+rsp] - movaps xmm9,XMMWORD PTR[((96+48))+rsp] - movaps xmm10,XMMWORD PTR[((96+64))+rsp] - movaps xmm11,XMMWORD PTR[((96+80))+rsp] - movaps xmm12,XMMWORD PTR[((96+96))+rsp] - movaps xmm13,XMMWORD PTR[((96+112))+rsp] - movaps xmm14,XMMWORD PTR[((96+128))+rsp] - movaps xmm15,XMMWORD PTR[((96+144))+rsp] - lea rsi,QWORD PTR[264+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha1_enc_ssse3:: -aesni_cbc_sha1_enc_ssse3 ENDP - -ALIGN 32 -aesni_cbc_sha1_enc_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha1_enc_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-264))+rsp] - - - movaps XMMWORD PTR[(96+0)+rsp],xmm6 - movaps XMMWORD PTR[(96+16)+rsp],xmm7 - movaps XMMWORD PTR[(96+32)+rsp],xmm8 - movaps XMMWORD PTR[(96+48)+rsp],xmm9 - movaps XMMWORD PTR[(96+64)+rsp],xmm10 - movaps XMMWORD PTR[(96+80)+rsp],xmm11 - movaps XMMWORD PTR[(96+96)+rsp],xmm12 - movaps XMMWORD PTR[(96+112)+rsp],xmm13 - movaps XMMWORD PTR[(96+128)+rsp],xmm14 - movaps XMMWORD PTR[(96+144)+rsp],xmm15 -$L$prologue_avx:: - vzeroall - mov r12,rdi - mov r13,rsi - mov r14,rdx - lea r15,QWORD PTR[112+rcx] - vmovdqu xmm12,XMMWORD PTR[r8] - mov QWORD PTR[88+rsp],r8 - shl r14,6 - sub r13,r12 - mov r8d,DWORD PTR[((240-112))+r15] - add r14,r10 - - lea r11,QWORD PTR[K_XX_XX] - mov eax,DWORD PTR[r9] - mov ebx,DWORD PTR[4+r9] - mov ecx,DWORD PTR[8+r9] - mov edx,DWORD PTR[12+r9] - mov esi,ebx - mov ebp,DWORD PTR[16+r9] - mov edi,ecx - xor edi,edx - and esi,edi - - vmovdqa xmm6,XMMWORD PTR[64+r11] - vmovdqa xmm10,XMMWORD PTR[r11] - vmovdqu xmm0,XMMWORD PTR[r10] - vmovdqu xmm1,XMMWORD PTR[16+r10] - vmovdqu xmm2,XMMWORD PTR[32+r10] - vmovdqu xmm3,XMMWORD PTR[48+r10] - vpshufb xmm0,xmm0,xmm6 - add r10,64 - vpshufb xmm1,xmm1,xmm6 - vpshufb xmm2,xmm2,xmm6 - vpshufb xmm3,xmm3,xmm6 - vpaddd xmm4,xmm0,xmm10 - vpaddd xmm5,xmm1,xmm10 - vpaddd xmm6,xmm2,xmm10 - vmovdqa XMMWORD PTR[rsp],xmm4 - vmovdqa XMMWORD PTR[16+rsp],xmm5 - vmovdqa XMMWORD PTR[32+rsp],xmm6 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - jmp $L$oop_avx -ALIGN 32 -$L$oop_avx:: - shrd ebx,ebx,2 - vmovdqu xmm13,XMMWORD PTR[r12] - vpxor xmm13,xmm13,xmm15 - vpxor xmm12,xmm12,xmm13 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-80))+r15] - xor esi,edx - vpalignr xmm4,xmm1,xmm0,8 - mov edi,eax - add ebp,DWORD PTR[rsp] - vpaddd xmm9,xmm10,xmm3 - xor ebx,ecx - shld eax,eax,5 - vpsrldq xmm8,xmm3,4 - add ebp,esi - and edi,ebx - vpxor xmm4,xmm4,xmm0 - xor ebx,ecx - add ebp,eax - vpxor xmm8,xmm8,xmm2 - shrd eax,eax,7 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - vpxor xmm4,xmm4,xmm8 - xor eax,ebx - shld ebp,ebp,5 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - add edx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-64))+r15] - and esi,eax - vpsrld xmm8,xmm4,31 - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor esi,ebx - vpslldq xmm9,xmm4,12 - vpaddd xmm4,xmm4,xmm4 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - xor ebp,eax - shld edx,edx,5 - vpor xmm4,xmm4,xmm8 - vpsrld xmm8,xmm9,30 - add ecx,esi - and edi,ebp - xor ebp,eax - add ecx,edx - vpslld xmm9,xmm9,2 - vpxor xmm4,xmm4,xmm8 - shrd edx,edx,7 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-48))+r15] - vpxor xmm4,xmm4,xmm9 - xor edx,ebp - shld ecx,ecx,5 - add ebx,edi - and esi,edx - xor edx,ebp - add ebx,ecx - shrd ecx,ecx,7 - xor esi,ebp - vpalignr xmm5,xmm2,xmm1,8 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - vpaddd xmm9,xmm10,xmm4 - xor ecx,edx - shld ebx,ebx,5 - vpsrldq xmm8,xmm4,4 - add eax,esi - and edi,ecx - vpxor xmm5,xmm5,xmm1 - xor ecx,edx - add eax,ebx - vpxor xmm8,xmm8,xmm3 - shrd ebx,ebx,7 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-32))+r15] - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - vpxor xmm5,xmm5,xmm8 - xor ebx,ecx - shld eax,eax,5 - vmovdqa XMMWORD PTR[rsp],xmm9 - add ebp,edi - and esi,ebx - vpsrld xmm8,xmm5,31 - xor ebx,ecx - add ebp,eax - shrd eax,eax,7 - xor esi,ecx - vpslldq xmm9,xmm5,12 - vpaddd xmm5,xmm5,xmm5 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - xor eax,ebx - shld ebp,ebp,5 - vpor xmm5,xmm5,xmm8 - vpsrld xmm8,xmm9,30 - add edx,esi - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-16))+r15] - and edi,eax - xor eax,ebx - add edx,ebp - vpslld xmm9,xmm9,2 - vpxor xmm5,xmm5,xmm8 - shrd ebp,ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - vpxor xmm5,xmm5,xmm9 - xor ebp,eax - shld edx,edx,5 - vmovdqa xmm10,XMMWORD PTR[16+r11] - add ecx,edi - and esi,ebp - xor ebp,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - vpalignr xmm6,xmm3,xmm2,8 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[r15] - vpaddd xmm9,xmm10,xmm5 - xor edx,ebp - shld ecx,ecx,5 - vpsrldq xmm8,xmm5,4 - add ebx,esi - and edi,edx - vpxor xmm6,xmm6,xmm2 - xor edx,ebp - add ebx,ecx - vpxor xmm8,xmm8,xmm4 - shrd ecx,ecx,7 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - vpxor xmm6,xmm6,xmm8 - xor ecx,edx - shld ebx,ebx,5 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - add eax,edi - and esi,ecx - vpsrld xmm8,xmm6,31 - xor ecx,edx - add eax,ebx - shrd ebx,ebx,7 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[16+r15] - xor esi,edx - vpslldq xmm9,xmm6,12 - vpaddd xmm6,xmm6,xmm6 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - xor ebx,ecx - shld eax,eax,5 - vpor xmm6,xmm6,xmm8 - vpsrld xmm8,xmm9,30 - add ebp,esi - and edi,ebx - xor ebx,ecx - add ebp,eax - vpslld xmm9,xmm9,2 - vpxor xmm6,xmm6,xmm8 - shrd eax,eax,7 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - vpxor xmm6,xmm6,xmm9 - xor eax,ebx - shld ebp,ebp,5 - add edx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[32+r15] - and esi,eax - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor esi,ebx - vpalignr xmm7,xmm4,xmm3,8 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - vpaddd xmm9,xmm10,xmm6 - xor ebp,eax - shld edx,edx,5 - vpsrldq xmm8,xmm6,4 - add ecx,esi - and edi,ebp - vpxor xmm7,xmm7,xmm3 - xor ebp,eax - add ecx,edx - vpxor xmm8,xmm8,xmm5 - shrd edx,edx,7 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[48+r15] - vpxor xmm7,xmm7,xmm8 - xor edx,ebp - shld ecx,ecx,5 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add ebx,edi - and esi,edx - vpsrld xmm8,xmm7,31 - xor edx,ebp - add ebx,ecx - shrd ecx,ecx,7 - xor esi,ebp - vpslldq xmm9,xmm7,12 - vpaddd xmm7,xmm7,xmm7 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - xor ecx,edx - shld ebx,ebx,5 - vpor xmm7,xmm7,xmm8 - vpsrld xmm8,xmm9,30 - add eax,esi - and edi,ecx - xor ecx,edx - add eax,ebx - vpslld xmm9,xmm9,2 - vpxor xmm7,xmm7,xmm8 - shrd ebx,ebx,7 - cmp r8d,11 - jb $L$vaesenclast6 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[64+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[80+r15] - je $L$vaesenclast6 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[96+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[112+r15] -$L$vaesenclast6:: - vaesenclast xmm12,xmm12,xmm15 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - vpxor xmm7,xmm7,xmm9 - xor ebx,ecx - shld eax,eax,5 - add ebp,edi - and esi,ebx - xor ebx,ecx - add ebp,eax - vpalignr xmm8,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - shrd eax,eax,7 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - vpxor xmm0,xmm0,xmm1 - xor eax,ebx - shld ebp,ebp,5 - vpaddd xmm9,xmm10,xmm7 - add edx,esi - vmovdqu xmm13,XMMWORD PTR[16+r12] - vpxor xmm13,xmm13,xmm15 - vmovups XMMWORD PTR[r13*1+r12],xmm12 - vpxor xmm12,xmm12,xmm13 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-80))+r15] - and edi,eax - vpxor xmm0,xmm0,xmm8 - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor edi,ebx - vpsrld xmm8,xmm0,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - mov esi,edx - add ecx,DWORD PTR[4+rsp] - xor ebp,eax - shld edx,edx,5 - vpslld xmm0,xmm0,2 - add ecx,edi - and esi,ebp - xor ebp,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-64))+r15] - vpor xmm0,xmm0,xmm8 - xor edx,ebp - shld ecx,ecx,5 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpalignr xmm8,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add ebp,DWORD PTR[16+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-48))+r15] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - vpxor xmm1,xmm1,xmm2 - add ebp,esi - xor edi,ecx - vpaddd xmm9,xmm10,xmm0 - shrd ebx,ebx,7 - add ebp,eax - vpxor xmm1,xmm1,xmm8 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - vpsrld xmm8,xmm1,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpslld xmm1,xmm1,2 - add ecx,DWORD PTR[24+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-32))+r15] - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vpor xmm1,xmm1,xmm8 - add ebx,DWORD PTR[28+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - vpalignr xmm8,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add eax,DWORD PTR[32+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - vpxor xmm2,xmm2,xmm3 - add eax,esi - xor edi,edx - vpaddd xmm9,xmm10,xmm1 - vmovdqa xmm10,XMMWORD PTR[32+r11] - shrd ecx,ecx,7 - add eax,ebx - vpxor xmm2,xmm2,xmm8 - add ebp,DWORD PTR[36+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-16))+r15] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - vpsrld xmm8,xmm2,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpslld xmm2,xmm2,2 - add edx,DWORD PTR[40+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - vpor xmm2,xmm2,xmm8 - add ecx,DWORD PTR[44+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[r15] - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - vpalignr xmm8,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - vpxor xmm3,xmm3,xmm4 - add ebx,esi - xor edi,ebp - vpaddd xmm9,xmm10,xmm2 - shrd edx,edx,7 - add ebx,ecx - vpxor xmm3,xmm3,xmm8 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - vpsrld xmm8,xmm3,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpslld xmm3,xmm3,2 - add ebp,DWORD PTR[56+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[16+r15] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpor xmm3,xmm3,xmm8 - add edx,DWORD PTR[60+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpalignr xmm8,xmm3,xmm2,8 - vpxor xmm4,xmm4,xmm0 - add ecx,DWORD PTR[rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - vpxor xmm4,xmm4,xmm5 - add ecx,esi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[32+r15] - xor edi,eax - vpaddd xmm9,xmm10,xmm3 - shrd ebp,ebp,7 - add ecx,edx - vpxor xmm4,xmm4,xmm8 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - vpsrld xmm8,xmm4,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - vpslld xmm4,xmm4,2 - add eax,DWORD PTR[8+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - vpor xmm4,xmm4,xmm8 - add ebp,DWORD PTR[12+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[48+r15] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpalignr xmm8,xmm4,xmm3,8 - vpxor xmm5,xmm5,xmm1 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - vpxor xmm5,xmm5,xmm6 - add edx,esi - xor edi,ebx - vpaddd xmm9,xmm10,xmm4 - shrd eax,eax,7 - add edx,ebp - vpxor xmm5,xmm5,xmm8 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - vpsrld xmm8,xmm5,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - add ecx,edi - cmp r8d,11 - jb $L$vaesenclast7 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[64+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[80+r15] - je $L$vaesenclast7 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[96+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[112+r15] -$L$vaesenclast7:: - vaesenclast xmm12,xmm12,xmm15 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - vpslld xmm5,xmm5,2 - add ebx,DWORD PTR[24+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - vpor xmm5,xmm5,xmm8 - add eax,DWORD PTR[28+rsp] - shrd ecx,ecx,7 - mov esi,ebx - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - vpalignr xmm8,xmm5,xmm4,8 - vpxor xmm6,xmm6,xmm2 - add ebp,DWORD PTR[32+rsp] - vmovdqu xmm13,XMMWORD PTR[32+r12] - vpxor xmm13,xmm13,xmm15 - vmovups XMMWORD PTR[16+r12*1+r13],xmm12 - vpxor xmm12,xmm12,xmm13 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-80))+r15] - and esi,ecx - xor ecx,edx - shrd ebx,ebx,7 - vpxor xmm6,xmm6,xmm7 - mov edi,eax - xor esi,ecx - vpaddd xmm9,xmm10,xmm5 - shld eax,eax,5 - add ebp,esi - vpxor xmm6,xmm6,xmm8 - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[36+rsp] - vpsrld xmm8,xmm6,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - and edi,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,ebp - vpslld xmm6,xmm6,2 - xor edi,ebx - shld ebp,ebp,5 - add edx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-64))+r15] - xor esi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[40+rsp] - and esi,eax - vpor xmm6,xmm6,xmm8 - xor eax,ebx - shrd ebp,ebp,7 - mov edi,edx - xor esi,eax - shld edx,edx,5 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - shrd edx,edx,7 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-48))+r15] - mov esi,ecx - xor edi,ebp - shld ecx,ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - vpalignr xmm8,xmm6,xmm5,8 - vpxor xmm7,xmm7,xmm3 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - shrd ecx,ecx,7 - vpxor xmm7,xmm7,xmm0 - mov edi,ebx - xor esi,edx - vpaddd xmm9,xmm10,xmm6 - vmovdqa xmm10,XMMWORD PTR[48+r11] - shld ebx,ebx,5 - add eax,esi - vpxor xmm7,xmm7,xmm8 - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[52+rsp] - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-32))+r15] - vpsrld xmm8,xmm7,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - and edi,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - vpslld xmm7,xmm7,2 - xor edi,ecx - shld eax,eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[56+rsp] - and esi,ebx - vpor xmm7,xmm7,xmm8 - xor ebx,ecx - shrd eax,eax,7 - mov edi,ebp - xor esi,ebx - shld ebp,ebp,5 - add edx,esi - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-16))+r15] - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - shrd ebp,ebp,7 - mov esi,edx - xor edi,eax - shld edx,edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - vpalignr xmm8,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - shrd edx,edx,7 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[r15] - vpxor xmm0,xmm0,xmm1 - mov edi,ecx - xor esi,ebp - vpaddd xmm9,xmm10,xmm7 - shld ecx,ecx,5 - add ebx,esi - vpxor xmm0,xmm0,xmm8 - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[4+rsp] - vpsrld xmm8,xmm0,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - and edi,edx - xor edx,ebp - shrd ecx,ecx,7 - mov esi,ebx - vpslld xmm0,xmm0,2 - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[8+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[16+r15] - and esi,ecx - vpor xmm0,xmm0,xmm8 - xor ecx,edx - shrd ebx,ebx,7 - mov edi,eax - xor esi,ecx - shld eax,eax,5 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,ebp - xor edi,ebx - shld ebp,ebp,5 - add edx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[32+r15] - xor esi,eax - xor eax,ebx - add edx,ebp - vpalignr xmm8,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - shrd ebp,ebp,7 - vpxor xmm1,xmm1,xmm2 - mov edi,edx - xor esi,eax - vpaddd xmm9,xmm10,xmm0 - shld edx,edx,5 - add ecx,esi - vpxor xmm1,xmm1,xmm8 - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[20+rsp] - vpsrld xmm8,xmm1,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - and edi,ebp - xor ebp,eax - shrd edx,edx,7 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[48+r15] - mov esi,ecx - vpslld xmm1,xmm1,2 - xor edi,ebp - shld ecx,ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[24+rsp] - and esi,edx - vpor xmm1,xmm1,xmm8 - xor edx,ebp - shrd ecx,ecx,7 - mov edi,ebx - xor esi,edx - shld ebx,ebx,5 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - cmp r8d,11 - jb $L$vaesenclast8 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[64+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[80+r15] - je $L$vaesenclast8 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[96+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[112+r15] -$L$vaesenclast8:: - vaesenclast xmm12,xmm12,xmm15 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - and edi,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - xor edi,ecx - shld eax,eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - vpalignr xmm8,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - shrd eax,eax,7 - vpxor xmm2,xmm2,xmm3 - mov edi,ebp - xor esi,ebx - vpaddd xmm9,xmm10,xmm1 - shld ebp,ebp,5 - add edx,esi - vmovdqu xmm13,XMMWORD PTR[48+r12] - vpxor xmm13,xmm13,xmm15 - vmovups XMMWORD PTR[32+r12*1+r13],xmm12 - vpxor xmm12,xmm12,xmm13 - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-80))+r15] - vpxor xmm2,xmm2,xmm8 - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[36+rsp] - vpsrld xmm8,xmm2,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - and edi,eax - xor eax,ebx - shrd ebp,ebp,7 - mov esi,edx - vpslld xmm2,xmm2,2 - xor edi,eax - shld edx,edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[40+rsp] - and esi,ebp - vpor xmm2,xmm2,xmm8 - xor ebp,eax - shrd edx,edx,7 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-64))+r15] - mov edi,ecx - xor esi,ebp - shld ecx,ecx,5 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - shrd ecx,ecx,7 - mov esi,ebx - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - vpalignr xmm8,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add ebp,DWORD PTR[48+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-48))+r15] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - vpxor xmm3,xmm3,xmm4 - add ebp,esi - xor edi,ecx - vpaddd xmm9,xmm10,xmm2 - shrd ebx,ebx,7 - add ebp,eax - vpxor xmm3,xmm3,xmm8 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - vpsrld xmm8,xmm3,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpslld xmm3,xmm3,2 - add ecx,DWORD PTR[56+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[((-32))+r15] - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vpor xmm3,xmm3,xmm8 - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - vpaddd xmm9,xmm10,xmm3 - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - vmovdqa XMMWORD PTR[48+rsp],xmm9 - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[((-16))+r15] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[r15] - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - cmp r10,r14 - je $L$done_avx - vmovdqa xmm9,XMMWORD PTR[64+r11] - vmovdqa xmm10,XMMWORD PTR[r11] - vmovdqu xmm0,XMMWORD PTR[r10] - vmovdqu xmm1,XMMWORD PTR[16+r10] - vmovdqu xmm2,XMMWORD PTR[32+r10] - vmovdqu xmm3,XMMWORD PTR[48+r10] - vpshufb xmm0,xmm0,xmm9 - add r10,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - vpshufb xmm1,xmm1,xmm9 - mov edi,ecx - shld ecx,ecx,5 - vpaddd xmm8,xmm0,xmm10 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - vmovdqa XMMWORD PTR[rsp],xmm8 - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[16+r15] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - vpshufb xmm2,xmm2,xmm9 - mov edi,edx - shld edx,edx,5 - vpaddd xmm8,xmm1,xmm10 - add ecx,esi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[32+r15] - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vmovdqa XMMWORD PTR[16+rsp],xmm8 - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[48+r15] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - vpshufb xmm3,xmm3,xmm9 - mov edi,ebp - shld ebp,ebp,5 - vpaddd xmm8,xmm2,xmm10 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - vmovdqa XMMWORD PTR[32+rsp],xmm8 - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - cmp r8d,11 - jb $L$vaesenclast9 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[64+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[80+r15] - je $L$vaesenclast9 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[96+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[112+r15] -$L$vaesenclast9:: - vaesenclast xmm12,xmm12,xmm15 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - shrd ecx,ecx,7 - add eax,ebx - vmovups XMMWORD PTR[48+r12*1+r13],xmm12 - lea r12,QWORD PTR[64+r12] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - add edx,DWORD PTR[12+r9] - mov DWORD PTR[r9],eax - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[4+r9],esi - mov ebx,esi - mov DWORD PTR[8+r9],ecx - mov edi,ecx - mov DWORD PTR[12+r9],edx - xor edi,edx - mov DWORD PTR[16+r9],ebp - and esi,edi - jmp $L$oop_avx - -$L$done_avx:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[16+r15] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[32+r15] - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[48+r15] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - cmp r8d,11 - jb $L$vaesenclast10 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[64+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[80+r15] - je $L$vaesenclast10 - vaesenc xmm12,xmm12,xmm15 - vmovups xmm14,XMMWORD PTR[96+r15] - vaesenc xmm12,xmm12,xmm14 - vmovups xmm15,XMMWORD PTR[112+r15] -$L$vaesenclast10:: - vaesenclast xmm12,xmm12,xmm15 - vmovups xmm15,XMMWORD PTR[((-112))+r15] - vmovups xmm14,XMMWORD PTR[((16-112))+r15] - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - shrd ecx,ecx,7 - add eax,ebx - vmovups XMMWORD PTR[48+r12*1+r13],xmm12 - mov r8,QWORD PTR[88+rsp] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - mov DWORD PTR[r9],eax - add edx,DWORD PTR[12+r9] - mov DWORD PTR[4+r9],esi - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - mov DWORD PTR[16+r9],ebp - vmovups XMMWORD PTR[r8],xmm12 - vzeroall - movaps xmm6,XMMWORD PTR[((96+0))+rsp] - movaps xmm7,XMMWORD PTR[((96+16))+rsp] - movaps xmm8,XMMWORD PTR[((96+32))+rsp] - movaps xmm9,XMMWORD PTR[((96+48))+rsp] - movaps xmm10,XMMWORD PTR[((96+64))+rsp] - movaps xmm11,XMMWORD PTR[((96+80))+rsp] - movaps xmm12,XMMWORD PTR[((96+96))+rsp] - movaps xmm13,XMMWORD PTR[((96+112))+rsp] - movaps xmm14,XMMWORD PTR[((96+128))+rsp] - movaps xmm15,XMMWORD PTR[((96+144))+rsp] - lea rsi,QWORD PTR[264+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha1_enc_avx:: -aesni_cbc_sha1_enc_avx ENDP -ALIGN 64 -K_XX_XX:: - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h - -DB 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115 -DB 116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52 -DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 -DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 -DB 114,103,62,0 -ALIGN 64 - -ALIGN 32 -aesni_cbc_sha1_enc_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha1_enc_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[(-8-160)+rax],xmm6 - movaps XMMWORD PTR[(-8-144)+rax],xmm7 - movaps XMMWORD PTR[(-8-128)+rax],xmm8 - movaps XMMWORD PTR[(-8-112)+rax],xmm9 - movaps XMMWORD PTR[(-8-96)+rax],xmm10 - movaps XMMWORD PTR[(-8-80)+rax],xmm11 - movaps XMMWORD PTR[(-8-64)+rax],xmm12 - movaps XMMWORD PTR[(-8-48)+rax],xmm13 - movaps XMMWORD PTR[(-8-32)+rax],xmm14 - movaps XMMWORD PTR[(-8-16)+rax],xmm15 -$L$prologue_shaext:: - movdqu xmm8,XMMWORD PTR[r9] - movd xmm9,DWORD PTR[16+r9] - movdqa xmm7,XMMWORD PTR[((K_XX_XX+80))] - - mov r11d,DWORD PTR[240+rcx] - sub rsi,rdi - movups xmm15,XMMWORD PTR[rcx] - movups xmm2,XMMWORD PTR[r8] - movups xmm0,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[112+rcx] - - pshufd xmm8,xmm8,27 - pshufd xmm9,xmm9,27 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - movups xmm14,XMMWORD PTR[rdi] - xorps xmm14,xmm15 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 - movdqu xmm3,XMMWORD PTR[r10] - movdqa xmm12,xmm9 -DB 102,15,56,0,223 - movdqu xmm4,XMMWORD PTR[16+r10] - movdqa xmm11,xmm8 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 -DB 102,15,56,0,231 - - paddd xmm9,xmm3 - movdqu xmm5,XMMWORD PTR[32+r10] - lea r10,QWORD PTR[64+r10] - pxor xmm3,xmm12 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 - pxor xmm3,xmm12 - movdqa xmm10,xmm8 -DB 102,15,56,0,239 -DB 69,15,58,204,193,0 -DB 68,15,56,200,212 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 -DB 15,56,201,220 - movdqu xmm6,XMMWORD PTR[((-16))+r10] - movdqa xmm9,xmm8 -DB 102,15,56,0,247 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 69,15,58,204,194,0 -DB 68,15,56,200,205 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,0 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,0 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - cmp r11d,11 - jb $L$aesenclast11 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast11 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast11:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm10,xmm8 -DB 69,15,58,204,193,0 -DB 68,15,56,200,212 - movups xmm14,XMMWORD PTR[16+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,205 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,1 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,1 -DB 68,15,56,200,212 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - cmp r11d,11 - jb $L$aesenclast12 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast12 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast12:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,205 - movups xmm14,XMMWORD PTR[32+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[16+rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,2 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,212 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,2 -DB 68,15,56,200,205 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - cmp r11d,11 - jb $L$aesenclast13 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast13 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast13:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,214 - movups xmm14,XMMWORD PTR[48+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[32+rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,3 -DB 68,15,56,200,212 -DB 15,56,202,236 - pxor xmm6,xmm4 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,205 -DB 15,56,202,245 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm5,xmm12 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,3 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,205 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 - cmp r11d,11 - jb $L$aesenclast14 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast14 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast14:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - dec rdx - - paddd xmm8,xmm11 - movups XMMWORD PTR[48+rdi*1+rsi],xmm2 - lea rdi,QWORD PTR[64+rdi] - jnz $L$oop_shaext - - pshufd xmm8,xmm8,27 - pshufd xmm9,xmm9,27 - movups XMMWORD PTR[r8],xmm2 - movdqu XMMWORD PTR[r9],xmm8 - movd DWORD PTR[16+r9],xmm9 - movaps xmm6,XMMWORD PTR[((-8-160))+rax] - movaps xmm7,XMMWORD PTR[((-8-144))+rax] - movaps xmm8,XMMWORD PTR[((-8-128))+rax] - movaps xmm9,XMMWORD PTR[((-8-112))+rax] - movaps xmm10,XMMWORD PTR[((-8-96))+rax] - movaps xmm11,XMMWORD PTR[((-8-80))+rax] - movaps xmm12,XMMWORD PTR[((-8-64))+rax] - movaps xmm13,XMMWORD PTR[((-8-48))+rax] - movaps xmm14,XMMWORD PTR[((-8-32))+rax] - movaps xmm15,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha1_enc_shaext:: -aesni_cbc_sha1_enc_shaext ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -ssse3_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - lea r10,QWORD PTR[aesni_cbc_sha1_enc_shaext] - cmp rbx,r10 - jb $L$seh_no_shaext - - lea rsi,QWORD PTR[rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[168+rax] - jmp $L$common_seh_tail -$L$seh_no_shaext:: - lea rsi,QWORD PTR[96+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[264+rax] - - mov r15,QWORD PTR[rax] - mov r14,QWORD PTR[8+rax] - mov r13,QWORD PTR[16+rax] - mov r12,QWORD PTR[24+rax] - mov rbp,QWORD PTR[32+rax] - mov rbx,QWORD PTR[40+rax] - lea rax,QWORD PTR[48+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -ssse3_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_end_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_info_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_begin_aesni_cbc_sha1_enc_avx - DD imagerel $L$SEH_end_aesni_cbc_sha1_enc_avx - DD imagerel $L$SEH_info_aesni_cbc_sha1_enc_avx - DD imagerel $L$SEH_begin_aesni_cbc_sha1_enc_shaext - DD imagerel $L$SEH_end_aesni_cbc_sha1_enc_shaext - DD imagerel $L$SEH_info_aesni_cbc_sha1_enc_shaext -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_aesni_cbc_sha1_enc_ssse3:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 -$L$SEH_info_aesni_cbc_sha1_enc_avx:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_avx,imagerel $L$epilogue_avx -$L$SEH_info_aesni_cbc_sha1_enc_shaext:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_shaext,imagerel $L$epilogue_shaext - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/aesni-sha256-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/aesni-sha256-x86_64.asm deleted file mode 100644 index d697869bb25b71..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/aesni-sha256-x86_64.asm +++ /dev/null @@ -1,4654 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC aesni_cbc_sha256_enc - -ALIGN 16 -aesni_cbc_sha256_enc PROC PUBLIC - lea r11,QWORD PTR[OPENSSL_ia32cap_P] - mov eax,1 - cmp rcx,0 - je $L$probe - mov eax,DWORD PTR[r11] - mov r10,QWORD PTR[4+r11] - bt r10,61 - jc aesni_cbc_sha256_enc_shaext - mov r11,r10 - shr r11,32 - - test r10d,2048 - jnz aesni_cbc_sha256_enc_xop - and r11d,296 - cmp r11d,296 - je aesni_cbc_sha256_enc_avx2 - and r10d,268435456 - jnz aesni_cbc_sha256_enc_avx - ud2 - xor eax,eax - cmp rcx,0 - je $L$probe - ud2 -$L$probe:: - DB 0F3h,0C3h ;repret -aesni_cbc_sha256_enc ENDP - -ALIGN 64 - -K256:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 0,0,0,0,0,0,0,0,-1,-1,-1,-1 - DD 0,0,0,0,0,0,0,0 -DB 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54 -DB 32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95 -DB 54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98 -DB 121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108 -DB 46,111,114,103,62,0 -ALIGN 64 - -ALIGN 64 -aesni_cbc_sha256_enc_xop PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha256_enc_xop:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -$L$xop_shortcut:: - mov r10,QWORD PTR[56+rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - sub rsp,288 - and rsp,-64 - - shl rdx,6 - sub rsi,rdi - sub r10,rdi - add rdx,rdi - - - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - - mov QWORD PTR[((64+32))+rsp],r8 - mov QWORD PTR[((64+40))+rsp],r9 - mov QWORD PTR[((64+48))+rsp],r10 - mov QWORD PTR[((64+56))+rsp],r11 - movaps XMMWORD PTR[128+rsp],xmm6 - movaps XMMWORD PTR[144+rsp],xmm7 - movaps XMMWORD PTR[160+rsp],xmm8 - movaps XMMWORD PTR[176+rsp],xmm9 - movaps XMMWORD PTR[192+rsp],xmm10 - movaps XMMWORD PTR[208+rsp],xmm11 - movaps XMMWORD PTR[224+rsp],xmm12 - movaps XMMWORD PTR[240+rsp],xmm13 - movaps XMMWORD PTR[256+rsp],xmm14 - movaps XMMWORD PTR[272+rsp],xmm15 -$L$prologue_xop:: - vzeroall - - mov r12,rdi - lea rdi,QWORD PTR[128+rcx] - lea r13,QWORD PTR[((K256+544))] - mov r14d,DWORD PTR[((240-128))+rdi] - mov r15,r9 - mov rsi,r10 - vmovdqu xmm8,XMMWORD PTR[r8] - sub r14,9 - - mov eax,DWORD PTR[r15] - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - mov edx,DWORD PTR[12+r15] - mov r8d,DWORD PTR[16+r15] - mov r9d,DWORD PTR[20+r15] - mov r10d,DWORD PTR[24+r15] - mov r11d,DWORD PTR[28+r15] - - vmovdqa xmm14,XMMWORD PTR[r14*8+r13] - vmovdqa xmm13,XMMWORD PTR[16+r14*8+r13] - vmovdqa xmm12,XMMWORD PTR[32+r14*8+r13] - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - jmp $L$loop_xop -ALIGN 16 -$L$loop_xop:: - vmovdqa xmm7,XMMWORD PTR[((K256+512))] - vmovdqu xmm0,XMMWORD PTR[r12*1+rsi] - vmovdqu xmm1,XMMWORD PTR[16+r12*1+rsi] - vmovdqu xmm2,XMMWORD PTR[32+r12*1+rsi] - vmovdqu xmm3,XMMWORD PTR[48+r12*1+rsi] - vpshufb xmm0,xmm0,xmm7 - lea rbp,QWORD PTR[K256] - vpshufb xmm1,xmm1,xmm7 - vpshufb xmm2,xmm2,xmm7 - vpaddd xmm4,xmm0,XMMWORD PTR[rbp] - vpshufb xmm3,xmm3,xmm7 - vpaddd xmm5,xmm1,XMMWORD PTR[32+rbp] - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - vpaddd xmm7,xmm3,XMMWORD PTR[96+rbp] - vmovdqa XMMWORD PTR[rsp],xmm4 - mov r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm5 - mov esi,ebx - vmovdqa XMMWORD PTR[32+rsp],xmm6 - xor esi,ecx - vmovdqa XMMWORD PTR[48+rsp],xmm7 - mov r13d,r8d - jmp $L$xop_00_47 - -ALIGN 16 -$L$xop_00_47:: - sub rbp,-16*2*4 - vmovdqu xmm9,XMMWORD PTR[r12] - mov QWORD PTR[((64+0))+rsp],r12 - vpalignr xmm4,xmm1,xmm0,4 - ror r13d,14 - mov eax,r14d - vpalignr xmm7,xmm3,xmm2,4 - mov r12d,r9d - xor r13d,r8d -DB 143,232,120,194,236,14 - ror r14d,9 - xor r12d,r10d - vpsrld xmm4,xmm4,3 - ror r13d,5 - xor r14d,eax - vpaddd xmm0,xmm0,xmm7 - and r12d,r8d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax -DB 143,232,120,194,245,11 - ror r14d,11 - xor r12d,r10d - vpxor xmm4,xmm4,xmm5 - xor r15d,ebx - ror r13d,6 - add r11d,r12d - and esi,r15d -DB 143,232,120,194,251,13 - xor r14d,eax - add r11d,r13d - vpxor xmm4,xmm4,xmm6 - xor esi,ebx - add edx,r11d - vpsrld xmm6,xmm3,10 - ror r14d,2 - add r11d,esi - vpaddd xmm0,xmm0,xmm4 - mov r13d,edx - add r14d,r11d -DB 143,232,120,194,239,2 - ror r13d,14 - mov r11d,r14d - vpxor xmm7,xmm7,xmm6 - mov r12d,r8d - xor r13d,edx - ror r14d,9 - xor r12d,r9d - vpxor xmm7,xmm7,xmm5 - ror r13d,5 - xor r14d,r11d - and r12d,edx - vpxor xmm9,xmm9,xmm8 - xor r13d,edx - vpsrldq xmm7,xmm7,8 - add r10d,DWORD PTR[4+rsp] - mov esi,r11d - ror r14d,11 - xor r12d,r9d - vpaddd xmm0,xmm0,xmm7 - xor esi,eax - ror r13d,6 - add r10d,r12d - and r15d,esi -DB 143,232,120,194,248,13 - xor r14d,r11d - add r10d,r13d - vpsrld xmm6,xmm0,10 - xor r15d,eax - add ecx,r10d -DB 143,232,120,194,239,2 - ror r14d,2 - add r10d,r15d - vpxor xmm7,xmm7,xmm6 - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - vpxor xmm7,xmm7,xmm5 - mov r12d,edx - xor r13d,ecx - ror r14d,9 - xor r12d,r8d - vpslldq xmm7,xmm7,8 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r13d,ecx - vpaddd xmm0,xmm0,xmm7 - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - ror r14d,11 - xor r12d,r8d - vpaddd xmm6,xmm0,XMMWORD PTR[rbp] - xor r15d,r11d - ror r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - ror r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - ror r14d,9 - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov esi,r9d - ror r14d,11 - xor r12d,edx - xor esi,r10d - ror r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - ror r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[rsp],xmm6 - vpalignr xmm4,xmm2,xmm1,4 - ror r13d,14 - mov r8d,r14d - vpalignr xmm7,xmm0,xmm3,4 - mov r12d,ebx - xor r13d,eax -DB 143,232,120,194,236,14 - ror r14d,9 - xor r12d,ecx - vpsrld xmm4,xmm4,3 - ror r13d,5 - xor r14d,r8d - vpaddd xmm1,xmm1,xmm7 - and r12d,eax - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d -DB 143,232,120,194,245,11 - ror r14d,11 - xor r12d,ecx - vpxor xmm4,xmm4,xmm5 - xor r15d,r9d - ror r13d,6 - add edx,r12d - and esi,r15d -DB 143,232,120,194,248,13 - xor r14d,r8d - add edx,r13d - vpxor xmm4,xmm4,xmm6 - xor esi,r9d - add r11d,edx - vpsrld xmm6,xmm0,10 - ror r14d,2 - add edx,esi - vpaddd xmm1,xmm1,xmm4 - mov r13d,r11d - add r14d,edx -DB 143,232,120,194,239,2 - ror r13d,14 - mov edx,r14d - vpxor xmm7,xmm7,xmm6 - mov r12d,eax - xor r13d,r11d - ror r14d,9 - xor r12d,ebx - vpxor xmm7,xmm7,xmm5 - ror r13d,5 - xor r14d,edx - and r12d,r11d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r13d,r11d - vpsrldq xmm7,xmm7,8 - add ecx,DWORD PTR[20+rsp] - mov esi,edx - ror r14d,11 - xor r12d,ebx - vpaddd xmm1,xmm1,xmm7 - xor esi,r8d - ror r13d,6 - add ecx,r12d - and r15d,esi -DB 143,232,120,194,249,13 - xor r14d,edx - add ecx,r13d - vpsrld xmm6,xmm1,10 - xor r15d,r8d - add r10d,ecx -DB 143,232,120,194,239,2 - ror r14d,2 - add ecx,r15d - vpxor xmm7,xmm7,xmm6 - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - vpxor xmm7,xmm7,xmm5 - mov r12d,r11d - xor r13d,r10d - ror r14d,9 - xor r12d,eax - vpslldq xmm7,xmm7,8 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r13d,r10d - vpaddd xmm1,xmm1,xmm7 - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - ror r14d,11 - xor r12d,eax - vpaddd xmm6,xmm1,XMMWORD PTR[32+rbp] - xor r15d,edx - ror r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - ror r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - ror r14d,9 - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov esi,ebx - ror r14d,11 - xor r12d,r11d - xor esi,ecx - ror r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - ror r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm6 - vpalignr xmm4,xmm3,xmm2,4 - ror r13d,14 - mov eax,r14d - vpalignr xmm7,xmm1,xmm0,4 - mov r12d,r9d - xor r13d,r8d -DB 143,232,120,194,236,14 - ror r14d,9 - xor r12d,r10d - vpsrld xmm4,xmm4,3 - ror r13d,5 - xor r14d,eax - vpaddd xmm2,xmm2,xmm7 - and r12d,r8d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax -DB 143,232,120,194,245,11 - ror r14d,11 - xor r12d,r10d - vpxor xmm4,xmm4,xmm5 - xor r15d,ebx - ror r13d,6 - add r11d,r12d - and esi,r15d -DB 143,232,120,194,249,13 - xor r14d,eax - add r11d,r13d - vpxor xmm4,xmm4,xmm6 - xor esi,ebx - add edx,r11d - vpsrld xmm6,xmm1,10 - ror r14d,2 - add r11d,esi - vpaddd xmm2,xmm2,xmm4 - mov r13d,edx - add r14d,r11d -DB 143,232,120,194,239,2 - ror r13d,14 - mov r11d,r14d - vpxor xmm7,xmm7,xmm6 - mov r12d,r8d - xor r13d,edx - ror r14d,9 - xor r12d,r9d - vpxor xmm7,xmm7,xmm5 - ror r13d,5 - xor r14d,r11d - and r12d,edx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r13d,edx - vpsrldq xmm7,xmm7,8 - add r10d,DWORD PTR[36+rsp] - mov esi,r11d - ror r14d,11 - xor r12d,r9d - vpaddd xmm2,xmm2,xmm7 - xor esi,eax - ror r13d,6 - add r10d,r12d - and r15d,esi -DB 143,232,120,194,250,13 - xor r14d,r11d - add r10d,r13d - vpsrld xmm6,xmm2,10 - xor r15d,eax - add ecx,r10d -DB 143,232,120,194,239,2 - ror r14d,2 - add r10d,r15d - vpxor xmm7,xmm7,xmm6 - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - vpxor xmm7,xmm7,xmm5 - mov r12d,edx - xor r13d,ecx - ror r14d,9 - xor r12d,r8d - vpslldq xmm7,xmm7,8 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r13d,ecx - vpaddd xmm2,xmm2,xmm7 - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - ror r14d,11 - xor r12d,r8d - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - xor r15d,r11d - ror r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - ror r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - ror r14d,9 - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov esi,r9d - ror r14d,11 - xor r12d,edx - xor esi,r10d - ror r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - ror r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[32+rsp],xmm6 - vpalignr xmm4,xmm0,xmm3,4 - ror r13d,14 - mov r8d,r14d - vpalignr xmm7,xmm2,xmm1,4 - mov r12d,ebx - xor r13d,eax -DB 143,232,120,194,236,14 - ror r14d,9 - xor r12d,ecx - vpsrld xmm4,xmm4,3 - ror r13d,5 - xor r14d,r8d - vpaddd xmm3,xmm3,xmm7 - and r12d,eax - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d -DB 143,232,120,194,245,11 - ror r14d,11 - xor r12d,ecx - vpxor xmm4,xmm4,xmm5 - xor r15d,r9d - ror r13d,6 - add edx,r12d - and esi,r15d -DB 143,232,120,194,250,13 - xor r14d,r8d - add edx,r13d - vpxor xmm4,xmm4,xmm6 - xor esi,r9d - add r11d,edx - vpsrld xmm6,xmm2,10 - ror r14d,2 - add edx,esi - vpaddd xmm3,xmm3,xmm4 - mov r13d,r11d - add r14d,edx -DB 143,232,120,194,239,2 - ror r13d,14 - mov edx,r14d - vpxor xmm7,xmm7,xmm6 - mov r12d,eax - xor r13d,r11d - ror r14d,9 - xor r12d,ebx - vpxor xmm7,xmm7,xmm5 - ror r13d,5 - xor r14d,edx - and r12d,r11d - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r13d,r11d - vpsrldq xmm7,xmm7,8 - add ecx,DWORD PTR[52+rsp] - mov esi,edx - ror r14d,11 - xor r12d,ebx - vpaddd xmm3,xmm3,xmm7 - xor esi,r8d - ror r13d,6 - add ecx,r12d - and r15d,esi -DB 143,232,120,194,251,13 - xor r14d,edx - add ecx,r13d - vpsrld xmm6,xmm3,10 - xor r15d,r8d - add r10d,ecx -DB 143,232,120,194,239,2 - ror r14d,2 - add ecx,r15d - vpxor xmm7,xmm7,xmm6 - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - vpxor xmm7,xmm7,xmm5 - mov r12d,r11d - xor r13d,r10d - ror r14d,9 - xor r12d,eax - vpslldq xmm7,xmm7,8 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r13d,r10d - vpaddd xmm3,xmm3,xmm7 - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - ror r14d,11 - xor r12d,eax - vpaddd xmm6,xmm3,XMMWORD PTR[96+rbp] - xor r15d,edx - ror r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - ror r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - ror r14d,9 - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov esi,ebx - ror r14d,11 - xor r12d,r11d - xor esi,ecx - ror r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - ror r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[48+rsp],xmm6 - mov r12,QWORD PTR[((64+0))+rsp] - vpand xmm11,xmm11,xmm14 - mov r15,QWORD PTR[((64+8))+rsp] - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r12*1+r15],xmm8 - lea r12,QWORD PTR[16+r12] - cmp BYTE PTR[131+rbp],0 - jne $L$xop_00_47 - vmovdqu xmm9,XMMWORD PTR[r12] - mov QWORD PTR[((64+0))+rsp],r12 - ror r13d,14 - mov eax,r14d - mov r12d,r9d - xor r13d,r8d - ror r14d,9 - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - ror r14d,11 - xor r12d,r10d - xor r15d,ebx - ror r13d,6 - add r11d,r12d - and esi,r15d - xor r14d,eax - add r11d,r13d - xor esi,ebx - add edx,r11d - ror r14d,2 - add r11d,esi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - ror r14d,9 - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - vpxor xmm9,xmm9,xmm8 - xor r13d,edx - add r10d,DWORD PTR[4+rsp] - mov esi,r11d - ror r14d,11 - xor r12d,r9d - xor esi,eax - ror r13d,6 - add r10d,r12d - and r15d,esi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - add ecx,r10d - ror r14d,2 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - xor r13d,ecx - ror r14d,9 - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - ror r14d,11 - xor r12d,r8d - xor r15d,r11d - ror r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - ror r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - ror r14d,9 - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov esi,r9d - ror r14d,11 - xor r12d,edx - xor esi,r10d - ror r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - ror r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - xor r13d,eax - ror r14d,9 - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - ror r14d,11 - xor r12d,ecx - xor r15d,r9d - ror r13d,6 - add edx,r12d - and esi,r15d - xor r14d,r8d - add edx,r13d - xor esi,r9d - add r11d,edx - ror r14d,2 - add edx,esi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - ror r14d,9 - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r13d,r11d - add ecx,DWORD PTR[20+rsp] - mov esi,edx - ror r14d,11 - xor r12d,ebx - xor esi,r8d - ror r13d,6 - add ecx,r12d - and r15d,esi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - add r10d,ecx - ror r14d,2 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - xor r13d,r10d - ror r14d,9 - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - ror r14d,11 - xor r12d,eax - xor r15d,edx - ror r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - ror r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - ror r14d,9 - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov esi,ebx - ror r14d,11 - xor r12d,r11d - xor esi,ecx - ror r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - ror r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - ror r13d,14 - mov eax,r14d - mov r12d,r9d - xor r13d,r8d - ror r14d,9 - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - ror r14d,11 - xor r12d,r10d - xor r15d,ebx - ror r13d,6 - add r11d,r12d - and esi,r15d - xor r14d,eax - add r11d,r13d - xor esi,ebx - add edx,r11d - ror r14d,2 - add r11d,esi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - ror r14d,9 - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r13d,edx - add r10d,DWORD PTR[36+rsp] - mov esi,r11d - ror r14d,11 - xor r12d,r9d - xor esi,eax - ror r13d,6 - add r10d,r12d - and r15d,esi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - add ecx,r10d - ror r14d,2 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - xor r13d,ecx - ror r14d,9 - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - ror r14d,11 - xor r12d,r8d - xor r15d,r11d - ror r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - ror r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - ror r14d,9 - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov esi,r9d - ror r14d,11 - xor r12d,edx - xor esi,r10d - ror r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - ror r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - xor r13d,eax - ror r14d,9 - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - ror r14d,11 - xor r12d,ecx - xor r15d,r9d - ror r13d,6 - add edx,r12d - and esi,r15d - xor r14d,r8d - add edx,r13d - xor esi,r9d - add r11d,edx - ror r14d,2 - add edx,esi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - ror r14d,9 - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r13d,r11d - add ecx,DWORD PTR[52+rsp] - mov esi,edx - ror r14d,11 - xor r12d,ebx - xor esi,r8d - ror r13d,6 - add ecx,r12d - and r15d,esi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - add r10d,ecx - ror r14d,2 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - xor r13d,r10d - ror r14d,9 - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - ror r14d,11 - xor r12d,eax - xor r15d,edx - ror r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - ror r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - ror r14d,9 - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov esi,ebx - ror r14d,11 - xor r12d,r11d - xor esi,ecx - ror r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - ror r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - mov r12,QWORD PTR[((64+0))+rsp] - mov r13,QWORD PTR[((64+8))+rsp] - mov r15,QWORD PTR[((64+40))+rsp] - mov rsi,QWORD PTR[((64+48))+rsp] - - vpand xmm11,xmm11,xmm14 - mov eax,r14d - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r13*1+r12],xmm8 - lea r12,QWORD PTR[16+r12] - - add eax,DWORD PTR[r15] - add ebx,DWORD PTR[4+r15] - add ecx,DWORD PTR[8+r15] - add edx,DWORD PTR[12+r15] - add r8d,DWORD PTR[16+r15] - add r9d,DWORD PTR[20+r15] - add r10d,DWORD PTR[24+r15] - add r11d,DWORD PTR[28+r15] - - cmp r12,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[r15],eax - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - mov DWORD PTR[16+r15],r8d - mov DWORD PTR[20+r15],r9d - mov DWORD PTR[24+r15],r10d - mov DWORD PTR[28+r15],r11d - - jb $L$loop_xop - - mov r8,QWORD PTR[((64+32))+rsp] - mov rsi,QWORD PTR[((64+56))+rsp] - vmovdqu XMMWORD PTR[r8],xmm8 - vzeroall - movaps xmm6,XMMWORD PTR[128+rsp] - movaps xmm7,XMMWORD PTR[144+rsp] - movaps xmm8,XMMWORD PTR[160+rsp] - movaps xmm9,XMMWORD PTR[176+rsp] - movaps xmm10,XMMWORD PTR[192+rsp] - movaps xmm11,XMMWORD PTR[208+rsp] - movaps xmm12,XMMWORD PTR[224+rsp] - movaps xmm13,XMMWORD PTR[240+rsp] - movaps xmm14,XMMWORD PTR[256+rsp] - movaps xmm15,XMMWORD PTR[272+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_xop:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha256_enc_xop:: -aesni_cbc_sha256_enc_xop ENDP - -ALIGN 64 -aesni_cbc_sha256_enc_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha256_enc_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -$L$avx_shortcut:: - mov r10,QWORD PTR[56+rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - sub rsp,288 - and rsp,-64 - - shl rdx,6 - sub rsi,rdi - sub r10,rdi - add rdx,rdi - - - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - - mov QWORD PTR[((64+32))+rsp],r8 - mov QWORD PTR[((64+40))+rsp],r9 - mov QWORD PTR[((64+48))+rsp],r10 - mov QWORD PTR[((64+56))+rsp],r11 - movaps XMMWORD PTR[128+rsp],xmm6 - movaps XMMWORD PTR[144+rsp],xmm7 - movaps XMMWORD PTR[160+rsp],xmm8 - movaps XMMWORD PTR[176+rsp],xmm9 - movaps XMMWORD PTR[192+rsp],xmm10 - movaps XMMWORD PTR[208+rsp],xmm11 - movaps XMMWORD PTR[224+rsp],xmm12 - movaps XMMWORD PTR[240+rsp],xmm13 - movaps XMMWORD PTR[256+rsp],xmm14 - movaps XMMWORD PTR[272+rsp],xmm15 -$L$prologue_avx:: - vzeroall - - mov r12,rdi - lea rdi,QWORD PTR[128+rcx] - lea r13,QWORD PTR[((K256+544))] - mov r14d,DWORD PTR[((240-128))+rdi] - mov r15,r9 - mov rsi,r10 - vmovdqu xmm8,XMMWORD PTR[r8] - sub r14,9 - - mov eax,DWORD PTR[r15] - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - mov edx,DWORD PTR[12+r15] - mov r8d,DWORD PTR[16+r15] - mov r9d,DWORD PTR[20+r15] - mov r10d,DWORD PTR[24+r15] - mov r11d,DWORD PTR[28+r15] - - vmovdqa xmm14,XMMWORD PTR[r14*8+r13] - vmovdqa xmm13,XMMWORD PTR[16+r14*8+r13] - vmovdqa xmm12,XMMWORD PTR[32+r14*8+r13] - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - jmp $L$loop_avx -ALIGN 16 -$L$loop_avx:: - vmovdqa xmm7,XMMWORD PTR[((K256+512))] - vmovdqu xmm0,XMMWORD PTR[r12*1+rsi] - vmovdqu xmm1,XMMWORD PTR[16+r12*1+rsi] - vmovdqu xmm2,XMMWORD PTR[32+r12*1+rsi] - vmovdqu xmm3,XMMWORD PTR[48+r12*1+rsi] - vpshufb xmm0,xmm0,xmm7 - lea rbp,QWORD PTR[K256] - vpshufb xmm1,xmm1,xmm7 - vpshufb xmm2,xmm2,xmm7 - vpaddd xmm4,xmm0,XMMWORD PTR[rbp] - vpshufb xmm3,xmm3,xmm7 - vpaddd xmm5,xmm1,XMMWORD PTR[32+rbp] - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - vpaddd xmm7,xmm3,XMMWORD PTR[96+rbp] - vmovdqa XMMWORD PTR[rsp],xmm4 - mov r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm5 - mov esi,ebx - vmovdqa XMMWORD PTR[32+rsp],xmm6 - xor esi,ecx - vmovdqa XMMWORD PTR[48+rsp],xmm7 - mov r13d,r8d - jmp $L$avx_00_47 - -ALIGN 16 -$L$avx_00_47:: - sub rbp,-16*2*4 - vmovdqu xmm9,XMMWORD PTR[r12] - mov QWORD PTR[((64+0))+rsp],r12 - vpalignr xmm4,xmm1,xmm0,4 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - vpalignr xmm7,xmm3,xmm2,4 - xor r13d,r8d - shrd r14d,r14d,9 - xor r12d,r10d - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vpaddd xmm0,xmm0,xmm7 - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - vpsrld xmm7,xmm4,3 - shrd r14d,r14d,11 - xor r12d,r10d - xor r15d,ebx - vpslld xmm5,xmm4,14 - shrd r13d,r13d,6 - add r11d,r12d - and esi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,eax - add r11d,r13d - xor esi,ebx - vpshufd xmm7,xmm3,250 - add edx,r11d - shrd r14d,r14d,2 - add r11d,esi - vpsrld xmm6,xmm6,11 - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - vpslld xmm5,xmm5,11 - shrd r14d,r14d,9 - xor r12d,r9d - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,r11d - and r12d,edx - vpxor xmm9,xmm9,xmm8 - xor r13d,edx - vpsrld xmm6,xmm7,10 - add r10d,DWORD PTR[4+rsp] - mov esi,r11d - shrd r14d,r14d,11 - vpxor xmm4,xmm4,xmm5 - xor r12d,r9d - xor esi,eax - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - add r10d,r12d - and r15d,esi - xor r14d,r11d - vpaddd xmm0,xmm0,xmm4 - add r10d,r13d - xor r15d,eax - add ecx,r10d - vpxor xmm6,xmm6,xmm7 - shrd r14d,r14d,2 - add r10d,r15d - mov r13d,ecx - vpsrlq xmm7,xmm7,2 - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,edx - xor r13d,ecx - shrd r14d,r14d,9 - vpshufd xmm6,xmm6,132 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - vpsrldq xmm6,xmm6,8 - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - vpaddd xmm0,xmm0,xmm6 - mov r15d,r10d - shrd r14d,r14d,11 - xor r12d,r8d - vpshufd xmm7,xmm0,80 - xor r15d,r11d - shrd r13d,r13d,6 - add r9d,r12d - vpsrld xmm6,xmm7,10 - and esi,r15d - xor r14d,r10d - add r9d,r13d - vpsrlq xmm7,xmm7,17 - xor esi,r11d - add ebx,r9d - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add r9d,esi - mov r13d,ebx - add r14d,r9d - vpsrlq xmm7,xmm7,2 - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - vpxor xmm6,xmm6,xmm7 - xor r13d,ebx - shrd r14d,r14d,9 - xor r12d,edx - vpshufd xmm6,xmm6,232 - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vpslldq xmm6,xmm6,8 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov esi,r9d - vpaddd xmm0,xmm0,xmm6 - shrd r14d,r14d,11 - xor r12d,edx - xor esi,r10d - vpaddd xmm6,xmm0,XMMWORD PTR[rbp] - shrd r13d,r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - shrd r14d,r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[rsp],xmm6 - vpalignr xmm4,xmm2,xmm1,4 - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - vpalignr xmm7,xmm0,xmm3,4 - xor r13d,eax - shrd r14d,r14d,9 - xor r12d,ecx - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vpaddd xmm1,xmm1,xmm7 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - vpsrld xmm7,xmm4,3 - shrd r14d,r14d,11 - xor r12d,ecx - xor r15d,r9d - vpslld xmm5,xmm4,14 - shrd r13d,r13d,6 - add edx,r12d - and esi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,r8d - add edx,r13d - xor esi,r9d - vpshufd xmm7,xmm0,250 - add r11d,edx - shrd r14d,r14d,2 - add edx,esi - vpsrld xmm6,xmm6,11 - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - vpslld xmm5,xmm5,11 - shrd r14d,r14d,9 - xor r12d,ebx - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,edx - and r12d,r11d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r13d,r11d - vpsrld xmm6,xmm7,10 - add ecx,DWORD PTR[20+rsp] - mov esi,edx - shrd r14d,r14d,11 - vpxor xmm4,xmm4,xmm5 - xor r12d,ebx - xor esi,r8d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - add ecx,r12d - and r15d,esi - xor r14d,edx - vpaddd xmm1,xmm1,xmm4 - add ecx,r13d - xor r15d,r8d - add r10d,ecx - vpxor xmm6,xmm6,xmm7 - shrd r14d,r14d,2 - add ecx,r15d - mov r13d,r10d - vpsrlq xmm7,xmm7,2 - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,r11d - xor r13d,r10d - shrd r14d,r14d,9 - vpshufd xmm6,xmm6,132 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - vpsrldq xmm6,xmm6,8 - and r12d,r10d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - vpaddd xmm1,xmm1,xmm6 - mov r15d,ecx - shrd r14d,r14d,11 - xor r12d,eax - vpshufd xmm7,xmm1,80 - xor r15d,edx - shrd r13d,r13d,6 - add ebx,r12d - vpsrld xmm6,xmm7,10 - and esi,r15d - xor r14d,ecx - add ebx,r13d - vpsrlq xmm7,xmm7,17 - xor esi,edx - add r9d,ebx - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add ebx,esi - mov r13d,r9d - add r14d,ebx - vpsrlq xmm7,xmm7,2 - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - vpxor xmm6,xmm6,xmm7 - xor r13d,r9d - shrd r14d,r14d,9 - xor r12d,r11d - vpshufd xmm6,xmm6,232 - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vpslldq xmm6,xmm6,8 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov esi,ebx - vpaddd xmm1,xmm1,xmm6 - shrd r14d,r14d,11 - xor r12d,r11d - xor esi,ecx - vpaddd xmm6,xmm1,XMMWORD PTR[32+rbp] - shrd r13d,r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - shrd r14d,r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm6 - vpalignr xmm4,xmm3,xmm2,4 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - vpalignr xmm7,xmm1,xmm0,4 - xor r13d,r8d - shrd r14d,r14d,9 - xor r12d,r10d - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vpaddd xmm2,xmm2,xmm7 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - vpsrld xmm7,xmm4,3 - shrd r14d,r14d,11 - xor r12d,r10d - xor r15d,ebx - vpslld xmm5,xmm4,14 - shrd r13d,r13d,6 - add r11d,r12d - and esi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,eax - add r11d,r13d - xor esi,ebx - vpshufd xmm7,xmm1,250 - add edx,r11d - shrd r14d,r14d,2 - add r11d,esi - vpsrld xmm6,xmm6,11 - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - vpslld xmm5,xmm5,11 - shrd r14d,r14d,9 - xor r12d,r9d - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,r11d - and r12d,edx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r13d,edx - vpsrld xmm6,xmm7,10 - add r10d,DWORD PTR[36+rsp] - mov esi,r11d - shrd r14d,r14d,11 - vpxor xmm4,xmm4,xmm5 - xor r12d,r9d - xor esi,eax - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - add r10d,r12d - and r15d,esi - xor r14d,r11d - vpaddd xmm2,xmm2,xmm4 - add r10d,r13d - xor r15d,eax - add ecx,r10d - vpxor xmm6,xmm6,xmm7 - shrd r14d,r14d,2 - add r10d,r15d - mov r13d,ecx - vpsrlq xmm7,xmm7,2 - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,edx - xor r13d,ecx - shrd r14d,r14d,9 - vpshufd xmm6,xmm6,132 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - vpsrldq xmm6,xmm6,8 - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - vpaddd xmm2,xmm2,xmm6 - mov r15d,r10d - shrd r14d,r14d,11 - xor r12d,r8d - vpshufd xmm7,xmm2,80 - xor r15d,r11d - shrd r13d,r13d,6 - add r9d,r12d - vpsrld xmm6,xmm7,10 - and esi,r15d - xor r14d,r10d - add r9d,r13d - vpsrlq xmm7,xmm7,17 - xor esi,r11d - add ebx,r9d - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add r9d,esi - mov r13d,ebx - add r14d,r9d - vpsrlq xmm7,xmm7,2 - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - vpxor xmm6,xmm6,xmm7 - xor r13d,ebx - shrd r14d,r14d,9 - xor r12d,edx - vpshufd xmm6,xmm6,232 - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vpslldq xmm6,xmm6,8 - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov esi,r9d - vpaddd xmm2,xmm2,xmm6 - shrd r14d,r14d,11 - xor r12d,edx - xor esi,r10d - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - shrd r13d,r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - shrd r14d,r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[32+rsp],xmm6 - vpalignr xmm4,xmm0,xmm3,4 - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - vpalignr xmm7,xmm2,xmm1,4 - xor r13d,eax - shrd r14d,r14d,9 - xor r12d,ecx - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vpaddd xmm3,xmm3,xmm7 - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - vpsrld xmm7,xmm4,3 - shrd r14d,r14d,11 - xor r12d,ecx - xor r15d,r9d - vpslld xmm5,xmm4,14 - shrd r13d,r13d,6 - add edx,r12d - and esi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,r8d - add edx,r13d - xor esi,r9d - vpshufd xmm7,xmm2,250 - add r11d,edx - shrd r14d,r14d,2 - add edx,esi - vpsrld xmm6,xmm6,11 - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - vpslld xmm5,xmm5,11 - shrd r14d,r14d,9 - xor r12d,ebx - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,edx - and r12d,r11d - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r13d,r11d - vpsrld xmm6,xmm7,10 - add ecx,DWORD PTR[52+rsp] - mov esi,edx - shrd r14d,r14d,11 - vpxor xmm4,xmm4,xmm5 - xor r12d,ebx - xor esi,r8d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - add ecx,r12d - and r15d,esi - xor r14d,edx - vpaddd xmm3,xmm3,xmm4 - add ecx,r13d - xor r15d,r8d - add r10d,ecx - vpxor xmm6,xmm6,xmm7 - shrd r14d,r14d,2 - add ecx,r15d - mov r13d,r10d - vpsrlq xmm7,xmm7,2 - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,r11d - xor r13d,r10d - shrd r14d,r14d,9 - vpshufd xmm6,xmm6,132 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - vpsrldq xmm6,xmm6,8 - and r12d,r10d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - vpaddd xmm3,xmm3,xmm6 - mov r15d,ecx - shrd r14d,r14d,11 - xor r12d,eax - vpshufd xmm7,xmm3,80 - xor r15d,edx - shrd r13d,r13d,6 - add ebx,r12d - vpsrld xmm6,xmm7,10 - and esi,r15d - xor r14d,ecx - add ebx,r13d - vpsrlq xmm7,xmm7,17 - xor esi,edx - add r9d,ebx - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add ebx,esi - mov r13d,r9d - add r14d,ebx - vpsrlq xmm7,xmm7,2 - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - vpxor xmm6,xmm6,xmm7 - xor r13d,r9d - shrd r14d,r14d,9 - xor r12d,r11d - vpshufd xmm6,xmm6,232 - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vpslldq xmm6,xmm6,8 - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov esi,ebx - vpaddd xmm3,xmm3,xmm6 - shrd r14d,r14d,11 - xor r12d,r11d - xor esi,ecx - vpaddd xmm6,xmm3,XMMWORD PTR[96+rbp] - shrd r13d,r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - shrd r14d,r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[48+rsp],xmm6 - mov r12,QWORD PTR[((64+0))+rsp] - vpand xmm11,xmm11,xmm14 - mov r15,QWORD PTR[((64+8))+rsp] - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r12*1+r15],xmm8 - lea r12,QWORD PTR[16+r12] - cmp BYTE PTR[131+rbp],0 - jne $L$avx_00_47 - vmovdqu xmm9,XMMWORD PTR[r12] - mov QWORD PTR[((64+0))+rsp],r12 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - xor r13d,r8d - shrd r14d,r14d,9 - xor r12d,r10d - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - shrd r14d,r14d,11 - xor r12d,r10d - xor r15d,ebx - shrd r13d,r13d,6 - add r11d,r12d - and esi,r15d - xor r14d,eax - add r11d,r13d - xor esi,ebx - add edx,r11d - shrd r14d,r14d,2 - add r11d,esi - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - shrd r14d,r14d,9 - xor r12d,r9d - shrd r13d,r13d,5 - xor r14d,r11d - and r12d,edx - vpxor xmm9,xmm9,xmm8 - xor r13d,edx - add r10d,DWORD PTR[4+rsp] - mov esi,r11d - shrd r14d,r14d,11 - xor r12d,r9d - xor esi,eax - shrd r13d,r13d,6 - add r10d,r12d - and r15d,esi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - add ecx,r10d - shrd r14d,r14d,2 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - mov r12d,edx - xor r13d,ecx - shrd r14d,r14d,9 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - shrd r14d,r14d,11 - xor r12d,r8d - xor r15d,r11d - shrd r13d,r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - shrd r14d,r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - shrd r14d,r14d,9 - xor r12d,edx - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov esi,r9d - shrd r14d,r14d,11 - xor r12d,edx - xor esi,r10d - shrd r13d,r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - shrd r14d,r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - xor r13d,eax - shrd r14d,r14d,9 - xor r12d,ecx - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - shrd r14d,r14d,11 - xor r12d,ecx - xor r15d,r9d - shrd r13d,r13d,6 - add edx,r12d - and esi,r15d - xor r14d,r8d - add edx,r13d - xor esi,r9d - add r11d,edx - shrd r14d,r14d,2 - add edx,esi - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - shrd r14d,r14d,9 - xor r12d,ebx - shrd r13d,r13d,5 - xor r14d,edx - and r12d,r11d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r13d,r11d - add ecx,DWORD PTR[20+rsp] - mov esi,edx - shrd r14d,r14d,11 - xor r12d,ebx - xor esi,r8d - shrd r13d,r13d,6 - add ecx,r12d - and r15d,esi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - add r10d,ecx - shrd r14d,r14d,2 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - mov r12d,r11d - xor r13d,r10d - shrd r14d,r14d,9 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - and r12d,r10d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - shrd r14d,r14d,11 - xor r12d,eax - xor r15d,edx - shrd r13d,r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - shrd r14d,r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - shrd r14d,r14d,9 - xor r12d,r11d - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov esi,ebx - shrd r14d,r14d,11 - xor r12d,r11d - xor esi,ecx - shrd r13d,r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - shrd r14d,r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - xor r13d,r8d - shrd r14d,r14d,9 - xor r12d,r10d - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - shrd r14d,r14d,11 - xor r12d,r10d - xor r15d,ebx - shrd r13d,r13d,6 - add r11d,r12d - and esi,r15d - xor r14d,eax - add r11d,r13d - xor esi,ebx - add edx,r11d - shrd r14d,r14d,2 - add r11d,esi - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - mov r11d,r14d - mov r12d,r8d - xor r13d,edx - shrd r14d,r14d,9 - xor r12d,r9d - shrd r13d,r13d,5 - xor r14d,r11d - and r12d,edx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r13d,edx - add r10d,DWORD PTR[36+rsp] - mov esi,r11d - shrd r14d,r14d,11 - xor r12d,r9d - xor esi,eax - shrd r13d,r13d,6 - add r10d,r12d - and r15d,esi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - add ecx,r10d - shrd r14d,r14d,2 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - mov r12d,edx - xor r13d,ecx - shrd r14d,r14d,9 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - and r12d,ecx - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - shrd r14d,r14d,11 - xor r12d,r8d - xor r15d,r11d - shrd r13d,r13d,6 - add r9d,r12d - and esi,r15d - xor r14d,r10d - add r9d,r13d - xor esi,r11d - add ebx,r9d - shrd r14d,r14d,2 - add r9d,esi - mov r13d,ebx - add r14d,r9d - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - xor r13d,ebx - shrd r14d,r14d,9 - xor r12d,edx - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov esi,r9d - shrd r14d,r14d,11 - xor r12d,edx - xor esi,r10d - shrd r13d,r13d,6 - add r8d,r12d - and r15d,esi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - add eax,r8d - shrd r14d,r14d,2 - add r8d,r15d - mov r13d,eax - add r14d,r8d - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - xor r13d,eax - shrd r14d,r14d,9 - xor r12d,ecx - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - shrd r14d,r14d,11 - xor r12d,ecx - xor r15d,r9d - shrd r13d,r13d,6 - add edx,r12d - and esi,r15d - xor r14d,r8d - add edx,r13d - xor esi,r9d - add r11d,edx - shrd r14d,r14d,2 - add edx,esi - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - mov edx,r14d - mov r12d,eax - xor r13d,r11d - shrd r14d,r14d,9 - xor r12d,ebx - shrd r13d,r13d,5 - xor r14d,edx - and r12d,r11d - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r13d,r11d - add ecx,DWORD PTR[52+rsp] - mov esi,edx - shrd r14d,r14d,11 - xor r12d,ebx - xor esi,r8d - shrd r13d,r13d,6 - add ecx,r12d - and r15d,esi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - add r10d,ecx - shrd r14d,r14d,2 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - mov r12d,r11d - xor r13d,r10d - shrd r14d,r14d,9 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - and r12d,r10d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - shrd r14d,r14d,11 - xor r12d,eax - xor r15d,edx - shrd r13d,r13d,6 - add ebx,r12d - and esi,r15d - xor r14d,ecx - add ebx,r13d - xor esi,edx - add r9d,ebx - shrd r14d,r14d,2 - add ebx,esi - mov r13d,r9d - add r14d,ebx - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - xor r13d,r9d - shrd r14d,r14d,9 - xor r12d,r11d - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov esi,ebx - shrd r14d,r14d,11 - xor r12d,r11d - xor esi,ecx - shrd r13d,r13d,6 - add eax,r12d - and r15d,esi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - add r8d,eax - shrd r14d,r14d,2 - add eax,r15d - mov r13d,r8d - add r14d,eax - mov r12,QWORD PTR[((64+0))+rsp] - mov r13,QWORD PTR[((64+8))+rsp] - mov r15,QWORD PTR[((64+40))+rsp] - mov rsi,QWORD PTR[((64+48))+rsp] - - vpand xmm11,xmm11,xmm14 - mov eax,r14d - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r13*1+r12],xmm8 - lea r12,QWORD PTR[16+r12] - - add eax,DWORD PTR[r15] - add ebx,DWORD PTR[4+r15] - add ecx,DWORD PTR[8+r15] - add edx,DWORD PTR[12+r15] - add r8d,DWORD PTR[16+r15] - add r9d,DWORD PTR[20+r15] - add r10d,DWORD PTR[24+r15] - add r11d,DWORD PTR[28+r15] - - cmp r12,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[r15],eax - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - mov DWORD PTR[16+r15],r8d - mov DWORD PTR[20+r15],r9d - mov DWORD PTR[24+r15],r10d - mov DWORD PTR[28+r15],r11d - jb $L$loop_avx - - mov r8,QWORD PTR[((64+32))+rsp] - mov rsi,QWORD PTR[((64+56))+rsp] - vmovdqu XMMWORD PTR[r8],xmm8 - vzeroall - movaps xmm6,XMMWORD PTR[128+rsp] - movaps xmm7,XMMWORD PTR[144+rsp] - movaps xmm8,XMMWORD PTR[160+rsp] - movaps xmm9,XMMWORD PTR[176+rsp] - movaps xmm10,XMMWORD PTR[192+rsp] - movaps xmm11,XMMWORD PTR[208+rsp] - movaps xmm12,XMMWORD PTR[224+rsp] - movaps xmm13,XMMWORD PTR[240+rsp] - movaps xmm14,XMMWORD PTR[256+rsp] - movaps xmm15,XMMWORD PTR[272+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha256_enc_avx:: -aesni_cbc_sha256_enc_avx ENDP - -ALIGN 64 -aesni_cbc_sha256_enc_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha256_enc_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -$L$avx2_shortcut:: - mov r10,QWORD PTR[56+rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - sub rsp,736 - and rsp,-256*4 - add rsp,448 - - shl rdx,6 - sub rsi,rdi - sub r10,rdi - add rdx,rdi - - - - mov QWORD PTR[((64+16))+rsp],rdx - - mov QWORD PTR[((64+32))+rsp],r8 - mov QWORD PTR[((64+40))+rsp],r9 - mov QWORD PTR[((64+48))+rsp],r10 - mov QWORD PTR[((64+56))+rsp],r11 - movaps XMMWORD PTR[128+rsp],xmm6 - movaps XMMWORD PTR[144+rsp],xmm7 - movaps XMMWORD PTR[160+rsp],xmm8 - movaps XMMWORD PTR[176+rsp],xmm9 - movaps XMMWORD PTR[192+rsp],xmm10 - movaps XMMWORD PTR[208+rsp],xmm11 - movaps XMMWORD PTR[224+rsp],xmm12 - movaps XMMWORD PTR[240+rsp],xmm13 - movaps XMMWORD PTR[256+rsp],xmm14 - movaps XMMWORD PTR[272+rsp],xmm15 -$L$prologue_avx2:: - vzeroall - - mov r13,rdi - vpinsrq xmm15,xmm15,rsi,1 - lea rdi,QWORD PTR[128+rcx] - lea r12,QWORD PTR[((K256+544))] - mov r14d,DWORD PTR[((240-128))+rdi] - mov r15,r9 - mov rsi,r10 - vmovdqu xmm8,XMMWORD PTR[r8] - lea r14,QWORD PTR[((-9))+r14] - - vmovdqa xmm14,XMMWORD PTR[r14*8+r12] - vmovdqa xmm13,XMMWORD PTR[16+r14*8+r12] - vmovdqa xmm12,XMMWORD PTR[32+r14*8+r12] - - sub r13,-16*4 - mov eax,DWORD PTR[r15] - lea r12,QWORD PTR[r13*1+rsi] - mov ebx,DWORD PTR[4+r15] - cmp r13,rdx - mov ecx,DWORD PTR[8+r15] - cmove r12,rsp - mov edx,DWORD PTR[12+r15] - mov r8d,DWORD PTR[16+r15] - mov r9d,DWORD PTR[20+r15] - mov r10d,DWORD PTR[24+r15] - mov r11d,DWORD PTR[28+r15] - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - jmp $L$oop_avx2 -ALIGN 16 -$L$oop_avx2:: - vmovdqa ymm7,YMMWORD PTR[((K256+512))] - vmovdqu xmm0,XMMWORD PTR[((-64+0))+r13*1+rsi] - vmovdqu xmm1,XMMWORD PTR[((-64+16))+r13*1+rsi] - vmovdqu xmm2,XMMWORD PTR[((-64+32))+r13*1+rsi] - vmovdqu xmm3,XMMWORD PTR[((-64+48))+r13*1+rsi] - - vinserti128 ymm0,ymm0,XMMWORD PTR[r12],1 - vinserti128 ymm1,ymm1,XMMWORD PTR[16+r12],1 - vpshufb ymm0,ymm0,ymm7 - vinserti128 ymm2,ymm2,XMMWORD PTR[32+r12],1 - vpshufb ymm1,ymm1,ymm7 - vinserti128 ymm3,ymm3,XMMWORD PTR[48+r12],1 - - lea rbp,QWORD PTR[K256] - vpshufb ymm2,ymm2,ymm7 - lea r13,QWORD PTR[((-64))+r13] - vpaddd ymm4,ymm0,YMMWORD PTR[rbp] - vpshufb ymm3,ymm3,ymm7 - vpaddd ymm5,ymm1,YMMWORD PTR[32+rbp] - vpaddd ymm6,ymm2,YMMWORD PTR[64+rbp] - vpaddd ymm7,ymm3,YMMWORD PTR[96+rbp] - vmovdqa YMMWORD PTR[rsp],ymm4 - xor r14d,r14d - vmovdqa YMMWORD PTR[32+rsp],ymm5 - lea rsp,QWORD PTR[((-64))+rsp] - mov esi,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - xor esi,ecx - vmovdqa YMMWORD PTR[32+rsp],ymm7 - mov r12d,r9d - sub rbp,-16*2*4 - jmp $L$avx2_00_47 - -ALIGN 16 -$L$avx2_00_47:: - vmovdqu xmm9,XMMWORD PTR[r13] - vpinsrq xmm15,xmm15,r13,0 - lea rsp,QWORD PTR[((-64))+rsp] - vpalignr ymm4,ymm1,ymm0,4 - add r11d,DWORD PTR[((0+128))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - vpalignr ymm7,ymm3,ymm2,4 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - vpsrld ymm6,ymm4,7 - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - vpaddd ymm0,ymm0,ymm7 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - vpsrld ymm7,ymm4,3 - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - vpslld ymm5,ymm4,14 - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - vpxor ymm4,ymm7,ymm6 - and esi,r15d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r14d,r12d - xor esi,ebx - vpshufd ymm7,ymm3,250 - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - vpsrld ymm6,ymm6,11 - add r10d,DWORD PTR[((4+128))+rsp] - and r12d,edx - rorx r13d,edx,25 - vpxor ymm4,ymm4,ymm5 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - vpslld ymm5,ymm5,11 - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - vpxor ymm4,ymm4,ymm6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - vpsrld ymm6,ymm7,10 - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - vpxor ymm4,ymm4,ymm5 - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - vpsrlq ymm7,ymm7,17 - and r15d,esi - vpxor xmm9,xmm9,xmm8 - xor r14d,r12d - xor r15d,eax - vpaddd ymm0,ymm0,ymm4 - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - vpxor ymm6,ymm6,ymm7 - add r9d,DWORD PTR[((8+128))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - vpxor ymm6,ymm6,ymm7 - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - vpshufd ymm6,ymm6,132 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - vpsrldq ymm6,ymm6,8 - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - vpaddd ymm0,ymm0,ymm6 - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - vpshufd ymm7,ymm0,80 - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r14d,r12d - xor esi,r11d - vpsrld ymm6,ymm7,10 - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - vpsrlq ymm7,ymm7,17 - add r8d,DWORD PTR[((12+128))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - vpxor ymm6,ymm6,ymm7 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - vpsrlq ymm7,ymm7,2 - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - vpxor ymm6,ymm6,ymm7 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - vpshufd ymm6,ymm6,232 - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - vpslldq ymm6,ymm6,8 - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - vpaddd ymm0,ymm0,ymm6 - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r14d,r12d - xor r15d,r10d - vpaddd ymm6,ymm0,YMMWORD PTR[rbp] - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - vpalignr ymm4,ymm2,ymm1,4 - add edx,DWORD PTR[((32+128))+rsp] - and r12d,eax - rorx r13d,eax,25 - vpalignr ymm7,ymm0,ymm3,4 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - vpsrld ymm6,ymm4,7 - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - vpaddd ymm1,ymm1,ymm7 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - vpsrld ymm7,ymm4,3 - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - vpslld ymm5,ymm4,14 - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - vpxor ymm4,ymm7,ymm6 - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r14d,r12d - xor esi,r9d - vpshufd ymm7,ymm0,250 - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - vpsrld ymm6,ymm6,11 - add ecx,DWORD PTR[((36+128))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - vpxor ymm4,ymm4,ymm5 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - vpslld ymm5,ymm5,11 - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - vpxor ymm4,ymm4,ymm6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - vpsrld ymm6,ymm7,10 - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - vpxor ymm4,ymm4,ymm5 - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - vpsrlq ymm7,ymm7,17 - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r14d,r12d - xor r15d,r8d - vpaddd ymm1,ymm1,ymm4 - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - vpxor ymm6,ymm6,ymm7 - add ebx,DWORD PTR[((40+128))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - vpxor ymm6,ymm6,ymm7 - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - vpshufd ymm6,ymm6,132 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - vpsrldq ymm6,ymm6,8 - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - vpaddd ymm1,ymm1,ymm6 - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - vpshufd ymm7,ymm1,80 - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r14d,r12d - xor esi,edx - vpsrld ymm6,ymm7,10 - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - vpsrlq ymm7,ymm7,17 - add eax,DWORD PTR[((44+128))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - vpxor ymm6,ymm6,ymm7 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - vpsrlq ymm7,ymm7,2 - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - vpxor ymm6,ymm6,ymm7 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - vpshufd ymm6,ymm6,232 - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - vpslldq ymm6,ymm6,8 - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - vpaddd ymm1,ymm1,ymm6 - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r14d,r12d - xor r15d,ecx - vpaddd ymm6,ymm1,YMMWORD PTR[32+rbp] - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vmovdqa YMMWORD PTR[32+rsp],ymm6 - lea rsp,QWORD PTR[((-64))+rsp] - vpalignr ymm4,ymm3,ymm2,4 - add r11d,DWORD PTR[((0+128))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - vpalignr ymm7,ymm1,ymm0,4 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - vpsrld ymm6,ymm4,7 - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - vpaddd ymm2,ymm2,ymm7 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - vpsrld ymm7,ymm4,3 - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - vpslld ymm5,ymm4,14 - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - vpxor ymm4,ymm7,ymm6 - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r14d,r12d - xor esi,ebx - vpshufd ymm7,ymm1,250 - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - vpsrld ymm6,ymm6,11 - add r10d,DWORD PTR[((4+128))+rsp] - and r12d,edx - rorx r13d,edx,25 - vpxor ymm4,ymm4,ymm5 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - vpslld ymm5,ymm5,11 - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - vpxor ymm4,ymm4,ymm6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - vpsrld ymm6,ymm7,10 - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - vpxor ymm4,ymm4,ymm5 - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - vpsrlq ymm7,ymm7,17 - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r14d,r12d - xor r15d,eax - vpaddd ymm2,ymm2,ymm4 - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - vpxor ymm6,ymm6,ymm7 - add r9d,DWORD PTR[((8+128))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - vpxor ymm6,ymm6,ymm7 - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - vpshufd ymm6,ymm6,132 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - vpsrldq ymm6,ymm6,8 - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - vpaddd ymm2,ymm2,ymm6 - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - vpshufd ymm7,ymm2,80 - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r14d,r12d - xor esi,r11d - vpsrld ymm6,ymm7,10 - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - vpsrlq ymm7,ymm7,17 - add r8d,DWORD PTR[((12+128))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - vpxor ymm6,ymm6,ymm7 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - vpsrlq ymm7,ymm7,2 - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - vpxor ymm6,ymm6,ymm7 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - vpshufd ymm6,ymm6,232 - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - vpslldq ymm6,ymm6,8 - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - vpaddd ymm2,ymm2,ymm6 - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r14d,r12d - xor r15d,r10d - vpaddd ymm6,ymm2,YMMWORD PTR[64+rbp] - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - vpalignr ymm4,ymm0,ymm3,4 - add edx,DWORD PTR[((32+128))+rsp] - and r12d,eax - rorx r13d,eax,25 - vpalignr ymm7,ymm2,ymm1,4 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - vpsrld ymm6,ymm4,7 - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - vpaddd ymm3,ymm3,ymm7 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - vpsrld ymm7,ymm4,3 - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - vpslld ymm5,ymm4,14 - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - vpxor ymm4,ymm7,ymm6 - and esi,r15d - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r14d,r12d - xor esi,r9d - vpshufd ymm7,ymm2,250 - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - vpsrld ymm6,ymm6,11 - add ecx,DWORD PTR[((36+128))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - vpxor ymm4,ymm4,ymm5 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - vpslld ymm5,ymm5,11 - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - vpxor ymm4,ymm4,ymm6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - vpsrld ymm6,ymm7,10 - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - vpxor ymm4,ymm4,ymm5 - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - vpsrlq ymm7,ymm7,17 - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r14d,r12d - xor r15d,r8d - vpaddd ymm3,ymm3,ymm4 - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - vpxor ymm6,ymm6,ymm7 - add ebx,DWORD PTR[((40+128))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - vpxor ymm6,ymm6,ymm7 - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - vpshufd ymm6,ymm6,132 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - vpsrldq ymm6,ymm6,8 - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - vpaddd ymm3,ymm3,ymm6 - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - vpshufd ymm7,ymm3,80 - and esi,r15d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r14d,r12d - xor esi,edx - vpsrld ymm6,ymm7,10 - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - vpsrlq ymm7,ymm7,17 - add eax,DWORD PTR[((44+128))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - vpxor ymm6,ymm6,ymm7 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - vpsrlq ymm7,ymm7,2 - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - vpxor ymm6,ymm6,ymm7 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - vpshufd ymm6,ymm6,232 - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - vpslldq ymm6,ymm6,8 - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - vpaddd ymm3,ymm3,ymm6 - and r15d,esi - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r14d,r12d - xor r15d,ecx - vpaddd ymm6,ymm3,YMMWORD PTR[96+rbp] - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vmovdqa YMMWORD PTR[32+rsp],ymm6 - vmovq r13,xmm15 - vpextrq r15,xmm15,1 - vpand xmm11,xmm11,xmm14 - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r13*1+r15],xmm8 - lea r13,QWORD PTR[16+r13] - lea rbp,QWORD PTR[128+rbp] - cmp BYTE PTR[3+rbp],0 - jne $L$avx2_00_47 - vmovdqu xmm9,XMMWORD PTR[r13] - vpinsrq xmm15,xmm15,r13,0 - add r11d,DWORD PTR[((0+64))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and esi,r15d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r14d,r12d - xor esi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[((4+64))+rsp] - and r12d,edx - rorx r13d,edx,25 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,esi - vpxor xmm9,xmm9,xmm8 - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[((8+64))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r14d,r12d - xor esi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[((12+64))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[((32+64))+rsp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r14d,r12d - xor esi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[((36+64))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[((40+64))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r14d,r12d - xor esi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[((44+64))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - add r11d,DWORD PTR[rsp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r14d,r12d - xor esi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[4+rsp] - and r12d,edx - rorx r13d,edx,25 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[8+rsp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r14d,r12d - xor esi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[12+rsp] - and r12d,ebx - rorx r13d,ebx,25 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[32+rsp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and esi,r15d - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r14d,r12d - xor esi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[36+rsp] - and r12d,r11d - rorx r13d,r11d,25 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[40+rsp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and esi,r15d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r14d,r12d - xor esi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[44+rsp] - and r12d,r9d - rorx r13d,r9d,25 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,esi - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vpextrq r12,xmm15,1 - vmovq r13,xmm15 - mov r15,QWORD PTR[552+rsp] - add eax,r14d - lea rbp,QWORD PTR[448+rsp] - - vpand xmm11,xmm11,xmm14 - vpor xmm8,xmm8,xmm11 - vmovdqu XMMWORD PTR[r13*1+r12],xmm8 - lea r13,QWORD PTR[16+r13] - - add eax,DWORD PTR[r15] - add ebx,DWORD PTR[4+r15] - add ecx,DWORD PTR[8+r15] - add edx,DWORD PTR[12+r15] - add r8d,DWORD PTR[16+r15] - add r9d,DWORD PTR[20+r15] - add r10d,DWORD PTR[24+r15] - add r11d,DWORD PTR[28+r15] - - mov DWORD PTR[r15],eax - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - mov DWORD PTR[16+r15],r8d - mov DWORD PTR[20+r15],r9d - mov DWORD PTR[24+r15],r10d - mov DWORD PTR[28+r15],r11d - - cmp r13,QWORD PTR[80+rbp] - je $L$done_avx2 - - xor r14d,r14d - mov esi,ebx - mov r12d,r9d - xor esi,ecx - jmp $L$ower_avx2 -ALIGN 16 -$L$ower_avx2:: - vmovdqu xmm9,XMMWORD PTR[r13] - vpinsrq xmm15,xmm15,r13,0 - add r11d,DWORD PTR[((0+16))+rbp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and esi,r15d - vpxor xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((16-128))+rdi] - xor r14d,r12d - xor esi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[((4+16))+rbp] - and r12d,edx - rorx r13d,edx,25 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,esi - vpxor xmm9,xmm9,xmm8 - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[((8+16))+rbp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((32-128))+rdi] - xor r14d,r12d - xor esi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[((12+16))+rbp] - and r12d,ebx - rorx r13d,ebx,25 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((48-128))+rdi] - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[((32+16))+rbp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - xor r14d,r12d - xor esi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[((36+16))+rbp] - and r12d,r11d - rorx r13d,r11d,25 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((80-128))+rdi] - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[((40+16))+rbp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((96-128))+rdi] - xor r14d,r12d - xor esi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[((44+16))+rbp] - and r12d,r9d - rorx r13d,r9d,25 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((112-128))+rdi] - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - lea rbp,QWORD PTR[((-64))+rbp] - add r11d,DWORD PTR[((0+16))+rbp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((128-128))+rdi] - xor r14d,r12d - xor esi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rsi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[((4+16))+rbp] - and r12d,edx - rorx r13d,edx,25 - rorx esi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,esi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov esi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor esi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,esi - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((144-128))+rdi] - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[((8+16))+rbp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and esi,r15d - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((160-128))+rdi] - xor r14d,r12d - xor esi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rsi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[((12+16))+rbp] - and r12d,ebx - rorx r13d,ebx,25 - rorx esi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,esi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov esi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor esi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((176-128))+rdi] - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[((32+16))+rbp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and esi,r15d - vpand xmm8,xmm11,xmm12 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((192-128))+rdi] - xor r14d,r12d - xor esi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rsi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[((36+16))+rbp] - and r12d,r11d - rorx r13d,r11d,25 - rorx esi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,esi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov esi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor esi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,esi - vaesenclast xmm11,xmm9,xmm10 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((208-128))+rdi] - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[((40+16))+rbp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and esi,r15d - vpand xmm11,xmm11,xmm13 - vaesenc xmm9,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((224-128))+rdi] - xor r14d,r12d - xor esi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rsi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[((44+16))+rbp] - and r12d,r9d - rorx r13d,r9d,25 - rorx esi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,esi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov esi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor esi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,esi - vpor xmm8,xmm8,xmm11 - vaesenclast xmm11,xmm9,xmm10 - vmovdqu xmm10,XMMWORD PTR[((0-128))+rdi] - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vmovq r13,xmm15 - vpextrq r15,xmm15,1 - vpand xmm11,xmm11,xmm14 - vpor xmm8,xmm8,xmm11 - lea rbp,QWORD PTR[((-64))+rbp] - vmovdqu XMMWORD PTR[r13*1+r15],xmm8 - lea r13,QWORD PTR[16+r13] - cmp rbp,rsp - jae $L$ower_avx2 - - mov r15,QWORD PTR[552+rsp] - lea r13,QWORD PTR[64+r13] - mov rsi,QWORD PTR[560+rsp] - add eax,r14d - lea rsp,QWORD PTR[448+rsp] - - add eax,DWORD PTR[r15] - add ebx,DWORD PTR[4+r15] - add ecx,DWORD PTR[8+r15] - add edx,DWORD PTR[12+r15] - add r8d,DWORD PTR[16+r15] - add r9d,DWORD PTR[20+r15] - add r10d,DWORD PTR[24+r15] - lea r12,QWORD PTR[r13*1+rsi] - add r11d,DWORD PTR[28+r15] - - cmp r13,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[r15],eax - cmove r12,rsp - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - mov DWORD PTR[16+r15],r8d - mov DWORD PTR[20+r15],r9d - mov DWORD PTR[24+r15],r10d - mov DWORD PTR[28+r15],r11d - - jbe $L$oop_avx2 - lea rbp,QWORD PTR[rsp] - -$L$done_avx2:: - lea rsp,QWORD PTR[rbp] - mov r8,QWORD PTR[((64+32))+rsp] - mov rsi,QWORD PTR[((64+56))+rsp] - vmovdqu XMMWORD PTR[r8],xmm8 - vzeroall - movaps xmm6,XMMWORD PTR[128+rsp] - movaps xmm7,XMMWORD PTR[144+rsp] - movaps xmm8,XMMWORD PTR[160+rsp] - movaps xmm9,XMMWORD PTR[176+rsp] - movaps xmm10,XMMWORD PTR[192+rsp] - movaps xmm11,XMMWORD PTR[208+rsp] - movaps xmm12,XMMWORD PTR[224+rsp] - movaps xmm13,XMMWORD PTR[240+rsp] - movaps xmm14,XMMWORD PTR[256+rsp] - movaps xmm15,XMMWORD PTR[272+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha256_enc_avx2:: -aesni_cbc_sha256_enc_avx2 ENDP - -ALIGN 32 -aesni_cbc_sha256_enc_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha256_enc_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[(-8-160)+rax],xmm6 - movaps XMMWORD PTR[(-8-144)+rax],xmm7 - movaps XMMWORD PTR[(-8-128)+rax],xmm8 - movaps XMMWORD PTR[(-8-112)+rax],xmm9 - movaps XMMWORD PTR[(-8-96)+rax],xmm10 - movaps XMMWORD PTR[(-8-80)+rax],xmm11 - movaps XMMWORD PTR[(-8-64)+rax],xmm12 - movaps XMMWORD PTR[(-8-48)+rax],xmm13 - movaps XMMWORD PTR[(-8-32)+rax],xmm14 - movaps XMMWORD PTR[(-8-16)+rax],xmm15 -$L$prologue_shaext:: - lea rax,QWORD PTR[((K256+128))] - movdqu xmm1,XMMWORD PTR[r9] - movdqu xmm2,XMMWORD PTR[16+r9] - movdqa xmm3,XMMWORD PTR[((512-128))+rax] - - mov r11d,DWORD PTR[240+rcx] - sub rsi,rdi - movups xmm15,XMMWORD PTR[rcx] - movups xmm6,XMMWORD PTR[r8] - movups xmm4,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[112+rcx] - - pshufd xmm0,xmm1,01bh - pshufd xmm1,xmm1,0b1h - pshufd xmm2,xmm2,01bh - movdqa xmm7,xmm3 -DB 102,15,58,15,202,8 - punpcklqdq xmm2,xmm0 - - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - movdqu xmm10,XMMWORD PTR[r10] - movdqu xmm11,XMMWORD PTR[16+r10] - movdqu xmm12,XMMWORD PTR[32+r10] -DB 102,68,15,56,0,211 - movdqu xmm13,XMMWORD PTR[48+r10] - - movdqa xmm0,XMMWORD PTR[((0-128))+rax] - paddd xmm0,xmm10 -DB 102,68,15,56,0,219 - movdqa xmm9,xmm2 - movdqa xmm8,xmm1 - movups xmm14,XMMWORD PTR[rdi] - xorps xmm14,xmm15 - xorps xmm6,xmm14 - movups xmm5,XMMWORD PTR[((-80))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movups xmm4,XMMWORD PTR[((-64))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((32-128))+rax] - paddd xmm0,xmm11 -DB 102,68,15,56,0,227 - lea r10,QWORD PTR[64+r10] - movups xmm5,XMMWORD PTR[((-48))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movups xmm4,XMMWORD PTR[((-32))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((64-128))+rax] - paddd xmm0,xmm12 -DB 102,68,15,56,0,235 -DB 69,15,56,204,211 - movups xmm5,XMMWORD PTR[((-16))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm13 -DB 102,65,15,58,15,220,4 - paddd xmm10,xmm3 - movups xmm4,XMMWORD PTR[rcx] - aesenc xmm6,xmm5 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((96-128))+rax] - paddd xmm0,xmm13 -DB 69,15,56,205,213 -DB 69,15,56,204,220 - movups xmm5,XMMWORD PTR[16+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movups xmm4,XMMWORD PTR[32+rcx] - aesenc xmm6,xmm5 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,221,4 - paddd xmm11,xmm3 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((128-128))+rax] - paddd xmm0,xmm10 -DB 69,15,56,205,218 -DB 69,15,56,204,229 - movups xmm5,XMMWORD PTR[48+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 - paddd xmm12,xmm3 - cmp r11d,11 - jb $L$aesenclast1 - movups xmm4,XMMWORD PTR[64+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[80+rcx] - aesenc xmm6,xmm4 - je $L$aesenclast1 - movups xmm4,XMMWORD PTR[96+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[112+rcx] - aesenc xmm6,xmm4 -$L$aesenclast1:: - aesenclast xmm6,xmm5 - movups xmm4,XMMWORD PTR[((16-112))+rcx] - nop -DB 15,56,203,202 - movups xmm14,XMMWORD PTR[16+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[rdi*1+rsi],xmm6 - xorps xmm6,xmm14 - movups xmm5,XMMWORD PTR[((-80))+rcx] - aesenc xmm6,xmm4 - movdqa xmm0,XMMWORD PTR[((160-128))+rax] - paddd xmm0,xmm11 -DB 69,15,56,205,227 -DB 69,15,56,204,234 - movups xmm4,XMMWORD PTR[((-64))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm12 -DB 102,65,15,58,15,219,4 - paddd xmm13,xmm3 - movups xmm5,XMMWORD PTR[((-48))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((192-128))+rax] - paddd xmm0,xmm12 -DB 69,15,56,205,236 -DB 69,15,56,204,211 - movups xmm4,XMMWORD PTR[((-32))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm13 -DB 102,65,15,58,15,220,4 - paddd xmm10,xmm3 - movups xmm5,XMMWORD PTR[((-16))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((224-128))+rax] - paddd xmm0,xmm13 -DB 69,15,56,205,213 -DB 69,15,56,204,220 - movups xmm4,XMMWORD PTR[rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm10 -DB 102,65,15,58,15,221,4 - paddd xmm11,xmm3 - movups xmm5,XMMWORD PTR[16+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((256-128))+rax] - paddd xmm0,xmm10 -DB 69,15,56,205,218 -DB 69,15,56,204,229 - movups xmm4,XMMWORD PTR[32+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 - paddd xmm12,xmm3 - movups xmm5,XMMWORD PTR[48+rcx] - aesenc xmm6,xmm4 - cmp r11d,11 - jb $L$aesenclast2 - movups xmm4,XMMWORD PTR[64+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[80+rcx] - aesenc xmm6,xmm4 - je $L$aesenclast2 - movups xmm4,XMMWORD PTR[96+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[112+rcx] - aesenc xmm6,xmm4 -$L$aesenclast2:: - aesenclast xmm6,xmm5 - movups xmm4,XMMWORD PTR[((16-112))+rcx] - nop -DB 15,56,203,202 - movups xmm14,XMMWORD PTR[32+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[16+rdi*1+rsi],xmm6 - xorps xmm6,xmm14 - movups xmm5,XMMWORD PTR[((-80))+rcx] - aesenc xmm6,xmm4 - movdqa xmm0,XMMWORD PTR[((288-128))+rax] - paddd xmm0,xmm11 -DB 69,15,56,205,227 -DB 69,15,56,204,234 - movups xmm4,XMMWORD PTR[((-64))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm12 -DB 102,65,15,58,15,219,4 - paddd xmm13,xmm3 - movups xmm5,XMMWORD PTR[((-48))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((320-128))+rax] - paddd xmm0,xmm12 -DB 69,15,56,205,236 -DB 69,15,56,204,211 - movups xmm4,XMMWORD PTR[((-32))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm13 -DB 102,65,15,58,15,220,4 - paddd xmm10,xmm3 - movups xmm5,XMMWORD PTR[((-16))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((352-128))+rax] - paddd xmm0,xmm13 -DB 69,15,56,205,213 -DB 69,15,56,204,220 - movups xmm4,XMMWORD PTR[rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm10 -DB 102,65,15,58,15,221,4 - paddd xmm11,xmm3 - movups xmm5,XMMWORD PTR[16+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((384-128))+rax] - paddd xmm0,xmm10 -DB 69,15,56,205,218 -DB 69,15,56,204,229 - movups xmm4,XMMWORD PTR[32+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 - paddd xmm12,xmm3 - movups xmm5,XMMWORD PTR[48+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((416-128))+rax] - paddd xmm0,xmm11 -DB 69,15,56,205,227 -DB 69,15,56,204,234 - cmp r11d,11 - jb $L$aesenclast3 - movups xmm4,XMMWORD PTR[64+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[80+rcx] - aesenc xmm6,xmm4 - je $L$aesenclast3 - movups xmm4,XMMWORD PTR[96+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[112+rcx] - aesenc xmm6,xmm4 -$L$aesenclast3:: - aesenclast xmm6,xmm5 - movups xmm4,XMMWORD PTR[((16-112))+rcx] - nop -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm3,xmm12 -DB 102,65,15,58,15,219,4 - paddd xmm13,xmm3 - movups xmm14,XMMWORD PTR[48+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[32+rdi*1+rsi],xmm6 - xorps xmm6,xmm14 - movups xmm5,XMMWORD PTR[((-80))+rcx] - aesenc xmm6,xmm4 - movups xmm4,XMMWORD PTR[((-64))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((448-128))+rax] - paddd xmm0,xmm12 -DB 69,15,56,205,236 - movdqa xmm3,xmm7 - movups xmm5,XMMWORD PTR[((-48))+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movups xmm4,XMMWORD PTR[((-32))+rcx] - aesenc xmm6,xmm5 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((480-128))+rax] - paddd xmm0,xmm13 - movups xmm5,XMMWORD PTR[((-16))+rcx] - aesenc xmm6,xmm4 - movups xmm4,XMMWORD PTR[rcx] - aesenc xmm6,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movups xmm5,XMMWORD PTR[16+rcx] - aesenc xmm6,xmm4 -DB 15,56,203,202 - - movups xmm4,XMMWORD PTR[32+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[48+rcx] - aesenc xmm6,xmm4 - cmp r11d,11 - jb $L$aesenclast4 - movups xmm4,XMMWORD PTR[64+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[80+rcx] - aesenc xmm6,xmm4 - je $L$aesenclast4 - movups xmm4,XMMWORD PTR[96+rcx] - aesenc xmm6,xmm5 - movups xmm5,XMMWORD PTR[112+rcx] - aesenc xmm6,xmm4 -$L$aesenclast4:: - aesenclast xmm6,xmm5 - movups xmm4,XMMWORD PTR[((16-112))+rcx] - nop - - paddd xmm2,xmm9 - paddd xmm1,xmm8 - - dec rdx - movups XMMWORD PTR[48+rdi*1+rsi],xmm6 - lea rdi,QWORD PTR[64+rdi] - jnz $L$oop_shaext - - pshufd xmm2,xmm2,0b1h - pshufd xmm3,xmm1,01bh - pshufd xmm1,xmm1,0b1h - punpckhqdq xmm1,xmm2 -DB 102,15,58,15,211,8 - - movups XMMWORD PTR[r8],xmm6 - movdqu XMMWORD PTR[r9],xmm1 - movdqu XMMWORD PTR[16+r9],xmm2 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[((8+160))+rsp] -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha256_enc_shaext:: -aesni_cbc_sha256_enc_shaext ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - lea r10,QWORD PTR[aesni_cbc_sha256_enc_shaext] - cmp rbx,r10 - jb $L$not_in_shaext - - lea rsi,QWORD PTR[rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[168+rax] - jmp $L$in_prologue -$L$not_in_shaext:: - lea r10,QWORD PTR[$L$avx2_shortcut] - cmp rbx,r10 - jb $L$not_in_avx2 - - and rax,-256*4 - add rax,448 -$L$not_in_avx2:: - mov rsi,rax - mov rax,QWORD PTR[((64+56))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea rsi,QWORD PTR[((64+64))+rsi] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) - DD imagerel $L$SEH_begin_aesni_cbc_sha256_enc_xop - DD imagerel $L$SEH_end_aesni_cbc_sha256_enc_xop - DD imagerel $L$SEH_info_aesni_cbc_sha256_enc_xop - - DD imagerel $L$SEH_begin_aesni_cbc_sha256_enc_avx - DD imagerel $L$SEH_end_aesni_cbc_sha256_enc_avx - DD imagerel $L$SEH_info_aesni_cbc_sha256_enc_avx - DD imagerel $L$SEH_begin_aesni_cbc_sha256_enc_avx2 - DD imagerel $L$SEH_end_aesni_cbc_sha256_enc_avx2 - DD imagerel $L$SEH_info_aesni_cbc_sha256_enc_avx2 - DD imagerel $L$SEH_begin_aesni_cbc_sha256_enc_shaext - DD imagerel $L$SEH_end_aesni_cbc_sha256_enc_shaext - DD imagerel $L$SEH_info_aesni_cbc_sha256_enc_shaext -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_aesni_cbc_sha256_enc_xop:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_xop,imagerel $L$epilogue_xop - -$L$SEH_info_aesni_cbc_sha256_enc_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx,imagerel $L$epilogue_avx -$L$SEH_info_aesni_cbc_sha256_enc_avx2:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx2,imagerel $L$epilogue_avx2 -$L$SEH_info_aesni_cbc_sha256_enc_shaext:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_shaext,imagerel $L$epilogue_shaext - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/aesni-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/aesni-x86_64.asm deleted file mode 100644 index 5e848125d679fe..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/aesni-x86_64.asm +++ /dev/null @@ -1,4035 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC aesni_encrypt - -ALIGN 16 -aesni_encrypt PROC PUBLIC - movups xmm2,XMMWORD PTR[rcx] - mov eax,DWORD PTR[240+r8] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_1:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_1 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[rdx],xmm2 - pxor xmm2,xmm2 - DB 0F3h,0C3h ;repret -aesni_encrypt ENDP - -PUBLIC aesni_decrypt - -ALIGN 16 -aesni_decrypt PROC PUBLIC - movups xmm2,XMMWORD PTR[rcx] - mov eax,DWORD PTR[240+r8] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_dec1_2:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_dec1_2 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[rdx],xmm2 - pxor xmm2,xmm2 - DB 0F3h,0C3h ;repret -aesni_decrypt ENDP - -ALIGN 16 -_aesni_encrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$enc_loop2:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop2 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - DB 0F3h,0C3h ;repret -_aesni_encrypt2 ENDP - -ALIGN 16 -_aesni_decrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$dec_loop2:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop2 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,223,208 -DB 102,15,56,223,216 - DB 0F3h,0C3h ;repret -_aesni_decrypt2 ENDP - -ALIGN 16 -_aesni_encrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$enc_loop3:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop3 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 - DB 0F3h,0C3h ;repret -_aesni_encrypt3 ENDP - -ALIGN 16 -_aesni_decrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$dec_loop3:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop3 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 - DB 0F3h,0C3h ;repret -_aesni_decrypt3 ENDP - -ALIGN 16 -_aesni_encrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - xorps xmm5,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 00fh,01fh,000h - add rax,16 - -$L$enc_loop4:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop4 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 - DB 0F3h,0C3h ;repret -_aesni_encrypt4 ENDP - -ALIGN 16 -_aesni_decrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - xorps xmm5,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 00fh,01fh,000h - add rax,16 - -$L$dec_loop4:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop4 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 - DB 0F3h,0C3h ;repret -_aesni_decrypt4 ENDP - -ALIGN 16 -_aesni_encrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,220,209 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,220,217 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,220,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$enc_loop6_enter -ALIGN 16 -$L$enc_loop6:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -$L$enc_loop6_enter:: -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop6 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 - DB 0F3h,0C3h ;repret -_aesni_encrypt6 ENDP - -ALIGN 16 -_aesni_decrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,222,209 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,222,217 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,222,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$dec_loop6_enter -ALIGN 16 -$L$dec_loop6:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -$L$dec_loop6_enter:: -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop6 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 - DB 0F3h,0C3h ;repret -_aesni_decrypt6 ENDP - -ALIGN 16 -_aesni_encrypt8 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - pxor xmm6,xmm0 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,220,209 - pxor xmm7,xmm0 - pxor xmm8,xmm0 -DB 102,15,56,220,217 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$enc_loop8_inner -ALIGN 16 -$L$enc_loop8:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -$L$enc_loop8_inner:: -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 -$L$enc_loop8_enter:: - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop8 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 -DB 102,68,15,56,221,192 -DB 102,68,15,56,221,200 - DB 0F3h,0C3h ;repret -_aesni_encrypt8 ENDP - -ALIGN 16 -_aesni_decrypt8 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - pxor xmm6,xmm0 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,222,209 - pxor xmm7,xmm0 - pxor xmm8,xmm0 -DB 102,15,56,222,217 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$dec_loop8_inner -ALIGN 16 -$L$dec_loop8:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -$L$dec_loop8_inner:: -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 -$L$dec_loop8_enter:: - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop8 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 -DB 102,68,15,56,223,192 -DB 102,68,15,56,223,200 - DB 0F3h,0C3h ;repret -_aesni_decrypt8 ENDP -PUBLIC aesni_ecb_encrypt - -ALIGN 16 -aesni_ecb_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ecb_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ecb_enc_body:: - and rdx,-16 - jz $L$ecb_ret - - mov eax,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov r10d,eax - test r8d,r8d - jz $L$ecb_decrypt - - cmp rdx,080h - jb $L$ecb_enc_tail - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqu xmm8,XMMWORD PTR[96+rdi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] - sub rdx,080h - jmp $L$ecb_enc_loop8_enter -ALIGN 16 -$L$ecb_enc_loop8:: - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movdqu xmm2,XMMWORD PTR[rdi] - mov eax,r10d - movups XMMWORD PTR[16+rsi],xmm3 - movdqu xmm3,XMMWORD PTR[16+rdi] - movups XMMWORD PTR[32+rsi],xmm4 - movdqu xmm4,XMMWORD PTR[32+rdi] - movups XMMWORD PTR[48+rsi],xmm5 - movdqu xmm5,XMMWORD PTR[48+rdi] - movups XMMWORD PTR[64+rsi],xmm6 - movdqu xmm6,XMMWORD PTR[64+rdi] - movups XMMWORD PTR[80+rsi],xmm7 - movdqu xmm7,XMMWORD PTR[80+rdi] - movups XMMWORD PTR[96+rsi],xmm8 - movdqu xmm8,XMMWORD PTR[96+rdi] - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] -$L$ecb_enc_loop8_enter:: - - call _aesni_encrypt8 - - sub rdx,080h - jnc $L$ecb_enc_loop8 - - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movups XMMWORD PTR[16+rsi],xmm3 - mov eax,r10d - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - add rdx,080h - jz $L$ecb_ret - -$L$ecb_enc_tail:: - movups xmm2,XMMWORD PTR[rdi] - cmp rdx,020h - jb $L$ecb_enc_one - movups xmm3,XMMWORD PTR[16+rdi] - je $L$ecb_enc_two - movups xmm4,XMMWORD PTR[32+rdi] - cmp rdx,040h - jb $L$ecb_enc_three - movups xmm5,XMMWORD PTR[48+rdi] - je $L$ecb_enc_four - movups xmm6,XMMWORD PTR[64+rdi] - cmp rdx,060h - jb $L$ecb_enc_five - movups xmm7,XMMWORD PTR[80+rdi] - je $L$ecb_enc_six - movdqu xmm8,XMMWORD PTR[96+rdi] - xorps xmm9,xmm9 - call _aesni_encrypt8 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_one:: - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_3:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_3 -DB 102,15,56,221,209 - movups XMMWORD PTR[rsi],xmm2 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_two:: - call _aesni_encrypt2 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_three:: - call _aesni_encrypt3 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_four:: - call _aesni_encrypt4 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_five:: - xorps xmm7,xmm7 - call _aesni_encrypt6 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_six:: - call _aesni_encrypt6 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - jmp $L$ecb_ret - -ALIGN 16 -$L$ecb_decrypt:: - cmp rdx,080h - jb $L$ecb_dec_tail - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqu xmm8,XMMWORD PTR[96+rdi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] - sub rdx,080h - jmp $L$ecb_dec_loop8_enter -ALIGN 16 -$L$ecb_dec_loop8:: - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movdqu xmm2,XMMWORD PTR[rdi] - mov eax,r10d - movups XMMWORD PTR[16+rsi],xmm3 - movdqu xmm3,XMMWORD PTR[16+rdi] - movups XMMWORD PTR[32+rsi],xmm4 - movdqu xmm4,XMMWORD PTR[32+rdi] - movups XMMWORD PTR[48+rsi],xmm5 - movdqu xmm5,XMMWORD PTR[48+rdi] - movups XMMWORD PTR[64+rsi],xmm6 - movdqu xmm6,XMMWORD PTR[64+rdi] - movups XMMWORD PTR[80+rsi],xmm7 - movdqu xmm7,XMMWORD PTR[80+rdi] - movups XMMWORD PTR[96+rsi],xmm8 - movdqu xmm8,XMMWORD PTR[96+rdi] - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] -$L$ecb_dec_loop8_enter:: - - call _aesni_decrypt8 - - movups xmm0,XMMWORD PTR[r11] - sub rdx,080h - jnc $L$ecb_dec_loop8 - - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - mov rcx,r11 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - mov eax,r10d - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - pxor xmm8,xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - pxor xmm9,xmm9 - lea rsi,QWORD PTR[128+rsi] - add rdx,080h - jz $L$ecb_ret - -$L$ecb_dec_tail:: - movups xmm2,XMMWORD PTR[rdi] - cmp rdx,020h - jb $L$ecb_dec_one - movups xmm3,XMMWORD PTR[16+rdi] - je $L$ecb_dec_two - movups xmm4,XMMWORD PTR[32+rdi] - cmp rdx,040h - jb $L$ecb_dec_three - movups xmm5,XMMWORD PTR[48+rdi] - je $L$ecb_dec_four - movups xmm6,XMMWORD PTR[64+rdi] - cmp rdx,060h - jb $L$ecb_dec_five - movups xmm7,XMMWORD PTR[80+rdi] - je $L$ecb_dec_six - movups xmm8,XMMWORD PTR[96+rdi] - movups xmm0,XMMWORD PTR[rcx] - xorps xmm9,xmm9 - call _aesni_decrypt8 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - pxor xmm8,xmm8 - pxor xmm9,xmm9 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_one:: - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_4:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_4 -DB 102,15,56,223,209 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_two:: - call _aesni_decrypt2 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_three:: - call _aesni_decrypt3 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_four:: - call _aesni_decrypt4 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_five:: - xorps xmm7,xmm7 - call _aesni_decrypt6 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_six:: - call _aesni_decrypt6 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - -$L$ecb_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ecb_enc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ecb_encrypt:: -aesni_ecb_encrypt ENDP -PUBLIC aesni_ccm64_encrypt_blocks - -ALIGN 16 -aesni_ccm64_encrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ccm64_encrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ccm64_enc_body:: - mov eax,DWORD PTR[240+rcx] - movdqu xmm6,XMMWORD PTR[r8] - movdqa xmm9,XMMWORD PTR[$L$increment64] - movdqa xmm7,XMMWORD PTR[$L$bswap_mask] - - shl eax,4 - mov r10d,16 - lea r11,QWORD PTR[rcx] - movdqu xmm3,XMMWORD PTR[r9] - movdqa xmm2,xmm6 - lea rcx,QWORD PTR[32+rax*1+rcx] -DB 102,15,56,0,247 - sub r10,rax - jmp $L$ccm64_enc_outer -ALIGN 16 -$L$ccm64_enc_outer:: - movups xmm0,XMMWORD PTR[r11] - mov rax,r10 - movups xmm8,XMMWORD PTR[rdi] - - xorps xmm2,xmm0 - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm0,xmm8 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+r11] - -$L$ccm64_enc2_loop:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$ccm64_enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 - paddq xmm6,xmm9 - dec rdx -DB 102,15,56,221,208 -DB 102,15,56,221,216 - - lea rdi,QWORD PTR[16+rdi] - xorps xmm8,xmm2 - movdqa xmm2,xmm6 - movups XMMWORD PTR[rsi],xmm8 -DB 102,15,56,0,215 - lea rsi,QWORD PTR[16+rsi] - jnz $L$ccm64_enc_outer - - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movups XMMWORD PTR[r9],xmm3 - pxor xmm3,xmm3 - pxor xmm8,xmm8 - pxor xmm6,xmm6 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ccm64_enc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ccm64_encrypt_blocks:: -aesni_ccm64_encrypt_blocks ENDP -PUBLIC aesni_ccm64_decrypt_blocks - -ALIGN 16 -aesni_ccm64_decrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ccm64_decrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ccm64_dec_body:: - mov eax,DWORD PTR[240+rcx] - movups xmm6,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[r9] - movdqa xmm9,XMMWORD PTR[$L$increment64] - movdqa xmm7,XMMWORD PTR[$L$bswap_mask] - - movaps xmm2,xmm6 - mov r10d,eax - mov r11,rcx -DB 102,15,56,0,247 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_5:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_5 -DB 102,15,56,221,209 - shl r10d,4 - mov eax,16 - movups xmm8,XMMWORD PTR[rdi] - paddq xmm6,xmm9 - lea rdi,QWORD PTR[16+rdi] - sub rax,r10 - lea rcx,QWORD PTR[32+r10*1+r11] - mov r10,rax - jmp $L$ccm64_dec_outer -ALIGN 16 -$L$ccm64_dec_outer:: - xorps xmm8,xmm2 - movdqa xmm2,xmm6 - movups XMMWORD PTR[rsi],xmm8 - lea rsi,QWORD PTR[16+rsi] -DB 102,15,56,0,215 - - sub rdx,1 - jz $L$ccm64_dec_break - - movups xmm0,XMMWORD PTR[r11] - mov rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm8,xmm0 - xorps xmm2,xmm0 - xorps xmm3,xmm8 - movups xmm0,XMMWORD PTR[32+r11] - jmp $L$ccm64_dec2_loop -ALIGN 16 -$L$ccm64_dec2_loop:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$ccm64_dec2_loop - movups xmm8,XMMWORD PTR[rdi] - paddq xmm6,xmm9 -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea rdi,QWORD PTR[16+rdi] - jmp $L$ccm64_dec_outer - -ALIGN 16 -$L$ccm64_dec_break:: - - mov eax,DWORD PTR[240+r11] - movups xmm0,XMMWORD PTR[r11] - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm8,xmm0 - lea r11,QWORD PTR[32+r11] - xorps xmm3,xmm8 -$L$oop_enc1_6:: -DB 102,15,56,220,217 - dec eax - movups xmm1,XMMWORD PTR[r11] - lea r11,QWORD PTR[16+r11] - jnz $L$oop_enc1_6 -DB 102,15,56,221,217 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movups XMMWORD PTR[r9],xmm3 - pxor xmm3,xmm3 - pxor xmm8,xmm8 - pxor xmm6,xmm6 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ccm64_dec_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ccm64_decrypt_blocks:: -aesni_ccm64_decrypt_blocks ENDP -PUBLIC aesni_ctr32_encrypt_blocks - -ALIGN 16 -aesni_ctr32_encrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ctr32_encrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - cmp rdx,1 - jne $L$ctr32_bulk - - - - movups xmm2,XMMWORD PTR[r8] - movups xmm3,XMMWORD PTR[rdi] - mov edx,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_7:: -DB 102,15,56,220,209 - dec edx - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_7 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - xorps xmm2,xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[rsi],xmm2 - xorps xmm2,xmm2 - jmp $L$ctr32_epilogue - -ALIGN 16 -$L$ctr32_bulk:: - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,288 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$ctr32_body:: - lea rbp,QWORD PTR[((-8))+rax] - - - - - movdqu xmm2,XMMWORD PTR[r8] - movdqu xmm0,XMMWORD PTR[rcx] - mov r8d,DWORD PTR[12+r8] - pxor xmm2,xmm0 - mov r11d,DWORD PTR[12+rcx] - movdqa XMMWORD PTR[rsp],xmm2 - bswap r8d - movdqa xmm3,xmm2 - movdqa xmm4,xmm2 - movdqa xmm5,xmm2 - movdqa XMMWORD PTR[64+rsp],xmm2 - movdqa XMMWORD PTR[80+rsp],xmm2 - movdqa XMMWORD PTR[96+rsp],xmm2 - mov r10,rdx - movdqa XMMWORD PTR[112+rsp],xmm2 - - lea rax,QWORD PTR[1+r8] - lea rdx,QWORD PTR[2+r8] - bswap eax - bswap edx - xor eax,r11d - xor edx,r11d -DB 102,15,58,34,216,3 - lea rax,QWORD PTR[3+r8] - movdqa XMMWORD PTR[16+rsp],xmm3 -DB 102,15,58,34,226,3 - bswap eax - mov rdx,r10 - lea r10,QWORD PTR[4+r8] - movdqa XMMWORD PTR[32+rsp],xmm4 - xor eax,r11d - bswap r10d -DB 102,15,58,34,232,3 - xor r10d,r11d - movdqa XMMWORD PTR[48+rsp],xmm5 - lea r9,QWORD PTR[5+r8] - mov DWORD PTR[((64+12))+rsp],r10d - bswap r9d - lea r10,QWORD PTR[6+r8] - mov eax,DWORD PTR[240+rcx] - xor r9d,r11d - bswap r10d - mov DWORD PTR[((80+12))+rsp],r9d - xor r10d,r11d - lea r9,QWORD PTR[7+r8] - mov DWORD PTR[((96+12))+rsp],r10d - bswap r9d - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - xor r9d,r11d - and r10d,71303168 - mov DWORD PTR[((112+12))+rsp],r9d - - movups xmm1,XMMWORD PTR[16+rcx] - - movdqa xmm6,XMMWORD PTR[64+rsp] - movdqa xmm7,XMMWORD PTR[80+rsp] - - cmp rdx,8 - jb $L$ctr32_tail - - sub rdx,6 - cmp r10d,4194304 - je $L$ctr32_6x - - lea rcx,QWORD PTR[128+rcx] - sub rdx,2 - jmp $L$ctr32_loop8 - -ALIGN 16 -$L$ctr32_6x:: - shl eax,4 - mov r10d,48 - bswap r11d - lea rcx,QWORD PTR[32+rax*1+rcx] - sub r10,rax - jmp $L$ctr32_loop6 - -ALIGN 16 -$L$ctr32_loop6:: - add r8d,6 - movups xmm0,XMMWORD PTR[((-48))+r10*1+rcx] -DB 102,15,56,220,209 - mov eax,r8d - xor eax,r11d -DB 102,15,56,220,217 -DB 00fh,038h,0f1h,044h,024h,12 - lea eax,DWORD PTR[1+r8] -DB 102,15,56,220,225 - xor eax,r11d -DB 00fh,038h,0f1h,044h,024h,28 -DB 102,15,56,220,233 - lea eax,DWORD PTR[2+r8] - xor eax,r11d -DB 102,15,56,220,241 -DB 00fh,038h,0f1h,044h,024h,44 - lea eax,DWORD PTR[3+r8] -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-32))+r10*1+rcx] - xor eax,r11d - -DB 102,15,56,220,208 -DB 00fh,038h,0f1h,044h,024h,60 - lea eax,DWORD PTR[4+r8] -DB 102,15,56,220,216 - xor eax,r11d -DB 00fh,038h,0f1h,044h,024h,76 -DB 102,15,56,220,224 - lea eax,DWORD PTR[5+r8] - xor eax,r11d -DB 102,15,56,220,232 -DB 00fh,038h,0f1h,044h,024h,92 - mov rax,r10 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-16))+r10*1+rcx] - - call $L$enc_loop6 - - movdqu xmm8,XMMWORD PTR[rdi] - movdqu xmm9,XMMWORD PTR[16+rdi] - movdqu xmm10,XMMWORD PTR[32+rdi] - movdqu xmm11,XMMWORD PTR[48+rdi] - movdqu xmm12,XMMWORD PTR[64+rdi] - movdqu xmm13,XMMWORD PTR[80+rdi] - lea rdi,QWORD PTR[96+rdi] - movups xmm1,XMMWORD PTR[((-64))+r10*1+rcx] - pxor xmm8,xmm2 - movaps xmm2,XMMWORD PTR[rsp] - pxor xmm9,xmm3 - movaps xmm3,XMMWORD PTR[16+rsp] - pxor xmm10,xmm4 - movaps xmm4,XMMWORD PTR[32+rsp] - pxor xmm11,xmm5 - movaps xmm5,XMMWORD PTR[48+rsp] - pxor xmm12,xmm6 - movaps xmm6,XMMWORD PTR[64+rsp] - pxor xmm13,xmm7 - movaps xmm7,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[rsi],xmm8 - movdqu XMMWORD PTR[16+rsi],xmm9 - movdqu XMMWORD PTR[32+rsi],xmm10 - movdqu XMMWORD PTR[48+rsi],xmm11 - movdqu XMMWORD PTR[64+rsi],xmm12 - movdqu XMMWORD PTR[80+rsi],xmm13 - lea rsi,QWORD PTR[96+rsi] - - sub rdx,6 - jnc $L$ctr32_loop6 - - add rdx,6 - jz $L$ctr32_done - - lea eax,DWORD PTR[((-48))+r10] - lea rcx,QWORD PTR[((-80))+r10*1+rcx] - neg eax - shr eax,4 - jmp $L$ctr32_tail - -ALIGN 32 -$L$ctr32_loop8:: - add r8d,8 - movdqa xmm8,XMMWORD PTR[96+rsp] -DB 102,15,56,220,209 - mov r9d,r8d - movdqa xmm9,XMMWORD PTR[112+rsp] -DB 102,15,56,220,217 - bswap r9d - movups xmm0,XMMWORD PTR[((32-128))+rcx] -DB 102,15,56,220,225 - xor r9d,r11d - nop -DB 102,15,56,220,233 - mov DWORD PTR[((0+12))+rsp],r9d - lea r9,QWORD PTR[1+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((48-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((16+12))+rsp],r9d - lea r9,QWORD PTR[2+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((64-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((32+12))+rsp],r9d - lea r9,QWORD PTR[3+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((80-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((48+12))+rsp],r9d - lea r9,QWORD PTR[4+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((96-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((64+12))+rsp],r9d - lea r9,QWORD PTR[5+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((112-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((80+12))+rsp],r9d - lea r9,QWORD PTR[6+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((128-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((96+12))+rsp],r9d - lea r9,QWORD PTR[7+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((144-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - xor r9d,r11d - movdqu xmm10,XMMWORD PTR[rdi] -DB 102,15,56,220,232 - mov DWORD PTR[((112+12))+rsp],r9d - cmp eax,11 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((160-128))+rcx] - - jb $L$ctr32_enc_done - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((176-128))+rcx] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((192-128))+rcx] - je $L$ctr32_enc_done - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((208-128))+rcx] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((224-128))+rcx] - jmp $L$ctr32_enc_done - -ALIGN 16 -$L$ctr32_enc_done:: - movdqu xmm11,XMMWORD PTR[16+rdi] - pxor xmm10,xmm0 - movdqu xmm12,XMMWORD PTR[32+rdi] - pxor xmm11,xmm0 - movdqu xmm13,XMMWORD PTR[48+rdi] - pxor xmm12,xmm0 - movdqu xmm14,XMMWORD PTR[64+rdi] - pxor xmm13,xmm0 - movdqu xmm15,XMMWORD PTR[80+rdi] - pxor xmm14,xmm0 - pxor xmm15,xmm0 -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movdqu xmm1,XMMWORD PTR[96+rdi] - lea rdi,QWORD PTR[128+rdi] - -DB 102,65,15,56,221,210 - pxor xmm1,xmm0 - movdqu xmm10,XMMWORD PTR[((112-128))+rdi] -DB 102,65,15,56,221,219 - pxor xmm10,xmm0 - movdqa xmm11,XMMWORD PTR[rsp] -DB 102,65,15,56,221,228 -DB 102,65,15,56,221,237 - movdqa xmm12,XMMWORD PTR[16+rsp] - movdqa xmm13,XMMWORD PTR[32+rsp] -DB 102,65,15,56,221,246 -DB 102,65,15,56,221,255 - movdqa xmm14,XMMWORD PTR[48+rsp] - movdqa xmm15,XMMWORD PTR[64+rsp] -DB 102,68,15,56,221,193 - movdqa xmm0,XMMWORD PTR[80+rsp] - movups xmm1,XMMWORD PTR[((16-128))+rcx] -DB 102,69,15,56,221,202 - - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - movdqa xmm3,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - movdqa xmm4,xmm13 - movups XMMWORD PTR[48+rsi],xmm5 - movdqa xmm5,xmm14 - movups XMMWORD PTR[64+rsi],xmm6 - movdqa xmm6,xmm15 - movups XMMWORD PTR[80+rsi],xmm7 - movdqa xmm7,xmm0 - movups XMMWORD PTR[96+rsi],xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - - sub rdx,8 - jnc $L$ctr32_loop8 - - add rdx,8 - jz $L$ctr32_done - lea rcx,QWORD PTR[((-128))+rcx] - -$L$ctr32_tail:: - - - lea rcx,QWORD PTR[16+rcx] - cmp rdx,4 - jb $L$ctr32_loop3 - je $L$ctr32_loop4 - - - shl eax,4 - movdqa xmm8,XMMWORD PTR[96+rsp] - pxor xmm9,xmm9 - - movups xmm0,XMMWORD PTR[16+rcx] -DB 102,15,56,220,209 -DB 102,15,56,220,217 - lea rcx,QWORD PTR[((32-16))+rax*1+rcx] - neg rax -DB 102,15,56,220,225 - add rax,16 - movups xmm10,XMMWORD PTR[rdi] -DB 102,15,56,220,233 -DB 102,15,56,220,241 - movups xmm11,XMMWORD PTR[16+rdi] - movups xmm12,XMMWORD PTR[32+rdi] -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 - - call $L$enc_loop8_enter - - movdqu xmm13,XMMWORD PTR[48+rdi] - pxor xmm2,xmm10 - movdqu xmm10,XMMWORD PTR[64+rdi] - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm6,xmm10 - movdqu XMMWORD PTR[48+rsi],xmm5 - movdqu XMMWORD PTR[64+rsi],xmm6 - cmp rdx,6 - jb $L$ctr32_done - - movups xmm11,XMMWORD PTR[80+rdi] - xorps xmm7,xmm11 - movups XMMWORD PTR[80+rsi],xmm7 - je $L$ctr32_done - - movups xmm12,XMMWORD PTR[96+rdi] - xorps xmm8,xmm12 - movups XMMWORD PTR[96+rsi],xmm8 - jmp $L$ctr32_done - -ALIGN 32 -$L$ctr32_loop4:: -DB 102,15,56,220,209 - lea rcx,QWORD PTR[16+rcx] - dec eax -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[rcx] - jnz $L$ctr32_loop4 -DB 102,15,56,221,209 -DB 102,15,56,221,217 - movups xmm10,XMMWORD PTR[rdi] - movups xmm11,XMMWORD PTR[16+rdi] -DB 102,15,56,221,225 -DB 102,15,56,221,233 - movups xmm12,XMMWORD PTR[32+rdi] - movups xmm13,XMMWORD PTR[48+rdi] - - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - xorps xmm3,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[48+rsi],xmm5 - jmp $L$ctr32_done - -ALIGN 32 -$L$ctr32_loop3:: -DB 102,15,56,220,209 - lea rcx,QWORD PTR[16+rcx] - dec eax -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR[rcx] - jnz $L$ctr32_loop3 -DB 102,15,56,221,209 -DB 102,15,56,221,217 -DB 102,15,56,221,225 - - movups xmm10,XMMWORD PTR[rdi] - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - cmp rdx,2 - jb $L$ctr32_done - - movups xmm11,XMMWORD PTR[16+rdi] - xorps xmm3,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - je $L$ctr32_done - - movups xmm12,XMMWORD PTR[32+rdi] - xorps xmm4,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - -$L$ctr32_done:: - xorps xmm0,xmm0 - xor r11d,r11d - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - movaps XMMWORD PTR[112+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$ctr32_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ctr32_encrypt_blocks:: -aesni_ctr32_encrypt_blocks ENDP -PUBLIC aesni_xts_encrypt - -ALIGN 16 -aesni_xts_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_xts_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,272 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$xts_enc_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm2,XMMWORD PTR[r9] - mov eax,DWORD PTR[240+r8] - mov r10d,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_8:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_8 -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov eax,r10d - shl r10d,4 - mov r9,rdx - and rdx,-16 - - movups xmm1,XMMWORD PTR[16+r10*1+rcx] - - movdqa xmm8,XMMWORD PTR[$L$xts_magic] - movdqa xmm15,xmm2 - pshufd xmm9,xmm2,05fh - pxor xmm1,xmm0 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm10,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm10,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm11,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm11,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm12,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm12,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm13,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm13,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm15 - psrad xmm9,31 - paddq xmm15,xmm15 - pand xmm9,xmm8 - pxor xmm14,xmm0 - pxor xmm15,xmm9 - movaps XMMWORD PTR[96+rsp],xmm1 - - sub rdx,16*6 - jc $L$xts_enc_short - - mov eax,16+96 - lea rcx,QWORD PTR[32+r10*1+r11] - sub rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - mov r10,rax - lea r8,QWORD PTR[$L$xts_magic] - jmp $L$xts_enc_grandloop - -ALIGN 32 -$L$xts_enc_grandloop:: - movdqu xmm2,XMMWORD PTR[rdi] - movdqa xmm8,xmm0 - movdqu xmm3,XMMWORD PTR[16+rdi] - pxor xmm2,xmm10 - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm3,xmm11 -DB 102,15,56,220,209 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm4,xmm12 -DB 102,15,56,220,217 - movdqu xmm6,XMMWORD PTR[64+rdi] - pxor xmm5,xmm13 -DB 102,15,56,220,225 - movdqu xmm7,XMMWORD PTR[80+rdi] - pxor xmm8,xmm15 - movdqa xmm9,XMMWORD PTR[96+rsp] - pxor xmm6,xmm14 -DB 102,15,56,220,233 - movups xmm0,XMMWORD PTR[32+r11] - lea rdi,QWORD PTR[96+rdi] - pxor xmm7,xmm8 - - pxor xmm10,xmm9 -DB 102,15,56,220,241 - pxor xmm11,xmm9 - movdqa XMMWORD PTR[rsp],xmm10 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[48+r11] - pxor xmm12,xmm9 - -DB 102,15,56,220,208 - pxor xmm13,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm11 -DB 102,15,56,220,216 - pxor xmm14,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm12 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - pxor xmm8,xmm9 - movdqa XMMWORD PTR[64+rsp],xmm14 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[64+r11] - movdqa XMMWORD PTR[80+rsp],xmm8 - pshufd xmm9,xmm15,05fh - jmp $L$xts_enc_loop6 -ALIGN 32 -$L$xts_enc_loop6:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-64))+rax*1+rcx] - add rax,32 - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-80))+rax*1+rcx] - jnz $L$xts_enc_loop6 - - movdqa xmm8,XMMWORD PTR[r8] - movdqa xmm14,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,220,209 - paddq xmm15,xmm15 - psrad xmm14,31 -DB 102,15,56,220,217 - pand xmm14,xmm8 - movups xmm10,XMMWORD PTR[r11] -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 - pxor xmm15,xmm14 - movaps xmm11,xmm10 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-64))+rcx] - - movdqa xmm14,xmm9 -DB 102,15,56,220,208 - paddd xmm9,xmm9 - pxor xmm10,xmm15 -DB 102,15,56,220,216 - psrad xmm14,31 - paddq xmm15,xmm15 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - pand xmm14,xmm8 - movaps xmm12,xmm11 -DB 102,15,56,220,240 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-48))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,220,209 - pxor xmm11,xmm15 - psrad xmm14,31 -DB 102,15,56,220,217 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movdqa XMMWORD PTR[48+rsp],xmm13 - pxor xmm15,xmm14 -DB 102,15,56,220,241 - movaps xmm13,xmm12 - movdqa xmm14,xmm9 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-32))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,220,208 - pxor xmm12,xmm15 - psrad xmm14,31 -DB 102,15,56,220,216 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 - pxor xmm15,xmm14 - movaps xmm14,xmm13 -DB 102,15,56,220,248 - - movdqa xmm0,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,220,209 - pxor xmm13,xmm15 - psrad xmm0,31 -DB 102,15,56,220,217 - paddq xmm15,xmm15 - pand xmm0,xmm8 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - pxor xmm15,xmm0 - movups xmm0,XMMWORD PTR[r11] -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[16+r11] - - pxor xmm14,xmm15 -DB 102,15,56,221,84,36,0 - psrad xmm9,31 - paddq xmm15,xmm15 -DB 102,15,56,221,92,36,16 -DB 102,15,56,221,100,36,32 - pand xmm9,xmm8 - mov rax,r10 -DB 102,15,56,221,108,36,48 -DB 102,15,56,221,116,36,64 -DB 102,15,56,221,124,36,80 - pxor xmm15,xmm9 - - lea rsi,QWORD PTR[96+rsi] - movups XMMWORD PTR[(-96)+rsi],xmm2 - movups XMMWORD PTR[(-80)+rsi],xmm3 - movups XMMWORD PTR[(-64)+rsi],xmm4 - movups XMMWORD PTR[(-48)+rsi],xmm5 - movups XMMWORD PTR[(-32)+rsi],xmm6 - movups XMMWORD PTR[(-16)+rsi],xmm7 - sub rdx,16*6 - jnc $L$xts_enc_grandloop - - mov eax,16+96 - sub eax,r10d - mov rcx,r11 - shr eax,4 - -$L$xts_enc_short:: - - mov r10d,eax - pxor xmm10,xmm0 - add rdx,16*6 - jz $L$xts_enc_done - - pxor xmm11,xmm0 - cmp rdx,020h - jb $L$xts_enc_one - pxor xmm12,xmm0 - je $L$xts_enc_two - - pxor xmm13,xmm0 - cmp rdx,040h - jb $L$xts_enc_three - pxor xmm14,xmm0 - je $L$xts_enc_four - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm2,xmm10 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm3,xmm11 - movdqu xmm6,XMMWORD PTR[64+rdi] - lea rdi,QWORD PTR[80+rdi] - pxor xmm4,xmm12 - pxor xmm5,xmm13 - pxor xmm6,xmm14 - pxor xmm7,xmm7 - - call _aesni_encrypt6 - - xorps xmm2,xmm10 - movdqa xmm10,xmm15 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - xorps xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - xorps xmm6,xmm14 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_one:: - movups xmm2,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_9:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_9 -DB 102,15,56,221,209 - xorps xmm2,xmm10 - movdqa xmm10,xmm11 - movups XMMWORD PTR[rsi],xmm2 - lea rsi,QWORD PTR[16+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_two:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - - call _aesni_encrypt2 - - xorps xmm2,xmm10 - movdqa xmm10,xmm12 - xorps xmm3,xmm11 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - lea rsi,QWORD PTR[32+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_three:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - lea rdi,QWORD PTR[48+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - - call _aesni_encrypt3 - - xorps xmm2,xmm10 - movdqa xmm10,xmm13 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - lea rsi,QWORD PTR[48+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_four:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - xorps xmm2,xmm10 - movups xmm5,XMMWORD PTR[48+rdi] - lea rdi,QWORD PTR[64+rdi] - xorps xmm3,xmm11 - xorps xmm4,xmm12 - xorps xmm5,xmm13 - - call _aesni_encrypt4 - - pxor xmm2,xmm10 - movdqa xmm10,xmm14 - pxor xmm3,xmm11 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - lea rsi,QWORD PTR[64+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_done:: - and r9,15 - jz $L$xts_enc_ret - mov rdx,r9 - -$L$xts_enc_steal:: - movzx eax,BYTE PTR[rdi] - movzx ecx,BYTE PTR[((-16))+rsi] - lea rdi,QWORD PTR[1+rdi] - mov BYTE PTR[((-16))+rsi],al - mov BYTE PTR[rsi],cl - lea rsi,QWORD PTR[1+rsi] - sub rdx,1 - jnz $L$xts_enc_steal - - sub rsi,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[((-16))+rsi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_10:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_10 -DB 102,15,56,221,209 - xorps xmm2,xmm10 - movups XMMWORD PTR[(-16)+rsi],xmm2 - -$L$xts_enc_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$xts_enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_xts_encrypt:: -aesni_xts_encrypt ENDP -PUBLIC aesni_xts_decrypt - -ALIGN 16 -aesni_xts_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_xts_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,272 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$xts_dec_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm2,XMMWORD PTR[r9] - mov eax,DWORD PTR[240+r8] - mov r10d,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_11:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_11 -DB 102,15,56,221,209 - xor eax,eax - test rdx,15 - setnz al - shl rax,4 - sub rdx,rax - - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov eax,r10d - shl r10d,4 - mov r9,rdx - and rdx,-16 - - movups xmm1,XMMWORD PTR[16+r10*1+rcx] - - movdqa xmm8,XMMWORD PTR[$L$xts_magic] - movdqa xmm15,xmm2 - pshufd xmm9,xmm2,05fh - pxor xmm1,xmm0 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm10,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm10,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm11,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm11,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm12,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm12,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm13,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm13,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm15 - psrad xmm9,31 - paddq xmm15,xmm15 - pand xmm9,xmm8 - pxor xmm14,xmm0 - pxor xmm15,xmm9 - movaps XMMWORD PTR[96+rsp],xmm1 - - sub rdx,16*6 - jc $L$xts_dec_short - - mov eax,16+96 - lea rcx,QWORD PTR[32+r10*1+r11] - sub rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - mov r10,rax - lea r8,QWORD PTR[$L$xts_magic] - jmp $L$xts_dec_grandloop - -ALIGN 32 -$L$xts_dec_grandloop:: - movdqu xmm2,XMMWORD PTR[rdi] - movdqa xmm8,xmm0 - movdqu xmm3,XMMWORD PTR[16+rdi] - pxor xmm2,xmm10 - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm3,xmm11 -DB 102,15,56,222,209 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm4,xmm12 -DB 102,15,56,222,217 - movdqu xmm6,XMMWORD PTR[64+rdi] - pxor xmm5,xmm13 -DB 102,15,56,222,225 - movdqu xmm7,XMMWORD PTR[80+rdi] - pxor xmm8,xmm15 - movdqa xmm9,XMMWORD PTR[96+rsp] - pxor xmm6,xmm14 -DB 102,15,56,222,233 - movups xmm0,XMMWORD PTR[32+r11] - lea rdi,QWORD PTR[96+rdi] - pxor xmm7,xmm8 - - pxor xmm10,xmm9 -DB 102,15,56,222,241 - pxor xmm11,xmm9 - movdqa XMMWORD PTR[rsp],xmm10 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[48+r11] - pxor xmm12,xmm9 - -DB 102,15,56,222,208 - pxor xmm13,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm11 -DB 102,15,56,222,216 - pxor xmm14,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm12 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - pxor xmm8,xmm9 - movdqa XMMWORD PTR[64+rsp],xmm14 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[64+r11] - movdqa XMMWORD PTR[80+rsp],xmm8 - pshufd xmm9,xmm15,05fh - jmp $L$xts_dec_loop6 -ALIGN 32 -$L$xts_dec_loop6:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-64))+rax*1+rcx] - add rax,32 - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-80))+rax*1+rcx] - jnz $L$xts_dec_loop6 - - movdqa xmm8,XMMWORD PTR[r8] - movdqa xmm14,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,222,209 - paddq xmm15,xmm15 - psrad xmm14,31 -DB 102,15,56,222,217 - pand xmm14,xmm8 - movups xmm10,XMMWORD PTR[r11] -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 - pxor xmm15,xmm14 - movaps xmm11,xmm10 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-64))+rcx] - - movdqa xmm14,xmm9 -DB 102,15,56,222,208 - paddd xmm9,xmm9 - pxor xmm10,xmm15 -DB 102,15,56,222,216 - psrad xmm14,31 - paddq xmm15,xmm15 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - pand xmm14,xmm8 - movaps xmm12,xmm11 -DB 102,15,56,222,240 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-48))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,222,209 - pxor xmm11,xmm15 - psrad xmm14,31 -DB 102,15,56,222,217 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movdqa XMMWORD PTR[48+rsp],xmm13 - pxor xmm15,xmm14 -DB 102,15,56,222,241 - movaps xmm13,xmm12 - movdqa xmm14,xmm9 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-32))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,222,208 - pxor xmm12,xmm15 - psrad xmm14,31 -DB 102,15,56,222,216 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 - pxor xmm15,xmm14 - movaps xmm14,xmm13 -DB 102,15,56,222,248 - - movdqa xmm0,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,222,209 - pxor xmm13,xmm15 - psrad xmm0,31 -DB 102,15,56,222,217 - paddq xmm15,xmm15 - pand xmm0,xmm8 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - pxor xmm15,xmm0 - movups xmm0,XMMWORD PTR[r11] -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[16+r11] - - pxor xmm14,xmm15 -DB 102,15,56,223,84,36,0 - psrad xmm9,31 - paddq xmm15,xmm15 -DB 102,15,56,223,92,36,16 -DB 102,15,56,223,100,36,32 - pand xmm9,xmm8 - mov rax,r10 -DB 102,15,56,223,108,36,48 -DB 102,15,56,223,116,36,64 -DB 102,15,56,223,124,36,80 - pxor xmm15,xmm9 - - lea rsi,QWORD PTR[96+rsi] - movups XMMWORD PTR[(-96)+rsi],xmm2 - movups XMMWORD PTR[(-80)+rsi],xmm3 - movups XMMWORD PTR[(-64)+rsi],xmm4 - movups XMMWORD PTR[(-48)+rsi],xmm5 - movups XMMWORD PTR[(-32)+rsi],xmm6 - movups XMMWORD PTR[(-16)+rsi],xmm7 - sub rdx,16*6 - jnc $L$xts_dec_grandloop - - mov eax,16+96 - sub eax,r10d - mov rcx,r11 - shr eax,4 - -$L$xts_dec_short:: - - mov r10d,eax - pxor xmm10,xmm0 - pxor xmm11,xmm0 - add rdx,16*6 - jz $L$xts_dec_done - - pxor xmm12,xmm0 - cmp rdx,020h - jb $L$xts_dec_one - pxor xmm13,xmm0 - je $L$xts_dec_two - - pxor xmm14,xmm0 - cmp rdx,040h - jb $L$xts_dec_three - je $L$xts_dec_four - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm2,xmm10 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm3,xmm11 - movdqu xmm6,XMMWORD PTR[64+rdi] - lea rdi,QWORD PTR[80+rdi] - pxor xmm4,xmm12 - pxor xmm5,xmm13 - pxor xmm6,xmm14 - - call _aesni_decrypt6 - - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - xorps xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - xorps xmm6,xmm14 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm14,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pcmpgtd xmm14,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - pshufd xmm11,xmm14,013h - and r9,15 - jz $L$xts_dec_ret - - movdqa xmm10,xmm15 - paddq xmm15,xmm15 - pand xmm11,xmm8 - pxor xmm11,xmm15 - jmp $L$xts_dec_done2 - -ALIGN 16 -$L$xts_dec_one:: - movups xmm2,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_12:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_12 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movdqa xmm10,xmm11 - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm11,xmm12 - lea rsi,QWORD PTR[16+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_two:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - - call _aesni_decrypt2 - - xorps xmm2,xmm10 - movdqa xmm10,xmm12 - xorps xmm3,xmm11 - movdqa xmm11,xmm13 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - lea rsi,QWORD PTR[32+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_three:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - lea rdi,QWORD PTR[48+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - - call _aesni_decrypt3 - - xorps xmm2,xmm10 - movdqa xmm10,xmm13 - xorps xmm3,xmm11 - movdqa xmm11,xmm14 - xorps xmm4,xmm12 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - lea rsi,QWORD PTR[48+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_four:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - xorps xmm2,xmm10 - movups xmm5,XMMWORD PTR[48+rdi] - lea rdi,QWORD PTR[64+rdi] - xorps xmm3,xmm11 - xorps xmm4,xmm12 - xorps xmm5,xmm13 - - call _aesni_decrypt4 - - pxor xmm2,xmm10 - movdqa xmm10,xmm14 - pxor xmm3,xmm11 - movdqa xmm11,xmm15 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - lea rsi,QWORD PTR[64+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_done:: - and r9,15 - jz $L$xts_dec_ret -$L$xts_dec_done2:: - mov rdx,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[rdi] - xorps xmm2,xmm11 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_13:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_13 -DB 102,15,56,223,209 - xorps xmm2,xmm11 - movups XMMWORD PTR[rsi],xmm2 - -$L$xts_dec_steal:: - movzx eax,BYTE PTR[16+rdi] - movzx ecx,BYTE PTR[rsi] - lea rdi,QWORD PTR[1+rdi] - mov BYTE PTR[rsi],al - mov BYTE PTR[16+rsi],cl - lea rsi,QWORD PTR[1+rsi] - sub rdx,1 - jnz $L$xts_dec_steal - - sub rsi,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[rsi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_14:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_14 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - -$L$xts_dec_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$xts_dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_xts_decrypt:: -aesni_xts_decrypt ENDP -PUBLIC aesni_cbc_encrypt - -ALIGN 16 -aesni_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - test rdx,rdx - jz $L$cbc_ret - - mov r10d,DWORD PTR[240+rcx] - mov r11,rcx - test r9d,r9d - jz $L$cbc_decrypt - - movups xmm2,XMMWORD PTR[r8] - mov eax,r10d - cmp rdx,16 - jb $L$cbc_enc_tail - sub rdx,16 - jmp $L$cbc_enc_loop -ALIGN 16 -$L$cbc_enc_loop:: - movups xmm3,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm3,xmm0 - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm3 -$L$oop_enc1_15:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_15 -DB 102,15,56,221,209 - mov eax,r10d - mov rcx,r11 - movups XMMWORD PTR[rsi],xmm2 - lea rsi,QWORD PTR[16+rsi] - sub rdx,16 - jnc $L$cbc_enc_loop - add rdx,16 - jnz $L$cbc_enc_tail - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[r8],xmm2 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - jmp $L$cbc_ret - -$L$cbc_enc_tail:: - mov rcx,rdx - xchg rsi,rdi - DD 09066A4F3h - mov ecx,16 - sub rcx,rdx - xor eax,eax - DD 09066AAF3h - lea rdi,QWORD PTR[((-16))+rdi] - mov eax,r10d - mov rsi,rdi - mov rcx,r11 - xor rdx,rdx - jmp $L$cbc_enc_loop - -ALIGN 16 -$L$cbc_decrypt:: - cmp rdx,16 - jne $L$cbc_decrypt_bulk - - - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[r8] - movdqa xmm4,xmm2 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_16:: -DB 102,15,56,222,209 - dec r10d - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_16 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movdqu XMMWORD PTR[r8],xmm4 - xorps xmm2,xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$cbc_ret -ALIGN 16 -$L$cbc_decrypt_bulk:: - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,176 - and rsp,-16 - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$cbc_decrypt_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm10,XMMWORD PTR[r8] - mov eax,r10d - cmp rdx,050h - jbe $L$cbc_dec_tail - - movups xmm0,XMMWORD PTR[rcx] - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqa xmm11,xmm2 - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqa xmm12,xmm3 - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqa xmm13,xmm4 - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqa xmm14,xmm5 - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqa xmm15,xmm6 - mov r9d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - cmp rdx,070h - jbe $L$cbc_dec_six_or_seven - - and r9d,71303168 - sub rdx,050h - cmp r9d,4194304 - je $L$cbc_dec_loop6_enter - sub rdx,020h - lea rcx,QWORD PTR[112+rcx] - jmp $L$cbc_dec_loop8_enter -ALIGN 16 -$L$cbc_dec_loop8:: - movups XMMWORD PTR[rsi],xmm9 - lea rsi,QWORD PTR[16+rsi] -$L$cbc_dec_loop8_enter:: - movdqu xmm8,XMMWORD PTR[96+rdi] - pxor xmm2,xmm0 - movdqu xmm9,XMMWORD PTR[112+rdi] - pxor xmm3,xmm0 - movups xmm1,XMMWORD PTR[((16-112))+rcx] - pxor xmm4,xmm0 - xor r11,r11 - cmp rdx,070h - pxor xmm5,xmm0 - pxor xmm6,xmm0 - pxor xmm7,xmm0 - pxor xmm8,xmm0 - -DB 102,15,56,222,209 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[((32-112))+rcx] -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 - setnc r11b - shl r11,7 -DB 102,68,15,56,222,201 - add r11,rdi - movups xmm1,XMMWORD PTR[((48-112))+rcx] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((64-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((80-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((96-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((112-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((128-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((144-112))+rcx] - cmp eax,11 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((160-112))+rcx] - jb $L$cbc_dec_done -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((176-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((192-112))+rcx] - je $L$cbc_dec_done -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((208-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((224-112))+rcx] - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_done:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - pxor xmm10,xmm0 - pxor xmm11,xmm0 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - pxor xmm12,xmm0 - pxor xmm13,xmm0 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - pxor xmm14,xmm0 - pxor xmm15,xmm0 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movdqu xmm1,XMMWORD PTR[80+rdi] - -DB 102,65,15,56,223,210 - movdqu xmm10,XMMWORD PTR[96+rdi] - pxor xmm1,xmm0 -DB 102,65,15,56,223,219 - pxor xmm10,xmm0 - movdqu xmm0,XMMWORD PTR[112+rdi] -DB 102,65,15,56,223,228 - lea rdi,QWORD PTR[128+rdi] - movdqu xmm11,XMMWORD PTR[r11] -DB 102,65,15,56,223,237 -DB 102,65,15,56,223,246 - movdqu xmm12,XMMWORD PTR[16+r11] - movdqu xmm13,XMMWORD PTR[32+r11] -DB 102,65,15,56,223,255 -DB 102,68,15,56,223,193 - movdqu xmm14,XMMWORD PTR[48+r11] - movdqu xmm15,XMMWORD PTR[64+r11] -DB 102,69,15,56,223,202 - movdqa xmm10,xmm0 - movdqu xmm1,XMMWORD PTR[80+r11] - movups xmm0,XMMWORD PTR[((-112))+rcx] - - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - movdqa xmm3,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - movdqa xmm4,xmm13 - movups XMMWORD PTR[48+rsi],xmm5 - movdqa xmm5,xmm14 - movups XMMWORD PTR[64+rsi],xmm6 - movdqa xmm6,xmm15 - movups XMMWORD PTR[80+rsi],xmm7 - movdqa xmm7,xmm1 - movups XMMWORD PTR[96+rsi],xmm8 - lea rsi,QWORD PTR[112+rsi] - - sub rdx,080h - ja $L$cbc_dec_loop8 - - movaps xmm2,xmm9 - lea rcx,QWORD PTR[((-112))+rcx] - add rdx,070h - jle $L$cbc_dec_clear_tail_collected - movups XMMWORD PTR[rsi],xmm9 - lea rsi,QWORD PTR[16+rsi] - cmp rdx,050h - jbe $L$cbc_dec_tail - - movaps xmm2,xmm11 -$L$cbc_dec_six_or_seven:: - cmp rdx,060h - ja $L$cbc_dec_seven - - movaps xmm8,xmm7 - call _aesni_decrypt6 - pxor xmm2,xmm10 - movaps xmm10,xmm8 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - pxor xmm7,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - lea rsi,QWORD PTR[80+rsi] - movdqa xmm2,xmm7 - pxor xmm7,xmm7 - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_seven:: - movups xmm8,XMMWORD PTR[96+rdi] - xorps xmm9,xmm9 - call _aesni_decrypt8 - movups xmm9,XMMWORD PTR[80+rdi] - pxor xmm2,xmm10 - movups xmm10,XMMWORD PTR[96+rdi] - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - pxor xmm7,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - pxor xmm8,xmm9 - movdqu XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - lea rsi,QWORD PTR[96+rsi] - movdqa xmm2,xmm8 - pxor xmm8,xmm8 - pxor xmm9,xmm9 - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_loop6:: - movups XMMWORD PTR[rsi],xmm7 - lea rsi,QWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqa xmm11,xmm2 - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqa xmm12,xmm3 - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqa xmm13,xmm4 - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqa xmm14,xmm5 - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqa xmm15,xmm6 -$L$cbc_dec_loop6_enter:: - lea rdi,QWORD PTR[96+rdi] - movdqa xmm8,xmm7 - - call _aesni_decrypt6 - - pxor xmm2,xmm10 - movdqa xmm10,xmm8 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm6,xmm14 - mov rcx,r11 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm7,xmm15 - mov eax,r10d - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - sub rdx,060h - ja $L$cbc_dec_loop6 - - movdqa xmm2,xmm7 - add rdx,050h - jle $L$cbc_dec_clear_tail_collected - movups XMMWORD PTR[rsi],xmm7 - lea rsi,QWORD PTR[16+rsi] - -$L$cbc_dec_tail:: - movups xmm2,XMMWORD PTR[rdi] - sub rdx,010h - jbe $L$cbc_dec_one - - movups xmm3,XMMWORD PTR[16+rdi] - movaps xmm11,xmm2 - sub rdx,010h - jbe $L$cbc_dec_two - - movups xmm4,XMMWORD PTR[32+rdi] - movaps xmm12,xmm3 - sub rdx,010h - jbe $L$cbc_dec_three - - movups xmm5,XMMWORD PTR[48+rdi] - movaps xmm13,xmm4 - sub rdx,010h - jbe $L$cbc_dec_four - - movups xmm6,XMMWORD PTR[64+rdi] - movaps xmm14,xmm5 - movaps xmm15,xmm6 - xorps xmm7,xmm7 - call _aesni_decrypt6 - pxor xmm2,xmm10 - movaps xmm10,xmm15 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - lea rsi,QWORD PTR[64+rsi] - movdqa xmm2,xmm6 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - sub rdx,010h - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_one:: - movaps xmm11,xmm2 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_17:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_17 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movaps xmm10,xmm11 - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_two:: - movaps xmm12,xmm3 - call _aesni_decrypt2 - pxor xmm2,xmm10 - movaps xmm10,xmm12 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm3 - pxor xmm3,xmm3 - lea rsi,QWORD PTR[16+rsi] - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_three:: - movaps xmm13,xmm4 - call _aesni_decrypt3 - pxor xmm2,xmm10 - movaps xmm10,xmm13 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movdqa xmm2,xmm4 - pxor xmm4,xmm4 - lea rsi,QWORD PTR[32+rsi] - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_four:: - movaps xmm14,xmm5 - call _aesni_decrypt4 - pxor xmm2,xmm10 - movaps xmm10,xmm14 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movdqa xmm2,xmm5 - pxor xmm5,xmm5 - lea rsi,QWORD PTR[48+rsi] - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_clear_tail_collected:: - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 -$L$cbc_dec_tail_collected:: - movups XMMWORD PTR[r8],xmm10 - and rdx,15 - jnz $L$cbc_dec_tail_partial - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$cbc_dec_ret -ALIGN 16 -$L$cbc_dec_tail_partial:: - movaps XMMWORD PTR[rsp],xmm2 - pxor xmm2,xmm2 - mov rcx,16 - mov rdi,rsi - sub rcx,rdx - lea rsi,QWORD PTR[rsp] - DD 09066A4F3h - movdqa XMMWORD PTR[rsp],xmm2 - -$L$cbc_dec_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm7,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm8,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - movaps xmm9,XMMWORD PTR[64+rsp] - movaps XMMWORD PTR[64+rsp],xmm0 - movaps xmm10,XMMWORD PTR[80+rsp] - movaps XMMWORD PTR[80+rsp],xmm0 - movaps xmm11,XMMWORD PTR[96+rsp] - movaps XMMWORD PTR[96+rsp],xmm0 - movaps xmm12,XMMWORD PTR[112+rsp] - movaps XMMWORD PTR[112+rsp],xmm0 - movaps xmm13,XMMWORD PTR[128+rsp] - movaps XMMWORD PTR[128+rsp],xmm0 - movaps xmm14,XMMWORD PTR[144+rsp] - movaps XMMWORD PTR[144+rsp],xmm0 - movaps xmm15,XMMWORD PTR[160+rsp] - movaps XMMWORD PTR[160+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$cbc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_encrypt:: -aesni_cbc_encrypt ENDP -PUBLIC aesni_set_decrypt_key - -ALIGN 16 -aesni_set_decrypt_key PROC PUBLIC -DB 048h,083h,0ECh,008h - call __aesni_set_encrypt_key - shl edx,4 - test eax,eax - jnz $L$dec_key_ret - lea rcx,QWORD PTR[16+rdx*1+r8] - - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[rcx] - movups XMMWORD PTR[rcx],xmm0 - movups XMMWORD PTR[r8],xmm1 - lea r8,QWORD PTR[16+r8] - lea rcx,QWORD PTR[((-16))+rcx] - -$L$dec_key_inverse:: - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[rcx] -DB 102,15,56,219,192 -DB 102,15,56,219,201 - lea r8,QWORD PTR[16+r8] - lea rcx,QWORD PTR[((-16))+rcx] - movups XMMWORD PTR[16+rcx],xmm0 - movups XMMWORD PTR[(-16)+r8],xmm1 - cmp rcx,r8 - ja $L$dec_key_inverse - - movups xmm0,XMMWORD PTR[r8] -DB 102,15,56,219,192 - pxor xmm1,xmm1 - movups XMMWORD PTR[rcx],xmm0 - pxor xmm0,xmm0 -$L$dec_key_ret:: - add rsp,8 - DB 0F3h,0C3h ;repret -$L$SEH_end_set_decrypt_key:: -aesni_set_decrypt_key ENDP -PUBLIC aesni_set_encrypt_key - -ALIGN 16 -aesni_set_encrypt_key PROC PUBLIC -__aesni_set_encrypt_key:: -DB 048h,083h,0ECh,008h - mov rax,-1 - test rcx,rcx - jz $L$enc_key_ret - test r8,r8 - jz $L$enc_key_ret - - mov r10d,268437504 - movups xmm0,XMMWORD PTR[rcx] - xorps xmm4,xmm4 - and r10d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - lea rax,QWORD PTR[16+r8] - cmp edx,256 - je $L$14rounds - cmp edx,192 - je $L$12rounds - cmp edx,128 - jne $L$bad_keybits - -$L$10rounds:: - mov edx,9 - cmp r10d,268435456 - je $L$10rounds_alt - - movups XMMWORD PTR[r8],xmm0 -DB 102,15,58,223,200,1 - call $L$key_expansion_128_cold -DB 102,15,58,223,200,2 - call $L$key_expansion_128 -DB 102,15,58,223,200,4 - call $L$key_expansion_128 -DB 102,15,58,223,200,8 - call $L$key_expansion_128 -DB 102,15,58,223,200,16 - call $L$key_expansion_128 -DB 102,15,58,223,200,32 - call $L$key_expansion_128 -DB 102,15,58,223,200,64 - call $L$key_expansion_128 -DB 102,15,58,223,200,128 - call $L$key_expansion_128 -DB 102,15,58,223,200,27 - call $L$key_expansion_128 -DB 102,15,58,223,200,54 - call $L$key_expansion_128 - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[80+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$10rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate] - mov r10d,8 - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - movdqa xmm2,xmm0 - movdqu XMMWORD PTR[r8],xmm0 - jmp $L$oop_key128 - -ALIGN 16 -$L$oop_key128:: -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - lea rax,QWORD PTR[16+rax] - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[(-16)+rax],xmm0 - movdqa xmm2,xmm0 - - dec r10d - jnz $L$oop_key128 - - movdqa xmm4,XMMWORD PTR[$L$key_rcon1b] - -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[rax],xmm0 - - movdqa xmm2,xmm0 -DB 102,15,56,0,197 -DB 102,15,56,221,196 - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[16+rax],xmm0 - - mov DWORD PTR[96+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$12rounds:: - movq xmm2,QWORD PTR[16+rcx] - mov edx,11 - cmp r10d,268435456 - je $L$12rounds_alt - - movups XMMWORD PTR[r8],xmm0 -DB 102,15,58,223,202,1 - call $L$key_expansion_192a_cold -DB 102,15,58,223,202,2 - call $L$key_expansion_192b -DB 102,15,58,223,202,4 - call $L$key_expansion_192a -DB 102,15,58,223,202,8 - call $L$key_expansion_192b -DB 102,15,58,223,202,16 - call $L$key_expansion_192a -DB 102,15,58,223,202,32 - call $L$key_expansion_192b -DB 102,15,58,223,202,64 - call $L$key_expansion_192a -DB 102,15,58,223,202,128 - call $L$key_expansion_192b - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[48+rax],edx - xor rax,rax - jmp $L$enc_key_ret - -ALIGN 16 -$L$12rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate192] - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - mov r10d,8 - movdqu XMMWORD PTR[r8],xmm0 - jmp $L$oop_key192 - -ALIGN 16 -$L$oop_key192:: - movq QWORD PTR[rax],xmm2 - movdqa xmm1,xmm2 -DB 102,15,56,0,213 -DB 102,15,56,221,212 - pslld xmm4,1 - lea rax,QWORD PTR[24+rax] - - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - - pshufd xmm3,xmm0,0ffh - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - - pxor xmm0,xmm2 - pxor xmm2,xmm3 - movdqu XMMWORD PTR[(-16)+rax],xmm0 - - dec r10d - jnz $L$oop_key192 - - mov DWORD PTR[32+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$14rounds:: - movups xmm2,XMMWORD PTR[16+rcx] - mov edx,13 - lea rax,QWORD PTR[16+rax] - cmp r10d,268435456 - je $L$14rounds_alt - - movups XMMWORD PTR[r8],xmm0 - movups XMMWORD PTR[16+r8],xmm2 -DB 102,15,58,223,202,1 - call $L$key_expansion_256a_cold -DB 102,15,58,223,200,1 - call $L$key_expansion_256b -DB 102,15,58,223,202,2 - call $L$key_expansion_256a -DB 102,15,58,223,200,2 - call $L$key_expansion_256b -DB 102,15,58,223,202,4 - call $L$key_expansion_256a -DB 102,15,58,223,200,4 - call $L$key_expansion_256b -DB 102,15,58,223,202,8 - call $L$key_expansion_256a -DB 102,15,58,223,200,8 - call $L$key_expansion_256b -DB 102,15,58,223,202,16 - call $L$key_expansion_256a -DB 102,15,58,223,200,16 - call $L$key_expansion_256b -DB 102,15,58,223,202,32 - call $L$key_expansion_256a -DB 102,15,58,223,200,32 - call $L$key_expansion_256b -DB 102,15,58,223,202,64 - call $L$key_expansion_256a - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[16+rax],edx - xor rax,rax - jmp $L$enc_key_ret - -ALIGN 16 -$L$14rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate] - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - mov r10d,7 - movdqu XMMWORD PTR[r8],xmm0 - movdqa xmm1,xmm2 - movdqu XMMWORD PTR[16+r8],xmm2 - jmp $L$oop_key256 - -ALIGN 16 -$L$oop_key256:: -DB 102,15,56,0,213 -DB 102,15,56,221,212 - - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pslld xmm4,1 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[rax],xmm0 - - dec r10d - jz $L$done_key256 - - pshufd xmm2,xmm0,0ffh - pxor xmm3,xmm3 -DB 102,15,56,221,211 - - movdqa xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm1,xmm3 - - pxor xmm2,xmm1 - movdqu XMMWORD PTR[16+rax],xmm2 - lea rax,QWORD PTR[32+rax] - movdqa xmm1,xmm2 - - jmp $L$oop_key256 - -$L$done_key256:: - mov DWORD PTR[16+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$bad_keybits:: - mov rax,-2 -$L$enc_key_ret:: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - add rsp,8 - DB 0F3h,0C3h ;repret -$L$SEH_end_set_encrypt_key:: - -ALIGN 16 -$L$key_expansion_128:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_128_cold:: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_192a:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_192a_cold:: - movaps xmm5,xmm2 -$L$key_expansion_192b_warm:: - shufps xmm4,xmm0,16 - movdqa xmm3,xmm2 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - pslldq xmm3,4 - xorps xmm0,xmm4 - pshufd xmm1,xmm1,85 - pxor xmm2,xmm3 - pxor xmm0,xmm1 - pshufd xmm3,xmm0,255 - pxor xmm2,xmm3 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_192b:: - movaps xmm3,xmm0 - shufps xmm5,xmm0,68 - movups XMMWORD PTR[rax],xmm5 - shufps xmm3,xmm2,78 - movups XMMWORD PTR[16+rax],xmm3 - lea rax,QWORD PTR[32+rax] - jmp $L$key_expansion_192b_warm - -ALIGN 16 -$L$key_expansion_256a:: - movups XMMWORD PTR[rax],xmm2 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_256a_cold:: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_256b:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] - - shufps xmm4,xmm2,16 - xorps xmm2,xmm4 - shufps xmm4,xmm2,140 - xorps xmm2,xmm4 - shufps xmm1,xmm1,170 - xorps xmm2,xmm1 - DB 0F3h,0C3h ;repret -aesni_set_encrypt_key ENDP - -ALIGN 64 -$L$bswap_mask:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -$L$increment32:: - DD 6,6,6,0 -$L$increment64:: - DD 1,0,0,0 -$L$xts_magic:: - DD 087h,0,1,0 -$L$increment1:: -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -$L$key_rotate:: - DD 00c0f0e0dh,00c0f0e0dh,00c0f0e0dh,00c0f0e0dh -$L$key_rotate192:: - DD 004070605h,004070605h,004070605h,004070605h -$L$key_rcon1:: - DD 1,1,1,1 -$L$key_rcon1b:: - DD 01bh,01bh,01bh,01bh - -DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -ecb_ccm64_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - lea rax,QWORD PTR[88+rax] - - jmp $L$common_seh_tail -ecb_ccm64_se_handler ENDP - - -ALIGN 16 -ctr_xts_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[160+r8] - lea rsi,QWORD PTR[((-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - - jmp $L$common_rbp_tail -ctr_xts_se_handler ENDP - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_decrypt_bulk] - cmp rbx,r10 - jb $L$common_seh_tail - - lea r10,QWORD PTR[$L$cbc_decrypt_body] - cmp rbx,r10 - jb $L$restore_cbc_rax - - lea r10,QWORD PTR[$L$cbc_ret] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[16+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$common_rbp_tail:: - mov rax,QWORD PTR[160+r8] - mov rbp,QWORD PTR[rax] - lea rax,QWORD PTR[8+rax] - mov QWORD PTR[160+r8],rbp - jmp $L$common_seh_tail - -$L$restore_cbc_rax:: - mov rax,QWORD PTR[120+r8] - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_ecb_encrypt - DD imagerel $L$SEH_end_aesni_ecb_encrypt - DD imagerel $L$SEH_info_ecb - - DD imagerel $L$SEH_begin_aesni_ccm64_encrypt_blocks - DD imagerel $L$SEH_end_aesni_ccm64_encrypt_blocks - DD imagerel $L$SEH_info_ccm64_enc - - DD imagerel $L$SEH_begin_aesni_ccm64_decrypt_blocks - DD imagerel $L$SEH_end_aesni_ccm64_decrypt_blocks - DD imagerel $L$SEH_info_ccm64_dec - - DD imagerel $L$SEH_begin_aesni_ctr32_encrypt_blocks - DD imagerel $L$SEH_end_aesni_ctr32_encrypt_blocks - DD imagerel $L$SEH_info_ctr32 - - DD imagerel $L$SEH_begin_aesni_xts_encrypt - DD imagerel $L$SEH_end_aesni_xts_encrypt - DD imagerel $L$SEH_info_xts_enc - - DD imagerel $L$SEH_begin_aesni_xts_decrypt - DD imagerel $L$SEH_end_aesni_xts_decrypt - DD imagerel $L$SEH_info_xts_dec - DD imagerel $L$SEH_begin_aesni_cbc_encrypt - DD imagerel $L$SEH_end_aesni_cbc_encrypt - DD imagerel $L$SEH_info_cbc - - DD imagerel aesni_set_decrypt_key - DD imagerel $L$SEH_end_set_decrypt_key - DD imagerel $L$SEH_info_key - - DD imagerel aesni_set_encrypt_key - DD imagerel $L$SEH_end_set_encrypt_key - DD imagerel $L$SEH_info_key -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_ecb:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ecb_enc_body,imagerel $L$ecb_enc_ret -$L$SEH_info_ccm64_enc:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ccm64_enc_body,imagerel $L$ccm64_enc_ret -$L$SEH_info_ccm64_dec:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ccm64_dec_body,imagerel $L$ccm64_dec_ret -$L$SEH_info_ctr32:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$ctr32_body,imagerel $L$ctr32_epilogue -$L$SEH_info_xts_enc:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$xts_enc_body,imagerel $L$xts_enc_epilogue -$L$SEH_info_xts_dec:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$xts_dec_body,imagerel $L$xts_dec_epilogue -$L$SEH_info_cbc:: -DB 9,0,0,0 - DD imagerel cbc_se_handler -$L$SEH_info_key:: -DB 001h,004h,001h,000h -DB 004h,002h,000h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/bsaes-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/bsaes-x86_64.asm deleted file mode 100644 index 3346a7e25b4657..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/bsaes-x86_64.asm +++ /dev/null @@ -1,2734 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN asm_AES_encrypt:NEAR -EXTERN asm_AES_decrypt:NEAR - - -ALIGN 64 -_bsaes_encrypt8 PROC PRIVATE - lea r11,QWORD PTR[$L$BS0] - - movdqa xmm8,XMMWORD PTR[rax] - lea rax,QWORD PTR[16+rax] - movdqa xmm7,XMMWORD PTR[80+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 -_bsaes_encrypt8_bitslice:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm3 - psrlq xmm3,1 - pxor xmm5,xmm6 - pxor xmm3,xmm4 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm6,xmm5 - psllq xmm5,1 - pxor xmm4,xmm3 - psllq xmm3,1 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm1,xmm2 - pxor xmm15,xmm0 - pand xmm1,xmm7 - pand xmm15,xmm7 - pxor xmm2,xmm1 - psllq xmm1,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm1,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm4 - psrlq xmm4,2 - movdqa xmm10,xmm3 - psrlq xmm3,2 - pxor xmm4,xmm6 - pxor xmm3,xmm5 - pand xmm4,xmm8 - pand xmm3,xmm8 - pxor xmm6,xmm4 - psllq xmm4,2 - pxor xmm5,xmm3 - psllq xmm3,2 - pxor xmm4,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm2 - pxor xmm15,xmm1 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm2,xmm0 - psllq xmm0,2 - pxor xmm1,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm2 - psrlq xmm2,4 - movdqa xmm10,xmm1 - psrlq xmm1,4 - pxor xmm2,xmm6 - pxor xmm1,xmm5 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm6,xmm2 - psllq xmm2,4 - pxor xmm5,xmm1 - psllq xmm1,4 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm4 - pxor xmm15,xmm3 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm4,xmm0 - psllq xmm0,4 - pxor xmm3,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - dec r10d - jmp $L$enc_sbox -ALIGN 16 -$L$enc_loop:: - pxor xmm15,XMMWORD PTR[rax] - pxor xmm0,XMMWORD PTR[16+rax] - pxor xmm1,XMMWORD PTR[32+rax] - pxor xmm2,XMMWORD PTR[48+rax] -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,XMMWORD PTR[64+rax] - pxor xmm4,XMMWORD PTR[80+rax] -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,XMMWORD PTR[96+rax] - pxor xmm6,XMMWORD PTR[112+rax] -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea rax,QWORD PTR[128+rax] -$L$enc_sbox:: - pxor xmm4,xmm5 - pxor xmm1,xmm0 - pxor xmm2,xmm15 - pxor xmm5,xmm1 - pxor xmm4,xmm15 - - pxor xmm5,xmm2 - pxor xmm2,xmm6 - pxor xmm6,xmm4 - pxor xmm2,xmm3 - pxor xmm3,xmm4 - pxor xmm2,xmm0 - - pxor xmm1,xmm6 - pxor xmm0,xmm4 - movdqa xmm10,xmm6 - movdqa xmm9,xmm0 - movdqa xmm8,xmm4 - movdqa xmm12,xmm1 - movdqa xmm11,xmm5 - - pxor xmm10,xmm3 - pxor xmm9,xmm1 - pxor xmm8,xmm2 - movdqa xmm13,xmm10 - pxor xmm12,xmm3 - movdqa xmm7,xmm9 - pxor xmm11,xmm15 - movdqa xmm14,xmm10 - - por xmm9,xmm8 - por xmm10,xmm11 - pxor xmm14,xmm7 - pand xmm13,xmm11 - pxor xmm11,xmm8 - pand xmm7,xmm8 - pand xmm14,xmm11 - movdqa xmm11,xmm2 - pxor xmm11,xmm15 - pand xmm12,xmm11 - pxor xmm10,xmm12 - pxor xmm9,xmm12 - movdqa xmm12,xmm6 - movdqa xmm11,xmm4 - pxor xmm12,xmm0 - pxor xmm11,xmm5 - movdqa xmm8,xmm12 - pand xmm12,xmm11 - por xmm8,xmm11 - pxor xmm7,xmm12 - pxor xmm10,xmm14 - pxor xmm9,xmm13 - pxor xmm8,xmm14 - movdqa xmm11,xmm1 - pxor xmm7,xmm13 - movdqa xmm12,xmm3 - pxor xmm8,xmm13 - movdqa xmm13,xmm0 - pand xmm11,xmm2 - movdqa xmm14,xmm6 - pand xmm12,xmm15 - pand xmm13,xmm4 - por xmm14,xmm5 - pxor xmm10,xmm11 - pxor xmm9,xmm12 - pxor xmm8,xmm13 - pxor xmm7,xmm14 - - - - - - movdqa xmm11,xmm10 - pand xmm10,xmm8 - pxor xmm11,xmm9 - - movdqa xmm13,xmm7 - movdqa xmm14,xmm11 - pxor xmm13,xmm10 - pand xmm14,xmm13 - - movdqa xmm12,xmm8 - pxor xmm14,xmm9 - pxor xmm12,xmm7 - - pxor xmm10,xmm9 - - pand xmm12,xmm10 - - movdqa xmm9,xmm13 - pxor xmm12,xmm7 - - pxor xmm9,xmm12 - pxor xmm8,xmm12 - - pand xmm9,xmm7 - - pxor xmm13,xmm9 - pxor xmm8,xmm9 - - pand xmm13,xmm14 - - pxor xmm13,xmm11 - movdqa xmm11,xmm5 - movdqa xmm7,xmm4 - movdqa xmm9,xmm14 - pxor xmm9,xmm13 - pand xmm9,xmm5 - pxor xmm5,xmm4 - pand xmm4,xmm14 - pand xmm5,xmm13 - pxor xmm5,xmm4 - pxor xmm4,xmm9 - pxor xmm11,xmm15 - pxor xmm7,xmm2 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm15 - pxor xmm11,xmm7 - pxor xmm15,xmm2 - pand xmm7,xmm14 - pand xmm2,xmm12 - pand xmm11,xmm13 - pand xmm15,xmm8 - pxor xmm7,xmm11 - pxor xmm15,xmm2 - pxor xmm11,xmm10 - pxor xmm2,xmm9 - pxor xmm5,xmm11 - pxor xmm15,xmm11 - pxor xmm4,xmm7 - pxor xmm2,xmm7 - - movdqa xmm11,xmm6 - movdqa xmm7,xmm0 - pxor xmm11,xmm3 - pxor xmm7,xmm1 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm3 - pxor xmm11,xmm7 - pxor xmm3,xmm1 - pand xmm7,xmm14 - pand xmm1,xmm12 - pand xmm11,xmm13 - pand xmm3,xmm8 - pxor xmm7,xmm11 - pxor xmm3,xmm1 - pxor xmm11,xmm10 - pxor xmm1,xmm9 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - pxor xmm10,xmm13 - pand xmm10,xmm6 - pxor xmm6,xmm0 - pand xmm0,xmm14 - pand xmm6,xmm13 - pxor xmm6,xmm0 - pxor xmm0,xmm10 - pxor xmm6,xmm11 - pxor xmm3,xmm11 - pxor xmm0,xmm7 - pxor xmm1,xmm7 - pxor xmm6,xmm15 - pxor xmm0,xmm5 - pxor xmm3,xmm6 - pxor xmm5,xmm15 - pxor xmm15,xmm0 - - pxor xmm0,xmm4 - pxor xmm4,xmm1 - pxor xmm1,xmm2 - pxor xmm2,xmm4 - pxor xmm3,xmm4 - - pxor xmm5,xmm2 - dec r10d - jl $L$enc_done - pshufd xmm7,xmm15,093h - pshufd xmm8,xmm0,093h - pxor xmm15,xmm7 - pshufd xmm9,xmm3,093h - pxor xmm0,xmm8 - pshufd xmm10,xmm5,093h - pxor xmm3,xmm9 - pshufd xmm11,xmm2,093h - pxor xmm5,xmm10 - pshufd xmm12,xmm6,093h - pxor xmm2,xmm11 - pshufd xmm13,xmm1,093h - pxor xmm6,xmm12 - pshufd xmm14,xmm4,093h - pxor xmm1,xmm13 - pxor xmm4,xmm14 - - pxor xmm8,xmm15 - pxor xmm7,xmm4 - pxor xmm8,xmm4 - pshufd xmm15,xmm15,04Eh - pxor xmm9,xmm0 - pshufd xmm0,xmm0,04Eh - pxor xmm12,xmm2 - pxor xmm15,xmm7 - pxor xmm13,xmm6 - pxor xmm0,xmm8 - pxor xmm11,xmm5 - pshufd xmm7,xmm2,04Eh - pxor xmm14,xmm1 - pshufd xmm8,xmm6,04Eh - pxor xmm10,xmm3 - pshufd xmm2,xmm5,04Eh - pxor xmm10,xmm4 - pshufd xmm6,xmm4,04Eh - pxor xmm11,xmm4 - pshufd xmm5,xmm1,04Eh - pxor xmm7,xmm11 - pshufd xmm1,xmm3,04Eh - pxor xmm8,xmm12 - pxor xmm2,xmm10 - pxor xmm6,xmm14 - pxor xmm5,xmm13 - movdqa xmm3,xmm7 - pxor xmm1,xmm9 - movdqa xmm4,xmm8 - movdqa xmm7,XMMWORD PTR[48+r11] - jnz $L$enc_loop - movdqa xmm7,XMMWORD PTR[64+r11] - jmp $L$enc_loop -ALIGN 16 -$L$enc_done:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm2 - psrlq xmm2,1 - pxor xmm1,xmm4 - pxor xmm2,xmm6 - pand xmm1,xmm7 - pand xmm2,xmm7 - pxor xmm4,xmm1 - psllq xmm1,1 - pxor xmm6,xmm2 - psllq xmm2,1 - pxor xmm1,xmm9 - pxor xmm2,xmm10 - movdqa xmm9,xmm3 - psrlq xmm3,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm3,xmm5 - pxor xmm15,xmm0 - pand xmm3,xmm7 - pand xmm15,xmm7 - pxor xmm5,xmm3 - psllq xmm3,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm3,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm6 - psrlq xmm6,2 - movdqa xmm10,xmm2 - psrlq xmm2,2 - pxor xmm6,xmm4 - pxor xmm2,xmm1 - pand xmm6,xmm8 - pand xmm2,xmm8 - pxor xmm4,xmm6 - psllq xmm6,2 - pxor xmm1,xmm2 - psllq xmm2,2 - pxor xmm6,xmm9 - pxor xmm2,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm5 - pxor xmm15,xmm3 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm5,xmm0 - psllq xmm0,2 - pxor xmm3,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm5 - psrlq xmm5,4 - movdqa xmm10,xmm3 - psrlq xmm3,4 - pxor xmm5,xmm4 - pxor xmm3,xmm1 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm4,xmm5 - psllq xmm5,4 - pxor xmm1,xmm3 - psllq xmm3,4 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm6 - pxor xmm15,xmm2 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm6,xmm0 - psllq xmm0,4 - pxor xmm2,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[rax] - pxor xmm3,xmm7 - pxor xmm5,xmm7 - pxor xmm2,xmm7 - pxor xmm6,xmm7 - pxor xmm1,xmm7 - pxor xmm4,xmm7 - pxor xmm15,xmm7 - pxor xmm0,xmm7 - DB 0F3h,0C3h ;repret -_bsaes_encrypt8 ENDP - - -ALIGN 64 -_bsaes_decrypt8 PROC PRIVATE - lea r11,QWORD PTR[$L$BS0] - - movdqa xmm8,XMMWORD PTR[rax] - lea rax,QWORD PTR[16+rax] - movdqa xmm7,XMMWORD PTR[((-48))+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm3 - psrlq xmm3,1 - pxor xmm5,xmm6 - pxor xmm3,xmm4 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm6,xmm5 - psllq xmm5,1 - pxor xmm4,xmm3 - psllq xmm3,1 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm1,xmm2 - pxor xmm15,xmm0 - pand xmm1,xmm7 - pand xmm15,xmm7 - pxor xmm2,xmm1 - psllq xmm1,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm1,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm4 - psrlq xmm4,2 - movdqa xmm10,xmm3 - psrlq xmm3,2 - pxor xmm4,xmm6 - pxor xmm3,xmm5 - pand xmm4,xmm8 - pand xmm3,xmm8 - pxor xmm6,xmm4 - psllq xmm4,2 - pxor xmm5,xmm3 - psllq xmm3,2 - pxor xmm4,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm2 - pxor xmm15,xmm1 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm2,xmm0 - psllq xmm0,2 - pxor xmm1,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm2 - psrlq xmm2,4 - movdqa xmm10,xmm1 - psrlq xmm1,4 - pxor xmm2,xmm6 - pxor xmm1,xmm5 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm6,xmm2 - psllq xmm2,4 - pxor xmm5,xmm1 - psllq xmm1,4 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm4 - pxor xmm15,xmm3 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm4,xmm0 - psllq xmm0,4 - pxor xmm3,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - dec r10d - jmp $L$dec_sbox -ALIGN 16 -$L$dec_loop:: - pxor xmm15,XMMWORD PTR[rax] - pxor xmm0,XMMWORD PTR[16+rax] - pxor xmm1,XMMWORD PTR[32+rax] - pxor xmm2,XMMWORD PTR[48+rax] -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,XMMWORD PTR[64+rax] - pxor xmm4,XMMWORD PTR[80+rax] -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,XMMWORD PTR[96+rax] - pxor xmm6,XMMWORD PTR[112+rax] -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea rax,QWORD PTR[128+rax] -$L$dec_sbox:: - pxor xmm2,xmm3 - - pxor xmm3,xmm6 - pxor xmm1,xmm6 - pxor xmm5,xmm3 - pxor xmm6,xmm5 - pxor xmm0,xmm6 - - pxor xmm15,xmm0 - pxor xmm1,xmm4 - pxor xmm2,xmm15 - pxor xmm4,xmm15 - pxor xmm0,xmm2 - movdqa xmm10,xmm2 - movdqa xmm9,xmm6 - movdqa xmm8,xmm0 - movdqa xmm12,xmm3 - movdqa xmm11,xmm4 - - pxor xmm10,xmm15 - pxor xmm9,xmm3 - pxor xmm8,xmm5 - movdqa xmm13,xmm10 - pxor xmm12,xmm15 - movdqa xmm7,xmm9 - pxor xmm11,xmm1 - movdqa xmm14,xmm10 - - por xmm9,xmm8 - por xmm10,xmm11 - pxor xmm14,xmm7 - pand xmm13,xmm11 - pxor xmm11,xmm8 - pand xmm7,xmm8 - pand xmm14,xmm11 - movdqa xmm11,xmm5 - pxor xmm11,xmm1 - pand xmm12,xmm11 - pxor xmm10,xmm12 - pxor xmm9,xmm12 - movdqa xmm12,xmm2 - movdqa xmm11,xmm0 - pxor xmm12,xmm6 - pxor xmm11,xmm4 - movdqa xmm8,xmm12 - pand xmm12,xmm11 - por xmm8,xmm11 - pxor xmm7,xmm12 - pxor xmm10,xmm14 - pxor xmm9,xmm13 - pxor xmm8,xmm14 - movdqa xmm11,xmm3 - pxor xmm7,xmm13 - movdqa xmm12,xmm15 - pxor xmm8,xmm13 - movdqa xmm13,xmm6 - pand xmm11,xmm5 - movdqa xmm14,xmm2 - pand xmm12,xmm1 - pand xmm13,xmm0 - por xmm14,xmm4 - pxor xmm10,xmm11 - pxor xmm9,xmm12 - pxor xmm8,xmm13 - pxor xmm7,xmm14 - - - - - - movdqa xmm11,xmm10 - pand xmm10,xmm8 - pxor xmm11,xmm9 - - movdqa xmm13,xmm7 - movdqa xmm14,xmm11 - pxor xmm13,xmm10 - pand xmm14,xmm13 - - movdqa xmm12,xmm8 - pxor xmm14,xmm9 - pxor xmm12,xmm7 - - pxor xmm10,xmm9 - - pand xmm12,xmm10 - - movdqa xmm9,xmm13 - pxor xmm12,xmm7 - - pxor xmm9,xmm12 - pxor xmm8,xmm12 - - pand xmm9,xmm7 - - pxor xmm13,xmm9 - pxor xmm8,xmm9 - - pand xmm13,xmm14 - - pxor xmm13,xmm11 - movdqa xmm11,xmm4 - movdqa xmm7,xmm0 - movdqa xmm9,xmm14 - pxor xmm9,xmm13 - pand xmm9,xmm4 - pxor xmm4,xmm0 - pand xmm0,xmm14 - pand xmm4,xmm13 - pxor xmm4,xmm0 - pxor xmm0,xmm9 - pxor xmm11,xmm1 - pxor xmm7,xmm5 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm1 - pxor xmm11,xmm7 - pxor xmm1,xmm5 - pand xmm7,xmm14 - pand xmm5,xmm12 - pand xmm11,xmm13 - pand xmm1,xmm8 - pxor xmm7,xmm11 - pxor xmm1,xmm5 - pxor xmm11,xmm10 - pxor xmm5,xmm9 - pxor xmm4,xmm11 - pxor xmm1,xmm11 - pxor xmm0,xmm7 - pxor xmm5,xmm7 - - movdqa xmm11,xmm2 - movdqa xmm7,xmm6 - pxor xmm11,xmm15 - pxor xmm7,xmm3 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm15 - pxor xmm11,xmm7 - pxor xmm15,xmm3 - pand xmm7,xmm14 - pand xmm3,xmm12 - pand xmm11,xmm13 - pand xmm15,xmm8 - pxor xmm7,xmm11 - pxor xmm15,xmm3 - pxor xmm11,xmm10 - pxor xmm3,xmm9 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - pxor xmm10,xmm13 - pand xmm10,xmm2 - pxor xmm2,xmm6 - pand xmm6,xmm14 - pand xmm2,xmm13 - pxor xmm2,xmm6 - pxor xmm6,xmm10 - pxor xmm2,xmm11 - pxor xmm15,xmm11 - pxor xmm6,xmm7 - pxor xmm3,xmm7 - pxor xmm0,xmm6 - pxor xmm5,xmm4 - - pxor xmm3,xmm0 - pxor xmm1,xmm6 - pxor xmm4,xmm6 - pxor xmm3,xmm1 - pxor xmm6,xmm15 - pxor xmm3,xmm4 - pxor xmm2,xmm5 - pxor xmm5,xmm0 - pxor xmm2,xmm3 - - pxor xmm3,xmm15 - pxor xmm6,xmm2 - dec r10d - jl $L$dec_done - - pshufd xmm7,xmm15,04Eh - pshufd xmm13,xmm2,04Eh - pxor xmm7,xmm15 - pshufd xmm14,xmm4,04Eh - pxor xmm13,xmm2 - pshufd xmm8,xmm0,04Eh - pxor xmm14,xmm4 - pshufd xmm9,xmm5,04Eh - pxor xmm8,xmm0 - pshufd xmm10,xmm3,04Eh - pxor xmm9,xmm5 - pxor xmm15,xmm13 - pxor xmm0,xmm13 - pshufd xmm11,xmm1,04Eh - pxor xmm10,xmm3 - pxor xmm5,xmm7 - pxor xmm3,xmm8 - pshufd xmm12,xmm6,04Eh - pxor xmm11,xmm1 - pxor xmm0,xmm14 - pxor xmm1,xmm9 - pxor xmm12,xmm6 - - pxor xmm5,xmm14 - pxor xmm3,xmm13 - pxor xmm1,xmm13 - pxor xmm6,xmm10 - pxor xmm2,xmm11 - pxor xmm1,xmm14 - pxor xmm6,xmm14 - pxor xmm4,xmm12 - pshufd xmm7,xmm15,093h - pshufd xmm8,xmm0,093h - pxor xmm15,xmm7 - pshufd xmm9,xmm5,093h - pxor xmm0,xmm8 - pshufd xmm10,xmm3,093h - pxor xmm5,xmm9 - pshufd xmm11,xmm1,093h - pxor xmm3,xmm10 - pshufd xmm12,xmm6,093h - pxor xmm1,xmm11 - pshufd xmm13,xmm2,093h - pxor xmm6,xmm12 - pshufd xmm14,xmm4,093h - pxor xmm2,xmm13 - pxor xmm4,xmm14 - - pxor xmm8,xmm15 - pxor xmm7,xmm4 - pxor xmm8,xmm4 - pshufd xmm15,xmm15,04Eh - pxor xmm9,xmm0 - pshufd xmm0,xmm0,04Eh - pxor xmm12,xmm1 - pxor xmm15,xmm7 - pxor xmm13,xmm6 - pxor xmm0,xmm8 - pxor xmm11,xmm3 - pshufd xmm7,xmm1,04Eh - pxor xmm14,xmm2 - pshufd xmm8,xmm6,04Eh - pxor xmm10,xmm5 - pshufd xmm1,xmm3,04Eh - pxor xmm10,xmm4 - pshufd xmm6,xmm4,04Eh - pxor xmm11,xmm4 - pshufd xmm3,xmm2,04Eh - pxor xmm7,xmm11 - pshufd xmm2,xmm5,04Eh - pxor xmm8,xmm12 - pxor xmm10,xmm1 - pxor xmm6,xmm14 - pxor xmm13,xmm3 - movdqa xmm3,xmm7 - pxor xmm2,xmm9 - movdqa xmm5,xmm13 - movdqa xmm4,xmm8 - movdqa xmm1,xmm2 - movdqa xmm2,xmm10 - movdqa xmm7,XMMWORD PTR[((-16))+r11] - jnz $L$dec_loop - movdqa xmm7,XMMWORD PTR[((-32))+r11] - jmp $L$dec_loop -ALIGN 16 -$L$dec_done:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm2 - psrlq xmm2,1 - movdqa xmm10,xmm1 - psrlq xmm1,1 - pxor xmm2,xmm4 - pxor xmm1,xmm6 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm4,xmm2 - psllq xmm2,1 - pxor xmm6,xmm1 - psllq xmm1,1 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm5,xmm3 - pxor xmm15,xmm0 - pand xmm5,xmm7 - pand xmm15,xmm7 - pxor xmm3,xmm5 - psllq xmm5,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm5,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm6 - psrlq xmm6,2 - movdqa xmm10,xmm1 - psrlq xmm1,2 - pxor xmm6,xmm4 - pxor xmm1,xmm2 - pand xmm6,xmm8 - pand xmm1,xmm8 - pxor xmm4,xmm6 - psllq xmm6,2 - pxor xmm2,xmm1 - psllq xmm1,2 - pxor xmm6,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm3 - pxor xmm15,xmm5 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm3,xmm0 - psllq xmm0,2 - pxor xmm5,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm3 - psrlq xmm3,4 - movdqa xmm10,xmm5 - psrlq xmm5,4 - pxor xmm3,xmm4 - pxor xmm5,xmm2 - pand xmm3,xmm7 - pand xmm5,xmm7 - pxor xmm4,xmm3 - psllq xmm3,4 - pxor xmm2,xmm5 - psllq xmm5,4 - pxor xmm3,xmm9 - pxor xmm5,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm6 - pxor xmm15,xmm1 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm6,xmm0 - psllq xmm0,4 - pxor xmm1,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[rax] - pxor xmm5,xmm7 - pxor xmm3,xmm7 - pxor xmm1,xmm7 - pxor xmm6,xmm7 - pxor xmm2,xmm7 - pxor xmm4,xmm7 - pxor xmm15,xmm7 - pxor xmm0,xmm7 - DB 0F3h,0C3h ;repret -_bsaes_decrypt8 ENDP - -ALIGN 16 -_bsaes_key_convert PROC PRIVATE - lea r11,QWORD PTR[$L$masks] - movdqu xmm7,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - movdqa xmm0,XMMWORD PTR[r11] - movdqa xmm1,XMMWORD PTR[16+r11] - movdqa xmm2,XMMWORD PTR[32+r11] - movdqa xmm3,XMMWORD PTR[48+r11] - movdqa xmm4,XMMWORD PTR[64+r11] - pcmpeqd xmm5,xmm5 - - movdqu xmm6,XMMWORD PTR[rcx] - movdqa XMMWORD PTR[rax],xmm7 - lea rax,QWORD PTR[16+rax] - dec r10d - jmp $L$key_loop -ALIGN 16 -$L$key_loop:: -DB 102,15,56,0,244 - - movdqa xmm8,xmm0 - movdqa xmm9,xmm1 - - pand xmm8,xmm6 - pand xmm9,xmm6 - movdqa xmm10,xmm2 - pcmpeqb xmm8,xmm0 - psllq xmm0,4 - movdqa xmm11,xmm3 - pcmpeqb xmm9,xmm1 - psllq xmm1,4 - - pand xmm10,xmm6 - pand xmm11,xmm6 - movdqa xmm12,xmm0 - pcmpeqb xmm10,xmm2 - psllq xmm2,4 - movdqa xmm13,xmm1 - pcmpeqb xmm11,xmm3 - psllq xmm3,4 - - movdqa xmm14,xmm2 - movdqa xmm15,xmm3 - pxor xmm8,xmm5 - pxor xmm9,xmm5 - - pand xmm12,xmm6 - pand xmm13,xmm6 - movdqa XMMWORD PTR[rax],xmm8 - pcmpeqb xmm12,xmm0 - psrlq xmm0,4 - movdqa XMMWORD PTR[16+rax],xmm9 - pcmpeqb xmm13,xmm1 - psrlq xmm1,4 - lea rcx,QWORD PTR[16+rcx] - - pand xmm14,xmm6 - pand xmm15,xmm6 - movdqa XMMWORD PTR[32+rax],xmm10 - pcmpeqb xmm14,xmm2 - psrlq xmm2,4 - movdqa XMMWORD PTR[48+rax],xmm11 - pcmpeqb xmm15,xmm3 - psrlq xmm3,4 - movdqu xmm6,XMMWORD PTR[rcx] - - pxor xmm13,xmm5 - pxor xmm14,xmm5 - movdqa XMMWORD PTR[64+rax],xmm12 - movdqa XMMWORD PTR[80+rax],xmm13 - movdqa XMMWORD PTR[96+rax],xmm14 - movdqa XMMWORD PTR[112+rax],xmm15 - lea rax,QWORD PTR[128+rax] - dec r10d - jnz $L$key_loop - - movdqa xmm7,XMMWORD PTR[80+r11] - - DB 0F3h,0C3h ;repret -_bsaes_key_convert ENDP -EXTERN asm_AES_cbc_encrypt:NEAR -PUBLIC bsaes_cbc_encrypt - -ALIGN 16 -bsaes_cbc_encrypt PROC PUBLIC - mov r11d,DWORD PTR[48+rsp] - cmp r11d,0 - jne asm_AES_cbc_encrypt - cmp r8,128 - jb asm_AES_cbc_encrypt - - mov rax,rsp -$L$cbc_dec_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$cbc_dec_body:: - mov rbp,rsp - mov eax,DWORD PTR[240+r9] - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - mov rbx,r10 - shr r14,4 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,XMMWORD PTR[rsp] - movdqa XMMWORD PTR[rax],xmm6 - movdqa XMMWORD PTR[rsp],xmm7 - - movdqu xmm14,XMMWORD PTR[rbx] - sub r14,8 -$L$cbc_dec_loop:: - movdqu xmm15,XMMWORD PTR[r12] - movdqu xmm0,XMMWORD PTR[16+r12] - movdqu xmm1,XMMWORD PTR[32+r12] - movdqu xmm2,XMMWORD PTR[48+r12] - movdqu xmm3,XMMWORD PTR[64+r12] - movdqu xmm4,XMMWORD PTR[80+r12] - mov rax,rsp - movdqu xmm5,XMMWORD PTR[96+r12] - mov r10d,edx - movdqu xmm6,XMMWORD PTR[112+r12] - movdqa XMMWORD PTR[32+rbp],xmm14 - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm2,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - pxor xmm4,xmm13 - movdqu XMMWORD PTR[r13],xmm15 - lea r12,QWORD PTR[128+r12] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - sub r14,8 - jnc $L$cbc_dec_loop - - add r14,8 - jz $L$cbc_dec_done - - movdqu xmm15,XMMWORD PTR[r12] - mov rax,rsp - mov r10d,edx - cmp r14,2 - jb $L$cbc_dec_one - movdqu xmm0,XMMWORD PTR[16+r12] - je $L$cbc_dec_two - movdqu xmm1,XMMWORD PTR[32+r12] - cmp r14,4 - jb $L$cbc_dec_three - movdqu xmm2,XMMWORD PTR[48+r12] - je $L$cbc_dec_four - movdqu xmm3,XMMWORD PTR[64+r12] - cmp r14,6 - jb $L$cbc_dec_five - movdqu xmm4,XMMWORD PTR[80+r12] - je $L$cbc_dec_six - movdqu xmm5,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu xmm14,XMMWORD PTR[96+r12] - pxor xmm2,xmm12 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_six:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm14,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_five:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm14,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_four:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm14,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_three:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm14,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_two:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm14,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_one:: - lea rcx,QWORD PTR[r12] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm14,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[r13],xmm14 - movdqa xmm14,xmm15 - -$L$cbc_dec_done:: - movdqu XMMWORD PTR[rbx],xmm14 - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$cbc_dec_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$cbc_dec_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$cbc_dec_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_cbc_encrypt ENDP - -PUBLIC bsaes_ctr32_encrypt_blocks - -ALIGN 16 -bsaes_ctr32_encrypt_blocks PROC PUBLIC - mov rax,rsp -$L$ctr_enc_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$ctr_enc_body:: - mov rbp,rsp - movdqu xmm0,XMMWORD PTR[r10] - mov eax,DWORD PTR[240+r9] - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - movdqa XMMWORD PTR[32+rbp],xmm0 - cmp r8,8 - jb $L$ctr_enc_short - - mov ebx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,ebx - call _bsaes_key_convert - pxor xmm7,xmm6 - movdqa XMMWORD PTR[rax],xmm7 - - movdqa xmm8,XMMWORD PTR[rsp] - lea r11,QWORD PTR[$L$ADD1] - movdqa xmm15,XMMWORD PTR[32+rbp] - movdqa xmm7,XMMWORD PTR[((-32))+r11] -DB 102,68,15,56,0,199 -DB 102,68,15,56,0,255 - movdqa XMMWORD PTR[rsp],xmm8 - jmp $L$ctr_enc_loop -ALIGN 16 -$L$ctr_enc_loop:: - movdqa XMMWORD PTR[32+rbp],xmm15 - movdqa xmm0,xmm15 - movdqa xmm1,xmm15 - paddd xmm0,XMMWORD PTR[r11] - movdqa xmm2,xmm15 - paddd xmm1,XMMWORD PTR[16+r11] - movdqa xmm3,xmm15 - paddd xmm2,XMMWORD PTR[32+r11] - movdqa xmm4,xmm15 - paddd xmm3,XMMWORD PTR[48+r11] - movdqa xmm5,xmm15 - paddd xmm4,XMMWORD PTR[64+r11] - movdqa xmm6,xmm15 - paddd xmm5,XMMWORD PTR[80+r11] - paddd xmm6,XMMWORD PTR[96+r11] - - - - movdqa xmm8,XMMWORD PTR[rsp] - lea rax,QWORD PTR[16+rsp] - movdqa xmm7,XMMWORD PTR[((-16))+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea r11,QWORD PTR[$L$BS0] - mov r10d,ebx - - call _bsaes_encrypt8_bitslice - - sub r14,8 - jc $L$ctr_enc_loop_done - - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - movdqu xmm9,XMMWORD PTR[32+r12] - movdqu xmm10,XMMWORD PTR[48+r12] - movdqu xmm11,XMMWORD PTR[64+r12] - movdqu xmm12,XMMWORD PTR[80+r12] - movdqu xmm13,XMMWORD PTR[96+r12] - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - pxor xmm7,xmm15 - movdqa xmm15,XMMWORD PTR[32+rbp] - pxor xmm0,xmm8 - movdqu XMMWORD PTR[r13],xmm7 - pxor xmm3,xmm9 - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,xmm10 - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,xmm11 - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,xmm12 - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,xmm13 - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,xmm14 - movdqu XMMWORD PTR[96+r13],xmm1 - lea r11,QWORD PTR[$L$ADD1] - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - paddd xmm15,XMMWORD PTR[112+r11] - jnz $L$ctr_enc_loop - - jmp $L$ctr_enc_done -ALIGN 16 -$L$ctr_enc_loop_done:: - add r14,8 - movdqu xmm7,XMMWORD PTR[r12] - pxor xmm15,xmm7 - movdqu XMMWORD PTR[r13],xmm15 - cmp r14,2 - jb $L$ctr_enc_done - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm8 - movdqu XMMWORD PTR[16+r13],xmm0 - je $L$ctr_enc_done - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm3,xmm9 - movdqu XMMWORD PTR[32+r13],xmm3 - cmp r14,4 - jb $L$ctr_enc_done - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm5,xmm10 - movdqu XMMWORD PTR[48+r13],xmm5 - je $L$ctr_enc_done - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm11 - movdqu XMMWORD PTR[64+r13],xmm2 - cmp r14,6 - jb $L$ctr_enc_done - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm12 - movdqu XMMWORD PTR[80+r13],xmm6 - je $L$ctr_enc_done - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm1,xmm13 - movdqu XMMWORD PTR[96+r13],xmm1 - jmp $L$ctr_enc_done - -ALIGN 16 -$L$ctr_enc_short:: - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[48+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - movdqu xmm0,XMMWORD PTR[r12] - lea r12,QWORD PTR[16+r12] - mov eax,DWORD PTR[44+rbp] - bswap eax - pxor xmm0,XMMWORD PTR[48+rbp] - inc eax - movdqu XMMWORD PTR[r13],xmm0 - bswap eax - lea r13,QWORD PTR[16+r13] - mov DWORD PTR[44+rsp],eax - dec r14 - jnz $L$ctr_enc_short - -$L$ctr_enc_done:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$ctr_enc_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$ctr_enc_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$ctr_enc_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_ctr32_encrypt_blocks ENDP -PUBLIC bsaes_xts_encrypt - -ALIGN 16 -bsaes_xts_encrypt PROC PUBLIC - mov rax,rsp -$L$xts_enc_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - mov r11,QWORD PTR[168+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$xts_enc_body:: - mov rbp,rsp - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - - lea rcx,QWORD PTR[r11] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r10] - call asm_AES_encrypt - - mov eax,DWORD PTR[240+r15] - mov rbx,r14 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,xmm6 - movdqa XMMWORD PTR[rax],xmm7 - - and r14,-16 - sub rsp,080h - movdqa xmm6,XMMWORD PTR[32+rbp] - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - - sub r14,080h - jc $L$xts_enc_short - jmp $L$xts_enc_loop - -ALIGN 16 -$L$xts_enc_loop:: - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - movdqa XMMWORD PTR[112+rsp],xmm6 - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - pxor xmm6,xmm14 - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,XMMWORD PTR[112+rsp] - movdqu XMMWORD PTR[96+r13],xmm1 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - - sub r14,080h - jnc $L$xts_enc_loop - -$L$xts_enc_short:: - add r14,080h - jz $L$xts_enc_done - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - cmp r14,16 - je $L$xts_enc_1 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - cmp r14,32 - je $L$xts_enc_2 - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - cmp r14,48 - je $L$xts_enc_3 - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - cmp r14,64 - je $L$xts_enc_4 - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - cmp r14,80 - je $L$xts_enc_5 - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - cmp r14,96 - je $L$xts_enc_6 - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqa XMMWORD PTR[112+rsp],xmm6 - lea r12,QWORD PTR[112+r12] - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm1 - lea r13,QWORD PTR[112+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_6:: - pxor xmm3,xmm11 - lea r12,QWORD PTR[96+r12] - pxor xmm4,xmm12 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - movdqu XMMWORD PTR[80+r13],xmm6 - lea r13,QWORD PTR[96+r13] - - movdqa xmm6,XMMWORD PTR[96+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_5:: - pxor xmm2,xmm10 - lea r12,QWORD PTR[80+r12] - pxor xmm3,xmm11 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - movdqu XMMWORD PTR[64+r13],xmm2 - lea r13,QWORD PTR[80+r13] - - movdqa xmm6,XMMWORD PTR[80+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_4:: - pxor xmm1,xmm9 - lea r12,QWORD PTR[64+r12] - pxor xmm2,xmm10 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - movdqu XMMWORD PTR[48+r13],xmm5 - lea r13,QWORD PTR[64+r13] - - movdqa xmm6,XMMWORD PTR[64+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_3:: - pxor xmm0,xmm8 - lea r12,QWORD PTR[48+r12] - pxor xmm1,xmm9 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm3 - lea r13,QWORD PTR[48+r13] - - movdqa xmm6,XMMWORD PTR[48+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_2:: - pxor xmm15,xmm7 - lea r12,QWORD PTR[32+r12] - pxor xmm0,xmm8 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - lea r13,QWORD PTR[32+r13] - - movdqa xmm6,XMMWORD PTR[32+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_1:: - pxor xmm7,xmm15 - lea r12,QWORD PTR[16+r12] - movdqa XMMWORD PTR[32+rbp],xmm7 - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - pxor xmm15,XMMWORD PTR[32+rbp] - - - - - - movdqu XMMWORD PTR[r13],xmm15 - lea r13,QWORD PTR[16+r13] - - movdqa xmm6,XMMWORD PTR[16+rsp] - -$L$xts_enc_done:: - and ebx,15 - jz $L$xts_enc_ret - mov rdx,r13 - -$L$xts_enc_steal:: - movzx eax,BYTE PTR[r12] - movzx ecx,BYTE PTR[((-16))+rdx] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[((-16))+rdx],al - mov BYTE PTR[rdx],cl - lea rdx,QWORD PTR[1+rdx] - sub ebx,1 - jnz $L$xts_enc_steal - - movdqu xmm15,XMMWORD PTR[((-16))+r13] - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm6 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - pxor xmm6,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[(-16)+r13],xmm6 - -$L$xts_enc_ret:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$xts_enc_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$xts_enc_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$xts_enc_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_xts_encrypt ENDP - -PUBLIC bsaes_xts_decrypt - -ALIGN 16 -bsaes_xts_decrypt PROC PUBLIC - mov rax,rsp -$L$xts_dec_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - mov r11,QWORD PTR[168+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$xts_dec_body:: - mov rbp,rsp - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - - lea rcx,QWORD PTR[r11] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r10] - call asm_AES_encrypt - - mov eax,DWORD PTR[240+r15] - mov rbx,r14 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,XMMWORD PTR[rsp] - movdqa XMMWORD PTR[rax],xmm6 - movdqa XMMWORD PTR[rsp],xmm7 - - xor eax,eax - and r14,-16 - test ebx,15 - setnz al - shl rax,4 - sub r14,rax - - sub rsp,080h - movdqa xmm6,XMMWORD PTR[32+rbp] - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - - sub r14,080h - jc $L$xts_dec_short - jmp $L$xts_dec_loop - -ALIGN 16 -$L$xts_dec_loop:: - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - movdqa XMMWORD PTR[112+rsp],xmm6 - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - pxor xmm6,xmm14 - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - pxor xmm2,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,XMMWORD PTR[112+rsp] - movdqu XMMWORD PTR[96+r13],xmm2 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - - sub r14,080h - jnc $L$xts_dec_loop - -$L$xts_dec_short:: - add r14,080h - jz $L$xts_dec_done - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - cmp r14,16 - je $L$xts_dec_1 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - cmp r14,32 - je $L$xts_dec_2 - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - cmp r14,48 - je $L$xts_dec_3 - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - cmp r14,64 - je $L$xts_dec_4 - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - cmp r14,80 - je $L$xts_dec_5 - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - cmp r14,96 - je $L$xts_dec_6 - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqa XMMWORD PTR[112+rsp],xmm6 - lea r12,QWORD PTR[112+r12] - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - pxor xmm2,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - lea r13,QWORD PTR[112+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_6:: - pxor xmm3,xmm11 - lea r12,QWORD PTR[96+r12] - pxor xmm4,xmm12 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - lea r13,QWORD PTR[96+r13] - - movdqa xmm6,XMMWORD PTR[96+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_5:: - pxor xmm2,xmm10 - lea r12,QWORD PTR[80+r12] - pxor xmm3,xmm11 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - lea r13,QWORD PTR[80+r13] - - movdqa xmm6,XMMWORD PTR[80+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_4:: - pxor xmm1,xmm9 - lea r12,QWORD PTR[64+r12] - pxor xmm2,xmm10 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - lea r13,QWORD PTR[64+r13] - - movdqa xmm6,XMMWORD PTR[64+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_3:: - pxor xmm0,xmm8 - lea r12,QWORD PTR[48+r12] - pxor xmm1,xmm9 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - lea r13,QWORD PTR[48+r13] - - movdqa xmm6,XMMWORD PTR[48+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_2:: - pxor xmm15,xmm7 - lea r12,QWORD PTR[32+r12] - pxor xmm0,xmm8 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - lea r13,QWORD PTR[32+r13] - - movdqa xmm6,XMMWORD PTR[32+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_1:: - pxor xmm7,xmm15 - lea r12,QWORD PTR[16+r12] - movdqa XMMWORD PTR[32+rbp],xmm7 - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm15,XMMWORD PTR[32+rbp] - - - - - - movdqu XMMWORD PTR[r13],xmm15 - lea r13,QWORD PTR[16+r13] - - movdqa xmm6,XMMWORD PTR[16+rsp] - -$L$xts_dec_done:: - and ebx,15 - jz $L$xts_dec_ret - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - movdqa xmm5,xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - movdqu xmm15,XMMWORD PTR[r12] - pxor xmm6,xmm13 - - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm6 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm6,XMMWORD PTR[32+rbp] - mov rdx,r13 - movdqu XMMWORD PTR[r13],xmm6 - -$L$xts_dec_steal:: - movzx eax,BYTE PTR[16+r12] - movzx ecx,BYTE PTR[rdx] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[rdx],al - mov BYTE PTR[16+rdx],cl - lea rdx,QWORD PTR[1+rdx] - sub ebx,1 - jnz $L$xts_dec_steal - - movdqu xmm15,XMMWORD PTR[r13] - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm5 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm5,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[r13],xmm5 - -$L$xts_dec_ret:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$xts_dec_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$xts_dec_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$xts_dec_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_xts_decrypt ENDP - -ALIGN 64 -_bsaes_const:: -$L$M0ISR:: - DQ 00a0e0206070b0f03h,00004080c0d010509h -$L$ISRM0:: - DQ 001040b0e0205080fh,00306090c00070a0dh -$L$ISR:: - DQ 00504070602010003h,00f0e0d0c080b0a09h -$L$BS0:: - DQ 05555555555555555h,05555555555555555h -$L$BS1:: - DQ 03333333333333333h,03333333333333333h -$L$BS2:: - DQ 00f0f0f0f0f0f0f0fh,00f0f0f0f0f0f0f0fh -$L$SR:: - DQ 00504070600030201h,00f0e0d0c0a09080bh -$L$SRM0:: - DQ 00304090e00050a0fh,001060b0c0207080dh -$L$M0SR:: - DQ 00a0e02060f03070bh,00004080c05090d01h -$L$SWPUP:: - DQ 00706050403020100h,00c0d0e0f0b0a0908h -$L$SWPUPM0SR:: - DQ 00a0d02060c03070bh,00004080f05090e01h -$L$ADD1:: - DQ 00000000000000000h,00000000100000000h -$L$ADD2:: - DQ 00000000000000000h,00000000200000000h -$L$ADD3:: - DQ 00000000000000000h,00000000300000000h -$L$ADD4:: - DQ 00000000000000000h,00000000400000000h -$L$ADD5:: - DQ 00000000000000000h,00000000500000000h -$L$ADD6:: - DQ 00000000000000000h,00000000600000000h -$L$ADD7:: - DQ 00000000000000000h,00000000700000000h -$L$ADD8:: - DQ 00000000000000000h,00000000800000000h -$L$xts_magic:: - DD 087h,0,1,0 -$L$masks:: - DQ 00101010101010101h,00101010101010101h - DQ 00202020202020202h,00202020202020202h - DQ 00404040404040404h,00404040404040404h - DQ 00808080808080808h,00808080808080808h -$L$M0:: - DQ 002060a0e03070b0fh,00004080c0105090dh -$L$63:: - DQ 06363636363636363h,06363636363636363h -DB 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102 -DB 111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44 -DB 32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44 -DB 32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32 -DB 65,110,100,121,32,80,111,108,121,97,107,111,118,0 -ALIGN 64 - -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[160+r8] - - lea rsi,QWORD PTR[64+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[160+rax] - - mov rbp,QWORD PTR[112+rax] - mov rbx,QWORD PTR[104+rax] - mov r12,QWORD PTR[96+rax] - mov r13,QWORD PTR[88+rax] - mov r14,QWORD PTR[80+rax] - mov r15,QWORD PTR[72+rax] - lea rax,QWORD PTR[120+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov QWORD PTR[152+r8],rax - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$cbc_dec_prologue - DD imagerel $L$cbc_dec_epilogue - DD imagerel $L$cbc_dec_info - - DD imagerel $L$ctr_enc_prologue - DD imagerel $L$ctr_enc_epilogue - DD imagerel $L$ctr_enc_info - - DD imagerel $L$xts_enc_prologue - DD imagerel $L$xts_enc_epilogue - DD imagerel $L$xts_enc_info - - DD imagerel $L$xts_dec_prologue - DD imagerel $L$xts_dec_epilogue - DD imagerel $L$xts_dec_info - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$cbc_dec_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$cbc_dec_body,imagerel $L$cbc_dec_epilogue -$L$ctr_enc_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$ctr_enc_body,imagerel $L$ctr_enc_epilogue -$L$xts_enc_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$xts_enc_body,imagerel $L$xts_enc_epilogue -$L$xts_dec_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$xts_dec_body,imagerel $L$xts_dec_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/aes/vpaes-x86_64.asm b/deps/openssl/asm/x64-win32-masm/aes/vpaes-x86_64.asm deleted file mode 100644 index 292f64d58debb1..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/aes/vpaes-x86_64.asm +++ /dev/null @@ -1,1143 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_encrypt_core PROC PRIVATE - mov r9,rdx - mov r11,16 - mov eax,DWORD PTR[240+rdx] - movdqa xmm1,xmm9 - movdqa xmm2,XMMWORD PTR[$L$k_ipt] - pandn xmm1,xmm0 - movdqu xmm5,XMMWORD PTR[r9] - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[(($L$k_ipt+16))] -DB 102,15,56,0,193 - pxor xmm2,xmm5 - add r9,16 - pxor xmm0,xmm2 - lea r10,QWORD PTR[$L$k_mc_backward] - jmp $L$enc_entry - -ALIGN 16 -$L$enc_loop:: - - movdqa xmm4,xmm13 - movdqa xmm0,xmm12 -DB 102,15,56,0,226 -DB 102,15,56,0,195 - pxor xmm4,xmm5 - movdqa xmm5,xmm15 - pxor xmm0,xmm4 - movdqa xmm1,XMMWORD PTR[((-64))+r10*1+r11] -DB 102,15,56,0,234 - movdqa xmm4,XMMWORD PTR[r10*1+r11] - movdqa xmm2,xmm14 -DB 102,15,56,0,211 - movdqa xmm3,xmm0 - pxor xmm2,xmm5 -DB 102,15,56,0,193 - add r9,16 - pxor xmm0,xmm2 -DB 102,15,56,0,220 - add r11,16 - pxor xmm3,xmm0 -DB 102,15,56,0,193 - and r11,030h - sub rax,1 - pxor xmm0,xmm3 - -$L$enc_entry:: - - movdqa xmm1,xmm9 - movdqa xmm5,xmm11 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,232 - movdqa xmm3,xmm10 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm10 - pxor xmm3,xmm5 -DB 102,15,56,0,224 - movdqa xmm2,xmm10 - pxor xmm4,xmm5 -DB 102,15,56,0,211 - movdqa xmm3,xmm10 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm5,XMMWORD PTR[r9] - pxor xmm3,xmm1 - jnz $L$enc_loop - - - movdqa xmm4,XMMWORD PTR[((-96))+r10] - movdqa xmm0,XMMWORD PTR[((-80))+r10] -DB 102,15,56,0,226 - pxor xmm4,xmm5 -DB 102,15,56,0,195 - movdqa xmm1,XMMWORD PTR[64+r10*1+r11] - pxor xmm0,xmm4 -DB 102,15,56,0,193 - DB 0F3h,0C3h ;repret -_vpaes_encrypt_core ENDP - - - - - - - -ALIGN 16 -_vpaes_decrypt_core PROC PRIVATE - mov r9,rdx - mov eax,DWORD PTR[240+rdx] - movdqa xmm1,xmm9 - movdqa xmm2,XMMWORD PTR[$L$k_dipt] - pandn xmm1,xmm0 - mov r11,rax - psrld xmm1,4 - movdqu xmm5,XMMWORD PTR[r9] - shl r11,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[(($L$k_dipt+16))] - xor r11,030h - lea r10,QWORD PTR[$L$k_dsbd] -DB 102,15,56,0,193 - and r11,030h - pxor xmm2,xmm5 - movdqa xmm5,XMMWORD PTR[(($L$k_mc_forward+48))] - pxor xmm0,xmm2 - add r9,16 - add r11,r10 - jmp $L$dec_entry - -ALIGN 16 -$L$dec_loop:: - - - - movdqa xmm4,XMMWORD PTR[((-32))+r10] - movdqa xmm1,XMMWORD PTR[((-16))+r10] -DB 102,15,56,0,226 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[16+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[32+r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[48+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[64+r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[80+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - add r9,16 -DB 102,15,58,15,237,12 - pxor xmm0,xmm1 - sub rax,1 - -$L$dec_entry:: - - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - movdqa xmm2,xmm11 - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm3,xmm10 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm10 - pxor xmm3,xmm2 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm10 -DB 102,15,56,0,211 - movdqa xmm3,xmm10 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm0,XMMWORD PTR[r9] - pxor xmm3,xmm1 - jnz $L$dec_loop - - - movdqa xmm4,XMMWORD PTR[96+r10] -DB 102,15,56,0,226 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR[112+r10] - movdqa xmm2,XMMWORD PTR[((-352))+r11] -DB 102,15,56,0,195 - pxor xmm0,xmm4 -DB 102,15,56,0,194 - DB 0F3h,0C3h ;repret -_vpaes_decrypt_core ENDP - - - - - - - -ALIGN 16 -_vpaes_schedule_core PROC PRIVATE - - - - - - call _vpaes_preheat - movdqa xmm8,XMMWORD PTR[$L$k_rcon] - movdqu xmm0,XMMWORD PTR[rdi] - - - movdqa xmm3,xmm0 - lea r11,QWORD PTR[$L$k_ipt] - call _vpaes_schedule_transform - movdqa xmm7,xmm0 - - lea r10,QWORD PTR[$L$k_sr] - test rcx,rcx - jnz $L$schedule_am_decrypting - - - movdqu XMMWORD PTR[rdx],xmm0 - jmp $L$schedule_go - -$L$schedule_am_decrypting:: - - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,217 - movdqu XMMWORD PTR[rdx],xmm3 - xor r8,030h - -$L$schedule_go:: - cmp esi,192 - ja $L$schedule_256 - je $L$schedule_192 - - - - - - - - - - -$L$schedule_128:: - mov esi,10 - -$L$oop_schedule_128:: - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - jmp $L$oop_schedule_128 - - - - - - - - - - - - - - - - -ALIGN 16 -$L$schedule_192:: - movdqu xmm0,XMMWORD PTR[8+rdi] - call _vpaes_schedule_transform - movdqa xmm6,xmm0 - pxor xmm4,xmm4 - movhlps xmm6,xmm4 - mov esi,4 - -$L$oop_schedule_192:: - call _vpaes_schedule_round -DB 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp $L$oop_schedule_192 - - - - - - - - - - - -ALIGN 16 -$L$schedule_256:: - movdqu xmm0,XMMWORD PTR[16+rdi] - call _vpaes_schedule_transform - mov esi,7 - -$L$oop_schedule_256:: - call _vpaes_schedule_mangle - movdqa xmm6,xmm0 - - - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd xmm0,xmm0,0FFh - movdqa xmm5,xmm7 - movdqa xmm7,xmm6 - call _vpaes_schedule_low_round - movdqa xmm7,xmm5 - - jmp $L$oop_schedule_256 - - - - - - - - - - - - -ALIGN 16 -$L$schedule_mangle_last:: - - lea r11,QWORD PTR[$L$k_deskew] - test rcx,rcx - jnz $L$schedule_mangle_last_dec - - - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,193 - lea r11,QWORD PTR[$L$k_opt] - add rdx,32 - -$L$schedule_mangle_last_dec:: - add rdx,-16 - pxor xmm0,XMMWORD PTR[$L$k_s63] - call _vpaes_schedule_transform - movdqu XMMWORD PTR[rdx],xmm0 - - - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - DB 0F3h,0C3h ;repret -_vpaes_schedule_core ENDP - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_192_smear PROC PRIVATE - pshufd xmm1,xmm6,080h - pshufd xmm0,xmm7,0FEh - pxor xmm6,xmm1 - pxor xmm1,xmm1 - pxor xmm6,xmm0 - movdqa xmm0,xmm6 - movhlps xmm6,xmm1 - DB 0F3h,0C3h ;repret -_vpaes_schedule_192_smear ENDP - - - - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_round PROC PRIVATE - - pxor xmm1,xmm1 -DB 102,65,15,58,15,200,15 -DB 102,69,15,58,15,192,15 - pxor xmm7,xmm1 - - - pshufd xmm0,xmm0,0FFh -DB 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round:: - - movdqa xmm1,xmm7 - pslldq xmm7,4 - pxor xmm7,xmm1 - movdqa xmm1,xmm7 - pslldq xmm7,8 - pxor xmm7,xmm1 - pxor xmm7,XMMWORD PTR[$L$k_s63] - - - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 - movdqa xmm2,xmm11 -DB 102,15,56,0,208 - pxor xmm0,xmm1 - movdqa xmm3,xmm10 -DB 102,15,56,0,217 - pxor xmm3,xmm2 - movdqa xmm4,xmm10 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm10 -DB 102,15,56,0,211 - pxor xmm2,xmm0 - movdqa xmm3,xmm10 -DB 102,15,56,0,220 - pxor xmm3,xmm1 - movdqa xmm4,xmm13 -DB 102,15,56,0,226 - movdqa xmm0,xmm12 -DB 102,15,56,0,195 - pxor xmm0,xmm4 - - - pxor xmm0,xmm7 - movdqa xmm7,xmm0 - DB 0F3h,0C3h ;repret -_vpaes_schedule_round ENDP - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_transform PROC PRIVATE - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 - movdqa xmm2,XMMWORD PTR[r11] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[16+r11] -DB 102,15,56,0,193 - pxor xmm0,xmm2 - DB 0F3h,0C3h ;repret -_vpaes_schedule_transform ENDP - - - - - - - - - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_mangle PROC PRIVATE - movdqa xmm4,xmm0 - movdqa xmm5,XMMWORD PTR[$L$k_mc_forward] - test rcx,rcx - jnz $L$schedule_mangle_dec - - - add rdx,16 - pxor xmm4,XMMWORD PTR[$L$k_s63] -DB 102,15,56,0,229 - movdqa xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 - - jmp $L$schedule_mangle_both -ALIGN 16 -$L$schedule_mangle_dec:: - - lea r11,QWORD PTR[$L$k_dksd] - movdqa xmm1,xmm9 - pandn xmm1,xmm4 - psrld xmm1,4 - pand xmm4,xmm9 - - movdqa xmm2,XMMWORD PTR[r11] -DB 102,15,56,0,212 - movdqa xmm3,XMMWORD PTR[16+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[32+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[48+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[64+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[80+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[96+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[112+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 - - add rdx,-16 - -$L$schedule_mangle_both:: - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,217 - add r8,-16 - and r8,030h - movdqu XMMWORD PTR[rdx],xmm3 - DB 0F3h,0C3h ;repret -_vpaes_schedule_mangle ENDP - - - - -PUBLIC vpaes_set_encrypt_key - -ALIGN 16 -vpaes_set_encrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_set_encrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$enc_key_body:: - mov eax,esi - shr eax,5 - add eax,5 - mov DWORD PTR[240+rdx],eax - - mov ecx,0 - mov r8d,030h - call _vpaes_schedule_core - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$enc_key_epilogue:: - xor eax,eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_set_encrypt_key:: -vpaes_set_encrypt_key ENDP - -PUBLIC vpaes_set_decrypt_key - -ALIGN 16 -vpaes_set_decrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_set_decrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$dec_key_body:: - mov eax,esi - shr eax,5 - add eax,5 - mov DWORD PTR[240+rdx],eax - shl eax,4 - lea rdx,QWORD PTR[16+rax*1+rdx] - - mov ecx,1 - mov r8d,esi - shr r8d,1 - and r8d,32 - xor r8d,32 - call _vpaes_schedule_core - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$dec_key_epilogue:: - xor eax,eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_set_decrypt_key:: -vpaes_set_decrypt_key ENDP - -PUBLIC vpaes_encrypt - -ALIGN 16 -vpaes_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$enc_body:: - movdqu xmm0,XMMWORD PTR[rdi] - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu XMMWORD PTR[rsi],xmm0 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_encrypt:: -vpaes_encrypt ENDP - -PUBLIC vpaes_decrypt - -ALIGN 16 -vpaes_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$dec_body:: - movdqu xmm0,XMMWORD PTR[rdi] - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu XMMWORD PTR[rsi],xmm0 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_decrypt:: -vpaes_decrypt ENDP -PUBLIC vpaes_cbc_encrypt - -ALIGN 16 -vpaes_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - xchg rdx,rcx - sub rcx,16 - jc $L$cbc_abort - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$cbc_body:: - movdqu xmm6,XMMWORD PTR[r8] - sub rsi,rdi - call _vpaes_preheat - cmp r9d,0 - je $L$cbc_dec_loop - jmp $L$cbc_enc_loop -ALIGN 16 -$L$cbc_enc_loop:: - movdqu xmm0,XMMWORD PTR[rdi] - pxor xmm0,xmm6 - call _vpaes_encrypt_core - movdqa xmm6,xmm0 - movdqu XMMWORD PTR[rdi*1+rsi],xmm0 - lea rdi,QWORD PTR[16+rdi] - sub rcx,16 - jnc $L$cbc_enc_loop - jmp $L$cbc_done -ALIGN 16 -$L$cbc_dec_loop:: - movdqu xmm0,XMMWORD PTR[rdi] - movdqa xmm7,xmm0 - call _vpaes_decrypt_core - pxor xmm0,xmm6 - movdqa xmm6,xmm7 - movdqu XMMWORD PTR[rdi*1+rsi],xmm0 - lea rdi,QWORD PTR[16+rdi] - sub rcx,16 - jnc $L$cbc_dec_loop -$L$cbc_done:: - movdqu XMMWORD PTR[r8],xmm6 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$cbc_epilogue:: -$L$cbc_abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_cbc_encrypt:: -vpaes_cbc_encrypt ENDP - - - - - - - -ALIGN 16 -_vpaes_preheat PROC PRIVATE - lea r10,QWORD PTR[$L$k_s0F] - movdqa xmm10,XMMWORD PTR[((-32))+r10] - movdqa xmm11,XMMWORD PTR[((-16))+r10] - movdqa xmm9,XMMWORD PTR[r10] - movdqa xmm13,XMMWORD PTR[48+r10] - movdqa xmm12,XMMWORD PTR[64+r10] - movdqa xmm15,XMMWORD PTR[80+r10] - movdqa xmm14,XMMWORD PTR[96+r10] - DB 0F3h,0C3h ;repret -_vpaes_preheat ENDP - - - - - - -ALIGN 64 -_vpaes_consts:: -$L$k_inv:: - DQ 00E05060F0D080180h,0040703090A0B0C02h - DQ 001040A060F0B0780h,0030D0E0C02050809h - -$L$k_s0F:: - DQ 00F0F0F0F0F0F0F0Fh,00F0F0F0F0F0F0F0Fh - -$L$k_ipt:: - DQ 0C2B2E8985A2A7000h,0CABAE09052227808h - DQ 04C01307D317C4D00h,0CD80B1FCB0FDCC81h - -$L$k_sb1:: - DQ 0B19BE18FCB503E00h,0A5DF7A6E142AF544h - DQ 03618D415FAE22300h,03BF7CCC10D2ED9EFh -$L$k_sb2:: - DQ 0E27A93C60B712400h,05EB7E955BC982FCDh - DQ 069EB88400AE12900h,0C2A163C8AB82234Ah -$L$k_sbo:: - DQ 0D0D26D176FBDC700h,015AABF7AC502A878h - DQ 0CFE474A55FBB6A00h,08E1E90D1412B35FAh - -$L$k_mc_forward:: - DQ 00407060500030201h,00C0F0E0D080B0A09h - DQ 0080B0A0904070605h,0000302010C0F0E0Dh - DQ 00C0F0E0D080B0A09h,00407060500030201h - DQ 0000302010C0F0E0Dh,0080B0A0904070605h - -$L$k_mc_backward:: - DQ 00605040702010003h,00E0D0C0F0A09080Bh - DQ 0020100030E0D0C0Fh,00A09080B06050407h - DQ 00E0D0C0F0A09080Bh,00605040702010003h - DQ 00A09080B06050407h,0020100030E0D0C0Fh - -$L$k_sr:: - DQ 00706050403020100h,00F0E0D0C0B0A0908h - DQ 0030E09040F0A0500h,00B06010C07020D08h - DQ 00F060D040B020900h,0070E050C030A0108h - DQ 00B0E0104070A0D00h,00306090C0F020508h - -$L$k_rcon:: - DQ 01F8391B9AF9DEEB6h,0702A98084D7C7D81h - -$L$k_s63:: - DQ 05B5B5B5B5B5B5B5Bh,05B5B5B5B5B5B5B5Bh - -$L$k_opt:: - DQ 0FF9F4929D6B66000h,0F7974121DEBE6808h - DQ 001EDBD5150BCEC00h,0E10D5DB1B05C0CE0h - -$L$k_deskew:: - DQ 007E4A34047A4E300h,01DFEB95A5DBEF91Ah - DQ 05F36B5DC83EA6900h,02841C2ABF49D1E77h - - - - - -$L$k_dksd:: - DQ 0FEB91A5DA3E44700h,00740E3A45A1DBEF9h - DQ 041C277F4B5368300h,05FDC69EAAB289D1Eh -$L$k_dksb:: - DQ 09A4FCA1F8550D500h,003D653861CC94C99h - DQ 0115BEDA7B6FC4A00h,0D993256F7E3482C8h -$L$k_dkse:: - DQ 0D5031CCA1FC9D600h,053859A4C994F5086h - DQ 0A23196054FDC7BE8h,0CD5EF96A20B31487h -$L$k_dks9:: - DQ 0B6116FC87ED9A700h,04AED933482255BFCh - DQ 04576516227143300h,08BB89FACE9DAFDCEh - - - - - -$L$k_dipt:: - DQ 00F505B040B545F00h,0154A411E114E451Ah - DQ 086E383E660056500h,012771772F491F194h - -$L$k_dsb9:: - DQ 0851C03539A86D600h,0CAD51F504F994CC9h - DQ 0C03B1789ECD74900h,0725E2C9EB2FBA565h -$L$k_dsbd:: - DQ 07D57CCDFE6B1A200h,0F56E9B13882A4439h - DQ 03CE2FAF724C6CB00h,02931180D15DEEFD3h -$L$k_dsbb:: - DQ 0D022649296B44200h,0602646F6B0F2D404h - DQ 0C19498A6CD596700h,0F3FF0C3E3255AA6Bh -$L$k_dsbe:: - DQ 046F2929626D4D000h,02242600464B4F6B0h - DQ 00C55A6CDFFAAC100h,09467F36B98593E32h -$L$k_dsbo:: - DQ 01387EA537EF94000h,0C7AA6DB9D4943E2Dh - DQ 012D7560F93441D00h,0CA4B8159D8C58E9Ch -DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54 -DB 52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97 -DB 109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32 -DB 85,110,105,118,101,114,115,105,116,121,41,0 -ALIGN 64 - -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rsi,QWORD PTR[16+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[184+rax] - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_vpaes_set_encrypt_key - DD imagerel $L$SEH_end_vpaes_set_encrypt_key - DD imagerel $L$SEH_info_vpaes_set_encrypt_key - - DD imagerel $L$SEH_begin_vpaes_set_decrypt_key - DD imagerel $L$SEH_end_vpaes_set_decrypt_key - DD imagerel $L$SEH_info_vpaes_set_decrypt_key - - DD imagerel $L$SEH_begin_vpaes_encrypt - DD imagerel $L$SEH_end_vpaes_encrypt - DD imagerel $L$SEH_info_vpaes_encrypt - - DD imagerel $L$SEH_begin_vpaes_decrypt - DD imagerel $L$SEH_end_vpaes_decrypt - DD imagerel $L$SEH_info_vpaes_decrypt - - DD imagerel $L$SEH_begin_vpaes_cbc_encrypt - DD imagerel $L$SEH_end_vpaes_cbc_encrypt - DD imagerel $L$SEH_info_vpaes_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_vpaes_set_encrypt_key:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc_key_body,imagerel $L$enc_key_epilogue -$L$SEH_info_vpaes_set_decrypt_key:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec_key_body,imagerel $L$dec_key_epilogue -$L$SEH_info_vpaes_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc_body,imagerel $L$enc_epilogue -$L$SEH_info_vpaes_decrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec_body,imagerel $L$dec_epilogue -$L$SEH_info_vpaes_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$cbc_body,imagerel $L$cbc_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/bn/rsaz-avx2.asm b/deps/openssl/asm/x64-win32-masm/bn/rsaz-avx2.asm deleted file mode 100644 index 40ce01fdc61a9b..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/bn/rsaz-avx2.asm +++ /dev/null @@ -1,1931 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC rsaz_1024_sqr_avx2 - -ALIGN 64 -rsaz_1024_sqr_avx2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_1024_sqr_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - lea rax,QWORD PTR[rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - vzeroupper - lea rsp,QWORD PTR[((-168))+rsp] - vmovaps XMMWORD PTR[(-216)+rax],xmm6 - vmovaps XMMWORD PTR[(-200)+rax],xmm7 - vmovaps XMMWORD PTR[(-184)+rax],xmm8 - vmovaps XMMWORD PTR[(-168)+rax],xmm9 - vmovaps XMMWORD PTR[(-152)+rax],xmm10 - vmovaps XMMWORD PTR[(-136)+rax],xmm11 - vmovaps XMMWORD PTR[(-120)+rax],xmm12 - vmovaps XMMWORD PTR[(-104)+rax],xmm13 - vmovaps XMMWORD PTR[(-88)+rax],xmm14 - vmovaps XMMWORD PTR[(-72)+rax],xmm15 -$L$sqr_1024_body:: - mov rbp,rax - mov r13,rdx - sub rsp,832 - mov r15,r13 - sub rdi,-128 - sub rsi,-128 - sub r13,-128 - - and r15,4095 - add r15,32*10 - shr r15,12 - vpxor ymm9,ymm9,ymm9 - jz $L$sqr_1024_no_n_copy - - - - - - sub rsp,32*10 - vmovdqu ymm0,YMMWORD PTR[((0-128))+r13] - and rsp,-2048 - vmovdqu ymm1,YMMWORD PTR[((32-128))+r13] - vmovdqu ymm2,YMMWORD PTR[((64-128))+r13] - vmovdqu ymm3,YMMWORD PTR[((96-128))+r13] - vmovdqu ymm4,YMMWORD PTR[((128-128))+r13] - vmovdqu ymm5,YMMWORD PTR[((160-128))+r13] - vmovdqu ymm6,YMMWORD PTR[((192-128))+r13] - vmovdqu ymm7,YMMWORD PTR[((224-128))+r13] - vmovdqu ymm8,YMMWORD PTR[((256-128))+r13] - lea r13,QWORD PTR[((832+128))+rsp] - vmovdqu YMMWORD PTR[(0-128)+r13],ymm0 - vmovdqu YMMWORD PTR[(32-128)+r13],ymm1 - vmovdqu YMMWORD PTR[(64-128)+r13],ymm2 - vmovdqu YMMWORD PTR[(96-128)+r13],ymm3 - vmovdqu YMMWORD PTR[(128-128)+r13],ymm4 - vmovdqu YMMWORD PTR[(160-128)+r13],ymm5 - vmovdqu YMMWORD PTR[(192-128)+r13],ymm6 - vmovdqu YMMWORD PTR[(224-128)+r13],ymm7 - vmovdqu YMMWORD PTR[(256-128)+r13],ymm8 - vmovdqu YMMWORD PTR[(288-128)+r13],ymm9 - -$L$sqr_1024_no_n_copy:: - and rsp,-1024 - - vmovdqu ymm1,YMMWORD PTR[((32-128))+rsi] - vmovdqu ymm2,YMMWORD PTR[((64-128))+rsi] - vmovdqu ymm3,YMMWORD PTR[((96-128))+rsi] - vmovdqu ymm4,YMMWORD PTR[((128-128))+rsi] - vmovdqu ymm5,YMMWORD PTR[((160-128))+rsi] - vmovdqu ymm6,YMMWORD PTR[((192-128))+rsi] - vmovdqu ymm7,YMMWORD PTR[((224-128))+rsi] - vmovdqu ymm8,YMMWORD PTR[((256-128))+rsi] - - lea rbx,QWORD PTR[192+rsp] - vmovdqu ymm15,YMMWORD PTR[$L$and_mask] - jmp $L$OOP_GRANDE_SQR_1024 - -ALIGN 32 -$L$OOP_GRANDE_SQR_1024:: - lea r9,QWORD PTR[((576+128))+rsp] - lea r12,QWORD PTR[448+rsp] - - - - - vpaddq ymm1,ymm1,ymm1 - vpbroadcastq ymm10,QWORD PTR[((0-128))+rsi] - vpaddq ymm2,ymm2,ymm2 - vmovdqa YMMWORD PTR[(0-128)+r9],ymm1 - vpaddq ymm3,ymm3,ymm3 - vmovdqa YMMWORD PTR[(32-128)+r9],ymm2 - vpaddq ymm4,ymm4,ymm4 - vmovdqa YMMWORD PTR[(64-128)+r9],ymm3 - vpaddq ymm5,ymm5,ymm5 - vmovdqa YMMWORD PTR[(96-128)+r9],ymm4 - vpaddq ymm6,ymm6,ymm6 - vmovdqa YMMWORD PTR[(128-128)+r9],ymm5 - vpaddq ymm7,ymm7,ymm7 - vmovdqa YMMWORD PTR[(160-128)+r9],ymm6 - vpaddq ymm8,ymm8,ymm8 - vmovdqa YMMWORD PTR[(192-128)+r9],ymm7 - vpxor ymm9,ymm9,ymm9 - vmovdqa YMMWORD PTR[(224-128)+r9],ymm8 - - vpmuludq ymm0,ymm10,YMMWORD PTR[((0-128))+rsi] - vpbroadcastq ymm11,QWORD PTR[((32-128))+rsi] - vmovdqu YMMWORD PTR[(288-192)+rbx],ymm9 - vpmuludq ymm1,ymm1,ymm10 - vmovdqu YMMWORD PTR[(320-448)+r12],ymm9 - vpmuludq ymm2,ymm2,ymm10 - vmovdqu YMMWORD PTR[(352-448)+r12],ymm9 - vpmuludq ymm3,ymm3,ymm10 - vmovdqu YMMWORD PTR[(384-448)+r12],ymm9 - vpmuludq ymm4,ymm4,ymm10 - vmovdqu YMMWORD PTR[(416-448)+r12],ymm9 - vpmuludq ymm5,ymm5,ymm10 - vmovdqu YMMWORD PTR[(448-448)+r12],ymm9 - vpmuludq ymm6,ymm6,ymm10 - vmovdqu YMMWORD PTR[(480-448)+r12],ymm9 - vpmuludq ymm7,ymm7,ymm10 - vmovdqu YMMWORD PTR[(512-448)+r12],ymm9 - vpmuludq ymm8,ymm8,ymm10 - vpbroadcastq ymm10,QWORD PTR[((64-128))+rsi] - vmovdqu YMMWORD PTR[(544-448)+r12],ymm9 - - mov r15,rsi - mov r14d,4 - jmp $L$sqr_entry_1024 -ALIGN 32 -$L$OOP_SQR_1024:: - vpbroadcastq ymm11,QWORD PTR[((32-128))+r15] - vpmuludq ymm0,ymm10,YMMWORD PTR[((0-128))+rsi] - vpaddq ymm0,ymm0,YMMWORD PTR[((0-192))+rbx] - vpmuludq ymm1,ymm10,YMMWORD PTR[((0-128))+r9] - vpaddq ymm1,ymm1,YMMWORD PTR[((32-192))+rbx] - vpmuludq ymm2,ymm10,YMMWORD PTR[((32-128))+r9] - vpaddq ymm2,ymm2,YMMWORD PTR[((64-192))+rbx] - vpmuludq ymm3,ymm10,YMMWORD PTR[((64-128))+r9] - vpaddq ymm3,ymm3,YMMWORD PTR[((96-192))+rbx] - vpmuludq ymm4,ymm10,YMMWORD PTR[((96-128))+r9] - vpaddq ymm4,ymm4,YMMWORD PTR[((128-192))+rbx] - vpmuludq ymm5,ymm10,YMMWORD PTR[((128-128))+r9] - vpaddq ymm5,ymm5,YMMWORD PTR[((160-192))+rbx] - vpmuludq ymm6,ymm10,YMMWORD PTR[((160-128))+r9] - vpaddq ymm6,ymm6,YMMWORD PTR[((192-192))+rbx] - vpmuludq ymm7,ymm10,YMMWORD PTR[((192-128))+r9] - vpaddq ymm7,ymm7,YMMWORD PTR[((224-192))+rbx] - vpmuludq ymm8,ymm10,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm10,QWORD PTR[((64-128))+r15] - vpaddq ymm8,ymm8,YMMWORD PTR[((256-192))+rbx] -$L$sqr_entry_1024:: - vmovdqu YMMWORD PTR[(0-192)+rbx],ymm0 - vmovdqu YMMWORD PTR[(32-192)+rbx],ymm1 - - vpmuludq ymm12,ymm11,YMMWORD PTR[((32-128))+rsi] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm14,ymm11,YMMWORD PTR[((32-128))+r9] - vpaddq ymm3,ymm3,ymm14 - vpmuludq ymm13,ymm11,YMMWORD PTR[((64-128))+r9] - vpaddq ymm4,ymm4,ymm13 - vpmuludq ymm12,ymm11,YMMWORD PTR[((96-128))+r9] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm14,ymm11,YMMWORD PTR[((128-128))+r9] - vpaddq ymm6,ymm6,ymm14 - vpmuludq ymm13,ymm11,YMMWORD PTR[((160-128))+r9] - vpaddq ymm7,ymm7,ymm13 - vpmuludq ymm12,ymm11,YMMWORD PTR[((192-128))+r9] - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm0,ymm11,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm11,QWORD PTR[((96-128))+r15] - vpaddq ymm0,ymm0,YMMWORD PTR[((288-192))+rbx] - - vmovdqu YMMWORD PTR[(64-192)+rbx],ymm2 - vmovdqu YMMWORD PTR[(96-192)+rbx],ymm3 - - vpmuludq ymm13,ymm10,YMMWORD PTR[((64-128))+rsi] - vpaddq ymm4,ymm4,ymm13 - vpmuludq ymm12,ymm10,YMMWORD PTR[((64-128))+r9] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm14,ymm10,YMMWORD PTR[((96-128))+r9] - vpaddq ymm6,ymm6,ymm14 - vpmuludq ymm13,ymm10,YMMWORD PTR[((128-128))+r9] - vpaddq ymm7,ymm7,ymm13 - vpmuludq ymm12,ymm10,YMMWORD PTR[((160-128))+r9] - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm14,ymm10,YMMWORD PTR[((192-128))+r9] - vpaddq ymm0,ymm0,ymm14 - vpmuludq ymm1,ymm10,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm10,QWORD PTR[((128-128))+r15] - vpaddq ymm1,ymm1,YMMWORD PTR[((320-448))+r12] - - vmovdqu YMMWORD PTR[(128-192)+rbx],ymm4 - vmovdqu YMMWORD PTR[(160-192)+rbx],ymm5 - - vpmuludq ymm12,ymm11,YMMWORD PTR[((96-128))+rsi] - vpaddq ymm6,ymm6,ymm12 - vpmuludq ymm14,ymm11,YMMWORD PTR[((96-128))+r9] - vpaddq ymm7,ymm7,ymm14 - vpmuludq ymm13,ymm11,YMMWORD PTR[((128-128))+r9] - vpaddq ymm8,ymm8,ymm13 - vpmuludq ymm12,ymm11,YMMWORD PTR[((160-128))+r9] - vpaddq ymm0,ymm0,ymm12 - vpmuludq ymm14,ymm11,YMMWORD PTR[((192-128))+r9] - vpaddq ymm1,ymm1,ymm14 - vpmuludq ymm2,ymm11,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm11,QWORD PTR[((160-128))+r15] - vpaddq ymm2,ymm2,YMMWORD PTR[((352-448))+r12] - - vmovdqu YMMWORD PTR[(192-192)+rbx],ymm6 - vmovdqu YMMWORD PTR[(224-192)+rbx],ymm7 - - vpmuludq ymm12,ymm10,YMMWORD PTR[((128-128))+rsi] - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm14,ymm10,YMMWORD PTR[((128-128))+r9] - vpaddq ymm0,ymm0,ymm14 - vpmuludq ymm13,ymm10,YMMWORD PTR[((160-128))+r9] - vpaddq ymm1,ymm1,ymm13 - vpmuludq ymm12,ymm10,YMMWORD PTR[((192-128))+r9] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm3,ymm10,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm10,QWORD PTR[((192-128))+r15] - vpaddq ymm3,ymm3,YMMWORD PTR[((384-448))+r12] - - vmovdqu YMMWORD PTR[(256-192)+rbx],ymm8 - vmovdqu YMMWORD PTR[(288-192)+rbx],ymm0 - lea rbx,QWORD PTR[8+rbx] - - vpmuludq ymm13,ymm11,YMMWORD PTR[((160-128))+rsi] - vpaddq ymm1,ymm1,ymm13 - vpmuludq ymm12,ymm11,YMMWORD PTR[((160-128))+r9] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm14,ymm11,YMMWORD PTR[((192-128))+r9] - vpaddq ymm3,ymm3,ymm14 - vpmuludq ymm4,ymm11,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm11,QWORD PTR[((224-128))+r15] - vpaddq ymm4,ymm4,YMMWORD PTR[((416-448))+r12] - - vmovdqu YMMWORD PTR[(320-448)+r12],ymm1 - vmovdqu YMMWORD PTR[(352-448)+r12],ymm2 - - vpmuludq ymm12,ymm10,YMMWORD PTR[((192-128))+rsi] - vpaddq ymm3,ymm3,ymm12 - vpmuludq ymm14,ymm10,YMMWORD PTR[((192-128))+r9] - vpbroadcastq ymm0,QWORD PTR[((256-128))+r15] - vpaddq ymm4,ymm4,ymm14 - vpmuludq ymm5,ymm10,YMMWORD PTR[((224-128))+r9] - vpbroadcastq ymm10,QWORD PTR[((0+8-128))+r15] - vpaddq ymm5,ymm5,YMMWORD PTR[((448-448))+r12] - - vmovdqu YMMWORD PTR[(384-448)+r12],ymm3 - vmovdqu YMMWORD PTR[(416-448)+r12],ymm4 - lea r15,QWORD PTR[8+r15] - - vpmuludq ymm12,ymm11,YMMWORD PTR[((224-128))+rsi] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm6,ymm11,YMMWORD PTR[((224-128))+r9] - vpaddq ymm6,ymm6,YMMWORD PTR[((480-448))+r12] - - vpmuludq ymm7,ymm0,YMMWORD PTR[((256-128))+rsi] - vmovdqu YMMWORD PTR[(448-448)+r12],ymm5 - vpaddq ymm7,ymm7,YMMWORD PTR[((512-448))+r12] - vmovdqu YMMWORD PTR[(480-448)+r12],ymm6 - vmovdqu YMMWORD PTR[(512-448)+r12],ymm7 - lea r12,QWORD PTR[8+r12] - - dec r14d - jnz $L$OOP_SQR_1024 - - vmovdqu ymm8,YMMWORD PTR[256+rsp] - vmovdqu ymm1,YMMWORD PTR[288+rsp] - vmovdqu ymm2,YMMWORD PTR[320+rsp] - lea rbx,QWORD PTR[192+rsp] - - vpsrlq ymm14,ymm8,29 - vpand ymm8,ymm8,ymm15 - vpsrlq ymm11,ymm1,29 - vpand ymm1,ymm1,ymm15 - - vpermq ymm14,ymm14,093h - vpxor ymm9,ymm9,ymm9 - vpermq ymm11,ymm11,093h - - vpblendd ymm10,ymm14,ymm9,3 - vpblendd ymm14,ymm11,ymm14,3 - vpaddq ymm8,ymm8,ymm10 - vpblendd ymm11,ymm9,ymm11,3 - vpaddq ymm1,ymm1,ymm14 - vpaddq ymm2,ymm2,ymm11 - vmovdqu YMMWORD PTR[(288-192)+rbx],ymm1 - vmovdqu YMMWORD PTR[(320-192)+rbx],ymm2 - - mov rax,QWORD PTR[rsp] - mov r10,QWORD PTR[8+rsp] - mov r11,QWORD PTR[16+rsp] - mov r12,QWORD PTR[24+rsp] - vmovdqu ymm1,YMMWORD PTR[32+rsp] - vmovdqu ymm2,YMMWORD PTR[((64-192))+rbx] - vmovdqu ymm3,YMMWORD PTR[((96-192))+rbx] - vmovdqu ymm4,YMMWORD PTR[((128-192))+rbx] - vmovdqu ymm5,YMMWORD PTR[((160-192))+rbx] - vmovdqu ymm6,YMMWORD PTR[((192-192))+rbx] - vmovdqu ymm7,YMMWORD PTR[((224-192))+rbx] - - mov r9,rax - imul eax,ecx - and eax,01fffffffh - vmovd xmm12,eax - - mov rdx,rax - imul rax,QWORD PTR[((-128))+r13] - vpbroadcastq ymm12,xmm12 - add r9,rax - mov rax,rdx - imul rax,QWORD PTR[((8-128))+r13] - shr r9,29 - add r10,rax - mov rax,rdx - imul rax,QWORD PTR[((16-128))+r13] - add r10,r9 - add r11,rax - imul rdx,QWORD PTR[((24-128))+r13] - add r12,rdx - - mov rax,r10 - imul eax,ecx - and eax,01fffffffh - - mov r14d,9 - jmp $L$OOP_REDUCE_1024 - -ALIGN 32 -$L$OOP_REDUCE_1024:: - vmovd xmm13,eax - vpbroadcastq ymm13,xmm13 - - vpmuludq ymm10,ymm12,YMMWORD PTR[((32-128))+r13] - mov rdx,rax - imul rax,QWORD PTR[((-128))+r13] - vpaddq ymm1,ymm1,ymm10 - add r10,rax - vpmuludq ymm14,ymm12,YMMWORD PTR[((64-128))+r13] - mov rax,rdx - imul rax,QWORD PTR[((8-128))+r13] - vpaddq ymm2,ymm2,ymm14 - vpmuludq ymm11,ymm12,YMMWORD PTR[((96-128))+r13] -DB 067h - add r11,rax -DB 067h - mov rax,rdx - imul rax,QWORD PTR[((16-128))+r13] - shr r10,29 - vpaddq ymm3,ymm3,ymm11 - vpmuludq ymm10,ymm12,YMMWORD PTR[((128-128))+r13] - add r12,rax - add r11,r10 - vpaddq ymm4,ymm4,ymm10 - vpmuludq ymm14,ymm12,YMMWORD PTR[((160-128))+r13] - mov rax,r11 - imul eax,ecx - vpaddq ymm5,ymm5,ymm14 - vpmuludq ymm11,ymm12,YMMWORD PTR[((192-128))+r13] - and eax,01fffffffh - vpaddq ymm6,ymm6,ymm11 - vpmuludq ymm10,ymm12,YMMWORD PTR[((224-128))+r13] - vpaddq ymm7,ymm7,ymm10 - vpmuludq ymm14,ymm12,YMMWORD PTR[((256-128))+r13] - vmovd xmm12,eax - - vpaddq ymm8,ymm8,ymm14 - - vpbroadcastq ymm12,xmm12 - - vpmuludq ymm11,ymm13,YMMWORD PTR[((32-8-128))+r13] - vmovdqu ymm14,YMMWORD PTR[((96-8-128))+r13] - mov rdx,rax - imul rax,QWORD PTR[((-128))+r13] - vpaddq ymm1,ymm1,ymm11 - vpmuludq ymm10,ymm13,YMMWORD PTR[((64-8-128))+r13] - vmovdqu ymm11,YMMWORD PTR[((128-8-128))+r13] - add r11,rax - mov rax,rdx - imul rax,QWORD PTR[((8-128))+r13] - vpaddq ymm2,ymm2,ymm10 - add rax,r12 - shr r11,29 - vpmuludq ymm14,ymm14,ymm13 - vmovdqu ymm10,YMMWORD PTR[((160-8-128))+r13] - add rax,r11 - vpaddq ymm3,ymm3,ymm14 - vpmuludq ymm11,ymm11,ymm13 - vmovdqu ymm14,YMMWORD PTR[((192-8-128))+r13] -DB 067h - mov r12,rax - imul eax,ecx - vpaddq ymm4,ymm4,ymm11 - vpmuludq ymm10,ymm10,ymm13 -DB 0c4h,041h,07eh,06fh,09dh,058h,000h,000h,000h - and eax,01fffffffh - vpaddq ymm5,ymm5,ymm10 - vpmuludq ymm14,ymm14,ymm13 - vmovdqu ymm10,YMMWORD PTR[((256-8-128))+r13] - vpaddq ymm6,ymm6,ymm14 - vpmuludq ymm11,ymm11,ymm13 - vmovdqu ymm9,YMMWORD PTR[((288-8-128))+r13] - vmovd xmm0,eax - imul rax,QWORD PTR[((-128))+r13] - vpaddq ymm7,ymm7,ymm11 - vpmuludq ymm10,ymm10,ymm13 - vmovdqu ymm14,YMMWORD PTR[((32-16-128))+r13] - vpbroadcastq ymm0,xmm0 - vpaddq ymm8,ymm8,ymm10 - vpmuludq ymm9,ymm9,ymm13 - vmovdqu ymm11,YMMWORD PTR[((64-16-128))+r13] - add r12,rax - - vmovdqu ymm13,YMMWORD PTR[((32-24-128))+r13] - vpmuludq ymm14,ymm14,ymm12 - vmovdqu ymm10,YMMWORD PTR[((96-16-128))+r13] - vpaddq ymm1,ymm1,ymm14 - vpmuludq ymm13,ymm13,ymm0 - vpmuludq ymm11,ymm11,ymm12 -DB 0c4h,041h,07eh,06fh,0b5h,0f0h,0ffh,0ffh,0ffh - vpaddq ymm13,ymm13,ymm1 - vpaddq ymm2,ymm2,ymm11 - vpmuludq ymm10,ymm10,ymm12 - vmovdqu ymm11,YMMWORD PTR[((160-16-128))+r13] -DB 067h - vmovq rax,xmm13 - vmovdqu YMMWORD PTR[rsp],ymm13 - vpaddq ymm3,ymm3,ymm10 - vpmuludq ymm14,ymm14,ymm12 - vmovdqu ymm10,YMMWORD PTR[((192-16-128))+r13] - vpaddq ymm4,ymm4,ymm14 - vpmuludq ymm11,ymm11,ymm12 - vmovdqu ymm14,YMMWORD PTR[((224-16-128))+r13] - vpaddq ymm5,ymm5,ymm11 - vpmuludq ymm10,ymm10,ymm12 - vmovdqu ymm11,YMMWORD PTR[((256-16-128))+r13] - vpaddq ymm6,ymm6,ymm10 - vpmuludq ymm14,ymm14,ymm12 - shr r12,29 - vmovdqu ymm10,YMMWORD PTR[((288-16-128))+r13] - add rax,r12 - vpaddq ymm7,ymm7,ymm14 - vpmuludq ymm11,ymm11,ymm12 - - mov r9,rax - imul eax,ecx - vpaddq ymm8,ymm8,ymm11 - vpmuludq ymm10,ymm10,ymm12 - and eax,01fffffffh - vmovd xmm12,eax - vmovdqu ymm11,YMMWORD PTR[((96-24-128))+r13] -DB 067h - vpaddq ymm9,ymm9,ymm10 - vpbroadcastq ymm12,xmm12 - - vpmuludq ymm14,ymm0,YMMWORD PTR[((64-24-128))+r13] - vmovdqu ymm10,YMMWORD PTR[((128-24-128))+r13] - mov rdx,rax - imul rax,QWORD PTR[((-128))+r13] - mov r10,QWORD PTR[8+rsp] - vpaddq ymm1,ymm2,ymm14 - vpmuludq ymm11,ymm11,ymm0 - vmovdqu ymm14,YMMWORD PTR[((160-24-128))+r13] - add r9,rax - mov rax,rdx - imul rax,QWORD PTR[((8-128))+r13] -DB 067h - shr r9,29 - mov r11,QWORD PTR[16+rsp] - vpaddq ymm2,ymm3,ymm11 - vpmuludq ymm10,ymm10,ymm0 - vmovdqu ymm11,YMMWORD PTR[((192-24-128))+r13] - add r10,rax - mov rax,rdx - imul rax,QWORD PTR[((16-128))+r13] - vpaddq ymm3,ymm4,ymm10 - vpmuludq ymm14,ymm14,ymm0 - vmovdqu ymm10,YMMWORD PTR[((224-24-128))+r13] - imul rdx,QWORD PTR[((24-128))+r13] - add r11,rax - lea rax,QWORD PTR[r10*1+r9] - vpaddq ymm4,ymm5,ymm14 - vpmuludq ymm11,ymm11,ymm0 - vmovdqu ymm14,YMMWORD PTR[((256-24-128))+r13] - mov r10,rax - imul eax,ecx - vpmuludq ymm10,ymm10,ymm0 - vpaddq ymm5,ymm6,ymm11 - vmovdqu ymm11,YMMWORD PTR[((288-24-128))+r13] - and eax,01fffffffh - vpaddq ymm6,ymm7,ymm10 - vpmuludq ymm14,ymm14,ymm0 - add rdx,QWORD PTR[24+rsp] - vpaddq ymm7,ymm8,ymm14 - vpmuludq ymm11,ymm11,ymm0 - vpaddq ymm8,ymm9,ymm11 - vmovq xmm9,r12 - mov r12,rdx - - dec r14d - jnz $L$OOP_REDUCE_1024 - lea r12,QWORD PTR[448+rsp] - vpaddq ymm0,ymm13,ymm9 - vpxor ymm9,ymm9,ymm9 - - vpaddq ymm0,ymm0,YMMWORD PTR[((288-192))+rbx] - vpaddq ymm1,ymm1,YMMWORD PTR[((320-448))+r12] - vpaddq ymm2,ymm2,YMMWORD PTR[((352-448))+r12] - vpaddq ymm3,ymm3,YMMWORD PTR[((384-448))+r12] - vpaddq ymm4,ymm4,YMMWORD PTR[((416-448))+r12] - vpaddq ymm5,ymm5,YMMWORD PTR[((448-448))+r12] - vpaddq ymm6,ymm6,YMMWORD PTR[((480-448))+r12] - vpaddq ymm7,ymm7,YMMWORD PTR[((512-448))+r12] - vpaddq ymm8,ymm8,YMMWORD PTR[((544-448))+r12] - - vpsrlq ymm14,ymm0,29 - vpand ymm0,ymm0,ymm15 - vpsrlq ymm11,ymm1,29 - vpand ymm1,ymm1,ymm15 - vpsrlq ymm12,ymm2,29 - vpermq ymm14,ymm14,093h - vpand ymm2,ymm2,ymm15 - vpsrlq ymm13,ymm3,29 - vpermq ymm11,ymm11,093h - vpand ymm3,ymm3,ymm15 - vpermq ymm12,ymm12,093h - - vpblendd ymm10,ymm14,ymm9,3 - vpermq ymm13,ymm13,093h - vpblendd ymm14,ymm11,ymm14,3 - vpaddq ymm0,ymm0,ymm10 - vpblendd ymm11,ymm12,ymm11,3 - vpaddq ymm1,ymm1,ymm14 - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm2,ymm2,ymm11 - vpblendd ymm13,ymm9,ymm13,3 - vpaddq ymm3,ymm3,ymm12 - vpaddq ymm4,ymm4,ymm13 - - vpsrlq ymm14,ymm0,29 - vpand ymm0,ymm0,ymm15 - vpsrlq ymm11,ymm1,29 - vpand ymm1,ymm1,ymm15 - vpsrlq ymm12,ymm2,29 - vpermq ymm14,ymm14,093h - vpand ymm2,ymm2,ymm15 - vpsrlq ymm13,ymm3,29 - vpermq ymm11,ymm11,093h - vpand ymm3,ymm3,ymm15 - vpermq ymm12,ymm12,093h - - vpblendd ymm10,ymm14,ymm9,3 - vpermq ymm13,ymm13,093h - vpblendd ymm14,ymm11,ymm14,3 - vpaddq ymm0,ymm0,ymm10 - vpblendd ymm11,ymm12,ymm11,3 - vpaddq ymm1,ymm1,ymm14 - vmovdqu YMMWORD PTR[(0-128)+rdi],ymm0 - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm2,ymm2,ymm11 - vmovdqu YMMWORD PTR[(32-128)+rdi],ymm1 - vpblendd ymm13,ymm9,ymm13,3 - vpaddq ymm3,ymm3,ymm12 - vmovdqu YMMWORD PTR[(64-128)+rdi],ymm2 - vpaddq ymm4,ymm4,ymm13 - vmovdqu YMMWORD PTR[(96-128)+rdi],ymm3 - vpsrlq ymm14,ymm4,29 - vpand ymm4,ymm4,ymm15 - vpsrlq ymm11,ymm5,29 - vpand ymm5,ymm5,ymm15 - vpsrlq ymm12,ymm6,29 - vpermq ymm14,ymm14,093h - vpand ymm6,ymm6,ymm15 - vpsrlq ymm13,ymm7,29 - vpermq ymm11,ymm11,093h - vpand ymm7,ymm7,ymm15 - vpsrlq ymm0,ymm8,29 - vpermq ymm12,ymm12,093h - vpand ymm8,ymm8,ymm15 - vpermq ymm13,ymm13,093h - - vpblendd ymm10,ymm14,ymm9,3 - vpermq ymm0,ymm0,093h - vpblendd ymm14,ymm11,ymm14,3 - vpaddq ymm4,ymm4,ymm10 - vpblendd ymm11,ymm12,ymm11,3 - vpaddq ymm5,ymm5,ymm14 - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm6,ymm6,ymm11 - vpblendd ymm13,ymm0,ymm13,3 - vpaddq ymm7,ymm7,ymm12 - vpaddq ymm8,ymm8,ymm13 - - vpsrlq ymm14,ymm4,29 - vpand ymm4,ymm4,ymm15 - vpsrlq ymm11,ymm5,29 - vpand ymm5,ymm5,ymm15 - vpsrlq ymm12,ymm6,29 - vpermq ymm14,ymm14,093h - vpand ymm6,ymm6,ymm15 - vpsrlq ymm13,ymm7,29 - vpermq ymm11,ymm11,093h - vpand ymm7,ymm7,ymm15 - vpsrlq ymm0,ymm8,29 - vpermq ymm12,ymm12,093h - vpand ymm8,ymm8,ymm15 - vpermq ymm13,ymm13,093h - - vpblendd ymm10,ymm14,ymm9,3 - vpermq ymm0,ymm0,093h - vpblendd ymm14,ymm11,ymm14,3 - vpaddq ymm4,ymm4,ymm10 - vpblendd ymm11,ymm12,ymm11,3 - vpaddq ymm5,ymm5,ymm14 - vmovdqu YMMWORD PTR[(128-128)+rdi],ymm4 - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm6,ymm6,ymm11 - vmovdqu YMMWORD PTR[(160-128)+rdi],ymm5 - vpblendd ymm13,ymm0,ymm13,3 - vpaddq ymm7,ymm7,ymm12 - vmovdqu YMMWORD PTR[(192-128)+rdi],ymm6 - vpaddq ymm8,ymm8,ymm13 - vmovdqu YMMWORD PTR[(224-128)+rdi],ymm7 - vmovdqu YMMWORD PTR[(256-128)+rdi],ymm8 - - mov rsi,rdi - dec r8d - jne $L$OOP_GRANDE_SQR_1024 - - vzeroall - mov rax,rbp - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$sqr_1024_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_1024_sqr_avx2:: -rsaz_1024_sqr_avx2 ENDP -PUBLIC rsaz_1024_mul_avx2 - -ALIGN 64 -rsaz_1024_mul_avx2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_1024_mul_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - lea rax,QWORD PTR[rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - vzeroupper - lea rsp,QWORD PTR[((-168))+rsp] - vmovaps XMMWORD PTR[(-216)+rax],xmm6 - vmovaps XMMWORD PTR[(-200)+rax],xmm7 - vmovaps XMMWORD PTR[(-184)+rax],xmm8 - vmovaps XMMWORD PTR[(-168)+rax],xmm9 - vmovaps XMMWORD PTR[(-152)+rax],xmm10 - vmovaps XMMWORD PTR[(-136)+rax],xmm11 - vmovaps XMMWORD PTR[(-120)+rax],xmm12 - vmovaps XMMWORD PTR[(-104)+rax],xmm13 - vmovaps XMMWORD PTR[(-88)+rax],xmm14 - vmovaps XMMWORD PTR[(-72)+rax],xmm15 -$L$mul_1024_body:: - mov rbp,rax - vzeroall - mov r13,rdx - sub rsp,64 - - - - - - -DB 067h,067h - mov r15,rsi - and r15,4095 - add r15,32*10 - shr r15,12 - mov r15,rsi - cmovnz rsi,r13 - cmovnz r13,r15 - - mov r15,rcx - sub rsi,-128 - sub rcx,-128 - sub rdi,-128 - - and r15,4095 - add r15,32*10 -DB 067h,067h - shr r15,12 - jz $L$mul_1024_no_n_copy - - - - - - sub rsp,32*10 - vmovdqu ymm0,YMMWORD PTR[((0-128))+rcx] - and rsp,-512 - vmovdqu ymm1,YMMWORD PTR[((32-128))+rcx] - vmovdqu ymm2,YMMWORD PTR[((64-128))+rcx] - vmovdqu ymm3,YMMWORD PTR[((96-128))+rcx] - vmovdqu ymm4,YMMWORD PTR[((128-128))+rcx] - vmovdqu ymm5,YMMWORD PTR[((160-128))+rcx] - vmovdqu ymm6,YMMWORD PTR[((192-128))+rcx] - vmovdqu ymm7,YMMWORD PTR[((224-128))+rcx] - vmovdqu ymm8,YMMWORD PTR[((256-128))+rcx] - lea rcx,QWORD PTR[((64+128))+rsp] - vmovdqu YMMWORD PTR[(0-128)+rcx],ymm0 - vpxor ymm0,ymm0,ymm0 - vmovdqu YMMWORD PTR[(32-128)+rcx],ymm1 - vpxor ymm1,ymm1,ymm1 - vmovdqu YMMWORD PTR[(64-128)+rcx],ymm2 - vpxor ymm2,ymm2,ymm2 - vmovdqu YMMWORD PTR[(96-128)+rcx],ymm3 - vpxor ymm3,ymm3,ymm3 - vmovdqu YMMWORD PTR[(128-128)+rcx],ymm4 - vpxor ymm4,ymm4,ymm4 - vmovdqu YMMWORD PTR[(160-128)+rcx],ymm5 - vpxor ymm5,ymm5,ymm5 - vmovdqu YMMWORD PTR[(192-128)+rcx],ymm6 - vpxor ymm6,ymm6,ymm6 - vmovdqu YMMWORD PTR[(224-128)+rcx],ymm7 - vpxor ymm7,ymm7,ymm7 - vmovdqu YMMWORD PTR[(256-128)+rcx],ymm8 - vmovdqa ymm8,ymm0 - vmovdqu YMMWORD PTR[(288-128)+rcx],ymm9 -$L$mul_1024_no_n_copy:: - and rsp,-64 - - mov rbx,QWORD PTR[r13] - vpbroadcastq ymm10,QWORD PTR[r13] - vmovdqu YMMWORD PTR[rsp],ymm0 - xor r9,r9 -DB 067h - xor r10,r10 - xor r11,r11 - xor r12,r12 - - vmovdqu ymm15,YMMWORD PTR[$L$and_mask] - mov r14d,9 - vmovdqu YMMWORD PTR[(288-128)+rdi],ymm9 - jmp $L$oop_mul_1024 - -ALIGN 32 -$L$oop_mul_1024:: - vpsrlq ymm9,ymm3,29 - mov rax,rbx - imul rax,QWORD PTR[((-128))+rsi] - add rax,r9 - mov r10,rbx - imul r10,QWORD PTR[((8-128))+rsi] - add r10,QWORD PTR[8+rsp] - - mov r9,rax - imul eax,r8d - and eax,01fffffffh - - mov r11,rbx - imul r11,QWORD PTR[((16-128))+rsi] - add r11,QWORD PTR[16+rsp] - - mov r12,rbx - imul r12,QWORD PTR[((24-128))+rsi] - add r12,QWORD PTR[24+rsp] - vpmuludq ymm0,ymm10,YMMWORD PTR[((32-128))+rsi] - vmovd xmm11,eax - vpaddq ymm1,ymm1,ymm0 - vpmuludq ymm12,ymm10,YMMWORD PTR[((64-128))+rsi] - vpbroadcastq ymm11,xmm11 - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm13,ymm10,YMMWORD PTR[((96-128))+rsi] - vpand ymm3,ymm3,ymm15 - vpaddq ymm3,ymm3,ymm13 - vpmuludq ymm0,ymm10,YMMWORD PTR[((128-128))+rsi] - vpaddq ymm4,ymm4,ymm0 - vpmuludq ymm12,ymm10,YMMWORD PTR[((160-128))+rsi] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm13,ymm10,YMMWORD PTR[((192-128))+rsi] - vpaddq ymm6,ymm6,ymm13 - vpmuludq ymm0,ymm10,YMMWORD PTR[((224-128))+rsi] - vpermq ymm9,ymm9,093h - vpaddq ymm7,ymm7,ymm0 - vpmuludq ymm12,ymm10,YMMWORD PTR[((256-128))+rsi] - vpbroadcastq ymm10,QWORD PTR[8+r13] - vpaddq ymm8,ymm8,ymm12 - - mov rdx,rax - imul rax,QWORD PTR[((-128))+rcx] - add r9,rax - mov rax,rdx - imul rax,QWORD PTR[((8-128))+rcx] - add r10,rax - mov rax,rdx - imul rax,QWORD PTR[((16-128))+rcx] - add r11,rax - shr r9,29 - imul rdx,QWORD PTR[((24-128))+rcx] - add r12,rdx - add r10,r9 - - vpmuludq ymm13,ymm11,YMMWORD PTR[((32-128))+rcx] - vmovq rbx,xmm10 - vpaddq ymm1,ymm1,ymm13 - vpmuludq ymm0,ymm11,YMMWORD PTR[((64-128))+rcx] - vpaddq ymm2,ymm2,ymm0 - vpmuludq ymm12,ymm11,YMMWORD PTR[((96-128))+rcx] - vpaddq ymm3,ymm3,ymm12 - vpmuludq ymm13,ymm11,YMMWORD PTR[((128-128))+rcx] - vpaddq ymm4,ymm4,ymm13 - vpmuludq ymm0,ymm11,YMMWORD PTR[((160-128))+rcx] - vpaddq ymm5,ymm5,ymm0 - vpmuludq ymm12,ymm11,YMMWORD PTR[((192-128))+rcx] - vpaddq ymm6,ymm6,ymm12 - vpmuludq ymm13,ymm11,YMMWORD PTR[((224-128))+rcx] - vpblendd ymm12,ymm9,ymm14,3 - vpaddq ymm7,ymm7,ymm13 - vpmuludq ymm0,ymm11,YMMWORD PTR[((256-128))+rcx] - vpaddq ymm3,ymm3,ymm12 - vpaddq ymm8,ymm8,ymm0 - - mov rax,rbx - imul rax,QWORD PTR[((-128))+rsi] - add r10,rax - vmovdqu ymm12,YMMWORD PTR[((-8+32-128))+rsi] - mov rax,rbx - imul rax,QWORD PTR[((8-128))+rsi] - add r11,rax - vmovdqu ymm13,YMMWORD PTR[((-8+64-128))+rsi] - - mov rax,r10 - vpblendd ymm9,ymm9,ymm14,0fch - imul eax,r8d - vpaddq ymm4,ymm4,ymm9 - and eax,01fffffffh - - imul rbx,QWORD PTR[((16-128))+rsi] - add r12,rbx - vpmuludq ymm12,ymm12,ymm10 - vmovd xmm11,eax - vmovdqu ymm0,YMMWORD PTR[((-8+96-128))+rsi] - vpaddq ymm1,ymm1,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vpbroadcastq ymm11,xmm11 - vmovdqu ymm12,YMMWORD PTR[((-8+128-128))+rsi] - vpaddq ymm2,ymm2,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-8+160-128))+rsi] - vpaddq ymm3,ymm3,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vmovdqu ymm0,YMMWORD PTR[((-8+192-128))+rsi] - vpaddq ymm4,ymm4,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vmovdqu ymm12,YMMWORD PTR[((-8+224-128))+rsi] - vpaddq ymm5,ymm5,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-8+256-128))+rsi] - vpaddq ymm6,ymm6,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vmovdqu ymm9,YMMWORD PTR[((-8+288-128))+rsi] - vpaddq ymm7,ymm7,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vpaddq ymm8,ymm8,ymm13 - vpmuludq ymm9,ymm9,ymm10 - vpbroadcastq ymm10,QWORD PTR[16+r13] - - mov rdx,rax - imul rax,QWORD PTR[((-128))+rcx] - add r10,rax - vmovdqu ymm0,YMMWORD PTR[((-8+32-128))+rcx] - mov rax,rdx - imul rax,QWORD PTR[((8-128))+rcx] - add r11,rax - vmovdqu ymm12,YMMWORD PTR[((-8+64-128))+rcx] - shr r10,29 - imul rdx,QWORD PTR[((16-128))+rcx] - add r12,rdx - add r11,r10 - - vpmuludq ymm0,ymm0,ymm11 - vmovq rbx,xmm10 - vmovdqu ymm13,YMMWORD PTR[((-8+96-128))+rcx] - vpaddq ymm1,ymm1,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-8+128-128))+rcx] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-8+160-128))+rcx] - vpaddq ymm3,ymm3,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-8+192-128))+rcx] - vpaddq ymm4,ymm4,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-8+224-128))+rcx] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-8+256-128))+rcx] - vpaddq ymm6,ymm6,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-8+288-128))+rcx] - vpaddq ymm7,ymm7,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vpaddq ymm9,ymm9,ymm13 - - vmovdqu ymm0,YMMWORD PTR[((-16+32-128))+rsi] - mov rax,rbx - imul rax,QWORD PTR[((-128))+rsi] - add rax,r11 - - vmovdqu ymm12,YMMWORD PTR[((-16+64-128))+rsi] - mov r11,rax - imul eax,r8d - and eax,01fffffffh - - imul rbx,QWORD PTR[((8-128))+rsi] - add r12,rbx - vpmuludq ymm0,ymm0,ymm10 - vmovd xmm11,eax - vmovdqu ymm13,YMMWORD PTR[((-16+96-128))+rsi] - vpaddq ymm1,ymm1,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vpbroadcastq ymm11,xmm11 - vmovdqu ymm0,YMMWORD PTR[((-16+128-128))+rsi] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vmovdqu ymm12,YMMWORD PTR[((-16+160-128))+rsi] - vpaddq ymm3,ymm3,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-16+192-128))+rsi] - vpaddq ymm4,ymm4,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vmovdqu ymm0,YMMWORD PTR[((-16+224-128))+rsi] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vmovdqu ymm12,YMMWORD PTR[((-16+256-128))+rsi] - vpaddq ymm6,ymm6,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-16+288-128))+rsi] - vpaddq ymm7,ymm7,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vpbroadcastq ymm10,QWORD PTR[24+r13] - vpaddq ymm9,ymm9,ymm13 - - vmovdqu ymm0,YMMWORD PTR[((-16+32-128))+rcx] - mov rdx,rax - imul rax,QWORD PTR[((-128))+rcx] - add r11,rax - vmovdqu ymm12,YMMWORD PTR[((-16+64-128))+rcx] - imul rdx,QWORD PTR[((8-128))+rcx] - add r12,rdx - shr r11,29 - - vpmuludq ymm0,ymm0,ymm11 - vmovq rbx,xmm10 - vmovdqu ymm13,YMMWORD PTR[((-16+96-128))+rcx] - vpaddq ymm1,ymm1,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-16+128-128))+rcx] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-16+160-128))+rcx] - vpaddq ymm3,ymm3,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-16+192-128))+rcx] - vpaddq ymm4,ymm4,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-16+224-128))+rcx] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-16+256-128))+rcx] - vpaddq ymm6,ymm6,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-16+288-128))+rcx] - vpaddq ymm7,ymm7,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-24+32-128))+rsi] - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-24+64-128))+rsi] - vpaddq ymm9,ymm9,ymm13 - - add r12,r11 - imul rbx,QWORD PTR[((-128))+rsi] - add r12,rbx - - mov rax,r12 - imul eax,r8d - and eax,01fffffffh - - vpmuludq ymm0,ymm0,ymm10 - vmovd xmm11,eax - vmovdqu ymm13,YMMWORD PTR[((-24+96-128))+rsi] - vpaddq ymm1,ymm1,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vpbroadcastq ymm11,xmm11 - vmovdqu ymm0,YMMWORD PTR[((-24+128-128))+rsi] - vpaddq ymm2,ymm2,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vmovdqu ymm12,YMMWORD PTR[((-24+160-128))+rsi] - vpaddq ymm3,ymm3,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-24+192-128))+rsi] - vpaddq ymm4,ymm4,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vmovdqu ymm0,YMMWORD PTR[((-24+224-128))+rsi] - vpaddq ymm5,ymm5,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vmovdqu ymm12,YMMWORD PTR[((-24+256-128))+rsi] - vpaddq ymm6,ymm6,ymm13 - vpmuludq ymm0,ymm0,ymm10 - vmovdqu ymm13,YMMWORD PTR[((-24+288-128))+rsi] - vpaddq ymm7,ymm7,ymm0 - vpmuludq ymm12,ymm12,ymm10 - vpaddq ymm8,ymm8,ymm12 - vpmuludq ymm13,ymm13,ymm10 - vpbroadcastq ymm10,QWORD PTR[32+r13] - vpaddq ymm9,ymm9,ymm13 - add r13,32 - - vmovdqu ymm0,YMMWORD PTR[((-24+32-128))+rcx] - imul rax,QWORD PTR[((-128))+rcx] - add r12,rax - shr r12,29 - - vmovdqu ymm12,YMMWORD PTR[((-24+64-128))+rcx] - vpmuludq ymm0,ymm0,ymm11 - vmovq rbx,xmm10 - vmovdqu ymm13,YMMWORD PTR[((-24+96-128))+rcx] - vpaddq ymm0,ymm1,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu YMMWORD PTR[rsp],ymm0 - vpaddq ymm1,ymm2,ymm12 - vmovdqu ymm0,YMMWORD PTR[((-24+128-128))+rcx] - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-24+160-128))+rcx] - vpaddq ymm2,ymm3,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-24+192-128))+rcx] - vpaddq ymm3,ymm4,ymm0 - vpmuludq ymm12,ymm12,ymm11 - vmovdqu ymm0,YMMWORD PTR[((-24+224-128))+rcx] - vpaddq ymm4,ymm5,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovdqu ymm12,YMMWORD PTR[((-24+256-128))+rcx] - vpaddq ymm5,ymm6,ymm13 - vpmuludq ymm0,ymm0,ymm11 - vmovdqu ymm13,YMMWORD PTR[((-24+288-128))+rcx] - mov r9,r12 - vpaddq ymm6,ymm7,ymm0 - vpmuludq ymm12,ymm12,ymm11 - add r9,QWORD PTR[rsp] - vpaddq ymm7,ymm8,ymm12 - vpmuludq ymm13,ymm13,ymm11 - vmovq xmm12,r12 - vpaddq ymm8,ymm9,ymm13 - - dec r14d - jnz $L$oop_mul_1024 - vpaddq ymm0,ymm12,YMMWORD PTR[rsp] - - vpsrlq ymm12,ymm0,29 - vpand ymm0,ymm0,ymm15 - vpsrlq ymm13,ymm1,29 - vpand ymm1,ymm1,ymm15 - vpsrlq ymm10,ymm2,29 - vpermq ymm12,ymm12,093h - vpand ymm2,ymm2,ymm15 - vpsrlq ymm11,ymm3,29 - vpermq ymm13,ymm13,093h - vpand ymm3,ymm3,ymm15 - - vpblendd ymm9,ymm12,ymm14,3 - vpermq ymm10,ymm10,093h - vpblendd ymm12,ymm13,ymm12,3 - vpermq ymm11,ymm11,093h - vpaddq ymm0,ymm0,ymm9 - vpblendd ymm13,ymm10,ymm13,3 - vpaddq ymm1,ymm1,ymm12 - vpblendd ymm10,ymm11,ymm10,3 - vpaddq ymm2,ymm2,ymm13 - vpblendd ymm11,ymm14,ymm11,3 - vpaddq ymm3,ymm3,ymm10 - vpaddq ymm4,ymm4,ymm11 - - vpsrlq ymm12,ymm0,29 - vpand ymm0,ymm0,ymm15 - vpsrlq ymm13,ymm1,29 - vpand ymm1,ymm1,ymm15 - vpsrlq ymm10,ymm2,29 - vpermq ymm12,ymm12,093h - vpand ymm2,ymm2,ymm15 - vpsrlq ymm11,ymm3,29 - vpermq ymm13,ymm13,093h - vpand ymm3,ymm3,ymm15 - vpermq ymm10,ymm10,093h - - vpblendd ymm9,ymm12,ymm14,3 - vpermq ymm11,ymm11,093h - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm0,ymm0,ymm9 - vpblendd ymm13,ymm10,ymm13,3 - vpaddq ymm1,ymm1,ymm12 - vpblendd ymm10,ymm11,ymm10,3 - vpaddq ymm2,ymm2,ymm13 - vpblendd ymm11,ymm14,ymm11,3 - vpaddq ymm3,ymm3,ymm10 - vpaddq ymm4,ymm4,ymm11 - - vmovdqu YMMWORD PTR[(0-128)+rdi],ymm0 - vmovdqu YMMWORD PTR[(32-128)+rdi],ymm1 - vmovdqu YMMWORD PTR[(64-128)+rdi],ymm2 - vmovdqu YMMWORD PTR[(96-128)+rdi],ymm3 - vpsrlq ymm12,ymm4,29 - vpand ymm4,ymm4,ymm15 - vpsrlq ymm13,ymm5,29 - vpand ymm5,ymm5,ymm15 - vpsrlq ymm10,ymm6,29 - vpermq ymm12,ymm12,093h - vpand ymm6,ymm6,ymm15 - vpsrlq ymm11,ymm7,29 - vpermq ymm13,ymm13,093h - vpand ymm7,ymm7,ymm15 - vpsrlq ymm0,ymm8,29 - vpermq ymm10,ymm10,093h - vpand ymm8,ymm8,ymm15 - vpermq ymm11,ymm11,093h - - vpblendd ymm9,ymm12,ymm14,3 - vpermq ymm0,ymm0,093h - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm4,ymm4,ymm9 - vpblendd ymm13,ymm10,ymm13,3 - vpaddq ymm5,ymm5,ymm12 - vpblendd ymm10,ymm11,ymm10,3 - vpaddq ymm6,ymm6,ymm13 - vpblendd ymm11,ymm0,ymm11,3 - vpaddq ymm7,ymm7,ymm10 - vpaddq ymm8,ymm8,ymm11 - - vpsrlq ymm12,ymm4,29 - vpand ymm4,ymm4,ymm15 - vpsrlq ymm13,ymm5,29 - vpand ymm5,ymm5,ymm15 - vpsrlq ymm10,ymm6,29 - vpermq ymm12,ymm12,093h - vpand ymm6,ymm6,ymm15 - vpsrlq ymm11,ymm7,29 - vpermq ymm13,ymm13,093h - vpand ymm7,ymm7,ymm15 - vpsrlq ymm0,ymm8,29 - vpermq ymm10,ymm10,093h - vpand ymm8,ymm8,ymm15 - vpermq ymm11,ymm11,093h - - vpblendd ymm9,ymm12,ymm14,3 - vpermq ymm0,ymm0,093h - vpblendd ymm12,ymm13,ymm12,3 - vpaddq ymm4,ymm4,ymm9 - vpblendd ymm13,ymm10,ymm13,3 - vpaddq ymm5,ymm5,ymm12 - vpblendd ymm10,ymm11,ymm10,3 - vpaddq ymm6,ymm6,ymm13 - vpblendd ymm11,ymm0,ymm11,3 - vpaddq ymm7,ymm7,ymm10 - vpaddq ymm8,ymm8,ymm11 - - vmovdqu YMMWORD PTR[(128-128)+rdi],ymm4 - vmovdqu YMMWORD PTR[(160-128)+rdi],ymm5 - vmovdqu YMMWORD PTR[(192-128)+rdi],ymm6 - vmovdqu YMMWORD PTR[(224-128)+rdi],ymm7 - vmovdqu YMMWORD PTR[(256-128)+rdi],ymm8 - vzeroupper - - mov rax,rbp - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_1024_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_1024_mul_avx2:: -rsaz_1024_mul_avx2 ENDP -PUBLIC rsaz_1024_red2norm_avx2 - -ALIGN 32 -rsaz_1024_red2norm_avx2 PROC PUBLIC - sub rdx,-128 - xor rax,rax - mov r8,QWORD PTR[((-128))+rdx] - mov r9,QWORD PTR[((-120))+rdx] - mov r10,QWORD PTR[((-112))+rdx] - shl r8,0 - shl r9,29 - mov r11,r10 - shl r10,58 - shr r11,6 - add rax,r8 - add rax,r9 - add rax,r10 - adc r11,0 - mov QWORD PTR[rcx],rax - mov rax,r11 - mov r8,QWORD PTR[((-104))+rdx] - mov r9,QWORD PTR[((-96))+rdx] - shl r8,23 - mov r10,r9 - shl r9,52 - shr r10,12 - add rax,r8 - add rax,r9 - adc r10,0 - mov QWORD PTR[8+rcx],rax - mov rax,r10 - mov r11,QWORD PTR[((-88))+rdx] - mov r8,QWORD PTR[((-80))+rdx] - shl r11,17 - mov r9,r8 - shl r8,46 - shr r9,18 - add rax,r11 - add rax,r8 - adc r9,0 - mov QWORD PTR[16+rcx],rax - mov rax,r9 - mov r10,QWORD PTR[((-72))+rdx] - mov r11,QWORD PTR[((-64))+rdx] - shl r10,11 - mov r8,r11 - shl r11,40 - shr r8,24 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[24+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[((-56))+rdx] - mov r10,QWORD PTR[((-48))+rdx] - mov r11,QWORD PTR[((-40))+rdx] - shl r9,5 - shl r10,34 - mov r8,r11 - shl r11,63 - shr r8,1 - add rax,r9 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[32+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[((-32))+rdx] - mov r10,QWORD PTR[((-24))+rdx] - shl r9,28 - mov r11,r10 - shl r10,57 - shr r11,7 - add rax,r9 - add rax,r10 - adc r11,0 - mov QWORD PTR[40+rcx],rax - mov rax,r11 - mov r8,QWORD PTR[((-16))+rdx] - mov r9,QWORD PTR[((-8))+rdx] - shl r8,22 - mov r10,r9 - shl r9,51 - shr r10,13 - add rax,r8 - add rax,r9 - adc r10,0 - mov QWORD PTR[48+rcx],rax - mov rax,r10 - mov r11,QWORD PTR[rdx] - mov r8,QWORD PTR[8+rdx] - shl r11,16 - mov r9,r8 - shl r8,45 - shr r9,19 - add rax,r11 - add rax,r8 - adc r9,0 - mov QWORD PTR[56+rcx],rax - mov rax,r9 - mov r10,QWORD PTR[16+rdx] - mov r11,QWORD PTR[24+rdx] - shl r10,10 - mov r8,r11 - shl r11,39 - shr r8,25 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[64+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[32+rdx] - mov r10,QWORD PTR[40+rdx] - mov r11,QWORD PTR[48+rdx] - shl r9,4 - shl r10,33 - mov r8,r11 - shl r11,62 - shr r8,2 - add rax,r9 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[72+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[56+rdx] - mov r10,QWORD PTR[64+rdx] - shl r9,27 - mov r11,r10 - shl r10,56 - shr r11,8 - add rax,r9 - add rax,r10 - adc r11,0 - mov QWORD PTR[80+rcx],rax - mov rax,r11 - mov r8,QWORD PTR[72+rdx] - mov r9,QWORD PTR[80+rdx] - shl r8,21 - mov r10,r9 - shl r9,50 - shr r10,14 - add rax,r8 - add rax,r9 - adc r10,0 - mov QWORD PTR[88+rcx],rax - mov rax,r10 - mov r11,QWORD PTR[88+rdx] - mov r8,QWORD PTR[96+rdx] - shl r11,15 - mov r9,r8 - shl r8,44 - shr r9,20 - add rax,r11 - add rax,r8 - adc r9,0 - mov QWORD PTR[96+rcx],rax - mov rax,r9 - mov r10,QWORD PTR[104+rdx] - mov r11,QWORD PTR[112+rdx] - shl r10,9 - mov r8,r11 - shl r11,38 - shr r8,26 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[104+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[120+rdx] - mov r10,QWORD PTR[128+rdx] - mov r11,QWORD PTR[136+rdx] - shl r9,3 - shl r10,32 - mov r8,r11 - shl r11,61 - shr r8,3 - add rax,r9 - add rax,r10 - add rax,r11 - adc r8,0 - mov QWORD PTR[112+rcx],rax - mov rax,r8 - mov r9,QWORD PTR[144+rdx] - mov r10,QWORD PTR[152+rdx] - shl r9,26 - mov r11,r10 - shl r10,55 - shr r11,9 - add rax,r9 - add rax,r10 - adc r11,0 - mov QWORD PTR[120+rcx],rax - mov rax,r11 - DB 0F3h,0C3h ;repret -rsaz_1024_red2norm_avx2 ENDP - -PUBLIC rsaz_1024_norm2red_avx2 - -ALIGN 32 -rsaz_1024_norm2red_avx2 PROC PUBLIC - sub rcx,-128 - mov r8,QWORD PTR[rdx] - mov eax,01fffffffh - mov r9,QWORD PTR[8+rdx] - mov r11,r8 - shr r11,0 - and r11,rax - mov QWORD PTR[((-128))+rcx],r11 - mov r10,r8 - shr r10,29 - and r10,rax - mov QWORD PTR[((-120))+rcx],r10 - shrd r8,r9,58 - and r8,rax - mov QWORD PTR[((-112))+rcx],r8 - mov r10,QWORD PTR[16+rdx] - mov r8,r9 - shr r8,23 - and r8,rax - mov QWORD PTR[((-104))+rcx],r8 - shrd r9,r10,52 - and r9,rax - mov QWORD PTR[((-96))+rcx],r9 - mov r11,QWORD PTR[24+rdx] - mov r9,r10 - shr r9,17 - and r9,rax - mov QWORD PTR[((-88))+rcx],r9 - shrd r10,r11,46 - and r10,rax - mov QWORD PTR[((-80))+rcx],r10 - mov r8,QWORD PTR[32+rdx] - mov r10,r11 - shr r10,11 - and r10,rax - mov QWORD PTR[((-72))+rcx],r10 - shrd r11,r8,40 - and r11,rax - mov QWORD PTR[((-64))+rcx],r11 - mov r9,QWORD PTR[40+rdx] - mov r11,r8 - shr r11,5 - and r11,rax - mov QWORD PTR[((-56))+rcx],r11 - mov r10,r8 - shr r10,34 - and r10,rax - mov QWORD PTR[((-48))+rcx],r10 - shrd r8,r9,63 - and r8,rax - mov QWORD PTR[((-40))+rcx],r8 - mov r10,QWORD PTR[48+rdx] - mov r8,r9 - shr r8,28 - and r8,rax - mov QWORD PTR[((-32))+rcx],r8 - shrd r9,r10,57 - and r9,rax - mov QWORD PTR[((-24))+rcx],r9 - mov r11,QWORD PTR[56+rdx] - mov r9,r10 - shr r9,22 - and r9,rax - mov QWORD PTR[((-16))+rcx],r9 - shrd r10,r11,51 - and r10,rax - mov QWORD PTR[((-8))+rcx],r10 - mov r8,QWORD PTR[64+rdx] - mov r10,r11 - shr r10,16 - and r10,rax - mov QWORD PTR[rcx],r10 - shrd r11,r8,45 - and r11,rax - mov QWORD PTR[8+rcx],r11 - mov r9,QWORD PTR[72+rdx] - mov r11,r8 - shr r11,10 - and r11,rax - mov QWORD PTR[16+rcx],r11 - shrd r8,r9,39 - and r8,rax - mov QWORD PTR[24+rcx],r8 - mov r10,QWORD PTR[80+rdx] - mov r8,r9 - shr r8,4 - and r8,rax - mov QWORD PTR[32+rcx],r8 - mov r11,r9 - shr r11,33 - and r11,rax - mov QWORD PTR[40+rcx],r11 - shrd r9,r10,62 - and r9,rax - mov QWORD PTR[48+rcx],r9 - mov r11,QWORD PTR[88+rdx] - mov r9,r10 - shr r9,27 - and r9,rax - mov QWORD PTR[56+rcx],r9 - shrd r10,r11,56 - and r10,rax - mov QWORD PTR[64+rcx],r10 - mov r8,QWORD PTR[96+rdx] - mov r10,r11 - shr r10,21 - and r10,rax - mov QWORD PTR[72+rcx],r10 - shrd r11,r8,50 - and r11,rax - mov QWORD PTR[80+rcx],r11 - mov r9,QWORD PTR[104+rdx] - mov r11,r8 - shr r11,15 - and r11,rax - mov QWORD PTR[88+rcx],r11 - shrd r8,r9,44 - and r8,rax - mov QWORD PTR[96+rcx],r8 - mov r10,QWORD PTR[112+rdx] - mov r8,r9 - shr r8,9 - and r8,rax - mov QWORD PTR[104+rcx],r8 - shrd r9,r10,38 - and r9,rax - mov QWORD PTR[112+rcx],r9 - mov r11,QWORD PTR[120+rdx] - mov r9,r10 - shr r9,3 - and r9,rax - mov QWORD PTR[120+rcx],r9 - mov r8,r10 - shr r8,32 - and r8,rax - mov QWORD PTR[128+rcx],r8 - shrd r10,r11,61 - and r10,rax - mov QWORD PTR[136+rcx],r10 - xor r8,r8 - mov r10,r11 - shr r10,26 - and r10,rax - mov QWORD PTR[144+rcx],r10 - shrd r11,r8,55 - and r11,rax - mov QWORD PTR[152+rcx],r11 - mov QWORD PTR[160+rcx],r8 - mov QWORD PTR[168+rcx],r8 - mov QWORD PTR[176+rcx],r8 - mov QWORD PTR[184+rcx],r8 - DB 0F3h,0C3h ;repret -rsaz_1024_norm2red_avx2 ENDP -PUBLIC rsaz_1024_scatter5_avx2 - -ALIGN 32 -rsaz_1024_scatter5_avx2 PROC PUBLIC - vzeroupper - vmovdqu ymm5,YMMWORD PTR[$L$scatter_permd] - shl r8d,4 - lea rcx,QWORD PTR[r8*1+rcx] - mov eax,9 - jmp $L$oop_scatter_1024 - -ALIGN 32 -$L$oop_scatter_1024:: - vmovdqu ymm0,YMMWORD PTR[rdx] - lea rdx,QWORD PTR[32+rdx] - vpermd ymm0,ymm5,ymm0 - vmovdqu XMMWORD PTR[rcx],xmm0 - lea rcx,QWORD PTR[512+rcx] - dec eax - jnz $L$oop_scatter_1024 - - vzeroupper - DB 0F3h,0C3h ;repret -rsaz_1024_scatter5_avx2 ENDP - -PUBLIC rsaz_1024_gather5_avx2 - -ALIGN 32 -rsaz_1024_gather5_avx2 PROC PUBLIC - vzeroupper - mov r11,rsp - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_rsaz_1024_gather5:: - -DB 048h,08dh,060h,0e0h -DB 0c5h,0f8h,029h,070h,0e0h -DB 0c5h,0f8h,029h,078h,0f0h -DB 0c5h,078h,029h,040h,000h -DB 0c5h,078h,029h,048h,010h -DB 0c5h,078h,029h,050h,020h -DB 0c5h,078h,029h,058h,030h -DB 0c5h,078h,029h,060h,040h -DB 0c5h,078h,029h,068h,050h -DB 0c5h,078h,029h,070h,060h -DB 0c5h,078h,029h,078h,070h - lea rsp,QWORD PTR[((-256))+rsp] - and rsp,-32 - lea r10,QWORD PTR[$L$inc] - lea rax,QWORD PTR[((-128))+rsp] - - vmovd xmm4,r8d - vmovdqa ymm0,YMMWORD PTR[r10] - vmovdqa ymm1,YMMWORD PTR[32+r10] - vmovdqa ymm5,YMMWORD PTR[64+r10] - vpbroadcastd ymm4,xmm4 - - vpaddd ymm2,ymm0,ymm5 - vpcmpeqd ymm0,ymm0,ymm4 - vpaddd ymm3,ymm1,ymm5 - vpcmpeqd ymm1,ymm1,ymm4 - vmovdqa YMMWORD PTR[(0+128)+rax],ymm0 - vpaddd ymm0,ymm2,ymm5 - vpcmpeqd ymm2,ymm2,ymm4 - vmovdqa YMMWORD PTR[(32+128)+rax],ymm1 - vpaddd ymm1,ymm3,ymm5 - vpcmpeqd ymm3,ymm3,ymm4 - vmovdqa YMMWORD PTR[(64+128)+rax],ymm2 - vpaddd ymm2,ymm0,ymm5 - vpcmpeqd ymm0,ymm0,ymm4 - vmovdqa YMMWORD PTR[(96+128)+rax],ymm3 - vpaddd ymm3,ymm1,ymm5 - vpcmpeqd ymm1,ymm1,ymm4 - vmovdqa YMMWORD PTR[(128+128)+rax],ymm0 - vpaddd ymm8,ymm2,ymm5 - vpcmpeqd ymm2,ymm2,ymm4 - vmovdqa YMMWORD PTR[(160+128)+rax],ymm1 - vpaddd ymm9,ymm3,ymm5 - vpcmpeqd ymm3,ymm3,ymm4 - vmovdqa YMMWORD PTR[(192+128)+rax],ymm2 - vpaddd ymm10,ymm8,ymm5 - vpcmpeqd ymm8,ymm8,ymm4 - vmovdqa YMMWORD PTR[(224+128)+rax],ymm3 - vpaddd ymm11,ymm9,ymm5 - vpcmpeqd ymm9,ymm9,ymm4 - vpaddd ymm12,ymm10,ymm5 - vpcmpeqd ymm10,ymm10,ymm4 - vpaddd ymm13,ymm11,ymm5 - vpcmpeqd ymm11,ymm11,ymm4 - vpaddd ymm14,ymm12,ymm5 - vpcmpeqd ymm12,ymm12,ymm4 - vpaddd ymm15,ymm13,ymm5 - vpcmpeqd ymm13,ymm13,ymm4 - vpcmpeqd ymm14,ymm14,ymm4 - vpcmpeqd ymm15,ymm15,ymm4 - - vmovdqa ymm7,YMMWORD PTR[((-32))+r10] - lea rdx,QWORD PTR[128+rdx] - mov r8d,9 - -$L$oop_gather_1024:: - vmovdqa ymm0,YMMWORD PTR[((0-128))+rdx] - vmovdqa ymm1,YMMWORD PTR[((32-128))+rdx] - vmovdqa ymm2,YMMWORD PTR[((64-128))+rdx] - vmovdqa ymm3,YMMWORD PTR[((96-128))+rdx] - vpand ymm0,ymm0,YMMWORD PTR[((0+128))+rax] - vpand ymm1,ymm1,YMMWORD PTR[((32+128))+rax] - vpand ymm2,ymm2,YMMWORD PTR[((64+128))+rax] - vpor ymm4,ymm1,ymm0 - vpand ymm3,ymm3,YMMWORD PTR[((96+128))+rax] - vmovdqa ymm0,YMMWORD PTR[((128-128))+rdx] - vmovdqa ymm1,YMMWORD PTR[((160-128))+rdx] - vpor ymm5,ymm3,ymm2 - vmovdqa ymm2,YMMWORD PTR[((192-128))+rdx] - vmovdqa ymm3,YMMWORD PTR[((224-128))+rdx] - vpand ymm0,ymm0,YMMWORD PTR[((128+128))+rax] - vpand ymm1,ymm1,YMMWORD PTR[((160+128))+rax] - vpand ymm2,ymm2,YMMWORD PTR[((192+128))+rax] - vpor ymm4,ymm4,ymm0 - vpand ymm3,ymm3,YMMWORD PTR[((224+128))+rax] - vpand ymm0,ymm8,YMMWORD PTR[((256-128))+rdx] - vpor ymm5,ymm5,ymm1 - vpand ymm1,ymm9,YMMWORD PTR[((288-128))+rdx] - vpor ymm4,ymm4,ymm2 - vpand ymm2,ymm10,YMMWORD PTR[((320-128))+rdx] - vpor ymm5,ymm5,ymm3 - vpand ymm3,ymm11,YMMWORD PTR[((352-128))+rdx] - vpor ymm4,ymm4,ymm0 - vpand ymm0,ymm12,YMMWORD PTR[((384-128))+rdx] - vpor ymm5,ymm5,ymm1 - vpand ymm1,ymm13,YMMWORD PTR[((416-128))+rdx] - vpor ymm4,ymm4,ymm2 - vpand ymm2,ymm14,YMMWORD PTR[((448-128))+rdx] - vpor ymm5,ymm5,ymm3 - vpand ymm3,ymm15,YMMWORD PTR[((480-128))+rdx] - lea rdx,QWORD PTR[512+rdx] - vpor ymm4,ymm4,ymm0 - vpor ymm5,ymm5,ymm1 - vpor ymm4,ymm4,ymm2 - vpor ymm5,ymm5,ymm3 - - vpor ymm4,ymm4,ymm5 - vextracti128 xmm5,ymm4,1 - vpor xmm5,xmm5,xmm4 - vpermd ymm5,ymm7,ymm5 - vmovdqu YMMWORD PTR[rcx],ymm5 - lea rcx,QWORD PTR[32+rcx] - dec r8d - jnz $L$oop_gather_1024 - - vpxor ymm0,ymm0,ymm0 - vmovdqu YMMWORD PTR[rcx],ymm0 - vzeroupper - movaps xmm6,XMMWORD PTR[((-168))+r11] - movaps xmm7,XMMWORD PTR[((-152))+r11] - movaps xmm8,XMMWORD PTR[((-136))+r11] - movaps xmm9,XMMWORD PTR[((-120))+r11] - movaps xmm10,XMMWORD PTR[((-104))+r11] - movaps xmm11,XMMWORD PTR[((-88))+r11] - movaps xmm12,XMMWORD PTR[((-72))+r11] - movaps xmm13,XMMWORD PTR[((-56))+r11] - movaps xmm14,XMMWORD PTR[((-40))+r11] - movaps xmm15,XMMWORD PTR[((-24))+r11] -$L$SEH_end_rsaz_1024_gather5:: - lea rsp,QWORD PTR[r11] - DB 0F3h,0C3h ;repret -rsaz_1024_gather5_avx2 ENDP -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC rsaz_avx2_eligible - -ALIGN 32 -rsaz_avx2_eligible PROC PUBLIC - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+8))] - mov ecx,524544 - mov edx,0 - and ecx,eax - cmp ecx,524544 - cmove eax,edx - and eax,32 - shr eax,5 - DB 0F3h,0C3h ;repret -rsaz_avx2_eligible ENDP - -ALIGN 64 -$L$and_mask:: - DQ 01fffffffh,01fffffffh,01fffffffh,01fffffffh -$L$scatter_permd:: - DD 0,2,4,6,7,7,7,7 -$L$gather_permd:: - DD 0,7,1,7,2,7,3,7 -$L$inc:: - DD 0,0,0,0,1,1,1,1 - DD 2,2,2,2,3,3,3,3 - DD 4,4,4,4,4,4,4,4 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -rsaz_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[160+r8] - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - mov QWORD PTR[240+r8],r15 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[144+r8],rbx - - lea rsi,QWORD PTR[((-216))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -rsaz_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_rsaz_1024_sqr_avx2 - DD imagerel $L$SEH_end_rsaz_1024_sqr_avx2 - DD imagerel $L$SEH_info_rsaz_1024_sqr_avx2 - - DD imagerel $L$SEH_begin_rsaz_1024_mul_avx2 - DD imagerel $L$SEH_end_rsaz_1024_mul_avx2 - DD imagerel $L$SEH_info_rsaz_1024_mul_avx2 - - DD imagerel $L$SEH_begin_rsaz_1024_gather5 - DD imagerel $L$SEH_end_rsaz_1024_gather5 - DD imagerel $L$SEH_info_rsaz_1024_gather5 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_rsaz_1024_sqr_avx2:: -DB 9,0,0,0 - DD imagerel rsaz_se_handler - DD imagerel $L$sqr_1024_body,imagerel $L$sqr_1024_epilogue -$L$SEH_info_rsaz_1024_mul_avx2:: -DB 9,0,0,0 - DD imagerel rsaz_se_handler - DD imagerel $L$mul_1024_body,imagerel $L$mul_1024_epilogue -$L$SEH_info_rsaz_1024_gather5:: -DB 001h,036h,017h,00bh -DB 036h,0f8h,009h,000h -DB 031h,0e8h,008h,000h -DB 02ch,0d8h,007h,000h -DB 027h,0c8h,006h,000h -DB 022h,0b8h,005h,000h -DB 01dh,0a8h,004h,000h -DB 018h,098h,003h,000h -DB 013h,088h,002h,000h -DB 00eh,078h,001h,000h -DB 009h,068h,000h,000h -DB 004h,001h,015h,000h -DB 000h,0b3h,000h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/bn/rsaz-x86_64.asm b/deps/openssl/asm/x64-win32-masm/bn/rsaz-x86_64.asm deleted file mode 100644 index e431b620902c8b..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/bn/rsaz-x86_64.asm +++ /dev/null @@ -1,2155 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC rsaz_512_sqr - -ALIGN 32 -rsaz_512_sqr PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_sqr:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$sqr_body:: - mov rbp,rdx - mov rdx,QWORD PTR[rsi] - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[128+rsp],rcx - mov r11d,080100h - and r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp r11d,080100h - je $L$oop_sqrx - jmp $L$oop_sqr - -ALIGN 32 -$L$oop_sqr:: - mov DWORD PTR[((128+8))+rsp],r8d - - mov rbx,rdx - mul rdx - mov r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,rbx - mov r15,rdx - adc r15,0 - - add r8,r8 - mov rcx,r9 - adc r9,r9 - - mul rax - mov QWORD PTR[rsp],rax - add r8,rdx - adc r9,0 - - mov QWORD PTR[8+rsp],r8 - shr rcx,63 - - - mov r8,QWORD PTR[8+rsi] - mov rax,QWORD PTR[16+rsi] - mul r8 - add r10,rax - mov rax,QWORD PTR[24+rsi] - mov rbx,rdx - adc rbx,0 - - mul r8 - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r11,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r12,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r13,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r14,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r15,rax - mov rax,r8 - adc rdx,0 - add r15,rbx - mov r8,rdx - mov rdx,r10 - adc r8,0 - - add rdx,rdx - lea r10,QWORD PTR[r10*2+rcx] - mov rbx,r11 - adc r11,r11 - - mul rax - add r9,rax - adc r10,rdx - adc r11,0 - - mov QWORD PTR[16+rsp],r9 - mov QWORD PTR[24+rsp],r10 - shr rbx,63 - - - mov r9,QWORD PTR[16+rsi] - mov rax,QWORD PTR[24+rsi] - mul r9 - add r12,rax - mov rax,QWORD PTR[32+rsi] - mov rcx,rdx - adc rcx,0 - - mul r9 - add r13,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r13,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - add r14,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r14,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - mov r10,r12 - lea r12,QWORD PTR[r12*2+rbx] - add r15,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r15,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - shr r10,63 - add r8,rax - mov rax,r9 - adc rdx,0 - add r8,rcx - mov r9,rdx - adc r9,0 - - mov rcx,r13 - lea r13,QWORD PTR[r13*2+r10] - - mul rax - add r11,rax - adc r12,rdx - adc r13,0 - - mov QWORD PTR[32+rsp],r11 - mov QWORD PTR[40+rsp],r12 - shr rcx,63 - - - mov r10,QWORD PTR[24+rsi] - mov rax,QWORD PTR[32+rsi] - mul r10 - add r14,rax - mov rax,QWORD PTR[40+rsi] - mov rbx,rdx - adc rbx,0 - - mul r10 - add r15,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r15,rbx - mov rbx,rdx - adc rbx,0 - - mul r10 - mov r12,r14 - lea r14,QWORD PTR[r14*2+rcx] - add r8,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r8,rbx - mov rbx,rdx - adc rbx,0 - - mul r10 - shr r12,63 - add r9,rax - mov rax,r10 - adc rdx,0 - add r9,rbx - mov r10,rdx - adc r10,0 - - mov rbx,r15 - lea r15,QWORD PTR[r15*2+r12] - - mul rax - add r13,rax - adc r14,rdx - adc r15,0 - - mov QWORD PTR[48+rsp],r13 - mov QWORD PTR[56+rsp],r14 - shr rbx,63 - - - mov r11,QWORD PTR[32+rsi] - mov rax,QWORD PTR[40+rsi] - mul r11 - add r8,rax - mov rax,QWORD PTR[48+rsi] - mov rcx,rdx - adc rcx,0 - - mul r11 - add r9,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - mov r12,r8 - lea r8,QWORD PTR[r8*2+rbx] - add r9,rcx - mov rcx,rdx - adc rcx,0 - - mul r11 - shr r12,63 - add r10,rax - mov rax,r11 - adc rdx,0 - add r10,rcx - mov r11,rdx - adc r11,0 - - mov rcx,r9 - lea r9,QWORD PTR[r9*2+r12] - - mul rax - add r15,rax - adc r8,rdx - adc r9,0 - - mov QWORD PTR[64+rsp],r15 - mov QWORD PTR[72+rsp],r8 - shr rcx,63 - - - mov r12,QWORD PTR[40+rsi] - mov rax,QWORD PTR[48+rsi] - mul r12 - add r10,rax - mov rax,QWORD PTR[56+rsi] - mov rbx,rdx - adc rbx,0 - - mul r12 - add r11,rax - mov rax,r12 - mov r15,r10 - lea r10,QWORD PTR[r10*2+rcx] - adc rdx,0 - shr r15,63 - add r11,rbx - mov r12,rdx - adc r12,0 - - mov rbx,r11 - lea r11,QWORD PTR[r11*2+r15] - - mul rax - add r9,rax - adc r10,rdx - adc r11,0 - - mov QWORD PTR[80+rsp],r9 - mov QWORD PTR[88+rsp],r10 - - - mov r13,QWORD PTR[48+rsi] - mov rax,QWORD PTR[56+rsi] - mul r13 - add r12,rax - mov rax,r13 - mov r13,rdx - adc r13,0 - - xor r14,r14 - shl rbx,1 - adc r12,r12 - adc r13,r13 - adc r14,r14 - - mul rax - add r11,rax - adc r12,rdx - adc r13,0 - - mov QWORD PTR[96+rsp],r11 - mov QWORD PTR[104+rsp],r12 - - - mov rax,QWORD PTR[56+rsi] - mul rax - add r13,rax - adc rdx,0 - - add r14,rdx - - mov QWORD PTR[112+rsp],r13 - mov QWORD PTR[120+rsp],r14 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - mov rdx,r8 - mov rax,r9 - mov r8d,DWORD PTR[((128+8))+rsp] - mov rsi,rdi - - dec r8d - jnz $L$oop_sqr - jmp $L$sqr_tail - -ALIGN 32 -$L$oop_sqrx:: - mov DWORD PTR[((128+8))+rsp],r8d -DB 102,72,15,110,199 -DB 102,72,15,110,205 - - mulx r9,r8,rax - - mulx r10,rcx,QWORD PTR[16+rsi] - xor rbp,rbp - - mulx r11,rax,QWORD PTR[24+rsi] - adcx r9,rcx - - mulx r12,rcx,QWORD PTR[32+rsi] - adcx r10,rax - - mulx r13,rax,QWORD PTR[40+rsi] - adcx r11,rcx - -DB 0c4h,062h,0f3h,0f6h,0b6h,030h,000h,000h,000h - adcx r12,rax - adcx r13,rcx - -DB 0c4h,062h,0fbh,0f6h,0beh,038h,000h,000h,000h - adcx r14,rax - adcx r15,rbp - - mov rcx,r9 - shld r9,r8,1 - shl r8,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r8,rdx - mov rdx,QWORD PTR[8+rsi] - adcx r9,rbp - - mov QWORD PTR[rsp],rax - mov QWORD PTR[8+rsp],r8 - - - mulx rbx,rax,QWORD PTR[16+rsi] - adox r10,rax - adcx r11,rbx - -DB 0c4h,062h,0c3h,0f6h,086h,018h,000h,000h,000h - adox r11,rdi - adcx r12,r8 - - mulx rbx,rax,QWORD PTR[32+rsi] - adox r12,rax - adcx r13,rbx - - mulx r8,rdi,QWORD PTR[40+rsi] - adox r13,rdi - adcx r14,r8 - -DB 0c4h,0e2h,0fbh,0f6h,09eh,030h,000h,000h,000h - adox r14,rax - adcx r15,rbx - -DB 0c4h,062h,0c3h,0f6h,086h,038h,000h,000h,000h - adox r15,rdi - adcx r8,rbp - adox r8,rbp - - mov rbx,r11 - shld r11,r10,1 - shld r10,rcx,1 - - xor ebp,ebp - mulx rcx,rax,rdx - mov rdx,QWORD PTR[16+rsi] - adcx r9,rax - adcx r10,rcx - adcx r11,rbp - - mov QWORD PTR[16+rsp],r9 -DB 04ch,089h,094h,024h,018h,000h,000h,000h - - -DB 0c4h,062h,0c3h,0f6h,08eh,018h,000h,000h,000h - adox r12,rdi - adcx r13,r9 - - mulx rcx,rax,QWORD PTR[32+rsi] - adox r13,rax - adcx r14,rcx - - mulx r9,rdi,QWORD PTR[40+rsi] - adox r14,rdi - adcx r15,r9 - -DB 0c4h,0e2h,0fbh,0f6h,08eh,030h,000h,000h,000h - adox r15,rax - adcx r8,rcx - -DB 0c4h,062h,0c3h,0f6h,08eh,038h,000h,000h,000h - adox r8,rdi - adcx r9,rbp - adox r9,rbp - - mov rcx,r13 - shld r13,r12,1 - shld r12,rbx,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r11,rax - adcx r12,rdx - mov rdx,QWORD PTR[24+rsi] - adcx r13,rbp - - mov QWORD PTR[32+rsp],r11 -DB 04ch,089h,0a4h,024h,028h,000h,000h,000h - - -DB 0c4h,0e2h,0fbh,0f6h,09eh,020h,000h,000h,000h - adox r14,rax - adcx r15,rbx - - mulx r10,rdi,QWORD PTR[40+rsi] - adox r15,rdi - adcx r8,r10 - - mulx rbx,rax,QWORD PTR[48+rsi] - adox r8,rax - adcx r9,rbx - - mulx r10,rdi,QWORD PTR[56+rsi] - adox r9,rdi - adcx r10,rbp - adox r10,rbp - -DB 066h - mov rbx,r15 - shld r15,r14,1 - shld r14,rcx,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r13,rax - adcx r14,rdx - mov rdx,QWORD PTR[32+rsi] - adcx r15,rbp - - mov QWORD PTR[48+rsp],r13 - mov QWORD PTR[56+rsp],r14 - - -DB 0c4h,062h,0c3h,0f6h,09eh,028h,000h,000h,000h - adox r8,rdi - adcx r9,r11 - - mulx rcx,rax,QWORD PTR[48+rsi] - adox r9,rax - adcx r10,rcx - - mulx r11,rdi,QWORD PTR[56+rsi] - adox r10,rdi - adcx r11,rbp - adox r11,rbp - - mov rcx,r9 - shld r9,r8,1 - shld r8,rbx,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r15,rax - adcx r8,rdx - mov rdx,QWORD PTR[40+rsi] - adcx r9,rbp - - mov QWORD PTR[64+rsp],r15 - mov QWORD PTR[72+rsp],r8 - - -DB 0c4h,0e2h,0fbh,0f6h,09eh,030h,000h,000h,000h - adox r10,rax - adcx r11,rbx - -DB 0c4h,062h,0c3h,0f6h,0a6h,038h,000h,000h,000h - adox r11,rdi - adcx r12,rbp - adox r12,rbp - - mov rbx,r11 - shld r11,r10,1 - shld r10,rcx,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r9,rax - adcx r10,rdx - mov rdx,QWORD PTR[48+rsi] - adcx r11,rbp - - mov QWORD PTR[80+rsp],r9 - mov QWORD PTR[88+rsp],r10 - - -DB 0c4h,062h,0fbh,0f6h,0aeh,038h,000h,000h,000h - adox r12,rax - adox r13,rbp - - xor r14,r14 - shld r14,r13,1 - shld r13,r12,1 - shld r12,rbx,1 - - xor ebp,ebp - mulx rdx,rax,rdx - adcx r11,rax - adcx r12,rdx - mov rdx,QWORD PTR[56+rsi] - adcx r13,rbp - -DB 04ch,089h,09ch,024h,060h,000h,000h,000h -DB 04ch,089h,0a4h,024h,068h,000h,000h,000h - - - mulx rdx,rax,rdx - adox r13,rax - adox rdx,rbp - -DB 066h - add r14,rdx - - mov QWORD PTR[112+rsp],r13 - mov QWORD PTR[120+rsp],r14 -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov rdx,QWORD PTR[128+rsp] - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reducex - - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - mov rdx,r8 - mov rax,r9 - mov r8d,DWORD PTR[((128+8))+rsp] - mov rsi,rdi - - dec r8d - jnz $L$oop_sqrx - -$L$sqr_tail:: - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$sqr_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_sqr:: -rsaz_512_sqr ENDP -PUBLIC rsaz_512_mul - -ALIGN 32 -rsaz_512_mul PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$mul_body:: -DB 102,72,15,110,199 -DB 102,72,15,110,201 - mov QWORD PTR[128+rsp],r8 - mov r11d,080100h - and r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp r11d,080100h - je $L$mulx - mov rbx,QWORD PTR[rdx] - mov rbp,rdx - call __rsaz_512_mul - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - jmp $L$mul_tail - -ALIGN 32 -$L$mulx:: - mov rbp,rdx - mov rdx,QWORD PTR[rdx] - call __rsaz_512_mulx - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov rdx,QWORD PTR[128+rsp] - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reducex -$L$mul_tail:: - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul:: -rsaz_512_mul ENDP -PUBLIC rsaz_512_mul_gather4 - -ALIGN 32 -rsaz_512_mul_gather4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_gather4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,328 - movaps XMMWORD PTR[160+rsp],xmm6 - movaps XMMWORD PTR[176+rsp],xmm7 - movaps XMMWORD PTR[192+rsp],xmm8 - movaps XMMWORD PTR[208+rsp],xmm9 - movaps XMMWORD PTR[224+rsp],xmm10 - movaps XMMWORD PTR[240+rsp],xmm11 - movaps XMMWORD PTR[256+rsp],xmm12 - movaps XMMWORD PTR[272+rsp],xmm13 - movaps XMMWORD PTR[288+rsp],xmm14 - movaps XMMWORD PTR[304+rsp],xmm15 -$L$mul_gather4_body:: - movd xmm8,r9d - movdqa xmm1,XMMWORD PTR[(($L$inc+16))] - movdqa xmm0,XMMWORD PTR[$L$inc] - - pshufd xmm8,xmm8,0 - movdqa xmm7,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm8 - movdqa xmm3,xmm7 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm8 - movdqa xmm4,xmm7 - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm8 - movdqa xmm5,xmm7 - paddd xmm4,xmm3 - pcmpeqd xmm3,xmm8 - movdqa xmm6,xmm7 - paddd xmm5,xmm4 - pcmpeqd xmm4,xmm8 - paddd xmm6,xmm5 - pcmpeqd xmm5,xmm8 - paddd xmm7,xmm6 - pcmpeqd xmm6,xmm8 - pcmpeqd xmm7,xmm8 - - movdqa xmm8,XMMWORD PTR[rdx] - movdqa xmm9,XMMWORD PTR[16+rdx] - movdqa xmm10,XMMWORD PTR[32+rdx] - movdqa xmm11,XMMWORD PTR[48+rdx] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rdx] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rdx] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rdx] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rdx] - lea rbp,QWORD PTR[128+rdx] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 - mov r11d,080100h - and r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp r11d,080100h - je $L$mulx_gather -DB 102,76,15,126,195 - - mov QWORD PTR[128+rsp],r8 - mov QWORD PTR[((128+8))+rsp],rdi - mov QWORD PTR[((128+16))+rsp],rcx - - mov rax,QWORD PTR[rsi] - mov rcx,QWORD PTR[8+rsi] - mul rbx - mov QWORD PTR[rsp],rax - mov rax,rcx - mov r8,rdx - - mul rbx - add r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - adc r9,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[rsi] - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rsp] - mov ecx,7 - jmp $L$oop_mul_gather - -ALIGN 32 -$L$oop_mul_gather:: - movdqa xmm8,XMMWORD PTR[rbp] - movdqa xmm9,XMMWORD PTR[16+rbp] - movdqa xmm10,XMMWORD PTR[32+rbp] - movdqa xmm11,XMMWORD PTR[48+rbp] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rbp] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rbp] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rbp] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rbp] - lea rbp,QWORD PTR[128+rbp] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 -DB 102,76,15,126,195 - - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - add r15,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rdi] - - dec ecx - jnz $L$oop_mul_gather - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - mov rdi,QWORD PTR[((128+8))+rsp] - mov rbp,QWORD PTR[((128+16))+rsp] - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - jmp $L$mul_gather_tail - -ALIGN 32 -$L$mulx_gather:: -DB 102,76,15,126,194 - - mov QWORD PTR[128+rsp],r8 - mov QWORD PTR[((128+8))+rsp],rdi - mov QWORD PTR[((128+16))+rsp],rcx - - mulx r8,rbx,QWORD PTR[rsi] - mov QWORD PTR[rsp],rbx - xor edi,edi - - mulx r9,rax,QWORD PTR[8+rsi] - - mulx r10,rbx,QWORD PTR[16+rsi] - adcx r8,rax - - mulx r11,rax,QWORD PTR[24+rsi] - adcx r9,rbx - - mulx r12,rbx,QWORD PTR[32+rsi] - adcx r10,rax - - mulx r13,rax,QWORD PTR[40+rsi] - adcx r11,rbx - - mulx r14,rbx,QWORD PTR[48+rsi] - adcx r12,rax - - mulx r15,rax,QWORD PTR[56+rsi] - adcx r13,rbx - adcx r14,rax -DB 067h - mov rbx,r8 - adcx r15,rdi - - mov rcx,-7 - jmp $L$oop_mulx_gather - -ALIGN 32 -$L$oop_mulx_gather:: - movdqa xmm8,XMMWORD PTR[rbp] - movdqa xmm9,XMMWORD PTR[16+rbp] - movdqa xmm10,XMMWORD PTR[32+rbp] - movdqa xmm11,XMMWORD PTR[48+rbp] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rbp] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rbp] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rbp] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rbp] - lea rbp,QWORD PTR[128+rbp] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 -DB 102,76,15,126,194 - -DB 0c4h,062h,0fbh,0f6h,086h,000h,000h,000h,000h - adcx rbx,rax - adox r8,r9 - - mulx r9,rax,QWORD PTR[8+rsi] - adcx r8,rax - adox r9,r10 - - mulx r10,rax,QWORD PTR[16+rsi] - adcx r9,rax - adox r10,r11 - -DB 0c4h,062h,0fbh,0f6h,09eh,018h,000h,000h,000h - adcx r10,rax - adox r11,r12 - - mulx r12,rax,QWORD PTR[32+rsi] - adcx r11,rax - adox r12,r13 - - mulx r13,rax,QWORD PTR[40+rsi] - adcx r12,rax - adox r13,r14 - -DB 0c4h,062h,0fbh,0f6h,0b6h,030h,000h,000h,000h - adcx r13,rax -DB 067h - adox r14,r15 - - mulx r15,rax,QWORD PTR[56+rsi] - mov QWORD PTR[64+rcx*8+rsp],rbx - adcx r14,rax - adox r15,rdi - mov rbx,r8 - adcx r15,rdi - - inc rcx - jnz $L$oop_mulx_gather - - mov QWORD PTR[64+rsp],r8 - mov QWORD PTR[((64+8))+rsp],r9 - mov QWORD PTR[((64+16))+rsp],r10 - mov QWORD PTR[((64+24))+rsp],r11 - mov QWORD PTR[((64+32))+rsp],r12 - mov QWORD PTR[((64+40))+rsp],r13 - mov QWORD PTR[((64+48))+rsp],r14 - mov QWORD PTR[((64+56))+rsp],r15 - - mov rdx,QWORD PTR[128+rsp] - mov rdi,QWORD PTR[((128+8))+rsp] - mov rbp,QWORD PTR[((128+16))+rsp] - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reducex - -$L$mul_gather_tail:: - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - lea rax,QWORD PTR[((128+24+48))+rsp] - movaps xmm6,XMMWORD PTR[((160-200))+rax] - movaps xmm7,XMMWORD PTR[((176-200))+rax] - movaps xmm8,XMMWORD PTR[((192-200))+rax] - movaps xmm9,XMMWORD PTR[((208-200))+rax] - movaps xmm10,XMMWORD PTR[((224-200))+rax] - movaps xmm11,XMMWORD PTR[((240-200))+rax] - movaps xmm12,XMMWORD PTR[((256-200))+rax] - movaps xmm13,XMMWORD PTR[((272-200))+rax] - movaps xmm14,XMMWORD PTR[((288-200))+rax] - movaps xmm15,XMMWORD PTR[((304-200))+rax] - lea rax,QWORD PTR[176+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_gather4_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_gather4:: -rsaz_512_mul_gather4 ENDP -PUBLIC rsaz_512_mul_scatter4 - -ALIGN 32 -rsaz_512_mul_scatter4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_scatter4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - mov r9d,r9d - sub rsp,128+24 -$L$mul_scatter4_body:: - lea r8,QWORD PTR[r9*8+r8] -DB 102,72,15,110,199 -DB 102,72,15,110,202 -DB 102,73,15,110,208 - mov QWORD PTR[128+rsp],rcx - - mov rbp,rdi - mov r11d,080100h - and r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp r11d,080100h - je $L$mulx_scatter - mov rbx,QWORD PTR[rdi] - call __rsaz_512_mul - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - jmp $L$mul_scatter_tail - -ALIGN 32 -$L$mulx_scatter:: - mov rdx,QWORD PTR[rdi] - call __rsaz_512_mulx - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov rdx,QWORD PTR[128+rsp] - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reducex - -$L$mul_scatter_tail:: - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] -DB 102,72,15,126,214 - sbb rcx,rcx - - call __rsaz_512_subtract - - mov QWORD PTR[rsi],r8 - mov QWORD PTR[128+rsi],r9 - mov QWORD PTR[256+rsi],r10 - mov QWORD PTR[384+rsi],r11 - mov QWORD PTR[512+rsi],r12 - mov QWORD PTR[640+rsi],r13 - mov QWORD PTR[768+rsi],r14 - mov QWORD PTR[896+rsi],r15 - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_scatter4_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_scatter4:: -rsaz_512_mul_scatter4 ENDP -PUBLIC rsaz_512_mul_by_one - -ALIGN 32 -rsaz_512_mul_by_one PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_by_one:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$mul_by_one_body:: - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+8))] - mov rbp,rdx - mov QWORD PTR[128+rsp],rcx - - mov r8,QWORD PTR[rsi] - pxor xmm0,xmm0 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - mov r12,QWORD PTR[32+rsi] - mov r13,QWORD PTR[40+rsi] - mov r14,QWORD PTR[48+rsi] - mov r15,QWORD PTR[56+rsi] - - movdqa XMMWORD PTR[rsp],xmm0 - movdqa XMMWORD PTR[16+rsp],xmm0 - movdqa XMMWORD PTR[32+rsp],xmm0 - movdqa XMMWORD PTR[48+rsp],xmm0 - movdqa XMMWORD PTR[64+rsp],xmm0 - movdqa XMMWORD PTR[80+rsp],xmm0 - movdqa XMMWORD PTR[96+rsp],xmm0 - and eax,080100h - cmp eax,080100h - je $L$by_one_callx - call __rsaz_512_reduce - jmp $L$by_one_tail -ALIGN 32 -$L$by_one_callx:: - mov rdx,QWORD PTR[128+rsp] - call __rsaz_512_reducex -$L$by_one_tail:: - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_by_one_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_by_one:: -rsaz_512_mul_by_one ENDP - -ALIGN 32 -__rsaz_512_reduce PROC PRIVATE - mov rbx,r8 - imul rbx,QWORD PTR[((128+8))+rsp] - mov rax,QWORD PTR[rbp] - mov ecx,8 - jmp $L$reduction_loop - -ALIGN 32 -$L$reduction_loop:: - mul rbx - mov rax,QWORD PTR[8+rbp] - neg r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - add r10,r11 - mov rsi,QWORD PTR[((128+8))+rsp] - - - adc rdx,0 - mov r11,rdx - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - imul rsi,r8 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,rsi - add r15,rax - mov rax,QWORD PTR[rbp] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - dec ecx - jne $L$reduction_loop - - DB 0F3h,0C3h ;repret -__rsaz_512_reduce ENDP - -ALIGN 32 -__rsaz_512_reducex PROC PRIVATE - - imul rdx,r8 - xor rsi,rsi - mov ecx,8 - jmp $L$reduction_loopx - -ALIGN 32 -$L$reduction_loopx:: - mov rbx,r8 - mulx r8,rax,QWORD PTR[rbp] - adcx rax,rbx - adox r8,r9 - - mulx r9,rax,QWORD PTR[8+rbp] - adcx r8,rax - adox r9,r10 - - mulx r10,rbx,QWORD PTR[16+rbp] - adcx r9,rbx - adox r10,r11 - - mulx r11,rbx,QWORD PTR[24+rbp] - adcx r10,rbx - adox r11,r12 - -DB 0c4h,062h,0e3h,0f6h,0a5h,020h,000h,000h,000h - mov rax,rdx - mov rdx,r8 - adcx r11,rbx - adox r12,r13 - - mulx rdx,rbx,QWORD PTR[((128+8))+rsp] - mov rdx,rax - - mulx r13,rax,QWORD PTR[40+rbp] - adcx r12,rax - adox r13,r14 - -DB 0c4h,062h,0fbh,0f6h,0b5h,030h,000h,000h,000h - adcx r13,rax - adox r14,r15 - - mulx r15,rax,QWORD PTR[56+rbp] - mov rdx,rbx - adcx r14,rax - adox r15,rsi - adcx r15,rsi - - dec ecx - jne $L$reduction_loopx - - DB 0F3h,0C3h ;repret -__rsaz_512_reducex ENDP - -ALIGN 32 -__rsaz_512_subtract PROC PRIVATE - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - mov r8,QWORD PTR[rbp] - mov r9,QWORD PTR[8+rbp] - neg r8 - not r9 - and r8,rcx - mov r10,QWORD PTR[16+rbp] - and r9,rcx - not r10 - mov r11,QWORD PTR[24+rbp] - and r10,rcx - not r11 - mov r12,QWORD PTR[32+rbp] - and r11,rcx - not r12 - mov r13,QWORD PTR[40+rbp] - and r12,rcx - not r13 - mov r14,QWORD PTR[48+rbp] - and r13,rcx - not r14 - mov r15,QWORD PTR[56+rbp] - and r14,rcx - not r15 - and r15,rcx - - add r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - DB 0F3h,0C3h ;repret -__rsaz_512_subtract ENDP - -ALIGN 32 -__rsaz_512_mul PROC PRIVATE - lea rdi,QWORD PTR[8+rsp] - - mov rax,QWORD PTR[rsi] - mul rbx - mov QWORD PTR[rdi],rax - mov rax,QWORD PTR[8+rsi] - mov r8,rdx - - mul rbx - add r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - adc r9,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[rsi] - mov r15,rdx - adc r15,0 - - lea rbp,QWORD PTR[8+rbp] - lea rdi,QWORD PTR[8+rdi] - - mov ecx,7 - jmp $L$oop_mul - -ALIGN 32 -$L$oop_mul:: - mov rbx,QWORD PTR[rbp] - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r13,r14 - mov r14,rdx - lea rbp,QWORD PTR[8+rbp] - adc r14,0 - - mul rbx - add r15,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rdi] - - dec ecx - jnz $L$oop_mul - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - DB 0F3h,0C3h ;repret -__rsaz_512_mul ENDP - -ALIGN 32 -__rsaz_512_mulx PROC PRIVATE - mulx r8,rbx,QWORD PTR[rsi] - mov rcx,-6 - - mulx r9,rax,QWORD PTR[8+rsi] - mov QWORD PTR[8+rsp],rbx - - mulx r10,rbx,QWORD PTR[16+rsi] - adc r8,rax - - mulx r11,rax,QWORD PTR[24+rsi] - adc r9,rbx - - mulx r12,rbx,QWORD PTR[32+rsi] - adc r10,rax - - mulx r13,rax,QWORD PTR[40+rsi] - adc r11,rbx - - mulx r14,rbx,QWORD PTR[48+rsi] - adc r12,rax - - mulx r15,rax,QWORD PTR[56+rsi] - mov rdx,QWORD PTR[8+rbp] - adc r13,rbx - adc r14,rax - adc r15,0 - - xor rdi,rdi - jmp $L$oop_mulx - -ALIGN 32 -$L$oop_mulx:: - mov rbx,r8 - mulx r8,rax,QWORD PTR[rsi] - adcx rbx,rax - adox r8,r9 - - mulx r9,rax,QWORD PTR[8+rsi] - adcx r8,rax - adox r9,r10 - - mulx r10,rax,QWORD PTR[16+rsi] - adcx r9,rax - adox r10,r11 - - mulx r11,rax,QWORD PTR[24+rsi] - adcx r10,rax - adox r11,r12 - -DB 03eh,0c4h,062h,0fbh,0f6h,0a6h,020h,000h,000h,000h - adcx r11,rax - adox r12,r13 - - mulx r13,rax,QWORD PTR[40+rsi] - adcx r12,rax - adox r13,r14 - - mulx r14,rax,QWORD PTR[48+rsi] - adcx r13,rax - adox r14,r15 - - mulx r15,rax,QWORD PTR[56+rsi] - mov rdx,QWORD PTR[64+rcx*8+rbp] - mov QWORD PTR[((8+64-8))+rcx*8+rsp],rbx - adcx r14,rax - adox r15,rdi - adcx r15,rdi - - inc rcx - jnz $L$oop_mulx - - mov rbx,r8 - mulx r8,rax,QWORD PTR[rsi] - adcx rbx,rax - adox r8,r9 - -DB 0c4h,062h,0fbh,0f6h,08eh,008h,000h,000h,000h - adcx r8,rax - adox r9,r10 - -DB 0c4h,062h,0fbh,0f6h,096h,010h,000h,000h,000h - adcx r9,rax - adox r10,r11 - - mulx r11,rax,QWORD PTR[24+rsi] - adcx r10,rax - adox r11,r12 - - mulx r12,rax,QWORD PTR[32+rsi] - adcx r11,rax - adox r12,r13 - - mulx r13,rax,QWORD PTR[40+rsi] - adcx r12,rax - adox r13,r14 - -DB 0c4h,062h,0fbh,0f6h,0b6h,030h,000h,000h,000h - adcx r13,rax - adox r14,r15 - -DB 0c4h,062h,0fbh,0f6h,0beh,038h,000h,000h,000h - adcx r14,rax - adox r15,rdi - adcx r15,rdi - - mov QWORD PTR[((8+64-8))+rsp],rbx - mov QWORD PTR[((8+64))+rsp],r8 - mov QWORD PTR[((8+64+8))+rsp],r9 - mov QWORD PTR[((8+64+16))+rsp],r10 - mov QWORD PTR[((8+64+24))+rsp],r11 - mov QWORD PTR[((8+64+32))+rsp],r12 - mov QWORD PTR[((8+64+40))+rsp],r13 - mov QWORD PTR[((8+64+48))+rsp],r14 - mov QWORD PTR[((8+64+56))+rsp],r15 - - DB 0F3h,0C3h ;repret -__rsaz_512_mulx ENDP -PUBLIC rsaz_512_scatter4 - -ALIGN 16 -rsaz_512_scatter4 PROC PUBLIC - lea rcx,QWORD PTR[r8*8+rcx] - mov r9d,8 - jmp $L$oop_scatter -ALIGN 16 -$L$oop_scatter:: - mov rax,QWORD PTR[rdx] - lea rdx,QWORD PTR[8+rdx] - mov QWORD PTR[rcx],rax - lea rcx,QWORD PTR[128+rcx] - dec r9d - jnz $L$oop_scatter - DB 0F3h,0C3h ;repret -rsaz_512_scatter4 ENDP - -PUBLIC rsaz_512_gather4 - -ALIGN 16 -rsaz_512_gather4 PROC PUBLIC -$L$SEH_begin_rsaz_512_gather4:: -DB 048h,081h,0ech,0a8h,000h,000h,000h -DB 00fh,029h,034h,024h -DB 00fh,029h,07ch,024h,010h -DB 044h,00fh,029h,044h,024h,020h -DB 044h,00fh,029h,04ch,024h,030h -DB 044h,00fh,029h,054h,024h,040h -DB 044h,00fh,029h,05ch,024h,050h -DB 044h,00fh,029h,064h,024h,060h -DB 044h,00fh,029h,06ch,024h,070h -DB 044h,00fh,029h,0b4h,024h,080h,0,0,0 -DB 044h,00fh,029h,0bch,024h,090h,0,0,0 - movd xmm8,r8d - movdqa xmm1,XMMWORD PTR[(($L$inc+16))] - movdqa xmm0,XMMWORD PTR[$L$inc] - - pshufd xmm8,xmm8,0 - movdqa xmm7,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm8 - movdqa xmm3,xmm7 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm8 - movdqa xmm4,xmm7 - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm8 - movdqa xmm5,xmm7 - paddd xmm4,xmm3 - pcmpeqd xmm3,xmm8 - movdqa xmm6,xmm7 - paddd xmm5,xmm4 - pcmpeqd xmm4,xmm8 - paddd xmm6,xmm5 - pcmpeqd xmm5,xmm8 - paddd xmm7,xmm6 - pcmpeqd xmm6,xmm8 - pcmpeqd xmm7,xmm8 - mov r9d,8 - jmp $L$oop_gather -ALIGN 16 -$L$oop_gather:: - movdqa xmm8,XMMWORD PTR[rdx] - movdqa xmm9,XMMWORD PTR[16+rdx] - movdqa xmm10,XMMWORD PTR[32+rdx] - movdqa xmm11,XMMWORD PTR[48+rdx] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rdx] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rdx] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rdx] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rdx] - lea rdx,QWORD PTR[128+rdx] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 - movq QWORD PTR[rcx],xmm8 - lea rcx,QWORD PTR[8+rcx] - dec r9d - jnz $L$oop_gather - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - add rsp,0a8h - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_gather4:: -rsaz_512_gather4 ENDP - -ALIGN 64 -$L$inc:: - DD 0,0,1,1 - DD 2,2,2,2 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rax,QWORD PTR[((128+24+48))+rax] - - lea rbx,QWORD PTR[$L$mul_gather4_epilogue] - cmp rbx,r10 - jne $L$se_not_in_mul_gather4 - - lea rax,QWORD PTR[176+rax] - - lea rsi,QWORD PTR[((-48-168))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$se_not_in_mul_gather4:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_rsaz_512_sqr - DD imagerel $L$SEH_end_rsaz_512_sqr - DD imagerel $L$SEH_info_rsaz_512_sqr - - DD imagerel $L$SEH_begin_rsaz_512_mul - DD imagerel $L$SEH_end_rsaz_512_mul - DD imagerel $L$SEH_info_rsaz_512_mul - - DD imagerel $L$SEH_begin_rsaz_512_mul_gather4 - DD imagerel $L$SEH_end_rsaz_512_mul_gather4 - DD imagerel $L$SEH_info_rsaz_512_mul_gather4 - - DD imagerel $L$SEH_begin_rsaz_512_mul_scatter4 - DD imagerel $L$SEH_end_rsaz_512_mul_scatter4 - DD imagerel $L$SEH_info_rsaz_512_mul_scatter4 - - DD imagerel $L$SEH_begin_rsaz_512_mul_by_one - DD imagerel $L$SEH_end_rsaz_512_mul_by_one - DD imagerel $L$SEH_info_rsaz_512_mul_by_one - - DD imagerel $L$SEH_begin_rsaz_512_gather4 - DD imagerel $L$SEH_end_rsaz_512_gather4 - DD imagerel $L$SEH_info_rsaz_512_gather4 - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_rsaz_512_sqr:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$sqr_body,imagerel $L$sqr_epilogue -$L$SEH_info_rsaz_512_mul:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_body,imagerel $L$mul_epilogue -$L$SEH_info_rsaz_512_mul_gather4:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_gather4_body,imagerel $L$mul_gather4_epilogue -$L$SEH_info_rsaz_512_mul_scatter4:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_scatter4_body,imagerel $L$mul_scatter4_epilogue -$L$SEH_info_rsaz_512_mul_by_one:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_by_one_body,imagerel $L$mul_by_one_epilogue -$L$SEH_info_rsaz_512_gather4:: -DB 001h,046h,016h,000h -DB 046h,0f8h,009h,000h -DB 03dh,0e8h,008h,000h -DB 034h,0d8h,007h,000h -DB 02eh,0c8h,006h,000h -DB 028h,0b8h,005h,000h -DB 022h,0a8h,004h,000h -DB 01ch,098h,003h,000h -DB 016h,088h,002h,000h -DB 010h,078h,001h,000h -DB 00bh,068h,000h,000h -DB 007h,001h,015h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/bn/x86_64-gf2m.asm b/deps/openssl/asm/x64-win32-masm/bn/x86_64-gf2m.asm deleted file mode 100644 index d2e9c6600bfc47..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/bn/x86_64-gf2m.asm +++ /dev/null @@ -1,399 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - -ALIGN 16 -_mul_1x1 PROC PRIVATE - sub rsp,128+8 - mov r9,-1 - lea rsi,QWORD PTR[rax*1+rax] - shr r9,3 - lea rdi,QWORD PTR[rax*4] - and r9,rax - lea r12,QWORD PTR[rax*8] - sar rax,63 - lea r10,QWORD PTR[r9*1+r9] - sar rsi,63 - lea r11,QWORD PTR[r9*4] - and rax,rbp - sar rdi,63 - mov rdx,rax - shl rax,63 - and rsi,rbp - shr rdx,1 - mov rcx,rsi - shl rsi,62 - and rdi,rbp - shr rcx,2 - xor rax,rsi - mov rbx,rdi - shl rdi,61 - xor rdx,rcx - shr rbx,3 - xor rax,rdi - xor rdx,rbx - - mov r13,r9 - mov QWORD PTR[rsp],0 - xor r13,r10 - mov QWORD PTR[8+rsp],r9 - mov r14,r11 - mov QWORD PTR[16+rsp],r10 - xor r14,r12 - mov QWORD PTR[24+rsp],r13 - - xor r9,r11 - mov QWORD PTR[32+rsp],r11 - xor r10,r11 - mov QWORD PTR[40+rsp],r9 - xor r13,r11 - mov QWORD PTR[48+rsp],r10 - xor r9,r14 - mov QWORD PTR[56+rsp],r13 - xor r10,r14 - - mov QWORD PTR[64+rsp],r12 - xor r13,r14 - mov QWORD PTR[72+rsp],r9 - xor r9,r11 - mov QWORD PTR[80+rsp],r10 - xor r10,r11 - mov QWORD PTR[88+rsp],r13 - - xor r13,r11 - mov QWORD PTR[96+rsp],r14 - mov rsi,r8 - mov QWORD PTR[104+rsp],r9 - and rsi,rbp - mov QWORD PTR[112+rsp],r10 - shr rbp,4 - mov QWORD PTR[120+rsp],r13 - mov rdi,r8 - and rdi,rbp - shr rbp,4 - - movq xmm0,QWORD PTR[rsi*8+rsp] - mov rsi,r8 - and rsi,rbp - shr rbp,4 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,4 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,60 - xor rax,rcx - pslldq xmm1,1 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,12 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,52 - xor rax,rcx - pslldq xmm1,2 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,20 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,44 - xor rax,rcx - pslldq xmm1,3 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,28 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,36 - xor rax,rcx - pslldq xmm1,4 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,36 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,28 - xor rax,rcx - pslldq xmm1,5 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,44 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,20 - xor rax,rcx - pslldq xmm1,6 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,52 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,12 - xor rax,rcx - pslldq xmm1,7 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rbx,rcx - shl rcx,60 -DB 102,72,15,126,198 - shr rbx,4 - xor rax,rcx - psrldq xmm0,8 - xor rdx,rbx -DB 102,72,15,126,199 - xor rax,rsi - xor rdx,rdi - - add rsp,128+8 - DB 0F3h,0C3h ;repret -$L$end_mul_1x1:: -_mul_1x1 ENDP -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC bn_GF2m_mul_2x2 - -ALIGN 16 -bn_GF2m_mul_2x2 PROC PUBLIC - mov rax,QWORD PTR[OPENSSL_ia32cap_P] - bt rax,33 - jnc $L$vanilla_mul_2x2 - -DB 102,72,15,110,194 -DB 102,73,15,110,201 -DB 102,73,15,110,208 - movq xmm3,QWORD PTR[40+rsp] - movdqa xmm4,xmm0 - movdqa xmm5,xmm1 -DB 102,15,58,68,193,0 - pxor xmm4,xmm2 - pxor xmm5,xmm3 -DB 102,15,58,68,211,0 -DB 102,15,58,68,229,0 - xorps xmm4,xmm0 - xorps xmm4,xmm2 - movdqa xmm5,xmm4 - pslldq xmm4,8 - psrldq xmm5,8 - pxor xmm2,xmm4 - pxor xmm0,xmm5 - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm0 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$vanilla_mul_2x2:: - lea rsp,QWORD PTR[((-136))+rsp] - mov r10,QWORD PTR[176+rsp] - mov QWORD PTR[120+rsp],rdi - mov QWORD PTR[128+rsp],rsi - mov QWORD PTR[80+rsp],r14 - mov QWORD PTR[88+rsp],r13 - mov QWORD PTR[96+rsp],r12 - mov QWORD PTR[104+rsp],rbp - mov QWORD PTR[112+rsp],rbx -$L$body_mul_2x2:: - mov QWORD PTR[32+rsp],rcx - mov QWORD PTR[40+rsp],rdx - mov QWORD PTR[48+rsp],r8 - mov QWORD PTR[56+rsp],r9 - mov QWORD PTR[64+rsp],r10 - - mov r8,0fh - mov rax,rdx - mov rbp,r9 - call _mul_1x1 - mov QWORD PTR[16+rsp],rax - mov QWORD PTR[24+rsp],rdx - - mov rax,QWORD PTR[48+rsp] - mov rbp,QWORD PTR[64+rsp] - call _mul_1x1 - mov QWORD PTR[rsp],rax - mov QWORD PTR[8+rsp],rdx - - mov rax,QWORD PTR[40+rsp] - mov rbp,QWORD PTR[56+rsp] - xor rax,QWORD PTR[48+rsp] - xor rbp,QWORD PTR[64+rsp] - call _mul_1x1 - mov rbx,QWORD PTR[rsp] - mov rcx,QWORD PTR[8+rsp] - mov rdi,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov rbp,QWORD PTR[32+rsp] - - xor rax,rdx - xor rdx,rcx - xor rax,rbx - mov QWORD PTR[rbp],rbx - xor rdx,rdi - mov QWORD PTR[24+rbp],rsi - xor rax,rsi - xor rdx,rsi - xor rax,rdx - mov QWORD PTR[16+rbp],rdx - mov QWORD PTR[8+rbp],rax - - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbp,QWORD PTR[104+rsp] - mov rbx,QWORD PTR[112+rsp] - mov rdi,QWORD PTR[120+rsp] - mov rsi,QWORD PTR[128+rsp] - lea rsp,QWORD PTR[136+rsp] - DB 0F3h,0C3h ;repret -$L$end_mul_2x2:: -bn_GF2m_mul_2x2 ENDP -DB 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -DB 99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 -ALIGN 16 -EXTERN __imp_RtlVirtualUnwind:NEAR - - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$body_mul_2x2] - cmp rbx,r10 - jb $L$in_prologue - - mov r14,QWORD PTR[80+rax] - mov r13,QWORD PTR[88+rax] - mov r12,QWORD PTR[96+rax] - mov rbp,QWORD PTR[104+rax] - mov rbx,QWORD PTR[112+rax] - mov rdi,QWORD PTR[120+rax] - mov rsi,QWORD PTR[128+rax] - - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - -$L$in_prologue:: - lea rax,QWORD PTR[136+rax] - mov QWORD PTR[152+r8],rax - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel _mul_1x1 - DD imagerel $L$end_mul_1x1 - DD imagerel $L$SEH_info_1x1 - - DD imagerel $L$vanilla_mul_2x2 - DD imagerel $L$end_mul_2x2 - DD imagerel $L$SEH_info_2x2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_1x1:: -DB 001h,007h,002h,000h -DB 007h,001h,011h,000h -$L$SEH_info_2x2:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm deleted file mode 100644 index a1efb2f6987991..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm +++ /dev/null @@ -1,1404 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC bn_mul_mont - -ALIGN 16 -bn_mul_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp - test r9d,3 - jnz $L$mul_enter - cmp r9d,8 - jb $L$mul_enter - mov r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp rdx,rsi - jne $L$mul4x_enter - test r9d,7 - jz $L$sqr8x_enter - jmp $L$mul4x_enter - -ALIGN 16 -$L$mul_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-16))+r9*8+rsp] - neg r9 - and r10,-1024 - - - - - - - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk - jmp $L$mul_page_walk_done - -ALIGN 16 -$L$mul_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk -$L$mul_page_walk_done:: - - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul_body:: - mov r12,rdx - mov r8,QWORD PTR[r8] - mov rbx,QWORD PTR[r12] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$1st_enter - -ALIGN 16 -$L$1st:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r11 - mov r11,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$1st_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[1+r15] - mov r10,rdx - - mul rbp - cmp r15,r9 - jne $L$1st - - add r13,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - mov r11,r10 - - xor rdx,rdx - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - jmp $L$outer -ALIGN 16 -$L$outer:: - mov rbx,QWORD PTR[r14*8+r12] - xor r15,r15 - mov rbp,r8 - mov r10,QWORD PTR[rsp] - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r10,QWORD PTR[8+rsp] - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$inner_enter - -ALIGN 16 -$L$inner:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$inner_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - lea r15,QWORD PTR[1+r15] - - mul rbp - cmp r15,r9 - jne $L$inner - - add r13,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - - xor rdx,rdx - add r13,r11 - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - cmp r14,r9 - jb $L$outer - - xor r14,r14 - mov rax,QWORD PTR[rsp] - lea rsi,QWORD PTR[rsp] - mov r15,r9 - jmp $L$sub -ALIGN 16 -$L$sub:: sbb rax,QWORD PTR[r14*8+rcx] - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[8+r14*8+rsi] - lea r14,QWORD PTR[1+r14] - dec r15 - jnz $L$sub - - sbb rax,0 - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - mov r15,r9 - or rsi,rcx -ALIGN 16 -$L$copy:: - mov rax,QWORD PTR[r14*8+rsi] - mov QWORD PTR[r14*8+rsp],r14 - mov QWORD PTR[r14*8+rdi],rax - lea r14,QWORD PTR[1+r14] - sub r15,1 - jnz $L$copy - - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul_mont:: -bn_mul_mont ENDP - -ALIGN 16 -bn_mul4x_mont PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul4x_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp -$L$mul4x_enter:: - and r11d,080100h - cmp r11d,080100h - je $L$mulx4x_enter - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-32))+r9*8+rsp] - neg r9 - and r10,-1024 - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul4x_page_walk - jmp $L$mul4x_page_walk_done - -$L$mul4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul4x_page_walk -$L$mul4x_page_walk_done:: - - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul4x_body:: - mov QWORD PTR[16+r9*8+rsp],rdi - mov r12,rdx - mov r8,QWORD PTR[r8] - mov rbx,QWORD PTR[r12] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[4+r15] - adc rdx,0 - mov QWORD PTR[rsp],rdi - mov r13,rdx - jmp $L$1st4x -ALIGN 16 -$L$1st4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[4+r15] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[((-16))+r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-32))+r15*8+rsp],rdi - mov r13,rdx - cmp r15,r9 - jb $L$1st4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - xor rdi,rdi - add r13,r10 - adc rdi,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov QWORD PTR[r15*8+rsp],rdi - - lea r14,QWORD PTR[1+r14] -ALIGN 4 -$L$outer4x:: - mov rbx,QWORD PTR[r14*8+r12] - xor r15,r15 - mov r10,QWORD PTR[rsp] - mov rbp,r8 - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+rsp] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[4+r15] - adc rdx,0 - mov QWORD PTR[rsp],rdi - mov r13,rdx - jmp $L$inner4x -ALIGN 16 -$L$inner4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[((-16))+r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r15*8+rsp] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r15*8+rsp] - adc rdx,0 - lea r15,QWORD PTR[4+r15] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[((-16))+r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-32))+r15*8+rsp],rdi - mov r13,rdx - cmp r15,r9 - jb $L$inner4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[((-16))+r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r15*8+rsp] - adc rdx,0 - lea r14,QWORD PTR[1+r14] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - xor rdi,rdi - add r13,r10 - adc rdi,0 - add r13,QWORD PTR[r9*8+rsp] - adc rdi,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov QWORD PTR[r15*8+rsp],rdi - - cmp r14,r9 - jb $L$outer4x - mov rdi,QWORD PTR[16+r9*8+rsp] - mov rax,QWORD PTR[rsp] - pxor xmm0,xmm0 - mov rdx,QWORD PTR[8+rsp] - shr r9,2 - lea rsi,QWORD PTR[rsp] - xor r14,r14 - - sub rax,QWORD PTR[rcx] - mov rbx,QWORD PTR[16+rsi] - mov rbp,QWORD PTR[24+rsi] - sbb rdx,QWORD PTR[8+rcx] - lea r15,QWORD PTR[((-1))+r9] - jmp $L$sub4x -ALIGN 16 -$L$sub4x:: - mov QWORD PTR[r14*8+rdi],rax - mov QWORD PTR[8+r14*8+rdi],rdx - sbb rbx,QWORD PTR[16+r14*8+rcx] - mov rax,QWORD PTR[32+r14*8+rsi] - mov rdx,QWORD PTR[40+r14*8+rsi] - sbb rbp,QWORD PTR[24+r14*8+rcx] - mov QWORD PTR[16+r14*8+rdi],rbx - mov QWORD PTR[24+r14*8+rdi],rbp - sbb rax,QWORD PTR[32+r14*8+rcx] - mov rbx,QWORD PTR[48+r14*8+rsi] - mov rbp,QWORD PTR[56+r14*8+rsi] - sbb rdx,QWORD PTR[40+r14*8+rcx] - lea r14,QWORD PTR[4+r14] - dec r15 - jnz $L$sub4x - - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[32+r14*8+rsi] - sbb rbx,QWORD PTR[16+r14*8+rcx] - mov QWORD PTR[8+r14*8+rdi],rdx - sbb rbp,QWORD PTR[24+r14*8+rcx] - mov QWORD PTR[16+r14*8+rdi],rbx - - sbb rax,0 - mov QWORD PTR[24+r14*8+rdi],rbp - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - lea r15,QWORD PTR[((-1))+r9] - or rsi,rcx - - movdqu xmm1,XMMWORD PTR[rsi] - movdqa XMMWORD PTR[rsp],xmm0 - movdqu XMMWORD PTR[rdi],xmm1 - jmp $L$copy4x -ALIGN 16 -$L$copy4x:: - movdqu xmm2,XMMWORD PTR[16+r14*1+rsi] - movdqu xmm1,XMMWORD PTR[32+r14*1+rsi] - movdqa XMMWORD PTR[16+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[16+r14*1+rdi],xmm2 - movdqa XMMWORD PTR[32+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[32+r14*1+rdi],xmm1 - lea r14,QWORD PTR[32+r14] - dec r15 - jnz $L$copy4x - - shl r9,2 - movdqu xmm2,XMMWORD PTR[16+r14*1+rsi] - movdqa XMMWORD PTR[16+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[16+r14*1+rdi],xmm2 - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul4x_mont:: -bn_mul4x_mont ENDP -EXTERN bn_sqrx8x_internal:NEAR -EXTERN bn_sqr8x_internal:NEAR - - -ALIGN 32 -bn_sqr8x_mont PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_sqr8x_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp -$L$sqr8x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$sqr8x_prologue:: - - mov r10d,r9d - shl r9d,3 - shl r10,3+2 - neg r9 - - - - - - - lea r11,QWORD PTR[((-64))+r9*2+rsp] - mov rbp,rsp - mov r8,QWORD PTR[r8] - sub r11,rsi - and r11,4095 - cmp r10,r11 - jb $L$sqr8x_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-64))+r9*2+rbp] - jmp $L$sqr8x_sp_done - -ALIGN 32 -$L$sqr8x_sp_alt:: - lea r10,QWORD PTR[((4096-64))+r9*2] - lea rbp,QWORD PTR[((-64))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$sqr8x_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$sqr8x_page_walk - jmp $L$sqr8x_page_walk_done - -ALIGN 16 -$L$sqr8x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$sqr8x_page_walk -$L$sqr8x_page_walk_done:: - - mov r10,r9 - neg r9 - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$sqr8x_body:: - -DB 102,72,15,110,209 - pxor xmm0,xmm0 -DB 102,72,15,110,207 -DB 102,73,15,110,218 - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+8))] - and eax,080100h - cmp eax,080100h - jne $L$sqr8x_nox - - call bn_sqrx8x_internal - - - - - lea rbx,QWORD PTR[rcx*1+r8] - mov r9,rcx - mov rdx,rcx -DB 102,72,15,126,207 - sar rcx,3+2 - jmp $L$sqr8x_sub - -ALIGN 32 -$L$sqr8x_nox:: - call bn_sqr8x_internal - - - - - lea rbx,QWORD PTR[r9*1+rdi] - mov rcx,r9 - mov rdx,r9 -DB 102,72,15,126,207 - sar rcx,3+2 - jmp $L$sqr8x_sub - -ALIGN 32 -$L$sqr8x_sub:: - mov r12,QWORD PTR[rbx] - mov r13,QWORD PTR[8+rbx] - mov r14,QWORD PTR[16+rbx] - mov r15,QWORD PTR[24+rbx] - lea rbx,QWORD PTR[32+rbx] - sbb r12,QWORD PTR[rbp] - sbb r13,QWORD PTR[8+rbp] - sbb r14,QWORD PTR[16+rbp] - sbb r15,QWORD PTR[24+rbp] - lea rbp,QWORD PTR[32+rbp] - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - lea rdi,QWORD PTR[32+rdi] - inc rcx - jnz $L$sqr8x_sub - - sbb rax,0 - lea rbx,QWORD PTR[r9*1+rbx] - lea rdi,QWORD PTR[r9*1+rdi] - -DB 102,72,15,110,200 - pxor xmm0,xmm0 - pshufd xmm1,xmm1,0 - mov rsi,QWORD PTR[40+rsp] - jmp $L$sqr8x_cond_copy - -ALIGN 32 -$L$sqr8x_cond_copy:: - movdqa xmm2,XMMWORD PTR[rbx] - movdqa xmm3,XMMWORD PTR[16+rbx] - lea rbx,QWORD PTR[32+rbx] - movdqu xmm4,XMMWORD PTR[rdi] - movdqu xmm5,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - movdqa XMMWORD PTR[(-32)+rbx],xmm0 - movdqa XMMWORD PTR[(-16)+rbx],xmm0 - movdqa XMMWORD PTR[(-32)+rdx*1+rbx],xmm0 - movdqa XMMWORD PTR[(-16)+rdx*1+rbx],xmm0 - pcmpeqd xmm0,xmm1 - pand xmm2,xmm1 - pand xmm3,xmm1 - pand xmm4,xmm0 - pand xmm5,xmm0 - pxor xmm0,xmm0 - por xmm4,xmm2 - por xmm5,xmm3 - movdqu XMMWORD PTR[(-32)+rdi],xmm4 - movdqu XMMWORD PTR[(-16)+rdi],xmm5 - add r9,32 - jnz $L$sqr8x_cond_copy - - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$sqr8x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_sqr8x_mont:: -bn_sqr8x_mont ENDP - -ALIGN 32 -bn_mulx4x_mont PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mulx4x_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp -$L$mulx4x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$mulx4x_prologue:: - - shl r9d,3 - xor r10,r10 - sub r10,r9 - mov r8,QWORD PTR[r8] - lea rbp,QWORD PTR[((-72))+r10*1+rsp] - and rbp,-128 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mulx4x_page_walk - jmp $L$mulx4x_page_walk_done - -ALIGN 16 -$L$mulx4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mulx4x_page_walk -$L$mulx4x_page_walk_done:: - - lea r10,QWORD PTR[r9*1+rdx] - - - - - - - - - - - - - mov QWORD PTR[rsp],r9 - shr r9,5 - mov QWORD PTR[16+rsp],r10 - sub r9,1 - mov QWORD PTR[24+rsp],r8 - mov QWORD PTR[32+rsp],rdi - mov QWORD PTR[40+rsp],rax - mov QWORD PTR[48+rsp],r9 - jmp $L$mulx4x_body - -ALIGN 32 -$L$mulx4x_body:: - lea rdi,QWORD PTR[8+rdx] - mov rdx,QWORD PTR[rdx] - lea rbx,QWORD PTR[((64+32))+rsp] - mov r9,rdx - - mulx rax,r8,QWORD PTR[rsi] - mulx r14,r11,QWORD PTR[8+rsi] - add r11,rax - mov QWORD PTR[8+rsp],rdi - mulx r13,r12,QWORD PTR[16+rsi] - adc r12,r14 - adc r13,0 - - mov rdi,r8 - imul r8,QWORD PTR[24+rsp] - xor rbp,rbp - - mulx r14,rax,QWORD PTR[24+rsi] - mov rdx,r8 - lea rsi,QWORD PTR[32+rsi] - adcx r13,rax - adcx r14,rbp - - mulx r10,rax,QWORD PTR[rcx] - adcx rdi,rax - adox r10,r11 - mulx r11,rax,QWORD PTR[8+rcx] - adcx r10,rax - adox r11,r12 -DB 0c4h,062h,0fbh,0f6h,0a1h,010h,000h,000h,000h - mov rdi,QWORD PTR[48+rsp] - mov QWORD PTR[((-32))+rbx],r10 - adcx r11,rax - adox r12,r13 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-24))+rbx],r11 - adcx r12,rax - adox r15,rbp - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-16))+rbx],r12 - - jmp $L$mulx4x_1st - -ALIGN 32 -$L$mulx4x_1st:: - adcx r15,rbp - mulx rax,r10,QWORD PTR[rsi] - adcx r10,r14 - mulx r14,r11,QWORD PTR[8+rsi] - adcx r11,rax - mulx rax,r12,QWORD PTR[16+rsi] - adcx r12,r14 - mulx r14,r13,QWORD PTR[24+rsi] -DB 067h,067h - mov rdx,r8 - adcx r13,rax - adcx r14,rbp - lea rsi,QWORD PTR[32+rsi] - lea rbx,QWORD PTR[32+rbx] - - adox r10,r15 - mulx r15,rax,QWORD PTR[rcx] - adcx r10,rax - adox r11,r15 - mulx r15,rax,QWORD PTR[8+rcx] - adcx r11,rax - adox r12,r15 - mulx r15,rax,QWORD PTR[16+rcx] - mov QWORD PTR[((-40))+rbx],r10 - adcx r12,rax - mov QWORD PTR[((-32))+rbx],r11 - adox r13,r15 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-24))+rbx],r12 - adcx r13,rax - adox r15,rbp - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-16))+rbx],r13 - - dec rdi - jnz $L$mulx4x_1st - - mov rax,QWORD PTR[rsp] - mov rdi,QWORD PTR[8+rsp] - adc r15,rbp - add r14,r15 - sbb r15,r15 - mov QWORD PTR[((-8))+rbx],r14 - jmp $L$mulx4x_outer - -ALIGN 32 -$L$mulx4x_outer:: - mov rdx,QWORD PTR[rdi] - lea rdi,QWORD PTR[8+rdi] - sub rsi,rax - mov QWORD PTR[rbx],r15 - lea rbx,QWORD PTR[((64+32))+rsp] - sub rcx,rax - - mulx r11,r8,QWORD PTR[rsi] - xor ebp,ebp - mov r9,rdx - mulx r12,r14,QWORD PTR[8+rsi] - adox r8,QWORD PTR[((-32))+rbx] - adcx r11,r14 - mulx r13,r15,QWORD PTR[16+rsi] - adox r11,QWORD PTR[((-24))+rbx] - adcx r12,r15 - adox r12,QWORD PTR[((-16))+rbx] - adcx r13,rbp - adox r13,rbp - - mov QWORD PTR[8+rsp],rdi - mov r15,r8 - imul r8,QWORD PTR[24+rsp] - xor ebp,ebp - - mulx r14,rax,QWORD PTR[24+rsi] - mov rdx,r8 - adcx r13,rax - adox r13,QWORD PTR[((-8))+rbx] - adcx r14,rbp - lea rsi,QWORD PTR[32+rsi] - adox r14,rbp - - mulx r10,rax,QWORD PTR[rcx] - adcx r15,rax - adox r10,r11 - mulx r11,rax,QWORD PTR[8+rcx] - adcx r10,rax - adox r11,r12 - mulx r12,rax,QWORD PTR[16+rcx] - mov QWORD PTR[((-32))+rbx],r10 - adcx r11,rax - adox r12,r13 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-24))+rbx],r11 - lea rcx,QWORD PTR[32+rcx] - adcx r12,rax - adox r15,rbp - mov rdi,QWORD PTR[48+rsp] - mov QWORD PTR[((-16))+rbx],r12 - - jmp $L$mulx4x_inner - -ALIGN 32 -$L$mulx4x_inner:: - mulx rax,r10,QWORD PTR[rsi] - adcx r15,rbp - adox r10,r14 - mulx r14,r11,QWORD PTR[8+rsi] - adcx r10,QWORD PTR[rbx] - adox r11,rax - mulx rax,r12,QWORD PTR[16+rsi] - adcx r11,QWORD PTR[8+rbx] - adox r12,r14 - mulx r14,r13,QWORD PTR[24+rsi] - mov rdx,r8 - adcx r12,QWORD PTR[16+rbx] - adox r13,rax - adcx r13,QWORD PTR[24+rbx] - adox r14,rbp - lea rsi,QWORD PTR[32+rsi] - lea rbx,QWORD PTR[32+rbx] - adcx r14,rbp - - adox r10,r15 - mulx r15,rax,QWORD PTR[rcx] - adcx r10,rax - adox r11,r15 - mulx r15,rax,QWORD PTR[8+rcx] - adcx r11,rax - adox r12,r15 - mulx r15,rax,QWORD PTR[16+rcx] - mov QWORD PTR[((-40))+rbx],r10 - adcx r12,rax - adox r13,r15 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-32))+rbx],r11 - mov QWORD PTR[((-24))+rbx],r12 - adcx r13,rax - adox r15,rbp - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-16))+rbx],r13 - - dec rdi - jnz $L$mulx4x_inner - - mov rax,QWORD PTR[rsp] - mov rdi,QWORD PTR[8+rsp] - adc r15,rbp - sub rbp,QWORD PTR[rbx] - adc r14,r15 - sbb r15,r15 - mov QWORD PTR[((-8))+rbx],r14 - - cmp rdi,QWORD PTR[16+rsp] - jne $L$mulx4x_outer - - lea rbx,QWORD PTR[64+rsp] - sub rcx,rax - neg r15 - mov rdx,rax - shr rax,3+2 - mov rdi,QWORD PTR[32+rsp] - jmp $L$mulx4x_sub - -ALIGN 32 -$L$mulx4x_sub:: - mov r11,QWORD PTR[rbx] - mov r12,QWORD PTR[8+rbx] - mov r13,QWORD PTR[16+rbx] - mov r14,QWORD PTR[24+rbx] - lea rbx,QWORD PTR[32+rbx] - sbb r11,QWORD PTR[rcx] - sbb r12,QWORD PTR[8+rcx] - sbb r13,QWORD PTR[16+rcx] - sbb r14,QWORD PTR[24+rcx] - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - mov QWORD PTR[16+rdi],r13 - mov QWORD PTR[24+rdi],r14 - lea rdi,QWORD PTR[32+rdi] - dec rax - jnz $L$mulx4x_sub - - sbb r15,0 - lea rbx,QWORD PTR[64+rsp] - sub rdi,rdx - -DB 102,73,15,110,207 - pxor xmm0,xmm0 - pshufd xmm1,xmm1,0 - mov rsi,QWORD PTR[40+rsp] - jmp $L$mulx4x_cond_copy - -ALIGN 32 -$L$mulx4x_cond_copy:: - movdqa xmm2,XMMWORD PTR[rbx] - movdqa xmm3,XMMWORD PTR[16+rbx] - lea rbx,QWORD PTR[32+rbx] - movdqu xmm4,XMMWORD PTR[rdi] - movdqu xmm5,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - movdqa XMMWORD PTR[(-32)+rbx],xmm0 - movdqa XMMWORD PTR[(-16)+rbx],xmm0 - pcmpeqd xmm0,xmm1 - pand xmm2,xmm1 - pand xmm3,xmm1 - pand xmm4,xmm0 - pand xmm5,xmm0 - pxor xmm0,xmm0 - por xmm4,xmm2 - por xmm5,xmm3 - movdqu XMMWORD PTR[(-32)+rdi],xmm4 - movdqu XMMWORD PTR[(-16)+rdi],xmm5 - sub rdx,32 - jnz $L$mulx4x_cond_copy - - mov QWORD PTR[rbx],rdx - - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mulx4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mulx4x_mont:: -bn_mulx4x_mont ENDP -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -DB 54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -ALIGN 16 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -mul_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov r10,QWORD PTR[192+r8] - mov rax,QWORD PTR[8+r10*8+rax] - - jmp $L$common_pop_regs -mul_handler ENDP - - -ALIGN 16 -sqr_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_pop_regs - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[8+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[40+rax] - -$L$common_pop_regs:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -sqr_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_bn_mul_mont - DD imagerel $L$SEH_end_bn_mul_mont - DD imagerel $L$SEH_info_bn_mul_mont - - DD imagerel $L$SEH_begin_bn_mul4x_mont - DD imagerel $L$SEH_end_bn_mul4x_mont - DD imagerel $L$SEH_info_bn_mul4x_mont - - DD imagerel $L$SEH_begin_bn_sqr8x_mont - DD imagerel $L$SEH_end_bn_sqr8x_mont - DD imagerel $L$SEH_info_bn_sqr8x_mont - DD imagerel $L$SEH_begin_bn_mulx4x_mont - DD imagerel $L$SEH_end_bn_mulx4x_mont - DD imagerel $L$SEH_info_bn_mulx4x_mont -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_bn_mul_mont:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul_body,imagerel $L$mul_epilogue -$L$SEH_info_bn_mul4x_mont:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul4x_body,imagerel $L$mul4x_epilogue -$L$SEH_info_bn_sqr8x_mont:: -DB 9,0,0,0 - DD imagerel sqr_handler - DD imagerel $L$sqr8x_prologue,imagerel $L$sqr8x_body,imagerel $L$sqr8x_epilogue -ALIGN 8 -$L$SEH_info_bn_mulx4x_mont:: -DB 9,0,0,0 - DD imagerel sqr_handler - DD imagerel $L$mulx4x_prologue,imagerel $L$mulx4x_body,imagerel $L$mulx4x_epilogue -ALIGN 8 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm b/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm deleted file mode 100644 index fb9aaaeabe2a90..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm +++ /dev/null @@ -1,3921 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC bn_mul_mont_gather5 - -ALIGN 64 -bn_mul_mont_gather5 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul_mont_gather5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp - test r9d,7 - jnz $L$mul_enter - mov r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - jmp $L$mul4x_enter - -ALIGN 16 -$L$mul_enter:: - movd xmm5,DWORD PTR[56+rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-280))+r9*8+rsp] - neg r9 - and r10,-1024 - - - - - - - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk - jmp $L$mul_page_walk_done - -$L$mul_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk -$L$mul_page_walk_done:: - - lea r10,QWORD PTR[$L$inc] - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul_body:: - - lea r12,QWORD PTR[128+rdx] - movdqa xmm0,XMMWORD PTR[r10] - movdqa xmm1,XMMWORD PTR[16+r10] - lea r10,QWORD PTR[((24-112))+r9*8+rsp] - and r10,-16 - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 -DB 067h - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[112+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[128+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[144+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[160+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[176+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[192+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[208+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[224+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[240+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[256+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[272+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[288+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[304+r10],xmm0 - - paddd xmm3,xmm2 -DB 067h - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[320+r10],xmm1 - - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[336+r10],xmm2 - pand xmm0,XMMWORD PTR[64+r12] - - pand xmm1,XMMWORD PTR[80+r12] - pand xmm2,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[352+r10],xmm3 - pand xmm3,XMMWORD PTR[112+r12] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-128))+r12] - movdqa xmm5,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - pand xmm4,XMMWORD PTR[112+r10] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm5,XMMWORD PTR[128+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[144+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[160+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-64))+r12] - movdqa xmm5,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - pand xmm4,XMMWORD PTR[176+r10] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm5,XMMWORD PTR[192+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[208+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[224+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[r12] - movdqa xmm5,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - pand xmm4,XMMWORD PTR[240+r10] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm5,XMMWORD PTR[256+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[272+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[288+r10] - por xmm0,xmm2 - por xmm1,xmm3 - por xmm0,xmm1 - pshufd xmm1,xmm0,04eh - por xmm0,xmm1 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov r8,QWORD PTR[r8] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$1st_enter - -ALIGN 16 -$L$1st:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r11 - mov r11,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$1st_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[1+r15] - mov r10,rdx - - mul rbp - cmp r15,r9 - jne $L$1st - - - add r13,rax - adc rdx,0 - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r9*8+rsp],r13 - mov r13,rdx - mov r11,r10 - - xor rdx,rdx - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - jmp $L$outer -ALIGN 16 -$L$outer:: - lea rdx,QWORD PTR[((24+128))+r9*8+rsp] - and rdx,-16 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r12] - movdqa xmm1,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm0,XMMWORD PTR[((-128))+rdx] - pand xmm1,XMMWORD PTR[((-112))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r12] - movdqa xmm1,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm0,XMMWORD PTR[((-64))+rdx] - pand xmm1,XMMWORD PTR[((-48))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r12] - movdqa xmm1,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm0,XMMWORD PTR[rdx] - pand xmm1,XMMWORD PTR[16+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r12] - movdqa xmm1,XMMWORD PTR[80+r12] - movdqa xmm2,XMMWORD PTR[96+r12] - movdqa xmm3,XMMWORD PTR[112+r12] - pand xmm0,XMMWORD PTR[64+rdx] - pand xmm1,XMMWORD PTR[80+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - lea r12,QWORD PTR[256+r12] - - mov rax,QWORD PTR[rsi] -DB 102,72,15,126,195 - - xor r15,r15 - mov rbp,r8 - mov r10,QWORD PTR[rsp] - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r10,QWORD PTR[8+rsp] - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$inner_enter - -ALIGN 16 -$L$inner:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$inner_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - lea r15,QWORD PTR[1+r15] - - mul rbp - cmp r15,r9 - jne $L$inner - - add r13,rax - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r9*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r9*8+rsp],r13 - mov r13,rdx - - xor rdx,rdx - add r13,r11 - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - cmp r14,r9 - jb $L$outer - - xor r14,r14 - mov rax,QWORD PTR[rsp] - lea rsi,QWORD PTR[rsp] - mov r15,r9 - jmp $L$sub -ALIGN 16 -$L$sub:: sbb rax,QWORD PTR[r14*8+rcx] - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[8+r14*8+rsi] - lea r14,QWORD PTR[1+r14] - dec r15 - jnz $L$sub - - sbb rax,0 - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - mov r15,r9 - or rsi,rcx -ALIGN 16 -$L$copy:: - mov rax,QWORD PTR[r14*8+rsi] - mov QWORD PTR[r14*8+rsp],r14 - mov QWORD PTR[r14*8+rdi],rax - lea r14,QWORD PTR[1+r14] - sub r15,1 - jnz $L$copy - - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul_mont_gather5:: -bn_mul_mont_gather5 ENDP - -ALIGN 32 -bn_mul4x_mont_gather5 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul4x_mont_gather5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -DB 067h - mov rax,rsp -$L$mul4x_enter:: - and r11d,080108h - cmp r11d,080108h - je $L$mulx4x_enter - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$mul4x_prologue:: - -DB 067h - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - - - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$mul4xsp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$mul4xsp_done - -ALIGN 32 -$L$mul4xsp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$mul4xsp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mul4x_page_walk - jmp $L$mul4x_page_walk_done - -$L$mul4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mul4x_page_walk -$L$mul4x_page_walk_done:: - - neg r9 - - mov QWORD PTR[40+rsp],rax -$L$mul4x_body:: - - call mul4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul4x_mont_gather5:: -bn_mul4x_mont_gather5 ENDP - - -ALIGN 32 -mul4x_internal PROC PRIVATE - shl r9,5 - movd xmm5,DWORD PTR[56+rax] - lea rax,QWORD PTR[$L$inc] - lea r13,QWORD PTR[128+r9*1+rdx] - shr r9,5 - movdqa xmm0,XMMWORD PTR[rax] - movdqa xmm1,XMMWORD PTR[16+rax] - lea r10,QWORD PTR[((88-112))+r9*1+rsp] - lea r12,QWORD PTR[128+rdx] - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 -DB 067h,067h - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 -DB 067h - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[112+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[128+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[144+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[160+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[176+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[192+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[208+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[224+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[240+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[256+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[272+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[288+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[304+r10],xmm0 - - paddd xmm3,xmm2 -DB 067h - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[320+r10],xmm1 - - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[336+r10],xmm2 - pand xmm0,XMMWORD PTR[64+r12] - - pand xmm1,XMMWORD PTR[80+r12] - pand xmm2,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[352+r10],xmm3 - pand xmm3,XMMWORD PTR[112+r12] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-128))+r12] - movdqa xmm5,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - pand xmm4,XMMWORD PTR[112+r10] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm5,XMMWORD PTR[128+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[144+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[160+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-64))+r12] - movdqa xmm5,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - pand xmm4,XMMWORD PTR[176+r10] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm5,XMMWORD PTR[192+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[208+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[224+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[r12] - movdqa xmm5,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - pand xmm4,XMMWORD PTR[240+r10] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm5,XMMWORD PTR[256+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[272+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[288+r10] - por xmm0,xmm2 - por xmm1,xmm3 - por xmm0,xmm1 - pshufd xmm1,xmm0,04eh - por xmm0,xmm1 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov QWORD PTR[((16+8))+rsp],r13 - mov QWORD PTR[((56+8))+rsp],rdi - - mov r8,QWORD PTR[r8] - mov rax,QWORD PTR[rsi] - lea rsi,QWORD PTR[r9*1+rsi] - neg r9 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - lea r14,QWORD PTR[((64+8))+rsp] - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+r9*1+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r9*1+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[32+r9] - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[r14],rdi - mov r13,rdx - jmp $L$1st4x - -ALIGN 32 -$L$1st4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r15*1+rsi] - adc rdx,0 - add rdi,r11 - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[r14],rdi - mov r13,rdx - - add r15,32 - jnz $L$1st4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r9*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov r13,rdx - - lea rcx,QWORD PTR[r9*1+rcx] - - xor rdi,rdi - add r13,r10 - adc rdi,0 - mov QWORD PTR[((-8))+r14],r13 - - jmp $L$outer4x - -ALIGN 32 -$L$outer4x:: - lea rdx,QWORD PTR[((16+128))+r14] - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r12] - movdqa xmm1,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm0,XMMWORD PTR[((-128))+rdx] - pand xmm1,XMMWORD PTR[((-112))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r12] - movdqa xmm1,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm0,XMMWORD PTR[((-64))+rdx] - pand xmm1,XMMWORD PTR[((-48))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r12] - movdqa xmm1,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm0,XMMWORD PTR[rdx] - pand xmm1,XMMWORD PTR[16+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r12] - movdqa xmm1,XMMWORD PTR[80+r12] - movdqa xmm2,XMMWORD PTR[96+r12] - movdqa xmm3,XMMWORD PTR[112+r12] - pand xmm0,XMMWORD PTR[64+rdx] - pand xmm1,XMMWORD PTR[80+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov r10,QWORD PTR[r9*1+r14] - mov rbp,r8 - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - mov QWORD PTR[r14],rdi - - lea r14,QWORD PTR[r9*1+r14] - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+r9*1+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r9*1+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[32+r9] - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov r13,rdx - jmp $L$inner4x - -ALIGN 32 -$L$inner4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - adc rdx,0 - add r10,QWORD PTR[16+r14] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-32))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - add r10,QWORD PTR[r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r15*1+rsi] - adc rdx,0 - add rdi,r11 - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[((-8))+r14],r13 - mov r13,rdx - - add r15,32 - jnz $L$inner4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - adc rdx,0 - add r10,QWORD PTR[16+r14] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-32))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,rbp - mov rbp,QWORD PTR[((-8))+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r9*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov r13,rdx - - mov QWORD PTR[((-16))+r14],rdi - lea rcx,QWORD PTR[r9*1+rcx] - - xor rdi,rdi - add r13,r10 - adc rdi,0 - add r13,QWORD PTR[r14] - adc rdi,0 - mov QWORD PTR[((-8))+r14],r13 - - cmp r12,QWORD PTR[((16+8))+rsp] - jb $L$outer4x - xor rax,rax - sub rbp,r13 - adc r15,r15 - or rdi,r15 - sub rax,rdi - lea rbx,QWORD PTR[r9*1+r14] - mov r12,QWORD PTR[rcx] - lea rbp,QWORD PTR[rcx] - mov rcx,r9 - sar rcx,3+2 - mov rdi,QWORD PTR[((56+8))+rsp] - dec r12 - xor r10,r10 - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqr4x_sub_entry -mul4x_internal ENDP -PUBLIC bn_power5 - -ALIGN 32 -bn_power5 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_power5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp - mov r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - and r11d,080108h - cmp r11d,080108h - je $L$powerx5_enter - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$power5_prologue:: - - shl r9d,3 - lea r10d,DWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$pwr_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$pwr_sp_done - -ALIGN 32 -$L$pwr_sp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$pwr_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwr_page_walk - jmp $L$pwr_page_walk_done - -$L$pwr_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwr_page_walk -$L$pwr_page_walk_done:: - - mov r10,r9 - neg r9 - - - - - - - - - - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$power5_body:: -DB 102,72,15,110,207 -DB 102,72,15,110,209 -DB 102,73,15,110,218 -DB 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -DB 102,72,15,126,209 -DB 102,72,15,126,226 - mov rdi,rsi - mov rax,QWORD PTR[40+rsp] - lea r8,QWORD PTR[32+rsp] - - call mul4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$power5_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_power5:: -bn_power5 ENDP - -PUBLIC bn_sqr8x_internal - - -ALIGN 32 -bn_sqr8x_internal PROC PUBLIC -__bn_sqr8x_internal:: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - lea rbp,QWORD PTR[32+r10] - lea rsi,QWORD PTR[r9*1+rsi] - - mov rcx,r9 - - - mov r14,QWORD PTR[((-32))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rbp*1+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rbp*1+rsi] - mov r15,rax - - mul r14 - mov r10,rax - mov rax,rbx - mov r11,rdx - mov QWORD PTR[((-24))+rbp*1+rdi],r10 - - mul r14 - add r11,rax - mov rax,rbx - adc rdx,0 - mov QWORD PTR[((-16))+rbp*1+rdi],r11 - mov r10,rdx - - - mov rbx,QWORD PTR[((-8))+rbp*1+rsi] - mul r15 - mov r12,rax - mov rax,rbx - mov r13,rdx - - lea rcx,QWORD PTR[rbp] - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - jmp $L$sqr4x_1st - -ALIGN 32 -$L$sqr4x_1st:: - mov rbx,QWORD PTR[rcx*1+rsi] - mul r15 - add r13,rax - mov rax,rbx - mov r12,rdx - adc r12,0 - - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[8+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[rcx*1+rdi],r11 - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - mov rbx,QWORD PTR[16+rcx*1+rsi] - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - - mul r15 - add r13,rax - mov rax,rbx - mov QWORD PTR[8+rcx*1+rdi],r10 - mov r12,rdx - adc r12,0 - - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[24+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[16+rcx*1+rdi],r11 - mov r13,rdx - adc r13,0 - lea rcx,QWORD PTR[32+rcx] - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - - cmp rcx,0 - jne $L$sqr4x_1st - - mul r15 - add r13,rax - lea rbp,QWORD PTR[16+rbp] - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - jmp $L$sqr4x_outer - -ALIGN 32 -$L$sqr4x_outer:: - mov r14,QWORD PTR[((-32))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rbp*1+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rbp*1+rsi] - mov r15,rax - - mul r14 - mov r10,QWORD PTR[((-24))+rbp*1+rdi] - add r10,rax - mov rax,rbx - adc rdx,0 - mov QWORD PTR[((-24))+rbp*1+rdi],r10 - mov r11,rdx - - mul r14 - add r11,rax - mov rax,rbx - adc rdx,0 - add r11,QWORD PTR[((-16))+rbp*1+rdi] - mov r10,rdx - adc r10,0 - mov QWORD PTR[((-16))+rbp*1+rdi],r11 - - xor r12,r12 - - mov rbx,QWORD PTR[((-8))+rbp*1+rsi] - mul r15 - add r12,rax - mov rax,rbx - adc rdx,0 - add r12,QWORD PTR[((-8))+rbp*1+rdi] - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - adc rdx,0 - add r10,r12 - mov r11,rdx - adc r11,0 - mov QWORD PTR[((-8))+rbp*1+rdi],r10 - - lea rcx,QWORD PTR[rbp] - jmp $L$sqr4x_inner - -ALIGN 32 -$L$sqr4x_inner:: - mov rbx,QWORD PTR[rcx*1+rsi] - mul r15 - add r13,rax - mov rax,rbx - mov r12,rdx - adc r12,0 - add r13,QWORD PTR[rcx*1+rdi] - adc r12,0 - -DB 067h - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[8+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - mul r15 - add r12,rax - mov QWORD PTR[rcx*1+rdi],r11 - mov rax,rbx - mov r13,rdx - adc r13,0 - add r12,QWORD PTR[8+rcx*1+rdi] - lea rcx,QWORD PTR[16+rcx] - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - adc rdx,0 - add r10,r12 - mov r11,rdx - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - - cmp rcx,0 - jne $L$sqr4x_inner - -DB 067h - mul r15 - add r13,rax - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - - add rbp,16 - jnz $L$sqr4x_outer - - - mov r14,QWORD PTR[((-32))+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rsi] - mov r15,rax - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - - mul r14 - add r11,rax - mov rax,rbx - mov QWORD PTR[((-24))+rdi],r10 - mov r10,rdx - adc r10,0 - add r11,r13 - mov rbx,QWORD PTR[((-8))+rsi] - adc r10,0 - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[((-16))+rdi],r11 - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rdi],r10 - - mul r15 - add r13,rax - mov rax,QWORD PTR[((-16))+rsi] - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - - mul rbx - add rbp,16 - xor r14,r14 - sub rbp,r9 - xor r15,r15 - - add rax,r12 - adc rdx,0 - mov QWORD PTR[8+rdi],rax - mov QWORD PTR[16+rdi],rdx - mov QWORD PTR[24+rdi],r15 - - mov rax,QWORD PTR[((-16))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+rsp] - xor r10,r10 - mov r11,QWORD PTR[8+rdi] - - lea r12,QWORD PTR[r10*2+r14] - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[16+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[24+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rbp*1+rsi] - mov QWORD PTR[rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[8+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[32+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[40+rdi] - adc rbx,rax - mov rax,QWORD PTR[rbp*1+rsi] - mov QWORD PTR[16+rdi],rbx - adc r8,rdx - lea rbp,QWORD PTR[16+rbp] - mov QWORD PTR[24+rdi],r8 - sbb r15,r15 - lea rdi,QWORD PTR[64+rdi] - jmp $L$sqr4x_shift_n_add - -ALIGN 32 -$L$sqr4x_shift_n_add:: - lea r12,QWORD PTR[r10*2+r14] - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[((-16))+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[((-8))+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rbp*1+rsi] - mov QWORD PTR[((-32))+rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-24))+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[8+rdi] - adc rbx,rax - mov rax,QWORD PTR[rbp*1+rsi] - mov QWORD PTR[((-16))+rdi],rbx - adc r8,rdx - - lea r12,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-8))+rdi],r8 - sbb r15,r15 - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[16+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[24+rdi] - adc r12,rax - mov rax,QWORD PTR[8+rbp*1+rsi] - mov QWORD PTR[rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[8+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[32+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[40+rdi] - adc rbx,rax - mov rax,QWORD PTR[16+rbp*1+rsi] - mov QWORD PTR[16+rdi],rbx - adc r8,rdx - mov QWORD PTR[24+rdi],r8 - sbb r15,r15 - lea rdi,QWORD PTR[64+rdi] - add rbp,32 - jnz $L$sqr4x_shift_n_add - - lea r12,QWORD PTR[r10*2+r14] -DB 067h - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[((-16))+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[((-8))+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rsi] - mov QWORD PTR[((-32))+rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-24))+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mul rax - neg r15 - adc rbx,rax - adc r8,rdx - mov QWORD PTR[((-16))+rdi],rbx - mov QWORD PTR[((-8))+rdi],r8 -DB 102,72,15,126,213 -__bn_sqr8x_reduction:: - xor rax,rax - lea rcx,QWORD PTR[rbp*1+r9] - lea rdx,QWORD PTR[((48+8))+r9*2+rsp] - mov QWORD PTR[((0+8))+rsp],rcx - lea rdi,QWORD PTR[((48+8))+r9*1+rsp] - mov QWORD PTR[((8+8))+rsp],rdx - neg r9 - jmp $L$8x_reduction_loop - -ALIGN 32 -$L$8x_reduction_loop:: - lea rdi,QWORD PTR[r9*1+rdi] -DB 066h - mov rbx,QWORD PTR[rdi] - mov r9,QWORD PTR[8+rdi] - mov r10,QWORD PTR[16+rdi] - mov r11,QWORD PTR[24+rdi] - mov r12,QWORD PTR[32+rdi] - mov r13,QWORD PTR[40+rdi] - mov r14,QWORD PTR[48+rdi] - mov r15,QWORD PTR[56+rdi] - mov QWORD PTR[rdx],rax - lea rdi,QWORD PTR[64+rdi] - -DB 067h - mov r8,rbx - imul rbx,QWORD PTR[((32+8))+rsp] - mov rax,QWORD PTR[rbp] - mov ecx,8 - jmp $L$8x_reduce - -ALIGN 32 -$L$8x_reduce:: - mul rbx - mov rax,QWORD PTR[8+rbp] - neg r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - mov QWORD PTR[((48-8+8))+rcx*8+rsp],rbx - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov rsi,QWORD PTR[((32+8))+rsp] - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - imul rsi,r8 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,rsi - add r15,rax - mov rax,QWORD PTR[rbp] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - dec ecx - jnz $L$8x_reduce - - lea rbp,QWORD PTR[64+rbp] - xor rax,rax - mov rdx,QWORD PTR[((8+8))+rsp] - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$8x_no_tail - -DB 066h - add r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - sbb rsi,rsi - - mov rbx,QWORD PTR[((48+56+8))+rsp] - mov ecx,8 - mov rax,QWORD PTR[rbp] - jmp $L$8x_tail - -ALIGN 32 -$L$8x_tail:: - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rbp] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - lea rdi,QWORD PTR[8+rdi] - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,QWORD PTR[((48-16+8))+rcx*8+rsp] - add r15,rax - adc rdx,0 - add r14,r15 - mov rax,QWORD PTR[rbp] - mov r15,rdx - adc r15,0 - - dec ecx - jnz $L$8x_tail - - lea rbp,QWORD PTR[64+rbp] - mov rdx,QWORD PTR[((8+8))+rsp] - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$8x_tail_done - - mov rbx,QWORD PTR[((48+56+8))+rsp] - neg rsi - mov rax,QWORD PTR[rbp] - adc r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - sbb rsi,rsi - - mov ecx,8 - jmp $L$8x_tail - -ALIGN 32 -$L$8x_tail_done:: - xor rax,rax - add r8,QWORD PTR[rdx] - adc r9,0 - adc r10,0 - adc r11,0 - adc r12,0 - adc r13,0 - adc r14,0 - adc r15,0 - adc rax,0 - - neg rsi -$L$8x_no_tail:: - adc r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - adc rax,0 - mov rcx,QWORD PTR[((-8))+rbp] - xor rsi,rsi - -DB 102,72,15,126,213 - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 -DB 102,73,15,126,217 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - lea rdi,QWORD PTR[64+rdi] - - cmp rdi,rdx - jb $L$8x_reduction_loop - DB 0F3h,0C3h ;repret -bn_sqr8x_internal ENDP - -ALIGN 32 -__bn_post4x_internal PROC PRIVATE - mov r12,QWORD PTR[rbp] - lea rbx,QWORD PTR[r9*1+rdi] - mov rcx,r9 -DB 102,72,15,126,207 - neg rax -DB 102,72,15,126,206 - sar rcx,3+2 - dec r12 - xor r10,r10 - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqr4x_sub_entry - -ALIGN 16 -$L$sqr4x_sub:: - mov r12,QWORD PTR[rbp] - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] -$L$sqr4x_sub_entry:: - lea rbp,QWORD PTR[32+rbp] - not r12 - not r13 - not r14 - not r15 - and r12,rax - and r13,rax - and r14,rax - and r15,rax - - neg r10 - adc r12,QWORD PTR[rbx] - adc r13,QWORD PTR[8+rbx] - adc r14,QWORD PTR[16+rbx] - adc r15,QWORD PTR[24+rbx] - mov QWORD PTR[rdi],r12 - lea rbx,QWORD PTR[32+rbx] - mov QWORD PTR[8+rdi],r13 - sbb r10,r10 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - lea rdi,QWORD PTR[32+rdi] - - inc rcx - jnz $L$sqr4x_sub - - mov r10,r9 - neg r9 - DB 0F3h,0C3h ;repret -__bn_post4x_internal ENDP -PUBLIC bn_from_montgomery - -ALIGN 32 -bn_from_montgomery PROC PUBLIC - test DWORD PTR[48+rsp],7 - jz bn_from_mont8x - xor eax,eax - DB 0F3h,0C3h ;repret -bn_from_montgomery ENDP - - -ALIGN 32 -bn_from_mont8x PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_from_mont8x:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -DB 067h - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$from_prologue:: - - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$from_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$from_sp_done - -ALIGN 32 -$L$from_sp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$from_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$from_page_walk - jmp $L$from_page_walk_done - -$L$from_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$from_page_walk -$L$from_page_walk_done:: - - mov r10,r9 - neg r9 - - - - - - - - - - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$from_body:: - mov r11,r9 - lea rax,QWORD PTR[48+rsp] - pxor xmm0,xmm0 - jmp $L$mul_by_1 - -ALIGN 32 -$L$mul_by_1:: - movdqu xmm1,XMMWORD PTR[rsi] - movdqu xmm2,XMMWORD PTR[16+rsi] - movdqu xmm3,XMMWORD PTR[32+rsi] - movdqa XMMWORD PTR[r9*1+rax],xmm0 - movdqu xmm4,XMMWORD PTR[48+rsi] - movdqa XMMWORD PTR[16+r9*1+rax],xmm0 -DB 048h,08dh,0b6h,040h,000h,000h,000h - movdqa XMMWORD PTR[rax],xmm1 - movdqa XMMWORD PTR[32+r9*1+rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm2 - movdqa XMMWORD PTR[48+r9*1+rax],xmm0 - movdqa XMMWORD PTR[32+rax],xmm3 - movdqa XMMWORD PTR[48+rax],xmm4 - lea rax,QWORD PTR[64+rax] - sub r11,64 - jnz $L$mul_by_1 - -DB 102,72,15,110,207 -DB 102,72,15,110,209 -DB 067h - mov rbp,rcx -DB 102,73,15,110,218 - mov r11d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - and r11d,080108h - cmp r11d,080108h - jne $L$from_mont_nox - - lea rdi,QWORD PTR[r9*1+rax] - call __bn_sqrx8x_reduction - call __bn_postx4x_internal - - pxor xmm0,xmm0 - lea rax,QWORD PTR[48+rsp] - mov rsi,QWORD PTR[40+rsp] - jmp $L$from_mont_zero - -ALIGN 32 -$L$from_mont_nox:: - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor xmm0,xmm0 - lea rax,QWORD PTR[48+rsp] - mov rsi,QWORD PTR[40+rsp] - jmp $L$from_mont_zero - -ALIGN 32 -$L$from_mont_zero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - movdqa XMMWORD PTR[32+rax],xmm0 - movdqa XMMWORD PTR[48+rax],xmm0 - lea rax,QWORD PTR[64+rax] - sub r9,32 - jnz $L$from_mont_zero - - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$from_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_from_mont8x:: -bn_from_mont8x ENDP - -ALIGN 32 -bn_mulx4x_mont_gather5 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mulx4x_mont_gather5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp -$L$mulx4x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$mulx4x_prologue:: - - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$mulx4xsp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$mulx4xsp_done - -$L$mulx4xsp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$mulx4xsp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mulx4x_page_walk - jmp $L$mulx4x_page_walk_done - -$L$mulx4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mulx4x_page_walk -$L$mulx4x_page_walk_done:: - - - - - - - - - - - - - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$mulx4x_body:: - call mulx4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mulx4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mulx4x_mont_gather5:: -bn_mulx4x_mont_gather5 ENDP - - -ALIGN 32 -mulx4x_internal PROC PRIVATE - mov QWORD PTR[8+rsp],r9 - mov r10,r9 - neg r9 - shl r9,5 - neg r10 - lea r13,QWORD PTR[128+r9*1+rdx] - shr r9,5+5 - movd xmm5,DWORD PTR[56+rax] - sub r9,1 - lea rax,QWORD PTR[$L$inc] - mov QWORD PTR[((16+8))+rsp],r13 - mov QWORD PTR[((24+8))+rsp],r9 - mov QWORD PTR[((56+8))+rsp],rdi - movdqa xmm0,XMMWORD PTR[rax] - movdqa xmm1,XMMWORD PTR[16+rax] - lea r10,QWORD PTR[((88-112))+r10*1+rsp] - lea rdi,QWORD PTR[128+rdx] - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 -DB 067h - movdqa xmm2,xmm1 -DB 067h - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[112+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[128+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[144+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[160+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[176+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[192+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[208+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[224+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[240+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[256+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[272+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[288+r10],xmm3 - movdqa xmm3,xmm4 -DB 067h - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[304+r10],xmm0 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[320+r10],xmm1 - - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[336+r10],xmm2 - - pand xmm0,XMMWORD PTR[64+rdi] - pand xmm1,XMMWORD PTR[80+rdi] - pand xmm2,XMMWORD PTR[96+rdi] - movdqa XMMWORD PTR[352+r10],xmm3 - pand xmm3,XMMWORD PTR[112+rdi] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-128))+rdi] - movdqa xmm5,XMMWORD PTR[((-112))+rdi] - movdqa xmm2,XMMWORD PTR[((-96))+rdi] - pand xmm4,XMMWORD PTR[112+r10] - movdqa xmm3,XMMWORD PTR[((-80))+rdi] - pand xmm5,XMMWORD PTR[128+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[144+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[160+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-64))+rdi] - movdqa xmm5,XMMWORD PTR[((-48))+rdi] - movdqa xmm2,XMMWORD PTR[((-32))+rdi] - pand xmm4,XMMWORD PTR[176+r10] - movdqa xmm3,XMMWORD PTR[((-16))+rdi] - pand xmm5,XMMWORD PTR[192+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[208+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[224+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[rdi] - movdqa xmm5,XMMWORD PTR[16+rdi] - movdqa xmm2,XMMWORD PTR[32+rdi] - pand xmm4,XMMWORD PTR[240+r10] - movdqa xmm3,XMMWORD PTR[48+rdi] - pand xmm5,XMMWORD PTR[256+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[272+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[288+r10] - por xmm0,xmm2 - por xmm1,xmm3 - pxor xmm0,xmm1 - pshufd xmm1,xmm0,04eh - por xmm0,xmm1 - lea rdi,QWORD PTR[256+rdi] -DB 102,72,15,126,194 - lea rbx,QWORD PTR[((64+32+8))+rsp] - - mov r9,rdx - mulx rax,r8,QWORD PTR[rsi] - mulx r12,r11,QWORD PTR[8+rsi] - add r11,rax - mulx r13,rax,QWORD PTR[16+rsi] - adc r12,rax - adc r13,0 - mulx r14,rax,QWORD PTR[24+rsi] - - mov r15,r8 - imul r8,QWORD PTR[((32+8))+rsp] - xor rbp,rbp - mov rdx,r8 - - mov QWORD PTR[((8+8))+rsp],rdi - - lea rsi,QWORD PTR[32+rsi] - adcx r13,rax - adcx r14,rbp - - mulx r10,rax,QWORD PTR[rcx] - adcx r15,rax - adox r10,r11 - mulx r11,rax,QWORD PTR[8+rcx] - adcx r10,rax - adox r11,r12 - mulx r12,rax,QWORD PTR[16+rcx] - mov rdi,QWORD PTR[((24+8))+rsp] - mov QWORD PTR[((-32))+rbx],r10 - adcx r11,rax - adox r12,r13 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-24))+rbx],r11 - adcx r12,rax - adox r15,rbp - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-16))+rbx],r12 - jmp $L$mulx4x_1st - -ALIGN 32 -$L$mulx4x_1st:: - adcx r15,rbp - mulx rax,r10,QWORD PTR[rsi] - adcx r10,r14 - mulx r14,r11,QWORD PTR[8+rsi] - adcx r11,rax - mulx rax,r12,QWORD PTR[16+rsi] - adcx r12,r14 - mulx r14,r13,QWORD PTR[24+rsi] -DB 067h,067h - mov rdx,r8 - adcx r13,rax - adcx r14,rbp - lea rsi,QWORD PTR[32+rsi] - lea rbx,QWORD PTR[32+rbx] - - adox r10,r15 - mulx r15,rax,QWORD PTR[rcx] - adcx r10,rax - adox r11,r15 - mulx r15,rax,QWORD PTR[8+rcx] - adcx r11,rax - adox r12,r15 - mulx r15,rax,QWORD PTR[16+rcx] - mov QWORD PTR[((-40))+rbx],r10 - adcx r12,rax - mov QWORD PTR[((-32))+rbx],r11 - adox r13,r15 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov QWORD PTR[((-24))+rbx],r12 - adcx r13,rax - adox r15,rbp - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-16))+rbx],r13 - - dec rdi - jnz $L$mulx4x_1st - - mov rax,QWORD PTR[8+rsp] - adc r15,rbp - lea rsi,QWORD PTR[rax*1+rsi] - add r14,r15 - mov rdi,QWORD PTR[((8+8))+rsp] - adc rbp,rbp - mov QWORD PTR[((-8))+rbx],r14 - jmp $L$mulx4x_outer - -ALIGN 32 -$L$mulx4x_outer:: - lea r10,QWORD PTR[((16-256))+rbx] - pxor xmm4,xmm4 -DB 067h,067h - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+rdi] - movdqa xmm1,XMMWORD PTR[((-112))+rdi] - movdqa xmm2,XMMWORD PTR[((-96))+rdi] - pand xmm0,XMMWORD PTR[256+r10] - movdqa xmm3,XMMWORD PTR[((-80))+rdi] - pand xmm1,XMMWORD PTR[272+r10] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[288+r10] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[304+r10] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+rdi] - movdqa xmm1,XMMWORD PTR[((-48))+rdi] - movdqa xmm2,XMMWORD PTR[((-32))+rdi] - pand xmm0,XMMWORD PTR[320+r10] - movdqa xmm3,XMMWORD PTR[((-16))+rdi] - pand xmm1,XMMWORD PTR[336+r10] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[352+r10] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[368+r10] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[rdi] - movdqa xmm1,XMMWORD PTR[16+rdi] - movdqa xmm2,XMMWORD PTR[32+rdi] - pand xmm0,XMMWORD PTR[384+r10] - movdqa xmm3,XMMWORD PTR[48+rdi] - pand xmm1,XMMWORD PTR[400+r10] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[416+r10] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[432+r10] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+rdi] - movdqa xmm1,XMMWORD PTR[80+rdi] - movdqa xmm2,XMMWORD PTR[96+rdi] - pand xmm0,XMMWORD PTR[448+r10] - movdqa xmm3,XMMWORD PTR[112+rdi] - pand xmm1,XMMWORD PTR[464+r10] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[480+r10] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[496+r10] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - lea rdi,QWORD PTR[256+rdi] -DB 102,72,15,126,194 - - mov QWORD PTR[rbx],rbp - lea rbx,QWORD PTR[32+rax*1+rbx] - mulx r11,r8,QWORD PTR[rsi] - xor rbp,rbp - mov r9,rdx - mulx r12,r14,QWORD PTR[8+rsi] - adox r8,QWORD PTR[((-32))+rbx] - adcx r11,r14 - mulx r13,r15,QWORD PTR[16+rsi] - adox r11,QWORD PTR[((-24))+rbx] - adcx r12,r15 - mulx r14,rdx,QWORD PTR[24+rsi] - adox r12,QWORD PTR[((-16))+rbx] - adcx r13,rdx - lea rcx,QWORD PTR[rax*1+rcx] - lea rsi,QWORD PTR[32+rsi] - adox r13,QWORD PTR[((-8))+rbx] - adcx r14,rbp - adox r14,rbp - - mov r15,r8 - imul r8,QWORD PTR[((32+8))+rsp] - - mov rdx,r8 - xor rbp,rbp - mov QWORD PTR[((8+8))+rsp],rdi - - mulx r10,rax,QWORD PTR[rcx] - adcx r15,rax - adox r10,r11 - mulx r11,rax,QWORD PTR[8+rcx] - adcx r10,rax - adox r11,r12 - mulx r12,rax,QWORD PTR[16+rcx] - adcx r11,rax - adox r12,r13 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - mov rdi,QWORD PTR[((24+8))+rsp] - mov QWORD PTR[((-32))+rbx],r10 - adcx r12,rax - mov QWORD PTR[((-24))+rbx],r11 - adox r15,rbp - mov QWORD PTR[((-16))+rbx],r12 - lea rcx,QWORD PTR[32+rcx] - jmp $L$mulx4x_inner - -ALIGN 32 -$L$mulx4x_inner:: - mulx rax,r10,QWORD PTR[rsi] - adcx r15,rbp - adox r10,r14 - mulx r14,r11,QWORD PTR[8+rsi] - adcx r10,QWORD PTR[rbx] - adox r11,rax - mulx rax,r12,QWORD PTR[16+rsi] - adcx r11,QWORD PTR[8+rbx] - adox r12,r14 - mulx r14,r13,QWORD PTR[24+rsi] - mov rdx,r8 - adcx r12,QWORD PTR[16+rbx] - adox r13,rax - adcx r13,QWORD PTR[24+rbx] - adox r14,rbp - lea rsi,QWORD PTR[32+rsi] - lea rbx,QWORD PTR[32+rbx] - adcx r14,rbp - - adox r10,r15 - mulx r15,rax,QWORD PTR[rcx] - adcx r10,rax - adox r11,r15 - mulx r15,rax,QWORD PTR[8+rcx] - adcx r11,rax - adox r12,r15 - mulx r15,rax,QWORD PTR[16+rcx] - mov QWORD PTR[((-40))+rbx],r10 - adcx r12,rax - adox r13,r15 - mov QWORD PTR[((-32))+rbx],r11 - mulx r15,rax,QWORD PTR[24+rcx] - mov rdx,r9 - lea rcx,QWORD PTR[32+rcx] - mov QWORD PTR[((-24))+rbx],r12 - adcx r13,rax - adox r15,rbp - mov QWORD PTR[((-16))+rbx],r13 - - dec rdi - jnz $L$mulx4x_inner - - mov rax,QWORD PTR[((0+8))+rsp] - adc r15,rbp - sub rdi,QWORD PTR[rbx] - mov rdi,QWORD PTR[((8+8))+rsp] - mov r10,QWORD PTR[((16+8))+rsp] - adc r14,r15 - lea rsi,QWORD PTR[rax*1+rsi] - adc rbp,rbp - mov QWORD PTR[((-8))+rbx],r14 - - cmp rdi,r10 - jb $L$mulx4x_outer - - mov r10,QWORD PTR[((-8))+rcx] - mov r8,rbp - mov r12,QWORD PTR[rax*1+rcx] - lea rbp,QWORD PTR[rax*1+rcx] - mov rcx,rax - lea rdi,QWORD PTR[rax*1+rbx] - xor eax,eax - xor r15,r15 - sub r10,r14 - adc r15,r15 - or r8,r15 - sar rcx,3+2 - sub rax,r8 - mov rdx,QWORD PTR[((56+8))+rsp] - dec r12 - mov r13,QWORD PTR[8+rbp] - xor r8,r8 - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqrx4x_sub_entry -mulx4x_internal ENDP - -ALIGN 32 -bn_powerx5 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_powerx5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp -$L$powerx5_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$powerx5_prologue:: - - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$pwrx_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$pwrx_sp_done - -ALIGN 32 -$L$pwrx_sp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$pwrx_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwrx_page_walk - jmp $L$pwrx_page_walk_done - -$L$pwrx_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwrx_page_walk -$L$pwrx_page_walk_done:: - - mov r10,r9 - neg r9 - - - - - - - - - - - - - pxor xmm0,xmm0 -DB 102,72,15,110,207 -DB 102,72,15,110,209 -DB 102,73,15,110,218 -DB 102,72,15,110,226 - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$powerx5_body:: - - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - call __bn_sqrx8x_internal - call __bn_postx4x_internal - - mov r9,r10 - mov rdi,rsi -DB 102,72,15,126,209 -DB 102,72,15,126,226 - mov rax,QWORD PTR[40+rsp] - - call mulx4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$powerx5_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_powerx5:: -bn_powerx5 ENDP - -PUBLIC bn_sqrx8x_internal - - -ALIGN 32 -bn_sqrx8x_internal PROC PUBLIC -__bn_sqrx8x_internal:: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - lea rdi,QWORD PTR[((48+8))+rsp] - lea rbp,QWORD PTR[r9*1+rsi] - mov QWORD PTR[((0+8))+rsp],r9 - mov QWORD PTR[((8+8))+rsp],rbp - jmp $L$sqr8x_zero_start - -ALIGN 32 -DB 066h,066h,066h,02eh,00fh,01fh,084h,000h,000h,000h,000h,000h -$L$sqrx8x_zero:: -DB 03eh - movdqa XMMWORD PTR[rdi],xmm0 - movdqa XMMWORD PTR[16+rdi],xmm0 - movdqa XMMWORD PTR[32+rdi],xmm0 - movdqa XMMWORD PTR[48+rdi],xmm0 -$L$sqr8x_zero_start:: - movdqa XMMWORD PTR[64+rdi],xmm0 - movdqa XMMWORD PTR[80+rdi],xmm0 - movdqa XMMWORD PTR[96+rdi],xmm0 - movdqa XMMWORD PTR[112+rdi],xmm0 - lea rdi,QWORD PTR[128+rdi] - sub r9,64 - jnz $L$sqrx8x_zero - - mov rdx,QWORD PTR[rsi] - - xor r10,r10 - xor r11,r11 - xor r12,r12 - xor r13,r13 - xor r14,r14 - xor r15,r15 - lea rdi,QWORD PTR[((48+8))+rsp] - xor rbp,rbp - jmp $L$sqrx8x_outer_loop - -ALIGN 32 -$L$sqrx8x_outer_loop:: - mulx rax,r8,QWORD PTR[8+rsi] - adcx r8,r9 - adox r10,rax - mulx rax,r9,QWORD PTR[16+rsi] - adcx r9,r10 - adox r11,rax -DB 0c4h,0e2h,0abh,0f6h,086h,018h,000h,000h,000h - adcx r10,r11 - adox r12,rax -DB 0c4h,0e2h,0a3h,0f6h,086h,020h,000h,000h,000h - adcx r11,r12 - adox r13,rax - mulx rax,r12,QWORD PTR[40+rsi] - adcx r12,r13 - adox r14,rax - mulx rax,r13,QWORD PTR[48+rsi] - adcx r13,r14 - adox rax,r15 - mulx r15,r14,QWORD PTR[56+rsi] - mov rdx,QWORD PTR[8+rsi] - adcx r14,rax - adox r15,rbp - adc r15,QWORD PTR[64+rdi] - mov QWORD PTR[8+rdi],r8 - mov QWORD PTR[16+rdi],r9 - sbb rcx,rcx - xor rbp,rbp - - - mulx rbx,r8,QWORD PTR[16+rsi] - mulx rax,r9,QWORD PTR[24+rsi] - adcx r8,r10 - adox r9,rbx - mulx rbx,r10,QWORD PTR[32+rsi] - adcx r9,r11 - adox r10,rax -DB 0c4h,0e2h,0a3h,0f6h,086h,028h,000h,000h,000h - adcx r10,r12 - adox r11,rbx -DB 0c4h,0e2h,09bh,0f6h,09eh,030h,000h,000h,000h - adcx r11,r13 - adox r12,r14 -DB 0c4h,062h,093h,0f6h,0b6h,038h,000h,000h,000h - mov rdx,QWORD PTR[16+rsi] - adcx r12,rax - adox r13,rbx - adcx r13,r15 - adox r14,rbp - adcx r14,rbp - - mov QWORD PTR[24+rdi],r8 - mov QWORD PTR[32+rdi],r9 - - mulx rbx,r8,QWORD PTR[24+rsi] - mulx rax,r9,QWORD PTR[32+rsi] - adcx r8,r10 - adox r9,rbx - mulx rbx,r10,QWORD PTR[40+rsi] - adcx r9,r11 - adox r10,rax -DB 0c4h,0e2h,0a3h,0f6h,086h,030h,000h,000h,000h - adcx r10,r12 - adox r11,r13 -DB 0c4h,062h,09bh,0f6h,0aeh,038h,000h,000h,000h -DB 03eh - mov rdx,QWORD PTR[24+rsi] - adcx r11,rbx - adox r12,rax - adcx r12,r14 - mov QWORD PTR[40+rdi],r8 - mov QWORD PTR[48+rdi],r9 - mulx rax,r8,QWORD PTR[32+rsi] - adox r13,rbp - adcx r13,rbp - - mulx rbx,r9,QWORD PTR[40+rsi] - adcx r8,r10 - adox r9,rax - mulx rax,r10,QWORD PTR[48+rsi] - adcx r9,r11 - adox r10,r12 - mulx r12,r11,QWORD PTR[56+rsi] - mov rdx,QWORD PTR[32+rsi] - mov r14,QWORD PTR[40+rsi] - adcx r10,rbx - adox r11,rax - mov r15,QWORD PTR[48+rsi] - adcx r11,r13 - adox r12,rbp - adcx r12,rbp - - mov QWORD PTR[56+rdi],r8 - mov QWORD PTR[64+rdi],r9 - - mulx rax,r9,r14 - mov r8,QWORD PTR[56+rsi] - adcx r9,r10 - mulx rbx,r10,r15 - adox r10,rax - adcx r10,r11 - mulx rax,r11,r8 - mov rdx,r14 - adox r11,rbx - adcx r11,r12 - - adcx rax,rbp - - mulx rbx,r14,r15 - mulx r13,r12,r8 - mov rdx,r15 - lea rsi,QWORD PTR[64+rsi] - adcx r11,r14 - adox r12,rbx - adcx r12,rax - adox r13,rbp - -DB 067h,067h - mulx r14,r8,r8 - adcx r13,r8 - adcx r14,rbp - - cmp rsi,QWORD PTR[((8+8))+rsp] - je $L$sqrx8x_outer_break - - neg rcx - mov rcx,-8 - mov r15,rbp - mov r8,QWORD PTR[64+rdi] - adcx r9,QWORD PTR[72+rdi] - adcx r10,QWORD PTR[80+rdi] - adcx r11,QWORD PTR[88+rdi] - adc r12,QWORD PTR[96+rdi] - adc r13,QWORD PTR[104+rdi] - adc r14,QWORD PTR[112+rdi] - adc r15,QWORD PTR[120+rdi] - lea rbp,QWORD PTR[rsi] - lea rdi,QWORD PTR[128+rdi] - sbb rax,rax - - mov rdx,QWORD PTR[((-64))+rsi] - mov QWORD PTR[((16+8))+rsp],rax - mov QWORD PTR[((24+8))+rsp],rdi - - - xor eax,eax - jmp $L$sqrx8x_loop - -ALIGN 32 -$L$sqrx8x_loop:: - mov rbx,r8 - mulx r8,rax,QWORD PTR[rbp] - adcx rbx,rax - adox r8,r9 - - mulx r9,rax,QWORD PTR[8+rbp] - adcx r8,rax - adox r9,r10 - - mulx r10,rax,QWORD PTR[16+rbp] - adcx r9,rax - adox r10,r11 - - mulx r11,rax,QWORD PTR[24+rbp] - adcx r10,rax - adox r11,r12 - -DB 0c4h,062h,0fbh,0f6h,0a5h,020h,000h,000h,000h - adcx r11,rax - adox r12,r13 - - mulx r13,rax,QWORD PTR[40+rbp] - adcx r12,rax - adox r13,r14 - - mulx r14,rax,QWORD PTR[48+rbp] - mov QWORD PTR[rcx*8+rdi],rbx - mov ebx,0 - adcx r13,rax - adox r14,r15 - -DB 0c4h,062h,0fbh,0f6h,0bdh,038h,000h,000h,000h - mov rdx,QWORD PTR[8+rcx*8+rsi] - adcx r14,rax - adox r15,rbx - adcx r15,rbx - -DB 067h - inc rcx - jnz $L$sqrx8x_loop - - lea rbp,QWORD PTR[64+rbp] - mov rcx,-8 - cmp rbp,QWORD PTR[((8+8))+rsp] - je $L$sqrx8x_break - - sub rbx,QWORD PTR[((16+8))+rsp] -DB 066h - mov rdx,QWORD PTR[((-64))+rsi] - adcx r8,QWORD PTR[rdi] - adcx r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - lea rdi,QWORD PTR[64+rdi] -DB 067h - sbb rax,rax - xor ebx,ebx - mov QWORD PTR[((16+8))+rsp],rax - jmp $L$sqrx8x_loop - -ALIGN 32 -$L$sqrx8x_break:: - xor rbp,rbp - sub rbx,QWORD PTR[((16+8))+rsp] - adcx r8,rbp - mov rcx,QWORD PTR[((24+8))+rsp] - adcx r9,rbp - mov rdx,QWORD PTR[rsi] - adc r10,0 - mov QWORD PTR[rdi],r8 - adc r11,0 - adc r12,0 - adc r13,0 - adc r14,0 - adc r15,0 - cmp rdi,rcx - je $L$sqrx8x_outer_loop - - mov QWORD PTR[8+rdi],r9 - mov r9,QWORD PTR[8+rcx] - mov QWORD PTR[16+rdi],r10 - mov r10,QWORD PTR[16+rcx] - mov QWORD PTR[24+rdi],r11 - mov r11,QWORD PTR[24+rcx] - mov QWORD PTR[32+rdi],r12 - mov r12,QWORD PTR[32+rcx] - mov QWORD PTR[40+rdi],r13 - mov r13,QWORD PTR[40+rcx] - mov QWORD PTR[48+rdi],r14 - mov r14,QWORD PTR[48+rcx] - mov QWORD PTR[56+rdi],r15 - mov r15,QWORD PTR[56+rcx] - mov rdi,rcx - jmp $L$sqrx8x_outer_loop - -ALIGN 32 -$L$sqrx8x_outer_break:: - mov QWORD PTR[72+rdi],r9 -DB 102,72,15,126,217 - mov QWORD PTR[80+rdi],r10 - mov QWORD PTR[88+rdi],r11 - mov QWORD PTR[96+rdi],r12 - mov QWORD PTR[104+rdi],r13 - mov QWORD PTR[112+rdi],r14 - lea rdi,QWORD PTR[((48+8))+rsp] - mov rdx,QWORD PTR[rcx*1+rsi] - - mov r11,QWORD PTR[8+rdi] - xor r10,r10 - mov r9,QWORD PTR[((0+8))+rsp] - adox r11,r11 - mov r12,QWORD PTR[16+rdi] - mov r13,QWORD PTR[24+rdi] - - -ALIGN 32 -$L$sqrx4x_shift_n_add:: - mulx rbx,rax,rdx - adox r12,r12 - adcx rax,r10 -DB 048h,08bh,094h,00eh,008h,000h,000h,000h -DB 04ch,08bh,097h,020h,000h,000h,000h - adox r13,r13 - adcx rbx,r11 - mov r11,QWORD PTR[40+rdi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - - mulx rbx,rax,rdx - adox r10,r10 - adcx rax,r12 - mov rdx,QWORD PTR[16+rcx*1+rsi] - mov r12,QWORD PTR[48+rdi] - adox r11,r11 - adcx rbx,r13 - mov r13,QWORD PTR[56+rdi] - mov QWORD PTR[16+rdi],rax - mov QWORD PTR[24+rdi],rbx - - mulx rbx,rax,rdx - adox r12,r12 - adcx rax,r10 - mov rdx,QWORD PTR[24+rcx*1+rsi] - lea rcx,QWORD PTR[32+rcx] - mov r10,QWORD PTR[64+rdi] - adox r13,r13 - adcx rbx,r11 - mov r11,QWORD PTR[72+rdi] - mov QWORD PTR[32+rdi],rax - mov QWORD PTR[40+rdi],rbx - - mulx rbx,rax,rdx - adox r10,r10 - adcx rax,r12 - jrcxz $L$sqrx4x_shift_n_add_break -DB 048h,08bh,094h,00eh,000h,000h,000h,000h - adox r11,r11 - adcx rbx,r13 - mov r12,QWORD PTR[80+rdi] - mov r13,QWORD PTR[88+rdi] - mov QWORD PTR[48+rdi],rax - mov QWORD PTR[56+rdi],rbx - lea rdi,QWORD PTR[64+rdi] - nop - jmp $L$sqrx4x_shift_n_add - -ALIGN 32 -$L$sqrx4x_shift_n_add_break:: - adcx rbx,r13 - mov QWORD PTR[48+rdi],rax - mov QWORD PTR[56+rdi],rbx - lea rdi,QWORD PTR[64+rdi] -DB 102,72,15,126,213 -__bn_sqrx8x_reduction:: - xor eax,eax - mov rbx,QWORD PTR[((32+8))+rsp] - mov rdx,QWORD PTR[((48+8))+rsp] - lea rcx,QWORD PTR[((-64))+r9*1+rbp] - - mov QWORD PTR[((0+8))+rsp],rcx - mov QWORD PTR[((8+8))+rsp],rdi - - lea rdi,QWORD PTR[((48+8))+rsp] - jmp $L$sqrx8x_reduction_loop - -ALIGN 32 -$L$sqrx8x_reduction_loop:: - mov r9,QWORD PTR[8+rdi] - mov r10,QWORD PTR[16+rdi] - mov r11,QWORD PTR[24+rdi] - mov r12,QWORD PTR[32+rdi] - mov r8,rdx - imul rdx,rbx - mov r13,QWORD PTR[40+rdi] - mov r14,QWORD PTR[48+rdi] - mov r15,QWORD PTR[56+rdi] - mov QWORD PTR[((24+8))+rsp],rax - - lea rdi,QWORD PTR[64+rdi] - xor rsi,rsi - mov rcx,-8 - jmp $L$sqrx8x_reduce - -ALIGN 32 -$L$sqrx8x_reduce:: - mov rbx,r8 - mulx r8,rax,QWORD PTR[rbp] - adcx rax,rbx - adox r8,r9 - - mulx r9,rbx,QWORD PTR[8+rbp] - adcx r8,rbx - adox r9,r10 - - mulx r10,rbx,QWORD PTR[16+rbp] - adcx r9,rbx - adox r10,r11 - - mulx r11,rbx,QWORD PTR[24+rbp] - adcx r10,rbx - adox r11,r12 - -DB 0c4h,062h,0e3h,0f6h,0a5h,020h,000h,000h,000h - mov rax,rdx - mov rdx,r8 - adcx r11,rbx - adox r12,r13 - - mulx rdx,rbx,QWORD PTR[((32+8))+rsp] - mov rdx,rax - mov QWORD PTR[((64+48+8))+rcx*8+rsp],rax - - mulx r13,rax,QWORD PTR[40+rbp] - adcx r12,rax - adox r13,r14 - - mulx r14,rax,QWORD PTR[48+rbp] - adcx r13,rax - adox r14,r15 - - mulx r15,rax,QWORD PTR[56+rbp] - mov rdx,rbx - adcx r14,rax - adox r15,rsi - adcx r15,rsi - -DB 067h,067h,067h - inc rcx - jnz $L$sqrx8x_reduce - - mov rax,rsi - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$sqrx8x_no_tail - - mov rdx,QWORD PTR[((48+8))+rsp] - add r8,QWORD PTR[rdi] - lea rbp,QWORD PTR[64+rbp] - mov rcx,-8 - adcx r9,QWORD PTR[8+rdi] - adcx r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - lea rdi,QWORD PTR[64+rdi] - sbb rax,rax - - xor rsi,rsi - mov QWORD PTR[((16+8))+rsp],rax - jmp $L$sqrx8x_tail - -ALIGN 32 -$L$sqrx8x_tail:: - mov rbx,r8 - mulx r8,rax,QWORD PTR[rbp] - adcx rbx,rax - adox r8,r9 - - mulx r9,rax,QWORD PTR[8+rbp] - adcx r8,rax - adox r9,r10 - - mulx r10,rax,QWORD PTR[16+rbp] - adcx r9,rax - adox r10,r11 - - mulx r11,rax,QWORD PTR[24+rbp] - adcx r10,rax - adox r11,r12 - -DB 0c4h,062h,0fbh,0f6h,0a5h,020h,000h,000h,000h - adcx r11,rax - adox r12,r13 - - mulx r13,rax,QWORD PTR[40+rbp] - adcx r12,rax - adox r13,r14 - - mulx r14,rax,QWORD PTR[48+rbp] - adcx r13,rax - adox r14,r15 - - mulx r15,rax,QWORD PTR[56+rbp] - mov rdx,QWORD PTR[((72+48+8))+rcx*8+rsp] - adcx r14,rax - adox r15,rsi - mov QWORD PTR[rcx*8+rdi],rbx - mov rbx,r8 - adcx r15,rsi - - inc rcx - jnz $L$sqrx8x_tail - - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$sqrx8x_tail_done - - sub rsi,QWORD PTR[((16+8))+rsp] - mov rdx,QWORD PTR[((48+8))+rsp] - lea rbp,QWORD PTR[64+rbp] - adc r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - lea rdi,QWORD PTR[64+rdi] - sbb rax,rax - sub rcx,8 - - xor rsi,rsi - mov QWORD PTR[((16+8))+rsp],rax - jmp $L$sqrx8x_tail - -ALIGN 32 -$L$sqrx8x_tail_done:: - xor rax,rax - add r8,QWORD PTR[((24+8))+rsp] - adc r9,0 - adc r10,0 - adc r11,0 - adc r12,0 - adc r13,0 - adc r14,0 - adc r15,0 - adc rax,0 - - sub rsi,QWORD PTR[((16+8))+rsp] -$L$sqrx8x_no_tail:: - adc r8,QWORD PTR[rdi] -DB 102,72,15,126,217 - adc r9,QWORD PTR[8+rdi] - mov rsi,QWORD PTR[56+rbp] -DB 102,72,15,126,213 - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - adc rax,0 - - mov rbx,QWORD PTR[((32+8))+rsp] - mov rdx,QWORD PTR[64+rcx*1+rdi] - - mov QWORD PTR[rdi],r8 - lea r8,QWORD PTR[64+rdi] - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - lea rdi,QWORD PTR[64+rcx*1+rdi] - cmp r8,QWORD PTR[((8+8))+rsp] - jb $L$sqrx8x_reduction_loop - DB 0F3h,0C3h ;repret -bn_sqrx8x_internal ENDP -ALIGN 32 -__bn_postx4x_internal:: - mov r12,QWORD PTR[rbp] - mov r10,rcx - mov r9,rcx - neg rax - sar rcx,3+2 - -DB 102,72,15,126,202 -DB 102,72,15,126,206 - dec r12 - mov r13,QWORD PTR[8+rbp] - xor r8,r8 - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqrx4x_sub_entry - -ALIGN 16 -$L$sqrx4x_sub:: - mov r12,QWORD PTR[rbp] - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] -$L$sqrx4x_sub_entry:: - andn r12,r12,rax - lea rbp,QWORD PTR[32+rbp] - andn r13,r13,rax - andn r14,r14,rax - andn r15,r15,rax - - neg r8 - adc r12,QWORD PTR[rdi] - adc r13,QWORD PTR[8+rdi] - adc r14,QWORD PTR[16+rdi] - adc r15,QWORD PTR[24+rdi] - mov QWORD PTR[rdx],r12 - lea rdi,QWORD PTR[32+rdi] - mov QWORD PTR[8+rdx],r13 - sbb r8,r8 - mov QWORD PTR[16+rdx],r14 - mov QWORD PTR[24+rdx],r15 - lea rdx,QWORD PTR[32+rdx] - - inc rcx - jnz $L$sqrx4x_sub - - neg r9 - - DB 0F3h,0C3h ;repret - -PUBLIC bn_get_bits5 - -ALIGN 16 -bn_get_bits5 PROC PUBLIC - lea r10,QWORD PTR[rcx] - lea r11,QWORD PTR[1+rcx] - mov ecx,edx - shr edx,4 - and ecx,15 - lea eax,DWORD PTR[((-8))+rcx] - cmp ecx,11 - cmova r10,r11 - cmova ecx,eax - movzx eax,WORD PTR[rdx*2+r10] - shr eax,cl - and eax,31 - DB 0F3h,0C3h ;repret -bn_get_bits5 ENDP - -PUBLIC bn_scatter5 - -ALIGN 16 -bn_scatter5 PROC PUBLIC - cmp edx,0 - jz $L$scatter_epilogue - lea r8,QWORD PTR[r9*8+r8] -$L$scatter:: - mov rax,QWORD PTR[rcx] - lea rcx,QWORD PTR[8+rcx] - mov QWORD PTR[r8],rax - lea r8,QWORD PTR[256+r8] - sub edx,1 - jnz $L$scatter -$L$scatter_epilogue:: - DB 0F3h,0C3h ;repret -bn_scatter5 ENDP - -PUBLIC bn_gather5 - -ALIGN 32 -bn_gather5 PROC PUBLIC -$L$SEH_begin_bn_gather5:: - -DB 04ch,08dh,014h,024h -DB 048h,081h,0ech,008h,001h,000h,000h - lea rax,QWORD PTR[$L$inc] - and rsp,-16 - - movd xmm5,r9d - movdqa xmm0,XMMWORD PTR[rax] - movdqa xmm1,XMMWORD PTR[16+rax] - lea r11,QWORD PTR[128+r8] - lea rax,QWORD PTR[128+rsp] - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[(-128)+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[(-112)+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[(-96)+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[(-80)+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[(-64)+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[(-48)+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[(-32)+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[(-16)+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[16+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[32+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[48+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[64+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[80+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[96+rax],xmm2 - movdqa xmm2,xmm4 - movdqa XMMWORD PTR[112+rax],xmm3 - jmp $L$gather - -ALIGN 32 -$L$gather:: - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r11] - movdqa xmm1,XMMWORD PTR[((-112))+r11] - movdqa xmm2,XMMWORD PTR[((-96))+r11] - pand xmm0,XMMWORD PTR[((-128))+rax] - movdqa xmm3,XMMWORD PTR[((-80))+r11] - pand xmm1,XMMWORD PTR[((-112))+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r11] - movdqa xmm1,XMMWORD PTR[((-48))+r11] - movdqa xmm2,XMMWORD PTR[((-32))+r11] - pand xmm0,XMMWORD PTR[((-64))+rax] - movdqa xmm3,XMMWORD PTR[((-16))+r11] - pand xmm1,XMMWORD PTR[((-48))+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r11] - movdqa xmm1,XMMWORD PTR[16+r11] - movdqa xmm2,XMMWORD PTR[32+r11] - pand xmm0,XMMWORD PTR[rax] - movdqa xmm3,XMMWORD PTR[48+r11] - pand xmm1,XMMWORD PTR[16+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r11] - movdqa xmm1,XMMWORD PTR[80+r11] - movdqa xmm2,XMMWORD PTR[96+r11] - pand xmm0,XMMWORD PTR[64+rax] - movdqa xmm3,XMMWORD PTR[112+r11] - pand xmm1,XMMWORD PTR[80+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rax] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - lea r11,QWORD PTR[256+r11] - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - movq QWORD PTR[rcx],xmm0 - lea rcx,QWORD PTR[8+rcx] - sub edx,1 - jnz $L$gather - - lea rsp,QWORD PTR[r10] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_gather5:: -bn_gather5 ENDP -ALIGN 64 -$L$inc:: - DD 0,0,1,1 - DD 2,2,2,2 -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115 -DB 99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111 -DB 114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79 -DB 71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111 -DB 112,101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -mul_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_pop_regs - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[8+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea r10,QWORD PTR[$L$mul_epilogue] - cmp rbx,r10 - ja $L$body_40 - - mov r10,QWORD PTR[192+r8] - mov rax,QWORD PTR[8+r10*8+rax] - - jmp $L$common_pop_regs - -$L$body_40:: - mov rax,QWORD PTR[40+rax] -$L$common_pop_regs:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -mul_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_bn_mul_mont_gather5 - DD imagerel $L$SEH_end_bn_mul_mont_gather5 - DD imagerel $L$SEH_info_bn_mul_mont_gather5 - - DD imagerel $L$SEH_begin_bn_mul4x_mont_gather5 - DD imagerel $L$SEH_end_bn_mul4x_mont_gather5 - DD imagerel $L$SEH_info_bn_mul4x_mont_gather5 - - DD imagerel $L$SEH_begin_bn_power5 - DD imagerel $L$SEH_end_bn_power5 - DD imagerel $L$SEH_info_bn_power5 - - DD imagerel $L$SEH_begin_bn_from_mont8x - DD imagerel $L$SEH_end_bn_from_mont8x - DD imagerel $L$SEH_info_bn_from_mont8x - DD imagerel $L$SEH_begin_bn_mulx4x_mont_gather5 - DD imagerel $L$SEH_end_bn_mulx4x_mont_gather5 - DD imagerel $L$SEH_info_bn_mulx4x_mont_gather5 - - DD imagerel $L$SEH_begin_bn_powerx5 - DD imagerel $L$SEH_end_bn_powerx5 - DD imagerel $L$SEH_info_bn_powerx5 - DD imagerel $L$SEH_begin_bn_gather5 - DD imagerel $L$SEH_end_bn_gather5 - DD imagerel $L$SEH_info_bn_gather5 - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_bn_mul_mont_gather5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul_body,imagerel $L$mul_body,imagerel $L$mul_epilogue -ALIGN 8 -$L$SEH_info_bn_mul4x_mont_gather5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul4x_prologue,imagerel $L$mul4x_body,imagerel $L$mul4x_epilogue -ALIGN 8 -$L$SEH_info_bn_power5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$power5_prologue,imagerel $L$power5_body,imagerel $L$power5_epilogue -ALIGN 8 -$L$SEH_info_bn_from_mont8x:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$from_prologue,imagerel $L$from_body,imagerel $L$from_epilogue -ALIGN 8 -$L$SEH_info_bn_mulx4x_mont_gather5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mulx4x_prologue,imagerel $L$mulx4x_body,imagerel $L$mulx4x_epilogue -ALIGN 8 -$L$SEH_info_bn_powerx5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$powerx5_prologue,imagerel $L$powerx5_body,imagerel $L$powerx5_epilogue -ALIGN 8 -$L$SEH_info_bn_gather5:: -DB 001h,00bh,003h,00ah -DB 00bh,001h,021h,000h -DB 004h,0a3h,000h,000h -ALIGN 8 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/camellia/cmll-x86_64.asm b/deps/openssl/asm/x64-win32-masm/camellia/cmll-x86_64.asm deleted file mode 100644 index 5e6d45157645dc..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/camellia/cmll-x86_64.asm +++ /dev/null @@ -1,2099 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - -PUBLIC Camellia_EncryptBlock - -ALIGN 16 -Camellia_EncryptBlock PROC PUBLIC - mov eax,128 - sub eax,ecx - mov ecx,3 - adc ecx,0 - jmp $L$enc_rounds -Camellia_EncryptBlock ENDP - -PUBLIC Camellia_EncryptBlock_Rounds - -ALIGN 16 -$L$enc_rounds:: -Camellia_EncryptBlock_Rounds PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_EncryptBlock_Rounds:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$enc_prologue:: - - - mov r13,rcx - mov r14,rdx - - shl edi,6 - lea rbp,QWORD PTR[$L$Camellia_SBOX] - lea r15,QWORD PTR[rdi*1+r14] - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - bswap r8d - mov r11d,DWORD PTR[12+rsi] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_encrypt - - bswap r8d - bswap r9d - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_EncryptBlock_Rounds:: -Camellia_EncryptBlock_Rounds ENDP - - -ALIGN 16 -_x86_64_Camellia_encrypt PROC PRIVATE - xor r9d,DWORD PTR[r14] - xor r8d,DWORD PTR[4+r14] - xor r11d,DWORD PTR[8+r14] - xor r10d,DWORD PTR[12+r14] -ALIGN 16 -$L$eloop:: - mov ebx,DWORD PTR[16+r14] - mov eax,DWORD PTR[20+r14] - - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[24+r14] - mov eax,DWORD PTR[28+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[32+r14] - mov eax,DWORD PTR[36+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[40+r14] - mov eax,DWORD PTR[44+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[48+r14] - mov eax,DWORD PTR[52+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[56+r14] - mov eax,DWORD PTR[60+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[64+r14] - mov eax,DWORD PTR[68+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - lea r14,QWORD PTR[64+r14] - cmp r14,r15 - mov edx,DWORD PTR[8+r14] - mov ecx,DWORD PTR[12+r14] - je $L$edone - - and eax,r8d - or edx,r11d - rol eax,1 - xor r10d,edx - xor r9d,eax - and ecx,r10d - or ebx,r9d - rol ecx,1 - xor r8d,ebx - xor r11d,ecx - jmp $L$eloop - -ALIGN 16 -$L$edone:: - xor eax,r10d - xor ebx,r11d - xor ecx,r8d - xor edx,r9d - - mov r8d,eax - mov r9d,ebx - mov r10d,ecx - mov r11d,edx - -DB 0f3h,0c3h -_x86_64_Camellia_encrypt ENDP - - -PUBLIC Camellia_DecryptBlock - -ALIGN 16 -Camellia_DecryptBlock PROC PUBLIC - mov eax,128 - sub eax,ecx - mov ecx,3 - adc ecx,0 - jmp $L$dec_rounds -Camellia_DecryptBlock ENDP - -PUBLIC Camellia_DecryptBlock_Rounds - -ALIGN 16 -$L$dec_rounds:: -Camellia_DecryptBlock_Rounds PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_DecryptBlock_Rounds:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$dec_prologue:: - - - mov r13,rcx - mov r15,rdx - - shl edi,6 - lea rbp,QWORD PTR[$L$Camellia_SBOX] - lea r14,QWORD PTR[rdi*1+r15] - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - bswap r8d - mov r11d,DWORD PTR[12+rsi] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_decrypt - - bswap r8d - bswap r9d - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_DecryptBlock_Rounds:: -Camellia_DecryptBlock_Rounds ENDP - - -ALIGN 16 -_x86_64_Camellia_decrypt PROC PRIVATE - xor r9d,DWORD PTR[r14] - xor r8d,DWORD PTR[4+r14] - xor r11d,DWORD PTR[8+r14] - xor r10d,DWORD PTR[12+r14] -ALIGN 16 -$L$dloop:: - mov ebx,DWORD PTR[((-8))+r14] - mov eax,DWORD PTR[((-4))+r14] - - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-16))+r14] - mov eax,DWORD PTR[((-12))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-24))+r14] - mov eax,DWORD PTR[((-20))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-32))+r14] - mov eax,DWORD PTR[((-28))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-40))+r14] - mov eax,DWORD PTR[((-36))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-48))+r14] - mov eax,DWORD PTR[((-44))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-56))+r14] - mov eax,DWORD PTR[((-52))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - lea r14,QWORD PTR[((-64))+r14] - cmp r14,r15 - mov edx,DWORD PTR[r14] - mov ecx,DWORD PTR[4+r14] - je $L$ddone - - and eax,r8d - or edx,r11d - rol eax,1 - xor r10d,edx - xor r9d,eax - and ecx,r10d - or ebx,r9d - rol ecx,1 - xor r8d,ebx - xor r11d,ecx - - jmp $L$dloop - -ALIGN 16 -$L$ddone:: - xor ecx,r10d - xor edx,r11d - xor eax,r8d - xor ebx,r9d - - mov r8d,ecx - mov r9d,edx - mov r10d,eax - mov r11d,ebx - -DB 0f3h,0c3h -_x86_64_Camellia_decrypt ENDP -PUBLIC Camellia_Ekeygen - -ALIGN 16 -Camellia_Ekeygen PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_Ekeygen:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$key_prologue:: - - mov r15d,edi - mov r13,rdx - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - mov r11d,DWORD PTR[12+rsi] - - bswap r8d - bswap r9d - bswap r10d - bswap r11d - mov DWORD PTR[r13],r9d - mov DWORD PTR[4+r13],r8d - mov DWORD PTR[8+r13],r11d - mov DWORD PTR[12+r13],r10d - cmp r15,128 - je $L$1st128 - - mov r8d,DWORD PTR[16+rsi] - mov r9d,DWORD PTR[20+rsi] - cmp r15,192 - je $L$1st192 - mov r10d,DWORD PTR[24+rsi] - mov r11d,DWORD PTR[28+rsi] - jmp $L$1st256 -$L$1st192:: - mov r10d,r8d - mov r11d,r9d - not r10d - not r11d -$L$1st256:: - bswap r8d - bswap r9d - bswap r10d - bswap r11d - mov DWORD PTR[32+r13],r9d - mov DWORD PTR[36+r13],r8d - mov DWORD PTR[40+r13],r11d - mov DWORD PTR[44+r13],r10d - xor r9d,DWORD PTR[r13] - xor r8d,DWORD PTR[4+r13] - xor r11d,DWORD PTR[8+r13] - xor r10d,DWORD PTR[12+r13] - -$L$1st128:: - lea r14,QWORD PTR[$L$Camellia_SIGMA] - lea rbp,QWORD PTR[$L$Camellia_SBOX] - - mov ebx,DWORD PTR[r14] - mov eax,DWORD PTR[4+r14] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[8+r14] - mov eax,DWORD PTR[12+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[16+r14] - mov eax,DWORD PTR[20+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor r9d,DWORD PTR[r13] - xor r8d,DWORD PTR[4+r13] - xor r11d,DWORD PTR[8+r13] - xor r10d,DWORD PTR[12+r13] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[24+r14] - mov eax,DWORD PTR[28+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[32+r14] - mov eax,DWORD PTR[36+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - cmp r15,128 - jne $L$2nd256 - - lea r13,QWORD PTR[128+r13] - shl r8,32 - shl r10,32 - or r8,r9 - or r10,r11 - mov rax,QWORD PTR[((-128))+r13] - mov rbx,QWORD PTR[((-120))+r13] - mov QWORD PTR[((-112))+r13],r8 - mov QWORD PTR[((-104))+r13],r10 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[((-96))+r13],rax - mov QWORD PTR[((-88))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-80))+r13],r8 - mov QWORD PTR[((-72))+r13],r10 - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-64))+r13],r8 - mov QWORD PTR[((-56))+r13],r10 - mov r11,rax - shl rax,30 - mov r9,rbx - shr r9,34 - shr r11,34 - or rax,r9 - shl rbx,30 - or rbx,r11 - mov QWORD PTR[((-48))+r13],rax - mov QWORD PTR[((-40))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-32))+r13],r8 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[((-24))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-16))+r13],r8 - mov QWORD PTR[((-8))+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[r13],rax - mov QWORD PTR[8+r13],rbx - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[16+r13],rax - mov QWORD PTR[24+r13],rbx - mov r11,r8 - shl r8,34 - mov r9,r10 - shr r9,30 - shr r11,30 - or r8,r9 - shl r10,34 - or r10,r11 - mov QWORD PTR[32+r13],r8 - mov QWORD PTR[40+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[48+r13],rax - mov QWORD PTR[56+r13],rbx - mov r11,r8 - shl r8,17 - mov r9,r10 - shr r9,47 - shr r11,47 - or r8,r9 - shl r10,17 - or r10,r11 - mov QWORD PTR[64+r13],r8 - mov QWORD PTR[72+r13],r10 - mov eax,3 - jmp $L$done -ALIGN 16 -$L$2nd256:: - mov DWORD PTR[48+r13],r9d - mov DWORD PTR[52+r13],r8d - mov DWORD PTR[56+r13],r11d - mov DWORD PTR[60+r13],r10d - xor r9d,DWORD PTR[32+r13] - xor r8d,DWORD PTR[36+r13] - xor r11d,DWORD PTR[40+r13] - xor r10d,DWORD PTR[44+r13] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[40+r14] - mov eax,DWORD PTR[44+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[48+r14] - mov eax,DWORD PTR[52+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - mov rax,QWORD PTR[r13] - mov rbx,QWORD PTR[8+r13] - mov rcx,QWORD PTR[32+r13] - mov rdx,QWORD PTR[40+r13] - mov r14,QWORD PTR[48+r13] - mov r15,QWORD PTR[56+r13] - lea r13,QWORD PTR[128+r13] - shl r8,32 - shl r10,32 - or r8,r9 - or r10,r11 - mov QWORD PTR[((-112))+r13],r8 - mov QWORD PTR[((-104))+r13],r10 - mov r11,rcx - shl rcx,15 - mov r9,rdx - shr r9,49 - shr r11,49 - or rcx,r9 - shl rdx,15 - or rdx,r11 - mov QWORD PTR[((-96))+r13],rcx - mov QWORD PTR[((-88))+r13],rdx - mov r11,r14 - shl r14,15 - mov r9,r15 - shr r9,49 - shr r11,49 - or r14,r9 - shl r15,15 - or r15,r11 - mov QWORD PTR[((-80))+r13],r14 - mov QWORD PTR[((-72))+r13],r15 - mov r11,rcx - shl rcx,15 - mov r9,rdx - shr r9,49 - shr r11,49 - or rcx,r9 - shl rdx,15 - or rdx,r11 - mov QWORD PTR[((-64))+r13],rcx - mov QWORD PTR[((-56))+r13],rdx - mov r11,r8 - shl r8,30 - mov r9,r10 - shr r9,34 - shr r11,34 - or r8,r9 - shl r10,30 - or r10,r11 - mov QWORD PTR[((-48))+r13],r8 - mov QWORD PTR[((-40))+r13],r10 - mov r11,rax - shl rax,45 - mov r9,rbx - shr r9,19 - shr r11,19 - or rax,r9 - shl rbx,45 - or rbx,r11 - mov QWORD PTR[((-32))+r13],rax - mov QWORD PTR[((-24))+r13],rbx - mov r11,r14 - shl r14,30 - mov r9,r15 - shr r9,34 - shr r11,34 - or r14,r9 - shl r15,30 - or r15,r11 - mov QWORD PTR[((-16))+r13],r14 - mov QWORD PTR[((-8))+r13],r15 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[r13],rax - mov QWORD PTR[8+r13],rbx - mov r11,rcx - shl rcx,30 - mov r9,rdx - shr r9,34 - shr r11,34 - or rcx,r9 - shl rdx,30 - or rdx,r11 - mov QWORD PTR[16+r13],rcx - mov QWORD PTR[24+r13],rdx - mov r11,r8 - shl r8,30 - mov r9,r10 - shr r9,34 - shr r11,34 - or r8,r9 - shl r10,30 - or r10,r11 - mov QWORD PTR[32+r13],r8 - mov QWORD PTR[40+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[48+r13],rax - mov QWORD PTR[56+r13],rbx - mov r11,r14 - shl r14,32 - mov r9,r15 - shr r9,32 - shr r11,32 - or r14,r9 - shl r15,32 - or r15,r11 - mov QWORD PTR[64+r13],r14 - mov QWORD PTR[72+r13],r15 - mov r11,rcx - shl rcx,34 - mov r9,rdx - shr r9,30 - shr r11,30 - or rcx,r9 - shl rdx,34 - or rdx,r11 - mov QWORD PTR[80+r13],rcx - mov QWORD PTR[88+r13],rdx - mov r11,r14 - shl r14,17 - mov r9,r15 - shr r9,47 - shr r11,47 - or r14,r9 - shl r15,17 - or r15,r11 - mov QWORD PTR[96+r13],r14 - mov QWORD PTR[104+r13],r15 - mov r11,rax - shl rax,34 - mov r9,rbx - shr r9,30 - shr r11,30 - or rax,r9 - shl rbx,34 - or rbx,r11 - mov QWORD PTR[112+r13],rax - mov QWORD PTR[120+r13],rbx - mov r11,r8 - shl r8,51 - mov r9,r10 - shr r9,13 - shr r11,13 - or r8,r9 - shl r10,51 - or r10,r11 - mov QWORD PTR[128+r13],r8 - mov QWORD PTR[136+r13],r10 - mov eax,4 -$L$done:: - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_Ekeygen:: -Camellia_Ekeygen ENDP -ALIGN 64 -$L$Camellia_SIGMA:: - DD 03bcc908bh,0a09e667fh,04caa73b2h,0b67ae858h - DD 0e94f82beh,0c6ef372fh,0f1d36f1ch,054ff53a5h - DD 0de682d1dh,010e527fah,0b3e6c1fdh,0b05688c2h - DD 0,0,0,0 -$L$Camellia_SBOX:: - DD 070707000h,070700070h - DD 082828200h,02c2c002ch - DD 02c2c2c00h,0b3b300b3h - DD 0ececec00h,0c0c000c0h - DD 0b3b3b300h,0e4e400e4h - DD 027272700h,057570057h - DD 0c0c0c000h,0eaea00eah - DD 0e5e5e500h,0aeae00aeh - DD 0e4e4e400h,023230023h - DD 085858500h,06b6b006bh - DD 057575700h,045450045h - DD 035353500h,0a5a500a5h - DD 0eaeaea00h,0eded00edh - DD 00c0c0c00h,04f4f004fh - DD 0aeaeae00h,01d1d001dh - DD 041414100h,092920092h - DD 023232300h,086860086h - DD 0efefef00h,0afaf00afh - DD 06b6b6b00h,07c7c007ch - DD 093939300h,01f1f001fh - DD 045454500h,03e3e003eh - DD 019191900h,0dcdc00dch - DD 0a5a5a500h,05e5e005eh - DD 021212100h,00b0b000bh - DD 0ededed00h,0a6a600a6h - DD 00e0e0e00h,039390039h - DD 04f4f4f00h,0d5d500d5h - DD 04e4e4e00h,05d5d005dh - DD 01d1d1d00h,0d9d900d9h - DD 065656500h,05a5a005ah - DD 092929200h,051510051h - DD 0bdbdbd00h,06c6c006ch - DD 086868600h,08b8b008bh - DD 0b8b8b800h,09a9a009ah - DD 0afafaf00h,0fbfb00fbh - DD 08f8f8f00h,0b0b000b0h - DD 07c7c7c00h,074740074h - DD 0ebebeb00h,02b2b002bh - DD 01f1f1f00h,0f0f000f0h - DD 0cecece00h,084840084h - DD 03e3e3e00h,0dfdf00dfh - DD 030303000h,0cbcb00cbh - DD 0dcdcdc00h,034340034h - DD 05f5f5f00h,076760076h - DD 05e5e5e00h,06d6d006dh - DD 0c5c5c500h,0a9a900a9h - DD 00b0b0b00h,0d1d100d1h - DD 01a1a1a00h,004040004h - DD 0a6a6a600h,014140014h - DD 0e1e1e100h,03a3a003ah - DD 039393900h,0dede00deh - DD 0cacaca00h,011110011h - DD 0d5d5d500h,032320032h - DD 047474700h,09c9c009ch - DD 05d5d5d00h,053530053h - DD 03d3d3d00h,0f2f200f2h - DD 0d9d9d900h,0fefe00feh - DD 001010100h,0cfcf00cfh - DD 05a5a5a00h,0c3c300c3h - DD 0d6d6d600h,07a7a007ah - DD 051515100h,024240024h - DD 056565600h,0e8e800e8h - DD 06c6c6c00h,060600060h - DD 04d4d4d00h,069690069h - DD 08b8b8b00h,0aaaa00aah - DD 00d0d0d00h,0a0a000a0h - DD 09a9a9a00h,0a1a100a1h - DD 066666600h,062620062h - DD 0fbfbfb00h,054540054h - DD 0cccccc00h,01e1e001eh - DD 0b0b0b000h,0e0e000e0h - DD 02d2d2d00h,064640064h - DD 074747400h,010100010h - DD 012121200h,000000000h - DD 02b2b2b00h,0a3a300a3h - DD 020202000h,075750075h - DD 0f0f0f000h,08a8a008ah - DD 0b1b1b100h,0e6e600e6h - DD 084848400h,009090009h - DD 099999900h,0dddd00ddh - DD 0dfdfdf00h,087870087h - DD 04c4c4c00h,083830083h - DD 0cbcbcb00h,0cdcd00cdh - DD 0c2c2c200h,090900090h - DD 034343400h,073730073h - DD 07e7e7e00h,0f6f600f6h - DD 076767600h,09d9d009dh - DD 005050500h,0bfbf00bfh - DD 06d6d6d00h,052520052h - DD 0b7b7b700h,0d8d800d8h - DD 0a9a9a900h,0c8c800c8h - DD 031313100h,0c6c600c6h - DD 0d1d1d100h,081810081h - DD 017171700h,06f6f006fh - DD 004040400h,013130013h - DD 0d7d7d700h,063630063h - DD 014141400h,0e9e900e9h - DD 058585800h,0a7a700a7h - DD 03a3a3a00h,09f9f009fh - DD 061616100h,0bcbc00bch - DD 0dedede00h,029290029h - DD 01b1b1b00h,0f9f900f9h - DD 011111100h,02f2f002fh - DD 01c1c1c00h,0b4b400b4h - DD 032323200h,078780078h - DD 00f0f0f00h,006060006h - DD 09c9c9c00h,0e7e700e7h - DD 016161600h,071710071h - DD 053535300h,0d4d400d4h - DD 018181800h,0abab00abh - DD 0f2f2f200h,088880088h - DD 022222200h,08d8d008dh - DD 0fefefe00h,072720072h - DD 044444400h,0b9b900b9h - DD 0cfcfcf00h,0f8f800f8h - DD 0b2b2b200h,0acac00ach - DD 0c3c3c300h,036360036h - DD 0b5b5b500h,02a2a002ah - DD 07a7a7a00h,03c3c003ch - DD 091919100h,0f1f100f1h - DD 024242400h,040400040h - DD 008080800h,0d3d300d3h - DD 0e8e8e800h,0bbbb00bbh - DD 0a8a8a800h,043430043h - DD 060606000h,015150015h - DD 0fcfcfc00h,0adad00adh - DD 069696900h,077770077h - DD 050505000h,080800080h - DD 0aaaaaa00h,082820082h - DD 0d0d0d000h,0ecec00ech - DD 0a0a0a000h,027270027h - DD 07d7d7d00h,0e5e500e5h - DD 0a1a1a100h,085850085h - DD 089898900h,035350035h - DD 062626200h,00c0c000ch - DD 097979700h,041410041h - DD 054545400h,0efef00efh - DD 05b5b5b00h,093930093h - DD 01e1e1e00h,019190019h - DD 095959500h,021210021h - DD 0e0e0e000h,00e0e000eh - DD 0ffffff00h,04e4e004eh - DD 064646400h,065650065h - DD 0d2d2d200h,0bdbd00bdh - DD 010101000h,0b8b800b8h - DD 0c4c4c400h,08f8f008fh - DD 000000000h,0ebeb00ebh - DD 048484800h,0cece00ceh - DD 0a3a3a300h,030300030h - DD 0f7f7f700h,05f5f005fh - DD 075757500h,0c5c500c5h - DD 0dbdbdb00h,01a1a001ah - DD 08a8a8a00h,0e1e100e1h - DD 003030300h,0caca00cah - DD 0e6e6e600h,047470047h - DD 0dadada00h,03d3d003dh - DD 009090900h,001010001h - DD 03f3f3f00h,0d6d600d6h - DD 0dddddd00h,056560056h - DD 094949400h,04d4d004dh - DD 087878700h,00d0d000dh - DD 05c5c5c00h,066660066h - DD 083838300h,0cccc00cch - DD 002020200h,02d2d002dh - DD 0cdcdcd00h,012120012h - DD 04a4a4a00h,020200020h - DD 090909000h,0b1b100b1h - DD 033333300h,099990099h - DD 073737300h,04c4c004ch - DD 067676700h,0c2c200c2h - DD 0f6f6f600h,07e7e007eh - DD 0f3f3f300h,005050005h - DD 09d9d9d00h,0b7b700b7h - DD 07f7f7f00h,031310031h - DD 0bfbfbf00h,017170017h - DD 0e2e2e200h,0d7d700d7h - DD 052525200h,058580058h - DD 09b9b9b00h,061610061h - DD 0d8d8d800h,01b1b001bh - DD 026262600h,01c1c001ch - DD 0c8c8c800h,00f0f000fh - DD 037373700h,016160016h - DD 0c6c6c600h,018180018h - DD 03b3b3b00h,022220022h - DD 081818100h,044440044h - DD 096969600h,0b2b200b2h - DD 06f6f6f00h,0b5b500b5h - DD 04b4b4b00h,091910091h - DD 013131300h,008080008h - DD 0bebebe00h,0a8a800a8h - DD 063636300h,0fcfc00fch - DD 02e2e2e00h,050500050h - DD 0e9e9e900h,0d0d000d0h - DD 079797900h,07d7d007dh - DD 0a7a7a700h,089890089h - DD 08c8c8c00h,097970097h - DD 09f9f9f00h,05b5b005bh - DD 06e6e6e00h,095950095h - DD 0bcbcbc00h,0ffff00ffh - DD 08e8e8e00h,0d2d200d2h - DD 029292900h,0c4c400c4h - DD 0f5f5f500h,048480048h - DD 0f9f9f900h,0f7f700f7h - DD 0b6b6b600h,0dbdb00dbh - DD 02f2f2f00h,003030003h - DD 0fdfdfd00h,0dada00dah - DD 0b4b4b400h,03f3f003fh - DD 059595900h,094940094h - DD 078787800h,05c5c005ch - DD 098989800h,002020002h - DD 006060600h,04a4a004ah - DD 06a6a6a00h,033330033h - DD 0e7e7e700h,067670067h - DD 046464600h,0f3f300f3h - DD 071717100h,07f7f007fh - DD 0bababa00h,0e2e200e2h - DD 0d4d4d400h,09b9b009bh - DD 025252500h,026260026h - DD 0ababab00h,037370037h - DD 042424200h,03b3b003bh - DD 088888800h,096960096h - DD 0a2a2a200h,04b4b004bh - DD 08d8d8d00h,0bebe00beh - DD 0fafafa00h,02e2e002eh - DD 072727200h,079790079h - DD 007070700h,08c8c008ch - DD 0b9b9b900h,06e6e006eh - DD 055555500h,08e8e008eh - DD 0f8f8f800h,0f5f500f5h - DD 0eeeeee00h,0b6b600b6h - DD 0acacac00h,0fdfd00fdh - DD 00a0a0a00h,059590059h - DD 036363600h,098980098h - DD 049494900h,06a6a006ah - DD 02a2a2a00h,046460046h - DD 068686800h,0baba00bah - DD 03c3c3c00h,025250025h - DD 038383800h,042420042h - DD 0f1f1f100h,0a2a200a2h - DD 0a4a4a400h,0fafa00fah - DD 040404000h,007070007h - DD 028282800h,055550055h - DD 0d3d3d300h,0eeee00eeh - DD 07b7b7b00h,00a0a000ah - DD 0bbbbbb00h,049490049h - DD 0c9c9c900h,068680068h - DD 043434300h,038380038h - DD 0c1c1c100h,0a4a400a4h - DD 015151500h,028280028h - DD 0e3e3e300h,07b7b007bh - DD 0adadad00h,0c9c900c9h - DD 0f4f4f400h,0c1c100c1h - DD 077777700h,0e3e300e3h - DD 0c7c7c700h,0f4f400f4h - DD 080808000h,0c7c700c7h - DD 09e9e9e00h,09e9e009eh - DD 000e0e0e0h,038003838h - DD 000050505h,041004141h - DD 000585858h,016001616h - DD 000d9d9d9h,076007676h - DD 000676767h,0d900d9d9h - DD 0004e4e4eh,093009393h - DD 000818181h,060006060h - DD 000cbcbcbh,0f200f2f2h - DD 000c9c9c9h,072007272h - DD 0000b0b0bh,0c200c2c2h - DD 000aeaeaeh,0ab00ababh - DD 0006a6a6ah,09a009a9ah - DD 000d5d5d5h,075007575h - DD 000181818h,006000606h - DD 0005d5d5dh,057005757h - DD 000828282h,0a000a0a0h - DD 000464646h,091009191h - DD 000dfdfdfh,0f700f7f7h - DD 000d6d6d6h,0b500b5b5h - DD 000272727h,0c900c9c9h - DD 0008a8a8ah,0a200a2a2h - DD 000323232h,08c008c8ch - DD 0004b4b4bh,0d200d2d2h - DD 000424242h,090009090h - DD 000dbdbdbh,0f600f6f6h - DD 0001c1c1ch,007000707h - DD 0009e9e9eh,0a700a7a7h - DD 0009c9c9ch,027002727h - DD 0003a3a3ah,08e008e8eh - DD 000cacacah,0b200b2b2h - DD 000252525h,049004949h - DD 0007b7b7bh,0de00dedeh - DD 0000d0d0dh,043004343h - DD 000717171h,05c005c5ch - DD 0005f5f5fh,0d700d7d7h - DD 0001f1f1fh,0c700c7c7h - DD 000f8f8f8h,03e003e3eh - DD 000d7d7d7h,0f500f5f5h - DD 0003e3e3eh,08f008f8fh - DD 0009d9d9dh,067006767h - DD 0007c7c7ch,01f001f1fh - DD 000606060h,018001818h - DD 000b9b9b9h,06e006e6eh - DD 000bebebeh,0af00afafh - DD 000bcbcbch,02f002f2fh - DD 0008b8b8bh,0e200e2e2h - DD 000161616h,085008585h - DD 000343434h,00d000d0dh - DD 0004d4d4dh,053005353h - DD 000c3c3c3h,0f000f0f0h - DD 000727272h,09c009c9ch - DD 000959595h,065006565h - DD 000abababh,0ea00eaeah - DD 0008e8e8eh,0a300a3a3h - DD 000bababah,0ae00aeaeh - DD 0007a7a7ah,09e009e9eh - DD 000b3b3b3h,0ec00ecech - DD 000020202h,080008080h - DD 000b4b4b4h,02d002d2dh - DD 000adadadh,06b006b6bh - DD 000a2a2a2h,0a800a8a8h - DD 000acacach,02b002b2bh - DD 000d8d8d8h,036003636h - DD 0009a9a9ah,0a600a6a6h - DD 000171717h,0c500c5c5h - DD 0001a1a1ah,086008686h - DD 000353535h,04d004d4dh - DD 000cccccch,033003333h - DD 000f7f7f7h,0fd00fdfdh - DD 000999999h,066006666h - DD 000616161h,058005858h - DD 0005a5a5ah,096009696h - DD 000e8e8e8h,03a003a3ah - DD 000242424h,009000909h - DD 000565656h,095009595h - DD 000404040h,010001010h - DD 000e1e1e1h,078007878h - DD 000636363h,0d800d8d8h - DD 000090909h,042004242h - DD 000333333h,0cc00cccch - DD 000bfbfbfh,0ef00efefh - DD 000989898h,026002626h - DD 000979797h,0e500e5e5h - DD 000858585h,061006161h - DD 000686868h,01a001a1ah - DD 000fcfcfch,03f003f3fh - DD 000ececech,03b003b3bh - DD 0000a0a0ah,082008282h - DD 000dadadah,0b600b6b6h - DD 0006f6f6fh,0db00dbdbh - DD 000535353h,0d400d4d4h - DD 000626262h,098009898h - DD 000a3a3a3h,0e800e8e8h - DD 0002e2e2eh,08b008b8bh - DD 000080808h,002000202h - DD 000afafafh,0eb00ebebh - DD 000282828h,00a000a0ah - DD 000b0b0b0h,02c002c2ch - DD 000747474h,01d001d1dh - DD 000c2c2c2h,0b000b0b0h - DD 000bdbdbdh,06f006f6fh - DD 000363636h,08d008d8dh - DD 000222222h,088008888h - DD 000383838h,00e000e0eh - DD 000646464h,019001919h - DD 0001e1e1eh,087008787h - DD 000393939h,04e004e4eh - DD 0002c2c2ch,00b000b0bh - DD 000a6a6a6h,0a900a9a9h - DD 000303030h,00c000c0ch - DD 000e5e5e5h,079007979h - DD 000444444h,011001111h - DD 000fdfdfdh,07f007f7fh - DD 000888888h,022002222h - DD 0009f9f9fh,0e700e7e7h - DD 000656565h,059005959h - DD 000878787h,0e100e1e1h - DD 0006b6b6bh,0da00dadah - DD 000f4f4f4h,03d003d3dh - DD 000232323h,0c800c8c8h - DD 000484848h,012001212h - DD 000101010h,004000404h - DD 000d1d1d1h,074007474h - DD 000515151h,054005454h - DD 000c0c0c0h,030003030h - DD 000f9f9f9h,07e007e7eh - DD 000d2d2d2h,0b400b4b4h - DD 000a0a0a0h,028002828h - DD 000555555h,055005555h - DD 000a1a1a1h,068006868h - DD 000414141h,050005050h - DD 000fafafah,0be00bebeh - DD 000434343h,0d000d0d0h - DD 000131313h,0c400c4c4h - DD 000c4c4c4h,031003131h - DD 0002f2f2fh,0cb00cbcbh - DD 000a8a8a8h,02a002a2ah - DD 000b6b6b6h,0ad00adadh - DD 0003c3c3ch,00f000f0fh - DD 0002b2b2bh,0ca00cacah - DD 000c1c1c1h,070007070h - DD 000ffffffh,0ff00ffffh - DD 000c8c8c8h,032003232h - DD 000a5a5a5h,069006969h - DD 000202020h,008000808h - DD 000898989h,062006262h - DD 000000000h,000000000h - DD 000909090h,024002424h - DD 000474747h,0d100d1d1h - DD 000efefefh,0fb00fbfbh - DD 000eaeaeah,0ba00babah - DD 000b7b7b7h,0ed00ededh - DD 000151515h,045004545h - DD 000060606h,081008181h - DD 000cdcdcdh,073007373h - DD 000b5b5b5h,06d006d6dh - DD 000121212h,084008484h - DD 0007e7e7eh,09f009f9fh - DD 000bbbbbbh,0ee00eeeeh - DD 000292929h,04a004a4ah - DD 0000f0f0fh,0c300c3c3h - DD 000b8b8b8h,02e002e2eh - DD 000070707h,0c100c1c1h - DD 000040404h,001000101h - DD 0009b9b9bh,0e600e6e6h - DD 000949494h,025002525h - DD 000212121h,048004848h - DD 000666666h,099009999h - DD 000e6e6e6h,0b900b9b9h - DD 000cececeh,0b300b3b3h - DD 000edededh,07b007b7bh - DD 000e7e7e7h,0f900f9f9h - DD 0003b3b3bh,0ce00ceceh - DD 000fefefeh,0bf00bfbfh - DD 0007f7f7fh,0df00dfdfh - DD 000c5c5c5h,071007171h - DD 000a4a4a4h,029002929h - DD 000373737h,0cd00cdcdh - DD 000b1b1b1h,06c006c6ch - DD 0004c4c4ch,013001313h - DD 000919191h,064006464h - DD 0006e6e6eh,09b009b9bh - DD 0008d8d8dh,063006363h - DD 000767676h,09d009d9dh - DD 000030303h,0c000c0c0h - DD 0002d2d2dh,04b004b4bh - DD 000dededeh,0b700b7b7h - DD 000969696h,0a500a5a5h - DD 000262626h,089008989h - DD 0007d7d7dh,05f005f5fh - DD 000c6c6c6h,0b100b1b1h - DD 0005c5c5ch,017001717h - DD 000d3d3d3h,0f400f4f4h - DD 000f2f2f2h,0bc00bcbch - DD 0004f4f4fh,0d300d3d3h - DD 000191919h,046004646h - DD 0003f3f3fh,0cf00cfcfh - DD 000dcdcdch,037003737h - DD 000797979h,05e005e5eh - DD 0001d1d1dh,047004747h - DD 000525252h,094009494h - DD 000ebebebh,0fa00fafah - DD 000f3f3f3h,0fc00fcfch - DD 0006d6d6dh,05b005b5bh - DD 0005e5e5eh,097009797h - DD 000fbfbfbh,0fe00fefeh - DD 000696969h,05a005a5ah - DD 000b2b2b2h,0ac00acach - DD 000f0f0f0h,03c003c3ch - DD 000313131h,04c004c4ch - DD 0000c0c0ch,003000303h - DD 000d4d4d4h,035003535h - DD 000cfcfcfh,0f300f3f3h - DD 0008c8c8ch,023002323h - DD 000e2e2e2h,0b800b8b8h - DD 000757575h,05d005d5dh - DD 000a9a9a9h,06a006a6ah - DD 0004a4a4ah,092009292h - DD 000575757h,0d500d5d5h - DD 000848484h,021002121h - DD 000111111h,044004444h - DD 000454545h,051005151h - DD 0001b1b1bh,0c600c6c6h - DD 000f5f5f5h,07d007d7dh - DD 000e4e4e4h,039003939h - DD 0000e0e0eh,083008383h - DD 000737373h,0dc00dcdch - DD 000aaaaaah,0aa00aaaah - DD 000f1f1f1h,07c007c7ch - DD 000ddddddh,077007777h - DD 000595959h,056005656h - DD 000141414h,005000505h - DD 0006c6c6ch,01b001b1bh - DD 000929292h,0a400a4a4h - DD 000545454h,015001515h - DD 000d0d0d0h,034003434h - DD 000787878h,01e001e1eh - DD 000707070h,01c001c1ch - DD 000e3e3e3h,0f800f8f8h - DD 000494949h,052005252h - DD 000808080h,020002020h - DD 000505050h,014001414h - DD 000a7a7a7h,0e900e9e9h - DD 000f6f6f6h,0bd00bdbdh - DD 000777777h,0dd00ddddh - DD 000939393h,0e400e4e4h - DD 000868686h,0a100a1a1h - DD 000838383h,0e000e0e0h - DD 0002a2a2ah,08a008a8ah - DD 000c7c7c7h,0f100f1f1h - DD 0005b5b5bh,0d600d6d6h - DD 000e9e9e9h,07a007a7ah - DD 000eeeeeeh,0bb00bbbbh - DD 0008f8f8fh,0e300e3e3h - DD 000010101h,040004040h - DD 0003d3d3dh,04f004f4fh -PUBLIC Camellia_cbc_encrypt - -ALIGN 16 -Camellia_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp rdx,0 - je $L$cbc_abort - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$cbc_prologue:: - - mov rbp,rsp - sub rsp,64 - and rsp,-64 - - - - lea r10,QWORD PTR[((-64-63))+rcx] - sub r10,rsp - neg r10 - and r10,03C0h - sub rsp,r10 - - - mov r12,rdi - mov r13,rsi - mov rbx,r8 - mov r14,rcx - mov r15d,DWORD PTR[272+rcx] - - mov QWORD PTR[40+rsp],r8 - mov QWORD PTR[48+rsp],rbp - -$L$cbc_body:: - lea rbp,QWORD PTR[$L$Camellia_SBOX] - - mov ecx,32 -ALIGN 4 -$L$cbc_prefetch_sbox:: - mov rax,QWORD PTR[rbp] - mov rsi,QWORD PTR[32+rbp] - mov rdi,QWORD PTR[64+rbp] - mov r11,QWORD PTR[96+rbp] - lea rbp,QWORD PTR[128+rbp] - loop $L$cbc_prefetch_sbox - sub rbp,4096 - shl r15,6 - mov rcx,rdx - lea r15,QWORD PTR[r15*1+r14] - - cmp r9d,0 - je $L$CBC_DECRYPT - - and rdx,-16 - and rcx,15 - lea rdx,QWORD PTR[rdx*1+r12] - mov QWORD PTR[rsp],r14 - mov QWORD PTR[8+rsp],rdx - mov QWORD PTR[16+rsp],rcx - - cmp rdx,r12 - mov r8d,DWORD PTR[rbx] - mov r9d,DWORD PTR[4+rbx] - mov r10d,DWORD PTR[8+rbx] - mov r11d,DWORD PTR[12+rbx] - je $L$cbc_enc_tail - jmp $L$cbc_eloop - -ALIGN 16 -$L$cbc_eloop:: - xor r8d,DWORD PTR[r12] - xor r9d,DWORD PTR[4+r12] - xor r10d,DWORD PTR[8+r12] - bswap r8d - xor r11d,DWORD PTR[12+r12] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_encrypt - - mov r14,QWORD PTR[rsp] - bswap r8d - mov rdx,QWORD PTR[8+rsp] - bswap r9d - mov rcx,QWORD PTR[16+rsp] - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - lea r12,QWORD PTR[16+r12] - mov DWORD PTR[12+r13],r11d - cmp r12,rdx - lea r13,QWORD PTR[16+r13] - jne $L$cbc_eloop - - cmp rcx,0 - jne $L$cbc_enc_tail - - mov r13,QWORD PTR[40+rsp] - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - jmp $L$cbc_done - -ALIGN 16 -$L$cbc_enc_tail:: - xor rax,rax - mov QWORD PTR[((0+24))+rsp],rax - mov QWORD PTR[((8+24))+rsp],rax - mov QWORD PTR[16+rsp],rax - -$L$cbc_enc_pushf:: - pushfq - cld - mov rsi,r12 - lea rdi,QWORD PTR[((8+24))+rsp] - DD 09066A4F3h - popfq -$L$cbc_enc_popf:: - - lea r12,QWORD PTR[24+rsp] - lea rax,QWORD PTR[((16+24))+rsp] - mov QWORD PTR[8+rsp],rax - jmp $L$cbc_eloop - -ALIGN 16 -$L$CBC_DECRYPT:: - xchg r15,r14 - add rdx,15 - and rcx,15 - and rdx,-16 - mov QWORD PTR[rsp],r14 - lea rdx,QWORD PTR[rdx*1+r12] - mov QWORD PTR[8+rsp],rdx - mov QWORD PTR[16+rsp],rcx - - mov rax,QWORD PTR[rbx] - mov rbx,QWORD PTR[8+rbx] - jmp $L$cbc_dloop -ALIGN 16 -$L$cbc_dloop:: - mov r8d,DWORD PTR[r12] - mov r9d,DWORD PTR[4+r12] - mov r10d,DWORD PTR[8+r12] - bswap r8d - mov r11d,DWORD PTR[12+r12] - bswap r9d - mov QWORD PTR[((0+24))+rsp],rax - bswap r10d - mov QWORD PTR[((8+24))+rsp],rbx - bswap r11d - - call _x86_64_Camellia_decrypt - - mov r14,QWORD PTR[rsp] - mov rdx,QWORD PTR[8+rsp] - mov rcx,QWORD PTR[16+rsp] - - bswap r8d - mov rax,QWORD PTR[r12] - bswap r9d - mov rbx,QWORD PTR[8+r12] - bswap r10d - xor r8d,DWORD PTR[((0+24))+rsp] - bswap r11d - xor r9d,DWORD PTR[((4+24))+rsp] - xor r10d,DWORD PTR[((8+24))+rsp] - lea r12,QWORD PTR[16+r12] - xor r11d,DWORD PTR[((12+24))+rsp] - cmp r12,rdx - je $L$cbc_ddone - - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - lea r13,QWORD PTR[16+r13] - jmp $L$cbc_dloop - -ALIGN 16 -$L$cbc_ddone:: - mov rdx,QWORD PTR[40+rsp] - cmp rcx,0 - jne $L$cbc_dec_tail - - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov QWORD PTR[rdx],rax - mov QWORD PTR[8+rdx],rbx - jmp $L$cbc_done -ALIGN 16 -$L$cbc_dec_tail:: - mov DWORD PTR[((0+24))+rsp],r8d - mov DWORD PTR[((4+24))+rsp],r9d - mov DWORD PTR[((8+24))+rsp],r10d - mov DWORD PTR[((12+24))+rsp],r11d - -$L$cbc_dec_pushf:: - pushfq - cld - lea rsi,QWORD PTR[((8+24))+rsp] - lea rdi,QWORD PTR[r13] - DD 09066A4F3h - popfq -$L$cbc_dec_popf:: - - mov QWORD PTR[rdx],rax - mov QWORD PTR[8+rdx],rbx - jmp $L$cbc_done - -ALIGN 16 -$L$cbc_done:: - mov rcx,QWORD PTR[48+rsp] - mov r15,QWORD PTR[rcx] - mov r14,QWORD PTR[8+rcx] - mov r13,QWORD PTR[16+rcx] - mov r12,QWORD PTR[24+rcx] - mov rbp,QWORD PTR[32+rcx] - mov rbx,QWORD PTR[40+rcx] - lea rsp,QWORD PTR[48+rcx] -$L$cbc_abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_cbc_encrypt:: -Camellia_cbc_encrypt ENDP - -DB 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -DB 95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112 -DB 101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -common_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - lea rsp,QWORD PTR[((-64))+rsp] - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[40+rax] - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r13,QWORD PTR[((-24))+rax] - mov r14,QWORD PTR[((-32))+rax] - mov r15,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -common_se_handler ENDP - - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - lea rsp,QWORD PTR[((-64))+rsp] - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_prologue] - cmp rbx,r10 - jb $L$in_cbc_prologue - - lea r10,QWORD PTR[$L$cbc_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$cbc_abort] - cmp rbx,r10 - jae $L$in_cbc_prologue - - - lea r10,QWORD PTR[$L$cbc_enc_pushf] - cmp rbx,r10 - jbe $L$in_cbc_no_flag - lea rax,QWORD PTR[8+rax] - lea r10,QWORD PTR[$L$cbc_enc_popf] - cmp rbx,r10 - jb $L$in_cbc_no_flag - lea rax,QWORD PTR[((-8))+rax] - lea r10,QWORD PTR[$L$cbc_dec_pushf] - cmp rbx,r10 - jbe $L$in_cbc_no_flag - lea rax,QWORD PTR[8+rax] - lea r10,QWORD PTR[$L$cbc_dec_popf] - cmp rbx,r10 - jb $L$in_cbc_no_flag - lea rax,QWORD PTR[((-8))+rax] - -$L$in_cbc_no_flag:: - mov rax,QWORD PTR[48+rax] - lea rax,QWORD PTR[48+rax] - -$L$in_cbc_frame_setup:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_cbc_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -ALIGN 4 -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - lea rsp,QWORD PTR[64+rsp] - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_Camellia_EncryptBlock_Rounds - DD imagerel $L$SEH_end_Camellia_EncryptBlock_Rounds - DD imagerel $L$SEH_info_Camellia_EncryptBlock_Rounds - - DD imagerel $L$SEH_begin_Camellia_DecryptBlock_Rounds - DD imagerel $L$SEH_end_Camellia_DecryptBlock_Rounds - DD imagerel $L$SEH_info_Camellia_DecryptBlock_Rounds - - DD imagerel $L$SEH_begin_Camellia_Ekeygen - DD imagerel $L$SEH_end_Camellia_Ekeygen - DD imagerel $L$SEH_info_Camellia_Ekeygen - - DD imagerel $L$SEH_begin_Camellia_cbc_encrypt - DD imagerel $L$SEH_end_Camellia_cbc_encrypt - DD imagerel $L$SEH_info_Camellia_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_Camellia_EncryptBlock_Rounds:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$enc_prologue,imagerel $L$enc_epilogue -$L$SEH_info_Camellia_DecryptBlock_Rounds:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$dec_prologue,imagerel $L$dec_epilogue -$L$SEH_info_Camellia_Ekeygen:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$key_prologue,imagerel $L$key_epilogue -$L$SEH_info_Camellia_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel cbc_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/ec/ecp_nistz256-x86_64.asm b/deps/openssl/asm/x64-win32-masm/ec/ecp_nistz256-x86_64.asm deleted file mode 100644 index da36a1c048642e..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/ec/ecp_nistz256-x86_64.asm +++ /dev/null @@ -1,3802 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - - -ALIGN 64 -$L$poly:: - DQ 0ffffffffffffffffh,000000000ffffffffh,00000000000000000h,0ffffffff00000001h - - -$L$RR:: - DQ 00000000000000003h,0fffffffbffffffffh,0fffffffffffffffeh,000000004fffffffdh - -$L$One:: - DD 1,1,1,1,1,1,1,1 -$L$Two:: - DD 2,2,2,2,2,2,2,2 -$L$Three:: - DD 3,3,3,3,3,3,3,3 -$L$ONE_mont:: - DQ 00000000000000001h,0ffffffff00000000h,0ffffffffffffffffh,000000000fffffffeh - -PUBLIC ecp_nistz256_mul_by_2 - -ALIGN 64 -ecp_nistz256_mul_by_2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_by_2:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - add r8,r8 - mov r10,QWORD PTR[16+rsi] - adc r9,r9 - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - mov rax,r8 - adc r10,r10 - adc r11,r11 - mov rdx,r9 - adc r13,0 - - sub r8,QWORD PTR[rsi] - mov rcx,r10 - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov r12,r11 - sbb r11,QWORD PTR[24+rsi] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_by_2:: -ecp_nistz256_mul_by_2 ENDP - - - -PUBLIC ecp_nistz256_div_by_2 - -ALIGN 32 -ecp_nistz256_div_by_2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_div_by_2:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov rax,r8 - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - mov rdx,r9 - xor r13,r13 - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - adc r13,0 - xor rsi,rsi - test rax,1 - - cmovz r8,rax - cmovz r9,rdx - cmovz r10,rcx - cmovz r11,r12 - cmovz r13,rsi - - mov rax,r9 - shr r8,1 - shl rax,63 - mov rdx,r10 - shr r9,1 - or r8,rax - shl rdx,63 - mov rcx,r11 - shr r10,1 - or r9,rdx - shl rcx,63 - shr r11,1 - shl r13,63 - or r10,rcx - or r11,r13 - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_div_by_2:: -ecp_nistz256_div_by_2 ENDP - - - -PUBLIC ecp_nistz256_mul_by_3 - -ALIGN 32 -ecp_nistz256_mul_by_3 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_by_3:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - add r8,r8 - mov r10,QWORD PTR[16+rsi] - adc r9,r9 - mov r11,QWORD PTR[24+rsi] - mov rax,r8 - adc r10,r10 - adc r11,r11 - mov rdx,r9 - adc r13,0 - - sub r8,-1 - mov rcx,r10 - sbb r9,QWORD PTR[(($L$poly+8))] - sbb r10,0 - mov r12,r11 - sbb r11,QWORD PTR[(($L$poly+24))] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - cmovc r10,rcx - cmovc r11,r12 - - xor r13,r13 - add r8,QWORD PTR[rsi] - adc r9,QWORD PTR[8+rsi] - mov rax,r8 - adc r10,QWORD PTR[16+rsi] - adc r11,QWORD PTR[24+rsi] - mov rdx,r9 - adc r13,0 - - sub r8,-1 - mov rcx,r10 - sbb r9,QWORD PTR[(($L$poly+8))] - sbb r10,0 - mov r12,r11 - sbb r11,QWORD PTR[(($L$poly+24))] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_by_3:: -ecp_nistz256_mul_by_3 ENDP - - - -PUBLIC ecp_nistz256_add - -ALIGN 32 -ecp_nistz256_add PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_add:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - add r8,QWORD PTR[rdx] - adc r9,QWORD PTR[8+rdx] - mov rax,r8 - adc r10,QWORD PTR[16+rdx] - adc r11,QWORD PTR[24+rdx] - mov rdx,r9 - adc r13,0 - - sub r8,QWORD PTR[rsi] - mov rcx,r10 - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov r12,r11 - sbb r11,QWORD PTR[24+rsi] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_add:: -ecp_nistz256_add ENDP - - - -PUBLIC ecp_nistz256_sub - -ALIGN 32 -ecp_nistz256_sub PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_sub:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - sub r8,QWORD PTR[rdx] - sbb r9,QWORD PTR[8+rdx] - mov rax,r8 - sbb r10,QWORD PTR[16+rdx] - sbb r11,QWORD PTR[24+rdx] - mov rdx,r9 - sbb r13,0 - - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - test r13,r13 - - cmovz r8,rax - cmovz r9,rdx - mov QWORD PTR[rdi],r8 - cmovz r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovz r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_sub:: -ecp_nistz256_sub ENDP - - - -PUBLIC ecp_nistz256_neg - -ALIGN 32 -ecp_nistz256_neg PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_neg:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - xor r8,r8 - xor r9,r9 - xor r10,r10 - xor r11,r11 - xor r13,r13 - - sub r8,QWORD PTR[rsi] - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov rax,r8 - sbb r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - mov rdx,r9 - sbb r13,0 - - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - test r13,r13 - - cmovz r8,rax - cmovz r9,rdx - mov QWORD PTR[rdi],r8 - cmovz r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovz r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_neg:: -ecp_nistz256_neg ENDP - - - - -PUBLIC ecp_nistz256_to_mont - -ALIGN 32 -ecp_nistz256_to_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_to_mont:: - mov rdi,rcx - mov rsi,rdx - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] - lea rdx,QWORD PTR[$L$RR] - jmp $L$mul_mont -$L$SEH_end_ecp_nistz256_to_mont:: -ecp_nistz256_to_mont ENDP - - - - - - - -PUBLIC ecp_nistz256_mul_mont - -ALIGN 32 -ecp_nistz256_mul_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] -$L$mul_mont:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - cmp ecx,080100h - je $L$mul_montx - mov rbx,rdx - mov rax,QWORD PTR[rdx] - mov r9,QWORD PTR[rsi] - mov r10,QWORD PTR[8+rsi] - mov r11,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - - call __ecp_nistz256_mul_montq - jmp $L$mul_mont_done - -ALIGN 32 -$L$mul_montx:: - mov rbx,rdx - mov rdx,QWORD PTR[rdx] - mov r9,QWORD PTR[rsi] - mov r10,QWORD PTR[8+rsi] - mov r11,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[((-128))+rsi] - - call __ecp_nistz256_mul_montx -$L$mul_mont_done:: - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_mont:: -ecp_nistz256_mul_mont ENDP - - -ALIGN 32 -__ecp_nistz256_mul_montq PROC PRIVATE - - - mov rbp,rax - mul r9 - mov r14,QWORD PTR[(($L$poly+8))] - mov r8,rax - mov rax,rbp - mov r9,rdx - - mul r10 - mov r15,QWORD PTR[(($L$poly+24))] - add r9,rax - mov rax,rbp - adc rdx,0 - mov r10,rdx - - mul r11 - add r10,rax - mov rax,rbp - adc rdx,0 - mov r11,rdx - - mul r12 - add r11,rax - mov rax,r8 - adc rdx,0 - xor r13,r13 - mov r12,rdx - - - - - - - - - - - mov rbp,r8 - shl r8,32 - mul r15 - shr rbp,32 - add r9,r8 - adc r10,rbp - adc r11,rax - mov rax,QWORD PTR[8+rbx] - adc r12,rdx - adc r13,0 - xor r8,r8 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r9,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r10,rcx - adc rdx,0 - add r10,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r11,rcx - adc rdx,0 - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,r9 - adc r13,rdx - adc r8,0 - - - - mov rbp,r9 - shl r9,32 - mul r15 - shr rbp,32 - add r10,r9 - adc r11,rbp - adc r12,rax - mov rax,QWORD PTR[16+rbx] - adc r13,rdx - adc r8,0 - xor r9,r9 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r10,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r11,rcx - adc rdx,0 - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r13,rcx - adc rdx,0 - add r13,rax - mov rax,r10 - adc r8,rdx - adc r9,0 - - - - mov rbp,r10 - shl r10,32 - mul r15 - shr rbp,32 - add r11,r10 - adc r12,rbp - adc r13,rax - mov rax,QWORD PTR[24+rbx] - adc r8,rdx - adc r9,0 - xor r10,r10 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r13,rcx - adc rdx,0 - add r13,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r8,rcx - adc rdx,0 - add r8,rax - mov rax,r11 - adc r9,rdx - adc r10,0 - - - - mov rbp,r11 - shl r11,32 - mul r15 - shr rbp,32 - add r12,r11 - adc r13,rbp - mov rcx,r12 - adc r8,rax - adc r9,rdx - mov rbp,r13 - adc r10,0 - - - - sub r12,-1 - mov rbx,r8 - sbb r13,r14 - sbb r8,0 - mov rdx,r9 - sbb r9,r15 - sbb r10,0 - - cmovc r12,rcx - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rbx - mov QWORD PTR[8+rdi],r13 - cmovc r9,rdx - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_montq ENDP - - - - - - - - -PUBLIC ecp_nistz256_sqr_mont - -ALIGN 32 -ecp_nistz256_sqr_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_sqr_mont:: - mov rdi,rcx - mov rsi,rdx - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - cmp ecx,080100h - je $L$sqr_montx - mov rax,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r15,QWORD PTR[16+rsi] - mov r8,QWORD PTR[24+rsi] - - call __ecp_nistz256_sqr_montq - jmp $L$sqr_mont_done - -ALIGN 32 -$L$sqr_montx:: - mov rdx,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r15,QWORD PTR[16+rsi] - mov r8,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[((-128))+rsi] - - call __ecp_nistz256_sqr_montx -$L$sqr_mont_done:: - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_sqr_mont:: -ecp_nistz256_sqr_mont ENDP - - -ALIGN 32 -__ecp_nistz256_sqr_montq PROC PRIVATE - mov r13,rax - mul r14 - mov r9,rax - mov rax,r15 - mov r10,rdx - - mul r13 - add r10,rax - mov rax,r8 - adc rdx,0 - mov r11,rdx - - mul r13 - add r11,rax - mov rax,r15 - adc rdx,0 - mov r12,rdx - - - mul r14 - add r11,rax - mov rax,r8 - adc rdx,0 - mov rbp,rdx - - mul r14 - add r12,rax - mov rax,r8 - adc rdx,0 - add r12,rbp - mov r13,rdx - adc r13,0 - - - mul r15 - xor r15,r15 - add r13,rax - mov rax,QWORD PTR[rsi] - mov r14,rdx - adc r14,0 - - add r9,r9 - adc r10,r10 - adc r11,r11 - adc r12,r12 - adc r13,r13 - adc r14,r14 - adc r15,0 - - mul rax - mov r8,rax - mov rax,QWORD PTR[8+rsi] - mov rcx,rdx - - mul rax - add r9,rcx - adc r10,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - mov rcx,rdx - - mul rax - add r11,rcx - adc r12,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - mov rcx,rdx - - mul rax - add r13,rcx - adc r14,rax - mov rax,r8 - adc r15,rdx - - mov rsi,QWORD PTR[(($L$poly+8))] - mov rbp,QWORD PTR[(($L$poly+24))] - - - - - mov rcx,r8 - shl r8,32 - mul rbp - shr rcx,32 - add r9,r8 - adc r10,rcx - adc r11,rax - mov rax,r9 - adc rdx,0 - - - - mov rcx,r9 - shl r9,32 - mov r8,rdx - mul rbp - shr rcx,32 - add r10,r9 - adc r11,rcx - adc r8,rax - mov rax,r10 - adc rdx,0 - - - - mov rcx,r10 - shl r10,32 - mov r9,rdx - mul rbp - shr rcx,32 - add r11,r10 - adc r8,rcx - adc r9,rax - mov rax,r11 - adc rdx,0 - - - - mov rcx,r11 - shl r11,32 - mov r10,rdx - mul rbp - shr rcx,32 - add r8,r11 - adc r9,rcx - adc r10,rax - adc rdx,0 - xor r11,r11 - - - - add r12,r8 - adc r13,r9 - mov r8,r12 - adc r14,r10 - adc r15,rdx - mov r9,r13 - adc r11,0 - - sub r12,-1 - mov r10,r14 - sbb r13,rsi - sbb r14,0 - mov rcx,r15 - sbb r15,rbp - sbb r11,0 - - cmovc r12,r8 - cmovc r13,r9 - mov QWORD PTR[rdi],r12 - cmovc r14,r10 - mov QWORD PTR[8+rdi],r13 - cmovc r15,rcx - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sqr_montq ENDP - -ALIGN 32 -__ecp_nistz256_mul_montx PROC PRIVATE - - - mulx r9,r8,r9 - mulx r10,rcx,r10 - mov r14,32 - xor r13,r13 - mulx r11,rbp,r11 - mov r15,QWORD PTR[(($L$poly+24))] - adc r9,rcx - mulx r12,rcx,r12 - mov rdx,r8 - adc r10,rbp - shlx rbp,r8,r14 - adc r11,rcx - shrx rcx,r8,r14 - adc r12,0 - - - - add r9,rbp - adc r10,rcx - - mulx rbp,rcx,r15 - mov rdx,QWORD PTR[8+rbx] - adc r11,rcx - adc r12,rbp - adc r13,0 - xor r8,r8 - - - - mulx rbp,rcx,QWORD PTR[((0+128))+rsi] - adcx r9,rcx - adox r10,rbp - - mulx rbp,rcx,QWORD PTR[((8+128))+rsi] - adcx r10,rcx - adox r11,rbp - - mulx rbp,rcx,QWORD PTR[((16+128))+rsi] - adcx r11,rcx - adox r12,rbp - - mulx rbp,rcx,QWORD PTR[((24+128))+rsi] - mov rdx,r9 - adcx r12,rcx - shlx rcx,r9,r14 - adox r13,rbp - shrx rbp,r9,r14 - - adcx r13,r8 - adox r8,r8 - adc r8,0 - - - - add r10,rcx - adc r11,rbp - - mulx rbp,rcx,r15 - mov rdx,QWORD PTR[16+rbx] - adc r12,rcx - adc r13,rbp - adc r8,0 - xor r9,r9 - - - - mulx rbp,rcx,QWORD PTR[((0+128))+rsi] - adcx r10,rcx - adox r11,rbp - - mulx rbp,rcx,QWORD PTR[((8+128))+rsi] - adcx r11,rcx - adox r12,rbp - - mulx rbp,rcx,QWORD PTR[((16+128))+rsi] - adcx r12,rcx - adox r13,rbp - - mulx rbp,rcx,QWORD PTR[((24+128))+rsi] - mov rdx,r10 - adcx r13,rcx - shlx rcx,r10,r14 - adox r8,rbp - shrx rbp,r10,r14 - - adcx r8,r9 - adox r9,r9 - adc r9,0 - - - - add r11,rcx - adc r12,rbp - - mulx rbp,rcx,r15 - mov rdx,QWORD PTR[24+rbx] - adc r13,rcx - adc r8,rbp - adc r9,0 - xor r10,r10 - - - - mulx rbp,rcx,QWORD PTR[((0+128))+rsi] - adcx r11,rcx - adox r12,rbp - - mulx rbp,rcx,QWORD PTR[((8+128))+rsi] - adcx r12,rcx - adox r13,rbp - - mulx rbp,rcx,QWORD PTR[((16+128))+rsi] - adcx r13,rcx - adox r8,rbp - - mulx rbp,rcx,QWORD PTR[((24+128))+rsi] - mov rdx,r11 - adcx r8,rcx - shlx rcx,r11,r14 - adox r9,rbp - shrx rbp,r11,r14 - - adcx r9,r10 - adox r10,r10 - adc r10,0 - - - - add r12,rcx - adc r13,rbp - - mulx rbp,rcx,r15 - mov rbx,r12 - mov r14,QWORD PTR[(($L$poly+8))] - adc r8,rcx - mov rdx,r13 - adc r9,rbp - adc r10,0 - - - - xor eax,eax - mov rcx,r8 - sbb r12,-1 - sbb r13,r14 - sbb r8,0 - mov rbp,r9 - sbb r9,r15 - sbb r10,0 - - cmovc r12,rbx - cmovc r13,rdx - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,rbp - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_montx ENDP - - -ALIGN 32 -__ecp_nistz256_sqr_montx PROC PRIVATE - mulx r10,r9,r14 - mulx r11,rcx,r15 - xor eax,eax - adc r10,rcx - mulx r12,rbp,r8 - mov rdx,r14 - adc r11,rbp - adc r12,0 - xor r13,r13 - - - mulx rbp,rcx,r15 - adcx r11,rcx - adox r12,rbp - - mulx rbp,rcx,r8 - mov rdx,r15 - adcx r12,rcx - adox r13,rbp - adc r13,0 - - - mulx r14,rcx,r8 - mov rdx,QWORD PTR[((0+128))+rsi] - xor r15,r15 - adcx r9,r9 - adox r13,rcx - adcx r10,r10 - adox r14,r15 - - mulx rbp,r8,rdx - mov rdx,QWORD PTR[((8+128))+rsi] - adcx r11,r11 - adox r9,rbp - adcx r12,r12 - mulx rax,rcx,rdx - mov rdx,QWORD PTR[((16+128))+rsi] - adcx r13,r13 - adox r10,rcx - adcx r14,r14 -DB 067h - mulx rbp,rcx,rdx - mov rdx,QWORD PTR[((24+128))+rsi] - adox r11,rax - adcx r15,r15 - adox r12,rcx - mov rsi,32 - adox r13,rbp -DB 067h,067h - mulx rax,rcx,rdx - mov rdx,QWORD PTR[(($L$poly+24))] - adox r14,rcx - shlx rcx,r8,rsi - adox r15,rax - shrx rax,r8,rsi - mov rbp,rdx - - - add r9,rcx - adc r10,rax - - mulx r8,rcx,r8 - adc r11,rcx - shlx rcx,r9,rsi - adc r8,0 - shrx rax,r9,rsi - - - add r10,rcx - adc r11,rax - - mulx r9,rcx,r9 - adc r8,rcx - shlx rcx,r10,rsi - adc r9,0 - shrx rax,r10,rsi - - - add r11,rcx - adc r8,rax - - mulx r10,rcx,r10 - adc r9,rcx - shlx rcx,r11,rsi - adc r10,0 - shrx rax,r11,rsi - - - add r8,rcx - adc r9,rax - - mulx r11,rcx,r11 - adc r10,rcx - adc r11,0 - - xor rdx,rdx - add r12,r8 - mov rsi,QWORD PTR[(($L$poly+8))] - adc r13,r9 - mov r8,r12 - adc r14,r10 - adc r15,r11 - mov r9,r13 - adc rdx,0 - - sub r12,-1 - mov r10,r14 - sbb r13,rsi - sbb r14,0 - mov r11,r15 - sbb r15,rbp - sbb rdx,0 - - cmovc r12,r8 - cmovc r13,r9 - mov QWORD PTR[rdi],r12 - cmovc r14,r10 - mov QWORD PTR[8+rdi],r13 - cmovc r15,r11 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sqr_montx ENDP - - - - - - -PUBLIC ecp_nistz256_from_mont - -ALIGN 32 -ecp_nistz256_from_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_from_mont:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov rax,QWORD PTR[rsi] - mov r13,QWORD PTR[(($L$poly+24))] - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - mov r8,rax - mov r12,QWORD PTR[(($L$poly+8))] - - - - mov rcx,rax - shl r8,32 - mul r13 - shr rcx,32 - add r9,r8 - adc r10,rcx - adc r11,rax - mov rax,r9 - adc rdx,0 - - - - mov rcx,r9 - shl r9,32 - mov r8,rdx - mul r13 - shr rcx,32 - add r10,r9 - adc r11,rcx - adc r8,rax - mov rax,r10 - adc rdx,0 - - - - mov rcx,r10 - shl r10,32 - mov r9,rdx - mul r13 - shr rcx,32 - add r11,r10 - adc r8,rcx - adc r9,rax - mov rax,r11 - adc rdx,0 - - - - mov rcx,r11 - shl r11,32 - mov r10,rdx - mul r13 - shr rcx,32 - add r8,r11 - adc r9,rcx - mov rcx,r8 - adc r10,rax - mov rsi,r9 - adc rdx,0 - - - - sub r8,-1 - mov rax,r10 - sbb r9,r12 - sbb r10,0 - mov r11,rdx - sbb rdx,r13 - sbb r13,r13 - - cmovnz r8,rcx - cmovnz r9,rsi - mov QWORD PTR[rdi],r8 - cmovnz r10,rax - mov QWORD PTR[8+rdi],r9 - cmovz r11,rdx - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_from_mont:: -ecp_nistz256_from_mont ENDP - - -PUBLIC ecp_nistz256_select_w5 - -ALIGN 32 -ecp_nistz256_select_w5 PROC PUBLIC - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+8))] - test eax,32 - jnz $L$avx2_select_w5 - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_select_w5:: -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm0,XMMWORD PTR[$L$One] - movd xmm1,r8d - - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - - movdqa xmm8,xmm0 - pshufd xmm1,xmm1,0 - - mov rax,16 -$L$select_loop_sse_w5:: - - movdqa xmm15,xmm8 - paddd xmm8,xmm0 - pcmpeqd xmm15,xmm1 - - movdqa xmm9,XMMWORD PTR[rdx] - movdqa xmm10,XMMWORD PTR[16+rdx] - movdqa xmm11,XMMWORD PTR[32+rdx] - movdqa xmm12,XMMWORD PTR[48+rdx] - movdqa xmm13,XMMWORD PTR[64+rdx] - movdqa xmm14,XMMWORD PTR[80+rdx] - lea rdx,QWORD PTR[96+rdx] - - pand xmm9,xmm15 - pand xmm10,xmm15 - por xmm2,xmm9 - pand xmm11,xmm15 - por xmm3,xmm10 - pand xmm12,xmm15 - por xmm4,xmm11 - pand xmm13,xmm15 - por xmm5,xmm12 - pand xmm14,xmm15 - por xmm6,xmm13 - por xmm7,xmm14 - - dec rax - jnz $L$select_loop_sse_w5 - - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm3 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqu XMMWORD PTR[48+rcx],xmm5 - movdqu XMMWORD PTR[64+rcx],xmm6 - movdqu XMMWORD PTR[80+rcx],xmm7 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_select_w5:: - DB 0F3h,0C3h ;repret -ecp_nistz256_select_w5 ENDP - - - -PUBLIC ecp_nistz256_select_w7 - -ALIGN 32 -ecp_nistz256_select_w7 PROC PUBLIC - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+8))] - test eax,32 - jnz $L$avx2_select_w7 - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_select_w7:: -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm8,XMMWORD PTR[$L$One] - movd xmm1,r8d - - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - - movdqa xmm0,xmm8 - pshufd xmm1,xmm1,0 - mov rax,64 - -$L$select_loop_sse_w7:: - movdqa xmm15,xmm8 - paddd xmm8,xmm0 - movdqa xmm9,XMMWORD PTR[rdx] - movdqa xmm10,XMMWORD PTR[16+rdx] - pcmpeqd xmm15,xmm1 - movdqa xmm11,XMMWORD PTR[32+rdx] - movdqa xmm12,XMMWORD PTR[48+rdx] - lea rdx,QWORD PTR[64+rdx] - - pand xmm9,xmm15 - pand xmm10,xmm15 - por xmm2,xmm9 - pand xmm11,xmm15 - por xmm3,xmm10 - pand xmm12,xmm15 - por xmm4,xmm11 - prefetcht0 [255+rdx] - por xmm5,xmm12 - - dec rax - jnz $L$select_loop_sse_w7 - - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm3 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqu XMMWORD PTR[48+rcx],xmm5 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_select_w7:: - DB 0F3h,0C3h ;repret -ecp_nistz256_select_w7 ENDP - - - -ALIGN 32 -ecp_nistz256_avx2_select_w5 PROC PRIVATE -$L$avx2_select_w5:: - vzeroupper - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_avx2_select_w5:: -DB 048h,08dh,060h,0e0h -DB 0c5h,0f8h,029h,070h,0e0h -DB 0c5h,0f8h,029h,078h,0f0h -DB 0c5h,078h,029h,040h,000h -DB 0c5h,078h,029h,048h,010h -DB 0c5h,078h,029h,050h,020h -DB 0c5h,078h,029h,058h,030h -DB 0c5h,078h,029h,060h,040h -DB 0c5h,078h,029h,068h,050h -DB 0c5h,078h,029h,070h,060h -DB 0c5h,078h,029h,078h,070h - vmovdqa ymm0,YMMWORD PTR[$L$Two] - - vpxor ymm2,ymm2,ymm2 - vpxor ymm3,ymm3,ymm3 - vpxor ymm4,ymm4,ymm4 - - vmovdqa ymm5,YMMWORD PTR[$L$One] - vmovdqa ymm10,YMMWORD PTR[$L$Two] - - vmovd xmm1,r8d - vpermd ymm1,ymm2,ymm1 - - mov rax,8 -$L$select_loop_avx2_w5:: - - vmovdqa ymm6,YMMWORD PTR[rdx] - vmovdqa ymm7,YMMWORD PTR[32+rdx] - vmovdqa ymm8,YMMWORD PTR[64+rdx] - - vmovdqa ymm11,YMMWORD PTR[96+rdx] - vmovdqa ymm12,YMMWORD PTR[128+rdx] - vmovdqa ymm13,YMMWORD PTR[160+rdx] - - vpcmpeqd ymm9,ymm5,ymm1 - vpcmpeqd ymm14,ymm10,ymm1 - - vpaddd ymm5,ymm5,ymm0 - vpaddd ymm10,ymm10,ymm0 - lea rdx,QWORD PTR[192+rdx] - - vpand ymm6,ymm6,ymm9 - vpand ymm7,ymm7,ymm9 - vpand ymm8,ymm8,ymm9 - vpand ymm11,ymm11,ymm14 - vpand ymm12,ymm12,ymm14 - vpand ymm13,ymm13,ymm14 - - vpxor ymm2,ymm2,ymm6 - vpxor ymm3,ymm3,ymm7 - vpxor ymm4,ymm4,ymm8 - vpxor ymm2,ymm2,ymm11 - vpxor ymm3,ymm3,ymm12 - vpxor ymm4,ymm4,ymm13 - - dec rax - jnz $L$select_loop_avx2_w5 - - vmovdqu YMMWORD PTR[rcx],ymm2 - vmovdqu YMMWORD PTR[32+rcx],ymm3 - vmovdqu YMMWORD PTR[64+rcx],ymm4 - vzeroupper - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_avx2_select_w5:: - DB 0F3h,0C3h ;repret -ecp_nistz256_avx2_select_w5 ENDP - - - -PUBLIC ecp_nistz256_avx2_select_w7 - -ALIGN 32 -ecp_nistz256_avx2_select_w7 PROC PUBLIC -$L$avx2_select_w7:: - vzeroupper - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_avx2_select_w7:: -DB 048h,08dh,060h,0e0h -DB 0c5h,0f8h,029h,070h,0e0h -DB 0c5h,0f8h,029h,078h,0f0h -DB 0c5h,078h,029h,040h,000h -DB 0c5h,078h,029h,048h,010h -DB 0c5h,078h,029h,050h,020h -DB 0c5h,078h,029h,058h,030h -DB 0c5h,078h,029h,060h,040h -DB 0c5h,078h,029h,068h,050h -DB 0c5h,078h,029h,070h,060h -DB 0c5h,078h,029h,078h,070h - vmovdqa ymm0,YMMWORD PTR[$L$Three] - - vpxor ymm2,ymm2,ymm2 - vpxor ymm3,ymm3,ymm3 - - vmovdqa ymm4,YMMWORD PTR[$L$One] - vmovdqa ymm8,YMMWORD PTR[$L$Two] - vmovdqa ymm12,YMMWORD PTR[$L$Three] - - vmovd xmm1,r8d - vpermd ymm1,ymm2,ymm1 - - - mov rax,21 -$L$select_loop_avx2_w7:: - - vmovdqa ymm5,YMMWORD PTR[rdx] - vmovdqa ymm6,YMMWORD PTR[32+rdx] - - vmovdqa ymm9,YMMWORD PTR[64+rdx] - vmovdqa ymm10,YMMWORD PTR[96+rdx] - - vmovdqa ymm13,YMMWORD PTR[128+rdx] - vmovdqa ymm14,YMMWORD PTR[160+rdx] - - vpcmpeqd ymm7,ymm4,ymm1 - vpcmpeqd ymm11,ymm8,ymm1 - vpcmpeqd ymm15,ymm12,ymm1 - - vpaddd ymm4,ymm4,ymm0 - vpaddd ymm8,ymm8,ymm0 - vpaddd ymm12,ymm12,ymm0 - lea rdx,QWORD PTR[192+rdx] - - vpand ymm5,ymm5,ymm7 - vpand ymm6,ymm6,ymm7 - vpand ymm9,ymm9,ymm11 - vpand ymm10,ymm10,ymm11 - vpand ymm13,ymm13,ymm15 - vpand ymm14,ymm14,ymm15 - - vpxor ymm2,ymm2,ymm5 - vpxor ymm3,ymm3,ymm6 - vpxor ymm2,ymm2,ymm9 - vpxor ymm3,ymm3,ymm10 - vpxor ymm2,ymm2,ymm13 - vpxor ymm3,ymm3,ymm14 - - dec rax - jnz $L$select_loop_avx2_w7 - - - vmovdqa ymm5,YMMWORD PTR[rdx] - vmovdqa ymm6,YMMWORD PTR[32+rdx] - - vpcmpeqd ymm7,ymm4,ymm1 - - vpand ymm5,ymm5,ymm7 - vpand ymm6,ymm6,ymm7 - - vpxor ymm2,ymm2,ymm5 - vpxor ymm3,ymm3,ymm6 - - vmovdqu YMMWORD PTR[rcx],ymm2 - vmovdqu YMMWORD PTR[32+rcx],ymm3 - vzeroupper - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_avx2_select_w7:: - DB 0F3h,0C3h ;repret -ecp_nistz256_avx2_select_w7 ENDP - -ALIGN 32 -__ecp_nistz256_add_toq PROC PRIVATE - xor r11,r11 - add r12,QWORD PTR[rbx] - adc r13,QWORD PTR[8+rbx] - mov rax,r12 - adc r8,QWORD PTR[16+rbx] - adc r9,QWORD PTR[24+rbx] - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_add_toq ENDP - - -ALIGN 32 -__ecp_nistz256_sub_fromq PROC PRIVATE - sub r12,QWORD PTR[rbx] - sbb r13,QWORD PTR[8+rbx] - mov rax,r12 - sbb r8,QWORD PTR[16+rbx] - sbb r9,QWORD PTR[24+rbx] - mov rbp,r13 - sbb r11,r11 - - add r12,-1 - mov rcx,r8 - adc r13,r14 - adc r8,0 - mov r10,r9 - adc r9,r15 - test r11,r11 - - cmovz r12,rax - cmovz r13,rbp - mov QWORD PTR[rdi],r12 - cmovz r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovz r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sub_fromq ENDP - - -ALIGN 32 -__ecp_nistz256_subq PROC PRIVATE - sub rax,r12 - sbb rbp,r13 - mov r12,rax - sbb rcx,r8 - sbb r10,r9 - mov r13,rbp - sbb r11,r11 - - add rax,-1 - mov r8,rcx - adc rbp,r14 - adc rcx,0 - mov r9,r10 - adc r10,r15 - test r11,r11 - - cmovnz r12,rax - cmovnz r13,rbp - cmovnz r8,rcx - cmovnz r9,r10 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_subq ENDP - - -ALIGN 32 -__ecp_nistz256_mul_by_2q PROC PRIVATE - xor r11,r11 - add r12,r12 - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_by_2q ENDP -PUBLIC ecp_nistz256_point_double - -ALIGN 32 -ecp_nistz256_point_double PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_double:: - mov rdi,rcx - mov rsi,rdx - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp ecx,080100h - je $L$point_doublex - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*5+8 - -$L$point_double_shortcutq:: - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rsi - movdqu xmm1,XMMWORD PTR[16+rsi] - mov r12,QWORD PTR[((32+0))+rsi] - mov r13,QWORD PTR[((32+8))+rsi] - mov r8,QWORD PTR[((32+16))+rsi] - mov r9,QWORD PTR[((32+24))+rsi] - mov r14,QWORD PTR[(($L$poly+8))] - mov r15,QWORD PTR[(($L$poly+24))] - movdqa XMMWORD PTR[96+rsp],xmm0 - movdqa XMMWORD PTR[(96+16)+rsp],xmm1 - lea r10,QWORD PTR[32+rdi] - lea r11,QWORD PTR[64+rdi] -DB 102,72,15,110,199 -DB 102,73,15,110,202 -DB 102,73,15,110,211 - - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_by_2q - - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - lea rsi,QWORD PTR[((64-0))+rsi] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[32+rbx] - mov r9,QWORD PTR[((64+0))+rbx] - mov r10,QWORD PTR[((64+8))+rbx] - mov r11,QWORD PTR[((64+16))+rbx] - mov r12,QWORD PTR[((64+24))+rbx] - lea rsi,QWORD PTR[((64-0))+rbx] - lea rbx,QWORD PTR[32+rbx] -DB 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_toq - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] -DB 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xor r9,r9 - mov rax,r12 - add r12,-1 - mov r10,r13 - adc r13,rsi - mov rcx,r14 - adc r14,0 - mov r8,r15 - adc r15,rbp - adc r9,0 - xor rsi,rsi - test rax,1 - - cmovz r12,rax - cmovz r13,r10 - cmovz r14,rcx - cmovz r15,r8 - cmovz r9,rsi - - mov rax,r13 - shr r12,1 - shl rax,63 - mov r10,r14 - shr r13,1 - or r12,rax - shl r10,63 - mov rcx,r15 - shr r14,1 - or r13,r10 - shl rcx,63 - mov QWORD PTR[rdi],r12 - shr r15,1 - mov QWORD PTR[8+rdi],r13 - shl r9,63 - or r14,rcx - or r15,r9 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - mov rax,QWORD PTR[64+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2q - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_toq - - mov rax,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2q - - mov rax,QWORD PTR[((0+32))+rsp] - mov r14,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r15,QWORD PTR[((16+32))+rsp] - mov r8,QWORD PTR[((24+32))+rsp] -DB 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - lea rbx,QWORD PTR[128+rsp] - mov r8,r14 - mov r9,r15 - mov r14,rsi - mov r15,rbp - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_subq - - mov rax,QWORD PTR[32+rsp] - lea rbx,QWORD PTR[32+rsp] - mov r14,r12 - xor ecx,ecx - mov QWORD PTR[((0+0))+rsp],r12 - mov r10,r13 - mov QWORD PTR[((0+8))+rsp],r13 - cmovz r11,r8 - mov QWORD PTR[((0+16))+rsp],r8 - lea rsi,QWORD PTR[((0-0))+rsp] - cmovz r12,r9 - mov QWORD PTR[((0+24))+rsp],r9 - mov r9,r14 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - -DB 102,72,15,126,203 -DB 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - add rsp,32*5+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_double:: -ecp_nistz256_point_double ENDP -PUBLIC ecp_nistz256_point_add - -ALIGN 32 -ecp_nistz256_point_add PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_add:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp ecx,080100h - je $L$point_addx - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*18+8 - - movdqu xmm0,XMMWORD PTR[rsi] - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rbx,rsi - mov rsi,rdx - movdqa XMMWORD PTR[384+rsp],xmm0 - movdqa XMMWORD PTR[(384+16)+rsp],xmm1 - movdqa XMMWORD PTR[416+rsp],xmm2 - movdqa XMMWORD PTR[(416+16)+rsp],xmm3 - movdqa XMMWORD PTR[448+rsp],xmm4 - movdqa XMMWORD PTR[(448+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rsi] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rsi] - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[480+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(480+16)+rsp],xmm1 - movdqu xmm0,XMMWORD PTR[64+rsi] - movdqu xmm1,XMMWORD PTR[80+rsi] - movdqa XMMWORD PTR[512+rsp],xmm2 - movdqa XMMWORD PTR[(512+16)+rsp],xmm3 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm1,xmm0 -DB 102,72,15,110,199 - - lea rsi,QWORD PTR[((64-0))+rsi] - mov QWORD PTR[((544+0))+rsp],rax - mov QWORD PTR[((544+8))+rsp],r14 - mov QWORD PTR[((544+16))+rsp],r15 - mov QWORD PTR[((544+24))+rsp],r8 - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montq - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm1,0b1h - por xmm4,xmm1 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - por xmm4,xmm3 - pxor xmm3,xmm3 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - mov rax,QWORD PTR[((64+0))+rbx] - mov r14,QWORD PTR[((64+8))+rbx] - mov r15,QWORD PTR[((64+16))+rbx] - mov r8,QWORD PTR[((64+24))+rbx] -DB 102,72,15,110,203 - - lea rsi,QWORD PTR[((64-0))+rbx] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[416+rsp] - lea rbx,QWORD PTR[416+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((0+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[512+rsp] - lea rbx,QWORD PTR[512+rsp] - mov r9,QWORD PTR[((0+256))+rsp] - mov r10,QWORD PTR[((8+256))+rsp] - lea rsi,QWORD PTR[((0+256))+rsp] - mov r11,QWORD PTR[((16+256))+rsp] - mov r12,QWORD PTR[((24+256))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[224+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - or r12,r13 - movdqa xmm2,xmm4 - or r12,r8 - or r12,r9 - por xmm2,xmm5 -DB 102,73,15,110,220 - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[480+rsp] - lea rbx,QWORD PTR[480+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sub_fromq - - or r12,r13 - or r12,r8 - or r12,r9 - -DB 03eh - jnz $L$add_proceedq -DB 102,73,15,126,208 -DB 102,73,15,126,217 - test r8,r8 - jnz $L$add_proceedq - test r9,r9 - jz $L$add_doubleq - -DB 102,72,15,126,199 - pxor xmm0,xmm0 - movdqu XMMWORD PTR[rdi],xmm0 - movdqu XMMWORD PTR[16+rdi],xmm0 - movdqu XMMWORD PTR[32+rdi],xmm0 - movdqu XMMWORD PTR[48+rdi],xmm0 - movdqu XMMWORD PTR[64+rdi],xmm0 - movdqu XMMWORD PTR[80+rdi],xmm0 - jmp $L$add_doneq - -ALIGN 32 -$L$add_doubleq:: -DB 102,72,15,126,206 -DB 102,72,15,126,199 - add rsp,416 - jmp $L$point_double_shortcutq - -ALIGN 32 -$L$add_proceedq:: - mov rax,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+352))+rsp] - mov r10,QWORD PTR[((8+352))+rsp] - lea rsi,QWORD PTR[((0+352))+rsp] - mov r11,QWORD PTR[((16+352))+rsp] - mov r12,QWORD PTR[((24+352))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[rsp] - lea rbx,QWORD PTR[rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[160+rsp] - lea rbx,QWORD PTR[160+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montq - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[96+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subq - - lea rbx,QWORD PTR[128+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((192+0))+rsp] - mov rbp,QWORD PTR[((192+8))+rsp] - mov rcx,QWORD PTR[((192+16))+rsp] - mov r10,QWORD PTR[((192+24))+rsp] - lea rdi,QWORD PTR[320+rsp] - - call __ecp_nistz256_subq - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rax,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((0+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_sub_fromq - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[352+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((352+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[544+rsp] - pand xmm3,XMMWORD PTR[((544+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[480+rsp] - pand xmm3,XMMWORD PTR[((480+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[320+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((320+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[512+rsp] - pand xmm3,XMMWORD PTR[((512+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - -$L$add_doneq:: - add rsp,32*18+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_add:: -ecp_nistz256_point_add ENDP -PUBLIC ecp_nistz256_point_add_affine - -ALIGN 32 -ecp_nistz256_point_add_affine PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_add_affine:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov ecx,080100h - and ecx,DWORD PTR[((OPENSSL_ia32cap_P+8))] - cmp ecx,080100h - je $L$point_add_affinex - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*15+8 - - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rdx - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[320+rsp],xmm0 - movdqa XMMWORD PTR[(320+16)+rsp],xmm1 - movdqa XMMWORD PTR[352+rsp],xmm2 - movdqa XMMWORD PTR[(352+16)+rsp],xmm3 - movdqa XMMWORD PTR[384+rsp],xmm4 - movdqa XMMWORD PTR[(384+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rbx] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rbx] - movdqu xmm2,XMMWORD PTR[32+rbx] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rbx] - movdqa XMMWORD PTR[416+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(416+16)+rsp],xmm1 - por xmm1,xmm0 -DB 102,72,15,110,199 - movdqa XMMWORD PTR[448+rsp],xmm2 - movdqa XMMWORD PTR[(448+16)+rsp],xmm3 - por xmm3,xmm2 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm3,xmm1 - - lea rsi,QWORD PTR[((64-0))+rsi] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm3,0b1h - mov rax,QWORD PTR[rbx] - - mov r9,r12 - por xmm4,xmm3 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - mov r10,r13 - por xmm4,xmm3 - pxor xmm3,xmm3 - mov r11,r14 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - - lea rsi,QWORD PTR[((32-0))+rsp] - mov r12,r15 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[320+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[352+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[((0+96))+rsp] - mov r14,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r15,QWORD PTR[((16+96))+rsp] - mov r8,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+128))+rsp] - mov r10,QWORD PTR[((8+128))+rsp] - lea rsi,QWORD PTR[((0+128))+rsp] - mov r11,QWORD PTR[((16+128))+rsp] - mov r12,QWORD PTR[((24+128))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[192+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subq - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - - call __ecp_nistz256_subq - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rax,QWORD PTR[352+rsp] - lea rbx,QWORD PTR[352+rsp] - mov r9,QWORD PTR[((0+160))+rsp] - mov r10,QWORD PTR[((8+160))+rsp] - lea rsi,QWORD PTR[((0+160))+rsp] - mov r11,QWORD PTR[((16+160))+rsp] - mov r12,QWORD PTR[((24+160))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_sub_fromq - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[$L$ONE_mont] - pand xmm3,XMMWORD PTR[(($L$ONE_mont+16))] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[224+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((224+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[320+rsp] - pand xmm3,XMMWORD PTR[((320+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[256+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((256+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[352+rsp] - pand xmm3,XMMWORD PTR[((352+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - - add rsp,32*15+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_add_affine:: -ecp_nistz256_point_add_affine ENDP - -ALIGN 32 -__ecp_nistz256_add_tox PROC PRIVATE - xor r11,r11 - adc r12,QWORD PTR[rbx] - adc r13,QWORD PTR[8+rbx] - mov rax,r12 - adc r8,QWORD PTR[16+rbx] - adc r9,QWORD PTR[24+rbx] - mov rbp,r13 - adc r11,0 - - xor r10,r10 - sbb r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_add_tox ENDP - - -ALIGN 32 -__ecp_nistz256_sub_fromx PROC PRIVATE - xor r11,r11 - sbb r12,QWORD PTR[rbx] - sbb r13,QWORD PTR[8+rbx] - mov rax,r12 - sbb r8,QWORD PTR[16+rbx] - sbb r9,QWORD PTR[24+rbx] - mov rbp,r13 - sbb r11,0 - - xor r10,r10 - adc r12,-1 - mov rcx,r8 - adc r13,r14 - adc r8,0 - mov r10,r9 - adc r9,r15 - - bt r11,0 - cmovnc r12,rax - cmovnc r13,rbp - mov QWORD PTR[rdi],r12 - cmovnc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovnc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sub_fromx ENDP - - -ALIGN 32 -__ecp_nistz256_subx PROC PRIVATE - xor r11,r11 - sbb rax,r12 - sbb rbp,r13 - mov r12,rax - sbb rcx,r8 - sbb r10,r9 - mov r13,rbp - sbb r11,0 - - xor r9,r9 - adc rax,-1 - mov r8,rcx - adc rbp,r14 - adc rcx,0 - mov r9,r10 - adc r10,r15 - - bt r11,0 - cmovc r12,rax - cmovc r13,rbp - cmovc r8,rcx - cmovc r9,r10 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_subx ENDP - - -ALIGN 32 -__ecp_nistz256_mul_by_2x PROC PRIVATE - xor r11,r11 - adc r12,r12 - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - xor r10,r10 - sbb r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_by_2x ENDP - -ALIGN 32 -ecp_nistz256_point_doublex PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_doublex:: - mov rdi,rcx - mov rsi,rdx - - -$L$point_doublex:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*5+8 - -$L$point_double_shortcutx:: - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rsi - movdqu xmm1,XMMWORD PTR[16+rsi] - mov r12,QWORD PTR[((32+0))+rsi] - mov r13,QWORD PTR[((32+8))+rsi] - mov r8,QWORD PTR[((32+16))+rsi] - mov r9,QWORD PTR[((32+24))+rsi] - mov r14,QWORD PTR[(($L$poly+8))] - mov r15,QWORD PTR[(($L$poly+24))] - movdqa XMMWORD PTR[96+rsp],xmm0 - movdqa XMMWORD PTR[(96+16)+rsp],xmm1 - lea r10,QWORD PTR[32+rdi] - lea r11,QWORD PTR[64+rdi] -DB 102,72,15,110,199 -DB 102,73,15,110,202 -DB 102,73,15,110,211 - - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_by_2x - - mov rdx,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - lea rsi,QWORD PTR[((64-128))+rsi] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((-128+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[32+rbx] - mov r9,QWORD PTR[((64+0))+rbx] - mov r10,QWORD PTR[((64+8))+rbx] - mov r11,QWORD PTR[((64+16))+rbx] - mov r12,QWORD PTR[((64+24))+rbx] - lea rsi,QWORD PTR[((64-128))+rbx] - lea rbx,QWORD PTR[32+rbx] -DB 102,72,15,126,215 - call __ecp_nistz256_mul_montx - call __ecp_nistz256_mul_by_2x - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_tox - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromx - - mov rdx,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((-128+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] -DB 102,72,15,126,207 - call __ecp_nistz256_sqr_montx - xor r9,r9 - mov rax,r12 - add r12,-1 - mov r10,r13 - adc r13,rsi - mov rcx,r14 - adc r14,0 - mov r8,r15 - adc r15,rbp - adc r9,0 - xor rsi,rsi - test rax,1 - - cmovz r12,rax - cmovz r13,r10 - cmovz r14,rcx - cmovz r15,r8 - cmovz r9,rsi - - mov rax,r13 - shr r12,1 - shl rax,63 - mov r10,r14 - shr r13,1 - or r12,rax - shl r10,63 - mov rcx,r15 - shr r14,1 - or r13,r10 - shl rcx,63 - mov QWORD PTR[rdi],r12 - shr r15,1 - mov QWORD PTR[8+rdi],r13 - shl r9,63 - or r14,rcx - or r15,r9 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - mov rdx,QWORD PTR[64+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montx - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2x - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_tox - - mov rdx,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((-128+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montx - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2x - - mov rdx,QWORD PTR[((0+32))+rsp] - mov r14,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r15,QWORD PTR[((16+32))+rsp] - mov r8,QWORD PTR[((24+32))+rsp] -DB 102,72,15,126,199 - call __ecp_nistz256_sqr_montx - - lea rbx,QWORD PTR[128+rsp] - mov r8,r14 - mov r9,r15 - mov r14,rsi - mov r15,rbp - call __ecp_nistz256_sub_fromx - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_subx - - mov rdx,QWORD PTR[32+rsp] - lea rbx,QWORD PTR[32+rsp] - mov r14,r12 - xor ecx,ecx - mov QWORD PTR[((0+0))+rsp],r12 - mov r10,r13 - mov QWORD PTR[((0+8))+rsp],r13 - cmovz r11,r8 - mov QWORD PTR[((0+16))+rsp],r8 - lea rsi,QWORD PTR[((0-128))+rsp] - cmovz r12,r9 - mov QWORD PTR[((0+24))+rsp],r9 - mov r9,r14 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montx - -DB 102,72,15,126,203 -DB 102,72,15,126,207 - call __ecp_nistz256_sub_fromx - - add rsp,32*5+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_doublex:: -ecp_nistz256_point_doublex ENDP - -ALIGN 32 -ecp_nistz256_point_addx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_addx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$point_addx:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*18+8 - - movdqu xmm0,XMMWORD PTR[rsi] - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rbx,rsi - mov rsi,rdx - movdqa XMMWORD PTR[384+rsp],xmm0 - movdqa XMMWORD PTR[(384+16)+rsp],xmm1 - movdqa XMMWORD PTR[416+rsp],xmm2 - movdqa XMMWORD PTR[(416+16)+rsp],xmm3 - movdqa XMMWORD PTR[448+rsp],xmm4 - movdqa XMMWORD PTR[(448+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rsi] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rsi] - mov rdx,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[480+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(480+16)+rsp],xmm1 - movdqu xmm0,XMMWORD PTR[64+rsi] - movdqu xmm1,XMMWORD PTR[80+rsi] - movdqa XMMWORD PTR[512+rsp],xmm2 - movdqa XMMWORD PTR[(512+16)+rsp],xmm3 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm1,xmm0 -DB 102,72,15,110,199 - - lea rsi,QWORD PTR[((64-128))+rsi] - mov QWORD PTR[((544+0))+rsp],rdx - mov QWORD PTR[((544+8))+rsp],r14 - mov QWORD PTR[((544+16))+rsp],r15 - mov QWORD PTR[((544+24))+rsp],r8 - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montx - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm1,0b1h - por xmm4,xmm1 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - por xmm4,xmm3 - pxor xmm3,xmm3 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - mov rdx,QWORD PTR[((64+0))+rbx] - mov r14,QWORD PTR[((64+8))+rbx] - mov r15,QWORD PTR[((64+16))+rbx] - mov r8,QWORD PTR[((64+24))+rbx] -DB 102,72,15,110,203 - - lea rsi,QWORD PTR[((64-128))+rbx] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((-128+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[416+rsp] - lea rbx,QWORD PTR[416+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((-128+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[512+rsp] - lea rbx,QWORD PTR[512+rsp] - mov r9,QWORD PTR[((0+256))+rsp] - mov r10,QWORD PTR[((8+256))+rsp] - lea rsi,QWORD PTR[((-128+256))+rsp] - mov r11,QWORD PTR[((16+256))+rsp] - mov r12,QWORD PTR[((24+256))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[224+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromx - - or r12,r13 - movdqa xmm2,xmm4 - or r12,r8 - or r12,r9 - por xmm2,xmm5 -DB 102,73,15,110,220 - - mov rdx,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((-128+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[480+rsp] - lea rbx,QWORD PTR[480+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sub_fromx - - or r12,r13 - or r12,r8 - or r12,r9 - -DB 03eh - jnz $L$add_proceedx -DB 102,73,15,126,208 -DB 102,73,15,126,217 - test r8,r8 - jnz $L$add_proceedx - test r9,r9 - jz $L$add_doublex - -DB 102,72,15,126,199 - pxor xmm0,xmm0 - movdqu XMMWORD PTR[rdi],xmm0 - movdqu XMMWORD PTR[16+rdi],xmm0 - movdqu XMMWORD PTR[32+rdi],xmm0 - movdqu XMMWORD PTR[48+rdi],xmm0 - movdqu XMMWORD PTR[64+rdi],xmm0 - movdqu XMMWORD PTR[80+rdi],xmm0 - jmp $L$add_donex - -ALIGN 32 -$L$add_doublex:: -DB 102,72,15,126,206 -DB 102,72,15,126,199 - add rsp,416 - jmp $L$point_double_shortcutx - -ALIGN 32 -$L$add_proceedx:: - mov rdx,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((-128+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((-128+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+352))+rsp] - mov r10,QWORD PTR[((8+352))+rsp] - lea rsi,QWORD PTR[((-128+352))+rsp] - mov r11,QWORD PTR[((16+352))+rsp] - mov r12,QWORD PTR[((24+352))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[rsp] - lea rbx,QWORD PTR[rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[160+rsp] - lea rbx,QWORD PTR[160+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montx - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[96+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subx - - lea rbx,QWORD PTR[128+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_sub_fromx - - mov rax,QWORD PTR[((192+0))+rsp] - mov rbp,QWORD PTR[((192+8))+rsp] - mov rcx,QWORD PTR[((192+16))+rsp] - mov r10,QWORD PTR[((192+24))+rsp] - lea rdi,QWORD PTR[320+rsp] - - call __ecp_nistz256_subx - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rdx,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((-128+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_sub_fromx - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[352+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((352+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[544+rsp] - pand xmm3,XMMWORD PTR[((544+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[480+rsp] - pand xmm3,XMMWORD PTR[((480+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[320+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((320+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[512+rsp] - pand xmm3,XMMWORD PTR[((512+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - -$L$add_donex:: - add rsp,32*18+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_addx:: -ecp_nistz256_point_addx ENDP - -ALIGN 32 -ecp_nistz256_point_add_affinex PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_add_affinex:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$point_add_affinex:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*15+8 - - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rdx - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rdx,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[320+rsp],xmm0 - movdqa XMMWORD PTR[(320+16)+rsp],xmm1 - movdqa XMMWORD PTR[352+rsp],xmm2 - movdqa XMMWORD PTR[(352+16)+rsp],xmm3 - movdqa XMMWORD PTR[384+rsp],xmm4 - movdqa XMMWORD PTR[(384+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rbx] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rbx] - movdqu xmm2,XMMWORD PTR[32+rbx] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rbx] - movdqa XMMWORD PTR[416+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(416+16)+rsp],xmm1 - por xmm1,xmm0 -DB 102,72,15,110,199 - movdqa XMMWORD PTR[448+rsp],xmm2 - movdqa XMMWORD PTR[(448+16)+rsp],xmm3 - por xmm3,xmm2 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm3,xmm1 - - lea rsi,QWORD PTR[((64-128))+rsi] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montx - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm3,0b1h - mov rdx,QWORD PTR[rbx] - - mov r9,r12 - por xmm4,xmm3 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - mov r10,r13 - por xmm4,xmm3 - pxor xmm3,xmm3 - mov r11,r14 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - - lea rsi,QWORD PTR[((32-128))+rsp] - mov r12,r15 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[320+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromx - - mov rdx,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((-128+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[352+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sub_fromx - - mov rdx,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[((0+96))+rsp] - mov r14,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((-128+96))+rsp] - mov r15,QWORD PTR[((16+96))+rsp] - mov r8,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_sqr_montx - - mov rdx,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+128))+rsp] - mov r10,QWORD PTR[((8+128))+rsp] - lea rsi,QWORD PTR[((-128+128))+rsp] - mov r11,QWORD PTR[((16+128))+rsp] - mov r12,QWORD PTR[((24+128))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montx - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[192+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subx - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_sub_fromx - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - - call __ecp_nistz256_subx - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rdx,QWORD PTR[352+rsp] - lea rbx,QWORD PTR[352+rsp] - mov r9,QWORD PTR[((0+160))+rsp] - mov r10,QWORD PTR[((8+160))+rsp] - lea rsi,QWORD PTR[((-128+160))+rsp] - mov r11,QWORD PTR[((16+160))+rsp] - mov r12,QWORD PTR[((24+160))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montx - - mov rdx,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((-128+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_mul_montx - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_sub_fromx - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[$L$ONE_mont] - pand xmm3,XMMWORD PTR[(($L$ONE_mont+16))] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[224+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((224+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[320+rsp] - pand xmm3,XMMWORD PTR[((320+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[256+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((256+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[352+rsp] - pand xmm3,XMMWORD PTR[((352+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - - add rsp,32*15+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_add_affinex:: -ecp_nistz256_point_add_affinex ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/md5/md5-x86_64.asm b/deps/openssl/asm/x64-win32-masm/md5/md5-x86_64.asm deleted file mode 100644 index d2faa88e8a5f9d..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/md5/md5-x86_64.asm +++ /dev/null @@ -1,778 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -ALIGN 16 - -PUBLIC md5_block_asm_data_order - -md5_block_asm_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_md5_block_asm_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbp - push rbx - push r12 - push r14 - push r15 -$L$prologue:: - - - - - mov rbp,rdi - shl rdx,6 - lea rdi,QWORD PTR[rdx*1+rsi] - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - - - - - - - - cmp rsi,rdi - je $L$end - - -$L$loop:: - mov r8d,eax - mov r9d,ebx - mov r14d,ecx - mov r15d,edx - mov r10d,DWORD PTR[rsi] - mov r11d,edx - xor r11d,ecx - lea eax,DWORD PTR[((-680876936))+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[4+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-389564586))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[8+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[606105819+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[12+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-1044525330))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[16+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[((-176418897))+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[20+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[1200080426+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[24+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-1473231341))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[28+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-45705983))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[32+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[1770035416+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[36+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-1958414417))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[40+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-42063))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[44+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-1990404162))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[48+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[1804603682+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[52+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-40341101))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[56+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-1502002290))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[60+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[1236535329+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - mov r10d,DWORD PTR[4+rsi] - mov r11d,edx - mov r12d,edx - not r11d - lea eax,DWORD PTR[((-165796510))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[24+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-1069501632))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[44+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[643717713+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-373897302))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[20+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[((-701558691))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[40+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[38016083+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[60+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[((-660478335))+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[16+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-405537848))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[36+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[568446438+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[56+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-1019803690))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[12+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[((-187363961))+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[32+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[1163531501+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[52+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[((-1444681467))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[8+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-51403784))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[28+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[1735328473+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[48+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-1926607734))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - mov r10d,DWORD PTR[20+rsi] - mov r11d,ecx - lea eax,DWORD PTR[((-378558))+r10*1+rax] - mov r10d,DWORD PTR[32+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-2022574463))+r10*1+rdx] - mov r10d,DWORD PTR[44+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[1839030562+r10*1+rcx] - mov r10d,DWORD PTR[56+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-35309556))+r10*1+rbx] - mov r10d,DWORD PTR[4+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[((-1530992060))+r10*1+rax] - mov r10d,DWORD PTR[16+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[1272893353+r10*1+rdx] - mov r10d,DWORD PTR[28+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[((-155497632))+r10*1+rcx] - mov r10d,DWORD PTR[40+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-1094730640))+r10*1+rbx] - mov r10d,DWORD PTR[52+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[681279174+r10*1+rax] - mov r10d,DWORD PTR[rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-358537222))+r10*1+rdx] - mov r10d,DWORD PTR[12+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[((-722521979))+r10*1+rcx] - mov r10d,DWORD PTR[24+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[76029189+r10*1+rbx] - mov r10d,DWORD PTR[36+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[((-640364487))+r10*1+rax] - mov r10d,DWORD PTR[48+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-421815835))+r10*1+rdx] - mov r10d,DWORD PTR[60+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[530742520+r10*1+rcx] - mov r10d,DWORD PTR[8+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-995338651))+r10*1+rbx] - mov r10d,DWORD PTR[rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - mov r10d,DWORD PTR[rsi] - mov r11d,0ffffffffh - xor r11d,edx - lea eax,DWORD PTR[((-198630844))+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[28+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[1126891415+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[56+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1416354905))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[20+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-57434055))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[48+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[1700485571+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[12+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-1894986606))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[40+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1051523))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[4+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-2054922799))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[32+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[1873313359+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[60+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-30611744))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[24+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1560198380))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[52+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[1309151649+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[16+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[((-145523070))+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[44+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-1120210379))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[8+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[718787259+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[36+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-343485551))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - - add eax,r8d - add ebx,r9d - add ecx,r14d - add edx,r15d - - - add rsi,64 - cmp rsi,rdi - jb $L$loop - - -$L$end:: - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r12,QWORD PTR[16+rsp] - mov rbx,QWORD PTR[24+rsp] - mov rbp,QWORD PTR[32+rsp] - add rsp,40 -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_md5_block_asm_data_order:: -md5_block_asm_data_order ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[40+rax] - - mov rbp,QWORD PTR[((-8))+rax] - mov rbx,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r14,QWORD PTR[((-32))+rax] - mov r15,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_md5_block_asm_data_order - DD imagerel $L$SEH_end_md5_block_asm_data_order - DD imagerel $L$SEH_info_md5_block_asm_data_order - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_md5_block_asm_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/modes/aesni-gcm-x86_64.asm b/deps/openssl/asm/x64-win32-masm/modes/aesni-gcm-x86_64.asm deleted file mode 100644 index 6552f7d017f6a4..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/modes/aesni-gcm-x86_64.asm +++ /dev/null @@ -1,948 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - -ALIGN 32 -_aesni_ctr32_ghash_6x PROC PRIVATE - vmovdqu xmm2,XMMWORD PTR[32+r11] - sub rdx,6 - vpxor xmm4,xmm4,xmm4 - vmovdqu xmm15,XMMWORD PTR[((0-128))+rcx] - vpaddb xmm10,xmm1,xmm2 - vpaddb xmm11,xmm10,xmm2 - vpaddb xmm12,xmm11,xmm2 - vpaddb xmm13,xmm12,xmm2 - vpaddb xmm14,xmm13,xmm2 - vpxor xmm9,xmm1,xmm15 - vmovdqu XMMWORD PTR[(16+8)+rsp],xmm4 - jmp $L$oop6x - -ALIGN 32 -$L$oop6x:: - add ebx,100663296 - jc $L$handle_ctr32 - vmovdqu xmm3,XMMWORD PTR[((0-32))+r9] - vpaddb xmm1,xmm14,xmm2 - vpxor xmm10,xmm10,xmm15 - vpxor xmm11,xmm11,xmm15 - -$L$resume_ctr32:: - vmovdqu XMMWORD PTR[r8],xmm1 - vpclmulqdq xmm5,xmm7,xmm3,010h - vpxor xmm12,xmm12,xmm15 - vmovups xmm2,XMMWORD PTR[((16-128))+rcx] - vpclmulqdq xmm6,xmm7,xmm3,001h - xor r12,r12 - cmp r15,r14 - - vaesenc xmm9,xmm9,xmm2 - vmovdqu xmm0,XMMWORD PTR[((48+8))+rsp] - vpxor xmm13,xmm13,xmm15 - vpclmulqdq xmm1,xmm7,xmm3,000h - vaesenc xmm10,xmm10,xmm2 - vpxor xmm14,xmm14,xmm15 - setnc r12b - vpclmulqdq xmm7,xmm7,xmm3,011h - vaesenc xmm11,xmm11,xmm2 - vmovdqu xmm3,XMMWORD PTR[((16-32))+r9] - neg r12 - vaesenc xmm12,xmm12,xmm2 - vpxor xmm6,xmm6,xmm5 - vpclmulqdq xmm5,xmm0,xmm3,000h - vpxor xmm8,xmm8,xmm4 - vaesenc xmm13,xmm13,xmm2 - vpxor xmm4,xmm1,xmm5 - and r12,060h - vmovups xmm15,XMMWORD PTR[((32-128))+rcx] - vpclmulqdq xmm1,xmm0,xmm3,010h - vaesenc xmm14,xmm14,xmm2 - - vpclmulqdq xmm2,xmm0,xmm3,001h - lea r14,QWORD PTR[r12*1+r14] - vaesenc xmm9,xmm9,xmm15 - vpxor xmm8,xmm8,XMMWORD PTR[((16+8))+rsp] - vpclmulqdq xmm3,xmm0,xmm3,011h - vmovdqu xmm0,XMMWORD PTR[((64+8))+rsp] - vaesenc xmm10,xmm10,xmm15 - movbe r13,QWORD PTR[88+r14] - vaesenc xmm11,xmm11,xmm15 - movbe r12,QWORD PTR[80+r14] - vaesenc xmm12,xmm12,xmm15 - mov QWORD PTR[((32+8))+rsp],r13 - vaesenc xmm13,xmm13,xmm15 - mov QWORD PTR[((40+8))+rsp],r12 - vmovdqu xmm5,XMMWORD PTR[((48-32))+r9] - vaesenc xmm14,xmm14,xmm15 - - vmovups xmm15,XMMWORD PTR[((48-128))+rcx] - vpxor xmm6,xmm6,xmm1 - vpclmulqdq xmm1,xmm0,xmm5,000h - vaesenc xmm9,xmm9,xmm15 - vpxor xmm6,xmm6,xmm2 - vpclmulqdq xmm2,xmm0,xmm5,010h - vaesenc xmm10,xmm10,xmm15 - vpxor xmm7,xmm7,xmm3 - vpclmulqdq xmm3,xmm0,xmm5,001h - vaesenc xmm11,xmm11,xmm15 - vpclmulqdq xmm5,xmm0,xmm5,011h - vmovdqu xmm0,XMMWORD PTR[((80+8))+rsp] - vaesenc xmm12,xmm12,xmm15 - vaesenc xmm13,xmm13,xmm15 - vpxor xmm4,xmm4,xmm1 - vmovdqu xmm1,XMMWORD PTR[((64-32))+r9] - vaesenc xmm14,xmm14,xmm15 - - vmovups xmm15,XMMWORD PTR[((64-128))+rcx] - vpxor xmm6,xmm6,xmm2 - vpclmulqdq xmm2,xmm0,xmm1,000h - vaesenc xmm9,xmm9,xmm15 - vpxor xmm6,xmm6,xmm3 - vpclmulqdq xmm3,xmm0,xmm1,010h - vaesenc xmm10,xmm10,xmm15 - movbe r13,QWORD PTR[72+r14] - vpxor xmm7,xmm7,xmm5 - vpclmulqdq xmm5,xmm0,xmm1,001h - vaesenc xmm11,xmm11,xmm15 - movbe r12,QWORD PTR[64+r14] - vpclmulqdq xmm1,xmm0,xmm1,011h - vmovdqu xmm0,XMMWORD PTR[((96+8))+rsp] - vaesenc xmm12,xmm12,xmm15 - mov QWORD PTR[((48+8))+rsp],r13 - vaesenc xmm13,xmm13,xmm15 - mov QWORD PTR[((56+8))+rsp],r12 - vpxor xmm4,xmm4,xmm2 - vmovdqu xmm2,XMMWORD PTR[((96-32))+r9] - vaesenc xmm14,xmm14,xmm15 - - vmovups xmm15,XMMWORD PTR[((80-128))+rcx] - vpxor xmm6,xmm6,xmm3 - vpclmulqdq xmm3,xmm0,xmm2,000h - vaesenc xmm9,xmm9,xmm15 - vpxor xmm6,xmm6,xmm5 - vpclmulqdq xmm5,xmm0,xmm2,010h - vaesenc xmm10,xmm10,xmm15 - movbe r13,QWORD PTR[56+r14] - vpxor xmm7,xmm7,xmm1 - vpclmulqdq xmm1,xmm0,xmm2,001h - vpxor xmm8,xmm8,XMMWORD PTR[((112+8))+rsp] - vaesenc xmm11,xmm11,xmm15 - movbe r12,QWORD PTR[48+r14] - vpclmulqdq xmm2,xmm0,xmm2,011h - vaesenc xmm12,xmm12,xmm15 - mov QWORD PTR[((64+8))+rsp],r13 - vaesenc xmm13,xmm13,xmm15 - mov QWORD PTR[((72+8))+rsp],r12 - vpxor xmm4,xmm4,xmm3 - vmovdqu xmm3,XMMWORD PTR[((112-32))+r9] - vaesenc xmm14,xmm14,xmm15 - - vmovups xmm15,XMMWORD PTR[((96-128))+rcx] - vpxor xmm6,xmm6,xmm5 - vpclmulqdq xmm5,xmm8,xmm3,010h - vaesenc xmm9,xmm9,xmm15 - vpxor xmm6,xmm6,xmm1 - vpclmulqdq xmm1,xmm8,xmm3,001h - vaesenc xmm10,xmm10,xmm15 - movbe r13,QWORD PTR[40+r14] - vpxor xmm7,xmm7,xmm2 - vpclmulqdq xmm2,xmm8,xmm3,000h - vaesenc xmm11,xmm11,xmm15 - movbe r12,QWORD PTR[32+r14] - vpclmulqdq xmm8,xmm8,xmm3,011h - vaesenc xmm12,xmm12,xmm15 - mov QWORD PTR[((80+8))+rsp],r13 - vaesenc xmm13,xmm13,xmm15 - mov QWORD PTR[((88+8))+rsp],r12 - vpxor xmm6,xmm6,xmm5 - vaesenc xmm14,xmm14,xmm15 - vpxor xmm6,xmm6,xmm1 - - vmovups xmm15,XMMWORD PTR[((112-128))+rcx] - vpslldq xmm5,xmm6,8 - vpxor xmm4,xmm4,xmm2 - vmovdqu xmm3,XMMWORD PTR[16+r11] - - vaesenc xmm9,xmm9,xmm15 - vpxor xmm7,xmm7,xmm8 - vaesenc xmm10,xmm10,xmm15 - vpxor xmm4,xmm4,xmm5 - movbe r13,QWORD PTR[24+r14] - vaesenc xmm11,xmm11,xmm15 - movbe r12,QWORD PTR[16+r14] - vpalignr xmm0,xmm4,xmm4,8 - vpclmulqdq xmm4,xmm4,xmm3,010h - mov QWORD PTR[((96+8))+rsp],r13 - vaesenc xmm12,xmm12,xmm15 - mov QWORD PTR[((104+8))+rsp],r12 - vaesenc xmm13,xmm13,xmm15 - vmovups xmm1,XMMWORD PTR[((128-128))+rcx] - vaesenc xmm14,xmm14,xmm15 - - vaesenc xmm9,xmm9,xmm1 - vmovups xmm15,XMMWORD PTR[((144-128))+rcx] - vaesenc xmm10,xmm10,xmm1 - vpsrldq xmm6,xmm6,8 - vaesenc xmm11,xmm11,xmm1 - vpxor xmm7,xmm7,xmm6 - vaesenc xmm12,xmm12,xmm1 - vpxor xmm4,xmm4,xmm0 - movbe r13,QWORD PTR[8+r14] - vaesenc xmm13,xmm13,xmm1 - movbe r12,QWORD PTR[r14] - vaesenc xmm14,xmm14,xmm1 - vmovups xmm1,XMMWORD PTR[((160-128))+rcx] - cmp ebp,11 - jb $L$enc_tail - - vaesenc xmm9,xmm9,xmm15 - vaesenc xmm10,xmm10,xmm15 - vaesenc xmm11,xmm11,xmm15 - vaesenc xmm12,xmm12,xmm15 - vaesenc xmm13,xmm13,xmm15 - vaesenc xmm14,xmm14,xmm15 - - vaesenc xmm9,xmm9,xmm1 - vaesenc xmm10,xmm10,xmm1 - vaesenc xmm11,xmm11,xmm1 - vaesenc xmm12,xmm12,xmm1 - vaesenc xmm13,xmm13,xmm1 - vmovups xmm15,XMMWORD PTR[((176-128))+rcx] - vaesenc xmm14,xmm14,xmm1 - vmovups xmm1,XMMWORD PTR[((192-128))+rcx] - je $L$enc_tail - - vaesenc xmm9,xmm9,xmm15 - vaesenc xmm10,xmm10,xmm15 - vaesenc xmm11,xmm11,xmm15 - vaesenc xmm12,xmm12,xmm15 - vaesenc xmm13,xmm13,xmm15 - vaesenc xmm14,xmm14,xmm15 - - vaesenc xmm9,xmm9,xmm1 - vaesenc xmm10,xmm10,xmm1 - vaesenc xmm11,xmm11,xmm1 - vaesenc xmm12,xmm12,xmm1 - vaesenc xmm13,xmm13,xmm1 - vmovups xmm15,XMMWORD PTR[((208-128))+rcx] - vaesenc xmm14,xmm14,xmm1 - vmovups xmm1,XMMWORD PTR[((224-128))+rcx] - jmp $L$enc_tail - -ALIGN 32 -$L$handle_ctr32:: - vmovdqu xmm0,XMMWORD PTR[r11] - vpshufb xmm6,xmm1,xmm0 - vmovdqu xmm5,XMMWORD PTR[48+r11] - vpaddd xmm10,xmm6,XMMWORD PTR[64+r11] - vpaddd xmm11,xmm6,xmm5 - vmovdqu xmm3,XMMWORD PTR[((0-32))+r9] - vpaddd xmm12,xmm10,xmm5 - vpshufb xmm10,xmm10,xmm0 - vpaddd xmm13,xmm11,xmm5 - vpshufb xmm11,xmm11,xmm0 - vpxor xmm10,xmm10,xmm15 - vpaddd xmm14,xmm12,xmm5 - vpshufb xmm12,xmm12,xmm0 - vpxor xmm11,xmm11,xmm15 - vpaddd xmm1,xmm13,xmm5 - vpshufb xmm13,xmm13,xmm0 - vpshufb xmm14,xmm14,xmm0 - vpshufb xmm1,xmm1,xmm0 - jmp $L$resume_ctr32 - -ALIGN 32 -$L$enc_tail:: - vaesenc xmm9,xmm9,xmm15 - vmovdqu XMMWORD PTR[(16+8)+rsp],xmm7 - vpalignr xmm8,xmm4,xmm4,8 - vaesenc xmm10,xmm10,xmm15 - vpclmulqdq xmm4,xmm4,xmm3,010h - vpxor xmm2,xmm1,XMMWORD PTR[rdi] - vaesenc xmm11,xmm11,xmm15 - vpxor xmm0,xmm1,XMMWORD PTR[16+rdi] - vaesenc xmm12,xmm12,xmm15 - vpxor xmm5,xmm1,XMMWORD PTR[32+rdi] - vaesenc xmm13,xmm13,xmm15 - vpxor xmm6,xmm1,XMMWORD PTR[48+rdi] - vaesenc xmm14,xmm14,xmm15 - vpxor xmm7,xmm1,XMMWORD PTR[64+rdi] - vpxor xmm3,xmm1,XMMWORD PTR[80+rdi] - vmovdqu xmm1,XMMWORD PTR[r8] - - vaesenclast xmm9,xmm9,xmm2 - vmovdqu xmm2,XMMWORD PTR[32+r11] - vaesenclast xmm10,xmm10,xmm0 - vpaddb xmm0,xmm1,xmm2 - mov QWORD PTR[((112+8))+rsp],r13 - lea rdi,QWORD PTR[96+rdi] - vaesenclast xmm11,xmm11,xmm5 - vpaddb xmm5,xmm0,xmm2 - mov QWORD PTR[((120+8))+rsp],r12 - lea rsi,QWORD PTR[96+rsi] - vmovdqu xmm15,XMMWORD PTR[((0-128))+rcx] - vaesenclast xmm12,xmm12,xmm6 - vpaddb xmm6,xmm5,xmm2 - vaesenclast xmm13,xmm13,xmm7 - vpaddb xmm7,xmm6,xmm2 - vaesenclast xmm14,xmm14,xmm3 - vpaddb xmm3,xmm7,xmm2 - - add r10,060h - sub rdx,06h - jc $L$6x_done - - vmovups XMMWORD PTR[(-96)+rsi],xmm9 - vpxor xmm9,xmm1,xmm15 - vmovups XMMWORD PTR[(-80)+rsi],xmm10 - vmovdqa xmm10,xmm0 - vmovups XMMWORD PTR[(-64)+rsi],xmm11 - vmovdqa xmm11,xmm5 - vmovups XMMWORD PTR[(-48)+rsi],xmm12 - vmovdqa xmm12,xmm6 - vmovups XMMWORD PTR[(-32)+rsi],xmm13 - vmovdqa xmm13,xmm7 - vmovups XMMWORD PTR[(-16)+rsi],xmm14 - vmovdqa xmm14,xmm3 - vmovdqu xmm7,XMMWORD PTR[((32+8))+rsp] - jmp $L$oop6x - -$L$6x_done:: - vpxor xmm8,xmm8,XMMWORD PTR[((16+8))+rsp] - vpxor xmm8,xmm8,xmm4 - - DB 0F3h,0C3h ;repret -_aesni_ctr32_ghash_6x ENDP -PUBLIC aesni_gcm_decrypt - -ALIGN 32 -aesni_gcm_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_gcm_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - xor r10,r10 - cmp rdx,060h - jb $L$gcm_dec_abort - - lea rax,QWORD PTR[rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[(-216)+rax],xmm6 - movaps XMMWORD PTR[(-200)+rax],xmm7 - movaps XMMWORD PTR[(-184)+rax],xmm8 - movaps XMMWORD PTR[(-168)+rax],xmm9 - movaps XMMWORD PTR[(-152)+rax],xmm10 - movaps XMMWORD PTR[(-136)+rax],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 -$L$gcm_dec_body:: - vzeroupper - - vmovdqu xmm1,XMMWORD PTR[r8] - add rsp,-128 - mov ebx,DWORD PTR[12+r8] - lea r11,QWORD PTR[$L$bswap_mask] - lea r14,QWORD PTR[((-128))+rcx] - mov r15,0f80h - vmovdqu xmm8,XMMWORD PTR[r9] - and rsp,-128 - vmovdqu xmm0,XMMWORD PTR[r11] - lea rcx,QWORD PTR[128+rcx] - lea r9,QWORD PTR[((32+32))+r9] - mov ebp,DWORD PTR[((240-128))+rcx] - vpshufb xmm8,xmm8,xmm0 - - and r14,r15 - and r15,rsp - sub r15,r14 - jc $L$dec_no_key_aliasing - cmp r15,768 - jnc $L$dec_no_key_aliasing - sub rsp,r15 -$L$dec_no_key_aliasing:: - - vmovdqu xmm7,XMMWORD PTR[80+rdi] - lea r14,QWORD PTR[rdi] - vmovdqu xmm4,XMMWORD PTR[64+rdi] - lea r15,QWORD PTR[((-192))+rdx*1+rdi] - vmovdqu xmm5,XMMWORD PTR[48+rdi] - shr rdx,4 - xor r10,r10 - vmovdqu xmm6,XMMWORD PTR[32+rdi] - vpshufb xmm7,xmm7,xmm0 - vmovdqu xmm2,XMMWORD PTR[16+rdi] - vpshufb xmm4,xmm4,xmm0 - vmovdqu xmm3,XMMWORD PTR[rdi] - vpshufb xmm5,xmm5,xmm0 - vmovdqu XMMWORD PTR[48+rsp],xmm4 - vpshufb xmm6,xmm6,xmm0 - vmovdqu XMMWORD PTR[64+rsp],xmm5 - vpshufb xmm2,xmm2,xmm0 - vmovdqu XMMWORD PTR[80+rsp],xmm6 - vpshufb xmm3,xmm3,xmm0 - vmovdqu XMMWORD PTR[96+rsp],xmm2 - vmovdqu XMMWORD PTR[112+rsp],xmm3 - - call _aesni_ctr32_ghash_6x - - vmovups XMMWORD PTR[(-96)+rsi],xmm9 - vmovups XMMWORD PTR[(-80)+rsi],xmm10 - vmovups XMMWORD PTR[(-64)+rsi],xmm11 - vmovups XMMWORD PTR[(-48)+rsi],xmm12 - vmovups XMMWORD PTR[(-32)+rsi],xmm13 - vmovups XMMWORD PTR[(-16)+rsi],xmm14 - - vpshufb xmm8,xmm8,XMMWORD PTR[r11] - vmovdqu XMMWORD PTR[(-64)+r9],xmm8 - - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$gcm_dec_abort:: - mov rax,r10 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_gcm_decrypt:: -aesni_gcm_decrypt ENDP - -ALIGN 32 -_aesni_ctr32_6x PROC PRIVATE - vmovdqu xmm4,XMMWORD PTR[((0-128))+rcx] - vmovdqu xmm2,XMMWORD PTR[32+r11] - lea r13,QWORD PTR[((-1))+rbp] - vmovups xmm15,XMMWORD PTR[((16-128))+rcx] - lea r12,QWORD PTR[((32-128))+rcx] - vpxor xmm9,xmm1,xmm4 - add ebx,100663296 - jc $L$handle_ctr32_2 - vpaddb xmm10,xmm1,xmm2 - vpaddb xmm11,xmm10,xmm2 - vpxor xmm10,xmm10,xmm4 - vpaddb xmm12,xmm11,xmm2 - vpxor xmm11,xmm11,xmm4 - vpaddb xmm13,xmm12,xmm2 - vpxor xmm12,xmm12,xmm4 - vpaddb xmm14,xmm13,xmm2 - vpxor xmm13,xmm13,xmm4 - vpaddb xmm1,xmm14,xmm2 - vpxor xmm14,xmm14,xmm4 - jmp $L$oop_ctr32 - -ALIGN 16 -$L$oop_ctr32:: - vaesenc xmm9,xmm9,xmm15 - vaesenc xmm10,xmm10,xmm15 - vaesenc xmm11,xmm11,xmm15 - vaesenc xmm12,xmm12,xmm15 - vaesenc xmm13,xmm13,xmm15 - vaesenc xmm14,xmm14,xmm15 - vmovups xmm15,XMMWORD PTR[r12] - lea r12,QWORD PTR[16+r12] - dec r13d - jnz $L$oop_ctr32 - - vmovdqu xmm3,XMMWORD PTR[r12] - vaesenc xmm9,xmm9,xmm15 - vpxor xmm4,xmm3,XMMWORD PTR[rdi] - vaesenc xmm10,xmm10,xmm15 - vpxor xmm5,xmm3,XMMWORD PTR[16+rdi] - vaesenc xmm11,xmm11,xmm15 - vpxor xmm6,xmm3,XMMWORD PTR[32+rdi] - vaesenc xmm12,xmm12,xmm15 - vpxor xmm8,xmm3,XMMWORD PTR[48+rdi] - vaesenc xmm13,xmm13,xmm15 - vpxor xmm2,xmm3,XMMWORD PTR[64+rdi] - vaesenc xmm14,xmm14,xmm15 - vpxor xmm3,xmm3,XMMWORD PTR[80+rdi] - lea rdi,QWORD PTR[96+rdi] - - vaesenclast xmm9,xmm9,xmm4 - vaesenclast xmm10,xmm10,xmm5 - vaesenclast xmm11,xmm11,xmm6 - vaesenclast xmm12,xmm12,xmm8 - vaesenclast xmm13,xmm13,xmm2 - vaesenclast xmm14,xmm14,xmm3 - vmovups XMMWORD PTR[rsi],xmm9 - vmovups XMMWORD PTR[16+rsi],xmm10 - vmovups XMMWORD PTR[32+rsi],xmm11 - vmovups XMMWORD PTR[48+rsi],xmm12 - vmovups XMMWORD PTR[64+rsi],xmm13 - vmovups XMMWORD PTR[80+rsi],xmm14 - lea rsi,QWORD PTR[96+rsi] - - DB 0F3h,0C3h ;repret -ALIGN 32 -$L$handle_ctr32_2:: - vpshufb xmm6,xmm1,xmm0 - vmovdqu xmm5,XMMWORD PTR[48+r11] - vpaddd xmm10,xmm6,XMMWORD PTR[64+r11] - vpaddd xmm11,xmm6,xmm5 - vpaddd xmm12,xmm10,xmm5 - vpshufb xmm10,xmm10,xmm0 - vpaddd xmm13,xmm11,xmm5 - vpshufb xmm11,xmm11,xmm0 - vpxor xmm10,xmm10,xmm4 - vpaddd xmm14,xmm12,xmm5 - vpshufb xmm12,xmm12,xmm0 - vpxor xmm11,xmm11,xmm4 - vpaddd xmm1,xmm13,xmm5 - vpshufb xmm13,xmm13,xmm0 - vpxor xmm12,xmm12,xmm4 - vpshufb xmm14,xmm14,xmm0 - vpxor xmm13,xmm13,xmm4 - vpshufb xmm1,xmm1,xmm0 - vpxor xmm14,xmm14,xmm4 - jmp $L$oop_ctr32 -_aesni_ctr32_6x ENDP - -PUBLIC aesni_gcm_encrypt - -ALIGN 32 -aesni_gcm_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_gcm_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - xor r10,r10 - cmp rdx,060h*3 - jb $L$gcm_enc_abort - - lea rax,QWORD PTR[rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[(-216)+rax],xmm6 - movaps XMMWORD PTR[(-200)+rax],xmm7 - movaps XMMWORD PTR[(-184)+rax],xmm8 - movaps XMMWORD PTR[(-168)+rax],xmm9 - movaps XMMWORD PTR[(-152)+rax],xmm10 - movaps XMMWORD PTR[(-136)+rax],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 -$L$gcm_enc_body:: - vzeroupper - - vmovdqu xmm1,XMMWORD PTR[r8] - add rsp,-128 - mov ebx,DWORD PTR[12+r8] - lea r11,QWORD PTR[$L$bswap_mask] - lea r14,QWORD PTR[((-128))+rcx] - mov r15,0f80h - lea rcx,QWORD PTR[128+rcx] - vmovdqu xmm0,XMMWORD PTR[r11] - and rsp,-128 - mov ebp,DWORD PTR[((240-128))+rcx] - - and r14,r15 - and r15,rsp - sub r15,r14 - jc $L$enc_no_key_aliasing - cmp r15,768 - jnc $L$enc_no_key_aliasing - sub rsp,r15 -$L$enc_no_key_aliasing:: - - lea r14,QWORD PTR[rsi] - lea r15,QWORD PTR[((-192))+rdx*1+rsi] - shr rdx,4 - - call _aesni_ctr32_6x - vpshufb xmm8,xmm9,xmm0 - vpshufb xmm2,xmm10,xmm0 - vmovdqu XMMWORD PTR[112+rsp],xmm8 - vpshufb xmm4,xmm11,xmm0 - vmovdqu XMMWORD PTR[96+rsp],xmm2 - vpshufb xmm5,xmm12,xmm0 - vmovdqu XMMWORD PTR[80+rsp],xmm4 - vpshufb xmm6,xmm13,xmm0 - vmovdqu XMMWORD PTR[64+rsp],xmm5 - vpshufb xmm7,xmm14,xmm0 - vmovdqu XMMWORD PTR[48+rsp],xmm6 - - call _aesni_ctr32_6x - - vmovdqu xmm8,XMMWORD PTR[r9] - lea r9,QWORD PTR[((32+32))+r9] - sub rdx,12 - mov r10,060h*2 - vpshufb xmm8,xmm8,xmm0 - - call _aesni_ctr32_ghash_6x - vmovdqu xmm7,XMMWORD PTR[32+rsp] - vmovdqu xmm0,XMMWORD PTR[r11] - vmovdqu xmm3,XMMWORD PTR[((0-32))+r9] - vpunpckhqdq xmm1,xmm7,xmm7 - vmovdqu xmm15,XMMWORD PTR[((32-32))+r9] - vmovups XMMWORD PTR[(-96)+rsi],xmm9 - vpshufb xmm9,xmm9,xmm0 - vpxor xmm1,xmm1,xmm7 - vmovups XMMWORD PTR[(-80)+rsi],xmm10 - vpshufb xmm10,xmm10,xmm0 - vmovups XMMWORD PTR[(-64)+rsi],xmm11 - vpshufb xmm11,xmm11,xmm0 - vmovups XMMWORD PTR[(-48)+rsi],xmm12 - vpshufb xmm12,xmm12,xmm0 - vmovups XMMWORD PTR[(-32)+rsi],xmm13 - vpshufb xmm13,xmm13,xmm0 - vmovups XMMWORD PTR[(-16)+rsi],xmm14 - vpshufb xmm14,xmm14,xmm0 - vmovdqu XMMWORD PTR[16+rsp],xmm9 - vmovdqu xmm6,XMMWORD PTR[48+rsp] - vmovdqu xmm0,XMMWORD PTR[((16-32))+r9] - vpunpckhqdq xmm2,xmm6,xmm6 - vpclmulqdq xmm5,xmm7,xmm3,000h - vpxor xmm2,xmm2,xmm6 - vpclmulqdq xmm7,xmm7,xmm3,011h - vpclmulqdq xmm1,xmm1,xmm15,000h - - vmovdqu xmm9,XMMWORD PTR[64+rsp] - vpclmulqdq xmm4,xmm6,xmm0,000h - vmovdqu xmm3,XMMWORD PTR[((48-32))+r9] - vpxor xmm4,xmm4,xmm5 - vpunpckhqdq xmm5,xmm9,xmm9 - vpclmulqdq xmm6,xmm6,xmm0,011h - vpxor xmm5,xmm5,xmm9 - vpxor xmm6,xmm6,xmm7 - vpclmulqdq xmm2,xmm2,xmm15,010h - vmovdqu xmm15,XMMWORD PTR[((80-32))+r9] - vpxor xmm2,xmm2,xmm1 - - vmovdqu xmm1,XMMWORD PTR[80+rsp] - vpclmulqdq xmm7,xmm9,xmm3,000h - vmovdqu xmm0,XMMWORD PTR[((64-32))+r9] - vpxor xmm7,xmm7,xmm4 - vpunpckhqdq xmm4,xmm1,xmm1 - vpclmulqdq xmm9,xmm9,xmm3,011h - vpxor xmm4,xmm4,xmm1 - vpxor xmm9,xmm9,xmm6 - vpclmulqdq xmm5,xmm5,xmm15,000h - vpxor xmm5,xmm5,xmm2 - - vmovdqu xmm2,XMMWORD PTR[96+rsp] - vpclmulqdq xmm6,xmm1,xmm0,000h - vmovdqu xmm3,XMMWORD PTR[((96-32))+r9] - vpxor xmm6,xmm6,xmm7 - vpunpckhqdq xmm7,xmm2,xmm2 - vpclmulqdq xmm1,xmm1,xmm0,011h - vpxor xmm7,xmm7,xmm2 - vpxor xmm1,xmm1,xmm9 - vpclmulqdq xmm4,xmm4,xmm15,010h - vmovdqu xmm15,XMMWORD PTR[((128-32))+r9] - vpxor xmm4,xmm4,xmm5 - - vpxor xmm8,xmm8,XMMWORD PTR[112+rsp] - vpclmulqdq xmm5,xmm2,xmm3,000h - vmovdqu xmm0,XMMWORD PTR[((112-32))+r9] - vpunpckhqdq xmm9,xmm8,xmm8 - vpxor xmm5,xmm5,xmm6 - vpclmulqdq xmm2,xmm2,xmm3,011h - vpxor xmm9,xmm9,xmm8 - vpxor xmm2,xmm2,xmm1 - vpclmulqdq xmm7,xmm7,xmm15,000h - vpxor xmm4,xmm7,xmm4 - - vpclmulqdq xmm6,xmm8,xmm0,000h - vmovdqu xmm3,XMMWORD PTR[((0-32))+r9] - vpunpckhqdq xmm1,xmm14,xmm14 - vpclmulqdq xmm8,xmm8,xmm0,011h - vpxor xmm1,xmm1,xmm14 - vpxor xmm5,xmm6,xmm5 - vpclmulqdq xmm9,xmm9,xmm15,010h - vmovdqu xmm15,XMMWORD PTR[((32-32))+r9] - vpxor xmm7,xmm8,xmm2 - vpxor xmm6,xmm9,xmm4 - - vmovdqu xmm0,XMMWORD PTR[((16-32))+r9] - vpxor xmm9,xmm7,xmm5 - vpclmulqdq xmm4,xmm14,xmm3,000h - vpxor xmm6,xmm6,xmm9 - vpunpckhqdq xmm2,xmm13,xmm13 - vpclmulqdq xmm14,xmm14,xmm3,011h - vpxor xmm2,xmm2,xmm13 - vpslldq xmm9,xmm6,8 - vpclmulqdq xmm1,xmm1,xmm15,000h - vpxor xmm8,xmm5,xmm9 - vpsrldq xmm6,xmm6,8 - vpxor xmm7,xmm7,xmm6 - - vpclmulqdq xmm5,xmm13,xmm0,000h - vmovdqu xmm3,XMMWORD PTR[((48-32))+r9] - vpxor xmm5,xmm5,xmm4 - vpunpckhqdq xmm9,xmm12,xmm12 - vpclmulqdq xmm13,xmm13,xmm0,011h - vpxor xmm9,xmm9,xmm12 - vpxor xmm13,xmm13,xmm14 - vpalignr xmm14,xmm8,xmm8,8 - vpclmulqdq xmm2,xmm2,xmm15,010h - vmovdqu xmm15,XMMWORD PTR[((80-32))+r9] - vpxor xmm2,xmm2,xmm1 - - vpclmulqdq xmm4,xmm12,xmm3,000h - vmovdqu xmm0,XMMWORD PTR[((64-32))+r9] - vpxor xmm4,xmm4,xmm5 - vpunpckhqdq xmm1,xmm11,xmm11 - vpclmulqdq xmm12,xmm12,xmm3,011h - vpxor xmm1,xmm1,xmm11 - vpxor xmm12,xmm12,xmm13 - vxorps xmm7,xmm7,XMMWORD PTR[16+rsp] - vpclmulqdq xmm9,xmm9,xmm15,000h - vpxor xmm9,xmm9,xmm2 - - vpclmulqdq xmm8,xmm8,XMMWORD PTR[16+r11],010h - vxorps xmm8,xmm8,xmm14 - - vpclmulqdq xmm5,xmm11,xmm0,000h - vmovdqu xmm3,XMMWORD PTR[((96-32))+r9] - vpxor xmm5,xmm5,xmm4 - vpunpckhqdq xmm2,xmm10,xmm10 - vpclmulqdq xmm11,xmm11,xmm0,011h - vpxor xmm2,xmm2,xmm10 - vpalignr xmm14,xmm8,xmm8,8 - vpxor xmm11,xmm11,xmm12 - vpclmulqdq xmm1,xmm1,xmm15,010h - vmovdqu xmm15,XMMWORD PTR[((128-32))+r9] - vpxor xmm1,xmm1,xmm9 - - vxorps xmm14,xmm14,xmm7 - vpclmulqdq xmm8,xmm8,XMMWORD PTR[16+r11],010h - vxorps xmm8,xmm8,xmm14 - - vpclmulqdq xmm4,xmm10,xmm3,000h - vmovdqu xmm0,XMMWORD PTR[((112-32))+r9] - vpxor xmm4,xmm4,xmm5 - vpunpckhqdq xmm9,xmm8,xmm8 - vpclmulqdq xmm10,xmm10,xmm3,011h - vpxor xmm9,xmm9,xmm8 - vpxor xmm10,xmm10,xmm11 - vpclmulqdq xmm2,xmm2,xmm15,000h - vpxor xmm2,xmm2,xmm1 - - vpclmulqdq xmm5,xmm8,xmm0,000h - vpclmulqdq xmm7,xmm8,xmm0,011h - vpxor xmm5,xmm5,xmm4 - vpclmulqdq xmm6,xmm9,xmm15,010h - vpxor xmm7,xmm7,xmm10 - vpxor xmm6,xmm6,xmm2 - - vpxor xmm4,xmm7,xmm5 - vpxor xmm6,xmm6,xmm4 - vpslldq xmm1,xmm6,8 - vmovdqu xmm3,XMMWORD PTR[16+r11] - vpsrldq xmm6,xmm6,8 - vpxor xmm8,xmm5,xmm1 - vpxor xmm7,xmm7,xmm6 - - vpalignr xmm2,xmm8,xmm8,8 - vpclmulqdq xmm8,xmm8,xmm3,010h - vpxor xmm8,xmm8,xmm2 - - vpalignr xmm2,xmm8,xmm8,8 - vpclmulqdq xmm8,xmm8,xmm3,010h - vpxor xmm2,xmm2,xmm7 - vpxor xmm8,xmm8,xmm2 - vpshufb xmm8,xmm8,XMMWORD PTR[r11] - vmovdqu XMMWORD PTR[(-64)+r9],xmm8 - - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$gcm_enc_abort:: - mov rax,r10 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_gcm_encrypt:: -aesni_gcm_encrypt ENDP -ALIGN 64 -$L$bswap_mask:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -$L$poly:: -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0c2h -$L$one_msb:: -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -$L$two_lsb:: -DB 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -$L$one_lsb:: -DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -DB 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108 -DB 101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82 -DB 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -DB 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -gcm_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[120+r8] - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - mov QWORD PTR[240+r8],r15 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[144+r8],rbx - - lea rsi,QWORD PTR[((-216))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -gcm_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_gcm_decrypt - DD imagerel $L$SEH_end_aesni_gcm_decrypt - DD imagerel $L$SEH_gcm_dec_info - - DD imagerel $L$SEH_begin_aesni_gcm_encrypt - DD imagerel $L$SEH_end_aesni_gcm_encrypt - DD imagerel $L$SEH_gcm_enc_info -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_gcm_dec_info:: -DB 9,0,0,0 - DD imagerel gcm_se_handler - DD imagerel $L$gcm_dec_body,imagerel $L$gcm_dec_abort -$L$SEH_gcm_enc_info:: -DB 9,0,0,0 - DD imagerel gcm_se_handler - DD imagerel $L$gcm_enc_body,imagerel $L$gcm_enc_abort - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/modes/ghash-x86_64.asm b/deps/openssl/asm/x64-win32-masm/modes/ghash-x86_64.asm deleted file mode 100644 index fd6300dc985a44..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/modes/ghash-x86_64.asm +++ /dev/null @@ -1,2021 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC gcm_gmult_4bit - -ALIGN 16 -gcm_gmult_4bit PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_gcm_gmult_4bit:: - mov rdi,rcx - mov rsi,rdx - - - push rbx - push rbp - push r12 -$L$gmult_prologue:: - - movzx r8,BYTE PTR[15+rdi] - lea r11,QWORD PTR[$L$rem_4bit] - xor rax,rax - xor rbx,rbx - mov al,r8b - mov bl,r8b - shl al,4 - mov rcx,14 - mov r8,QWORD PTR[8+rax*1+rsi] - mov r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - mov rdx,r8 - jmp $L$oop1 - -ALIGN 16 -$L$oop1:: - shr r8,4 - and rdx,0fh - mov r10,r9 - mov al,BYTE PTR[rcx*1+rdi] - shr r9,4 - xor r8,QWORD PTR[8+rbx*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rbx*1+rsi] - mov bl,al - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - shl al,4 - xor r8,r10 - dec rcx - js $L$break1 - - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rax*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - xor r8,r10 - jmp $L$oop1 - -ALIGN 16 -$L$break1:: - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rax*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - xor r8,r10 - - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rbx*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rbx*1+rsi] - xor r8,r10 - xor r9,QWORD PTR[rdx*8+r11] - - bswap r8 - bswap r9 - mov QWORD PTR[8+rdi],r8 - mov QWORD PTR[rdi],r9 - - mov rbx,QWORD PTR[16+rsp] - lea rsp,QWORD PTR[24+rsp] -$L$gmult_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_gcm_gmult_4bit:: -gcm_gmult_4bit ENDP -PUBLIC gcm_ghash_4bit - -ALIGN 16 -gcm_ghash_4bit PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_gcm_ghash_4bit:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,280 -$L$ghash_prologue:: - mov r14,rdx - mov r15,rcx - sub rsi,-128 - lea rbp,QWORD PTR[((16+128))+rsp] - xor edx,edx - mov r8,QWORD PTR[((0+0-128))+rsi] - mov rax,QWORD PTR[((0+8-128))+rsi] - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov r9,QWORD PTR[((16+0-128))+rsi] - shl dl,4 - mov rbx,QWORD PTR[((16+8-128))+rsi] - shl r10,60 - mov BYTE PTR[rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[rbp],r8 - mov r8,QWORD PTR[((32+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((0-128))+rbp],rax - mov rax,QWORD PTR[((32+8-128))+rsi] - shl r10,60 - mov BYTE PTR[1+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[8+rbp],r9 - mov r9,QWORD PTR[((48+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((8-128))+rbp],rbx - mov rbx,QWORD PTR[((48+8-128))+rsi] - shl r10,60 - mov BYTE PTR[2+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[16+rbp],r8 - mov r8,QWORD PTR[((64+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((16-128))+rbp],rax - mov rax,QWORD PTR[((64+8-128))+rsi] - shl r10,60 - mov BYTE PTR[3+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[24+rbp],r9 - mov r9,QWORD PTR[((80+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((24-128))+rbp],rbx - mov rbx,QWORD PTR[((80+8-128))+rsi] - shl r10,60 - mov BYTE PTR[4+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[32+rbp],r8 - mov r8,QWORD PTR[((96+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((32-128))+rbp],rax - mov rax,QWORD PTR[((96+8-128))+rsi] - shl r10,60 - mov BYTE PTR[5+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[40+rbp],r9 - mov r9,QWORD PTR[((112+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((40-128))+rbp],rbx - mov rbx,QWORD PTR[((112+8-128))+rsi] - shl r10,60 - mov BYTE PTR[6+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[48+rbp],r8 - mov r8,QWORD PTR[((128+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((48-128))+rbp],rax - mov rax,QWORD PTR[((128+8-128))+rsi] - shl r10,60 - mov BYTE PTR[7+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[56+rbp],r9 - mov r9,QWORD PTR[((144+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((56-128))+rbp],rbx - mov rbx,QWORD PTR[((144+8-128))+rsi] - shl r10,60 - mov BYTE PTR[8+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[64+rbp],r8 - mov r8,QWORD PTR[((160+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((64-128))+rbp],rax - mov rax,QWORD PTR[((160+8-128))+rsi] - shl r10,60 - mov BYTE PTR[9+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[72+rbp],r9 - mov r9,QWORD PTR[((176+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((72-128))+rbp],rbx - mov rbx,QWORD PTR[((176+8-128))+rsi] - shl r10,60 - mov BYTE PTR[10+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[80+rbp],r8 - mov r8,QWORD PTR[((192+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((80-128))+rbp],rax - mov rax,QWORD PTR[((192+8-128))+rsi] - shl r10,60 - mov BYTE PTR[11+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[88+rbp],r9 - mov r9,QWORD PTR[((208+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((88-128))+rbp],rbx - mov rbx,QWORD PTR[((208+8-128))+rsi] - shl r10,60 - mov BYTE PTR[12+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[96+rbp],r8 - mov r8,QWORD PTR[((224+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((96-128))+rbp],rax - mov rax,QWORD PTR[((224+8-128))+rsi] - shl r10,60 - mov BYTE PTR[13+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[104+rbp],r9 - mov r9,QWORD PTR[((240+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((104-128))+rbp],rbx - mov rbx,QWORD PTR[((240+8-128))+rsi] - shl r10,60 - mov BYTE PTR[14+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[112+rbp],r8 - shl dl,4 - mov QWORD PTR[((112-128))+rbp],rax - shl r10,60 - mov BYTE PTR[15+rsp],dl - or rbx,r10 - mov QWORD PTR[120+rbp],r9 - mov QWORD PTR[((120-128))+rbp],rbx - add rsi,-128 - mov r8,QWORD PTR[8+rdi] - mov r9,QWORD PTR[rdi] - add r15,r14 - lea r11,QWORD PTR[$L$rem_8bit] - jmp $L$outer_loop -ALIGN 16 -$L$outer_loop:: - xor r9,QWORD PTR[r14] - mov rdx,QWORD PTR[8+r14] - lea r14,QWORD PTR[16+r14] - xor rdx,r8 - mov QWORD PTR[rdi],r9 - mov QWORD PTR[8+rdi],rdx - shr rdx,32 - xor rax,rax - rol edx,8 - mov al,dl - movzx ebx,dl - shl al,4 - shr ebx,4 - rol edx,8 - mov r8,QWORD PTR[8+rax*1+rsi] - mov r9,QWORD PTR[rax*1+rsi] - mov al,dl - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - xor r12,r8 - mov r10,r9 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[8+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[4+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - and ecx,240 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[((-4))+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - movzx r12,WORD PTR[r12*2+r11] - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - shl r12,48 - xor r8,r10 - xor r9,r12 - movzx r13,r8b - shr r8,4 - mov r10,r9 - shl r13b,4 - shr r9,4 - xor r8,QWORD PTR[8+rcx*1+rsi] - movzx r13,WORD PTR[r13*2+r11] - shl r10,60 - xor r9,QWORD PTR[rcx*1+rsi] - xor r8,r10 - shl r13,48 - bswap r8 - xor r9,r13 - bswap r9 - cmp r14,r15 - jb $L$outer_loop - mov QWORD PTR[8+rdi],r8 - mov QWORD PTR[rdi],r9 - - lea rsi,QWORD PTR[280+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$ghash_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_gcm_ghash_4bit:: -gcm_ghash_4bit ENDP -PUBLIC gcm_init_clmul - -ALIGN 16 -gcm_init_clmul PROC PUBLIC -$L$_init_clmul:: -$L$SEH_begin_gcm_init_clmul:: - -DB 048h,083h,0ech,018h -DB 00fh,029h,034h,024h - movdqu xmm2,XMMWORD PTR[rdx] - pshufd xmm2,xmm2,78 - - - pshufd xmm4,xmm2,255 - movdqa xmm3,xmm2 - psllq xmm2,1 - pxor xmm5,xmm5 - psrlq xmm3,63 - pcmpgtd xmm5,xmm4 - pslldq xmm3,8 - por xmm2,xmm3 - - - pand xmm5,XMMWORD PTR[$L$0x1c2_polynomial] - pxor xmm2,xmm5 - - - pshufd xmm6,xmm2,78 - movdqa xmm0,xmm2 - pxor xmm6,xmm2 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm2,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm2 - movdqu XMMWORD PTR[rcx],xmm2 - pxor xmm4,xmm0 - movdqu XMMWORD PTR[16+rcx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - movdqa xmm5,xmm0 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm5,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm5 - movdqu XMMWORD PTR[48+rcx],xmm5 - pxor xmm4,xmm0 - movdqu XMMWORD PTR[64+rcx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR[80+rcx],xmm4 - movaps xmm6,XMMWORD PTR[rsp] - lea rsp,QWORD PTR[24+rsp] -$L$SEH_end_gcm_init_clmul:: - DB 0F3h,0C3h ;repret -gcm_init_clmul ENDP -PUBLIC gcm_gmult_clmul - -ALIGN 16 -gcm_gmult_clmul PROC PUBLIC -$L$_gmult_clmul:: - movdqu xmm0,XMMWORD PTR[rcx] - movdqa xmm5,XMMWORD PTR[$L$bswap_mask] - movdqu xmm2,XMMWORD PTR[rdx] - movdqu xmm4,XMMWORD PTR[32+rdx] -DB 102,15,56,0,197 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,56,0,197 - movdqu XMMWORD PTR[rcx],xmm0 - DB 0F3h,0C3h ;repret -gcm_gmult_clmul ENDP -PUBLIC gcm_ghash_clmul - -ALIGN 32 -gcm_ghash_clmul PROC PUBLIC -$L$_ghash_clmul:: - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_gcm_ghash_clmul:: - -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm10,XMMWORD PTR[$L$bswap_mask] - - movdqu xmm0,XMMWORD PTR[rcx] - movdqu xmm2,XMMWORD PTR[rdx] - movdqu xmm7,XMMWORD PTR[32+rdx] -DB 102,65,15,56,0,194 - - sub r9,010h - jz $L$odd_tail - - movdqu xmm6,XMMWORD PTR[16+rdx] - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+4))] - cmp r9,030h - jb $L$skip4x - - and eax,71303168 - cmp eax,4194304 - je $L$skip4x - - sub r9,030h - mov rax,0A040608020C0E000h - movdqu xmm14,XMMWORD PTR[48+rdx] - movdqu xmm15,XMMWORD PTR[64+rdx] - - - - - movdqu xmm3,XMMWORD PTR[48+r8] - movdqu xmm11,XMMWORD PTR[32+r8] -DB 102,65,15,56,0,218 -DB 102,69,15,56,0,218 - movdqa xmm5,xmm3 - pshufd xmm4,xmm3,78 - pxor xmm4,xmm3 -DB 102,15,58,68,218,0 -DB 102,15,58,68,234,17 -DB 102,15,58,68,231,0 - - movdqa xmm13,xmm11 - pshufd xmm12,xmm11,78 - pxor xmm12,xmm11 -DB 102,68,15,58,68,222,0 -DB 102,68,15,58,68,238,17 -DB 102,68,15,58,68,231,16 - xorps xmm3,xmm11 - xorps xmm5,xmm13 - movups xmm7,XMMWORD PTR[80+rdx] - xorps xmm4,xmm12 - - movdqu xmm11,XMMWORD PTR[16+r8] - movdqu xmm8,XMMWORD PTR[r8] -DB 102,69,15,56,0,218 -DB 102,69,15,56,0,194 - movdqa xmm13,xmm11 - pshufd xmm12,xmm11,78 - pxor xmm0,xmm8 - pxor xmm12,xmm11 -DB 102,69,15,58,68,222,0 - movdqa xmm1,xmm0 - pshufd xmm8,xmm0,78 - pxor xmm8,xmm0 -DB 102,69,15,58,68,238,17 -DB 102,68,15,58,68,231,0 - xorps xmm3,xmm11 - xorps xmm5,xmm13 - - lea r8,QWORD PTR[64+r8] - sub r9,040h - jc $L$tail4x - - jmp $L$mod4_loop -ALIGN 32 -$L$mod4_loop:: -DB 102,65,15,58,68,199,0 - xorps xmm4,xmm12 - movdqu xmm11,XMMWORD PTR[48+r8] -DB 102,69,15,56,0,218 -DB 102,65,15,58,68,207,17 - xorps xmm0,xmm3 - movdqu xmm3,XMMWORD PTR[32+r8] - movdqa xmm13,xmm11 -DB 102,68,15,58,68,199,16 - pshufd xmm12,xmm11,78 - xorps xmm1,xmm5 - pxor xmm12,xmm11 -DB 102,65,15,56,0,218 - movups xmm7,XMMWORD PTR[32+rdx] - xorps xmm8,xmm4 -DB 102,68,15,58,68,218,0 - pshufd xmm4,xmm3,78 - - pxor xmm8,xmm0 - movdqa xmm5,xmm3 - pxor xmm8,xmm1 - pxor xmm4,xmm3 - movdqa xmm9,xmm8 -DB 102,68,15,58,68,234,17 - pslldq xmm8,8 - psrldq xmm9,8 - pxor xmm0,xmm8 - movdqa xmm8,XMMWORD PTR[$L$7_mask] - pxor xmm1,xmm9 -DB 102,76,15,110,200 - - pand xmm8,xmm0 -DB 102,69,15,56,0,200 - pxor xmm9,xmm0 -DB 102,68,15,58,68,231,0 - psllq xmm9,57 - movdqa xmm8,xmm9 - pslldq xmm9,8 -DB 102,15,58,68,222,0 - psrldq xmm8,8 - pxor xmm0,xmm9 - pxor xmm1,xmm8 - movdqu xmm8,XMMWORD PTR[r8] - - movdqa xmm9,xmm0 - psrlq xmm0,1 -DB 102,15,58,68,238,17 - xorps xmm3,xmm11 - movdqu xmm11,XMMWORD PTR[16+r8] -DB 102,69,15,56,0,218 -DB 102,15,58,68,231,16 - xorps xmm5,xmm13 - movups xmm7,XMMWORD PTR[80+rdx] -DB 102,69,15,56,0,194 - pxor xmm1,xmm9 - pxor xmm9,xmm0 - psrlq xmm0,5 - - movdqa xmm13,xmm11 - pxor xmm4,xmm12 - pshufd xmm12,xmm11,78 - pxor xmm0,xmm9 - pxor xmm1,xmm8 - pxor xmm12,xmm11 -DB 102,69,15,58,68,222,0 - psrlq xmm0,1 - pxor xmm0,xmm1 - movdqa xmm1,xmm0 -DB 102,69,15,58,68,238,17 - xorps xmm3,xmm11 - pshufd xmm8,xmm0,78 - pxor xmm8,xmm0 - -DB 102,68,15,58,68,231,0 - xorps xmm5,xmm13 - - lea r8,QWORD PTR[64+r8] - sub r9,040h - jnc $L$mod4_loop - -$L$tail4x:: -DB 102,65,15,58,68,199,0 -DB 102,65,15,58,68,207,17 -DB 102,68,15,58,68,199,16 - xorps xmm4,xmm12 - xorps xmm0,xmm3 - xorps xmm1,xmm5 - pxor xmm1,xmm0 - pxor xmm8,xmm4 - - pxor xmm8,xmm1 - pxor xmm1,xmm0 - - movdqa xmm9,xmm8 - psrldq xmm8,8 - pslldq xmm9,8 - pxor xmm1,xmm8 - pxor xmm0,xmm9 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - add r9,040h - jz $L$done - movdqu xmm7,XMMWORD PTR[32+rdx] - sub r9,010h - jz $L$odd_tail -$L$skip4x:: - - - - - - movdqu xmm8,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[16+r8] -DB 102,69,15,56,0,194 -DB 102,65,15,56,0,218 - pxor xmm0,xmm8 - - movdqa xmm5,xmm3 - pshufd xmm4,xmm3,78 - pxor xmm4,xmm3 -DB 102,15,58,68,218,0 -DB 102,15,58,68,234,17 -DB 102,15,58,68,231,0 - - lea r8,QWORD PTR[32+r8] - nop - sub r9,020h - jbe $L$even_tail - nop - jmp $L$mod_loop - -ALIGN 32 -$L$mod_loop:: - movdqa xmm1,xmm0 - movdqa xmm8,xmm4 - pshufd xmm4,xmm0,78 - pxor xmm4,xmm0 - -DB 102,15,58,68,198,0 -DB 102,15,58,68,206,17 -DB 102,15,58,68,231,16 - - pxor xmm0,xmm3 - pxor xmm1,xmm5 - movdqu xmm9,XMMWORD PTR[r8] - pxor xmm8,xmm0 -DB 102,69,15,56,0,202 - movdqu xmm3,XMMWORD PTR[16+r8] - - pxor xmm8,xmm1 - pxor xmm1,xmm9 - pxor xmm4,xmm8 -DB 102,65,15,56,0,218 - movdqa xmm8,xmm4 - psrldq xmm8,8 - pslldq xmm4,8 - pxor xmm1,xmm8 - pxor xmm0,xmm4 - - movdqa xmm5,xmm3 - - movdqa xmm9,xmm0 - movdqa xmm8,xmm0 - psllq xmm0,5 - pxor xmm8,xmm0 -DB 102,15,58,68,218,0 - psllq xmm0,1 - pxor xmm0,xmm8 - psllq xmm0,57 - movdqa xmm8,xmm0 - pslldq xmm0,8 - psrldq xmm8,8 - pxor xmm0,xmm9 - pshufd xmm4,xmm5,78 - pxor xmm1,xmm8 - pxor xmm4,xmm5 - - movdqa xmm9,xmm0 - psrlq xmm0,1 -DB 102,15,58,68,234,17 - pxor xmm1,xmm9 - pxor xmm9,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm9 - lea r8,QWORD PTR[32+r8] - psrlq xmm0,1 -DB 102,15,58,68,231,0 - pxor xmm0,xmm1 - - sub r9,020h - ja $L$mod_loop - -$L$even_tail:: - movdqa xmm1,xmm0 - movdqa xmm8,xmm4 - pshufd xmm4,xmm0,78 - pxor xmm4,xmm0 - -DB 102,15,58,68,198,0 -DB 102,15,58,68,206,17 -DB 102,15,58,68,231,16 - - pxor xmm0,xmm3 - pxor xmm1,xmm5 - pxor xmm8,xmm0 - pxor xmm8,xmm1 - pxor xmm4,xmm8 - movdqa xmm8,xmm4 - psrldq xmm8,8 - pslldq xmm4,8 - pxor xmm1,xmm8 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - test r9,r9 - jnz $L$done - -$L$odd_tail:: - movdqu xmm8,XMMWORD PTR[r8] -DB 102,69,15,56,0,194 - pxor xmm0,xmm8 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,223,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -$L$done:: -DB 102,65,15,56,0,194 - movdqu XMMWORD PTR[rcx],xmm0 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_gcm_ghash_clmul:: - DB 0F3h,0C3h ;repret -gcm_ghash_clmul ENDP -PUBLIC gcm_init_avx - -ALIGN 32 -gcm_init_avx PROC PUBLIC -$L$SEH_begin_gcm_init_avx:: - -DB 048h,083h,0ech,018h -DB 00fh,029h,034h,024h - vzeroupper - - vmovdqu xmm2,XMMWORD PTR[rdx] - vpshufd xmm2,xmm2,78 - - - vpshufd xmm4,xmm2,255 - vpsrlq xmm3,xmm2,63 - vpsllq xmm2,xmm2,1 - vpxor xmm5,xmm5,xmm5 - vpcmpgtd xmm5,xmm5,xmm4 - vpslldq xmm3,xmm3,8 - vpor xmm2,xmm2,xmm3 - - - vpand xmm5,xmm5,XMMWORD PTR[$L$0x1c2_polynomial] - vpxor xmm2,xmm2,xmm5 - - vpunpckhqdq xmm6,xmm2,xmm2 - vmovdqa xmm0,xmm2 - vpxor xmm6,xmm6,xmm2 - mov r10,4 - jmp $L$init_start_avx -ALIGN 32 -$L$init_loop_avx:: - vpalignr xmm5,xmm4,xmm3,8 - vmovdqu XMMWORD PTR[(-16)+rcx],xmm5 - vpunpckhqdq xmm3,xmm0,xmm0 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm1,xmm0,xmm2,011h - vpclmulqdq xmm0,xmm0,xmm2,000h - vpclmulqdq xmm3,xmm3,xmm6,000h - vpxor xmm4,xmm1,xmm0 - vpxor xmm3,xmm3,xmm4 - - vpslldq xmm4,xmm3,8 - vpsrldq xmm3,xmm3,8 - vpxor xmm0,xmm0,xmm4 - vpxor xmm1,xmm1,xmm3 - vpsllq xmm3,xmm0,57 - vpsllq xmm4,xmm0,62 - vpxor xmm4,xmm4,xmm3 - vpsllq xmm3,xmm0,63 - vpxor xmm4,xmm4,xmm3 - vpslldq xmm3,xmm4,8 - vpsrldq xmm4,xmm4,8 - vpxor xmm0,xmm0,xmm3 - vpxor xmm1,xmm1,xmm4 - - vpsrlq xmm4,xmm0,1 - vpxor xmm1,xmm1,xmm0 - vpxor xmm0,xmm0,xmm4 - vpsrlq xmm4,xmm4,5 - vpxor xmm0,xmm0,xmm4 - vpsrlq xmm0,xmm0,1 - vpxor xmm0,xmm0,xmm1 -$L$init_start_avx:: - vmovdqa xmm5,xmm0 - vpunpckhqdq xmm3,xmm0,xmm0 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm1,xmm0,xmm2,011h - vpclmulqdq xmm0,xmm0,xmm2,000h - vpclmulqdq xmm3,xmm3,xmm6,000h - vpxor xmm4,xmm1,xmm0 - vpxor xmm3,xmm3,xmm4 - - vpslldq xmm4,xmm3,8 - vpsrldq xmm3,xmm3,8 - vpxor xmm0,xmm0,xmm4 - vpxor xmm1,xmm1,xmm3 - vpsllq xmm3,xmm0,57 - vpsllq xmm4,xmm0,62 - vpxor xmm4,xmm4,xmm3 - vpsllq xmm3,xmm0,63 - vpxor xmm4,xmm4,xmm3 - vpslldq xmm3,xmm4,8 - vpsrldq xmm4,xmm4,8 - vpxor xmm0,xmm0,xmm3 - vpxor xmm1,xmm1,xmm4 - - vpsrlq xmm4,xmm0,1 - vpxor xmm1,xmm1,xmm0 - vpxor xmm0,xmm0,xmm4 - vpsrlq xmm4,xmm4,5 - vpxor xmm0,xmm0,xmm4 - vpsrlq xmm0,xmm0,1 - vpxor xmm0,xmm0,xmm1 - vpshufd xmm3,xmm5,78 - vpshufd xmm4,xmm0,78 - vpxor xmm3,xmm3,xmm5 - vmovdqu XMMWORD PTR[rcx],xmm5 - vpxor xmm4,xmm4,xmm0 - vmovdqu XMMWORD PTR[16+rcx],xmm0 - lea rcx,QWORD PTR[48+rcx] - sub r10,1 - jnz $L$init_loop_avx - - vpalignr xmm5,xmm3,xmm4,8 - vmovdqu XMMWORD PTR[(-16)+rcx],xmm5 - - vzeroupper - movaps xmm6,XMMWORD PTR[rsp] - lea rsp,QWORD PTR[24+rsp] -$L$SEH_end_gcm_init_avx:: - DB 0F3h,0C3h ;repret -gcm_init_avx ENDP -PUBLIC gcm_gmult_avx - -ALIGN 32 -gcm_gmult_avx PROC PUBLIC - jmp $L$_gmult_clmul -gcm_gmult_avx ENDP -PUBLIC gcm_ghash_avx - -ALIGN 32 -gcm_ghash_avx PROC PUBLIC - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_gcm_ghash_avx:: - -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - vzeroupper - - vmovdqu xmm10,XMMWORD PTR[rcx] - lea r10,QWORD PTR[$L$0x1c2_polynomial] - lea rdx,QWORD PTR[64+rdx] - vmovdqu xmm13,XMMWORD PTR[$L$bswap_mask] - vpshufb xmm10,xmm10,xmm13 - cmp r9,080h - jb $L$short_avx - sub r9,080h - - vmovdqu xmm14,XMMWORD PTR[112+r8] - vmovdqu xmm6,XMMWORD PTR[((0-64))+rdx] - vpshufb xmm14,xmm14,xmm13 - vmovdqu xmm7,XMMWORD PTR[((32-64))+rdx] - - vpunpckhqdq xmm9,xmm14,xmm14 - vmovdqu xmm15,XMMWORD PTR[96+r8] - vpclmulqdq xmm0,xmm14,xmm6,000h - vpxor xmm9,xmm9,xmm14 - vpshufb xmm15,xmm15,xmm13 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((16-64))+rdx] - vpunpckhqdq xmm8,xmm15,xmm15 - vmovdqu xmm14,XMMWORD PTR[80+r8] - vpclmulqdq xmm2,xmm9,xmm7,000h - vpxor xmm8,xmm8,xmm15 - - vpshufb xmm14,xmm14,xmm13 - vpclmulqdq xmm3,xmm15,xmm6,000h - vpunpckhqdq xmm9,xmm14,xmm14 - vpclmulqdq xmm4,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((48-64))+rdx] - vpxor xmm9,xmm9,xmm14 - vmovdqu xmm15,XMMWORD PTR[64+r8] - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((80-64))+rdx] - - vpshufb xmm15,xmm15,xmm13 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm14,xmm6,000h - vpxor xmm4,xmm4,xmm1 - vpunpckhqdq xmm8,xmm15,xmm15 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((64-64))+rdx] - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm9,xmm7,000h - vpxor xmm8,xmm8,xmm15 - - vmovdqu xmm14,XMMWORD PTR[48+r8] - vpxor xmm0,xmm0,xmm3 - vpclmulqdq xmm3,xmm15,xmm6,000h - vpxor xmm1,xmm1,xmm4 - vpshufb xmm14,xmm14,xmm13 - vpclmulqdq xmm4,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((96-64))+rdx] - vpxor xmm2,xmm2,xmm5 - vpunpckhqdq xmm9,xmm14,xmm14 - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((128-64))+rdx] - vpxor xmm9,xmm9,xmm14 - - vmovdqu xmm15,XMMWORD PTR[32+r8] - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm14,xmm6,000h - vpxor xmm4,xmm4,xmm1 - vpshufb xmm15,xmm15,xmm13 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((112-64))+rdx] - vpxor xmm5,xmm5,xmm2 - vpunpckhqdq xmm8,xmm15,xmm15 - vpclmulqdq xmm2,xmm9,xmm7,000h - vpxor xmm8,xmm8,xmm15 - - vmovdqu xmm14,XMMWORD PTR[16+r8] - vpxor xmm0,xmm0,xmm3 - vpclmulqdq xmm3,xmm15,xmm6,000h - vpxor xmm1,xmm1,xmm4 - vpshufb xmm14,xmm14,xmm13 - vpclmulqdq xmm4,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((144-64))+rdx] - vpxor xmm2,xmm2,xmm5 - vpunpckhqdq xmm9,xmm14,xmm14 - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((176-64))+rdx] - vpxor xmm9,xmm9,xmm14 - - vmovdqu xmm15,XMMWORD PTR[r8] - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm14,xmm6,000h - vpxor xmm4,xmm4,xmm1 - vpshufb xmm15,xmm15,xmm13 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((160-64))+rdx] - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm9,xmm7,010h - - lea r8,QWORD PTR[128+r8] - cmp r9,080h - jb $L$tail_avx - - vpxor xmm15,xmm15,xmm10 - sub r9,080h - jmp $L$oop8x_avx - -ALIGN 32 -$L$oop8x_avx:: - vpunpckhqdq xmm8,xmm15,xmm15 - vmovdqu xmm14,XMMWORD PTR[112+r8] - vpxor xmm3,xmm3,xmm0 - vpxor xmm8,xmm8,xmm15 - vpclmulqdq xmm10,xmm15,xmm6,000h - vpshufb xmm14,xmm14,xmm13 - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm11,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((0-64))+rdx] - vpunpckhqdq xmm9,xmm14,xmm14 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm12,xmm8,xmm7,000h - vmovdqu xmm7,XMMWORD PTR[((32-64))+rdx] - vpxor xmm9,xmm9,xmm14 - - vmovdqu xmm15,XMMWORD PTR[96+r8] - vpclmulqdq xmm0,xmm14,xmm6,000h - vpxor xmm10,xmm10,xmm3 - vpshufb xmm15,xmm15,xmm13 - vpclmulqdq xmm1,xmm14,xmm6,011h - vxorps xmm11,xmm11,xmm4 - vmovdqu xmm6,XMMWORD PTR[((16-64))+rdx] - vpunpckhqdq xmm8,xmm15,xmm15 - vpclmulqdq xmm2,xmm9,xmm7,000h - vpxor xmm12,xmm12,xmm5 - vxorps xmm8,xmm8,xmm15 - - vmovdqu xmm14,XMMWORD PTR[80+r8] - vpxor xmm12,xmm12,xmm10 - vpclmulqdq xmm3,xmm15,xmm6,000h - vpxor xmm12,xmm12,xmm11 - vpslldq xmm9,xmm12,8 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm4,xmm15,xmm6,011h - vpsrldq xmm12,xmm12,8 - vpxor xmm10,xmm10,xmm9 - vmovdqu xmm6,XMMWORD PTR[((48-64))+rdx] - vpshufb xmm14,xmm14,xmm13 - vxorps xmm11,xmm11,xmm12 - vpxor xmm4,xmm4,xmm1 - vpunpckhqdq xmm9,xmm14,xmm14 - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((80-64))+rdx] - vpxor xmm9,xmm9,xmm14 - vpxor xmm5,xmm5,xmm2 - - vmovdqu xmm15,XMMWORD PTR[64+r8] - vpalignr xmm12,xmm10,xmm10,8 - vpclmulqdq xmm0,xmm14,xmm6,000h - vpshufb xmm15,xmm15,xmm13 - vpxor xmm0,xmm0,xmm3 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((64-64))+rdx] - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm1,xmm1,xmm4 - vpclmulqdq xmm2,xmm9,xmm7,000h - vxorps xmm8,xmm8,xmm15 - vpxor xmm2,xmm2,xmm5 - - vmovdqu xmm14,XMMWORD PTR[48+r8] - vpclmulqdq xmm10,xmm10,XMMWORD PTR[r10],010h - vpclmulqdq xmm3,xmm15,xmm6,000h - vpshufb xmm14,xmm14,xmm13 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm4,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((96-64))+rdx] - vpunpckhqdq xmm9,xmm14,xmm14 - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((128-64))+rdx] - vpxor xmm9,xmm9,xmm14 - vpxor xmm5,xmm5,xmm2 - - vmovdqu xmm15,XMMWORD PTR[32+r8] - vpclmulqdq xmm0,xmm14,xmm6,000h - vpshufb xmm15,xmm15,xmm13 - vpxor xmm0,xmm0,xmm3 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((112-64))+rdx] - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm1,xmm1,xmm4 - vpclmulqdq xmm2,xmm9,xmm7,000h - vpxor xmm8,xmm8,xmm15 - vpxor xmm2,xmm2,xmm5 - vxorps xmm10,xmm10,xmm12 - - vmovdqu xmm14,XMMWORD PTR[16+r8] - vpalignr xmm12,xmm10,xmm10,8 - vpclmulqdq xmm3,xmm15,xmm6,000h - vpshufb xmm14,xmm14,xmm13 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm4,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((144-64))+rdx] - vpclmulqdq xmm10,xmm10,XMMWORD PTR[r10],010h - vxorps xmm12,xmm12,xmm11 - vpunpckhqdq xmm9,xmm14,xmm14 - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm5,xmm8,xmm7,010h - vmovdqu xmm7,XMMWORD PTR[((176-64))+rdx] - vpxor xmm9,xmm9,xmm14 - vpxor xmm5,xmm5,xmm2 - - vmovdqu xmm15,XMMWORD PTR[r8] - vpclmulqdq xmm0,xmm14,xmm6,000h - vpshufb xmm15,xmm15,xmm13 - vpclmulqdq xmm1,xmm14,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((160-64))+rdx] - vpxor xmm15,xmm15,xmm12 - vpclmulqdq xmm2,xmm9,xmm7,010h - vpxor xmm15,xmm15,xmm10 - - lea r8,QWORD PTR[128+r8] - sub r9,080h - jnc $L$oop8x_avx - - add r9,080h - jmp $L$tail_no_xor_avx - -ALIGN 32 -$L$short_avx:: - vmovdqu xmm14,XMMWORD PTR[((-16))+r9*1+r8] - lea r8,QWORD PTR[r9*1+r8] - vmovdqu xmm6,XMMWORD PTR[((0-64))+rdx] - vmovdqu xmm7,XMMWORD PTR[((32-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - - vmovdqa xmm3,xmm0 - vmovdqa xmm4,xmm1 - vmovdqa xmm5,xmm2 - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-32))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((16-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vpsrldq xmm7,xmm7,8 - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-48))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((48-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vmovdqu xmm7,XMMWORD PTR[((80-64))+rdx] - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-64))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((64-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vpsrldq xmm7,xmm7,8 - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-80))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((96-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vmovdqu xmm7,XMMWORD PTR[((128-64))+rdx] - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-96))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((112-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vpsrldq xmm7,xmm7,8 - sub r9,010h - jz $L$tail_avx - - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vmovdqu xmm14,XMMWORD PTR[((-112))+r8] - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vmovdqu xmm6,XMMWORD PTR[((144-64))+rdx] - vpshufb xmm15,xmm14,xmm13 - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - vmovq xmm7,QWORD PTR[((184-64))+rdx] - sub r9,010h - jmp $L$tail_avx - -ALIGN 32 -$L$tail_avx:: - vpxor xmm15,xmm15,xmm10 -$L$tail_no_xor_avx:: - vpunpckhqdq xmm8,xmm15,xmm15 - vpxor xmm3,xmm3,xmm0 - vpclmulqdq xmm0,xmm15,xmm6,000h - vpxor xmm8,xmm8,xmm15 - vpxor xmm4,xmm4,xmm1 - vpclmulqdq xmm1,xmm15,xmm6,011h - vpxor xmm5,xmm5,xmm2 - vpclmulqdq xmm2,xmm8,xmm7,000h - - vmovdqu xmm12,XMMWORD PTR[r10] - - vpxor xmm10,xmm3,xmm0 - vpxor xmm11,xmm4,xmm1 - vpxor xmm5,xmm5,xmm2 - - vpxor xmm5,xmm5,xmm10 - vpxor xmm5,xmm5,xmm11 - vpslldq xmm9,xmm5,8 - vpsrldq xmm5,xmm5,8 - vpxor xmm10,xmm10,xmm9 - vpxor xmm11,xmm11,xmm5 - - vpclmulqdq xmm9,xmm10,xmm12,010h - vpalignr xmm10,xmm10,xmm10,8 - vpxor xmm10,xmm10,xmm9 - - vpclmulqdq xmm9,xmm10,xmm12,010h - vpalignr xmm10,xmm10,xmm10,8 - vpxor xmm10,xmm10,xmm11 - vpxor xmm10,xmm10,xmm9 - - cmp r9,0 - jne $L$short_avx - - vpshufb xmm10,xmm10,xmm13 - vmovdqu XMMWORD PTR[rcx],xmm10 - vzeroupper - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_gcm_ghash_avx:: - DB 0F3h,0C3h ;repret -gcm_ghash_avx ENDP -ALIGN 64 -$L$bswap_mask:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -$L$0x1c2_polynomial:: -DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0c2h -$L$7_mask:: - DD 7,0,7,0 -$L$7_mask_poly:: - DD 7,0,450,0 -ALIGN 64 - -$L$rem_4bit:: - DD 0,0,0,471859200,0,943718400,0,610271232 - DD 0,1887436800,0,1822425088,0,1220542464,0,1423966208 - DD 0,3774873600,0,4246732800,0,3644850176,0,3311403008 - DD 0,2441084928,0,2376073216,0,2847932416,0,3051356160 - -$L$rem_8bit:: - DW 00000h,001C2h,00384h,00246h,00708h,006CAh,0048Ch,0054Eh - DW 00E10h,00FD2h,00D94h,00C56h,00918h,008DAh,00A9Ch,00B5Eh - DW 01C20h,01DE2h,01FA4h,01E66h,01B28h,01AEAh,018ACh,0196Eh - DW 01230h,013F2h,011B4h,01076h,01538h,014FAh,016BCh,0177Eh - DW 03840h,03982h,03BC4h,03A06h,03F48h,03E8Ah,03CCCh,03D0Eh - DW 03650h,03792h,035D4h,03416h,03158h,0309Ah,032DCh,0331Eh - DW 02460h,025A2h,027E4h,02626h,02368h,022AAh,020ECh,0212Eh - DW 02A70h,02BB2h,029F4h,02836h,02D78h,02CBAh,02EFCh,02F3Eh - DW 07080h,07142h,07304h,072C6h,07788h,0764Ah,0740Ch,075CEh - DW 07E90h,07F52h,07D14h,07CD6h,07998h,0785Ah,07A1Ch,07BDEh - DW 06CA0h,06D62h,06F24h,06EE6h,06BA8h,06A6Ah,0682Ch,069EEh - DW 062B0h,06372h,06134h,060F6h,065B8h,0647Ah,0663Ch,067FEh - DW 048C0h,04902h,04B44h,04A86h,04FC8h,04E0Ah,04C4Ch,04D8Eh - DW 046D0h,04712h,04554h,04496h,041D8h,0401Ah,0425Ch,0439Eh - DW 054E0h,05522h,05764h,056A6h,053E8h,0522Ah,0506Ch,051AEh - DW 05AF0h,05B32h,05974h,058B6h,05DF8h,05C3Ah,05E7Ch,05FBEh - DW 0E100h,0E0C2h,0E284h,0E346h,0E608h,0E7CAh,0E58Ch,0E44Eh - DW 0EF10h,0EED2h,0EC94h,0ED56h,0E818h,0E9DAh,0EB9Ch,0EA5Eh - DW 0FD20h,0FCE2h,0FEA4h,0FF66h,0FA28h,0FBEAh,0F9ACh,0F86Eh - DW 0F330h,0F2F2h,0F0B4h,0F176h,0F438h,0F5FAh,0F7BCh,0F67Eh - DW 0D940h,0D882h,0DAC4h,0DB06h,0DE48h,0DF8Ah,0DDCCh,0DC0Eh - DW 0D750h,0D692h,0D4D4h,0D516h,0D058h,0D19Ah,0D3DCh,0D21Eh - DW 0C560h,0C4A2h,0C6E4h,0C726h,0C268h,0C3AAh,0C1ECh,0C02Eh - DW 0CB70h,0CAB2h,0C8F4h,0C936h,0CC78h,0CDBAh,0CFFCh,0CE3Eh - DW 09180h,09042h,09204h,093C6h,09688h,0974Ah,0950Ch,094CEh - DW 09F90h,09E52h,09C14h,09DD6h,09898h,0995Ah,09B1Ch,09ADEh - DW 08DA0h,08C62h,08E24h,08FE6h,08AA8h,08B6Ah,0892Ch,088EEh - DW 083B0h,08272h,08034h,081F6h,084B8h,0857Ah,0873Ch,086FEh - DW 0A9C0h,0A802h,0AA44h,0AB86h,0AEC8h,0AF0Ah,0AD4Ch,0AC8Eh - DW 0A7D0h,0A612h,0A454h,0A596h,0A0D8h,0A11Ah,0A35Ch,0A29Eh - DW 0B5E0h,0B422h,0B664h,0B7A6h,0B2E8h,0B32Ah,0B16Ch,0B0AEh - DW 0BBF0h,0BA32h,0B874h,0B9B6h,0BCF8h,0BD3Ah,0BF7Ch,0BEBEh - -DB 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52 -DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 -DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 -DB 114,103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[24+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_gcm_gmult_4bit - DD imagerel $L$SEH_end_gcm_gmult_4bit - DD imagerel $L$SEH_info_gcm_gmult_4bit - - DD imagerel $L$SEH_begin_gcm_ghash_4bit - DD imagerel $L$SEH_end_gcm_ghash_4bit - DD imagerel $L$SEH_info_gcm_ghash_4bit - - DD imagerel $L$SEH_begin_gcm_init_clmul - DD imagerel $L$SEH_end_gcm_init_clmul - DD imagerel $L$SEH_info_gcm_init_clmul - - DD imagerel $L$SEH_begin_gcm_ghash_clmul - DD imagerel $L$SEH_end_gcm_ghash_clmul - DD imagerel $L$SEH_info_gcm_ghash_clmul - DD imagerel $L$SEH_begin_gcm_init_avx - DD imagerel $L$SEH_end_gcm_init_avx - DD imagerel $L$SEH_info_gcm_init_clmul - - DD imagerel $L$SEH_begin_gcm_ghash_avx - DD imagerel $L$SEH_end_gcm_ghash_avx - DD imagerel $L$SEH_info_gcm_ghash_clmul -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_gcm_gmult_4bit:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$gmult_prologue,imagerel $L$gmult_epilogue -$L$SEH_info_gcm_ghash_4bit:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$ghash_prologue,imagerel $L$ghash_epilogue -$L$SEH_info_gcm_init_clmul:: -DB 001h,008h,003h,000h -DB 008h,068h,000h,000h -DB 004h,022h,000h,000h -$L$SEH_info_gcm_ghash_clmul:: -DB 001h,033h,016h,000h -DB 033h,0f8h,009h,000h -DB 02eh,0e8h,008h,000h -DB 029h,0d8h,007h,000h -DB 024h,0c8h,006h,000h -DB 01fh,0b8h,005h,000h -DB 01ah,0a8h,004h,000h -DB 015h,098h,003h,000h -DB 010h,088h,002h,000h -DB 00ch,078h,001h,000h -DB 008h,068h,000h,000h -DB 004h,001h,015h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm b/deps/openssl/asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm deleted file mode 100644 index 9d823aed573007..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm +++ /dev/null @@ -1,1374 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -ALIGN 16 - -PUBLIC rc4_md5_enc - -rc4_md5_enc PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rc4_md5_enc:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp r9,0 - je $L$abort - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,40 -$L$body:: - mov r11,rcx - mov r12,r9 - mov r13,rsi - mov r14,rdx - mov r15,r8 - xor rbp,rbp - xor rcx,rcx - - lea rdi,QWORD PTR[8+rdi] - mov bpl,BYTE PTR[((-8))+rdi] - mov cl,BYTE PTR[((-4))+rdi] - - inc bpl - sub r14,r13 - mov eax,DWORD PTR[rbp*4+rdi] - add cl,al - lea rsi,QWORD PTR[rbp*4+rdi] - shl r12,6 - add r12,r15 - mov QWORD PTR[16+rsp],r12 - - mov QWORD PTR[24+rsp],r11 - mov r8d,DWORD PTR[r11] - mov r9d,DWORD PTR[4+r11] - mov r10d,DWORD PTR[8+r11] - mov r11d,DWORD PTR[12+r11] - jmp $L$oop - -ALIGN 16 -$L$oop:: - mov DWORD PTR[rsp],r8d - mov DWORD PTR[4+rsp],r9d - mov DWORD PTR[8+rsp],r10d - mov r12d,r11d - mov DWORD PTR[12+rsp],r11d - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[r15] - add al,dl - mov ebx,DWORD PTR[4+rsi] - add r8d,3614090360 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[4+r15] - add bl,dl - mov eax,DWORD PTR[8+rsi] - add r11d,3905402710 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[4+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[8+r15] - add al,dl - mov ebx,DWORD PTR[12+rsi] - add r10d,606105819 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[8+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[12+r15] - add bl,dl - mov eax,DWORD PTR[16+rsi] - add r9d,3250441966 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[12+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[16+r15] - add al,dl - mov ebx,DWORD PTR[20+rsi] - add r8d,4118548399 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[16+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[20+r15] - add bl,dl - mov eax,DWORD PTR[24+rsi] - add r11d,1200080426 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[20+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[24+r15] - add al,dl - mov ebx,DWORD PTR[28+rsi] - add r10d,2821735955 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[24+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[28+r15] - add bl,dl - mov eax,DWORD PTR[32+rsi] - add r9d,4249261313 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[28+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[32+r15] - add al,dl - mov ebx,DWORD PTR[36+rsi] - add r8d,1770035416 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[32+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[36+r15] - add bl,dl - mov eax,DWORD PTR[40+rsi] - add r11d,2336552879 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[36+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[40+r15] - add al,dl - mov ebx,DWORD PTR[44+rsi] - add r10d,4294925233 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[40+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[44+r15] - add bl,dl - mov eax,DWORD PTR[48+rsi] - add r9d,2304563134 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[44+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[48+r15] - add al,dl - mov ebx,DWORD PTR[52+rsi] - add r8d,1804603682 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[48+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[52+r15] - add bl,dl - mov eax,DWORD PTR[56+rsi] - add r11d,4254626195 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[52+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[56+r15] - add al,dl - mov ebx,DWORD PTR[60+rsi] - add r10d,2792965006 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[56+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm2,XMMWORD PTR[r13] - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[60+r15] - add bl,dl - mov eax,DWORD PTR[64+rsi] - add r9d,1236535329 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[60+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - psllq xmm1,8 - pxor xmm2,xmm0 - pxor xmm2,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[4+r15] - add al,dl - mov ebx,DWORD PTR[68+rsi] - add r8d,4129170786 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[64+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[24+r15] - add bl,dl - mov eax,DWORD PTR[72+rsi] - add r11d,3225465664 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[68+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[44+r15] - add al,dl - mov ebx,DWORD PTR[76+rsi] - add r10d,643717713 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[72+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[r15] - add bl,dl - mov eax,DWORD PTR[80+rsi] - add r9d,3921069994 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[76+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[20+r15] - add al,dl - mov ebx,DWORD PTR[84+rsi] - add r8d,3593408605 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[80+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[40+r15] - add bl,dl - mov eax,DWORD PTR[88+rsi] - add r11d,38016083 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[84+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[60+r15] - add al,dl - mov ebx,DWORD PTR[92+rsi] - add r10d,3634488961 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[88+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[16+r15] - add bl,dl - mov eax,DWORD PTR[96+rsi] - add r9d,3889429448 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[92+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[36+r15] - add al,dl - mov ebx,DWORD PTR[100+rsi] - add r8d,568446438 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[96+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[56+r15] - add bl,dl - mov eax,DWORD PTR[104+rsi] - add r11d,3275163606 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[100+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[12+r15] - add al,dl - mov ebx,DWORD PTR[108+rsi] - add r10d,4107603335 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[104+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[32+r15] - add bl,dl - mov eax,DWORD PTR[112+rsi] - add r9d,1163531501 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[108+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[52+r15] - add al,dl - mov ebx,DWORD PTR[116+rsi] - add r8d,2850285829 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[112+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[8+r15] - add bl,dl - mov eax,DWORD PTR[120+rsi] - add r11d,4243563512 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[116+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[28+r15] - add al,dl - mov ebx,DWORD PTR[124+rsi] - add r10d,1735328473 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[120+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm3,XMMWORD PTR[16+r13] - add bpl,32 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[48+r15] - add bl,dl - mov eax,DWORD PTR[rbp*4+rdi] - add r9d,2368359562 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[124+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - mov rsi,rcx - xor rcx,rcx - mov cl,sil - lea rsi,QWORD PTR[rbp*4+rdi] - psllq xmm1,8 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[20+r15] - add al,dl - mov ebx,DWORD PTR[4+rsi] - add r8d,4294588738 - movzx eax,al - add r8d,r12d - mov DWORD PTR[rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[32+r15] - add bl,dl - mov eax,DWORD PTR[8+rsi] - add r11d,2272392833 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[4+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[44+r15] - add al,dl - mov ebx,DWORD PTR[12+rsi] - add r10d,1839030562 - movzx eax,al - add r10d,r12d - mov DWORD PTR[8+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[56+r15] - add bl,dl - mov eax,DWORD PTR[16+rsi] - add r9d,4259657740 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[12+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[4+r15] - add al,dl - mov ebx,DWORD PTR[20+rsi] - add r8d,2763975236 - movzx eax,al - add r8d,r12d - mov DWORD PTR[16+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[16+r15] - add bl,dl - mov eax,DWORD PTR[24+rsi] - add r11d,1272893353 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[20+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[28+r15] - add al,dl - mov ebx,DWORD PTR[28+rsi] - add r10d,4139469664 - movzx eax,al - add r10d,r12d - mov DWORD PTR[24+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[40+r15] - add bl,dl - mov eax,DWORD PTR[32+rsi] - add r9d,3200236656 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[28+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[52+r15] - add al,dl - mov ebx,DWORD PTR[36+rsi] - add r8d,681279174 - movzx eax,al - add r8d,r12d - mov DWORD PTR[32+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[r15] - add bl,dl - mov eax,DWORD PTR[40+rsi] - add r11d,3936430074 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[36+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[12+r15] - add al,dl - mov ebx,DWORD PTR[44+rsi] - add r10d,3572445317 - movzx eax,al - add r10d,r12d - mov DWORD PTR[40+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[24+r15] - add bl,dl - mov eax,DWORD PTR[48+rsi] - add r9d,76029189 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[44+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[36+r15] - add al,dl - mov ebx,DWORD PTR[52+rsi] - add r8d,3654602809 - movzx eax,al - add r8d,r12d - mov DWORD PTR[48+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[48+r15] - add bl,dl - mov eax,DWORD PTR[56+rsi] - add r11d,3873151461 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[52+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[60+r15] - add al,dl - mov ebx,DWORD PTR[60+rsi] - add r10d,530742520 - movzx eax,al - add r10d,r12d - mov DWORD PTR[56+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm4,XMMWORD PTR[32+r13] - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[8+r15] - add bl,dl - mov eax,DWORD PTR[64+rsi] - add r9d,3299628645 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[60+rsi],edx - add cl,al - rol r9d,23 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - psllq xmm1,8 - pxor xmm4,xmm0 - pxor xmm4,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[r15] - add al,dl - mov ebx,DWORD PTR[68+rsi] - add r8d,4096336452 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[64+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[28+r15] - add bl,dl - mov eax,DWORD PTR[72+rsi] - add r11d,1126891415 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[68+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[56+r15] - add al,dl - mov ebx,DWORD PTR[76+rsi] - add r10d,2878612391 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[72+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[20+r15] - add bl,dl - mov eax,DWORD PTR[80+rsi] - add r9d,4237533241 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[76+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[48+r15] - add al,dl - mov ebx,DWORD PTR[84+rsi] - add r8d,1700485571 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[80+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[12+r15] - add bl,dl - mov eax,DWORD PTR[88+rsi] - add r11d,2399980690 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[84+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[40+r15] - add al,dl - mov ebx,DWORD PTR[92+rsi] - add r10d,4293915773 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[88+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[4+r15] - add bl,dl - mov eax,DWORD PTR[96+rsi] - add r9d,2240044497 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[92+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[32+r15] - add al,dl - mov ebx,DWORD PTR[100+rsi] - add r8d,1873313359 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[96+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[60+r15] - add bl,dl - mov eax,DWORD PTR[104+rsi] - add r11d,4264355552 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[100+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[24+r15] - add al,dl - mov ebx,DWORD PTR[108+rsi] - add r10d,2734768916 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[104+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[52+r15] - add bl,dl - mov eax,DWORD PTR[112+rsi] - add r9d,1309151649 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[108+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[16+r15] - add al,dl - mov ebx,DWORD PTR[116+rsi] - add r8d,4149444226 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[112+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[44+r15] - add bl,dl - mov eax,DWORD PTR[120+rsi] - add r11d,3174756917 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[116+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[8+r15] - add al,dl - mov ebx,DWORD PTR[124+rsi] - add r10d,718787259 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[120+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm5,XMMWORD PTR[48+r13] - add bpl,32 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[36+r15] - add bl,dl - mov eax,DWORD PTR[rbp*4+rdi] - add r9d,3951481745 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[124+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - mov rsi,rbp - xor rbp,rbp - mov bpl,sil - mov rsi,rcx - xor rcx,rcx - mov cl,sil - lea rsi,QWORD PTR[rbp*4+rdi] - psllq xmm1,8 - pxor xmm5,xmm0 - pxor xmm5,xmm1 - add r8d,DWORD PTR[rsp] - add r9d,DWORD PTR[4+rsp] - add r10d,DWORD PTR[8+rsp] - add r11d,DWORD PTR[12+rsp] - - movdqu XMMWORD PTR[r13*1+r14],xmm2 - movdqu XMMWORD PTR[16+r13*1+r14],xmm3 - movdqu XMMWORD PTR[32+r13*1+r14],xmm4 - movdqu XMMWORD PTR[48+r13*1+r14],xmm5 - lea r15,QWORD PTR[64+r15] - lea r13,QWORD PTR[64+r13] - cmp r15,QWORD PTR[16+rsp] - jb $L$oop - - mov r12,QWORD PTR[24+rsp] - sub cl,al - mov DWORD PTR[r12],r8d - mov DWORD PTR[4+r12],r9d - mov DWORD PTR[8+r12],r10d - mov DWORD PTR[12+r12],r11d - sub bpl,1 - mov DWORD PTR[((-8))+rdi],ebp - mov DWORD PTR[((-4))+rdi],ecx - - mov r15,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r13,QWORD PTR[56+rsp] - mov r12,QWORD PTR[64+rsp] - mov rbp,QWORD PTR[72+rsp] - mov rbx,QWORD PTR[80+rsp] - lea rsp,QWORD PTR[88+rsp] -$L$epilogue:: -$L$abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rc4_md5_enc:: -rc4_md5_enc ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$body] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - mov r15,QWORD PTR[40+rax] - mov r14,QWORD PTR[48+rax] - mov r13,QWORD PTR[56+rax] - mov r12,QWORD PTR[64+rax] - mov rbp,QWORD PTR[72+rax] - mov rbx,QWORD PTR[80+rax] - lea rax,QWORD PTR[88+rax] - - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_rc4_md5_enc - DD imagerel $L$SEH_end_rc4_md5_enc - DD imagerel $L$SEH_info_rc4_md5_enc - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_rc4_md5_enc:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/rc4/rc4-x86_64.asm b/deps/openssl/asm/x64-win32-masm/rc4/rc4-x86_64.asm deleted file mode 100644 index a0e5553247b032..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/rc4/rc4-x86_64.asm +++ /dev/null @@ -1,771 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC RC4 - -ALIGN 16 -RC4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_RC4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - or rsi,rsi - jne $L$entry - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$entry:: - push rbx - push r12 - push r13 -$L$prologue:: - mov r11,rsi - mov r12,rdx - mov r13,rcx - xor r10,r10 - xor rcx,rcx - - lea rdi,QWORD PTR[8+rdi] - mov r10b,BYTE PTR[((-8))+rdi] - mov cl,BYTE PTR[((-4))+rdi] - cmp DWORD PTR[256+rdi],-1 - je $L$RC4_CHAR - mov r8d,DWORD PTR[OPENSSL_ia32cap_P] - xor rbx,rbx - inc r10b - sub rbx,r10 - sub r13,r12 - mov eax,DWORD PTR[r10*4+rdi] - test r11,-16 - jz $L$loop1 - bt r8d,30 - jc $L$intel - and rbx,7 - lea rsi,QWORD PTR[1+r10] - jz $L$oop8 - sub r11,rbx -$L$oop8_warmup:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec rbx - jnz $L$oop8_warmup - - lea rsi,QWORD PTR[1+r10] - jmp $L$oop8 -ALIGN 16 -$L$oop8:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[rsi*4+rdi] - ror r8,8 - mov DWORD PTR[r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[4+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[4+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[8+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[8+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[12+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[12+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[16+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[16+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[20+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[20+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[24+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[24+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add sil,8 - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[((-4))+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[28+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add r10b,8 - ror r8,8 - sub r11,8 - - xor r8,QWORD PTR[r12] - mov QWORD PTR[r13*1+r12],r8 - lea r12,QWORD PTR[8+r12] - - test r11,-8 - jnz $L$oop8 - cmp r11,0 - jne $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$intel:: - test r11,-32 - jz $L$loop1 - and rbx,15 - jz $L$oop16_is_hot - sub r11,rbx -$L$oop16_warmup:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec rbx - jnz $L$oop16_warmup - - mov rbx,rcx - xor rcx,rcx - mov cl,bl - -$L$oop16_is_hot:: - lea rsi,QWORD PTR[r10*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm0,xmm0 - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[4+rsi] - movzx eax,al - mov DWORD PTR[rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],0 - jmp $L$oop16_enter -ALIGN 16 -$L$oop16:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm2,xmm0 - psllq xmm1,8 - pxor xmm0,xmm0 - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[4+rsi] - movzx eax,al - mov DWORD PTR[rsi],edx - pxor xmm2,xmm1 - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],0 - movdqu XMMWORD PTR[r13*1+r12],xmm2 - lea r12,QWORD PTR[16+r12] -$L$oop16_enter:: - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm1,xmm1 - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[8+rsi] - movzx ebx,bl - mov DWORD PTR[4+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],0 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[12+rsi] - movzx eax,al - mov DWORD PTR[8+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[16+rsi] - movzx ebx,bl - mov DWORD PTR[12+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[20+rsi] - movzx eax,al - mov DWORD PTR[16+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[24+rsi] - movzx ebx,bl - mov DWORD PTR[20+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[28+rsi] - movzx eax,al - mov DWORD PTR[24+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[32+rsi] - movzx ebx,bl - mov DWORD PTR[28+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[36+rsi] - movzx eax,al - mov DWORD PTR[32+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[40+rsi] - movzx ebx,bl - mov DWORD PTR[36+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[44+rsi] - movzx eax,al - mov DWORD PTR[40+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[48+rsi] - movzx ebx,bl - mov DWORD PTR[44+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[52+rsi] - movzx eax,al - mov DWORD PTR[48+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[56+rsi] - movzx ebx,bl - mov DWORD PTR[52+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[60+rsi] - movzx eax,al - mov DWORD PTR[56+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - add r10b,16 - movdqu xmm2,XMMWORD PTR[r12] - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - movzx ebx,bl - mov DWORD PTR[60+rsi],edx - lea rsi,QWORD PTR[r10*4+rdi] - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - mov eax,DWORD PTR[rsi] - mov rbx,rcx - xor rcx,rcx - sub r11,16 - mov cl,bl - test r11,-16 - jnz $L$oop16 - - psllq xmm1,8 - pxor xmm2,xmm0 - pxor xmm2,xmm1 - movdqu XMMWORD PTR[r13*1+r12],xmm2 - lea r12,QWORD PTR[16+r12] - - cmp r11,0 - jne $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$loop1:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec r11 - jnz $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$RC4_CHAR:: - add r10b,1 - movzx eax,BYTE PTR[r10*1+rdi] - test r11,-8 - jz $L$cloop1 - jmp $L$cloop8 -ALIGN 16 -$L$cloop8:: - mov r8d,DWORD PTR[r12] - mov r9d,DWORD PTR[4+r12] - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov0 - mov rbx,rax -$L$cmov0:: - add dl,al - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov1 - mov rax,rbx -$L$cmov1:: - add dl,bl - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov2 - mov rbx,rax -$L$cmov2:: - add dl,al - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov3 - mov rax,rbx -$L$cmov3:: - add dl,bl - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov4 - mov rbx,rax -$L$cmov4:: - add dl,al - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov5 - mov rax,rbx -$L$cmov5:: - add dl,bl - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov6 - mov rbx,rax -$L$cmov6:: - add dl,al - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov7 - mov rax,rbx -$L$cmov7:: - add dl,bl - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - lea r11,QWORD PTR[((-8))+r11] - mov DWORD PTR[r13],r8d - lea r12,QWORD PTR[8+r12] - mov DWORD PTR[4+r13],r9d - lea r13,QWORD PTR[8+r13] - - test r11,-8 - jnz $L$cloop8 - cmp r11,0 - jne $L$cloop1 - jmp $L$exit -ALIGN 16 -$L$cloop1:: - add cl,al - movzx ecx,cl - movzx edx,BYTE PTR[rcx*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - mov BYTE PTR[r10*1+rdi],dl - add dl,al - add r10b,1 - movzx edx,dl - movzx r10d,r10b - movzx edx,BYTE PTR[rdx*1+rdi] - movzx eax,BYTE PTR[r10*1+rdi] - xor dl,BYTE PTR[r12] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[r13],dl - lea r13,QWORD PTR[1+r13] - sub r11,1 - jnz $L$cloop1 - jmp $L$exit - -ALIGN 16 -$L$exit:: - sub r10b,1 - mov DWORD PTR[((-8))+rdi],r10d - mov DWORD PTR[((-4))+rdi],ecx - - mov r13,QWORD PTR[rsp] - mov r12,QWORD PTR[8+rsp] - mov rbx,QWORD PTR[16+rsp] - add rsp,24 -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_RC4:: -RC4 ENDP -PUBLIC private_RC4_set_key - -ALIGN 16 -private_RC4_set_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_RC4_set_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rdi,QWORD PTR[8+rdi] - lea rdx,QWORD PTR[rsi*1+rdx] - neg rsi - mov rcx,rsi - xor eax,eax - xor r9,r9 - xor r10,r10 - xor r11,r11 - - mov r8d,DWORD PTR[OPENSSL_ia32cap_P] - bt r8d,20 - jc $L$c1stloop - jmp $L$w1stloop - -ALIGN 16 -$L$w1stloop:: - mov DWORD PTR[rax*4+rdi],eax - add al,1 - jnc $L$w1stloop - - xor r9,r9 - xor r8,r8 -ALIGN 16 -$L$w2ndloop:: - mov r10d,DWORD PTR[r9*4+rdi] - add r8b,BYTE PTR[rsi*1+rdx] - add r8b,r10b - add rsi,1 - mov r11d,DWORD PTR[r8*4+rdi] - cmovz rsi,rcx - mov DWORD PTR[r8*4+rdi],r10d - mov DWORD PTR[r9*4+rdi],r11d - add r9b,1 - jnc $L$w2ndloop - jmp $L$exit_key - -ALIGN 16 -$L$c1stloop:: - mov BYTE PTR[rax*1+rdi],al - add al,1 - jnc $L$c1stloop - - xor r9,r9 - xor r8,r8 -ALIGN 16 -$L$c2ndloop:: - mov r10b,BYTE PTR[r9*1+rdi] - add r8b,BYTE PTR[rsi*1+rdx] - add r8b,r10b - add rsi,1 - mov r11b,BYTE PTR[r8*1+rdi] - jnz $L$cnowrap - mov rsi,rcx -$L$cnowrap:: - mov BYTE PTR[r8*1+rdi],r10b - mov BYTE PTR[r9*1+rdi],r11b - add r9b,1 - jnc $L$c2ndloop - mov DWORD PTR[256+rdi],-1 - -ALIGN 16 -$L$exit_key:: - xor eax,eax - mov DWORD PTR[((-8))+rdi],eax - mov DWORD PTR[((-4))+rdi],eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_RC4_set_key:: -private_RC4_set_key ENDP - -PUBLIC RC4_options - -ALIGN 16 -RC4_options PROC PUBLIC - lea rax,QWORD PTR[$L$opts] - mov edx,DWORD PTR[OPENSSL_ia32cap_P] - bt edx,20 - jc $L$8xchar - bt edx,30 - jnc $L$done - add rax,25 - DB 0F3h,0C3h ;repret -$L$8xchar:: - add rax,12 -$L$done:: - DB 0F3h,0C3h ;repret -ALIGN 64 -$L$opts:: -DB 114,99,52,40,56,120,44,105,110,116,41,0 -DB 114,99,52,40,56,120,44,99,104,97,114,41,0 -DB 114,99,52,40,49,54,120,44,105,110,116,41,0 -DB 82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 64 -RC4_options ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -stream_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[24+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov r12,QWORD PTR[((-16))+rax] - mov r13,QWORD PTR[((-24))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -stream_se_handler ENDP - - -ALIGN 16 -key_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -key_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_RC4 - DD imagerel $L$SEH_end_RC4 - DD imagerel $L$SEH_info_RC4 - - DD imagerel $L$SEH_begin_private_RC4_set_key - DD imagerel $L$SEH_end_private_RC4_set_key - DD imagerel $L$SEH_info_private_RC4_set_key - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_RC4:: -DB 9,0,0,0 - DD imagerel stream_se_handler -$L$SEH_info_private_RC4_set_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/sha/sha1-mb-x86_64.asm b/deps/openssl/asm/x64-win32-masm/sha/sha1-mb-x86_64.asm deleted file mode 100644 index fe49fbcadb0171..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/sha/sha1-mb-x86_64.asm +++ /dev/null @@ -1,7533 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha1_multi_block - -ALIGN 32 -sha1_multi_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rcx,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt rcx,61 - jc _shaext_shortcut - test ecx,268435456 - jnz _avx_shortcut - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body:: - lea rbp,QWORD PTR[K_XX_XX] - lea rbx,QWORD PTR[256+rsp] - -$L$oop_grande:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done - - movdqu xmm10,XMMWORD PTR[rdi] - lea rax,QWORD PTR[128+rsp] - movdqu xmm11,XMMWORD PTR[32+rdi] - movdqu xmm12,XMMWORD PTR[64+rdi] - movdqu xmm13,XMMWORD PTR[96+rdi] - movdqu xmm14,XMMWORD PTR[128+rdi] - movdqa xmm5,XMMWORD PTR[96+rbp] - movdqa xmm15,XMMWORD PTR[((-32))+rbp] - jmp $L$oop - -ALIGN 32 -$L$oop:: - movd xmm0,DWORD PTR[r8] - lea r8,QWORD PTR[64+r8] - movd xmm2,DWORD PTR[r9] - lea r9,QWORD PTR[64+r9] - movd xmm3,DWORD PTR[r10] - lea r10,QWORD PTR[64+r10] - movd xmm4,DWORD PTR[r11] - lea r11,QWORD PTR[64+r11] - punpckldq xmm0,xmm3 - movd xmm1,DWORD PTR[((-60))+r8] - punpckldq xmm2,xmm4 - movd xmm9,DWORD PTR[((-60))+r9] - punpckldq xmm0,xmm2 - movd xmm8,DWORD PTR[((-60))+r10] -DB 102,15,56,0,197 - movd xmm7,DWORD PTR[((-60))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(0-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-56))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-56))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-56))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-56))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(16-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-52))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-52))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-52))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-52))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(32-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-48))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-48))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-48))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-48))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(48-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-44))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-44))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-44))+r10] - por xmm13,xmm7 - movd xmm7,DWORD PTR[((-44))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(64-128)+rax],xmm4 - paddd xmm10,xmm4 - movd xmm1,DWORD PTR[((-40))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-40))+r9] - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - movd xmm8,DWORD PTR[((-40))+r10] - por xmm12,xmm7 - movd xmm7,DWORD PTR[((-40))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(80-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-36))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-36))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-36))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-36))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(96-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-32))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-32))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-32))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-32))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(112-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-28))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-28))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-28))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-28))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(128-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-24))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-24))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-24))+r10] - por xmm13,xmm7 - movd xmm7,DWORD PTR[((-24))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(144-128)+rax],xmm4 - paddd xmm10,xmm4 - movd xmm1,DWORD PTR[((-20))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-20))+r9] - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - movd xmm8,DWORD PTR[((-20))+r10] - por xmm12,xmm7 - movd xmm7,DWORD PTR[((-20))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(160-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-16))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-16))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-16))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-16))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(176-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-12))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-12))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-12))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-12))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(192-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-8))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-8))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-8))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-8))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(208-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-4))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-4))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-4))+r10] - por xmm13,xmm7 - movdqa xmm1,XMMWORD PTR[((0-128))+rax] - movd xmm7,DWORD PTR[((-4))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - prefetcht0 [63+r8] - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(224-128)+rax],xmm4 - paddd xmm10,xmm4 - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - prefetcht0 [63+r9] - - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm10,xmm6 - prefetcht0 [63+r10] - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - prefetcht0 [63+r11] - por xmm12,xmm7 - movdqa xmm2,XMMWORD PTR[((16-128))+rax] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm10 - pxor xmm1,XMMWORD PTR[((128-128))+rax] - paddd xmm14,xmm15 - movdqa xmm7,xmm11 - pslld xmm8,5 - pxor xmm1,xmm3 - movdqa xmm6,xmm11 - pandn xmm7,xmm13 - movdqa xmm5,xmm1 - pand xmm6,xmm12 - movdqa xmm9,xmm10 - psrld xmm5,31 - paddd xmm1,xmm1 - - movdqa XMMWORD PTR[(240-128)+rax],xmm0 - paddd xmm14,xmm0 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm11 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm14 - pxor xmm2,XMMWORD PTR[((144-128))+rax] - paddd xmm13,xmm15 - movdqa xmm7,xmm10 - pslld xmm8,5 - pxor xmm2,xmm4 - movdqa xmm6,xmm10 - pandn xmm7,xmm12 - movdqa xmm5,xmm2 - pand xmm6,xmm11 - movdqa xmm9,xmm14 - psrld xmm5,31 - paddd xmm2,xmm2 - - movdqa XMMWORD PTR[(0-128)+rax],xmm1 - paddd xmm13,xmm1 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm10 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm13 - pxor xmm3,XMMWORD PTR[((160-128))+rax] - paddd xmm12,xmm15 - movdqa xmm7,xmm14 - pslld xmm8,5 - pxor xmm3,xmm0 - movdqa xmm6,xmm14 - pandn xmm7,xmm11 - movdqa xmm5,xmm3 - pand xmm6,xmm10 - movdqa xmm9,xmm13 - psrld xmm5,31 - paddd xmm3,xmm3 - - movdqa XMMWORD PTR[(16-128)+rax],xmm2 - paddd xmm12,xmm2 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm14 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm12 - pxor xmm4,XMMWORD PTR[((176-128))+rax] - paddd xmm11,xmm15 - movdqa xmm7,xmm13 - pslld xmm8,5 - pxor xmm4,xmm1 - movdqa xmm6,xmm13 - pandn xmm7,xmm10 - movdqa xmm5,xmm4 - pand xmm6,xmm14 - movdqa xmm9,xmm12 - psrld xmm5,31 - paddd xmm4,xmm4 - - movdqa XMMWORD PTR[(32-128)+rax],xmm3 - paddd xmm11,xmm3 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm13 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm11 - pxor xmm0,XMMWORD PTR[((192-128))+rax] - paddd xmm10,xmm15 - movdqa xmm7,xmm12 - pslld xmm8,5 - pxor xmm0,xmm2 - movdqa xmm6,xmm12 - pandn xmm7,xmm14 - movdqa xmm5,xmm0 - pand xmm6,xmm13 - movdqa xmm9,xmm11 - psrld xmm5,31 - paddd xmm0,xmm0 - - movdqa XMMWORD PTR[(48-128)+rax],xmm4 - paddd xmm10,xmm4 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm12 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((208-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(64-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((224-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(80-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((240-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(96-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((0-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(112-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((16-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(128-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((32-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(144-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((48-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(160-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((64-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(176-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((80-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(192-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((96-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(208-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((112-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(224-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((128-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(240-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((144-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(0-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((160-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(16-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((176-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(32-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((192-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(48-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((208-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(64-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((224-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(80-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((240-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(96-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((0-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(112-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[32+rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((16-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(128-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((32-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(144-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((48-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(160-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((64-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(176-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((80-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(192-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((96-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(208-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((112-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(224-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((128-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(240-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((144-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(0-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((160-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(16-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((176-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(32-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((192-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(48-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((208-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(64-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((224-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(80-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((240-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(96-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((0-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(112-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((16-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(128-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((32-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(144-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((48-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(160-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((64-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(176-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[64+rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((80-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(192-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((96-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(208-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((112-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(224-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((128-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(240-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((144-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(0-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((160-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(16-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((176-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(32-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((192-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(48-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((208-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(64-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((224-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(80-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((240-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(96-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((0-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(112-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((16-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((32-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((48-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((64-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((80-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((96-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((112-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - movdqa xmm6,xmm14 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - paddd xmm10,xmm4 - psrld xmm9,27 - movdqa xmm7,xmm12 - pxor xmm6,xmm13 - - pslld xmm7,30 - por xmm8,xmm9 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm12,xmm7 - movdqa xmm0,XMMWORD PTR[rbx] - mov ecx,1 - cmp ecx,DWORD PTR[rbx] - pxor xmm8,xmm8 - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - movdqa xmm1,xmm0 - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - pcmpgtd xmm1,xmm8 - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - paddd xmm0,xmm1 - cmovge r11,rbp - - movdqu xmm6,XMMWORD PTR[rdi] - pand xmm10,xmm1 - movdqu xmm7,XMMWORD PTR[32+rdi] - pand xmm11,xmm1 - paddd xmm10,xmm6 - movdqu xmm8,XMMWORD PTR[64+rdi] - pand xmm12,xmm1 - paddd xmm11,xmm7 - movdqu xmm9,XMMWORD PTR[96+rdi] - pand xmm13,xmm1 - paddd xmm12,xmm8 - movdqu xmm5,XMMWORD PTR[128+rdi] - pand xmm14,xmm1 - movdqu XMMWORD PTR[rdi],xmm10 - paddd xmm13,xmm9 - movdqu XMMWORD PTR[32+rdi],xmm11 - paddd xmm14,xmm5 - movdqu XMMWORD PTR[64+rdi],xmm12 - movdqu XMMWORD PTR[96+rdi],xmm13 - movdqu XMMWORD PTR[128+rdi],xmm14 - - movdqa XMMWORD PTR[rbx],xmm0 - movdqa xmm5,XMMWORD PTR[96+rbp] - movdqa xmm15,XMMWORD PTR[((-32))+rbp] - dec edx - jnz $L$oop - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande - -$L$done:: - mov rax,QWORD PTR[272+rsp] - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block:: -sha1_multi_block ENDP - -ALIGN 32 -sha1_multi_block_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - shl edx,1 - and rsp,-256 - lea rdi,QWORD PTR[64+rdi] - mov QWORD PTR[272+rsp],rax -$L$body_shaext:: - lea rbx,QWORD PTR[256+rsp] - movdqa xmm3,XMMWORD PTR[((K_XX_XX+128))] - -$L$oop_grande_shaext:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rsp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rsp - test edx,edx - jz $L$done_shaext - - movq xmm0,QWORD PTR[((0-64))+rdi] - movq xmm4,QWORD PTR[((32-64))+rdi] - movq xmm5,QWORD PTR[((64-64))+rdi] - movq xmm6,QWORD PTR[((96-64))+rdi] - movq xmm7,QWORD PTR[((128-64))+rdi] - - punpckldq xmm0,xmm4 - punpckldq xmm5,xmm6 - - movdqa xmm8,xmm0 - punpcklqdq xmm0,xmm5 - punpckhqdq xmm8,xmm5 - - pshufd xmm1,xmm7,63 - pshufd xmm9,xmm7,127 - pshufd xmm0,xmm0,27 - pshufd xmm8,xmm8,27 - jmp $L$oop_shaext - -ALIGN 32 -$L$oop_shaext:: - movdqu xmm4,XMMWORD PTR[r8] - movdqu xmm11,XMMWORD PTR[r9] - movdqu xmm5,XMMWORD PTR[16+r8] - movdqu xmm12,XMMWORD PTR[16+r9] - movdqu xmm6,XMMWORD PTR[32+r8] -DB 102,15,56,0,227 - movdqu xmm13,XMMWORD PTR[32+r9] -DB 102,68,15,56,0,219 - movdqu xmm7,XMMWORD PTR[48+r8] - lea r8,QWORD PTR[64+r8] -DB 102,15,56,0,235 - movdqu xmm14,XMMWORD PTR[48+r9] - lea r9,QWORD PTR[64+r9] -DB 102,68,15,56,0,227 - - movdqa XMMWORD PTR[80+rsp],xmm1 - paddd xmm1,xmm4 - movdqa XMMWORD PTR[112+rsp],xmm9 - paddd xmm9,xmm11 - movdqa XMMWORD PTR[64+rsp],xmm0 - movdqa xmm2,xmm0 - movdqa XMMWORD PTR[96+rsp],xmm8 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,213 -DB 69,15,58,204,193,0 -DB 69,15,56,200,212 -DB 102,15,56,0,243 - prefetcht0 [127+r8] -DB 15,56,201,229 -DB 102,68,15,56,0,235 - prefetcht0 [127+r9] -DB 69,15,56,201,220 - -DB 102,15,56,0,251 - movdqa xmm1,xmm0 -DB 102,68,15,56,0,243 - movdqa xmm9,xmm8 -DB 15,58,204,194,0 -DB 15,56,200,206 -DB 69,15,58,204,194,0 -DB 69,15,56,200,205 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,215 -DB 69,15,58,204,193,0 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,0 -DB 15,56,200,204 -DB 69,15,58,204,194,0 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,213 -DB 69,15,58,204,193,0 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,206 -DB 69,15,58,204,194,1 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,1 -DB 15,56,200,215 -DB 69,15,58,204,193,1 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,204 -DB 69,15,58,204,194,1 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,1 -DB 15,56,200,213 -DB 69,15,58,204,193,1 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,206 -DB 69,15,58,204,194,1 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,215 -DB 69,15,58,204,193,2 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,2 -DB 15,56,200,204 -DB 69,15,58,204,194,2 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,213 -DB 69,15,58,204,193,2 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,2 -DB 15,56,200,206 -DB 69,15,58,204,194,2 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,215 -DB 69,15,58,204,193,2 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,204 -DB 69,15,58,204,194,3 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,3 -DB 15,56,200,213 -DB 69,15,58,204,193,3 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 - pxor xmm14,xmm12 - - mov ecx,1 - pxor xmm4,xmm4 - cmp ecx,DWORD PTR[rbx] - cmovge r8,rsp - - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,206 -DB 69,15,58,204,194,3 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rsp - movq xmm6,QWORD PTR[rbx] - - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,3 -DB 15,56,200,215 -DB 69,15,58,204,193,3 -DB 69,15,56,200,214 - - pshufd xmm11,xmm6,000h - pshufd xmm12,xmm6,055h - movdqa xmm7,xmm6 - pcmpgtd xmm11,xmm4 - pcmpgtd xmm12,xmm4 - - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,204 -DB 69,15,58,204,194,3 -DB 68,15,56,200,204 - - pcmpgtd xmm7,xmm4 - pand xmm0,xmm11 - pand xmm1,xmm11 - pand xmm8,xmm12 - pand xmm9,xmm12 - paddd xmm6,xmm7 - - paddd xmm0,XMMWORD PTR[64+rsp] - paddd xmm1,XMMWORD PTR[80+rsp] - paddd xmm8,XMMWORD PTR[96+rsp] - paddd xmm9,XMMWORD PTR[112+rsp] - - movq QWORD PTR[rbx],xmm6 - dec edx - jnz $L$oop_shaext - - mov edx,DWORD PTR[280+rsp] - - pshufd xmm0,xmm0,27 - pshufd xmm8,xmm8,27 - - movdqa xmm6,xmm0 - punpckldq xmm0,xmm8 - punpckhdq xmm6,xmm8 - punpckhdq xmm1,xmm9 - movq QWORD PTR[(0-64)+rdi],xmm0 - psrldq xmm0,8 - movq QWORD PTR[(64-64)+rdi],xmm6 - psrldq xmm6,8 - movq QWORD PTR[(32-64)+rdi],xmm0 - psrldq xmm1,8 - movq QWORD PTR[(96-64)+rdi],xmm6 - movq QWORD PTR[(128-64)+rdi],xmm1 - - lea rdi,QWORD PTR[8+rdi] - lea rsi,QWORD PTR[32+rsi] - dec edx - jnz $L$oop_grande_shaext - -$L$done_shaext:: - - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block_shaext:: -sha1_multi_block_shaext ENDP - -ALIGN 32 -sha1_multi_block_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx_shortcut:: - shr rcx,32 - cmp edx,2 - jb $L$avx - test ecx,32 - jnz _avx2_shortcut - jmp $L$avx -ALIGN 32 -$L$avx:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body_avx:: - lea rbp,QWORD PTR[K_XX_XX] - lea rbx,QWORD PTR[256+rsp] - - vzeroupper -$L$oop_grande_avx:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done_avx - - vmovdqu xmm10,XMMWORD PTR[rdi] - lea rax,QWORD PTR[128+rsp] - vmovdqu xmm11,XMMWORD PTR[32+rdi] - vmovdqu xmm12,XMMWORD PTR[64+rdi] - vmovdqu xmm13,XMMWORD PTR[96+rdi] - vmovdqu xmm14,XMMWORD PTR[128+rdi] - vmovdqu xmm5,XMMWORD PTR[96+rbp] - jmp $L$oop_avx - -ALIGN 32 -$L$oop_avx:: - vmovdqa xmm15,XMMWORD PTR[((-32))+rbp] - vmovd xmm0,DWORD PTR[r8] - lea r8,QWORD PTR[64+r8] - vmovd xmm2,DWORD PTR[r9] - lea r9,QWORD PTR[64+r9] - vpinsrd xmm0,xmm0,DWORD PTR[r10],1 - lea r10,QWORD PTR[64+r10] - vpinsrd xmm2,xmm2,DWORD PTR[r11],1 - lea r11,QWORD PTR[64+r11] - vmovd xmm1,DWORD PTR[((-60))+r8] - vpunpckldq xmm0,xmm0,xmm2 - vmovd xmm9,DWORD PTR[((-60))+r9] - vpshufb xmm0,xmm0,xmm5 - vpinsrd xmm1,xmm1,DWORD PTR[((-60))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-60))+r11],1 - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpandn xmm7,xmm11,xmm13 - vpand xmm6,xmm11,xmm12 - - vmovdqa XMMWORD PTR[(0-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpunpckldq xmm1,xmm1,xmm9 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm2,DWORD PTR[((-56))+r8] - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-56))+r9] - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpshufb xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpinsrd xmm2,xmm2,DWORD PTR[((-56))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-56))+r11],1 - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpandn xmm7,xmm10,xmm12 - vpand xmm6,xmm10,xmm11 - - vmovdqa XMMWORD PTR[(16-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpunpckldq xmm2,xmm2,xmm9 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm3,DWORD PTR[((-52))+r8] - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-52))+r9] - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpshufb xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpinsrd xmm3,xmm3,DWORD PTR[((-52))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-52))+r11],1 - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpandn xmm7,xmm14,xmm11 - vpand xmm6,xmm14,xmm10 - - vmovdqa XMMWORD PTR[(32-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpunpckldq xmm3,xmm3,xmm9 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm4,DWORD PTR[((-48))+r8] - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-48))+r9] - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpshufb xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpinsrd xmm4,xmm4,DWORD PTR[((-48))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-48))+r11],1 - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpandn xmm7,xmm13,xmm10 - vpand xmm6,xmm13,xmm14 - - vmovdqa XMMWORD PTR[(48-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpunpckldq xmm4,xmm4,xmm9 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm0,DWORD PTR[((-44))+r8] - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-44))+r9] - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpshufb xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpinsrd xmm0,xmm0,DWORD PTR[((-44))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-44))+r11],1 - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpandn xmm7,xmm12,xmm14 - vpand xmm6,xmm12,xmm13 - - vmovdqa XMMWORD PTR[(64-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpunpckldq xmm0,xmm0,xmm9 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm1,DWORD PTR[((-40))+r8] - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-40))+r9] - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpshufb xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpinsrd xmm1,xmm1,DWORD PTR[((-40))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-40))+r11],1 - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpandn xmm7,xmm11,xmm13 - vpand xmm6,xmm11,xmm12 - - vmovdqa XMMWORD PTR[(80-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpunpckldq xmm1,xmm1,xmm9 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm2,DWORD PTR[((-36))+r8] - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-36))+r9] - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpshufb xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpinsrd xmm2,xmm2,DWORD PTR[((-36))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-36))+r11],1 - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpandn xmm7,xmm10,xmm12 - vpand xmm6,xmm10,xmm11 - - vmovdqa XMMWORD PTR[(96-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpunpckldq xmm2,xmm2,xmm9 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm3,DWORD PTR[((-32))+r8] - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-32))+r9] - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpshufb xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpinsrd xmm3,xmm3,DWORD PTR[((-32))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-32))+r11],1 - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpandn xmm7,xmm14,xmm11 - vpand xmm6,xmm14,xmm10 - - vmovdqa XMMWORD PTR[(112-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpunpckldq xmm3,xmm3,xmm9 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm4,DWORD PTR[((-28))+r8] - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-28))+r9] - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpshufb xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpinsrd xmm4,xmm4,DWORD PTR[((-28))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-28))+r11],1 - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpandn xmm7,xmm13,xmm10 - vpand xmm6,xmm13,xmm14 - - vmovdqa XMMWORD PTR[(128-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpunpckldq xmm4,xmm4,xmm9 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm0,DWORD PTR[((-24))+r8] - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-24))+r9] - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpshufb xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpinsrd xmm0,xmm0,DWORD PTR[((-24))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-24))+r11],1 - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpandn xmm7,xmm12,xmm14 - vpand xmm6,xmm12,xmm13 - - vmovdqa XMMWORD PTR[(144-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpunpckldq xmm0,xmm0,xmm9 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm1,DWORD PTR[((-20))+r8] - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-20))+r9] - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpshufb xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpinsrd xmm1,xmm1,DWORD PTR[((-20))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-20))+r11],1 - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpandn xmm7,xmm11,xmm13 - vpand xmm6,xmm11,xmm12 - - vmovdqa XMMWORD PTR[(160-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpunpckldq xmm1,xmm1,xmm9 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm2,DWORD PTR[((-16))+r8] - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-16))+r9] - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpshufb xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpinsrd xmm2,xmm2,DWORD PTR[((-16))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-16))+r11],1 - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpandn xmm7,xmm10,xmm12 - vpand xmm6,xmm10,xmm11 - - vmovdqa XMMWORD PTR[(176-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpunpckldq xmm2,xmm2,xmm9 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm3,DWORD PTR[((-12))+r8] - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-12))+r9] - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpshufb xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpinsrd xmm3,xmm3,DWORD PTR[((-12))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-12))+r11],1 - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpandn xmm7,xmm14,xmm11 - vpand xmm6,xmm14,xmm10 - - vmovdqa XMMWORD PTR[(192-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpunpckldq xmm3,xmm3,xmm9 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm4,DWORD PTR[((-8))+r8] - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-8))+r9] - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpshufb xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpinsrd xmm4,xmm4,DWORD PTR[((-8))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-8))+r11],1 - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpandn xmm7,xmm13,xmm10 - vpand xmm6,xmm13,xmm14 - - vmovdqa XMMWORD PTR[(208-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpunpckldq xmm4,xmm4,xmm9 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm7 - vmovd xmm0,DWORD PTR[((-4))+r8] - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vmovd xmm9,DWORD PTR[((-4))+r9] - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpshufb xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vmovdqa xmm1,XMMWORD PTR[((0-128))+rax] - vpinsrd xmm0,xmm0,DWORD PTR[((-4))+r10],1 - vpinsrd xmm9,xmm9,DWORD PTR[((-4))+r11],1 - vpaddd xmm10,xmm10,xmm15 - prefetcht0 [63+r8] - vpslld xmm8,xmm11,5 - vpandn xmm7,xmm12,xmm14 - vpand xmm6,xmm12,xmm13 - - vmovdqa XMMWORD PTR[(224-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpunpckldq xmm0,xmm0,xmm9 - vpsrld xmm9,xmm11,27 - prefetcht0 [63+r9] - vpxor xmm6,xmm6,xmm7 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - prefetcht0 [63+r10] - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - prefetcht0 [63+r11] - vpshufb xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vmovdqa xmm2,XMMWORD PTR[((16-128))+rax] - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((32-128))+rax] - - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpandn xmm7,xmm11,xmm13 - - vpand xmm6,xmm11,xmm12 - - vmovdqa XMMWORD PTR[(240-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((128-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm7 - vpxor xmm1,xmm1,xmm3 - - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((48-128))+rax] - - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpandn xmm7,xmm10,xmm12 - - vpand xmm6,xmm10,xmm11 - - vmovdqa XMMWORD PTR[(0-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((144-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm7 - vpxor xmm2,xmm2,xmm4 - - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((64-128))+rax] - - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpandn xmm7,xmm14,xmm11 - - vpand xmm6,xmm14,xmm10 - - vmovdqa XMMWORD PTR[(16-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((160-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm7 - vpxor xmm3,xmm3,xmm0 - - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((80-128))+rax] - - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpandn xmm7,xmm13,xmm10 - - vpand xmm6,xmm13,xmm14 - - vmovdqa XMMWORD PTR[(32-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((176-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm7 - vpxor xmm4,xmm4,xmm1 - - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((96-128))+rax] - - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpandn xmm7,xmm12,xmm14 - - vpand xmm6,xmm12,xmm13 - - vmovdqa XMMWORD PTR[(48-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((192-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm7 - vpxor xmm0,xmm0,xmm2 - - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vmovdqa xmm15,XMMWORD PTR[rbp] - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((112-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(64-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((208-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((128-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(80-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((224-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((144-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(96-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((240-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((160-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(112-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((0-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((176-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(128-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((16-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((192-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(144-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((32-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((208-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(160-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((48-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((224-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(176-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((64-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((240-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(192-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((80-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((0-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(208-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((96-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((16-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(224-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((112-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((32-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(240-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((128-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((48-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(0-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((144-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((64-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(16-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((160-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((80-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(32-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((176-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((96-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(48-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((192-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((112-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(64-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((208-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((128-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(80-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((224-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((144-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(96-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((240-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((160-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(112-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((0-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vmovdqa xmm15,XMMWORD PTR[32+rbp] - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((176-128))+rax] - - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpand xmm7,xmm13,xmm12 - vpxor xmm1,xmm1,XMMWORD PTR[((16-128))+rax] - - vpaddd xmm14,xmm14,xmm7 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm13,xmm12 - vpxor xmm1,xmm1,xmm3 - - vmovdqu XMMWORD PTR[(128-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm1,31 - vpand xmm6,xmm6,xmm11 - vpaddd xmm1,xmm1,xmm1 - - vpslld xmm7,xmm11,30 - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((192-128))+rax] - - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpand xmm7,xmm12,xmm11 - vpxor xmm2,xmm2,XMMWORD PTR[((32-128))+rax] - - vpaddd xmm13,xmm13,xmm7 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm12,xmm11 - vpxor xmm2,xmm2,xmm4 - - vmovdqu XMMWORD PTR[(144-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm2,31 - vpand xmm6,xmm6,xmm10 - vpaddd xmm2,xmm2,xmm2 - - vpslld xmm7,xmm10,30 - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((208-128))+rax] - - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpand xmm7,xmm11,xmm10 - vpxor xmm3,xmm3,XMMWORD PTR[((48-128))+rax] - - vpaddd xmm12,xmm12,xmm7 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm11,xmm10 - vpxor xmm3,xmm3,xmm0 - - vmovdqu XMMWORD PTR[(160-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm3,31 - vpand xmm6,xmm6,xmm14 - vpaddd xmm3,xmm3,xmm3 - - vpslld xmm7,xmm14,30 - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((224-128))+rax] - - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpand xmm7,xmm10,xmm14 - vpxor xmm4,xmm4,XMMWORD PTR[((64-128))+rax] - - vpaddd xmm11,xmm11,xmm7 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm10,xmm14 - vpxor xmm4,xmm4,xmm1 - - vmovdqu XMMWORD PTR[(176-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm4,31 - vpand xmm6,xmm6,xmm13 - vpaddd xmm4,xmm4,xmm4 - - vpslld xmm7,xmm13,30 - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((240-128))+rax] - - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpand xmm7,xmm14,xmm13 - vpxor xmm0,xmm0,XMMWORD PTR[((80-128))+rax] - - vpaddd xmm10,xmm10,xmm7 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm14,xmm13 - vpxor xmm0,xmm0,xmm2 - - vmovdqu XMMWORD PTR[(192-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm0,31 - vpand xmm6,xmm6,xmm12 - vpaddd xmm0,xmm0,xmm0 - - vpslld xmm7,xmm12,30 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((0-128))+rax] - - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpand xmm7,xmm13,xmm12 - vpxor xmm1,xmm1,XMMWORD PTR[((96-128))+rax] - - vpaddd xmm14,xmm14,xmm7 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm13,xmm12 - vpxor xmm1,xmm1,xmm3 - - vmovdqu XMMWORD PTR[(208-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm1,31 - vpand xmm6,xmm6,xmm11 - vpaddd xmm1,xmm1,xmm1 - - vpslld xmm7,xmm11,30 - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((16-128))+rax] - - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpand xmm7,xmm12,xmm11 - vpxor xmm2,xmm2,XMMWORD PTR[((112-128))+rax] - - vpaddd xmm13,xmm13,xmm7 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm12,xmm11 - vpxor xmm2,xmm2,xmm4 - - vmovdqu XMMWORD PTR[(224-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm2,31 - vpand xmm6,xmm6,xmm10 - vpaddd xmm2,xmm2,xmm2 - - vpslld xmm7,xmm10,30 - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((32-128))+rax] - - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpand xmm7,xmm11,xmm10 - vpxor xmm3,xmm3,XMMWORD PTR[((128-128))+rax] - - vpaddd xmm12,xmm12,xmm7 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm11,xmm10 - vpxor xmm3,xmm3,xmm0 - - vmovdqu XMMWORD PTR[(240-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm3,31 - vpand xmm6,xmm6,xmm14 - vpaddd xmm3,xmm3,xmm3 - - vpslld xmm7,xmm14,30 - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((48-128))+rax] - - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpand xmm7,xmm10,xmm14 - vpxor xmm4,xmm4,XMMWORD PTR[((144-128))+rax] - - vpaddd xmm11,xmm11,xmm7 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm10,xmm14 - vpxor xmm4,xmm4,xmm1 - - vmovdqu XMMWORD PTR[(0-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm4,31 - vpand xmm6,xmm6,xmm13 - vpaddd xmm4,xmm4,xmm4 - - vpslld xmm7,xmm13,30 - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((64-128))+rax] - - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpand xmm7,xmm14,xmm13 - vpxor xmm0,xmm0,XMMWORD PTR[((160-128))+rax] - - vpaddd xmm10,xmm10,xmm7 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm14,xmm13 - vpxor xmm0,xmm0,xmm2 - - vmovdqu XMMWORD PTR[(16-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm0,31 - vpand xmm6,xmm6,xmm12 - vpaddd xmm0,xmm0,xmm0 - - vpslld xmm7,xmm12,30 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((80-128))+rax] - - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpand xmm7,xmm13,xmm12 - vpxor xmm1,xmm1,XMMWORD PTR[((176-128))+rax] - - vpaddd xmm14,xmm14,xmm7 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm13,xmm12 - vpxor xmm1,xmm1,xmm3 - - vmovdqu XMMWORD PTR[(32-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm1,31 - vpand xmm6,xmm6,xmm11 - vpaddd xmm1,xmm1,xmm1 - - vpslld xmm7,xmm11,30 - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((96-128))+rax] - - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpand xmm7,xmm12,xmm11 - vpxor xmm2,xmm2,XMMWORD PTR[((192-128))+rax] - - vpaddd xmm13,xmm13,xmm7 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm12,xmm11 - vpxor xmm2,xmm2,xmm4 - - vmovdqu XMMWORD PTR[(48-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm2,31 - vpand xmm6,xmm6,xmm10 - vpaddd xmm2,xmm2,xmm2 - - vpslld xmm7,xmm10,30 - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((112-128))+rax] - - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpand xmm7,xmm11,xmm10 - vpxor xmm3,xmm3,XMMWORD PTR[((208-128))+rax] - - vpaddd xmm12,xmm12,xmm7 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm11,xmm10 - vpxor xmm3,xmm3,xmm0 - - vmovdqu XMMWORD PTR[(64-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm3,31 - vpand xmm6,xmm6,xmm14 - vpaddd xmm3,xmm3,xmm3 - - vpslld xmm7,xmm14,30 - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((128-128))+rax] - - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpand xmm7,xmm10,xmm14 - vpxor xmm4,xmm4,XMMWORD PTR[((224-128))+rax] - - vpaddd xmm11,xmm11,xmm7 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm10,xmm14 - vpxor xmm4,xmm4,xmm1 - - vmovdqu XMMWORD PTR[(80-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm4,31 - vpand xmm6,xmm6,xmm13 - vpaddd xmm4,xmm4,xmm4 - - vpslld xmm7,xmm13,30 - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((144-128))+rax] - - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpand xmm7,xmm14,xmm13 - vpxor xmm0,xmm0,XMMWORD PTR[((240-128))+rax] - - vpaddd xmm10,xmm10,xmm7 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm14,xmm13 - vpxor xmm0,xmm0,xmm2 - - vmovdqu XMMWORD PTR[(96-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm0,31 - vpand xmm6,xmm6,xmm12 - vpaddd xmm0,xmm0,xmm0 - - vpslld xmm7,xmm12,30 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((160-128))+rax] - - vpaddd xmm14,xmm14,xmm15 - vpslld xmm8,xmm10,5 - vpand xmm7,xmm13,xmm12 - vpxor xmm1,xmm1,XMMWORD PTR[((0-128))+rax] - - vpaddd xmm14,xmm14,xmm7 - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm13,xmm12 - vpxor xmm1,xmm1,xmm3 - - vmovdqu XMMWORD PTR[(112-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm1,31 - vpand xmm6,xmm6,xmm11 - vpaddd xmm1,xmm1,xmm1 - - vpslld xmm7,xmm11,30 - vpaddd xmm14,xmm14,xmm6 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((176-128))+rax] - - vpaddd xmm13,xmm13,xmm15 - vpslld xmm8,xmm14,5 - vpand xmm7,xmm12,xmm11 - vpxor xmm2,xmm2,XMMWORD PTR[((16-128))+rax] - - vpaddd xmm13,xmm13,xmm7 - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm12,xmm11 - vpxor xmm2,xmm2,xmm4 - - vmovdqu XMMWORD PTR[(128-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm2,31 - vpand xmm6,xmm6,xmm10 - vpaddd xmm2,xmm2,xmm2 - - vpslld xmm7,xmm10,30 - vpaddd xmm13,xmm13,xmm6 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((192-128))+rax] - - vpaddd xmm12,xmm12,xmm15 - vpslld xmm8,xmm13,5 - vpand xmm7,xmm11,xmm10 - vpxor xmm3,xmm3,XMMWORD PTR[((32-128))+rax] - - vpaddd xmm12,xmm12,xmm7 - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm11,xmm10 - vpxor xmm3,xmm3,xmm0 - - vmovdqu XMMWORD PTR[(144-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm3,31 - vpand xmm6,xmm6,xmm14 - vpaddd xmm3,xmm3,xmm3 - - vpslld xmm7,xmm14,30 - vpaddd xmm12,xmm12,xmm6 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((208-128))+rax] - - vpaddd xmm11,xmm11,xmm15 - vpslld xmm8,xmm12,5 - vpand xmm7,xmm10,xmm14 - vpxor xmm4,xmm4,XMMWORD PTR[((48-128))+rax] - - vpaddd xmm11,xmm11,xmm7 - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm10,xmm14 - vpxor xmm4,xmm4,xmm1 - - vmovdqu XMMWORD PTR[(160-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm4,31 - vpand xmm6,xmm6,xmm13 - vpaddd xmm4,xmm4,xmm4 - - vpslld xmm7,xmm13,30 - vpaddd xmm11,xmm11,xmm6 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((224-128))+rax] - - vpaddd xmm10,xmm10,xmm15 - vpslld xmm8,xmm11,5 - vpand xmm7,xmm14,xmm13 - vpxor xmm0,xmm0,XMMWORD PTR[((64-128))+rax] - - vpaddd xmm10,xmm10,xmm7 - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm14,xmm13 - vpxor xmm0,xmm0,xmm2 - - vmovdqu XMMWORD PTR[(176-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpor xmm8,xmm8,xmm9 - vpsrld xmm5,xmm0,31 - vpand xmm6,xmm6,xmm12 - vpaddd xmm0,xmm0,xmm0 - - vpslld xmm7,xmm12,30 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vmovdqa xmm15,XMMWORD PTR[64+rbp] - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((240-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(192-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((80-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((0-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(208-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((96-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((16-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(224-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((112-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((32-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(240-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((128-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((48-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(0-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((144-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((64-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(16-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((160-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((80-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(32-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((176-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((96-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vmovdqa XMMWORD PTR[(48-128)+rax],xmm2 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((192-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((112-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vmovdqa XMMWORD PTR[(64-128)+rax],xmm3 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((208-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((128-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vmovdqa XMMWORD PTR[(80-128)+rax],xmm4 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((224-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((144-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vmovdqa XMMWORD PTR[(96-128)+rax],xmm0 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((240-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((160-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vmovdqa XMMWORD PTR[(112-128)+rax],xmm1 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((0-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((176-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((16-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((192-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((32-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpxor xmm0,xmm0,xmm2 - vmovdqa xmm2,XMMWORD PTR[((208-128))+rax] - - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm0,xmm0,XMMWORD PTR[((48-128))+rax] - vpsrld xmm9,xmm11,27 - vpxor xmm6,xmm6,xmm13 - vpxor xmm0,xmm0,xmm2 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - vpsrld xmm5,xmm0,31 - vpaddd xmm0,xmm0,xmm0 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm0,xmm0,xmm5 - vpor xmm12,xmm12,xmm7 - vpxor xmm1,xmm1,xmm3 - vmovdqa xmm3,XMMWORD PTR[((224-128))+rax] - - vpslld xmm8,xmm10,5 - vpaddd xmm14,xmm14,xmm15 - vpxor xmm6,xmm13,xmm11 - vpaddd xmm14,xmm14,xmm0 - vpxor xmm1,xmm1,XMMWORD PTR[((64-128))+rax] - vpsrld xmm9,xmm10,27 - vpxor xmm6,xmm6,xmm12 - vpxor xmm1,xmm1,xmm3 - - vpslld xmm7,xmm11,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm14,xmm14,xmm6 - vpsrld xmm5,xmm1,31 - vpaddd xmm1,xmm1,xmm1 - - vpsrld xmm11,xmm11,2 - vpaddd xmm14,xmm14,xmm8 - vpor xmm1,xmm1,xmm5 - vpor xmm11,xmm11,xmm7 - vpxor xmm2,xmm2,xmm4 - vmovdqa xmm4,XMMWORD PTR[((240-128))+rax] - - vpslld xmm8,xmm14,5 - vpaddd xmm13,xmm13,xmm15 - vpxor xmm6,xmm12,xmm10 - vpaddd xmm13,xmm13,xmm1 - vpxor xmm2,xmm2,XMMWORD PTR[((80-128))+rax] - vpsrld xmm9,xmm14,27 - vpxor xmm6,xmm6,xmm11 - vpxor xmm2,xmm2,xmm4 - - vpslld xmm7,xmm10,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm13,xmm13,xmm6 - vpsrld xmm5,xmm2,31 - vpaddd xmm2,xmm2,xmm2 - - vpsrld xmm10,xmm10,2 - vpaddd xmm13,xmm13,xmm8 - vpor xmm2,xmm2,xmm5 - vpor xmm10,xmm10,xmm7 - vpxor xmm3,xmm3,xmm0 - vmovdqa xmm0,XMMWORD PTR[((0-128))+rax] - - vpslld xmm8,xmm13,5 - vpaddd xmm12,xmm12,xmm15 - vpxor xmm6,xmm11,xmm14 - vpaddd xmm12,xmm12,xmm2 - vpxor xmm3,xmm3,XMMWORD PTR[((96-128))+rax] - vpsrld xmm9,xmm13,27 - vpxor xmm6,xmm6,xmm10 - vpxor xmm3,xmm3,xmm0 - - vpslld xmm7,xmm14,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm12,xmm12,xmm6 - vpsrld xmm5,xmm3,31 - vpaddd xmm3,xmm3,xmm3 - - vpsrld xmm14,xmm14,2 - vpaddd xmm12,xmm12,xmm8 - vpor xmm3,xmm3,xmm5 - vpor xmm14,xmm14,xmm7 - vpxor xmm4,xmm4,xmm1 - vmovdqa xmm1,XMMWORD PTR[((16-128))+rax] - - vpslld xmm8,xmm12,5 - vpaddd xmm11,xmm11,xmm15 - vpxor xmm6,xmm10,xmm13 - vpaddd xmm11,xmm11,xmm3 - vpxor xmm4,xmm4,XMMWORD PTR[((112-128))+rax] - vpsrld xmm9,xmm12,27 - vpxor xmm6,xmm6,xmm14 - vpxor xmm4,xmm4,xmm1 - - vpslld xmm7,xmm13,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm11,xmm11,xmm6 - vpsrld xmm5,xmm4,31 - vpaddd xmm4,xmm4,xmm4 - - vpsrld xmm13,xmm13,2 - vpaddd xmm11,xmm11,xmm8 - vpor xmm4,xmm4,xmm5 - vpor xmm13,xmm13,xmm7 - vpslld xmm8,xmm11,5 - vpaddd xmm10,xmm10,xmm15 - vpxor xmm6,xmm14,xmm12 - - vpsrld xmm9,xmm11,27 - vpaddd xmm10,xmm10,xmm4 - vpxor xmm6,xmm6,xmm13 - - vpslld xmm7,xmm12,30 - vpor xmm8,xmm8,xmm9 - vpaddd xmm10,xmm10,xmm6 - - vpsrld xmm12,xmm12,2 - vpaddd xmm10,xmm10,xmm8 - vpor xmm12,xmm12,xmm7 - mov ecx,1 - cmp ecx,DWORD PTR[rbx] - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - cmovge r11,rbp - vmovdqu xmm6,XMMWORD PTR[rbx] - vpxor xmm8,xmm8,xmm8 - vmovdqa xmm7,xmm6 - vpcmpgtd xmm7,xmm7,xmm8 - vpaddd xmm6,xmm6,xmm7 - - vpand xmm10,xmm10,xmm7 - vpand xmm11,xmm11,xmm7 - vpaddd xmm10,xmm10,XMMWORD PTR[rdi] - vpand xmm12,xmm12,xmm7 - vpaddd xmm11,xmm11,XMMWORD PTR[32+rdi] - vpand xmm13,xmm13,xmm7 - vpaddd xmm12,xmm12,XMMWORD PTR[64+rdi] - vpand xmm14,xmm14,xmm7 - vpaddd xmm13,xmm13,XMMWORD PTR[96+rdi] - vpaddd xmm14,xmm14,XMMWORD PTR[128+rdi] - vmovdqu XMMWORD PTR[rdi],xmm10 - vmovdqu XMMWORD PTR[32+rdi],xmm11 - vmovdqu XMMWORD PTR[64+rdi],xmm12 - vmovdqu XMMWORD PTR[96+rdi],xmm13 - vmovdqu XMMWORD PTR[128+rdi],xmm14 - - vmovdqu XMMWORD PTR[rbx],xmm6 - vmovdqu xmm5,XMMWORD PTR[96+rbp] - dec edx - jnz $L$oop_avx - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande_avx - -$L$done_avx:: - mov rax,QWORD PTR[272+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block_avx:: -sha1_multi_block_avx ENDP - -ALIGN 32 -sha1_multi_block_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx2_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - sub rsp,576 - and rsp,-256 - mov QWORD PTR[544+rsp],rax -$L$body_avx2:: - lea rbp,QWORD PTR[K_XX_XX] - shr edx,1 - - vzeroupper -$L$oop_grande_avx2:: - mov DWORD PTR[552+rsp],edx - xor edx,edx - lea rbx,QWORD PTR[512+rsp] - mov r12,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r12,rbp - mov r13,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r13,rbp - mov r14,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r14,rbp - mov r15,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r15,rbp - mov r8,QWORD PTR[64+rsi] - mov ecx,DWORD PTR[72+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[16+rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[80+rsi] - mov ecx,DWORD PTR[88+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[20+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[96+rsi] - mov ecx,DWORD PTR[104+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[24+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[112+rsi] - mov ecx,DWORD PTR[120+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[28+rbx],ecx - cmovle r11,rbp - vmovdqu ymm0,YMMWORD PTR[rdi] - lea rax,QWORD PTR[128+rsp] - vmovdqu ymm1,YMMWORD PTR[32+rdi] - lea rbx,QWORD PTR[((256+128))+rsp] - vmovdqu ymm2,YMMWORD PTR[64+rdi] - vmovdqu ymm3,YMMWORD PTR[96+rdi] - vmovdqu ymm4,YMMWORD PTR[128+rdi] - vmovdqu ymm9,YMMWORD PTR[96+rbp] - jmp $L$oop_avx2 - -ALIGN 32 -$L$oop_avx2:: - vmovdqa ymm15,YMMWORD PTR[((-32))+rbp] - vmovd xmm10,DWORD PTR[r12] - lea r12,QWORD PTR[64+r12] - vmovd xmm12,DWORD PTR[r8] - lea r8,QWORD PTR[64+r8] - vmovd xmm7,DWORD PTR[r13] - lea r13,QWORD PTR[64+r13] - vmovd xmm6,DWORD PTR[r9] - lea r9,QWORD PTR[64+r9] - vpinsrd xmm10,xmm10,DWORD PTR[r14],1 - lea r14,QWORD PTR[64+r14] - vpinsrd xmm12,xmm12,DWORD PTR[r10],1 - lea r10,QWORD PTR[64+r10] - vpinsrd xmm7,xmm7,DWORD PTR[r15],1 - lea r15,QWORD PTR[64+r15] - vpunpckldq ymm10,ymm10,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[r11],1 - lea r11,QWORD PTR[64+r11] - vpunpckldq ymm12,ymm12,ymm6 - vmovd xmm11,DWORD PTR[((-60))+r12] - vinserti128 ymm10,ymm10,xmm12,1 - vmovd xmm8,DWORD PTR[((-60))+r8] - vpshufb ymm10,ymm10,ymm9 - vmovd xmm7,DWORD PTR[((-60))+r13] - vmovd xmm6,DWORD PTR[((-60))+r9] - vpinsrd xmm11,xmm11,DWORD PTR[((-60))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-60))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-60))+r15],1 - vpunpckldq ymm11,ymm11,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-60))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpandn ymm6,ymm1,ymm3 - vpand ymm5,ymm1,ymm2 - - vmovdqa YMMWORD PTR[(0-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vinserti128 ymm11,ymm11,xmm8,1 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm12,DWORD PTR[((-56))+r12] - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-56))+r8] - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpshufb ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vmovd xmm7,DWORD PTR[((-56))+r13] - vmovd xmm6,DWORD PTR[((-56))+r9] - vpinsrd xmm12,xmm12,DWORD PTR[((-56))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-56))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-56))+r15],1 - vpunpckldq ymm12,ymm12,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-56))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpandn ymm6,ymm0,ymm2 - vpand ymm5,ymm0,ymm1 - - vmovdqa YMMWORD PTR[(32-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vinserti128 ymm12,ymm12,xmm8,1 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm13,DWORD PTR[((-52))+r12] - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-52))+r8] - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpshufb ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vmovd xmm7,DWORD PTR[((-52))+r13] - vmovd xmm6,DWORD PTR[((-52))+r9] - vpinsrd xmm13,xmm13,DWORD PTR[((-52))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-52))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-52))+r15],1 - vpunpckldq ymm13,ymm13,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-52))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpandn ymm6,ymm4,ymm1 - vpand ymm5,ymm4,ymm0 - - vmovdqa YMMWORD PTR[(64-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vinserti128 ymm13,ymm13,xmm8,1 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm14,DWORD PTR[((-48))+r12] - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-48))+r8] - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpshufb ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vmovd xmm7,DWORD PTR[((-48))+r13] - vmovd xmm6,DWORD PTR[((-48))+r9] - vpinsrd xmm14,xmm14,DWORD PTR[((-48))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-48))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-48))+r15],1 - vpunpckldq ymm14,ymm14,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-48))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpandn ymm6,ymm3,ymm0 - vpand ymm5,ymm3,ymm4 - - vmovdqa YMMWORD PTR[(96-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vinserti128 ymm14,ymm14,xmm8,1 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm10,DWORD PTR[((-44))+r12] - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-44))+r8] - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpshufb ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vmovd xmm7,DWORD PTR[((-44))+r13] - vmovd xmm6,DWORD PTR[((-44))+r9] - vpinsrd xmm10,xmm10,DWORD PTR[((-44))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-44))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-44))+r15],1 - vpunpckldq ymm10,ymm10,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-44))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpandn ymm6,ymm2,ymm4 - vpand ymm5,ymm2,ymm3 - - vmovdqa YMMWORD PTR[(128-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vinserti128 ymm10,ymm10,xmm8,1 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm11,DWORD PTR[((-40))+r12] - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-40))+r8] - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpshufb ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovd xmm7,DWORD PTR[((-40))+r13] - vmovd xmm6,DWORD PTR[((-40))+r9] - vpinsrd xmm11,xmm11,DWORD PTR[((-40))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-40))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-40))+r15],1 - vpunpckldq ymm11,ymm11,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-40))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpandn ymm6,ymm1,ymm3 - vpand ymm5,ymm1,ymm2 - - vmovdqa YMMWORD PTR[(160-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vinserti128 ymm11,ymm11,xmm8,1 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm12,DWORD PTR[((-36))+r12] - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-36))+r8] - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpshufb ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vmovd xmm7,DWORD PTR[((-36))+r13] - vmovd xmm6,DWORD PTR[((-36))+r9] - vpinsrd xmm12,xmm12,DWORD PTR[((-36))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-36))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-36))+r15],1 - vpunpckldq ymm12,ymm12,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-36))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpandn ymm6,ymm0,ymm2 - vpand ymm5,ymm0,ymm1 - - vmovdqa YMMWORD PTR[(192-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vinserti128 ymm12,ymm12,xmm8,1 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm13,DWORD PTR[((-32))+r12] - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-32))+r8] - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpshufb ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vmovd xmm7,DWORD PTR[((-32))+r13] - vmovd xmm6,DWORD PTR[((-32))+r9] - vpinsrd xmm13,xmm13,DWORD PTR[((-32))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-32))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-32))+r15],1 - vpunpckldq ymm13,ymm13,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-32))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpandn ymm6,ymm4,ymm1 - vpand ymm5,ymm4,ymm0 - - vmovdqa YMMWORD PTR[(224-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vinserti128 ymm13,ymm13,xmm8,1 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm14,DWORD PTR[((-28))+r12] - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-28))+r8] - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpshufb ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vmovd xmm7,DWORD PTR[((-28))+r13] - vmovd xmm6,DWORD PTR[((-28))+r9] - vpinsrd xmm14,xmm14,DWORD PTR[((-28))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-28))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-28))+r15],1 - vpunpckldq ymm14,ymm14,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-28))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpandn ymm6,ymm3,ymm0 - vpand ymm5,ymm3,ymm4 - - vmovdqa YMMWORD PTR[(256-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vinserti128 ymm14,ymm14,xmm8,1 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm10,DWORD PTR[((-24))+r12] - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-24))+r8] - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpshufb ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vmovd xmm7,DWORD PTR[((-24))+r13] - vmovd xmm6,DWORD PTR[((-24))+r9] - vpinsrd xmm10,xmm10,DWORD PTR[((-24))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-24))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-24))+r15],1 - vpunpckldq ymm10,ymm10,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-24))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpandn ymm6,ymm2,ymm4 - vpand ymm5,ymm2,ymm3 - - vmovdqa YMMWORD PTR[(288-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vinserti128 ymm10,ymm10,xmm8,1 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm11,DWORD PTR[((-20))+r12] - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-20))+r8] - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpshufb ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovd xmm7,DWORD PTR[((-20))+r13] - vmovd xmm6,DWORD PTR[((-20))+r9] - vpinsrd xmm11,xmm11,DWORD PTR[((-20))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-20))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-20))+r15],1 - vpunpckldq ymm11,ymm11,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-20))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpandn ymm6,ymm1,ymm3 - vpand ymm5,ymm1,ymm2 - - vmovdqa YMMWORD PTR[(320-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vinserti128 ymm11,ymm11,xmm8,1 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm12,DWORD PTR[((-16))+r12] - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-16))+r8] - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpshufb ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vmovd xmm7,DWORD PTR[((-16))+r13] - vmovd xmm6,DWORD PTR[((-16))+r9] - vpinsrd xmm12,xmm12,DWORD PTR[((-16))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-16))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-16))+r15],1 - vpunpckldq ymm12,ymm12,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-16))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpandn ymm6,ymm0,ymm2 - vpand ymm5,ymm0,ymm1 - - vmovdqa YMMWORD PTR[(352-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vinserti128 ymm12,ymm12,xmm8,1 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm13,DWORD PTR[((-12))+r12] - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-12))+r8] - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpshufb ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vmovd xmm7,DWORD PTR[((-12))+r13] - vmovd xmm6,DWORD PTR[((-12))+r9] - vpinsrd xmm13,xmm13,DWORD PTR[((-12))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-12))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-12))+r15],1 - vpunpckldq ymm13,ymm13,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-12))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpandn ymm6,ymm4,ymm1 - vpand ymm5,ymm4,ymm0 - - vmovdqa YMMWORD PTR[(384-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vinserti128 ymm13,ymm13,xmm8,1 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm14,DWORD PTR[((-8))+r12] - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-8))+r8] - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpshufb ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vmovd xmm7,DWORD PTR[((-8))+r13] - vmovd xmm6,DWORD PTR[((-8))+r9] - vpinsrd xmm14,xmm14,DWORD PTR[((-8))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-8))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-8))+r15],1 - vpunpckldq ymm14,ymm14,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-8))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpandn ymm6,ymm3,ymm0 - vpand ymm5,ymm3,ymm4 - - vmovdqa YMMWORD PTR[(416-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vinserti128 ymm14,ymm14,xmm8,1 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm6 - vmovd xmm10,DWORD PTR[((-4))+r12] - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vmovd xmm8,DWORD PTR[((-4))+r8] - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpshufb ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vmovdqa ymm11,YMMWORD PTR[((0-128))+rax] - vmovd xmm7,DWORD PTR[((-4))+r13] - vmovd xmm6,DWORD PTR[((-4))+r9] - vpinsrd xmm10,xmm10,DWORD PTR[((-4))+r14],1 - vpinsrd xmm8,xmm8,DWORD PTR[((-4))+r10],1 - vpinsrd xmm7,xmm7,DWORD PTR[((-4))+r15],1 - vpunpckldq ymm10,ymm10,ymm7 - vpinsrd xmm6,xmm6,DWORD PTR[((-4))+r11],1 - vpunpckldq ymm8,ymm8,ymm6 - vpaddd ymm0,ymm0,ymm15 - prefetcht0 [63+r12] - vpslld ymm7,ymm1,5 - vpandn ymm6,ymm2,ymm4 - vpand ymm5,ymm2,ymm3 - - vmovdqa YMMWORD PTR[(448-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vinserti128 ymm10,ymm10,xmm8,1 - vpsrld ymm8,ymm1,27 - prefetcht0 [63+r13] - vpxor ymm5,ymm5,ymm6 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - prefetcht0 [63+r14] - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - prefetcht0 [63+r15] - vpshufb ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovdqa ymm12,YMMWORD PTR[((32-128))+rax] - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((64-128))+rax] - - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpandn ymm6,ymm1,ymm3 - prefetcht0 [63+r8] - vpand ymm5,ymm1,ymm2 - - vmovdqa YMMWORD PTR[(480-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((256-256-128))+rbx] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm6 - vpxor ymm11,ymm11,ymm13 - prefetcht0 [63+r9] - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - prefetcht0 [63+r10] - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - prefetcht0 [63+r11] - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((96-128))+rax] - - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpandn ymm6,ymm0,ymm2 - - vpand ymm5,ymm0,ymm1 - - vmovdqa YMMWORD PTR[(0-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((288-256-128))+rbx] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm6 - vpxor ymm12,ymm12,ymm14 - - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((128-128))+rax] - - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpandn ymm6,ymm4,ymm1 - - vpand ymm5,ymm4,ymm0 - - vmovdqa YMMWORD PTR[(32-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((320-256-128))+rbx] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm6 - vpxor ymm13,ymm13,ymm10 - - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((160-128))+rax] - - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpandn ymm6,ymm3,ymm0 - - vpand ymm5,ymm3,ymm4 - - vmovdqa YMMWORD PTR[(64-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((352-256-128))+rbx] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm6 - vpxor ymm14,ymm14,ymm11 - - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((192-128))+rax] - - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpandn ymm6,ymm2,ymm4 - - vpand ymm5,ymm2,ymm3 - - vmovdqa YMMWORD PTR[(96-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((384-256-128))+rbx] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm6 - vpxor ymm10,ymm10,ymm12 - - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovdqa ymm15,YMMWORD PTR[rbp] - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((224-128))+rax] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(128-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((416-256-128))+rbx] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((256-256-128))+rbx] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(160-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((448-256-128))+rbx] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((288-256-128))+rbx] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(192-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((480-256-128))+rbx] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((320-256-128))+rbx] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(224-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((0-128))+rax] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((352-256-128))+rbx] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(256-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((32-128))+rax] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((384-256-128))+rbx] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(288-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((64-128))+rax] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((416-256-128))+rbx] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(320-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((96-128))+rax] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((448-256-128))+rbx] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(352-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((128-128))+rax] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((480-256-128))+rbx] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(384-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((160-128))+rax] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((0-128))+rax] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(416-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((192-128))+rax] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((32-128))+rax] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(448-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((224-128))+rax] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((64-128))+rax] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(480-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((256-256-128))+rbx] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((96-128))+rax] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(0-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((288-256-128))+rbx] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((128-128))+rax] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(32-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((320-256-128))+rbx] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((160-128))+rax] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(64-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((352-256-128))+rbx] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((192-128))+rax] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(96-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((384-256-128))+rbx] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((224-128))+rax] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(128-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((416-256-128))+rbx] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((256-256-128))+rbx] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(160-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((448-256-128))+rbx] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((288-256-128))+rbx] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(192-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((480-256-128))+rbx] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((320-256-128))+rbx] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(224-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((0-128))+rax] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovdqa ymm15,YMMWORD PTR[32+rbp] - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((352-256-128))+rbx] - - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpand ymm6,ymm3,ymm2 - vpxor ymm11,ymm11,YMMWORD PTR[((32-128))+rax] - - vpaddd ymm4,ymm4,ymm6 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm3,ymm2 - vpxor ymm11,ymm11,ymm13 - - vmovdqu YMMWORD PTR[(256-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm11,31 - vpand ymm5,ymm5,ymm1 - vpaddd ymm11,ymm11,ymm11 - - vpslld ymm6,ymm1,30 - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((384-256-128))+rbx] - - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpand ymm6,ymm2,ymm1 - vpxor ymm12,ymm12,YMMWORD PTR[((64-128))+rax] - - vpaddd ymm3,ymm3,ymm6 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm2,ymm1 - vpxor ymm12,ymm12,ymm14 - - vmovdqu YMMWORD PTR[(288-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm12,31 - vpand ymm5,ymm5,ymm0 - vpaddd ymm12,ymm12,ymm12 - - vpslld ymm6,ymm0,30 - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((416-256-128))+rbx] - - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpand ymm6,ymm1,ymm0 - vpxor ymm13,ymm13,YMMWORD PTR[((96-128))+rax] - - vpaddd ymm2,ymm2,ymm6 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm1,ymm0 - vpxor ymm13,ymm13,ymm10 - - vmovdqu YMMWORD PTR[(320-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm13,31 - vpand ymm5,ymm5,ymm4 - vpaddd ymm13,ymm13,ymm13 - - vpslld ymm6,ymm4,30 - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((448-256-128))+rbx] - - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpand ymm6,ymm0,ymm4 - vpxor ymm14,ymm14,YMMWORD PTR[((128-128))+rax] - - vpaddd ymm1,ymm1,ymm6 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm0,ymm4 - vpxor ymm14,ymm14,ymm11 - - vmovdqu YMMWORD PTR[(352-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm14,31 - vpand ymm5,ymm5,ymm3 - vpaddd ymm14,ymm14,ymm14 - - vpslld ymm6,ymm3,30 - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((480-256-128))+rbx] - - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpand ymm6,ymm4,ymm3 - vpxor ymm10,ymm10,YMMWORD PTR[((160-128))+rax] - - vpaddd ymm0,ymm0,ymm6 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm4,ymm3 - vpxor ymm10,ymm10,ymm12 - - vmovdqu YMMWORD PTR[(384-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm10,31 - vpand ymm5,ymm5,ymm2 - vpaddd ymm10,ymm10,ymm10 - - vpslld ymm6,ymm2,30 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((0-128))+rax] - - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpand ymm6,ymm3,ymm2 - vpxor ymm11,ymm11,YMMWORD PTR[((192-128))+rax] - - vpaddd ymm4,ymm4,ymm6 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm3,ymm2 - vpxor ymm11,ymm11,ymm13 - - vmovdqu YMMWORD PTR[(416-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm11,31 - vpand ymm5,ymm5,ymm1 - vpaddd ymm11,ymm11,ymm11 - - vpslld ymm6,ymm1,30 - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((32-128))+rax] - - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpand ymm6,ymm2,ymm1 - vpxor ymm12,ymm12,YMMWORD PTR[((224-128))+rax] - - vpaddd ymm3,ymm3,ymm6 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm2,ymm1 - vpxor ymm12,ymm12,ymm14 - - vmovdqu YMMWORD PTR[(448-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm12,31 - vpand ymm5,ymm5,ymm0 - vpaddd ymm12,ymm12,ymm12 - - vpslld ymm6,ymm0,30 - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((64-128))+rax] - - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpand ymm6,ymm1,ymm0 - vpxor ymm13,ymm13,YMMWORD PTR[((256-256-128))+rbx] - - vpaddd ymm2,ymm2,ymm6 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm1,ymm0 - vpxor ymm13,ymm13,ymm10 - - vmovdqu YMMWORD PTR[(480-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm13,31 - vpand ymm5,ymm5,ymm4 - vpaddd ymm13,ymm13,ymm13 - - vpslld ymm6,ymm4,30 - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((96-128))+rax] - - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpand ymm6,ymm0,ymm4 - vpxor ymm14,ymm14,YMMWORD PTR[((288-256-128))+rbx] - - vpaddd ymm1,ymm1,ymm6 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm0,ymm4 - vpxor ymm14,ymm14,ymm11 - - vmovdqu YMMWORD PTR[(0-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm14,31 - vpand ymm5,ymm5,ymm3 - vpaddd ymm14,ymm14,ymm14 - - vpslld ymm6,ymm3,30 - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((128-128))+rax] - - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpand ymm6,ymm4,ymm3 - vpxor ymm10,ymm10,YMMWORD PTR[((320-256-128))+rbx] - - vpaddd ymm0,ymm0,ymm6 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm4,ymm3 - vpxor ymm10,ymm10,ymm12 - - vmovdqu YMMWORD PTR[(32-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm10,31 - vpand ymm5,ymm5,ymm2 - vpaddd ymm10,ymm10,ymm10 - - vpslld ymm6,ymm2,30 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((160-128))+rax] - - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpand ymm6,ymm3,ymm2 - vpxor ymm11,ymm11,YMMWORD PTR[((352-256-128))+rbx] - - vpaddd ymm4,ymm4,ymm6 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm3,ymm2 - vpxor ymm11,ymm11,ymm13 - - vmovdqu YMMWORD PTR[(64-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm11,31 - vpand ymm5,ymm5,ymm1 - vpaddd ymm11,ymm11,ymm11 - - vpslld ymm6,ymm1,30 - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((192-128))+rax] - - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpand ymm6,ymm2,ymm1 - vpxor ymm12,ymm12,YMMWORD PTR[((384-256-128))+rbx] - - vpaddd ymm3,ymm3,ymm6 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm2,ymm1 - vpxor ymm12,ymm12,ymm14 - - vmovdqu YMMWORD PTR[(96-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm12,31 - vpand ymm5,ymm5,ymm0 - vpaddd ymm12,ymm12,ymm12 - - vpslld ymm6,ymm0,30 - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((224-128))+rax] - - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpand ymm6,ymm1,ymm0 - vpxor ymm13,ymm13,YMMWORD PTR[((416-256-128))+rbx] - - vpaddd ymm2,ymm2,ymm6 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm1,ymm0 - vpxor ymm13,ymm13,ymm10 - - vmovdqu YMMWORD PTR[(128-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm13,31 - vpand ymm5,ymm5,ymm4 - vpaddd ymm13,ymm13,ymm13 - - vpslld ymm6,ymm4,30 - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((256-256-128))+rbx] - - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpand ymm6,ymm0,ymm4 - vpxor ymm14,ymm14,YMMWORD PTR[((448-256-128))+rbx] - - vpaddd ymm1,ymm1,ymm6 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm0,ymm4 - vpxor ymm14,ymm14,ymm11 - - vmovdqu YMMWORD PTR[(160-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm14,31 - vpand ymm5,ymm5,ymm3 - vpaddd ymm14,ymm14,ymm14 - - vpslld ymm6,ymm3,30 - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((288-256-128))+rbx] - - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpand ymm6,ymm4,ymm3 - vpxor ymm10,ymm10,YMMWORD PTR[((480-256-128))+rbx] - - vpaddd ymm0,ymm0,ymm6 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm4,ymm3 - vpxor ymm10,ymm10,ymm12 - - vmovdqu YMMWORD PTR[(192-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm10,31 - vpand ymm5,ymm5,ymm2 - vpaddd ymm10,ymm10,ymm10 - - vpslld ymm6,ymm2,30 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((320-256-128))+rbx] - - vpaddd ymm4,ymm4,ymm15 - vpslld ymm7,ymm0,5 - vpand ymm6,ymm3,ymm2 - vpxor ymm11,ymm11,YMMWORD PTR[((0-128))+rax] - - vpaddd ymm4,ymm4,ymm6 - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm3,ymm2 - vpxor ymm11,ymm11,ymm13 - - vmovdqu YMMWORD PTR[(224-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm11,31 - vpand ymm5,ymm5,ymm1 - vpaddd ymm11,ymm11,ymm11 - - vpslld ymm6,ymm1,30 - vpaddd ymm4,ymm4,ymm5 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((352-256-128))+rbx] - - vpaddd ymm3,ymm3,ymm15 - vpslld ymm7,ymm4,5 - vpand ymm6,ymm2,ymm1 - vpxor ymm12,ymm12,YMMWORD PTR[((32-128))+rax] - - vpaddd ymm3,ymm3,ymm6 - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm2,ymm1 - vpxor ymm12,ymm12,ymm14 - - vmovdqu YMMWORD PTR[(256-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm12,31 - vpand ymm5,ymm5,ymm0 - vpaddd ymm12,ymm12,ymm12 - - vpslld ymm6,ymm0,30 - vpaddd ymm3,ymm3,ymm5 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((384-256-128))+rbx] - - vpaddd ymm2,ymm2,ymm15 - vpslld ymm7,ymm3,5 - vpand ymm6,ymm1,ymm0 - vpxor ymm13,ymm13,YMMWORD PTR[((64-128))+rax] - - vpaddd ymm2,ymm2,ymm6 - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm1,ymm0 - vpxor ymm13,ymm13,ymm10 - - vmovdqu YMMWORD PTR[(288-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm13,31 - vpand ymm5,ymm5,ymm4 - vpaddd ymm13,ymm13,ymm13 - - vpslld ymm6,ymm4,30 - vpaddd ymm2,ymm2,ymm5 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((416-256-128))+rbx] - - vpaddd ymm1,ymm1,ymm15 - vpslld ymm7,ymm2,5 - vpand ymm6,ymm0,ymm4 - vpxor ymm14,ymm14,YMMWORD PTR[((96-128))+rax] - - vpaddd ymm1,ymm1,ymm6 - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm0,ymm4 - vpxor ymm14,ymm14,ymm11 - - vmovdqu YMMWORD PTR[(320-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm14,31 - vpand ymm5,ymm5,ymm3 - vpaddd ymm14,ymm14,ymm14 - - vpslld ymm6,ymm3,30 - vpaddd ymm1,ymm1,ymm5 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((448-256-128))+rbx] - - vpaddd ymm0,ymm0,ymm15 - vpslld ymm7,ymm1,5 - vpand ymm6,ymm4,ymm3 - vpxor ymm10,ymm10,YMMWORD PTR[((128-128))+rax] - - vpaddd ymm0,ymm0,ymm6 - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm4,ymm3 - vpxor ymm10,ymm10,ymm12 - - vmovdqu YMMWORD PTR[(352-256-128)+rbx],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpor ymm7,ymm7,ymm8 - vpsrld ymm9,ymm10,31 - vpand ymm5,ymm5,ymm2 - vpaddd ymm10,ymm10,ymm10 - - vpslld ymm6,ymm2,30 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vmovdqa ymm15,YMMWORD PTR[64+rbp] - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((480-256-128))+rbx] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(384-256-128)+rbx],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((160-128))+rax] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((0-128))+rax] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(416-256-128)+rbx],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((192-128))+rax] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((32-128))+rax] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(448-256-128)+rbx],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((224-128))+rax] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((64-128))+rax] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(480-256-128)+rbx],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((256-256-128))+rbx] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((96-128))+rax] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(0-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((288-256-128))+rbx] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((128-128))+rax] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(32-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((320-256-128))+rbx] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((160-128))+rax] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(64-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((352-256-128))+rbx] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((192-128))+rax] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vmovdqa YMMWORD PTR[(96-128)+rax],ymm12 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((384-256-128))+rbx] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((224-128))+rax] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vmovdqa YMMWORD PTR[(128-128)+rax],ymm13 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((416-256-128))+rbx] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((256-256-128))+rbx] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vmovdqa YMMWORD PTR[(160-128)+rax],ymm14 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((448-256-128))+rbx] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((288-256-128))+rbx] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vmovdqa YMMWORD PTR[(192-128)+rax],ymm10 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((480-256-128))+rbx] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((320-256-128))+rbx] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vmovdqa YMMWORD PTR[(224-128)+rax],ymm11 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((0-128))+rax] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((352-256-128))+rbx] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((32-128))+rax] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((384-256-128))+rbx] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((64-128))+rax] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpxor ymm10,ymm10,ymm12 - vmovdqa ymm12,YMMWORD PTR[((416-256-128))+rbx] - - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm10,ymm10,YMMWORD PTR[((96-128))+rax] - vpsrld ymm8,ymm1,27 - vpxor ymm5,ymm5,ymm3 - vpxor ymm10,ymm10,ymm12 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - vpsrld ymm9,ymm10,31 - vpaddd ymm10,ymm10,ymm10 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm10,ymm10,ymm9 - vpor ymm2,ymm2,ymm6 - vpxor ymm11,ymm11,ymm13 - vmovdqa ymm13,YMMWORD PTR[((448-256-128))+rbx] - - vpslld ymm7,ymm0,5 - vpaddd ymm4,ymm4,ymm15 - vpxor ymm5,ymm3,ymm1 - vpaddd ymm4,ymm4,ymm10 - vpxor ymm11,ymm11,YMMWORD PTR[((128-128))+rax] - vpsrld ymm8,ymm0,27 - vpxor ymm5,ymm5,ymm2 - vpxor ymm11,ymm11,ymm13 - - vpslld ymm6,ymm1,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm4,ymm4,ymm5 - vpsrld ymm9,ymm11,31 - vpaddd ymm11,ymm11,ymm11 - - vpsrld ymm1,ymm1,2 - vpaddd ymm4,ymm4,ymm7 - vpor ymm11,ymm11,ymm9 - vpor ymm1,ymm1,ymm6 - vpxor ymm12,ymm12,ymm14 - vmovdqa ymm14,YMMWORD PTR[((480-256-128))+rbx] - - vpslld ymm7,ymm4,5 - vpaddd ymm3,ymm3,ymm15 - vpxor ymm5,ymm2,ymm0 - vpaddd ymm3,ymm3,ymm11 - vpxor ymm12,ymm12,YMMWORD PTR[((160-128))+rax] - vpsrld ymm8,ymm4,27 - vpxor ymm5,ymm5,ymm1 - vpxor ymm12,ymm12,ymm14 - - vpslld ymm6,ymm0,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm3,ymm3,ymm5 - vpsrld ymm9,ymm12,31 - vpaddd ymm12,ymm12,ymm12 - - vpsrld ymm0,ymm0,2 - vpaddd ymm3,ymm3,ymm7 - vpor ymm12,ymm12,ymm9 - vpor ymm0,ymm0,ymm6 - vpxor ymm13,ymm13,ymm10 - vmovdqa ymm10,YMMWORD PTR[((0-128))+rax] - - vpslld ymm7,ymm3,5 - vpaddd ymm2,ymm2,ymm15 - vpxor ymm5,ymm1,ymm4 - vpaddd ymm2,ymm2,ymm12 - vpxor ymm13,ymm13,YMMWORD PTR[((192-128))+rax] - vpsrld ymm8,ymm3,27 - vpxor ymm5,ymm5,ymm0 - vpxor ymm13,ymm13,ymm10 - - vpslld ymm6,ymm4,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm2,ymm2,ymm5 - vpsrld ymm9,ymm13,31 - vpaddd ymm13,ymm13,ymm13 - - vpsrld ymm4,ymm4,2 - vpaddd ymm2,ymm2,ymm7 - vpor ymm13,ymm13,ymm9 - vpor ymm4,ymm4,ymm6 - vpxor ymm14,ymm14,ymm11 - vmovdqa ymm11,YMMWORD PTR[((32-128))+rax] - - vpslld ymm7,ymm2,5 - vpaddd ymm1,ymm1,ymm15 - vpxor ymm5,ymm0,ymm3 - vpaddd ymm1,ymm1,ymm13 - vpxor ymm14,ymm14,YMMWORD PTR[((224-128))+rax] - vpsrld ymm8,ymm2,27 - vpxor ymm5,ymm5,ymm4 - vpxor ymm14,ymm14,ymm11 - - vpslld ymm6,ymm3,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm1,ymm1,ymm5 - vpsrld ymm9,ymm14,31 - vpaddd ymm14,ymm14,ymm14 - - vpsrld ymm3,ymm3,2 - vpaddd ymm1,ymm1,ymm7 - vpor ymm14,ymm14,ymm9 - vpor ymm3,ymm3,ymm6 - vpslld ymm7,ymm1,5 - vpaddd ymm0,ymm0,ymm15 - vpxor ymm5,ymm4,ymm2 - - vpsrld ymm8,ymm1,27 - vpaddd ymm0,ymm0,ymm14 - vpxor ymm5,ymm5,ymm3 - - vpslld ymm6,ymm2,30 - vpor ymm7,ymm7,ymm8 - vpaddd ymm0,ymm0,ymm5 - - vpsrld ymm2,ymm2,2 - vpaddd ymm0,ymm0,ymm7 - vpor ymm2,ymm2,ymm6 - mov ecx,1 - lea rbx,QWORD PTR[512+rsp] - cmp ecx,DWORD PTR[rbx] - cmovge r12,rbp - cmp ecx,DWORD PTR[4+rbx] - cmovge r13,rbp - cmp ecx,DWORD PTR[8+rbx] - cmovge r14,rbp - cmp ecx,DWORD PTR[12+rbx] - cmovge r15,rbp - cmp ecx,DWORD PTR[16+rbx] - cmovge r8,rbp - cmp ecx,DWORD PTR[20+rbx] - cmovge r9,rbp - cmp ecx,DWORD PTR[24+rbx] - cmovge r10,rbp - cmp ecx,DWORD PTR[28+rbx] - cmovge r11,rbp - vmovdqu ymm5,YMMWORD PTR[rbx] - vpxor ymm7,ymm7,ymm7 - vmovdqa ymm6,ymm5 - vpcmpgtd ymm6,ymm6,ymm7 - vpaddd ymm5,ymm5,ymm6 - - vpand ymm0,ymm0,ymm6 - vpand ymm1,ymm1,ymm6 - vpaddd ymm0,ymm0,YMMWORD PTR[rdi] - vpand ymm2,ymm2,ymm6 - vpaddd ymm1,ymm1,YMMWORD PTR[32+rdi] - vpand ymm3,ymm3,ymm6 - vpaddd ymm2,ymm2,YMMWORD PTR[64+rdi] - vpand ymm4,ymm4,ymm6 - vpaddd ymm3,ymm3,YMMWORD PTR[96+rdi] - vpaddd ymm4,ymm4,YMMWORD PTR[128+rdi] - vmovdqu YMMWORD PTR[rdi],ymm0 - vmovdqu YMMWORD PTR[32+rdi],ymm1 - vmovdqu YMMWORD PTR[64+rdi],ymm2 - vmovdqu YMMWORD PTR[96+rdi],ymm3 - vmovdqu YMMWORD PTR[128+rdi],ymm4 - - vmovdqu YMMWORD PTR[rbx],ymm5 - lea rbx,QWORD PTR[((256+128))+rsp] - vmovdqu ymm9,YMMWORD PTR[96+rbp] - dec edx - jnz $L$oop_avx2 - - - - - - - -$L$done_avx2:: - mov rax,QWORD PTR[544+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block_avx2:: -sha1_multi_block_avx2 ENDP - -ALIGN 256 - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 05a827999h,05a827999h,05a827999h,05a827999h -K_XX_XX:: - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h -DB 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107 -DB 32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120 -DB 56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77 -DB 83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110 -DB 115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[272+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - - lea rsi,QWORD PTR[((-24-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -ALIGN 16 -avx2_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[544+r8] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea rsi,QWORD PTR[((-56-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - - jmp $L$in_prologue -avx2_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha1_multi_block - DD imagerel $L$SEH_end_sha1_multi_block - DD imagerel $L$SEH_info_sha1_multi_block - DD imagerel $L$SEH_begin_sha1_multi_block_shaext - DD imagerel $L$SEH_end_sha1_multi_block_shaext - DD imagerel $L$SEH_info_sha1_multi_block_shaext - DD imagerel $L$SEH_begin_sha1_multi_block_avx - DD imagerel $L$SEH_end_sha1_multi_block_avx - DD imagerel $L$SEH_info_sha1_multi_block_avx - DD imagerel $L$SEH_begin_sha1_multi_block_avx2 - DD imagerel $L$SEH_end_sha1_multi_block_avx2 - DD imagerel $L$SEH_info_sha1_multi_block_avx2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha1_multi_block:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body,imagerel $L$epilogue -$L$SEH_info_sha1_multi_block_shaext:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_shaext,imagerel $L$epilogue_shaext -$L$SEH_info_sha1_multi_block_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_avx,imagerel $L$epilogue_avx -$L$SEH_info_sha1_multi_block_avx2:: -DB 9,0,0,0 - DD imagerel avx2_handler - DD imagerel $L$body_avx2,imagerel $L$epilogue_avx2 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/sha/sha1-x86_64.asm b/deps/openssl/asm/x64-win32-masm/sha/sha1-x86_64.asm deleted file mode 100644 index 24df4681230d5f..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/sha/sha1-x86_64.asm +++ /dev/null @@ -1,5720 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha1_block_data_order - -ALIGN 16 -sha1_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov r9d,DWORD PTR[((OPENSSL_ia32cap_P+0))] - mov r8d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - test r8d,512 - jz $L$ialu - test r10d,536870912 - jnz _shaext_shortcut - and r10d,296 - cmp r10d,296 - je _avx2_shortcut - and r8d,268435456 - and r9d,1073741824 - or r8d,r9d - cmp r8d,1342177280 - je _avx_shortcut - jmp _ssse3_shortcut - -ALIGN 16 -$L$ialu:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - mov r8,rdi - sub rsp,72 - mov r9,rsi - and rsp,-64 - mov r10,rdx - mov QWORD PTR[64+rsp],rax -$L$prologue:: - - mov esi,DWORD PTR[r8] - mov edi,DWORD PTR[4+r8] - mov r11d,DWORD PTR[8+r8] - mov r12d,DWORD PTR[12+r8] - mov r13d,DWORD PTR[16+r8] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov edx,DWORD PTR[r9] - bswap edx - mov ebp,DWORD PTR[4+r9] - mov eax,r12d - mov DWORD PTR[rsp],edx - mov ecx,esi - bswap ebp - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rdx] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov r14d,DWORD PTR[8+r9] - mov eax,r11d - mov DWORD PTR[4+rsp],ebp - mov ecx,r13d - bswap r14d - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rbp] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov edx,DWORD PTR[12+r9] - mov eax,edi - mov DWORD PTR[8+rsp],r14d - mov ecx,r12d - bswap edx - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+r14] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov ebp,DWORD PTR[16+r9] - mov eax,esi - mov DWORD PTR[12+rsp],edx - mov ecx,r11d - bswap ebp - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rdx] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov r14d,DWORD PTR[20+r9] - mov eax,r13d - mov DWORD PTR[16+rsp],ebp - mov ecx,edi - bswap r14d - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rbp] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - mov edx,DWORD PTR[24+r9] - mov eax,r12d - mov DWORD PTR[20+rsp],r14d - mov ecx,esi - bswap edx - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+r14] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov ebp,DWORD PTR[28+r9] - mov eax,r11d - mov DWORD PTR[24+rsp],edx - mov ecx,r13d - bswap ebp - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rdx] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov r14d,DWORD PTR[32+r9] - mov eax,edi - mov DWORD PTR[28+rsp],ebp - mov ecx,r12d - bswap r14d - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+rbp] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov edx,DWORD PTR[36+r9] - mov eax,esi - mov DWORD PTR[32+rsp],r14d - mov ecx,r11d - bswap edx - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+r14] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov ebp,DWORD PTR[40+r9] - mov eax,r13d - mov DWORD PTR[36+rsp],edx - mov ecx,edi - bswap ebp - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rdx] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - mov r14d,DWORD PTR[44+r9] - mov eax,r12d - mov DWORD PTR[40+rsp],ebp - mov ecx,esi - bswap r14d - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rbp] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov edx,DWORD PTR[48+r9] - mov eax,r11d - mov DWORD PTR[44+rsp],r14d - mov ecx,r13d - bswap edx - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+r14] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov ebp,DWORD PTR[52+r9] - mov eax,edi - mov DWORD PTR[48+rsp],edx - mov ecx,r12d - bswap ebp - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+rdx] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov r14d,DWORD PTR[56+r9] - mov eax,esi - mov DWORD PTR[52+rsp],ebp - mov ecx,r11d - bswap r14d - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rbp] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov edx,DWORD PTR[60+r9] - mov eax,r13d - mov DWORD PTR[56+rsp],r14d - mov ecx,edi - bswap edx - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+r14] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - xor ebp,DWORD PTR[rsp] - mov eax,r12d - mov DWORD PTR[60+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[8+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[32+rsp] - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rdx] - rol edi,30 - xor eax,r12d - add r13d,ecx - rol ebp,1 - add r13d,eax - xor r14d,DWORD PTR[4+rsp] - mov eax,r11d - mov DWORD PTR[rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[12+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[36+rsp] - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rbp] - rol esi,30 - xor eax,r11d - add r12d,ecx - rol r14d,1 - add r12d,eax - xor edx,DWORD PTR[8+rsp] - mov eax,edi - mov DWORD PTR[4+rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[16+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[40+rsp] - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+r14] - rol r13d,30 - xor eax,edi - add r11d,ecx - rol edx,1 - add r11d,eax - xor ebp,DWORD PTR[12+rsp] - mov eax,esi - mov DWORD PTR[8+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[20+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[44+rsp] - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rdx] - rol r12d,30 - xor eax,esi - add edi,ecx - rol ebp,1 - add edi,eax - xor r14d,DWORD PTR[16+rsp] - mov eax,r13d - mov DWORD PTR[12+rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[24+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[48+rsp] - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rbp] - rol r11d,30 - xor eax,r13d - add esi,ecx - rol r14d,1 - add esi,eax - xor edx,DWORD PTR[20+rsp] - mov eax,edi - mov DWORD PTR[16+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[28+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[52+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[24+rsp] - mov eax,esi - mov DWORD PTR[20+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[32+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[56+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[28+rsp] - mov eax,r13d - mov DWORD PTR[24+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[36+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[60+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[32+rsp] - mov eax,r12d - mov DWORD PTR[28+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[40+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[rsp] - lea edi,DWORD PTR[1859775393+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[36+rsp] - mov eax,r11d - mov DWORD PTR[32+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[44+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[4+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[40+rsp] - mov eax,edi - mov DWORD PTR[36+rsp],ebp - mov ecx,esi - xor r14d,DWORD PTR[48+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[8+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+rbp] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol r14d,1 - xor edx,DWORD PTR[44+rsp] - mov eax,esi - mov DWORD PTR[40+rsp],r14d - mov ecx,r13d - xor edx,DWORD PTR[52+rsp] - xor eax,r11d - rol ecx,5 - xor edx,DWORD PTR[12+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+r14] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol edx,1 - xor ebp,DWORD PTR[48+rsp] - mov eax,r13d - mov DWORD PTR[44+rsp],edx - mov ecx,r12d - xor ebp,DWORD PTR[56+rsp] - xor eax,edi - rol ecx,5 - xor ebp,DWORD PTR[16+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rdx] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol ebp,1 - xor r14d,DWORD PTR[52+rsp] - mov eax,r12d - mov DWORD PTR[48+rsp],ebp - mov ecx,r11d - xor r14d,DWORD PTR[60+rsp] - xor eax,esi - rol ecx,5 - xor r14d,DWORD PTR[20+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+rbp] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol r14d,1 - xor edx,DWORD PTR[56+rsp] - mov eax,r11d - mov DWORD PTR[52+rsp],r14d - mov ecx,edi - xor edx,DWORD PTR[rsp] - xor eax,r13d - rol ecx,5 - xor edx,DWORD PTR[24+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+r14] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol edx,1 - xor ebp,DWORD PTR[60+rsp] - mov eax,edi - mov DWORD PTR[56+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[4+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[28+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[rsp] - mov eax,esi - mov DWORD PTR[60+rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[8+rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[32+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[4+rsp] - mov eax,r13d - mov DWORD PTR[rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[12+rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[36+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[8+rsp] - mov eax,r12d - mov DWORD PTR[4+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[16+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[40+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - xor r14d,DWORD PTR[12+rsp] - mov eax,r11d - mov DWORD PTR[8+rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[20+rsp] - xor eax,r13d - rol ecx,5 - xor r14d,DWORD PTR[44+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rbp] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol r14d,1 - xor edx,DWORD PTR[16+rsp] - mov eax,edi - mov DWORD PTR[12+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[24+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[48+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[20+rsp] - mov eax,esi - mov DWORD PTR[16+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[28+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[52+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[24+rsp] - mov eax,r13d - mov DWORD PTR[20+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[32+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[56+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[28+rsp] - mov eax,r12d - mov DWORD PTR[24+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[36+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[60+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[32+rsp] - mov eax,r11d - mov DWORD PTR[28+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[40+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[36+rsp] - mov eax,r12d - mov DWORD PTR[32+rsp],ebp - mov ebx,r12d - xor r14d,DWORD PTR[44+rsp] - and eax,r11d - mov ecx,esi - xor r14d,DWORD PTR[4+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rbp] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol r14d,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor edx,DWORD PTR[40+rsp] - mov eax,r11d - mov DWORD PTR[36+rsp],r14d - mov ebx,r11d - xor edx,DWORD PTR[48+rsp] - and eax,edi - mov ecx,r13d - xor edx,DWORD PTR[8+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+r14] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol edx,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor ebp,DWORD PTR[44+rsp] - mov eax,edi - mov DWORD PTR[40+rsp],edx - mov ebx,edi - xor ebp,DWORD PTR[52+rsp] - and eax,esi - mov ecx,r12d - xor ebp,DWORD PTR[12+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rdx] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol ebp,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor r14d,DWORD PTR[48+rsp] - mov eax,esi - mov DWORD PTR[44+rsp],ebp - mov ebx,esi - xor r14d,DWORD PTR[56+rsp] - and eax,r13d - mov ecx,r11d - xor r14d,DWORD PTR[16+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rbp] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol r14d,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor edx,DWORD PTR[52+rsp] - mov eax,r13d - mov DWORD PTR[48+rsp],r14d - mov ebx,r13d - xor edx,DWORD PTR[60+rsp] - and eax,r12d - mov ecx,edi - xor edx,DWORD PTR[20+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+r14] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol edx,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor ebp,DWORD PTR[56+rsp] - mov eax,r12d - mov DWORD PTR[52+rsp],edx - mov ebx,r12d - xor ebp,DWORD PTR[rsp] - and eax,r11d - mov ecx,esi - xor ebp,DWORD PTR[24+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rdx] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol ebp,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor r14d,DWORD PTR[60+rsp] - mov eax,r11d - mov DWORD PTR[56+rsp],ebp - mov ebx,r11d - xor r14d,DWORD PTR[4+rsp] - and eax,edi - mov ecx,r13d - xor r14d,DWORD PTR[28+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+rbp] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol r14d,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor edx,DWORD PTR[rsp] - mov eax,edi - mov DWORD PTR[60+rsp],r14d - mov ebx,edi - xor edx,DWORD PTR[8+rsp] - and eax,esi - mov ecx,r12d - xor edx,DWORD PTR[32+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+r14] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol edx,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor ebp,DWORD PTR[4+rsp] - mov eax,esi - mov DWORD PTR[rsp],edx - mov ebx,esi - xor ebp,DWORD PTR[12+rsp] - and eax,r13d - mov ecx,r11d - xor ebp,DWORD PTR[36+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rdx] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol ebp,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor r14d,DWORD PTR[8+rsp] - mov eax,r13d - mov DWORD PTR[4+rsp],ebp - mov ebx,r13d - xor r14d,DWORD PTR[16+rsp] - and eax,r12d - mov ecx,edi - xor r14d,DWORD PTR[40+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+rbp] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol r14d,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor edx,DWORD PTR[12+rsp] - mov eax,r12d - mov DWORD PTR[8+rsp],r14d - mov ebx,r12d - xor edx,DWORD PTR[20+rsp] - and eax,r11d - mov ecx,esi - xor edx,DWORD PTR[44+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+r14] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol edx,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor ebp,DWORD PTR[16+rsp] - mov eax,r11d - mov DWORD PTR[12+rsp],edx - mov ebx,r11d - xor ebp,DWORD PTR[24+rsp] - and eax,edi - mov ecx,r13d - xor ebp,DWORD PTR[48+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+rdx] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol ebp,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor r14d,DWORD PTR[20+rsp] - mov eax,edi - mov DWORD PTR[16+rsp],ebp - mov ebx,edi - xor r14d,DWORD PTR[28+rsp] - and eax,esi - mov ecx,r12d - xor r14d,DWORD PTR[52+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rbp] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol r14d,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor edx,DWORD PTR[24+rsp] - mov eax,esi - mov DWORD PTR[20+rsp],r14d - mov ebx,esi - xor edx,DWORD PTR[32+rsp] - and eax,r13d - mov ecx,r11d - xor edx,DWORD PTR[56+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+r14] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol edx,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor ebp,DWORD PTR[28+rsp] - mov eax,r13d - mov DWORD PTR[24+rsp],edx - mov ebx,r13d - xor ebp,DWORD PTR[36+rsp] - and eax,r12d - mov ecx,edi - xor ebp,DWORD PTR[60+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+rdx] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol ebp,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor r14d,DWORD PTR[32+rsp] - mov eax,r12d - mov DWORD PTR[28+rsp],ebp - mov ebx,r12d - xor r14d,DWORD PTR[40+rsp] - and eax,r11d - mov ecx,esi - xor r14d,DWORD PTR[rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rbp] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol r14d,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor edx,DWORD PTR[36+rsp] - mov eax,r11d - mov DWORD PTR[32+rsp],r14d - mov ebx,r11d - xor edx,DWORD PTR[44+rsp] - and eax,edi - mov ecx,r13d - xor edx,DWORD PTR[4+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+r14] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol edx,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor ebp,DWORD PTR[40+rsp] - mov eax,edi - mov DWORD PTR[36+rsp],edx - mov ebx,edi - xor ebp,DWORD PTR[48+rsp] - and eax,esi - mov ecx,r12d - xor ebp,DWORD PTR[8+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rdx] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol ebp,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor r14d,DWORD PTR[44+rsp] - mov eax,esi - mov DWORD PTR[40+rsp],ebp - mov ebx,esi - xor r14d,DWORD PTR[52+rsp] - and eax,r13d - mov ecx,r11d - xor r14d,DWORD PTR[12+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rbp] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol r14d,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor edx,DWORD PTR[48+rsp] - mov eax,r13d - mov DWORD PTR[44+rsp],r14d - mov ebx,r13d - xor edx,DWORD PTR[56+rsp] - and eax,r12d - mov ecx,edi - xor edx,DWORD PTR[16+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+r14] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol edx,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor ebp,DWORD PTR[52+rsp] - mov eax,edi - mov DWORD PTR[48+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[60+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[20+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[56+rsp] - mov eax,esi - mov DWORD PTR[52+rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[24+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[60+rsp] - mov eax,r13d - mov DWORD PTR[56+rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[4+rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[28+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[rsp] - mov eax,r12d - mov DWORD PTR[60+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[8+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[32+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - xor r14d,DWORD PTR[4+rsp] - mov eax,r11d - mov DWORD PTR[rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[12+rsp] - xor eax,r13d - rol ecx,5 - xor r14d,DWORD PTR[36+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+rbp] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol r14d,1 - xor edx,DWORD PTR[8+rsp] - mov eax,edi - mov DWORD PTR[4+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[16+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[40+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[12+rsp] - mov eax,esi - mov DWORD PTR[8+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[20+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[44+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[16+rsp] - mov eax,r13d - mov DWORD PTR[12+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[24+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[48+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[20+rsp] - mov eax,r12d - mov DWORD PTR[16+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[28+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[52+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[24+rsp] - mov eax,r11d - mov DWORD PTR[20+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[32+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[56+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[28+rsp] - mov eax,edi - mov DWORD PTR[24+rsp],ebp - mov ecx,esi - xor r14d,DWORD PTR[36+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[60+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rbp] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol r14d,1 - xor edx,DWORD PTR[32+rsp] - mov eax,esi - mov DWORD PTR[28+rsp],r14d - mov ecx,r13d - xor edx,DWORD PTR[40+rsp] - xor eax,r11d - rol ecx,5 - xor edx,DWORD PTR[rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+r14] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol edx,1 - xor ebp,DWORD PTR[36+rsp] - mov eax,r13d - - mov ecx,r12d - xor ebp,DWORD PTR[44+rsp] - xor eax,edi - rol ecx,5 - xor ebp,DWORD PTR[4+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+rdx] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol ebp,1 - xor r14d,DWORD PTR[40+rsp] - mov eax,r12d - - mov ecx,r11d - xor r14d,DWORD PTR[48+rsp] - xor eax,esi - rol ecx,5 - xor r14d,DWORD PTR[8+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rbp] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol r14d,1 - xor edx,DWORD PTR[44+rsp] - mov eax,r11d - - mov ecx,edi - xor edx,DWORD PTR[52+rsp] - xor eax,r13d - rol ecx,5 - xor edx,DWORD PTR[12+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+r14] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol edx,1 - xor ebp,DWORD PTR[48+rsp] - mov eax,edi - - mov ecx,esi - xor ebp,DWORD PTR[56+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[16+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[52+rsp] - mov eax,esi - - mov ecx,r13d - xor r14d,DWORD PTR[60+rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[20+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[56+rsp] - mov eax,r13d - - mov ecx,r12d - xor edx,DWORD PTR[rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[24+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[60+rsp] - mov eax,r12d - - mov ecx,r11d - xor ebp,DWORD PTR[4+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[28+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - mov eax,r11d - mov ecx,edi - xor eax,r13d - lea esi,DWORD PTR[((-899497514))+rsi*1+rbp] - rol ecx,5 - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - add esi,DWORD PTR[r8] - add edi,DWORD PTR[4+r8] - add r11d,DWORD PTR[8+r8] - add r12d,DWORD PTR[12+r8] - add r13d,DWORD PTR[16+r8] - mov DWORD PTR[r8],esi - mov DWORD PTR[4+r8],edi - mov DWORD PTR[8+r8],r11d - mov DWORD PTR[12+r8],r12d - mov DWORD PTR[16+r8],r13d - - sub r10,1 - lea r9,QWORD PTR[64+r9] - jnz $L$loop - - mov rsi,QWORD PTR[64+rsp] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order:: -sha1_block_data_order ENDP - -ALIGN 32 -sha1_block_data_order_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - lea rsp,QWORD PTR[((-72))+rsp] - movaps XMMWORD PTR[(-8-64)+rax],xmm6 - movaps XMMWORD PTR[(-8-48)+rax],xmm7 - movaps XMMWORD PTR[(-8-32)+rax],xmm8 - movaps XMMWORD PTR[(-8-16)+rax],xmm9 -$L$prologue_shaext:: - movdqu xmm0,XMMWORD PTR[rdi] - movd xmm1,DWORD PTR[16+rdi] - movdqa xmm3,XMMWORD PTR[((K_XX_XX+160))] - - movdqu xmm4,XMMWORD PTR[rsi] - pshufd xmm0,xmm0,27 - movdqu xmm5,XMMWORD PTR[16+rsi] - pshufd xmm1,xmm1,27 - movdqu xmm6,XMMWORD PTR[32+rsi] -DB 102,15,56,0,227 - movdqu xmm7,XMMWORD PTR[48+rsi] -DB 102,15,56,0,235 -DB 102,15,56,0,243 - movdqa xmm9,xmm1 -DB 102,15,56,0,251 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - dec rdx - lea r8,QWORD PTR[64+rsi] - paddd xmm1,xmm4 - cmovne rsi,r8 - movdqa xmm8,xmm0 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 - movdqu xmm4,XMMWORD PTR[rsi] - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,213 - movdqu xmm5,XMMWORD PTR[16+rsi] -DB 102,15,56,0,227 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,206 - movdqu xmm6,XMMWORD PTR[32+rsi] -DB 102,15,56,0,235 - - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,215 - movdqu xmm7,XMMWORD PTR[48+rsi] -DB 102,15,56,0,243 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 65,15,56,200,201 -DB 102,15,56,0,251 - - paddd xmm0,xmm8 - movdqa xmm9,xmm1 - - jnz $L$oop_shaext - - pshufd xmm0,xmm0,27 - pshufd xmm1,xmm1,27 - movdqu XMMWORD PTR[rdi],xmm0 - movd DWORD PTR[16+rdi],xmm1 - movaps xmm6,XMMWORD PTR[((-8-64))+rax] - movaps xmm7,XMMWORD PTR[((-8-48))+rax] - movaps xmm8,XMMWORD PTR[((-8-32))+rax] - movaps xmm9,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_shaext:: -sha1_block_data_order_shaext ENDP - -ALIGN 16 -sha1_block_data_order_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_ssse3_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[(-40-96)+rax],xmm6 - movaps XMMWORD PTR[(-40-80)+rax],xmm7 - movaps XMMWORD PTR[(-40-64)+rax],xmm8 - movaps XMMWORD PTR[(-40-48)+rax],xmm9 - movaps XMMWORD PTR[(-40-32)+rax],xmm10 - movaps XMMWORD PTR[(-40-16)+rax],xmm11 -$L$prologue_ssse3:: - mov r14,rax - and rsp,-64 - mov r8,rdi - mov r9,rsi - mov r10,rdx - - shl r10,6 - add r10,r9 - lea r11,QWORD PTR[((K_XX_XX+64))] - - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov esi,ebx - mov ebp,DWORD PTR[16+r8] - mov edi,ecx - xor edi,edx - and esi,edi - - movdqa xmm6,XMMWORD PTR[64+r11] - movdqa xmm9,XMMWORD PTR[((-64))+r11] - movdqu xmm0,XMMWORD PTR[r9] - movdqu xmm1,XMMWORD PTR[16+r9] - movdqu xmm2,XMMWORD PTR[32+r9] - movdqu xmm3,XMMWORD PTR[48+r9] -DB 102,15,56,0,198 -DB 102,15,56,0,206 -DB 102,15,56,0,214 - add r9,64 - paddd xmm0,xmm9 -DB 102,15,56,0,222 - paddd xmm1,xmm9 - paddd xmm2,xmm9 - movdqa XMMWORD PTR[rsp],xmm0 - psubd xmm0,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm1 - psubd xmm1,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm2 - psubd xmm2,xmm9 - jmp $L$oop_ssse3 -ALIGN 16 -$L$oop_ssse3:: - ror ebx,2 - pshufd xmm4,xmm0,238 - xor esi,edx - movdqa xmm8,xmm3 - paddd xmm9,xmm3 - mov edi,eax - add ebp,DWORD PTR[rsp] - punpcklqdq xmm4,xmm1 - xor ebx,ecx - rol eax,5 - add ebp,esi - psrldq xmm8,4 - and edi,ebx - xor ebx,ecx - pxor xmm4,xmm0 - add ebp,eax - ror eax,7 - pxor xmm8,xmm2 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - pxor xmm4,xmm8 - xor eax,ebx - rol ebp,5 - movdqa XMMWORD PTR[48+rsp],xmm9 - add edx,edi - and esi,eax - movdqa xmm10,xmm4 - xor eax,ebx - add edx,ebp - ror ebp,7 - movdqa xmm8,xmm4 - xor esi,ebx - pslldq xmm10,12 - paddd xmm4,xmm4 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - psrld xmm8,31 - xor ebp,eax - rol edx,5 - add ecx,esi - movdqa xmm9,xmm10 - and edi,ebp - xor ebp,eax - psrld xmm10,30 - add ecx,edx - ror edx,7 - por xmm4,xmm8 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - pslld xmm9,2 - pxor xmm4,xmm10 - xor edx,ebp - movdqa xmm10,XMMWORD PTR[((-64))+r11] - rol ecx,5 - add ebx,edi - and esi,edx - pxor xmm4,xmm9 - xor edx,ebp - add ebx,ecx - ror ecx,7 - pshufd xmm5,xmm1,238 - xor esi,ebp - movdqa xmm9,xmm4 - paddd xmm10,xmm4 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - punpcklqdq xmm5,xmm2 - xor ecx,edx - rol ebx,5 - add eax,esi - psrldq xmm9,4 - and edi,ecx - xor ecx,edx - pxor xmm5,xmm1 - add eax,ebx - ror ebx,7 - pxor xmm9,xmm3 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - pxor xmm5,xmm9 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR[rsp],xmm10 - add ebp,edi - and esi,ebx - movdqa xmm8,xmm5 - xor ebx,ecx - add ebp,eax - ror eax,7 - movdqa xmm9,xmm5 - xor esi,ecx - pslldq xmm8,12 - paddd xmm5,xmm5 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - psrld xmm9,31 - xor eax,ebx - rol ebp,5 - add edx,esi - movdqa xmm10,xmm8 - and edi,eax - xor eax,ebx - psrld xmm8,30 - add edx,ebp - ror ebp,7 - por xmm5,xmm9 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - pslld xmm10,2 - pxor xmm5,xmm8 - xor ebp,eax - movdqa xmm8,XMMWORD PTR[((-32))+r11] - rol edx,5 - add ecx,edi - and esi,ebp - pxor xmm5,xmm10 - xor ebp,eax - add ecx,edx - ror edx,7 - pshufd xmm6,xmm2,238 - xor esi,eax - movdqa xmm10,xmm5 - paddd xmm8,xmm5 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - punpcklqdq xmm6,xmm3 - xor edx,ebp - rol ecx,5 - add ebx,esi - psrldq xmm10,4 - and edi,edx - xor edx,ebp - pxor xmm6,xmm2 - add ebx,ecx - ror ecx,7 - pxor xmm10,xmm4 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - pxor xmm6,xmm10 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR[16+rsp],xmm8 - add eax,edi - and esi,ecx - movdqa xmm9,xmm6 - xor ecx,edx - add eax,ebx - ror ebx,7 - movdqa xmm10,xmm6 - xor esi,edx - pslldq xmm9,12 - paddd xmm6,xmm6 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - psrld xmm10,31 - xor ebx,ecx - rol eax,5 - add ebp,esi - movdqa xmm8,xmm9 - and edi,ebx - xor ebx,ecx - psrld xmm9,30 - add ebp,eax - ror eax,7 - por xmm6,xmm10 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - pslld xmm8,2 - pxor xmm6,xmm9 - xor eax,ebx - movdqa xmm9,XMMWORD PTR[((-32))+r11] - rol ebp,5 - add edx,edi - and esi,eax - pxor xmm6,xmm8 - xor eax,ebx - add edx,ebp - ror ebp,7 - pshufd xmm7,xmm3,238 - xor esi,ebx - movdqa xmm8,xmm6 - paddd xmm9,xmm6 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - punpcklqdq xmm7,xmm4 - xor ebp,eax - rol edx,5 - add ecx,esi - psrldq xmm8,4 - and edi,ebp - xor ebp,eax - pxor xmm7,xmm3 - add ecx,edx - ror edx,7 - pxor xmm8,xmm5 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - pxor xmm7,xmm8 - xor edx,ebp - rol ecx,5 - movdqa XMMWORD PTR[32+rsp],xmm9 - add ebx,edi - and esi,edx - movdqa xmm10,xmm7 - xor edx,ebp - add ebx,ecx - ror ecx,7 - movdqa xmm8,xmm7 - xor esi,ebp - pslldq xmm10,12 - paddd xmm7,xmm7 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - psrld xmm8,31 - xor ecx,edx - rol ebx,5 - add eax,esi - movdqa xmm9,xmm10 - and edi,ecx - xor ecx,edx - psrld xmm10,30 - add eax,ebx - ror ebx,7 - por xmm7,xmm8 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - pslld xmm9,2 - pxor xmm7,xmm10 - xor ebx,ecx - movdqa xmm10,XMMWORD PTR[((-32))+r11] - rol eax,5 - add ebp,edi - and esi,ebx - pxor xmm7,xmm9 - pshufd xmm9,xmm6,238 - xor ebx,ecx - add ebp,eax - ror eax,7 - pxor xmm0,xmm4 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - punpcklqdq xmm9,xmm7 - xor eax,ebx - rol ebp,5 - pxor xmm0,xmm1 - add edx,esi - and edi,eax - movdqa xmm8,xmm10 - xor eax,ebx - paddd xmm10,xmm7 - add edx,ebp - pxor xmm0,xmm9 - ror ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[4+rsp] - movdqa xmm9,xmm0 - xor ebp,eax - rol edx,5 - movdqa XMMWORD PTR[48+rsp],xmm10 - add ecx,edi - and esi,ebp - xor ebp,eax - pslld xmm0,2 - add ecx,edx - ror edx,7 - psrld xmm9,30 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - por xmm0,xmm9 - xor edx,ebp - rol ecx,5 - pshufd xmm10,xmm7,238 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - pxor xmm1,xmm5 - add ebp,DWORD PTR[16+rsp] - xor esi,ecx - punpcklqdq xmm10,xmm0 - mov edi,eax - rol eax,5 - pxor xmm1,xmm2 - add ebp,esi - xor edi,ecx - movdqa xmm9,xmm8 - ror ebx,7 - paddd xmm8,xmm0 - add ebp,eax - pxor xmm1,xmm10 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm10,xmm1 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[rsp],xmm8 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[24+rsp] - pslld xmm1,2 - xor esi,eax - mov edi,edx - psrld xmm10,30 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - por xmm1,xmm10 - add ecx,edx - add ebx,DWORD PTR[28+rsp] - pshufd xmm8,xmm0,238 - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - pxor xmm2,xmm6 - add eax,DWORD PTR[32+rsp] - xor esi,edx - punpcklqdq xmm8,xmm1 - mov edi,ebx - rol ebx,5 - pxor xmm2,xmm3 - add eax,esi - xor edi,edx - movdqa xmm10,XMMWORD PTR[r11] - ror ecx,7 - paddd xmm9,xmm1 - add eax,ebx - pxor xmm2,xmm8 - add ebp,DWORD PTR[36+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - movdqa xmm8,xmm2 - add ebp,edi - xor esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm9 - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[40+rsp] - pslld xmm2,2 - xor esi,ebx - mov edi,ebp - psrld xmm8,30 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - por xmm2,xmm8 - add edx,ebp - add ecx,DWORD PTR[44+rsp] - pshufd xmm9,xmm1,238 - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - pxor xmm3,xmm7 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - punpcklqdq xmm9,xmm2 - mov edi,ecx - rol ecx,5 - pxor xmm3,xmm4 - add ebx,esi - xor edi,ebp - movdqa xmm8,xmm10 - ror edx,7 - paddd xmm10,xmm2 - add ebx,ecx - pxor xmm3,xmm9 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - movdqa xmm9,xmm3 - add eax,edi - xor esi,edx - movdqa XMMWORD PTR[32+rsp],xmm10 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[56+rsp] - pslld xmm3,2 - xor esi,ecx - mov edi,eax - psrld xmm9,30 - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - por xmm3,xmm9 - add ebp,eax - add edx,DWORD PTR[60+rsp] - pshufd xmm10,xmm2,238 - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - pxor xmm4,xmm0 - add ecx,DWORD PTR[rsp] - xor esi,eax - punpcklqdq xmm10,xmm3 - mov edi,edx - rol edx,5 - pxor xmm4,xmm5 - add ecx,esi - xor edi,eax - movdqa xmm9,xmm8 - ror ebp,7 - paddd xmm8,xmm3 - add ecx,edx - pxor xmm4,xmm10 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - movdqa xmm10,xmm4 - add ebx,edi - xor esi,ebp - movdqa XMMWORD PTR[48+rsp],xmm8 - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[8+rsp] - pslld xmm4,2 - xor esi,edx - mov edi,ebx - psrld xmm10,30 - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - por xmm4,xmm10 - add eax,ebx - add ebp,DWORD PTR[12+rsp] - pshufd xmm8,xmm3,238 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - pxor xmm5,xmm1 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - punpcklqdq xmm8,xmm4 - mov edi,ebp - rol ebp,5 - pxor xmm5,xmm6 - add edx,esi - xor edi,ebx - movdqa xmm10,xmm9 - ror eax,7 - paddd xmm9,xmm4 - add edx,ebp - pxor xmm5,xmm8 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - movdqa xmm8,xmm5 - add ecx,edi - xor esi,eax - movdqa XMMWORD PTR[rsp],xmm9 - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[24+rsp] - pslld xmm5,2 - xor esi,ebp - mov edi,ecx - psrld xmm8,30 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - por xmm5,xmm8 - add ebx,ecx - add eax,DWORD PTR[28+rsp] - pshufd xmm9,xmm4,238 - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - pxor xmm6,xmm2 - add ebp,DWORD PTR[32+rsp] - and esi,ecx - xor ecx,edx - ror ebx,7 - punpcklqdq xmm9,xmm5 - mov edi,eax - xor esi,ecx - pxor xmm6,xmm7 - rol eax,5 - add ebp,esi - movdqa xmm8,xmm10 - xor edi,ebx - paddd xmm10,xmm5 - xor ebx,ecx - pxor xmm6,xmm9 - add ebp,eax - add edx,DWORD PTR[36+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - movdqa xmm9,xmm6 - mov esi,ebp - xor edi,ebx - movdqa XMMWORD PTR[16+rsp],xmm10 - rol ebp,5 - add edx,edi - xor esi,eax - pslld xmm6,2 - xor eax,ebx - add edx,ebp - psrld xmm9,30 - add ecx,DWORD PTR[40+rsp] - and esi,eax - xor eax,ebx - por xmm6,xmm9 - ror ebp,7 - mov edi,edx - xor esi,eax - rol edx,5 - pshufd xmm10,xmm5,238 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - mov esi,ecx - xor edi,ebp - rol ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - pxor xmm7,xmm3 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - ror ecx,7 - punpcklqdq xmm10,xmm6 - mov edi,ebx - xor esi,edx - pxor xmm7,xmm0 - rol ebx,5 - add eax,esi - movdqa xmm9,XMMWORD PTR[32+r11] - xor edi,ecx - paddd xmm8,xmm6 - xor ecx,edx - pxor xmm7,xmm10 - add eax,ebx - add ebp,DWORD PTR[52+rsp] - and edi,ecx - xor ecx,edx - ror ebx,7 - movdqa xmm10,xmm7 - mov esi,eax - xor edi,ecx - movdqa XMMWORD PTR[32+rsp],xmm8 - rol eax,5 - add ebp,edi - xor esi,ebx - pslld xmm7,2 - xor ebx,ecx - add ebp,eax - psrld xmm10,30 - add edx,DWORD PTR[56+rsp] - and esi,ebx - xor ebx,ecx - por xmm7,xmm10 - ror eax,7 - mov edi,ebp - xor esi,ebx - rol ebp,5 - pshufd xmm8,xmm6,238 - add edx,esi - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - mov esi,edx - xor edi,eax - rol edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - pxor xmm0,xmm4 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - ror edx,7 - punpcklqdq xmm8,xmm7 - mov edi,ecx - xor esi,ebp - pxor xmm0,xmm1 - rol ecx,5 - add ebx,esi - movdqa xmm10,xmm9 - xor edi,edx - paddd xmm9,xmm7 - xor edx,ebp - pxor xmm0,xmm8 - add ebx,ecx - add eax,DWORD PTR[4+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - movdqa xmm8,xmm0 - mov esi,ebx - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm9 - rol ebx,5 - add eax,edi - xor esi,ecx - pslld xmm0,2 - xor ecx,edx - add eax,ebx - psrld xmm8,30 - add ebp,DWORD PTR[8+rsp] - and esi,ecx - xor ecx,edx - por xmm0,xmm8 - ror ebx,7 - mov edi,eax - xor esi,ecx - rol eax,5 - pshufd xmm9,xmm7,238 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - mov esi,ebp - xor edi,ebx - rol ebp,5 - add edx,edi - xor esi,eax - xor eax,ebx - add edx,ebp - pxor xmm1,xmm5 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - ror ebp,7 - punpcklqdq xmm9,xmm0 - mov edi,edx - xor esi,eax - pxor xmm1,xmm2 - rol edx,5 - add ecx,esi - movdqa xmm8,xmm10 - xor edi,ebp - paddd xmm10,xmm0 - xor ebp,eax - pxor xmm1,xmm9 - add ecx,edx - add ebx,DWORD PTR[20+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movdqa xmm9,xmm1 - mov esi,ecx - xor edi,ebp - movdqa XMMWORD PTR[rsp],xmm10 - rol ecx,5 - add ebx,edi - xor esi,edx - pslld xmm1,2 - xor edx,ebp - add ebx,ecx - psrld xmm9,30 - add eax,DWORD PTR[24+rsp] - and esi,edx - xor edx,ebp - por xmm1,xmm9 - ror ecx,7 - mov edi,ebx - xor esi,edx - rol ebx,5 - pshufd xmm10,xmm0,238 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - and edi,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor edi,ecx - rol eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - pxor xmm2,xmm6 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - ror eax,7 - punpcklqdq xmm10,xmm1 - mov edi,ebp - xor esi,ebx - pxor xmm2,xmm3 - rol ebp,5 - add edx,esi - movdqa xmm9,xmm8 - xor edi,eax - paddd xmm8,xmm1 - xor eax,ebx - pxor xmm2,xmm10 - add edx,ebp - add ecx,DWORD PTR[36+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - movdqa xmm10,xmm2 - mov esi,edx - xor edi,eax - movdqa XMMWORD PTR[16+rsp],xmm8 - rol edx,5 - add ecx,edi - xor esi,ebp - pslld xmm2,2 - xor ebp,eax - add ecx,edx - psrld xmm10,30 - add ebx,DWORD PTR[40+rsp] - and esi,ebp - xor ebp,eax - por xmm2,xmm10 - ror edx,7 - mov edi,ecx - xor esi,ebp - rol ecx,5 - pshufd xmm8,xmm1,238 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - pxor xmm3,xmm7 - add ebp,DWORD PTR[48+rsp] - xor esi,ecx - punpcklqdq xmm8,xmm2 - mov edi,eax - rol eax,5 - pxor xmm3,xmm4 - add ebp,esi - xor edi,ecx - movdqa xmm10,xmm9 - ror ebx,7 - paddd xmm9,xmm2 - add ebp,eax - pxor xmm3,xmm8 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm8,xmm3 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[32+rsp],xmm9 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[56+rsp] - pslld xmm3,2 - xor esi,eax - mov edi,edx - psrld xmm8,30 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - por xmm3,xmm8 - add ecx,edx - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - paddd xmm10,xmm3 - add eax,esi - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm10 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - cmp r9,r10 - je $L$done_ssse3 - movdqa xmm6,XMMWORD PTR[64+r11] - movdqa xmm9,XMMWORD PTR[((-64))+r11] - movdqu xmm0,XMMWORD PTR[r9] - movdqu xmm1,XMMWORD PTR[16+r9] - movdqu xmm2,XMMWORD PTR[32+r9] - movdqu xmm3,XMMWORD PTR[48+r9] -DB 102,15,56,0,198 - add r9,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx -DB 102,15,56,0,206 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - paddd xmm0,xmm9 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - movdqa XMMWORD PTR[rsp],xmm0 - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - psubd xmm0,xmm9 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx -DB 102,15,56,0,214 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - paddd xmm1,xmm9 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm1 - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - psubd xmm1,xmm9 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp -DB 102,15,56,0,222 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - paddd xmm2,xmm9 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - movdqa XMMWORD PTR[32+rsp],xmm2 - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - psubd xmm2,xmm9 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - add edx,DWORD PTR[12+r8] - mov DWORD PTR[r8],eax - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[4+r8],esi - mov ebx,esi - mov DWORD PTR[8+r8],ecx - mov edi,ecx - mov DWORD PTR[12+r8],edx - xor edi,edx - mov DWORD PTR[16+r8],ebp - and esi,edi - jmp $L$oop_ssse3 - -ALIGN 16 -$L$done_ssse3:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - mov DWORD PTR[r8],eax - add edx,DWORD PTR[12+r8] - mov DWORD PTR[4+r8],esi - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[8+r8],ecx - mov DWORD PTR[12+r8],edx - mov DWORD PTR[16+r8],ebp - movaps xmm6,XMMWORD PTR[((-40-96))+r14] - movaps xmm7,XMMWORD PTR[((-40-80))+r14] - movaps xmm8,XMMWORD PTR[((-40-64))+r14] - movaps xmm9,XMMWORD PTR[((-40-48))+r14] - movaps xmm10,XMMWORD PTR[((-40-32))+r14] - movaps xmm11,XMMWORD PTR[((-40-16))+r14] - lea rsi,QWORD PTR[r14] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_ssse3:: -sha1_block_data_order_ssse3 ENDP - -ALIGN 16 -sha1_block_data_order_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - lea rsp,QWORD PTR[((-160))+rsp] - vzeroupper - vmovaps XMMWORD PTR[(-40-96)+rax],xmm6 - vmovaps XMMWORD PTR[(-40-80)+rax],xmm7 - vmovaps XMMWORD PTR[(-40-64)+rax],xmm8 - vmovaps XMMWORD PTR[(-40-48)+rax],xmm9 - vmovaps XMMWORD PTR[(-40-32)+rax],xmm10 - vmovaps XMMWORD PTR[(-40-16)+rax],xmm11 -$L$prologue_avx:: - mov r14,rax - and rsp,-64 - mov r8,rdi - mov r9,rsi - mov r10,rdx - - shl r10,6 - add r10,r9 - lea r11,QWORD PTR[((K_XX_XX+64))] - - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov esi,ebx - mov ebp,DWORD PTR[16+r8] - mov edi,ecx - xor edi,edx - and esi,edi - - vmovdqa xmm6,XMMWORD PTR[64+r11] - vmovdqa xmm11,XMMWORD PTR[((-64))+r11] - vmovdqu xmm0,XMMWORD PTR[r9] - vmovdqu xmm1,XMMWORD PTR[16+r9] - vmovdqu xmm2,XMMWORD PTR[32+r9] - vmovdqu xmm3,XMMWORD PTR[48+r9] - vpshufb xmm0,xmm0,xmm6 - add r9,64 - vpshufb xmm1,xmm1,xmm6 - vpshufb xmm2,xmm2,xmm6 - vpshufb xmm3,xmm3,xmm6 - vpaddd xmm4,xmm0,xmm11 - vpaddd xmm5,xmm1,xmm11 - vpaddd xmm6,xmm2,xmm11 - vmovdqa XMMWORD PTR[rsp],xmm4 - vmovdqa XMMWORD PTR[16+rsp],xmm5 - vmovdqa XMMWORD PTR[32+rsp],xmm6 - jmp $L$oop_avx -ALIGN 16 -$L$oop_avx:: - shrd ebx,ebx,2 - xor esi,edx - vpalignr xmm4,xmm1,xmm0,8 - mov edi,eax - add ebp,DWORD PTR[rsp] - vpaddd xmm9,xmm11,xmm3 - xor ebx,ecx - shld eax,eax,5 - vpsrldq xmm8,xmm3,4 - add ebp,esi - and edi,ebx - vpxor xmm4,xmm4,xmm0 - xor ebx,ecx - add ebp,eax - vpxor xmm8,xmm8,xmm2 - shrd eax,eax,7 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - vpxor xmm4,xmm4,xmm8 - xor eax,ebx - shld ebp,ebp,5 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - add edx,edi - and esi,eax - vpsrld xmm8,xmm4,31 - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor esi,ebx - vpslldq xmm10,xmm4,12 - vpaddd xmm4,xmm4,xmm4 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - xor ebp,eax - shld edx,edx,5 - vpsrld xmm9,xmm10,30 - vpor xmm4,xmm4,xmm8 - add ecx,esi - and edi,ebp - xor ebp,eax - add ecx,edx - vpslld xmm10,xmm10,2 - vpxor xmm4,xmm4,xmm9 - shrd edx,edx,7 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - vpxor xmm4,xmm4,xmm10 - xor edx,ebp - shld ecx,ecx,5 - add ebx,edi - and esi,edx - xor edx,ebp - add ebx,ecx - shrd ecx,ecx,7 - xor esi,ebp - vpalignr xmm5,xmm2,xmm1,8 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - vpaddd xmm9,xmm11,xmm4 - xor ecx,edx - shld ebx,ebx,5 - vpsrldq xmm8,xmm4,4 - add eax,esi - and edi,ecx - vpxor xmm5,xmm5,xmm1 - xor ecx,edx - add eax,ebx - vpxor xmm8,xmm8,xmm3 - shrd ebx,ebx,7 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - vpxor xmm5,xmm5,xmm8 - xor ebx,ecx - shld eax,eax,5 - vmovdqa XMMWORD PTR[rsp],xmm9 - add ebp,edi - and esi,ebx - vpsrld xmm8,xmm5,31 - xor ebx,ecx - add ebp,eax - shrd eax,eax,7 - xor esi,ecx - vpslldq xmm10,xmm5,12 - vpaddd xmm5,xmm5,xmm5 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - xor eax,ebx - shld ebp,ebp,5 - vpsrld xmm9,xmm10,30 - vpor xmm5,xmm5,xmm8 - add edx,esi - and edi,eax - xor eax,ebx - add edx,ebp - vpslld xmm10,xmm10,2 - vpxor xmm5,xmm5,xmm9 - shrd ebp,ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - vpxor xmm5,xmm5,xmm10 - xor ebp,eax - shld edx,edx,5 - vmovdqa xmm11,XMMWORD PTR[((-32))+r11] - add ecx,edi - and esi,ebp - xor ebp,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - vpalignr xmm6,xmm3,xmm2,8 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - vpaddd xmm9,xmm11,xmm5 - xor edx,ebp - shld ecx,ecx,5 - vpsrldq xmm8,xmm5,4 - add ebx,esi - and edi,edx - vpxor xmm6,xmm6,xmm2 - xor edx,ebp - add ebx,ecx - vpxor xmm8,xmm8,xmm4 - shrd ecx,ecx,7 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - vpxor xmm6,xmm6,xmm8 - xor ecx,edx - shld ebx,ebx,5 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - add eax,edi - and esi,ecx - vpsrld xmm8,xmm6,31 - xor ecx,edx - add eax,ebx - shrd ebx,ebx,7 - xor esi,edx - vpslldq xmm10,xmm6,12 - vpaddd xmm6,xmm6,xmm6 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - xor ebx,ecx - shld eax,eax,5 - vpsrld xmm9,xmm10,30 - vpor xmm6,xmm6,xmm8 - add ebp,esi - and edi,ebx - xor ebx,ecx - add ebp,eax - vpslld xmm10,xmm10,2 - vpxor xmm6,xmm6,xmm9 - shrd eax,eax,7 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - vpxor xmm6,xmm6,xmm10 - xor eax,ebx - shld ebp,ebp,5 - add edx,edi - and esi,eax - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor esi,ebx - vpalignr xmm7,xmm4,xmm3,8 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - vpaddd xmm9,xmm11,xmm6 - xor ebp,eax - shld edx,edx,5 - vpsrldq xmm8,xmm6,4 - add ecx,esi - and edi,ebp - vpxor xmm7,xmm7,xmm3 - xor ebp,eax - add ecx,edx - vpxor xmm8,xmm8,xmm5 - shrd edx,edx,7 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - vpxor xmm7,xmm7,xmm8 - xor edx,ebp - shld ecx,ecx,5 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add ebx,edi - and esi,edx - vpsrld xmm8,xmm7,31 - xor edx,ebp - add ebx,ecx - shrd ecx,ecx,7 - xor esi,ebp - vpslldq xmm10,xmm7,12 - vpaddd xmm7,xmm7,xmm7 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - xor ecx,edx - shld ebx,ebx,5 - vpsrld xmm9,xmm10,30 - vpor xmm7,xmm7,xmm8 - add eax,esi - and edi,ecx - xor ecx,edx - add eax,ebx - vpslld xmm10,xmm10,2 - vpxor xmm7,xmm7,xmm9 - shrd ebx,ebx,7 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - vpxor xmm7,xmm7,xmm10 - xor ebx,ecx - shld eax,eax,5 - add ebp,edi - and esi,ebx - xor ebx,ecx - add ebp,eax - vpalignr xmm8,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - shrd eax,eax,7 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - vpxor xmm0,xmm0,xmm1 - xor eax,ebx - shld ebp,ebp,5 - vpaddd xmm9,xmm11,xmm7 - add edx,esi - and edi,eax - vpxor xmm0,xmm0,xmm8 - xor eax,ebx - add edx,ebp - shrd ebp,ebp,7 - xor edi,ebx - vpsrld xmm8,xmm0,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - mov esi,edx - add ecx,DWORD PTR[4+rsp] - xor ebp,eax - shld edx,edx,5 - vpslld xmm0,xmm0,2 - add ecx,edi - and esi,ebp - xor ebp,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - vpor xmm0,xmm0,xmm8 - xor edx,ebp - shld ecx,ecx,5 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpalignr xmm8,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add ebp,DWORD PTR[16+rsp] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - vpxor xmm1,xmm1,xmm2 - add ebp,esi - xor edi,ecx - vpaddd xmm9,xmm11,xmm0 - shrd ebx,ebx,7 - add ebp,eax - vpxor xmm1,xmm1,xmm8 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - vpsrld xmm8,xmm1,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpslld xmm1,xmm1,2 - add ecx,DWORD PTR[24+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vpor xmm1,xmm1,xmm8 - add ebx,DWORD PTR[28+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - vpalignr xmm8,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add eax,DWORD PTR[32+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - vpxor xmm2,xmm2,xmm3 - add eax,esi - xor edi,edx - vpaddd xmm9,xmm11,xmm1 - vmovdqa xmm11,XMMWORD PTR[r11] - shrd ecx,ecx,7 - add eax,ebx - vpxor xmm2,xmm2,xmm8 - add ebp,DWORD PTR[36+rsp] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - vpsrld xmm8,xmm2,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpslld xmm2,xmm2,2 - add edx,DWORD PTR[40+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - vpor xmm2,xmm2,xmm8 - add ecx,DWORD PTR[44+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - vpalignr xmm8,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - vpxor xmm3,xmm3,xmm4 - add ebx,esi - xor edi,ebp - vpaddd xmm9,xmm11,xmm2 - shrd edx,edx,7 - add ebx,ecx - vpxor xmm3,xmm3,xmm8 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - vpsrld xmm8,xmm3,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpslld xmm3,xmm3,2 - add ebp,DWORD PTR[56+rsp] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpor xmm3,xmm3,xmm8 - add edx,DWORD PTR[60+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpalignr xmm8,xmm3,xmm2,8 - vpxor xmm4,xmm4,xmm0 - add ecx,DWORD PTR[rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - vpxor xmm4,xmm4,xmm5 - add ecx,esi - xor edi,eax - vpaddd xmm9,xmm11,xmm3 - shrd ebp,ebp,7 - add ecx,edx - vpxor xmm4,xmm4,xmm8 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - vpsrld xmm8,xmm4,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - vpslld xmm4,xmm4,2 - add eax,DWORD PTR[8+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - vpor xmm4,xmm4,xmm8 - add ebp,DWORD PTR[12+rsp] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - vpalignr xmm8,xmm4,xmm3,8 - vpxor xmm5,xmm5,xmm1 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - vpxor xmm5,xmm5,xmm6 - add edx,esi - xor edi,ebx - vpaddd xmm9,xmm11,xmm4 - shrd eax,eax,7 - add edx,ebp - vpxor xmm5,xmm5,xmm8 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - vpsrld xmm8,xmm5,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - add ecx,edi - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - vpslld xmm5,xmm5,2 - add ebx,DWORD PTR[24+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - vpor xmm5,xmm5,xmm8 - add eax,DWORD PTR[28+rsp] - shrd ecx,ecx,7 - mov esi,ebx - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - vpalignr xmm8,xmm5,xmm4,8 - vpxor xmm6,xmm6,xmm2 - add ebp,DWORD PTR[32+rsp] - and esi,ecx - xor ecx,edx - shrd ebx,ebx,7 - vpxor xmm6,xmm6,xmm7 - mov edi,eax - xor esi,ecx - vpaddd xmm9,xmm11,xmm5 - shld eax,eax,5 - add ebp,esi - vpxor xmm6,xmm6,xmm8 - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[36+rsp] - vpsrld xmm8,xmm6,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - and edi,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,ebp - vpslld xmm6,xmm6,2 - xor edi,ebx - shld ebp,ebp,5 - add edx,edi - xor esi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[40+rsp] - and esi,eax - vpor xmm6,xmm6,xmm8 - xor eax,ebx - shrd ebp,ebp,7 - mov edi,edx - xor esi,eax - shld edx,edx,5 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - shrd edx,edx,7 - mov esi,ecx - xor edi,ebp - shld ecx,ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - vpalignr xmm8,xmm6,xmm5,8 - vpxor xmm7,xmm7,xmm3 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - shrd ecx,ecx,7 - vpxor xmm7,xmm7,xmm0 - mov edi,ebx - xor esi,edx - vpaddd xmm9,xmm11,xmm6 - vmovdqa xmm11,XMMWORD PTR[32+r11] - shld ebx,ebx,5 - add eax,esi - vpxor xmm7,xmm7,xmm8 - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[52+rsp] - vpsrld xmm8,xmm7,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - and edi,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - vpslld xmm7,xmm7,2 - xor edi,ecx - shld eax,eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[56+rsp] - and esi,ebx - vpor xmm7,xmm7,xmm8 - xor ebx,ecx - shrd eax,eax,7 - mov edi,ebp - xor esi,ebx - shld ebp,ebp,5 - add edx,esi - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - shrd ebp,ebp,7 - mov esi,edx - xor edi,eax - shld edx,edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - vpalignr xmm8,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - shrd edx,edx,7 - vpxor xmm0,xmm0,xmm1 - mov edi,ecx - xor esi,ebp - vpaddd xmm9,xmm11,xmm7 - shld ecx,ecx,5 - add ebx,esi - vpxor xmm0,xmm0,xmm8 - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[4+rsp] - vpsrld xmm8,xmm0,30 - vmovdqa XMMWORD PTR[48+rsp],xmm9 - and edi,edx - xor edx,ebp - shrd ecx,ecx,7 - mov esi,ebx - vpslld xmm0,xmm0,2 - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[8+rsp] - and esi,ecx - vpor xmm0,xmm0,xmm8 - xor ecx,edx - shrd ebx,ebx,7 - mov edi,eax - xor esi,ecx - shld eax,eax,5 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,ebp - xor edi,ebx - shld ebp,ebp,5 - add edx,edi - xor esi,eax - xor eax,ebx - add edx,ebp - vpalignr xmm8,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - shrd ebp,ebp,7 - vpxor xmm1,xmm1,xmm2 - mov edi,edx - xor esi,eax - vpaddd xmm9,xmm11,xmm0 - shld edx,edx,5 - add ecx,esi - vpxor xmm1,xmm1,xmm8 - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[20+rsp] - vpsrld xmm8,xmm1,30 - vmovdqa XMMWORD PTR[rsp],xmm9 - and edi,ebp - xor ebp,eax - shrd edx,edx,7 - mov esi,ecx - vpslld xmm1,xmm1,2 - xor edi,ebp - shld ecx,ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[24+rsp] - and esi,edx - vpor xmm1,xmm1,xmm8 - xor edx,ebp - shrd ecx,ecx,7 - mov edi,ebx - xor esi,edx - shld ebx,ebx,5 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - and edi,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - xor edi,ecx - shld eax,eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - vpalignr xmm8,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - shrd eax,eax,7 - vpxor xmm2,xmm2,xmm3 - mov edi,ebp - xor esi,ebx - vpaddd xmm9,xmm11,xmm1 - shld ebp,ebp,5 - add edx,esi - vpxor xmm2,xmm2,xmm8 - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[36+rsp] - vpsrld xmm8,xmm2,30 - vmovdqa XMMWORD PTR[16+rsp],xmm9 - and edi,eax - xor eax,ebx - shrd ebp,ebp,7 - mov esi,edx - vpslld xmm2,xmm2,2 - xor edi,eax - shld edx,edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[40+rsp] - and esi,ebp - vpor xmm2,xmm2,xmm8 - xor ebp,eax - shrd edx,edx,7 - mov edi,ecx - xor esi,ebp - shld ecx,ecx,5 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - shrd ecx,ecx,7 - mov esi,ebx - xor edi,edx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - vpalignr xmm8,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add ebp,DWORD PTR[48+rsp] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - vpxor xmm3,xmm3,xmm4 - add ebp,esi - xor edi,ecx - vpaddd xmm9,xmm11,xmm2 - shrd ebx,ebx,7 - add ebp,eax - vpxor xmm3,xmm3,xmm8 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - vpsrld xmm8,xmm3,30 - vmovdqa XMMWORD PTR[32+rsp],xmm9 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - vpslld xmm3,xmm3,2 - add ecx,DWORD PTR[56+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vpor xmm3,xmm3,xmm8 - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - vpaddd xmm9,xmm11,xmm3 - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - vmovdqa XMMWORD PTR[48+rsp],xmm9 - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - cmp r9,r10 - je $L$done_avx - vmovdqa xmm6,XMMWORD PTR[64+r11] - vmovdqa xmm11,XMMWORD PTR[((-64))+r11] - vmovdqu xmm0,XMMWORD PTR[r9] - vmovdqu xmm1,XMMWORD PTR[16+r9] - vmovdqu xmm2,XMMWORD PTR[32+r9] - vmovdqu xmm3,XMMWORD PTR[48+r9] - vpshufb xmm0,xmm0,xmm6 - add r9,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - vpshufb xmm1,xmm1,xmm6 - mov edi,ecx - shld ecx,ecx,5 - vpaddd xmm4,xmm0,xmm11 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - vmovdqa XMMWORD PTR[rsp],xmm4 - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - vpshufb xmm2,xmm2,xmm6 - mov edi,edx - shld edx,edx,5 - vpaddd xmm5,xmm1,xmm11 - add ecx,esi - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - vmovdqa XMMWORD PTR[16+rsp],xmm5 - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - vpshufb xmm3,xmm3,xmm6 - mov edi,ebp - shld ebp,ebp,5 - vpaddd xmm6,xmm2,xmm11 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - vmovdqa XMMWORD PTR[32+rsp],xmm6 - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - shrd ecx,ecx,7 - add eax,ebx - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - add edx,DWORD PTR[12+r8] - mov DWORD PTR[r8],eax - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[4+r8],esi - mov ebx,esi - mov DWORD PTR[8+r8],ecx - mov edi,ecx - mov DWORD PTR[12+r8],edx - xor edi,edx - mov DWORD PTR[16+r8],ebp - and esi,edi - jmp $L$oop_avx - -ALIGN 16 -$L$done_avx:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - shld eax,eax,5 - add ebp,esi - xor edi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - shld ebp,ebp,5 - add edx,edi - xor esi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - shld edx,edx,5 - add ecx,esi - xor edi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - shld ecx,ecx,5 - add ebx,edi - xor esi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - shld ebx,ebx,5 - add eax,esi - xor edi,edx - shrd ecx,ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - shld eax,eax,5 - add ebp,edi - xor esi,ecx - shrd ebx,ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - shld ebp,ebp,5 - add edx,esi - xor edi,ebx - shrd eax,eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - shld edx,edx,5 - add ecx,edi - xor esi,eax - shrd ebp,ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - shld ecx,ecx,5 - add ebx,esi - xor edi,ebp - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,edi - shrd ecx,ecx,7 - add eax,ebx - vzeroupper - - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - mov DWORD PTR[r8],eax - add edx,DWORD PTR[12+r8] - mov DWORD PTR[4+r8],esi - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[8+r8],ecx - mov DWORD PTR[12+r8],edx - mov DWORD PTR[16+r8],ebp - movaps xmm6,XMMWORD PTR[((-40-96))+r14] - movaps xmm7,XMMWORD PTR[((-40-80))+r14] - movaps xmm8,XMMWORD PTR[((-40-64))+r14] - movaps xmm9,XMMWORD PTR[((-40-48))+r14] - movaps xmm10,XMMWORD PTR[((-40-32))+r14] - movaps xmm11,XMMWORD PTR[((-40-16))+r14] - lea rsi,QWORD PTR[r14] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_avx:: -sha1_block_data_order_avx ENDP - -ALIGN 16 -sha1_block_data_order_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx2_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - vzeroupper - lea rsp,QWORD PTR[((-96))+rsp] - vmovaps XMMWORD PTR[(-40-96)+rax],xmm6 - vmovaps XMMWORD PTR[(-40-80)+rax],xmm7 - vmovaps XMMWORD PTR[(-40-64)+rax],xmm8 - vmovaps XMMWORD PTR[(-40-48)+rax],xmm9 - vmovaps XMMWORD PTR[(-40-32)+rax],xmm10 - vmovaps XMMWORD PTR[(-40-16)+rax],xmm11 -$L$prologue_avx2:: - mov r14,rax - mov r8,rdi - mov r9,rsi - mov r10,rdx - - lea rsp,QWORD PTR[((-640))+rsp] - shl r10,6 - lea r13,QWORD PTR[64+r9] - and rsp,-128 - add r10,r9 - lea r11,QWORD PTR[((K_XX_XX+64))] - - mov eax,DWORD PTR[r8] - cmp r13,r10 - cmovae r13,r9 - mov ebp,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov esi,DWORD PTR[16+r8] - vmovdqu ymm6,YMMWORD PTR[64+r11] - - vmovdqu xmm0,XMMWORD PTR[r9] - vmovdqu xmm1,XMMWORD PTR[16+r9] - vmovdqu xmm2,XMMWORD PTR[32+r9] - vmovdqu xmm3,XMMWORD PTR[48+r9] - lea r9,QWORD PTR[64+r9] - vinserti128 ymm0,ymm0,XMMWORD PTR[r13],1 - vinserti128 ymm1,ymm1,XMMWORD PTR[16+r13],1 - vpshufb ymm0,ymm0,ymm6 - vinserti128 ymm2,ymm2,XMMWORD PTR[32+r13],1 - vpshufb ymm1,ymm1,ymm6 - vinserti128 ymm3,ymm3,XMMWORD PTR[48+r13],1 - vpshufb ymm2,ymm2,ymm6 - vmovdqu ymm11,YMMWORD PTR[((-64))+r11] - vpshufb ymm3,ymm3,ymm6 - - vpaddd ymm4,ymm0,ymm11 - vpaddd ymm5,ymm1,ymm11 - vmovdqu YMMWORD PTR[rsp],ymm4 - vpaddd ymm6,ymm2,ymm11 - vmovdqu YMMWORD PTR[32+rsp],ymm5 - vpaddd ymm7,ymm3,ymm11 - vmovdqu YMMWORD PTR[64+rsp],ymm6 - vmovdqu YMMWORD PTR[96+rsp],ymm7 - vpalignr ymm4,ymm1,ymm0,8 - vpsrldq ymm8,ymm3,4 - vpxor ymm4,ymm4,ymm0 - vpxor ymm8,ymm8,ymm2 - vpxor ymm4,ymm4,ymm8 - vpsrld ymm8,ymm4,31 - vpslldq ymm10,ymm4,12 - vpaddd ymm4,ymm4,ymm4 - vpsrld ymm9,ymm10,30 - vpor ymm4,ymm4,ymm8 - vpslld ymm10,ymm10,2 - vpxor ymm4,ymm4,ymm9 - vpxor ymm4,ymm4,ymm10 - vpaddd ymm9,ymm4,ymm11 - vmovdqu YMMWORD PTR[128+rsp],ymm9 - vpalignr ymm5,ymm2,ymm1,8 - vpsrldq ymm8,ymm4,4 - vpxor ymm5,ymm5,ymm1 - vpxor ymm8,ymm8,ymm3 - vpxor ymm5,ymm5,ymm8 - vpsrld ymm8,ymm5,31 - vmovdqu ymm11,YMMWORD PTR[((-32))+r11] - vpslldq ymm10,ymm5,12 - vpaddd ymm5,ymm5,ymm5 - vpsrld ymm9,ymm10,30 - vpor ymm5,ymm5,ymm8 - vpslld ymm10,ymm10,2 - vpxor ymm5,ymm5,ymm9 - vpxor ymm5,ymm5,ymm10 - vpaddd ymm9,ymm5,ymm11 - vmovdqu YMMWORD PTR[160+rsp],ymm9 - vpalignr ymm6,ymm3,ymm2,8 - vpsrldq ymm8,ymm5,4 - vpxor ymm6,ymm6,ymm2 - vpxor ymm8,ymm8,ymm4 - vpxor ymm6,ymm6,ymm8 - vpsrld ymm8,ymm6,31 - vpslldq ymm10,ymm6,12 - vpaddd ymm6,ymm6,ymm6 - vpsrld ymm9,ymm10,30 - vpor ymm6,ymm6,ymm8 - vpslld ymm10,ymm10,2 - vpxor ymm6,ymm6,ymm9 - vpxor ymm6,ymm6,ymm10 - vpaddd ymm9,ymm6,ymm11 - vmovdqu YMMWORD PTR[192+rsp],ymm9 - vpalignr ymm7,ymm4,ymm3,8 - vpsrldq ymm8,ymm6,4 - vpxor ymm7,ymm7,ymm3 - vpxor ymm8,ymm8,ymm5 - vpxor ymm7,ymm7,ymm8 - vpsrld ymm8,ymm7,31 - vpslldq ymm10,ymm7,12 - vpaddd ymm7,ymm7,ymm7 - vpsrld ymm9,ymm10,30 - vpor ymm7,ymm7,ymm8 - vpslld ymm10,ymm10,2 - vpxor ymm7,ymm7,ymm9 - vpxor ymm7,ymm7,ymm10 - vpaddd ymm9,ymm7,ymm11 - vmovdqu YMMWORD PTR[224+rsp],ymm9 - lea r13,QWORD PTR[128+rsp] - jmp $L$oop_avx2 -ALIGN 32 -$L$oop_avx2:: - rorx ebx,ebp,2 - andn edi,ebp,edx - and ebp,ecx - xor ebp,edi - jmp $L$align32_1 -ALIGN 32 -$L$align32_1:: - vpalignr ymm8,ymm7,ymm6,8 - vpxor ymm0,ymm0,ymm4 - add esi,DWORD PTR[((-128))+r13] - andn edi,eax,ecx - vpxor ymm0,ymm0,ymm1 - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - vpxor ymm0,ymm0,ymm8 - and eax,ebx - add esi,r12d - xor eax,edi - vpsrld ymm8,ymm0,30 - vpslld ymm0,ymm0,2 - add edx,DWORD PTR[((-124))+r13] - andn edi,esi,ebx - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - vpor ymm0,ymm0,ymm8 - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-120))+r13] - andn edi,edx,ebp - vpaddd ymm9,ymm0,ymm11 - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - vmovdqu YMMWORD PTR[256+rsp],ymm9 - add ecx,r12d - xor edx,edi - add ebx,DWORD PTR[((-116))+r13] - andn edi,ecx,eax - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - and ecx,esi - add ebx,r12d - xor ecx,edi - add ebp,DWORD PTR[((-96))+r13] - andn edi,ebx,esi - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - and ebx,edx - add ebp,r12d - xor ebx,edi - vpalignr ymm8,ymm0,ymm7,8 - vpxor ymm1,ymm1,ymm5 - add eax,DWORD PTR[((-92))+r13] - andn edi,ebp,edx - vpxor ymm1,ymm1,ymm2 - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - vpxor ymm1,ymm1,ymm8 - and ebp,ecx - add eax,r12d - xor ebp,edi - vpsrld ymm8,ymm1,30 - vpslld ymm1,ymm1,2 - add esi,DWORD PTR[((-88))+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - vpor ymm1,ymm1,ymm8 - add esi,r12d - xor eax,edi - add edx,DWORD PTR[((-84))+r13] - andn edi,esi,ebx - vpaddd ymm9,ymm1,ymm11 - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - vmovdqu YMMWORD PTR[288+rsp],ymm9 - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-64))+r13] - andn edi,edx,ebp - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - add ecx,r12d - xor edx,edi - add ebx,DWORD PTR[((-60))+r13] - andn edi,ecx,eax - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - and ecx,esi - add ebx,r12d - xor ecx,edi - vpalignr ymm8,ymm1,ymm0,8 - vpxor ymm2,ymm2,ymm6 - add ebp,DWORD PTR[((-56))+r13] - andn edi,ebx,esi - vpxor ymm2,ymm2,ymm3 - vmovdqu ymm11,YMMWORD PTR[r11] - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - vpxor ymm2,ymm2,ymm8 - and ebx,edx - add ebp,r12d - xor ebx,edi - vpsrld ymm8,ymm2,30 - vpslld ymm2,ymm2,2 - add eax,DWORD PTR[((-52))+r13] - andn edi,ebp,edx - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - and ebp,ecx - vpor ymm2,ymm2,ymm8 - add eax,r12d - xor ebp,edi - add esi,DWORD PTR[((-32))+r13] - andn edi,eax,ecx - vpaddd ymm9,ymm2,ymm11 - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - vmovdqu YMMWORD PTR[320+rsp],ymm9 - add esi,r12d - xor eax,edi - add edx,DWORD PTR[((-28))+r13] - andn edi,esi,ebx - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-24))+r13] - andn edi,edx,ebp - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - add ecx,r12d - xor edx,edi - vpalignr ymm8,ymm2,ymm1,8 - vpxor ymm3,ymm3,ymm7 - add ebx,DWORD PTR[((-20))+r13] - andn edi,ecx,eax - vpxor ymm3,ymm3,ymm4 - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - vpxor ymm3,ymm3,ymm8 - and ecx,esi - add ebx,r12d - xor ecx,edi - vpsrld ymm8,ymm3,30 - vpslld ymm3,ymm3,2 - add ebp,DWORD PTR[r13] - andn edi,ebx,esi - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - and ebx,edx - vpor ymm3,ymm3,ymm8 - add ebp,r12d - xor ebx,edi - add eax,DWORD PTR[4+r13] - andn edi,ebp,edx - vpaddd ymm9,ymm3,ymm11 - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - and ebp,ecx - vmovdqu YMMWORD PTR[352+rsp],ymm9 - add eax,r12d - xor ebp,edi - add esi,DWORD PTR[8+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - add esi,r12d - xor eax,edi - add edx,DWORD PTR[12+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - vpalignr ymm8,ymm3,ymm2,8 - vpxor ymm4,ymm4,ymm0 - add ecx,DWORD PTR[32+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - vpxor ymm4,ymm4,ymm5 - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - vpxor ymm4,ymm4,ymm8 - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[36+r13] - vpsrld ymm8,ymm4,30 - vpslld ymm4,ymm4,2 - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - vpor ymm4,ymm4,ymm8 - add ebp,DWORD PTR[40+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - vpaddd ymm9,ymm4,ymm11 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[44+r13] - vmovdqu YMMWORD PTR[384+rsp],ymm9 - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[64+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - vpalignr ymm8,ymm4,ymm3,8 - vpxor ymm5,ymm5,ymm1 - add edx,DWORD PTR[68+r13] - lea edx,DWORD PTR[rax*1+rdx] - vpxor ymm5,ymm5,ymm6 - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - vpxor ymm5,ymm5,ymm8 - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[72+r13] - vpsrld ymm8,ymm5,30 - vpslld ymm5,ymm5,2 - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - vpor ymm5,ymm5,ymm8 - add ebx,DWORD PTR[76+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - vpaddd ymm9,ymm5,ymm11 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[96+r13] - vmovdqu YMMWORD PTR[416+rsp],ymm9 - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[100+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - vpalignr ymm8,ymm5,ymm4,8 - vpxor ymm6,ymm6,ymm2 - add esi,DWORD PTR[104+r13] - lea esi,DWORD PTR[rbp*1+rsi] - vpxor ymm6,ymm6,ymm7 - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - vpxor ymm6,ymm6,ymm8 - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[108+r13] - lea r13,QWORD PTR[256+r13] - vpsrld ymm8,ymm6,30 - vpslld ymm6,ymm6,2 - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - vpor ymm6,ymm6,ymm8 - add ecx,DWORD PTR[((-128))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - vpaddd ymm9,ymm6,ymm11 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-124))+r13] - vmovdqu YMMWORD PTR[448+rsp],ymm9 - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-120))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - vpalignr ymm8,ymm6,ymm5,8 - vpxor ymm7,ymm7,ymm3 - add eax,DWORD PTR[((-116))+r13] - lea eax,DWORD PTR[rbx*1+rax] - vpxor ymm7,ymm7,ymm0 - vmovdqu ymm11,YMMWORD PTR[32+r11] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - vpxor ymm7,ymm7,ymm8 - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-96))+r13] - vpsrld ymm8,ymm7,30 - vpslld ymm7,ymm7,2 - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - vpor ymm7,ymm7,ymm8 - add edx,DWORD PTR[((-92))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - vpaddd ymm9,ymm7,ymm11 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[((-88))+r13] - vmovdqu YMMWORD PTR[480+rsp],ymm9 - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-84))+r13] - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - and ecx,edi - jmp $L$align32_2 -ALIGN 32 -$L$align32_2:: - vpalignr ymm8,ymm7,ymm6,8 - vpxor ymm0,ymm0,ymm4 - add ebp,DWORD PTR[((-64))+r13] - xor ecx,esi - vpxor ymm0,ymm0,ymm1 - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - vpxor ymm0,ymm0,ymm8 - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - vpsrld ymm8,ymm0,30 - vpslld ymm0,ymm0,2 - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[((-60))+r13] - xor ebx,edx - mov edi,ecx - xor edi,edx - vpor ymm0,ymm0,ymm8 - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - vpaddd ymm9,ymm0,ymm11 - add eax,r12d - and ebp,edi - add esi,DWORD PTR[((-56))+r13] - xor ebp,ecx - vmovdqu YMMWORD PTR[512+rsp],ymm9 - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - add edx,DWORD PTR[((-52))+r13] - xor eax,ebx - mov edi,ebp - xor edi,ebx - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - and esi,edi - add ecx,DWORD PTR[((-32))+r13] - xor esi,ebp - mov edi,eax - xor edi,ebp - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - and edx,edi - vpalignr ymm8,ymm0,ymm7,8 - vpxor ymm1,ymm1,ymm5 - add ebx,DWORD PTR[((-28))+r13] - xor edx,eax - vpxor ymm1,ymm1,ymm2 - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - vpxor ymm1,ymm1,ymm8 - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - vpsrld ymm8,ymm1,30 - vpslld ymm1,ymm1,2 - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[((-24))+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - vpor ymm1,ymm1,ymm8 - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - vpaddd ymm9,ymm1,ymm11 - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[((-20))+r13] - xor ebx,edx - vmovdqu YMMWORD PTR[544+rsp],ymm9 - mov edi,ecx - xor edi,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - and ebp,edi - add esi,DWORD PTR[r13] - xor ebp,ecx - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - add edx,DWORD PTR[4+r13] - xor eax,ebx - mov edi,ebp - xor edi,ebx - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - and esi,edi - vpalignr ymm8,ymm1,ymm0,8 - vpxor ymm2,ymm2,ymm6 - add ecx,DWORD PTR[8+r13] - xor esi,ebp - vpxor ymm2,ymm2,ymm3 - mov edi,eax - xor edi,ebp - lea ecx,DWORD PTR[rsi*1+rcx] - vpxor ymm2,ymm2,ymm8 - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - vpsrld ymm8,ymm2,30 - vpslld ymm2,ymm2,2 - add ecx,r12d - and edx,edi - add ebx,DWORD PTR[12+r13] - xor edx,eax - mov edi,esi - xor edi,eax - vpor ymm2,ymm2,ymm8 - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - vpaddd ymm9,ymm2,ymm11 - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[32+r13] - xor ecx,esi - vmovdqu YMMWORD PTR[576+rsp],ymm9 - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[36+r13] - xor ebx,edx - mov edi,ecx - xor edi,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - and ebp,edi - add esi,DWORD PTR[40+r13] - xor ebp,ecx - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - vpalignr ymm8,ymm2,ymm1,8 - vpxor ymm3,ymm3,ymm7 - add edx,DWORD PTR[44+r13] - xor eax,ebx - vpxor ymm3,ymm3,ymm4 - mov edi,ebp - xor edi,ebx - lea edx,DWORD PTR[rax*1+rdx] - vpxor ymm3,ymm3,ymm8 - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - vpsrld ymm8,ymm3,30 - vpslld ymm3,ymm3,2 - add edx,r12d - and esi,edi - add ecx,DWORD PTR[64+r13] - xor esi,ebp - mov edi,eax - xor edi,ebp - vpor ymm3,ymm3,ymm8 - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - vpaddd ymm9,ymm3,ymm11 - add ecx,r12d - and edx,edi - add ebx,DWORD PTR[68+r13] - xor edx,eax - vmovdqu YMMWORD PTR[608+rsp],ymm9 - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[72+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[76+r13] - xor ebx,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[96+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[100+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[104+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[108+r13] - lea r13,QWORD PTR[256+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-128))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[((-124))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-120))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[((-116))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[((-96))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-92))+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-88))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[((-84))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-64))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[((-60))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[((-56))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-52))+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-32))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[((-28))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-24))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[((-20))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - add edx,r12d - lea r13,QWORD PTR[128+r9] - lea rdi,QWORD PTR[128+r9] - cmp r13,r10 - cmovae r13,r9 - - - add edx,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ebp,DWORD PTR[8+r8] - mov DWORD PTR[r8],edx - add ebx,DWORD PTR[12+r8] - mov DWORD PTR[4+r8],esi - mov eax,edx - add ecx,DWORD PTR[16+r8] - mov r12d,ebp - mov DWORD PTR[8+r8],ebp - mov edx,ebx - - mov DWORD PTR[12+r8],ebx - mov ebp,esi - mov DWORD PTR[16+r8],ecx - - mov esi,ecx - mov ecx,r12d - - - cmp r9,r10 - je $L$done_avx2 - vmovdqu ymm6,YMMWORD PTR[64+r11] - cmp rdi,r10 - ja $L$ast_avx2 - - vmovdqu xmm0,XMMWORD PTR[((-64))+rdi] - vmovdqu xmm1,XMMWORD PTR[((-48))+rdi] - vmovdqu xmm2,XMMWORD PTR[((-32))+rdi] - vmovdqu xmm3,XMMWORD PTR[((-16))+rdi] - vinserti128 ymm0,ymm0,XMMWORD PTR[r13],1 - vinserti128 ymm1,ymm1,XMMWORD PTR[16+r13],1 - vinserti128 ymm2,ymm2,XMMWORD PTR[32+r13],1 - vinserti128 ymm3,ymm3,XMMWORD PTR[48+r13],1 - jmp $L$ast_avx2 - -ALIGN 32 -$L$ast_avx2:: - lea r13,QWORD PTR[((128+16))+rsp] - rorx ebx,ebp,2 - andn edi,ebp,edx - and ebp,ecx - xor ebp,edi - sub r9,-128 - add esi,DWORD PTR[((-128))+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - add esi,r12d - xor eax,edi - add edx,DWORD PTR[((-124))+r13] - andn edi,esi,ebx - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-120))+r13] - andn edi,edx,ebp - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - add ecx,r12d - xor edx,edi - add ebx,DWORD PTR[((-116))+r13] - andn edi,ecx,eax - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - and ecx,esi - add ebx,r12d - xor ecx,edi - add ebp,DWORD PTR[((-96))+r13] - andn edi,ebx,esi - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - and ebx,edx - add ebp,r12d - xor ebx,edi - add eax,DWORD PTR[((-92))+r13] - andn edi,ebp,edx - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - and ebp,ecx - add eax,r12d - xor ebp,edi - add esi,DWORD PTR[((-88))+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - add esi,r12d - xor eax,edi - add edx,DWORD PTR[((-84))+r13] - andn edi,esi,ebx - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-64))+r13] - andn edi,edx,ebp - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - add ecx,r12d - xor edx,edi - add ebx,DWORD PTR[((-60))+r13] - andn edi,ecx,eax - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - and ecx,esi - add ebx,r12d - xor ecx,edi - add ebp,DWORD PTR[((-56))+r13] - andn edi,ebx,esi - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - and ebx,edx - add ebp,r12d - xor ebx,edi - add eax,DWORD PTR[((-52))+r13] - andn edi,ebp,edx - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - and ebp,ecx - add eax,r12d - xor ebp,edi - add esi,DWORD PTR[((-32))+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - add esi,r12d - xor eax,edi - add edx,DWORD PTR[((-28))+r13] - andn edi,esi,ebx - add edx,eax - rorx r12d,esi,27 - rorx eax,esi,2 - and esi,ebp - add edx,r12d - xor esi,edi - add ecx,DWORD PTR[((-24))+r13] - andn edi,edx,ebp - add ecx,esi - rorx r12d,edx,27 - rorx esi,edx,2 - and edx,eax - add ecx,r12d - xor edx,edi - add ebx,DWORD PTR[((-20))+r13] - andn edi,ecx,eax - add ebx,edx - rorx r12d,ecx,27 - rorx edx,ecx,2 - and ecx,esi - add ebx,r12d - xor ecx,edi - add ebp,DWORD PTR[r13] - andn edi,ebx,esi - add ebp,ecx - rorx r12d,ebx,27 - rorx ecx,ebx,2 - and ebx,edx - add ebp,r12d - xor ebx,edi - add eax,DWORD PTR[4+r13] - andn edi,ebp,edx - add eax,ebx - rorx r12d,ebp,27 - rorx ebx,ebp,2 - and ebp,ecx - add eax,r12d - xor ebp,edi - add esi,DWORD PTR[8+r13] - andn edi,eax,ecx - add esi,ebp - rorx r12d,eax,27 - rorx ebp,eax,2 - and eax,ebx - add esi,r12d - xor eax,edi - add edx,DWORD PTR[12+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[32+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[36+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[40+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[44+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[64+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - vmovdqu ymm11,YMMWORD PTR[((-64))+r11] - vpshufb ymm0,ymm0,ymm6 - add edx,DWORD PTR[68+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[72+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[76+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[96+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[100+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - vpshufb ymm1,ymm1,ymm6 - vpaddd ymm8,ymm0,ymm11 - add esi,DWORD PTR[104+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[108+r13] - lea r13,QWORD PTR[256+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[((-128))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-124))+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-120))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - vmovdqu YMMWORD PTR[rsp],ymm8 - vpshufb ymm2,ymm2,ymm6 - vpaddd ymm9,ymm1,ymm11 - add eax,DWORD PTR[((-116))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-96))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[((-92))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - xor esi,ebx - add ecx,DWORD PTR[((-88))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-84))+r13] - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - and ecx,edi - vmovdqu YMMWORD PTR[32+rsp],ymm9 - vpshufb ymm3,ymm3,ymm6 - vpaddd ymm6,ymm2,ymm11 - add ebp,DWORD PTR[((-64))+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[((-60))+r13] - xor ebx,edx - mov edi,ecx - xor edi,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - and ebp,edi - add esi,DWORD PTR[((-56))+r13] - xor ebp,ecx - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - add edx,DWORD PTR[((-52))+r13] - xor eax,ebx - mov edi,ebp - xor edi,ebx - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - and esi,edi - add ecx,DWORD PTR[((-32))+r13] - xor esi,ebp - mov edi,eax - xor edi,ebp - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - and edx,edi - jmp $L$align32_3 -ALIGN 32 -$L$align32_3:: - vmovdqu YMMWORD PTR[64+rsp],ymm6 - vpaddd ymm7,ymm3,ymm11 - add ebx,DWORD PTR[((-28))+r13] - xor edx,eax - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[((-24))+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[((-20))+r13] - xor ebx,edx - mov edi,ecx - xor edi,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - and ebp,edi - add esi,DWORD PTR[r13] - xor ebp,ecx - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - add edx,DWORD PTR[4+r13] - xor eax,ebx - mov edi,ebp - xor edi,ebx - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - and esi,edi - vmovdqu YMMWORD PTR[96+rsp],ymm7 - add ecx,DWORD PTR[8+r13] - xor esi,ebp - mov edi,eax - xor edi,ebp - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - and edx,edi - add ebx,DWORD PTR[12+r13] - xor edx,eax - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[32+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[36+r13] - xor ebx,edx - mov edi,ecx - xor edi,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - and ebp,edi - add esi,DWORD PTR[40+r13] - xor ebp,ecx - mov edi,ebx - xor edi,ecx - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - and eax,edi - vpalignr ymm4,ymm1,ymm0,8 - add edx,DWORD PTR[44+r13] - xor eax,ebx - mov edi,ebp - xor edi,ebx - vpsrldq ymm8,ymm3,4 - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - vpxor ymm4,ymm4,ymm0 - vpxor ymm8,ymm8,ymm2 - xor esi,ebp - add edx,r12d - vpxor ymm4,ymm4,ymm8 - and esi,edi - add ecx,DWORD PTR[64+r13] - xor esi,ebp - mov edi,eax - vpsrld ymm8,ymm4,31 - xor edi,ebp - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - vpslldq ymm10,ymm4,12 - vpaddd ymm4,ymm4,ymm4 - rorx esi,edx,2 - xor edx,eax - vpsrld ymm9,ymm10,30 - vpor ymm4,ymm4,ymm8 - add ecx,r12d - and edx,edi - vpslld ymm10,ymm10,2 - vpxor ymm4,ymm4,ymm9 - add ebx,DWORD PTR[68+r13] - xor edx,eax - vpxor ymm4,ymm4,ymm10 - mov edi,esi - xor edi,eax - lea ebx,DWORD PTR[rdx*1+rbx] - vpaddd ymm9,ymm4,ymm11 - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - vmovdqu YMMWORD PTR[128+rsp],ymm9 - add ebx,r12d - and ecx,edi - add ebp,DWORD PTR[72+r13] - xor ecx,esi - mov edi,edx - xor edi,esi - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - and ebx,edi - add eax,DWORD PTR[76+r13] - xor ebx,edx - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - vpalignr ymm5,ymm2,ymm1,8 - add esi,DWORD PTR[96+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - vpsrldq ymm8,ymm4,4 - xor eax,ebx - add esi,r12d - xor eax,ecx - vpxor ymm5,ymm5,ymm1 - vpxor ymm8,ymm8,ymm3 - add edx,DWORD PTR[100+r13] - lea edx,DWORD PTR[rax*1+rdx] - vpxor ymm5,ymm5,ymm8 - rorx r12d,esi,27 - rorx eax,esi,2 - xor esi,ebp - add edx,r12d - vpsrld ymm8,ymm5,31 - vmovdqu ymm11,YMMWORD PTR[((-32))+r11] - xor esi,ebx - add ecx,DWORD PTR[104+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - vpslldq ymm10,ymm5,12 - vpaddd ymm5,ymm5,ymm5 - rorx r12d,edx,27 - rorx esi,edx,2 - vpsrld ymm9,ymm10,30 - vpor ymm5,ymm5,ymm8 - xor edx,eax - add ecx,r12d - vpslld ymm10,ymm10,2 - vpxor ymm5,ymm5,ymm9 - xor edx,ebp - add ebx,DWORD PTR[108+r13] - lea r13,QWORD PTR[256+r13] - vpxor ymm5,ymm5,ymm10 - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - vpaddd ymm9,ymm5,ymm11 - xor ecx,esi - add ebx,r12d - xor ecx,eax - vmovdqu YMMWORD PTR[160+rsp],ymm9 - add ebp,DWORD PTR[((-128))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - vpalignr ymm6,ymm3,ymm2,8 - add eax,DWORD PTR[((-124))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - vpsrldq ymm8,ymm5,4 - xor ebp,ecx - add eax,r12d - xor ebp,edx - vpxor ymm6,ymm6,ymm2 - vpxor ymm8,ymm8,ymm4 - add esi,DWORD PTR[((-120))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - vpxor ymm6,ymm6,ymm8 - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - vpsrld ymm8,ymm6,31 - xor eax,ecx - add edx,DWORD PTR[((-116))+r13] - lea edx,DWORD PTR[rax*1+rdx] - vpslldq ymm10,ymm6,12 - vpaddd ymm6,ymm6,ymm6 - rorx r12d,esi,27 - rorx eax,esi,2 - vpsrld ymm9,ymm10,30 - vpor ymm6,ymm6,ymm8 - xor esi,ebp - add edx,r12d - vpslld ymm10,ymm10,2 - vpxor ymm6,ymm6,ymm9 - xor esi,ebx - add ecx,DWORD PTR[((-96))+r13] - vpxor ymm6,ymm6,ymm10 - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - vpaddd ymm9,ymm6,ymm11 - xor edx,eax - add ecx,r12d - xor edx,ebp - vmovdqu YMMWORD PTR[192+rsp],ymm9 - add ebx,DWORD PTR[((-92))+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - vpalignr ymm7,ymm4,ymm3,8 - add ebp,DWORD PTR[((-88))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - vpsrldq ymm8,ymm6,4 - xor ebx,edx - add ebp,r12d - xor ebx,esi - vpxor ymm7,ymm7,ymm3 - vpxor ymm8,ymm8,ymm5 - add eax,DWORD PTR[((-84))+r13] - lea eax,DWORD PTR[rbx*1+rax] - vpxor ymm7,ymm7,ymm8 - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - vpsrld ymm8,ymm7,31 - xor ebp,edx - add esi,DWORD PTR[((-64))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - vpslldq ymm10,ymm7,12 - vpaddd ymm7,ymm7,ymm7 - rorx r12d,eax,27 - rorx ebp,eax,2 - vpsrld ymm9,ymm10,30 - vpor ymm7,ymm7,ymm8 - xor eax,ebx - add esi,r12d - vpslld ymm10,ymm10,2 - vpxor ymm7,ymm7,ymm9 - xor eax,ecx - add edx,DWORD PTR[((-60))+r13] - vpxor ymm7,ymm7,ymm10 - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - rorx eax,esi,2 - vpaddd ymm9,ymm7,ymm11 - xor esi,ebp - add edx,r12d - xor esi,ebx - vmovdqu YMMWORD PTR[224+rsp],ymm9 - add ecx,DWORD PTR[((-56))+r13] - lea ecx,DWORD PTR[rsi*1+rcx] - rorx r12d,edx,27 - rorx esi,edx,2 - xor edx,eax - add ecx,r12d - xor edx,ebp - add ebx,DWORD PTR[((-52))+r13] - lea ebx,DWORD PTR[rdx*1+rbx] - rorx r12d,ecx,27 - rorx edx,ecx,2 - xor ecx,esi - add ebx,r12d - xor ecx,eax - add ebp,DWORD PTR[((-32))+r13] - lea ebp,DWORD PTR[rbp*1+rcx] - rorx r12d,ebx,27 - rorx ecx,ebx,2 - xor ebx,edx - add ebp,r12d - xor ebx,esi - add eax,DWORD PTR[((-28))+r13] - lea eax,DWORD PTR[rbx*1+rax] - rorx r12d,ebp,27 - rorx ebx,ebp,2 - xor ebp,ecx - add eax,r12d - xor ebp,edx - add esi,DWORD PTR[((-24))+r13] - lea esi,DWORD PTR[rbp*1+rsi] - rorx r12d,eax,27 - rorx ebp,eax,2 - xor eax,ebx - add esi,r12d - xor eax,ecx - add edx,DWORD PTR[((-20))+r13] - lea edx,DWORD PTR[rax*1+rdx] - rorx r12d,esi,27 - add edx,r12d - lea r13,QWORD PTR[128+rsp] - - - add edx,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ebp,DWORD PTR[8+r8] - mov DWORD PTR[r8],edx - add ebx,DWORD PTR[12+r8] - mov DWORD PTR[4+r8],esi - mov eax,edx - add ecx,DWORD PTR[16+r8] - mov r12d,ebp - mov DWORD PTR[8+r8],ebp - mov edx,ebx - - mov DWORD PTR[12+r8],ebx - mov ebp,esi - mov DWORD PTR[16+r8],ecx - - mov esi,ecx - mov ecx,r12d - - - cmp r9,r10 - jbe $L$oop_avx2 - -$L$done_avx2:: - vzeroupper - movaps xmm6,XMMWORD PTR[((-40-96))+r14] - movaps xmm7,XMMWORD PTR[((-40-80))+r14] - movaps xmm8,XMMWORD PTR[((-40-64))+r14] - movaps xmm9,XMMWORD PTR[((-40-48))+r14] - movaps xmm10,XMMWORD PTR[((-40-32))+r14] - movaps xmm11,XMMWORD PTR[((-40-16))+r14] - lea rsi,QWORD PTR[r14] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_avx2:: -sha1_block_data_order_avx2 ENDP -ALIGN 64 -K_XX_XX:: - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h -DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -DB 102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44 -DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60 -DB 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114 -DB 103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[64+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - - jmp $L$common_seh_tail -se_handler ENDP - -ALIGN 16 -shaext_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue_shaext] - cmp rbx,r10 - jb $L$common_seh_tail - - lea r10,QWORD PTR[$L$epilogue_shaext] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[((-8-64))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - - jmp $L$common_seh_tail -shaext_handler ENDP - -ALIGN 16 -ssse3_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[232+r8] - - lea rsi,QWORD PTR[((-40-96))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,12 - DD 0a548f3fch - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -ssse3_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha1_block_data_order - DD imagerel $L$SEH_end_sha1_block_data_order - DD imagerel $L$SEH_info_sha1_block_data_order - DD imagerel $L$SEH_begin_sha1_block_data_order_shaext - DD imagerel $L$SEH_end_sha1_block_data_order_shaext - DD imagerel $L$SEH_info_sha1_block_data_order_shaext - DD imagerel $L$SEH_begin_sha1_block_data_order_ssse3 - DD imagerel $L$SEH_end_sha1_block_data_order_ssse3 - DD imagerel $L$SEH_info_sha1_block_data_order_ssse3 - DD imagerel $L$SEH_begin_sha1_block_data_order_avx - DD imagerel $L$SEH_end_sha1_block_data_order_avx - DD imagerel $L$SEH_info_sha1_block_data_order_avx - DD imagerel $L$SEH_begin_sha1_block_data_order_avx2 - DD imagerel $L$SEH_end_sha1_block_data_order_avx2 - DD imagerel $L$SEH_info_sha1_block_data_order_avx2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha1_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler -$L$SEH_info_sha1_block_data_order_shaext:: -DB 9,0,0,0 - DD imagerel shaext_handler -$L$SEH_info_sha1_block_data_order_ssse3:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 -$L$SEH_info_sha1_block_data_order_avx:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_avx,imagerel $L$epilogue_avx -$L$SEH_info_sha1_block_data_order_avx2:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_avx2,imagerel $L$epilogue_avx2 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/sha/sha256-mb-x86_64.asm b/deps/openssl/asm/x64-win32-masm/sha/sha256-mb-x86_64.asm deleted file mode 100644 index 057853d286f1d9..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/sha/sha256-mb-x86_64.asm +++ /dev/null @@ -1,8214 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha256_multi_block - -ALIGN 32 -sha256_multi_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rcx,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt rcx,61 - jc _shaext_shortcut - test ecx,268435456 - jnz _avx_shortcut - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body:: - lea rbp,QWORD PTR[((K256+128))] - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[128+rdi] - -$L$oop_grande:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done - - movdqu xmm8,XMMWORD PTR[((0-128))+rdi] - lea rax,QWORD PTR[128+rsp] - movdqu xmm9,XMMWORD PTR[((32-128))+rdi] - movdqu xmm10,XMMWORD PTR[((64-128))+rdi] - movdqu xmm11,XMMWORD PTR[((96-128))+rdi] - movdqu xmm12,XMMWORD PTR[((128-128))+rdi] - movdqu xmm13,XMMWORD PTR[((160-128))+rdi] - movdqu xmm14,XMMWORD PTR[((192-128))+rdi] - movdqu xmm15,XMMWORD PTR[((224-128))+rdi] - movdqu xmm6,XMMWORD PTR[$L$pbswap] - jmp $L$oop - -ALIGN 32 -$L$oop:: - movdqa xmm4,xmm10 - pxor xmm4,xmm9 - movd xmm5,DWORD PTR[r8] - movd xmm0,DWORD PTR[r9] - movd xmm1,DWORD PTR[r10] - movd xmm2,DWORD PTR[r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm12 -DB 102,15,56,0,238 - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(0-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movd xmm5,DWORD PTR[4+r8] - movd xmm0,DWORD PTR[4+r9] - movd xmm1,DWORD PTR[4+r10] - movd xmm2,DWORD PTR[4+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(16-128)+rax],xmm5 - paddd xmm5,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm5 - pxor xmm7,xmm2 - - paddd xmm14,xmm5 - paddd xmm14,xmm7 - movd xmm5,DWORD PTR[8+r8] - movd xmm0,DWORD PTR[8+r9] - movd xmm1,DWORD PTR[8+r10] - movd xmm2,DWORD PTR[8+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm10 -DB 102,15,56,0,238 - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(32-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movd xmm5,DWORD PTR[12+r8] - movd xmm0,DWORD PTR[12+r9] - movd xmm1,DWORD PTR[12+r10] - movd xmm2,DWORD PTR[12+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(48-128)+rax],xmm5 - paddd xmm5,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm5 - pxor xmm7,xmm2 - - paddd xmm12,xmm5 - paddd xmm12,xmm7 - movd xmm5,DWORD PTR[16+r8] - movd xmm0,DWORD PTR[16+r9] - movd xmm1,DWORD PTR[16+r10] - movd xmm2,DWORD PTR[16+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm8 -DB 102,15,56,0,238 - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(64-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movd xmm5,DWORD PTR[20+r8] - movd xmm0,DWORD PTR[20+r9] - movd xmm1,DWORD PTR[20+r10] - movd xmm2,DWORD PTR[20+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(80-128)+rax],xmm5 - paddd xmm5,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm5 - pxor xmm7,xmm2 - - paddd xmm10,xmm5 - paddd xmm10,xmm7 - movd xmm5,DWORD PTR[24+r8] - movd xmm0,DWORD PTR[24+r9] - movd xmm1,DWORD PTR[24+r10] - movd xmm2,DWORD PTR[24+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm14 -DB 102,15,56,0,238 - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(96-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movd xmm5,DWORD PTR[28+r8] - movd xmm0,DWORD PTR[28+r9] - movd xmm1,DWORD PTR[28+r10] - movd xmm2,DWORD PTR[28+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(112-128)+rax],xmm5 - paddd xmm5,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm5 - pxor xmm7,xmm2 - - paddd xmm8,xmm5 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movd xmm5,DWORD PTR[32+r8] - movd xmm0,DWORD PTR[32+r9] - movd xmm1,DWORD PTR[32+r10] - movd xmm2,DWORD PTR[32+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm12 -DB 102,15,56,0,238 - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(128-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movd xmm5,DWORD PTR[36+r8] - movd xmm0,DWORD PTR[36+r9] - movd xmm1,DWORD PTR[36+r10] - movd xmm2,DWORD PTR[36+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(144-128)+rax],xmm5 - paddd xmm5,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm5 - pxor xmm7,xmm2 - - paddd xmm14,xmm5 - paddd xmm14,xmm7 - movd xmm5,DWORD PTR[40+r8] - movd xmm0,DWORD PTR[40+r9] - movd xmm1,DWORD PTR[40+r10] - movd xmm2,DWORD PTR[40+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm10 -DB 102,15,56,0,238 - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(160-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movd xmm5,DWORD PTR[44+r8] - movd xmm0,DWORD PTR[44+r9] - movd xmm1,DWORD PTR[44+r10] - movd xmm2,DWORD PTR[44+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(176-128)+rax],xmm5 - paddd xmm5,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm5 - pxor xmm7,xmm2 - - paddd xmm12,xmm5 - paddd xmm12,xmm7 - movd xmm5,DWORD PTR[48+r8] - movd xmm0,DWORD PTR[48+r9] - movd xmm1,DWORD PTR[48+r10] - movd xmm2,DWORD PTR[48+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm8 -DB 102,15,56,0,238 - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(192-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movd xmm5,DWORD PTR[52+r8] - movd xmm0,DWORD PTR[52+r9] - movd xmm1,DWORD PTR[52+r10] - movd xmm2,DWORD PTR[52+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(208-128)+rax],xmm5 - paddd xmm5,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm5 - pxor xmm7,xmm2 - - paddd xmm10,xmm5 - paddd xmm10,xmm7 - movd xmm5,DWORD PTR[56+r8] - movd xmm0,DWORD PTR[56+r9] - movd xmm1,DWORD PTR[56+r10] - movd xmm2,DWORD PTR[56+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm14 -DB 102,15,56,0,238 - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(224-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movd xmm5,DWORD PTR[60+r8] - lea r8,QWORD PTR[64+r8] - movd xmm0,DWORD PTR[60+r9] - lea r9,QWORD PTR[64+r9] - movd xmm1,DWORD PTR[60+r10] - lea r10,QWORD PTR[64+r10] - movd xmm2,DWORD PTR[60+r11] - lea r11,QWORD PTR[64+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(240-128)+rax],xmm5 - paddd xmm5,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - prefetcht0 [63+r8] - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - prefetcht0 [63+r9] - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - prefetcht0 [63+r10] - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - prefetcht0 [63+r11] - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm5 - pxor xmm7,xmm2 - - paddd xmm8,xmm5 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movdqu xmm5,XMMWORD PTR[((0-128))+rax] - mov ecx,3 - jmp $L$oop_16_xx -ALIGN 32 -$L$oop_16_xx:: - movdqa xmm6,XMMWORD PTR[((16-128))+rax] - paddd xmm5,XMMWORD PTR[((144-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((224-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm12 - - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(0-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movdqa xmm5,XMMWORD PTR[((32-128))+rax] - paddd xmm6,XMMWORD PTR[((160-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((240-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 - - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(16-128)+rax],xmm6 - paddd xmm6,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm6 - pxor xmm7,xmm2 - - paddd xmm14,xmm6 - paddd xmm14,xmm7 - movdqa xmm6,XMMWORD PTR[((48-128))+rax] - paddd xmm5,XMMWORD PTR[((176-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((0-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm10 - - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(32-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movdqa xmm5,XMMWORD PTR[((64-128))+rax] - paddd xmm6,XMMWORD PTR[((192-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((16-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 - - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(48-128)+rax],xmm6 - paddd xmm6,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm6 - pxor xmm7,xmm2 - - paddd xmm12,xmm6 - paddd xmm12,xmm7 - movdqa xmm6,XMMWORD PTR[((80-128))+rax] - paddd xmm5,XMMWORD PTR[((208-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((32-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm8 - - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(64-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movdqa xmm5,XMMWORD PTR[((96-128))+rax] - paddd xmm6,XMMWORD PTR[((224-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((48-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 - - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(80-128)+rax],xmm6 - paddd xmm6,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm6 - pxor xmm7,xmm2 - - paddd xmm10,xmm6 - paddd xmm10,xmm7 - movdqa xmm6,XMMWORD PTR[((112-128))+rax] - paddd xmm5,XMMWORD PTR[((240-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((64-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm14 - - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(96-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movdqa xmm5,XMMWORD PTR[((128-128))+rax] - paddd xmm6,XMMWORD PTR[((0-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((80-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 - - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(112-128)+rax],xmm6 - paddd xmm6,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm6 - pxor xmm7,xmm2 - - paddd xmm8,xmm6 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movdqa xmm6,XMMWORD PTR[((144-128))+rax] - paddd xmm5,XMMWORD PTR[((16-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((96-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm12 - - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(128-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movdqa xmm5,XMMWORD PTR[((160-128))+rax] - paddd xmm6,XMMWORD PTR[((32-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((112-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 - - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(144-128)+rax],xmm6 - paddd xmm6,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm6 - pxor xmm7,xmm2 - - paddd xmm14,xmm6 - paddd xmm14,xmm7 - movdqa xmm6,XMMWORD PTR[((176-128))+rax] - paddd xmm5,XMMWORD PTR[((48-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((128-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm10 - - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(160-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movdqa xmm5,XMMWORD PTR[((192-128))+rax] - paddd xmm6,XMMWORD PTR[((64-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((144-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 - - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(176-128)+rax],xmm6 - paddd xmm6,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm6 - pxor xmm7,xmm2 - - paddd xmm12,xmm6 - paddd xmm12,xmm7 - movdqa xmm6,XMMWORD PTR[((208-128))+rax] - paddd xmm5,XMMWORD PTR[((80-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((160-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm8 - - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(192-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movdqa xmm5,XMMWORD PTR[((224-128))+rax] - paddd xmm6,XMMWORD PTR[((96-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((176-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 - - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(208-128)+rax],xmm6 - paddd xmm6,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm6 - pxor xmm7,xmm2 - - paddd xmm10,xmm6 - paddd xmm10,xmm7 - movdqa xmm6,XMMWORD PTR[((240-128))+rax] - paddd xmm5,XMMWORD PTR[((112-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((192-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm14 - - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(224-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movdqa xmm5,XMMWORD PTR[((0-128))+rax] - paddd xmm6,XMMWORD PTR[((128-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((208-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 - - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(240-128)+rax],xmm6 - paddd xmm6,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm6 - pxor xmm7,xmm2 - - paddd xmm8,xmm6 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - dec ecx - jnz $L$oop_16_xx - - mov ecx,1 - lea rbp,QWORD PTR[((K256+128))] - - movdqa xmm7,XMMWORD PTR[rbx] - cmp ecx,DWORD PTR[rbx] - pxor xmm0,xmm0 - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - movdqa xmm6,xmm7 - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - pcmpgtd xmm6,xmm0 - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - paddd xmm7,xmm6 - cmovge r11,rbp - - movdqu xmm0,XMMWORD PTR[((0-128))+rdi] - pand xmm8,xmm6 - movdqu xmm1,XMMWORD PTR[((32-128))+rdi] - pand xmm9,xmm6 - movdqu xmm2,XMMWORD PTR[((64-128))+rdi] - pand xmm10,xmm6 - movdqu xmm5,XMMWORD PTR[((96-128))+rdi] - pand xmm11,xmm6 - paddd xmm8,xmm0 - movdqu xmm0,XMMWORD PTR[((128-128))+rdi] - pand xmm12,xmm6 - paddd xmm9,xmm1 - movdqu xmm1,XMMWORD PTR[((160-128))+rdi] - pand xmm13,xmm6 - paddd xmm10,xmm2 - movdqu xmm2,XMMWORD PTR[((192-128))+rdi] - pand xmm14,xmm6 - paddd xmm11,xmm5 - movdqu xmm5,XMMWORD PTR[((224-128))+rdi] - pand xmm15,xmm6 - paddd xmm12,xmm0 - paddd xmm13,xmm1 - movdqu XMMWORD PTR[(0-128)+rdi],xmm8 - paddd xmm14,xmm2 - movdqu XMMWORD PTR[(32-128)+rdi],xmm9 - paddd xmm15,xmm5 - movdqu XMMWORD PTR[(64-128)+rdi],xmm10 - movdqu XMMWORD PTR[(96-128)+rdi],xmm11 - movdqu XMMWORD PTR[(128-128)+rdi],xmm12 - movdqu XMMWORD PTR[(160-128)+rdi],xmm13 - movdqu XMMWORD PTR[(192-128)+rdi],xmm14 - movdqu XMMWORD PTR[(224-128)+rdi],xmm15 - - movdqa XMMWORD PTR[rbx],xmm7 - movdqa xmm6,XMMWORD PTR[$L$pbswap] - dec edx - jnz $L$oop - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande - -$L$done:: - mov rax,QWORD PTR[272+rsp] - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block:: -sha256_multi_block ENDP - -ALIGN 32 -sha256_multi_block_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - shl edx,1 - and rsp,-256 - lea rdi,QWORD PTR[128+rdi] - mov QWORD PTR[272+rsp],rax -$L$body_shaext:: - lea rbx,QWORD PTR[256+rsp] - lea rbp,QWORD PTR[((K256_shaext+128))] - -$L$oop_grande_shaext:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rsp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rsp - test edx,edx - jz $L$done_shaext - - movq xmm12,QWORD PTR[((0-128))+rdi] - movq xmm4,QWORD PTR[((32-128))+rdi] - movq xmm13,QWORD PTR[((64-128))+rdi] - movq xmm5,QWORD PTR[((96-128))+rdi] - movq xmm8,QWORD PTR[((128-128))+rdi] - movq xmm9,QWORD PTR[((160-128))+rdi] - movq xmm10,QWORD PTR[((192-128))+rdi] - movq xmm11,QWORD PTR[((224-128))+rdi] - - punpckldq xmm12,xmm4 - punpckldq xmm13,xmm5 - punpckldq xmm8,xmm9 - punpckldq xmm10,xmm11 - movdqa xmm3,XMMWORD PTR[((K256_shaext-16))] - - movdqa xmm14,xmm12 - movdqa xmm15,xmm13 - punpcklqdq xmm12,xmm8 - punpcklqdq xmm13,xmm10 - punpckhqdq xmm14,xmm8 - punpckhqdq xmm15,xmm10 - - pshufd xmm12,xmm12,27 - pshufd xmm13,xmm13,27 - pshufd xmm14,xmm14,27 - pshufd xmm15,xmm15,27 - jmp $L$oop_shaext - -ALIGN 32 -$L$oop_shaext:: - movdqu xmm4,XMMWORD PTR[r8] - movdqu xmm8,XMMWORD PTR[r9] - movdqu xmm5,XMMWORD PTR[16+r8] - movdqu xmm9,XMMWORD PTR[16+r9] - movdqu xmm6,XMMWORD PTR[32+r8] -DB 102,15,56,0,227 - movdqu xmm10,XMMWORD PTR[32+r9] -DB 102,68,15,56,0,195 - movdqu xmm7,XMMWORD PTR[48+r8] - lea r8,QWORD PTR[64+r8] - movdqu xmm11,XMMWORD PTR[48+r9] - lea r9,QWORD PTR[64+r9] - - movdqa xmm0,XMMWORD PTR[((0-128))+rbp] -DB 102,15,56,0,235 - paddd xmm0,xmm4 - pxor xmm4,xmm12 - movdqa xmm1,xmm0 - movdqa xmm2,XMMWORD PTR[((0-128))+rbp] -DB 102,68,15,56,0,203 - paddd xmm2,xmm8 - movdqa XMMWORD PTR[80+rsp],xmm13 -DB 69,15,56,203,236 - pxor xmm8,xmm14 - movdqa xmm0,xmm2 - movdqa XMMWORD PTR[112+rsp],xmm15 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh - pxor xmm4,xmm12 - movdqa XMMWORD PTR[64+rsp],xmm12 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - pxor xmm8,xmm14 - movdqa XMMWORD PTR[96+rsp],xmm14 - movdqa xmm1,XMMWORD PTR[((16-128))+rbp] - paddd xmm1,xmm5 -DB 102,15,56,0,243 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((16-128))+rbp] - paddd xmm2,xmm9 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - prefetcht0 [127+r8] -DB 102,15,56,0,251 -DB 102,68,15,56,0,211 - prefetcht0 [127+r9] -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh -DB 102,68,15,56,0,219 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((32-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((32-128))+rbp] - paddd xmm2,xmm10 -DB 69,15,56,203,236 -DB 69,15,56,204,193 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh -DB 102,15,58,15,222,4 - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((48-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((48-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((64-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((64-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((80-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((80-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((96-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 -DB 69,15,56,204,193 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((96-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 102,15,58,15,222,4 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((112-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((112-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((128-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((128-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((144-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((144-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((160-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 -DB 69,15,56,204,193 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((160-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 102,15,58,15,222,4 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((176-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((176-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((192-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((192-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((208-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((208-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 - nop -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((224-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((224-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 - nop -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - mov ecx,1 - pxor xmm6,xmm6 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - movdqa xmm1,XMMWORD PTR[((240-128))+rbp] - paddd xmm1,xmm7 - movq xmm7,QWORD PTR[rbx] - nop -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm2,XMMWORD PTR[((240-128))+rbp] - paddd xmm2,xmm11 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - cmp ecx,DWORD PTR[rbx] - cmovge r8,rsp - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rsp - pshufd xmm9,xmm7,000h -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - pshufd xmm10,xmm7,055h - movdqa xmm11,xmm7 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh - pcmpgtd xmm9,xmm6 - pcmpgtd xmm10,xmm6 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - pcmpgtd xmm11,xmm6 - movdqa xmm3,XMMWORD PTR[((K256_shaext-16))] -DB 69,15,56,203,247 - - pand xmm13,xmm9 - pand xmm15,xmm10 - pand xmm12,xmm9 - pand xmm14,xmm10 - paddd xmm11,xmm7 - - paddd xmm13,XMMWORD PTR[80+rsp] - paddd xmm15,XMMWORD PTR[112+rsp] - paddd xmm12,XMMWORD PTR[64+rsp] - paddd xmm14,XMMWORD PTR[96+rsp] - - movq QWORD PTR[rbx],xmm11 - dec edx - jnz $L$oop_shaext - - mov edx,DWORD PTR[280+rsp] - - pshufd xmm12,xmm12,27 - pshufd xmm13,xmm13,27 - pshufd xmm14,xmm14,27 - pshufd xmm15,xmm15,27 - - movdqa xmm5,xmm12 - movdqa xmm6,xmm13 - punpckldq xmm12,xmm14 - punpckhdq xmm5,xmm14 - punpckldq xmm13,xmm15 - punpckhdq xmm6,xmm15 - - movq QWORD PTR[(0-128)+rdi],xmm12 - psrldq xmm12,8 - movq QWORD PTR[(128-128)+rdi],xmm5 - psrldq xmm5,8 - movq QWORD PTR[(32-128)+rdi],xmm12 - movq QWORD PTR[(160-128)+rdi],xmm5 - - movq QWORD PTR[(64-128)+rdi],xmm13 - psrldq xmm13,8 - movq QWORD PTR[(192-128)+rdi],xmm6 - psrldq xmm6,8 - movq QWORD PTR[(96-128)+rdi],xmm13 - movq QWORD PTR[(224-128)+rdi],xmm6 - - lea rdi,QWORD PTR[8+rdi] - lea rsi,QWORD PTR[32+rsi] - dec edx - jnz $L$oop_grande_shaext - -$L$done_shaext:: - - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block_shaext:: -sha256_multi_block_shaext ENDP - -ALIGN 32 -sha256_multi_block_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx_shortcut:: - shr rcx,32 - cmp edx,2 - jb $L$avx - test ecx,32 - jnz _avx2_shortcut - jmp $L$avx -ALIGN 32 -$L$avx:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body_avx:: - lea rbp,QWORD PTR[((K256+128))] - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[128+rdi] - -$L$oop_grande_avx:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done_avx - - vmovdqu xmm8,XMMWORD PTR[((0-128))+rdi] - lea rax,QWORD PTR[128+rsp] - vmovdqu xmm9,XMMWORD PTR[((32-128))+rdi] - vmovdqu xmm10,XMMWORD PTR[((64-128))+rdi] - vmovdqu xmm11,XMMWORD PTR[((96-128))+rdi] - vmovdqu xmm12,XMMWORD PTR[((128-128))+rdi] - vmovdqu xmm13,XMMWORD PTR[((160-128))+rdi] - vmovdqu xmm14,XMMWORD PTR[((192-128))+rdi] - vmovdqu xmm15,XMMWORD PTR[((224-128))+rdi] - vmovdqu xmm6,XMMWORD PTR[$L$pbswap] - jmp $L$oop_avx - -ALIGN 32 -$L$oop_avx:: - vpxor xmm4,xmm10,xmm9 - vmovd xmm5,DWORD PTR[r8] - vmovd xmm0,DWORD PTR[r9] - vpinsrd xmm5,xmm5,DWORD PTR[r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm12,6 - vpslld xmm2,xmm12,26 - vmovdqu XMMWORD PTR[(0-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm15 - - vpsrld xmm1,xmm12,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm12,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-128))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm12,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,7 - vpandn xmm0,xmm12,xmm14 - vpand xmm3,xmm12,xmm13 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm15,xmm8,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm8,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm9,xmm8 - - vpxor xmm15,xmm15,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm8,13 - - vpslld xmm2,xmm8,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm15,xmm1 - - vpsrld xmm1,xmm8,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,10 - vpxor xmm15,xmm9,xmm4 - vpaddd xmm11,xmm11,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm15,xmm15,xmm5 - vpaddd xmm15,xmm15,xmm7 - vmovd xmm5,DWORD PTR[4+r8] - vmovd xmm0,DWORD PTR[4+r9] - vpinsrd xmm5,xmm5,DWORD PTR[4+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[4+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm11,6 - vpslld xmm2,xmm11,26 - vmovdqu XMMWORD PTR[(16-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm14 - - vpsrld xmm1,xmm11,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm11,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-96))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm11,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,7 - vpandn xmm0,xmm11,xmm13 - vpand xmm4,xmm11,xmm12 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm14,xmm15,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm15,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm8,xmm15 - - vpxor xmm14,xmm14,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm15,13 - - vpslld xmm2,xmm15,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm14,xmm1 - - vpsrld xmm1,xmm15,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,10 - vpxor xmm14,xmm8,xmm3 - vpaddd xmm10,xmm10,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm14,xmm14,xmm5 - vpaddd xmm14,xmm14,xmm7 - vmovd xmm5,DWORD PTR[8+r8] - vmovd xmm0,DWORD PTR[8+r9] - vpinsrd xmm5,xmm5,DWORD PTR[8+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[8+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm10,6 - vpslld xmm2,xmm10,26 - vmovdqu XMMWORD PTR[(32-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm13 - - vpsrld xmm1,xmm10,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm10,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-64))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm10,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,7 - vpandn xmm0,xmm10,xmm12 - vpand xmm3,xmm10,xmm11 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm13,xmm14,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm14,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm15,xmm14 - - vpxor xmm13,xmm13,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm14,13 - - vpslld xmm2,xmm14,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm13,xmm1 - - vpsrld xmm1,xmm14,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,10 - vpxor xmm13,xmm15,xmm4 - vpaddd xmm9,xmm9,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm13,xmm13,xmm5 - vpaddd xmm13,xmm13,xmm7 - vmovd xmm5,DWORD PTR[12+r8] - vmovd xmm0,DWORD PTR[12+r9] - vpinsrd xmm5,xmm5,DWORD PTR[12+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[12+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm9,6 - vpslld xmm2,xmm9,26 - vmovdqu XMMWORD PTR[(48-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm12 - - vpsrld xmm1,xmm9,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm9,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-32))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm9,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,7 - vpandn xmm0,xmm9,xmm11 - vpand xmm4,xmm9,xmm10 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm12,xmm13,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm13,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm14,xmm13 - - vpxor xmm12,xmm12,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm13,13 - - vpslld xmm2,xmm13,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm12,xmm1 - - vpsrld xmm1,xmm13,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,10 - vpxor xmm12,xmm14,xmm3 - vpaddd xmm8,xmm8,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm12,xmm12,xmm5 - vpaddd xmm12,xmm12,xmm7 - vmovd xmm5,DWORD PTR[16+r8] - vmovd xmm0,DWORD PTR[16+r9] - vpinsrd xmm5,xmm5,DWORD PTR[16+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[16+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm8,6 - vpslld xmm2,xmm8,26 - vmovdqu XMMWORD PTR[(64-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm11 - - vpsrld xmm1,xmm8,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm8,21 - vpaddd xmm5,xmm5,XMMWORD PTR[rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm8,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,7 - vpandn xmm0,xmm8,xmm10 - vpand xmm3,xmm8,xmm9 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm11,xmm12,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm12,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm13,xmm12 - - vpxor xmm11,xmm11,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm12,13 - - vpslld xmm2,xmm12,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm11,xmm1 - - vpsrld xmm1,xmm12,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,10 - vpxor xmm11,xmm13,xmm4 - vpaddd xmm15,xmm15,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm11,xmm11,xmm5 - vpaddd xmm11,xmm11,xmm7 - vmovd xmm5,DWORD PTR[20+r8] - vmovd xmm0,DWORD PTR[20+r9] - vpinsrd xmm5,xmm5,DWORD PTR[20+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[20+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm15,6 - vpslld xmm2,xmm15,26 - vmovdqu XMMWORD PTR[(80-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm10 - - vpsrld xmm1,xmm15,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm15,21 - vpaddd xmm5,xmm5,XMMWORD PTR[32+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm15,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,7 - vpandn xmm0,xmm15,xmm9 - vpand xmm4,xmm15,xmm8 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm10,xmm11,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm11,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm12,xmm11 - - vpxor xmm10,xmm10,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm11,13 - - vpslld xmm2,xmm11,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm10,xmm1 - - vpsrld xmm1,xmm11,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,10 - vpxor xmm10,xmm12,xmm3 - vpaddd xmm14,xmm14,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm10,xmm10,xmm5 - vpaddd xmm10,xmm10,xmm7 - vmovd xmm5,DWORD PTR[24+r8] - vmovd xmm0,DWORD PTR[24+r9] - vpinsrd xmm5,xmm5,DWORD PTR[24+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[24+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm14,6 - vpslld xmm2,xmm14,26 - vmovdqu XMMWORD PTR[(96-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm9 - - vpsrld xmm1,xmm14,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm14,21 - vpaddd xmm5,xmm5,XMMWORD PTR[64+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm14,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,7 - vpandn xmm0,xmm14,xmm8 - vpand xmm3,xmm14,xmm15 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm9,xmm10,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm10,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm11,xmm10 - - vpxor xmm9,xmm9,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm10,13 - - vpslld xmm2,xmm10,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm9,xmm1 - - vpsrld xmm1,xmm10,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,10 - vpxor xmm9,xmm11,xmm4 - vpaddd xmm13,xmm13,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm9,xmm9,xmm5 - vpaddd xmm9,xmm9,xmm7 - vmovd xmm5,DWORD PTR[28+r8] - vmovd xmm0,DWORD PTR[28+r9] - vpinsrd xmm5,xmm5,DWORD PTR[28+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[28+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm13,6 - vpslld xmm2,xmm13,26 - vmovdqu XMMWORD PTR[(112-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm8 - - vpsrld xmm1,xmm13,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm13,21 - vpaddd xmm5,xmm5,XMMWORD PTR[96+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm13,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,7 - vpandn xmm0,xmm13,xmm15 - vpand xmm4,xmm13,xmm14 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm8,xmm9,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm9,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm10,xmm9 - - vpxor xmm8,xmm8,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm9,13 - - vpslld xmm2,xmm9,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm8,xmm1 - - vpsrld xmm1,xmm9,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,10 - vpxor xmm8,xmm10,xmm3 - vpaddd xmm12,xmm12,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm8,xmm8,xmm5 - vpaddd xmm8,xmm8,xmm7 - add rbp,256 - vmovd xmm5,DWORD PTR[32+r8] - vmovd xmm0,DWORD PTR[32+r9] - vpinsrd xmm5,xmm5,DWORD PTR[32+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[32+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm12,6 - vpslld xmm2,xmm12,26 - vmovdqu XMMWORD PTR[(128-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm15 - - vpsrld xmm1,xmm12,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm12,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-128))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm12,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,7 - vpandn xmm0,xmm12,xmm14 - vpand xmm3,xmm12,xmm13 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm15,xmm8,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm8,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm9,xmm8 - - vpxor xmm15,xmm15,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm8,13 - - vpslld xmm2,xmm8,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm15,xmm1 - - vpsrld xmm1,xmm8,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,10 - vpxor xmm15,xmm9,xmm4 - vpaddd xmm11,xmm11,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm15,xmm15,xmm5 - vpaddd xmm15,xmm15,xmm7 - vmovd xmm5,DWORD PTR[36+r8] - vmovd xmm0,DWORD PTR[36+r9] - vpinsrd xmm5,xmm5,DWORD PTR[36+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[36+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm11,6 - vpslld xmm2,xmm11,26 - vmovdqu XMMWORD PTR[(144-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm14 - - vpsrld xmm1,xmm11,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm11,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-96))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm11,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,7 - vpandn xmm0,xmm11,xmm13 - vpand xmm4,xmm11,xmm12 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm14,xmm15,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm15,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm8,xmm15 - - vpxor xmm14,xmm14,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm15,13 - - vpslld xmm2,xmm15,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm14,xmm1 - - vpsrld xmm1,xmm15,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,10 - vpxor xmm14,xmm8,xmm3 - vpaddd xmm10,xmm10,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm14,xmm14,xmm5 - vpaddd xmm14,xmm14,xmm7 - vmovd xmm5,DWORD PTR[40+r8] - vmovd xmm0,DWORD PTR[40+r9] - vpinsrd xmm5,xmm5,DWORD PTR[40+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[40+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm10,6 - vpslld xmm2,xmm10,26 - vmovdqu XMMWORD PTR[(160-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm13 - - vpsrld xmm1,xmm10,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm10,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-64))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm10,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,7 - vpandn xmm0,xmm10,xmm12 - vpand xmm3,xmm10,xmm11 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm13,xmm14,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm14,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm15,xmm14 - - vpxor xmm13,xmm13,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm14,13 - - vpslld xmm2,xmm14,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm13,xmm1 - - vpsrld xmm1,xmm14,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,10 - vpxor xmm13,xmm15,xmm4 - vpaddd xmm9,xmm9,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm13,xmm13,xmm5 - vpaddd xmm13,xmm13,xmm7 - vmovd xmm5,DWORD PTR[44+r8] - vmovd xmm0,DWORD PTR[44+r9] - vpinsrd xmm5,xmm5,DWORD PTR[44+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[44+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm9,6 - vpslld xmm2,xmm9,26 - vmovdqu XMMWORD PTR[(176-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm12 - - vpsrld xmm1,xmm9,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm9,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-32))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm9,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,7 - vpandn xmm0,xmm9,xmm11 - vpand xmm4,xmm9,xmm10 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm12,xmm13,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm13,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm14,xmm13 - - vpxor xmm12,xmm12,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm13,13 - - vpslld xmm2,xmm13,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm12,xmm1 - - vpsrld xmm1,xmm13,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,10 - vpxor xmm12,xmm14,xmm3 - vpaddd xmm8,xmm8,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm12,xmm12,xmm5 - vpaddd xmm12,xmm12,xmm7 - vmovd xmm5,DWORD PTR[48+r8] - vmovd xmm0,DWORD PTR[48+r9] - vpinsrd xmm5,xmm5,DWORD PTR[48+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[48+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm8,6 - vpslld xmm2,xmm8,26 - vmovdqu XMMWORD PTR[(192-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm11 - - vpsrld xmm1,xmm8,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm8,21 - vpaddd xmm5,xmm5,XMMWORD PTR[rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm8,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,7 - vpandn xmm0,xmm8,xmm10 - vpand xmm3,xmm8,xmm9 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm11,xmm12,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm12,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm13,xmm12 - - vpxor xmm11,xmm11,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm12,13 - - vpslld xmm2,xmm12,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm11,xmm1 - - vpsrld xmm1,xmm12,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,10 - vpxor xmm11,xmm13,xmm4 - vpaddd xmm15,xmm15,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm11,xmm11,xmm5 - vpaddd xmm11,xmm11,xmm7 - vmovd xmm5,DWORD PTR[52+r8] - vmovd xmm0,DWORD PTR[52+r9] - vpinsrd xmm5,xmm5,DWORD PTR[52+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[52+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm15,6 - vpslld xmm2,xmm15,26 - vmovdqu XMMWORD PTR[(208-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm10 - - vpsrld xmm1,xmm15,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm15,21 - vpaddd xmm5,xmm5,XMMWORD PTR[32+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm15,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,7 - vpandn xmm0,xmm15,xmm9 - vpand xmm4,xmm15,xmm8 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm10,xmm11,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm11,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm12,xmm11 - - vpxor xmm10,xmm10,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm11,13 - - vpslld xmm2,xmm11,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm10,xmm1 - - vpsrld xmm1,xmm11,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,10 - vpxor xmm10,xmm12,xmm3 - vpaddd xmm14,xmm14,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm10,xmm10,xmm5 - vpaddd xmm10,xmm10,xmm7 - vmovd xmm5,DWORD PTR[56+r8] - vmovd xmm0,DWORD PTR[56+r9] - vpinsrd xmm5,xmm5,DWORD PTR[56+r10],1 - vpinsrd xmm0,xmm0,DWORD PTR[56+r11],1 - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm14,6 - vpslld xmm2,xmm14,26 - vmovdqu XMMWORD PTR[(224-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm9 - - vpsrld xmm1,xmm14,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm14,21 - vpaddd xmm5,xmm5,XMMWORD PTR[64+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm14,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,7 - vpandn xmm0,xmm14,xmm8 - vpand xmm3,xmm14,xmm15 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm9,xmm10,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm10,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm11,xmm10 - - vpxor xmm9,xmm9,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm10,13 - - vpslld xmm2,xmm10,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm9,xmm1 - - vpsrld xmm1,xmm10,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,10 - vpxor xmm9,xmm11,xmm4 - vpaddd xmm13,xmm13,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm9,xmm9,xmm5 - vpaddd xmm9,xmm9,xmm7 - vmovd xmm5,DWORD PTR[60+r8] - lea r8,QWORD PTR[64+r8] - vmovd xmm0,DWORD PTR[60+r9] - lea r9,QWORD PTR[64+r9] - vpinsrd xmm5,xmm5,DWORD PTR[60+r10],1 - lea r10,QWORD PTR[64+r10] - vpinsrd xmm0,xmm0,DWORD PTR[60+r11],1 - lea r11,QWORD PTR[64+r11] - vpunpckldq xmm5,xmm5,xmm0 - vpshufb xmm5,xmm5,xmm6 - vpsrld xmm7,xmm13,6 - vpslld xmm2,xmm13,26 - vmovdqu XMMWORD PTR[(240-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm8 - - vpsrld xmm1,xmm13,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm13,21 - vpaddd xmm5,xmm5,XMMWORD PTR[96+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm13,25 - vpxor xmm7,xmm7,xmm2 - prefetcht0 [63+r8] - vpslld xmm2,xmm13,7 - vpandn xmm0,xmm13,xmm15 - vpand xmm4,xmm13,xmm14 - prefetcht0 [63+r9] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm8,xmm9,2 - vpxor xmm7,xmm7,xmm2 - prefetcht0 [63+r10] - vpslld xmm1,xmm9,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm10,xmm9 - prefetcht0 [63+r11] - vpxor xmm8,xmm8,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm9,13 - - vpslld xmm2,xmm9,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm8,xmm1 - - vpsrld xmm1,xmm9,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,10 - vpxor xmm8,xmm10,xmm3 - vpaddd xmm12,xmm12,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm8,xmm8,xmm5 - vpaddd xmm8,xmm8,xmm7 - add rbp,256 - vmovdqu xmm5,XMMWORD PTR[((0-128))+rax] - mov ecx,3 - jmp $L$oop_16_xx_avx -ALIGN 32 -$L$oop_16_xx_avx:: - vmovdqu xmm6,XMMWORD PTR[((16-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((144-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((224-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm12,6 - vpslld xmm2,xmm12,26 - vmovdqu XMMWORD PTR[(0-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm15 - - vpsrld xmm1,xmm12,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm12,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-128))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm12,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,7 - vpandn xmm0,xmm12,xmm14 - vpand xmm3,xmm12,xmm13 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm15,xmm8,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm8,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm9,xmm8 - - vpxor xmm15,xmm15,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm8,13 - - vpslld xmm2,xmm8,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm15,xmm1 - - vpsrld xmm1,xmm8,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,10 - vpxor xmm15,xmm9,xmm4 - vpaddd xmm11,xmm11,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm15,xmm15,xmm5 - vpaddd xmm15,xmm15,xmm7 - vmovdqu xmm5,XMMWORD PTR[((32-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((160-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((240-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm11,6 - vpslld xmm2,xmm11,26 - vmovdqu XMMWORD PTR[(16-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm14 - - vpsrld xmm1,xmm11,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm11,21 - vpaddd xmm6,xmm6,XMMWORD PTR[((-96))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm11,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,7 - vpandn xmm0,xmm11,xmm13 - vpand xmm4,xmm11,xmm12 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm14,xmm15,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm15,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm8,xmm15 - - vpxor xmm14,xmm14,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm15,13 - - vpslld xmm2,xmm15,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm14,xmm1 - - vpsrld xmm1,xmm15,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,10 - vpxor xmm14,xmm8,xmm3 - vpaddd xmm10,xmm10,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm14,xmm14,xmm6 - vpaddd xmm14,xmm14,xmm7 - vmovdqu xmm6,XMMWORD PTR[((48-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((176-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((0-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm10,6 - vpslld xmm2,xmm10,26 - vmovdqu XMMWORD PTR[(32-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm13 - - vpsrld xmm1,xmm10,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm10,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-64))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm10,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,7 - vpandn xmm0,xmm10,xmm12 - vpand xmm3,xmm10,xmm11 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm13,xmm14,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm14,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm15,xmm14 - - vpxor xmm13,xmm13,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm14,13 - - vpslld xmm2,xmm14,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm13,xmm1 - - vpsrld xmm1,xmm14,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,10 - vpxor xmm13,xmm15,xmm4 - vpaddd xmm9,xmm9,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm13,xmm13,xmm5 - vpaddd xmm13,xmm13,xmm7 - vmovdqu xmm5,XMMWORD PTR[((64-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((192-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((16-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm9,6 - vpslld xmm2,xmm9,26 - vmovdqu XMMWORD PTR[(48-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm12 - - vpsrld xmm1,xmm9,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm9,21 - vpaddd xmm6,xmm6,XMMWORD PTR[((-32))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm9,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,7 - vpandn xmm0,xmm9,xmm11 - vpand xmm4,xmm9,xmm10 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm12,xmm13,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm13,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm14,xmm13 - - vpxor xmm12,xmm12,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm13,13 - - vpslld xmm2,xmm13,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm12,xmm1 - - vpsrld xmm1,xmm13,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,10 - vpxor xmm12,xmm14,xmm3 - vpaddd xmm8,xmm8,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm12,xmm12,xmm6 - vpaddd xmm12,xmm12,xmm7 - vmovdqu xmm6,XMMWORD PTR[((80-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((208-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((32-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm8,6 - vpslld xmm2,xmm8,26 - vmovdqu XMMWORD PTR[(64-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm11 - - vpsrld xmm1,xmm8,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm8,21 - vpaddd xmm5,xmm5,XMMWORD PTR[rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm8,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,7 - vpandn xmm0,xmm8,xmm10 - vpand xmm3,xmm8,xmm9 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm11,xmm12,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm12,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm13,xmm12 - - vpxor xmm11,xmm11,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm12,13 - - vpslld xmm2,xmm12,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm11,xmm1 - - vpsrld xmm1,xmm12,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,10 - vpxor xmm11,xmm13,xmm4 - vpaddd xmm15,xmm15,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm11,xmm11,xmm5 - vpaddd xmm11,xmm11,xmm7 - vmovdqu xmm5,XMMWORD PTR[((96-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((224-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((48-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm15,6 - vpslld xmm2,xmm15,26 - vmovdqu XMMWORD PTR[(80-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm10 - - vpsrld xmm1,xmm15,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm15,21 - vpaddd xmm6,xmm6,XMMWORD PTR[32+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm15,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,7 - vpandn xmm0,xmm15,xmm9 - vpand xmm4,xmm15,xmm8 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm10,xmm11,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm11,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm12,xmm11 - - vpxor xmm10,xmm10,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm11,13 - - vpslld xmm2,xmm11,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm10,xmm1 - - vpsrld xmm1,xmm11,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,10 - vpxor xmm10,xmm12,xmm3 - vpaddd xmm14,xmm14,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm10,xmm10,xmm6 - vpaddd xmm10,xmm10,xmm7 - vmovdqu xmm6,XMMWORD PTR[((112-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((240-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((64-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm14,6 - vpslld xmm2,xmm14,26 - vmovdqu XMMWORD PTR[(96-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm9 - - vpsrld xmm1,xmm14,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm14,21 - vpaddd xmm5,xmm5,XMMWORD PTR[64+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm14,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,7 - vpandn xmm0,xmm14,xmm8 - vpand xmm3,xmm14,xmm15 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm9,xmm10,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm10,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm11,xmm10 - - vpxor xmm9,xmm9,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm10,13 - - vpslld xmm2,xmm10,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm9,xmm1 - - vpsrld xmm1,xmm10,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,10 - vpxor xmm9,xmm11,xmm4 - vpaddd xmm13,xmm13,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm9,xmm9,xmm5 - vpaddd xmm9,xmm9,xmm7 - vmovdqu xmm5,XMMWORD PTR[((128-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((0-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((80-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm13,6 - vpslld xmm2,xmm13,26 - vmovdqu XMMWORD PTR[(112-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm8 - - vpsrld xmm1,xmm13,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm13,21 - vpaddd xmm6,xmm6,XMMWORD PTR[96+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm13,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,7 - vpandn xmm0,xmm13,xmm15 - vpand xmm4,xmm13,xmm14 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm8,xmm9,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm9,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm10,xmm9 - - vpxor xmm8,xmm8,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm9,13 - - vpslld xmm2,xmm9,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm8,xmm1 - - vpsrld xmm1,xmm9,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,10 - vpxor xmm8,xmm10,xmm3 - vpaddd xmm12,xmm12,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm8,xmm8,xmm6 - vpaddd xmm8,xmm8,xmm7 - add rbp,256 - vmovdqu xmm6,XMMWORD PTR[((144-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((16-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((96-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm12,6 - vpslld xmm2,xmm12,26 - vmovdqu XMMWORD PTR[(128-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm15 - - vpsrld xmm1,xmm12,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm12,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-128))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm12,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,7 - vpandn xmm0,xmm12,xmm14 - vpand xmm3,xmm12,xmm13 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm15,xmm8,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm8,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm9,xmm8 - - vpxor xmm15,xmm15,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm8,13 - - vpslld xmm2,xmm8,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm15,xmm1 - - vpsrld xmm1,xmm8,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,10 - vpxor xmm15,xmm9,xmm4 - vpaddd xmm11,xmm11,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm15,xmm15,xmm5 - vpaddd xmm15,xmm15,xmm7 - vmovdqu xmm5,XMMWORD PTR[((160-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((32-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((112-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm11,6 - vpslld xmm2,xmm11,26 - vmovdqu XMMWORD PTR[(144-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm14 - - vpsrld xmm1,xmm11,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm11,21 - vpaddd xmm6,xmm6,XMMWORD PTR[((-96))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm11,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,7 - vpandn xmm0,xmm11,xmm13 - vpand xmm4,xmm11,xmm12 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm14,xmm15,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm15,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm8,xmm15 - - vpxor xmm14,xmm14,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm15,13 - - vpslld xmm2,xmm15,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm14,xmm1 - - vpsrld xmm1,xmm15,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,10 - vpxor xmm14,xmm8,xmm3 - vpaddd xmm10,xmm10,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm14,xmm14,xmm6 - vpaddd xmm14,xmm14,xmm7 - vmovdqu xmm6,XMMWORD PTR[((176-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((48-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((128-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm10,6 - vpslld xmm2,xmm10,26 - vmovdqu XMMWORD PTR[(160-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm13 - - vpsrld xmm1,xmm10,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm10,21 - vpaddd xmm5,xmm5,XMMWORD PTR[((-64))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm10,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,7 - vpandn xmm0,xmm10,xmm12 - vpand xmm3,xmm10,xmm11 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm13,xmm14,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm14,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm15,xmm14 - - vpxor xmm13,xmm13,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm14,13 - - vpslld xmm2,xmm14,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm13,xmm1 - - vpsrld xmm1,xmm14,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,10 - vpxor xmm13,xmm15,xmm4 - vpaddd xmm9,xmm9,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm13,xmm13,xmm5 - vpaddd xmm13,xmm13,xmm7 - vmovdqu xmm5,XMMWORD PTR[((192-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((64-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((144-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm9,6 - vpslld xmm2,xmm9,26 - vmovdqu XMMWORD PTR[(176-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm12 - - vpsrld xmm1,xmm9,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm9,21 - vpaddd xmm6,xmm6,XMMWORD PTR[((-32))+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm9,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,7 - vpandn xmm0,xmm9,xmm11 - vpand xmm4,xmm9,xmm10 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm12,xmm13,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm13,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm14,xmm13 - - vpxor xmm12,xmm12,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm13,13 - - vpslld xmm2,xmm13,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm12,xmm1 - - vpsrld xmm1,xmm13,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,10 - vpxor xmm12,xmm14,xmm3 - vpaddd xmm8,xmm8,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm12,xmm12,xmm6 - vpaddd xmm12,xmm12,xmm7 - vmovdqu xmm6,XMMWORD PTR[((208-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((80-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((160-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm8,6 - vpslld xmm2,xmm8,26 - vmovdqu XMMWORD PTR[(192-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm11 - - vpsrld xmm1,xmm8,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm8,21 - vpaddd xmm5,xmm5,XMMWORD PTR[rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm8,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm8,7 - vpandn xmm0,xmm8,xmm10 - vpand xmm3,xmm8,xmm9 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm11,xmm12,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm12,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm13,xmm12 - - vpxor xmm11,xmm11,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm12,13 - - vpslld xmm2,xmm12,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm11,xmm1 - - vpsrld xmm1,xmm12,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm12,10 - vpxor xmm11,xmm13,xmm4 - vpaddd xmm15,xmm15,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm11,xmm11,xmm5 - vpaddd xmm11,xmm11,xmm7 - vmovdqu xmm5,XMMWORD PTR[((224-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((96-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((176-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm15,6 - vpslld xmm2,xmm15,26 - vmovdqu XMMWORD PTR[(208-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm10 - - vpsrld xmm1,xmm15,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm15,21 - vpaddd xmm6,xmm6,XMMWORD PTR[32+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm15,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm15,7 - vpandn xmm0,xmm15,xmm9 - vpand xmm4,xmm15,xmm8 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm10,xmm11,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm11,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm12,xmm11 - - vpxor xmm10,xmm10,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm11,13 - - vpslld xmm2,xmm11,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm10,xmm1 - - vpsrld xmm1,xmm11,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm11,10 - vpxor xmm10,xmm12,xmm3 - vpaddd xmm14,xmm14,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm10,xmm10,xmm6 - vpaddd xmm10,xmm10,xmm7 - vmovdqu xmm6,XMMWORD PTR[((240-128))+rax] - vpaddd xmm5,xmm5,XMMWORD PTR[((112-128))+rax] - - vpsrld xmm7,xmm6,3 - vpsrld xmm1,xmm6,7 - vpslld xmm2,xmm6,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm6,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm6,14 - vmovdqu xmm0,XMMWORD PTR[((192-128))+rax] - vpsrld xmm3,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm5,xmm5,xmm7 - vpxor xmm7,xmm3,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm5,xmm5,xmm7 - vpsrld xmm7,xmm14,6 - vpslld xmm2,xmm14,26 - vmovdqu XMMWORD PTR[(224-128)+rax],xmm5 - vpaddd xmm5,xmm5,xmm9 - - vpsrld xmm1,xmm14,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm14,21 - vpaddd xmm5,xmm5,XMMWORD PTR[64+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm14,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm14,7 - vpandn xmm0,xmm14,xmm8 - vpand xmm3,xmm14,xmm15 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm9,xmm10,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm10,30 - vpxor xmm0,xmm0,xmm3 - vpxor xmm3,xmm11,xmm10 - - vpxor xmm9,xmm9,xmm1 - vpaddd xmm5,xmm5,xmm7 - - vpsrld xmm1,xmm10,13 - - vpslld xmm2,xmm10,19 - vpaddd xmm5,xmm5,xmm0 - vpand xmm4,xmm4,xmm3 - - vpxor xmm7,xmm9,xmm1 - - vpsrld xmm1,xmm10,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm10,10 - vpxor xmm9,xmm11,xmm4 - vpaddd xmm13,xmm13,xmm5 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm9,xmm9,xmm5 - vpaddd xmm9,xmm9,xmm7 - vmovdqu xmm5,XMMWORD PTR[((0-128))+rax] - vpaddd xmm6,xmm6,XMMWORD PTR[((128-128))+rax] - - vpsrld xmm7,xmm5,3 - vpsrld xmm1,xmm5,7 - vpslld xmm2,xmm5,25 - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm5,18 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm5,14 - vmovdqu xmm0,XMMWORD PTR[((208-128))+rax] - vpsrld xmm4,xmm0,10 - - vpxor xmm7,xmm7,xmm1 - vpsrld xmm1,xmm0,17 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,15 - vpaddd xmm6,xmm6,xmm7 - vpxor xmm7,xmm4,xmm1 - vpsrld xmm1,xmm0,19 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm0,13 - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - vpaddd xmm6,xmm6,xmm7 - vpsrld xmm7,xmm13,6 - vpslld xmm2,xmm13,26 - vmovdqu XMMWORD PTR[(240-128)+rax],xmm6 - vpaddd xmm6,xmm6,xmm8 - - vpsrld xmm1,xmm13,11 - vpxor xmm7,xmm7,xmm2 - vpslld xmm2,xmm13,21 - vpaddd xmm6,xmm6,XMMWORD PTR[96+rbp] - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm1,xmm13,25 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm13,7 - vpandn xmm0,xmm13,xmm15 - vpand xmm4,xmm13,xmm14 - - vpxor xmm7,xmm7,xmm1 - - vpsrld xmm8,xmm9,2 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm1,xmm9,30 - vpxor xmm0,xmm0,xmm4 - vpxor xmm4,xmm10,xmm9 - - vpxor xmm8,xmm8,xmm1 - vpaddd xmm6,xmm6,xmm7 - - vpsrld xmm1,xmm9,13 - - vpslld xmm2,xmm9,19 - vpaddd xmm6,xmm6,xmm0 - vpand xmm3,xmm3,xmm4 - - vpxor xmm7,xmm8,xmm1 - - vpsrld xmm1,xmm9,22 - vpxor xmm7,xmm7,xmm2 - - vpslld xmm2,xmm9,10 - vpxor xmm8,xmm10,xmm3 - vpaddd xmm12,xmm12,xmm6 - - vpxor xmm7,xmm7,xmm1 - vpxor xmm7,xmm7,xmm2 - - vpaddd xmm8,xmm8,xmm6 - vpaddd xmm8,xmm8,xmm7 - add rbp,256 - dec ecx - jnz $L$oop_16_xx_avx - - mov ecx,1 - lea rbp,QWORD PTR[((K256+128))] - cmp ecx,DWORD PTR[rbx] - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - cmovge r11,rbp - vmovdqa xmm7,XMMWORD PTR[rbx] - vpxor xmm0,xmm0,xmm0 - vmovdqa xmm6,xmm7 - vpcmpgtd xmm6,xmm6,xmm0 - vpaddd xmm7,xmm7,xmm6 - - vmovdqu xmm0,XMMWORD PTR[((0-128))+rdi] - vpand xmm8,xmm8,xmm6 - vmovdqu xmm1,XMMWORD PTR[((32-128))+rdi] - vpand xmm9,xmm9,xmm6 - vmovdqu xmm2,XMMWORD PTR[((64-128))+rdi] - vpand xmm10,xmm10,xmm6 - vmovdqu xmm5,XMMWORD PTR[((96-128))+rdi] - vpand xmm11,xmm11,xmm6 - vpaddd xmm8,xmm8,xmm0 - vmovdqu xmm0,XMMWORD PTR[((128-128))+rdi] - vpand xmm12,xmm12,xmm6 - vpaddd xmm9,xmm9,xmm1 - vmovdqu xmm1,XMMWORD PTR[((160-128))+rdi] - vpand xmm13,xmm13,xmm6 - vpaddd xmm10,xmm10,xmm2 - vmovdqu xmm2,XMMWORD PTR[((192-128))+rdi] - vpand xmm14,xmm14,xmm6 - vpaddd xmm11,xmm11,xmm5 - vmovdqu xmm5,XMMWORD PTR[((224-128))+rdi] - vpand xmm15,xmm15,xmm6 - vpaddd xmm12,xmm12,xmm0 - vpaddd xmm13,xmm13,xmm1 - vmovdqu XMMWORD PTR[(0-128)+rdi],xmm8 - vpaddd xmm14,xmm14,xmm2 - vmovdqu XMMWORD PTR[(32-128)+rdi],xmm9 - vpaddd xmm15,xmm15,xmm5 - vmovdqu XMMWORD PTR[(64-128)+rdi],xmm10 - vmovdqu XMMWORD PTR[(96-128)+rdi],xmm11 - vmovdqu XMMWORD PTR[(128-128)+rdi],xmm12 - vmovdqu XMMWORD PTR[(160-128)+rdi],xmm13 - vmovdqu XMMWORD PTR[(192-128)+rdi],xmm14 - vmovdqu XMMWORD PTR[(224-128)+rdi],xmm15 - - vmovdqu XMMWORD PTR[rbx],xmm7 - vmovdqu xmm6,XMMWORD PTR[$L$pbswap] - dec edx - jnz $L$oop_avx - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande_avx - -$L$done_avx:: - mov rax,QWORD PTR[272+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block_avx:: -sha256_multi_block_avx ENDP - -ALIGN 32 -sha256_multi_block_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_avx2_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[(-120)+rax],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - sub rsp,576 - and rsp,-256 - mov QWORD PTR[544+rsp],rax -$L$body_avx2:: - lea rbp,QWORD PTR[((K256+128))] - lea rdi,QWORD PTR[128+rdi] - -$L$oop_grande_avx2:: - mov DWORD PTR[552+rsp],edx - xor edx,edx - lea rbx,QWORD PTR[512+rsp] - mov r12,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r12,rbp - mov r13,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r13,rbp - mov r14,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r14,rbp - mov r15,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r15,rbp - mov r8,QWORD PTR[64+rsi] - mov ecx,DWORD PTR[72+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[16+rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[80+rsi] - mov ecx,DWORD PTR[88+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[20+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[96+rsi] - mov ecx,DWORD PTR[104+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[24+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[112+rsi] - mov ecx,DWORD PTR[120+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[28+rbx],ecx - cmovle r11,rbp - vmovdqu ymm8,YMMWORD PTR[((0-128))+rdi] - lea rax,QWORD PTR[128+rsp] - vmovdqu ymm9,YMMWORD PTR[((32-128))+rdi] - lea rbx,QWORD PTR[((256+128))+rsp] - vmovdqu ymm10,YMMWORD PTR[((64-128))+rdi] - vmovdqu ymm11,YMMWORD PTR[((96-128))+rdi] - vmovdqu ymm12,YMMWORD PTR[((128-128))+rdi] - vmovdqu ymm13,YMMWORD PTR[((160-128))+rdi] - vmovdqu ymm14,YMMWORD PTR[((192-128))+rdi] - vmovdqu ymm15,YMMWORD PTR[((224-128))+rdi] - vmovdqu ymm6,YMMWORD PTR[$L$pbswap] - jmp $L$oop_avx2 - -ALIGN 32 -$L$oop_avx2:: - vpxor ymm4,ymm10,ymm9 - vmovd xmm5,DWORD PTR[r12] - vmovd xmm0,DWORD PTR[r8] - vmovd xmm1,DWORD PTR[r13] - vmovd xmm2,DWORD PTR[r9] - vpinsrd xmm5,xmm5,DWORD PTR[r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm12,6 - vpslld ymm2,ymm12,26 - vmovdqu YMMWORD PTR[(0-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm15 - - vpsrld ymm1,ymm12,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm12,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-128))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm12,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,7 - vpandn ymm0,ymm12,ymm14 - vpand ymm3,ymm12,ymm13 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm15,ymm8,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm8,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm9,ymm8 - - vpxor ymm15,ymm15,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm8,13 - - vpslld ymm2,ymm8,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm15,ymm1 - - vpsrld ymm1,ymm8,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,10 - vpxor ymm15,ymm9,ymm4 - vpaddd ymm11,ymm11,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm15,ymm15,ymm5 - vpaddd ymm15,ymm15,ymm7 - vmovd xmm5,DWORD PTR[4+r12] - vmovd xmm0,DWORD PTR[4+r8] - vmovd xmm1,DWORD PTR[4+r13] - vmovd xmm2,DWORD PTR[4+r9] - vpinsrd xmm5,xmm5,DWORD PTR[4+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[4+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[4+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[4+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm11,6 - vpslld ymm2,ymm11,26 - vmovdqu YMMWORD PTR[(32-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm14 - - vpsrld ymm1,ymm11,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm11,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-96))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm11,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,7 - vpandn ymm0,ymm11,ymm13 - vpand ymm4,ymm11,ymm12 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm14,ymm15,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm15,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm8,ymm15 - - vpxor ymm14,ymm14,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm15,13 - - vpslld ymm2,ymm15,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm14,ymm1 - - vpsrld ymm1,ymm15,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,10 - vpxor ymm14,ymm8,ymm3 - vpaddd ymm10,ymm10,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm14,ymm14,ymm5 - vpaddd ymm14,ymm14,ymm7 - vmovd xmm5,DWORD PTR[8+r12] - vmovd xmm0,DWORD PTR[8+r8] - vmovd xmm1,DWORD PTR[8+r13] - vmovd xmm2,DWORD PTR[8+r9] - vpinsrd xmm5,xmm5,DWORD PTR[8+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[8+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[8+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[8+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm10,6 - vpslld ymm2,ymm10,26 - vmovdqu YMMWORD PTR[(64-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm13 - - vpsrld ymm1,ymm10,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm10,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-64))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm10,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,7 - vpandn ymm0,ymm10,ymm12 - vpand ymm3,ymm10,ymm11 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm13,ymm14,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm14,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm15,ymm14 - - vpxor ymm13,ymm13,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm14,13 - - vpslld ymm2,ymm14,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm13,ymm1 - - vpsrld ymm1,ymm14,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,10 - vpxor ymm13,ymm15,ymm4 - vpaddd ymm9,ymm9,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm13,ymm13,ymm5 - vpaddd ymm13,ymm13,ymm7 - vmovd xmm5,DWORD PTR[12+r12] - vmovd xmm0,DWORD PTR[12+r8] - vmovd xmm1,DWORD PTR[12+r13] - vmovd xmm2,DWORD PTR[12+r9] - vpinsrd xmm5,xmm5,DWORD PTR[12+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[12+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[12+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[12+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm9,6 - vpslld ymm2,ymm9,26 - vmovdqu YMMWORD PTR[(96-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm12 - - vpsrld ymm1,ymm9,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm9,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-32))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm9,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,7 - vpandn ymm0,ymm9,ymm11 - vpand ymm4,ymm9,ymm10 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm12,ymm13,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm13,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm14,ymm13 - - vpxor ymm12,ymm12,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm13,13 - - vpslld ymm2,ymm13,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm12,ymm1 - - vpsrld ymm1,ymm13,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,10 - vpxor ymm12,ymm14,ymm3 - vpaddd ymm8,ymm8,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm12,ymm12,ymm5 - vpaddd ymm12,ymm12,ymm7 - vmovd xmm5,DWORD PTR[16+r12] - vmovd xmm0,DWORD PTR[16+r8] - vmovd xmm1,DWORD PTR[16+r13] - vmovd xmm2,DWORD PTR[16+r9] - vpinsrd xmm5,xmm5,DWORD PTR[16+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[16+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[16+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[16+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm8,6 - vpslld ymm2,ymm8,26 - vmovdqu YMMWORD PTR[(128-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm11 - - vpsrld ymm1,ymm8,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm8,21 - vpaddd ymm5,ymm5,YMMWORD PTR[rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm8,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,7 - vpandn ymm0,ymm8,ymm10 - vpand ymm3,ymm8,ymm9 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm11,ymm12,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm12,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm13,ymm12 - - vpxor ymm11,ymm11,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm12,13 - - vpslld ymm2,ymm12,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm11,ymm1 - - vpsrld ymm1,ymm12,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,10 - vpxor ymm11,ymm13,ymm4 - vpaddd ymm15,ymm15,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm11,ymm11,ymm5 - vpaddd ymm11,ymm11,ymm7 - vmovd xmm5,DWORD PTR[20+r12] - vmovd xmm0,DWORD PTR[20+r8] - vmovd xmm1,DWORD PTR[20+r13] - vmovd xmm2,DWORD PTR[20+r9] - vpinsrd xmm5,xmm5,DWORD PTR[20+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[20+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[20+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[20+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm15,6 - vpslld ymm2,ymm15,26 - vmovdqu YMMWORD PTR[(160-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm10 - - vpsrld ymm1,ymm15,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm15,21 - vpaddd ymm5,ymm5,YMMWORD PTR[32+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm15,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,7 - vpandn ymm0,ymm15,ymm9 - vpand ymm4,ymm15,ymm8 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm10,ymm11,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm11,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm12,ymm11 - - vpxor ymm10,ymm10,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm11,13 - - vpslld ymm2,ymm11,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm10,ymm1 - - vpsrld ymm1,ymm11,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,10 - vpxor ymm10,ymm12,ymm3 - vpaddd ymm14,ymm14,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm10,ymm10,ymm5 - vpaddd ymm10,ymm10,ymm7 - vmovd xmm5,DWORD PTR[24+r12] - vmovd xmm0,DWORD PTR[24+r8] - vmovd xmm1,DWORD PTR[24+r13] - vmovd xmm2,DWORD PTR[24+r9] - vpinsrd xmm5,xmm5,DWORD PTR[24+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[24+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[24+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[24+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm14,6 - vpslld ymm2,ymm14,26 - vmovdqu YMMWORD PTR[(192-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm9 - - vpsrld ymm1,ymm14,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm14,21 - vpaddd ymm5,ymm5,YMMWORD PTR[64+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm14,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,7 - vpandn ymm0,ymm14,ymm8 - vpand ymm3,ymm14,ymm15 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm9,ymm10,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm10,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm11,ymm10 - - vpxor ymm9,ymm9,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm10,13 - - vpslld ymm2,ymm10,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm9,ymm1 - - vpsrld ymm1,ymm10,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,10 - vpxor ymm9,ymm11,ymm4 - vpaddd ymm13,ymm13,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm9,ymm9,ymm5 - vpaddd ymm9,ymm9,ymm7 - vmovd xmm5,DWORD PTR[28+r12] - vmovd xmm0,DWORD PTR[28+r8] - vmovd xmm1,DWORD PTR[28+r13] - vmovd xmm2,DWORD PTR[28+r9] - vpinsrd xmm5,xmm5,DWORD PTR[28+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[28+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[28+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[28+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm13,6 - vpslld ymm2,ymm13,26 - vmovdqu YMMWORD PTR[(224-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm8 - - vpsrld ymm1,ymm13,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm13,21 - vpaddd ymm5,ymm5,YMMWORD PTR[96+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm13,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,7 - vpandn ymm0,ymm13,ymm15 - vpand ymm4,ymm13,ymm14 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm8,ymm9,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm9,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm10,ymm9 - - vpxor ymm8,ymm8,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm9,13 - - vpslld ymm2,ymm9,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm8,ymm1 - - vpsrld ymm1,ymm9,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,10 - vpxor ymm8,ymm10,ymm3 - vpaddd ymm12,ymm12,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm8,ymm8,ymm5 - vpaddd ymm8,ymm8,ymm7 - add rbp,256 - vmovd xmm5,DWORD PTR[32+r12] - vmovd xmm0,DWORD PTR[32+r8] - vmovd xmm1,DWORD PTR[32+r13] - vmovd xmm2,DWORD PTR[32+r9] - vpinsrd xmm5,xmm5,DWORD PTR[32+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[32+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[32+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[32+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm12,6 - vpslld ymm2,ymm12,26 - vmovdqu YMMWORD PTR[(256-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm15 - - vpsrld ymm1,ymm12,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm12,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-128))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm12,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,7 - vpandn ymm0,ymm12,ymm14 - vpand ymm3,ymm12,ymm13 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm15,ymm8,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm8,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm9,ymm8 - - vpxor ymm15,ymm15,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm8,13 - - vpslld ymm2,ymm8,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm15,ymm1 - - vpsrld ymm1,ymm8,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,10 - vpxor ymm15,ymm9,ymm4 - vpaddd ymm11,ymm11,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm15,ymm15,ymm5 - vpaddd ymm15,ymm15,ymm7 - vmovd xmm5,DWORD PTR[36+r12] - vmovd xmm0,DWORD PTR[36+r8] - vmovd xmm1,DWORD PTR[36+r13] - vmovd xmm2,DWORD PTR[36+r9] - vpinsrd xmm5,xmm5,DWORD PTR[36+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[36+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[36+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[36+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm11,6 - vpslld ymm2,ymm11,26 - vmovdqu YMMWORD PTR[(288-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm14 - - vpsrld ymm1,ymm11,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm11,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-96))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm11,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,7 - vpandn ymm0,ymm11,ymm13 - vpand ymm4,ymm11,ymm12 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm14,ymm15,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm15,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm8,ymm15 - - vpxor ymm14,ymm14,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm15,13 - - vpslld ymm2,ymm15,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm14,ymm1 - - vpsrld ymm1,ymm15,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,10 - vpxor ymm14,ymm8,ymm3 - vpaddd ymm10,ymm10,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm14,ymm14,ymm5 - vpaddd ymm14,ymm14,ymm7 - vmovd xmm5,DWORD PTR[40+r12] - vmovd xmm0,DWORD PTR[40+r8] - vmovd xmm1,DWORD PTR[40+r13] - vmovd xmm2,DWORD PTR[40+r9] - vpinsrd xmm5,xmm5,DWORD PTR[40+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[40+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[40+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[40+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm10,6 - vpslld ymm2,ymm10,26 - vmovdqu YMMWORD PTR[(320-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm13 - - vpsrld ymm1,ymm10,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm10,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-64))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm10,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,7 - vpandn ymm0,ymm10,ymm12 - vpand ymm3,ymm10,ymm11 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm13,ymm14,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm14,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm15,ymm14 - - vpxor ymm13,ymm13,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm14,13 - - vpslld ymm2,ymm14,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm13,ymm1 - - vpsrld ymm1,ymm14,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,10 - vpxor ymm13,ymm15,ymm4 - vpaddd ymm9,ymm9,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm13,ymm13,ymm5 - vpaddd ymm13,ymm13,ymm7 - vmovd xmm5,DWORD PTR[44+r12] - vmovd xmm0,DWORD PTR[44+r8] - vmovd xmm1,DWORD PTR[44+r13] - vmovd xmm2,DWORD PTR[44+r9] - vpinsrd xmm5,xmm5,DWORD PTR[44+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[44+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[44+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[44+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm9,6 - vpslld ymm2,ymm9,26 - vmovdqu YMMWORD PTR[(352-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm12 - - vpsrld ymm1,ymm9,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm9,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-32))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm9,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,7 - vpandn ymm0,ymm9,ymm11 - vpand ymm4,ymm9,ymm10 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm12,ymm13,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm13,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm14,ymm13 - - vpxor ymm12,ymm12,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm13,13 - - vpslld ymm2,ymm13,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm12,ymm1 - - vpsrld ymm1,ymm13,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,10 - vpxor ymm12,ymm14,ymm3 - vpaddd ymm8,ymm8,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm12,ymm12,ymm5 - vpaddd ymm12,ymm12,ymm7 - vmovd xmm5,DWORD PTR[48+r12] - vmovd xmm0,DWORD PTR[48+r8] - vmovd xmm1,DWORD PTR[48+r13] - vmovd xmm2,DWORD PTR[48+r9] - vpinsrd xmm5,xmm5,DWORD PTR[48+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[48+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[48+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[48+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm8,6 - vpslld ymm2,ymm8,26 - vmovdqu YMMWORD PTR[(384-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm11 - - vpsrld ymm1,ymm8,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm8,21 - vpaddd ymm5,ymm5,YMMWORD PTR[rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm8,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,7 - vpandn ymm0,ymm8,ymm10 - vpand ymm3,ymm8,ymm9 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm11,ymm12,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm12,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm13,ymm12 - - vpxor ymm11,ymm11,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm12,13 - - vpslld ymm2,ymm12,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm11,ymm1 - - vpsrld ymm1,ymm12,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,10 - vpxor ymm11,ymm13,ymm4 - vpaddd ymm15,ymm15,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm11,ymm11,ymm5 - vpaddd ymm11,ymm11,ymm7 - vmovd xmm5,DWORD PTR[52+r12] - vmovd xmm0,DWORD PTR[52+r8] - vmovd xmm1,DWORD PTR[52+r13] - vmovd xmm2,DWORD PTR[52+r9] - vpinsrd xmm5,xmm5,DWORD PTR[52+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[52+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[52+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[52+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm15,6 - vpslld ymm2,ymm15,26 - vmovdqu YMMWORD PTR[(416-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm10 - - vpsrld ymm1,ymm15,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm15,21 - vpaddd ymm5,ymm5,YMMWORD PTR[32+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm15,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,7 - vpandn ymm0,ymm15,ymm9 - vpand ymm4,ymm15,ymm8 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm10,ymm11,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm11,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm12,ymm11 - - vpxor ymm10,ymm10,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm11,13 - - vpslld ymm2,ymm11,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm10,ymm1 - - vpsrld ymm1,ymm11,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,10 - vpxor ymm10,ymm12,ymm3 - vpaddd ymm14,ymm14,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm10,ymm10,ymm5 - vpaddd ymm10,ymm10,ymm7 - vmovd xmm5,DWORD PTR[56+r12] - vmovd xmm0,DWORD PTR[56+r8] - vmovd xmm1,DWORD PTR[56+r13] - vmovd xmm2,DWORD PTR[56+r9] - vpinsrd xmm5,xmm5,DWORD PTR[56+r14],1 - vpinsrd xmm0,xmm0,DWORD PTR[56+r10],1 - vpinsrd xmm1,xmm1,DWORD PTR[56+r15],1 - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[56+r11],1 - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm14,6 - vpslld ymm2,ymm14,26 - vmovdqu YMMWORD PTR[(448-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm9 - - vpsrld ymm1,ymm14,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm14,21 - vpaddd ymm5,ymm5,YMMWORD PTR[64+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm14,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,7 - vpandn ymm0,ymm14,ymm8 - vpand ymm3,ymm14,ymm15 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm9,ymm10,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm10,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm11,ymm10 - - vpxor ymm9,ymm9,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm10,13 - - vpslld ymm2,ymm10,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm9,ymm1 - - vpsrld ymm1,ymm10,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,10 - vpxor ymm9,ymm11,ymm4 - vpaddd ymm13,ymm13,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm9,ymm9,ymm5 - vpaddd ymm9,ymm9,ymm7 - vmovd xmm5,DWORD PTR[60+r12] - lea r12,QWORD PTR[64+r12] - vmovd xmm0,DWORD PTR[60+r8] - lea r8,QWORD PTR[64+r8] - vmovd xmm1,DWORD PTR[60+r13] - lea r13,QWORD PTR[64+r13] - vmovd xmm2,DWORD PTR[60+r9] - lea r9,QWORD PTR[64+r9] - vpinsrd xmm5,xmm5,DWORD PTR[60+r14],1 - lea r14,QWORD PTR[64+r14] - vpinsrd xmm0,xmm0,DWORD PTR[60+r10],1 - lea r10,QWORD PTR[64+r10] - vpinsrd xmm1,xmm1,DWORD PTR[60+r15],1 - lea r15,QWORD PTR[64+r15] - vpunpckldq ymm5,ymm5,ymm1 - vpinsrd xmm2,xmm2,DWORD PTR[60+r11],1 - lea r11,QWORD PTR[64+r11] - vpunpckldq ymm0,ymm0,ymm2 - vinserti128 ymm5,ymm5,xmm0,1 - vpshufb ymm5,ymm5,ymm6 - vpsrld ymm7,ymm13,6 - vpslld ymm2,ymm13,26 - vmovdqu YMMWORD PTR[(480-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm8 - - vpsrld ymm1,ymm13,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm13,21 - vpaddd ymm5,ymm5,YMMWORD PTR[96+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm13,25 - vpxor ymm7,ymm7,ymm2 - prefetcht0 [63+r12] - vpslld ymm2,ymm13,7 - vpandn ymm0,ymm13,ymm15 - vpand ymm4,ymm13,ymm14 - prefetcht0 [63+r13] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm8,ymm9,2 - vpxor ymm7,ymm7,ymm2 - prefetcht0 [63+r14] - vpslld ymm1,ymm9,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm10,ymm9 - prefetcht0 [63+r15] - vpxor ymm8,ymm8,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm9,13 - prefetcht0 [63+r8] - vpslld ymm2,ymm9,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm3,ymm3,ymm4 - prefetcht0 [63+r9] - vpxor ymm7,ymm8,ymm1 - - vpsrld ymm1,ymm9,22 - vpxor ymm7,ymm7,ymm2 - prefetcht0 [63+r10] - vpslld ymm2,ymm9,10 - vpxor ymm8,ymm10,ymm3 - vpaddd ymm12,ymm12,ymm5 - prefetcht0 [63+r11] - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm8,ymm8,ymm5 - vpaddd ymm8,ymm8,ymm7 - add rbp,256 - vmovdqu ymm5,YMMWORD PTR[((0-128))+rax] - mov ecx,3 - jmp $L$oop_16_xx_avx2 -ALIGN 32 -$L$oop_16_xx_avx2:: - vmovdqu ymm6,YMMWORD PTR[((32-128))+rax] - vpaddd ymm5,ymm5,YMMWORD PTR[((288-256-128))+rbx] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((448-256-128))+rbx] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm12,6 - vpslld ymm2,ymm12,26 - vmovdqu YMMWORD PTR[(0-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm15 - - vpsrld ymm1,ymm12,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm12,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-128))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm12,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,7 - vpandn ymm0,ymm12,ymm14 - vpand ymm3,ymm12,ymm13 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm15,ymm8,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm8,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm9,ymm8 - - vpxor ymm15,ymm15,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm8,13 - - vpslld ymm2,ymm8,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm15,ymm1 - - vpsrld ymm1,ymm8,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,10 - vpxor ymm15,ymm9,ymm4 - vpaddd ymm11,ymm11,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm15,ymm15,ymm5 - vpaddd ymm15,ymm15,ymm7 - vmovdqu ymm5,YMMWORD PTR[((64-128))+rax] - vpaddd ymm6,ymm6,YMMWORD PTR[((320-256-128))+rbx] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((480-256-128))+rbx] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm11,6 - vpslld ymm2,ymm11,26 - vmovdqu YMMWORD PTR[(32-128)+rax],ymm6 - vpaddd ymm6,ymm6,ymm14 - - vpsrld ymm1,ymm11,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm11,21 - vpaddd ymm6,ymm6,YMMWORD PTR[((-96))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm11,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,7 - vpandn ymm0,ymm11,ymm13 - vpand ymm4,ymm11,ymm12 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm14,ymm15,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm15,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm8,ymm15 - - vpxor ymm14,ymm14,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm15,13 - - vpslld ymm2,ymm15,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm14,ymm1 - - vpsrld ymm1,ymm15,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,10 - vpxor ymm14,ymm8,ymm3 - vpaddd ymm10,ymm10,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm14,ymm14,ymm6 - vpaddd ymm14,ymm14,ymm7 - vmovdqu ymm6,YMMWORD PTR[((96-128))+rax] - vpaddd ymm5,ymm5,YMMWORD PTR[((352-256-128))+rbx] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((0-128))+rax] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm10,6 - vpslld ymm2,ymm10,26 - vmovdqu YMMWORD PTR[(64-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm13 - - vpsrld ymm1,ymm10,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm10,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-64))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm10,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,7 - vpandn ymm0,ymm10,ymm12 - vpand ymm3,ymm10,ymm11 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm13,ymm14,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm14,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm15,ymm14 - - vpxor ymm13,ymm13,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm14,13 - - vpslld ymm2,ymm14,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm13,ymm1 - - vpsrld ymm1,ymm14,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,10 - vpxor ymm13,ymm15,ymm4 - vpaddd ymm9,ymm9,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm13,ymm13,ymm5 - vpaddd ymm13,ymm13,ymm7 - vmovdqu ymm5,YMMWORD PTR[((128-128))+rax] - vpaddd ymm6,ymm6,YMMWORD PTR[((384-256-128))+rbx] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((32-128))+rax] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm9,6 - vpslld ymm2,ymm9,26 - vmovdqu YMMWORD PTR[(96-128)+rax],ymm6 - vpaddd ymm6,ymm6,ymm12 - - vpsrld ymm1,ymm9,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm9,21 - vpaddd ymm6,ymm6,YMMWORD PTR[((-32))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm9,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,7 - vpandn ymm0,ymm9,ymm11 - vpand ymm4,ymm9,ymm10 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm12,ymm13,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm13,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm14,ymm13 - - vpxor ymm12,ymm12,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm13,13 - - vpslld ymm2,ymm13,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm12,ymm1 - - vpsrld ymm1,ymm13,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,10 - vpxor ymm12,ymm14,ymm3 - vpaddd ymm8,ymm8,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm12,ymm12,ymm6 - vpaddd ymm12,ymm12,ymm7 - vmovdqu ymm6,YMMWORD PTR[((160-128))+rax] - vpaddd ymm5,ymm5,YMMWORD PTR[((416-256-128))+rbx] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((64-128))+rax] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm8,6 - vpslld ymm2,ymm8,26 - vmovdqu YMMWORD PTR[(128-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm11 - - vpsrld ymm1,ymm8,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm8,21 - vpaddd ymm5,ymm5,YMMWORD PTR[rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm8,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,7 - vpandn ymm0,ymm8,ymm10 - vpand ymm3,ymm8,ymm9 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm11,ymm12,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm12,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm13,ymm12 - - vpxor ymm11,ymm11,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm12,13 - - vpslld ymm2,ymm12,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm11,ymm1 - - vpsrld ymm1,ymm12,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,10 - vpxor ymm11,ymm13,ymm4 - vpaddd ymm15,ymm15,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm11,ymm11,ymm5 - vpaddd ymm11,ymm11,ymm7 - vmovdqu ymm5,YMMWORD PTR[((192-128))+rax] - vpaddd ymm6,ymm6,YMMWORD PTR[((448-256-128))+rbx] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((96-128))+rax] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm15,6 - vpslld ymm2,ymm15,26 - vmovdqu YMMWORD PTR[(160-128)+rax],ymm6 - vpaddd ymm6,ymm6,ymm10 - - vpsrld ymm1,ymm15,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm15,21 - vpaddd ymm6,ymm6,YMMWORD PTR[32+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm15,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,7 - vpandn ymm0,ymm15,ymm9 - vpand ymm4,ymm15,ymm8 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm10,ymm11,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm11,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm12,ymm11 - - vpxor ymm10,ymm10,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm11,13 - - vpslld ymm2,ymm11,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm10,ymm1 - - vpsrld ymm1,ymm11,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,10 - vpxor ymm10,ymm12,ymm3 - vpaddd ymm14,ymm14,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm10,ymm10,ymm6 - vpaddd ymm10,ymm10,ymm7 - vmovdqu ymm6,YMMWORD PTR[((224-128))+rax] - vpaddd ymm5,ymm5,YMMWORD PTR[((480-256-128))+rbx] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((128-128))+rax] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm14,6 - vpslld ymm2,ymm14,26 - vmovdqu YMMWORD PTR[(192-128)+rax],ymm5 - vpaddd ymm5,ymm5,ymm9 - - vpsrld ymm1,ymm14,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm14,21 - vpaddd ymm5,ymm5,YMMWORD PTR[64+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm14,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,7 - vpandn ymm0,ymm14,ymm8 - vpand ymm3,ymm14,ymm15 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm9,ymm10,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm10,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm11,ymm10 - - vpxor ymm9,ymm9,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm10,13 - - vpslld ymm2,ymm10,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm9,ymm1 - - vpsrld ymm1,ymm10,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,10 - vpxor ymm9,ymm11,ymm4 - vpaddd ymm13,ymm13,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm9,ymm9,ymm5 - vpaddd ymm9,ymm9,ymm7 - vmovdqu ymm5,YMMWORD PTR[((256-256-128))+rbx] - vpaddd ymm6,ymm6,YMMWORD PTR[((0-128))+rax] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((160-128))+rax] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm13,6 - vpslld ymm2,ymm13,26 - vmovdqu YMMWORD PTR[(224-128)+rax],ymm6 - vpaddd ymm6,ymm6,ymm8 - - vpsrld ymm1,ymm13,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm13,21 - vpaddd ymm6,ymm6,YMMWORD PTR[96+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm13,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,7 - vpandn ymm0,ymm13,ymm15 - vpand ymm4,ymm13,ymm14 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm8,ymm9,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm9,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm10,ymm9 - - vpxor ymm8,ymm8,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm9,13 - - vpslld ymm2,ymm9,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm8,ymm1 - - vpsrld ymm1,ymm9,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,10 - vpxor ymm8,ymm10,ymm3 - vpaddd ymm12,ymm12,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm8,ymm8,ymm6 - vpaddd ymm8,ymm8,ymm7 - add rbp,256 - vmovdqu ymm6,YMMWORD PTR[((288-256-128))+rbx] - vpaddd ymm5,ymm5,YMMWORD PTR[((32-128))+rax] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((192-128))+rax] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm12,6 - vpslld ymm2,ymm12,26 - vmovdqu YMMWORD PTR[(256-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm15 - - vpsrld ymm1,ymm12,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm12,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-128))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm12,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,7 - vpandn ymm0,ymm12,ymm14 - vpand ymm3,ymm12,ymm13 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm15,ymm8,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm8,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm9,ymm8 - - vpxor ymm15,ymm15,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm8,13 - - vpslld ymm2,ymm8,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm15,ymm1 - - vpsrld ymm1,ymm8,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,10 - vpxor ymm15,ymm9,ymm4 - vpaddd ymm11,ymm11,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm15,ymm15,ymm5 - vpaddd ymm15,ymm15,ymm7 - vmovdqu ymm5,YMMWORD PTR[((320-256-128))+rbx] - vpaddd ymm6,ymm6,YMMWORD PTR[((64-128))+rax] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((224-128))+rax] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm11,6 - vpslld ymm2,ymm11,26 - vmovdqu YMMWORD PTR[(288-256-128)+rbx],ymm6 - vpaddd ymm6,ymm6,ymm14 - - vpsrld ymm1,ymm11,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm11,21 - vpaddd ymm6,ymm6,YMMWORD PTR[((-96))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm11,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,7 - vpandn ymm0,ymm11,ymm13 - vpand ymm4,ymm11,ymm12 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm14,ymm15,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm15,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm8,ymm15 - - vpxor ymm14,ymm14,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm15,13 - - vpslld ymm2,ymm15,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm14,ymm1 - - vpsrld ymm1,ymm15,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,10 - vpxor ymm14,ymm8,ymm3 - vpaddd ymm10,ymm10,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm14,ymm14,ymm6 - vpaddd ymm14,ymm14,ymm7 - vmovdqu ymm6,YMMWORD PTR[((352-256-128))+rbx] - vpaddd ymm5,ymm5,YMMWORD PTR[((96-128))+rax] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((256-256-128))+rbx] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm10,6 - vpslld ymm2,ymm10,26 - vmovdqu YMMWORD PTR[(320-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm13 - - vpsrld ymm1,ymm10,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm10,21 - vpaddd ymm5,ymm5,YMMWORD PTR[((-64))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm10,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,7 - vpandn ymm0,ymm10,ymm12 - vpand ymm3,ymm10,ymm11 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm13,ymm14,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm14,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm15,ymm14 - - vpxor ymm13,ymm13,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm14,13 - - vpslld ymm2,ymm14,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm13,ymm1 - - vpsrld ymm1,ymm14,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,10 - vpxor ymm13,ymm15,ymm4 - vpaddd ymm9,ymm9,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm13,ymm13,ymm5 - vpaddd ymm13,ymm13,ymm7 - vmovdqu ymm5,YMMWORD PTR[((384-256-128))+rbx] - vpaddd ymm6,ymm6,YMMWORD PTR[((128-128))+rax] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((288-256-128))+rbx] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm9,6 - vpslld ymm2,ymm9,26 - vmovdqu YMMWORD PTR[(352-256-128)+rbx],ymm6 - vpaddd ymm6,ymm6,ymm12 - - vpsrld ymm1,ymm9,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm9,21 - vpaddd ymm6,ymm6,YMMWORD PTR[((-32))+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm9,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,7 - vpandn ymm0,ymm9,ymm11 - vpand ymm4,ymm9,ymm10 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm12,ymm13,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm13,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm14,ymm13 - - vpxor ymm12,ymm12,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm13,13 - - vpslld ymm2,ymm13,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm12,ymm1 - - vpsrld ymm1,ymm13,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,10 - vpxor ymm12,ymm14,ymm3 - vpaddd ymm8,ymm8,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm12,ymm12,ymm6 - vpaddd ymm12,ymm12,ymm7 - vmovdqu ymm6,YMMWORD PTR[((416-256-128))+rbx] - vpaddd ymm5,ymm5,YMMWORD PTR[((160-128))+rax] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((320-256-128))+rbx] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm8,6 - vpslld ymm2,ymm8,26 - vmovdqu YMMWORD PTR[(384-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm11 - - vpsrld ymm1,ymm8,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm8,21 - vpaddd ymm5,ymm5,YMMWORD PTR[rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm8,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm8,7 - vpandn ymm0,ymm8,ymm10 - vpand ymm3,ymm8,ymm9 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm11,ymm12,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm12,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm13,ymm12 - - vpxor ymm11,ymm11,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm12,13 - - vpslld ymm2,ymm12,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm11,ymm1 - - vpsrld ymm1,ymm12,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm12,10 - vpxor ymm11,ymm13,ymm4 - vpaddd ymm15,ymm15,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm11,ymm11,ymm5 - vpaddd ymm11,ymm11,ymm7 - vmovdqu ymm5,YMMWORD PTR[((448-256-128))+rbx] - vpaddd ymm6,ymm6,YMMWORD PTR[((192-128))+rax] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((352-256-128))+rbx] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm15,6 - vpslld ymm2,ymm15,26 - vmovdqu YMMWORD PTR[(416-256-128)+rbx],ymm6 - vpaddd ymm6,ymm6,ymm10 - - vpsrld ymm1,ymm15,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm15,21 - vpaddd ymm6,ymm6,YMMWORD PTR[32+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm15,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm15,7 - vpandn ymm0,ymm15,ymm9 - vpand ymm4,ymm15,ymm8 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm10,ymm11,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm11,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm12,ymm11 - - vpxor ymm10,ymm10,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm11,13 - - vpslld ymm2,ymm11,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm10,ymm1 - - vpsrld ymm1,ymm11,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm11,10 - vpxor ymm10,ymm12,ymm3 - vpaddd ymm14,ymm14,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm10,ymm10,ymm6 - vpaddd ymm10,ymm10,ymm7 - vmovdqu ymm6,YMMWORD PTR[((480-256-128))+rbx] - vpaddd ymm5,ymm5,YMMWORD PTR[((224-128))+rax] - - vpsrld ymm7,ymm6,3 - vpsrld ymm1,ymm6,7 - vpslld ymm2,ymm6,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm6,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm6,14 - vmovdqu ymm0,YMMWORD PTR[((384-256-128))+rbx] - vpsrld ymm3,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm5,ymm5,ymm7 - vpxor ymm7,ymm3,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm5,ymm5,ymm7 - vpsrld ymm7,ymm14,6 - vpslld ymm2,ymm14,26 - vmovdqu YMMWORD PTR[(448-256-128)+rbx],ymm5 - vpaddd ymm5,ymm5,ymm9 - - vpsrld ymm1,ymm14,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm14,21 - vpaddd ymm5,ymm5,YMMWORD PTR[64+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm14,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm14,7 - vpandn ymm0,ymm14,ymm8 - vpand ymm3,ymm14,ymm15 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm9,ymm10,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm10,30 - vpxor ymm0,ymm0,ymm3 - vpxor ymm3,ymm11,ymm10 - - vpxor ymm9,ymm9,ymm1 - vpaddd ymm5,ymm5,ymm7 - - vpsrld ymm1,ymm10,13 - - vpslld ymm2,ymm10,19 - vpaddd ymm5,ymm5,ymm0 - vpand ymm4,ymm4,ymm3 - - vpxor ymm7,ymm9,ymm1 - - vpsrld ymm1,ymm10,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm10,10 - vpxor ymm9,ymm11,ymm4 - vpaddd ymm13,ymm13,ymm5 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm9,ymm9,ymm5 - vpaddd ymm9,ymm9,ymm7 - vmovdqu ymm5,YMMWORD PTR[((0-128))+rax] - vpaddd ymm6,ymm6,YMMWORD PTR[((256-256-128))+rbx] - - vpsrld ymm7,ymm5,3 - vpsrld ymm1,ymm5,7 - vpslld ymm2,ymm5,25 - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm5,18 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm5,14 - vmovdqu ymm0,YMMWORD PTR[((416-256-128))+rbx] - vpsrld ymm4,ymm0,10 - - vpxor ymm7,ymm7,ymm1 - vpsrld ymm1,ymm0,17 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,15 - vpaddd ymm6,ymm6,ymm7 - vpxor ymm7,ymm4,ymm1 - vpsrld ymm1,ymm0,19 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm0,13 - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - vpaddd ymm6,ymm6,ymm7 - vpsrld ymm7,ymm13,6 - vpslld ymm2,ymm13,26 - vmovdqu YMMWORD PTR[(480-256-128)+rbx],ymm6 - vpaddd ymm6,ymm6,ymm8 - - vpsrld ymm1,ymm13,11 - vpxor ymm7,ymm7,ymm2 - vpslld ymm2,ymm13,21 - vpaddd ymm6,ymm6,YMMWORD PTR[96+rbp] - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm1,ymm13,25 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm13,7 - vpandn ymm0,ymm13,ymm15 - vpand ymm4,ymm13,ymm14 - - vpxor ymm7,ymm7,ymm1 - - vpsrld ymm8,ymm9,2 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm1,ymm9,30 - vpxor ymm0,ymm0,ymm4 - vpxor ymm4,ymm10,ymm9 - - vpxor ymm8,ymm8,ymm1 - vpaddd ymm6,ymm6,ymm7 - - vpsrld ymm1,ymm9,13 - - vpslld ymm2,ymm9,19 - vpaddd ymm6,ymm6,ymm0 - vpand ymm3,ymm3,ymm4 - - vpxor ymm7,ymm8,ymm1 - - vpsrld ymm1,ymm9,22 - vpxor ymm7,ymm7,ymm2 - - vpslld ymm2,ymm9,10 - vpxor ymm8,ymm10,ymm3 - vpaddd ymm12,ymm12,ymm6 - - vpxor ymm7,ymm7,ymm1 - vpxor ymm7,ymm7,ymm2 - - vpaddd ymm8,ymm8,ymm6 - vpaddd ymm8,ymm8,ymm7 - add rbp,256 - dec ecx - jnz $L$oop_16_xx_avx2 - - mov ecx,1 - lea rbx,QWORD PTR[512+rsp] - lea rbp,QWORD PTR[((K256+128))] - cmp ecx,DWORD PTR[rbx] - cmovge r12,rbp - cmp ecx,DWORD PTR[4+rbx] - cmovge r13,rbp - cmp ecx,DWORD PTR[8+rbx] - cmovge r14,rbp - cmp ecx,DWORD PTR[12+rbx] - cmovge r15,rbp - cmp ecx,DWORD PTR[16+rbx] - cmovge r8,rbp - cmp ecx,DWORD PTR[20+rbx] - cmovge r9,rbp - cmp ecx,DWORD PTR[24+rbx] - cmovge r10,rbp - cmp ecx,DWORD PTR[28+rbx] - cmovge r11,rbp - vmovdqa ymm7,YMMWORD PTR[rbx] - vpxor ymm0,ymm0,ymm0 - vmovdqa ymm6,ymm7 - vpcmpgtd ymm6,ymm6,ymm0 - vpaddd ymm7,ymm7,ymm6 - - vmovdqu ymm0,YMMWORD PTR[((0-128))+rdi] - vpand ymm8,ymm8,ymm6 - vmovdqu ymm1,YMMWORD PTR[((32-128))+rdi] - vpand ymm9,ymm9,ymm6 - vmovdqu ymm2,YMMWORD PTR[((64-128))+rdi] - vpand ymm10,ymm10,ymm6 - vmovdqu ymm5,YMMWORD PTR[((96-128))+rdi] - vpand ymm11,ymm11,ymm6 - vpaddd ymm8,ymm8,ymm0 - vmovdqu ymm0,YMMWORD PTR[((128-128))+rdi] - vpand ymm12,ymm12,ymm6 - vpaddd ymm9,ymm9,ymm1 - vmovdqu ymm1,YMMWORD PTR[((160-128))+rdi] - vpand ymm13,ymm13,ymm6 - vpaddd ymm10,ymm10,ymm2 - vmovdqu ymm2,YMMWORD PTR[((192-128))+rdi] - vpand ymm14,ymm14,ymm6 - vpaddd ymm11,ymm11,ymm5 - vmovdqu ymm5,YMMWORD PTR[((224-128))+rdi] - vpand ymm15,ymm15,ymm6 - vpaddd ymm12,ymm12,ymm0 - vpaddd ymm13,ymm13,ymm1 - vmovdqu YMMWORD PTR[(0-128)+rdi],ymm8 - vpaddd ymm14,ymm14,ymm2 - vmovdqu YMMWORD PTR[(32-128)+rdi],ymm9 - vpaddd ymm15,ymm15,ymm5 - vmovdqu YMMWORD PTR[(64-128)+rdi],ymm10 - vmovdqu YMMWORD PTR[(96-128)+rdi],ymm11 - vmovdqu YMMWORD PTR[(128-128)+rdi],ymm12 - vmovdqu YMMWORD PTR[(160-128)+rdi],ymm13 - vmovdqu YMMWORD PTR[(192-128)+rdi],ymm14 - vmovdqu YMMWORD PTR[(224-128)+rdi],ymm15 - - vmovdqu YMMWORD PTR[rbx],ymm7 - lea rbx,QWORD PTR[((256+128))+rsp] - vmovdqu ymm6,YMMWORD PTR[$L$pbswap] - dec edx - jnz $L$oop_avx2 - - - - - - - -$L$done_avx2:: - mov rax,QWORD PTR[544+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - movaps xmm13,XMMWORD PTR[((-104))+rax] - movaps xmm14,XMMWORD PTR[((-88))+rax] - movaps xmm15,XMMWORD PTR[((-72))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block_avx2:: -sha256_multi_block_avx2 ENDP -ALIGN 256 -K256:: - DD 1116352408,1116352408,1116352408,1116352408 - DD 1116352408,1116352408,1116352408,1116352408 - DD 1899447441,1899447441,1899447441,1899447441 - DD 1899447441,1899447441,1899447441,1899447441 - DD 3049323471,3049323471,3049323471,3049323471 - DD 3049323471,3049323471,3049323471,3049323471 - DD 3921009573,3921009573,3921009573,3921009573 - DD 3921009573,3921009573,3921009573,3921009573 - DD 961987163,961987163,961987163,961987163 - DD 961987163,961987163,961987163,961987163 - DD 1508970993,1508970993,1508970993,1508970993 - DD 1508970993,1508970993,1508970993,1508970993 - DD 2453635748,2453635748,2453635748,2453635748 - DD 2453635748,2453635748,2453635748,2453635748 - DD 2870763221,2870763221,2870763221,2870763221 - DD 2870763221,2870763221,2870763221,2870763221 - DD 3624381080,3624381080,3624381080,3624381080 - DD 3624381080,3624381080,3624381080,3624381080 - DD 310598401,310598401,310598401,310598401 - DD 310598401,310598401,310598401,310598401 - DD 607225278,607225278,607225278,607225278 - DD 607225278,607225278,607225278,607225278 - DD 1426881987,1426881987,1426881987,1426881987 - DD 1426881987,1426881987,1426881987,1426881987 - DD 1925078388,1925078388,1925078388,1925078388 - DD 1925078388,1925078388,1925078388,1925078388 - DD 2162078206,2162078206,2162078206,2162078206 - DD 2162078206,2162078206,2162078206,2162078206 - DD 2614888103,2614888103,2614888103,2614888103 - DD 2614888103,2614888103,2614888103,2614888103 - DD 3248222580,3248222580,3248222580,3248222580 - DD 3248222580,3248222580,3248222580,3248222580 - DD 3835390401,3835390401,3835390401,3835390401 - DD 3835390401,3835390401,3835390401,3835390401 - DD 4022224774,4022224774,4022224774,4022224774 - DD 4022224774,4022224774,4022224774,4022224774 - DD 264347078,264347078,264347078,264347078 - DD 264347078,264347078,264347078,264347078 - DD 604807628,604807628,604807628,604807628 - DD 604807628,604807628,604807628,604807628 - DD 770255983,770255983,770255983,770255983 - DD 770255983,770255983,770255983,770255983 - DD 1249150122,1249150122,1249150122,1249150122 - DD 1249150122,1249150122,1249150122,1249150122 - DD 1555081692,1555081692,1555081692,1555081692 - DD 1555081692,1555081692,1555081692,1555081692 - DD 1996064986,1996064986,1996064986,1996064986 - DD 1996064986,1996064986,1996064986,1996064986 - DD 2554220882,2554220882,2554220882,2554220882 - DD 2554220882,2554220882,2554220882,2554220882 - DD 2821834349,2821834349,2821834349,2821834349 - DD 2821834349,2821834349,2821834349,2821834349 - DD 2952996808,2952996808,2952996808,2952996808 - DD 2952996808,2952996808,2952996808,2952996808 - DD 3210313671,3210313671,3210313671,3210313671 - DD 3210313671,3210313671,3210313671,3210313671 - DD 3336571891,3336571891,3336571891,3336571891 - DD 3336571891,3336571891,3336571891,3336571891 - DD 3584528711,3584528711,3584528711,3584528711 - DD 3584528711,3584528711,3584528711,3584528711 - DD 113926993,113926993,113926993,113926993 - DD 113926993,113926993,113926993,113926993 - DD 338241895,338241895,338241895,338241895 - DD 338241895,338241895,338241895,338241895 - DD 666307205,666307205,666307205,666307205 - DD 666307205,666307205,666307205,666307205 - DD 773529912,773529912,773529912,773529912 - DD 773529912,773529912,773529912,773529912 - DD 1294757372,1294757372,1294757372,1294757372 - DD 1294757372,1294757372,1294757372,1294757372 - DD 1396182291,1396182291,1396182291,1396182291 - DD 1396182291,1396182291,1396182291,1396182291 - DD 1695183700,1695183700,1695183700,1695183700 - DD 1695183700,1695183700,1695183700,1695183700 - DD 1986661051,1986661051,1986661051,1986661051 - DD 1986661051,1986661051,1986661051,1986661051 - DD 2177026350,2177026350,2177026350,2177026350 - DD 2177026350,2177026350,2177026350,2177026350 - DD 2456956037,2456956037,2456956037,2456956037 - DD 2456956037,2456956037,2456956037,2456956037 - DD 2730485921,2730485921,2730485921,2730485921 - DD 2730485921,2730485921,2730485921,2730485921 - DD 2820302411,2820302411,2820302411,2820302411 - DD 2820302411,2820302411,2820302411,2820302411 - DD 3259730800,3259730800,3259730800,3259730800 - DD 3259730800,3259730800,3259730800,3259730800 - DD 3345764771,3345764771,3345764771,3345764771 - DD 3345764771,3345764771,3345764771,3345764771 - DD 3516065817,3516065817,3516065817,3516065817 - DD 3516065817,3516065817,3516065817,3516065817 - DD 3600352804,3600352804,3600352804,3600352804 - DD 3600352804,3600352804,3600352804,3600352804 - DD 4094571909,4094571909,4094571909,4094571909 - DD 4094571909,4094571909,4094571909,4094571909 - DD 275423344,275423344,275423344,275423344 - DD 275423344,275423344,275423344,275423344 - DD 430227734,430227734,430227734,430227734 - DD 430227734,430227734,430227734,430227734 - DD 506948616,506948616,506948616,506948616 - DD 506948616,506948616,506948616,506948616 - DD 659060556,659060556,659060556,659060556 - DD 659060556,659060556,659060556,659060556 - DD 883997877,883997877,883997877,883997877 - DD 883997877,883997877,883997877,883997877 - DD 958139571,958139571,958139571,958139571 - DD 958139571,958139571,958139571,958139571 - DD 1322822218,1322822218,1322822218,1322822218 - DD 1322822218,1322822218,1322822218,1322822218 - DD 1537002063,1537002063,1537002063,1537002063 - DD 1537002063,1537002063,1537002063,1537002063 - DD 1747873779,1747873779,1747873779,1747873779 - DD 1747873779,1747873779,1747873779,1747873779 - DD 1955562222,1955562222,1955562222,1955562222 - DD 1955562222,1955562222,1955562222,1955562222 - DD 2024104815,2024104815,2024104815,2024104815 - DD 2024104815,2024104815,2024104815,2024104815 - DD 2227730452,2227730452,2227730452,2227730452 - DD 2227730452,2227730452,2227730452,2227730452 - DD 2361852424,2361852424,2361852424,2361852424 - DD 2361852424,2361852424,2361852424,2361852424 - DD 2428436474,2428436474,2428436474,2428436474 - DD 2428436474,2428436474,2428436474,2428436474 - DD 2756734187,2756734187,2756734187,2756734187 - DD 2756734187,2756734187,2756734187,2756734187 - DD 3204031479,3204031479,3204031479,3204031479 - DD 3204031479,3204031479,3204031479,3204031479 - DD 3329325298,3329325298,3329325298,3329325298 - DD 3329325298,3329325298,3329325298,3329325298 -$L$pbswap:: - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -K256_shaext:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h -DB 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111 -DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114 -DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71 -DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112 -DB 101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[272+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - - lea rsi,QWORD PTR[((-24-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -ALIGN 16 -avx2_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[544+r8] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea rsi,QWORD PTR[((-56-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - - jmp $L$in_prologue -avx2_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha256_multi_block - DD imagerel $L$SEH_end_sha256_multi_block - DD imagerel $L$SEH_info_sha256_multi_block - DD imagerel $L$SEH_begin_sha256_multi_block_shaext - DD imagerel $L$SEH_end_sha256_multi_block_shaext - DD imagerel $L$SEH_info_sha256_multi_block_shaext - DD imagerel $L$SEH_begin_sha256_multi_block_avx - DD imagerel $L$SEH_end_sha256_multi_block_avx - DD imagerel $L$SEH_info_sha256_multi_block_avx - DD imagerel $L$SEH_begin_sha256_multi_block_avx2 - DD imagerel $L$SEH_end_sha256_multi_block_avx2 - DD imagerel $L$SEH_info_sha256_multi_block_avx2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha256_multi_block:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body,imagerel $L$epilogue -$L$SEH_info_sha256_multi_block_shaext:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_shaext,imagerel $L$epilogue_shaext -$L$SEH_info_sha256_multi_block_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_avx,imagerel $L$epilogue_avx -$L$SEH_info_sha256_multi_block_avx2:: -DB 9,0,0,0 - DD imagerel avx2_handler - DD imagerel $L$body_avx2,imagerel $L$epilogue_avx2 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/sha/sha256-x86_64.asm b/deps/openssl/asm/x64-win32-masm/sha/sha256-x86_64.asm deleted file mode 100644 index d0892736b713ca..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/sha/sha256-x86_64.asm +++ /dev/null @@ -1,5640 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC sha256_block_data_order - -ALIGN 16 -sha256_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea r11,QWORD PTR[OPENSSL_ia32cap_P] - mov r9d,DWORD PTR[r11] - mov r10d,DWORD PTR[4+r11] - mov r11d,DWORD PTR[8+r11] - test r11d,536870912 - jnz _shaext_shortcut - and r11d,296 - cmp r11d,296 - je $L$avx2_shortcut - and r9d,1073741824 - and r10d,268435968 - or r10d,r9d - cmp r10d,1342177792 - je $L$avx_shortcut - test r10d,512 - jnz $L$ssse3_shortcut - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,16*4+4*8 - lea rdx,QWORD PTR[rdx*4+rsi] - and rsp,-64 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 -$L$prologue:: - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov edi,ebx - lea rbp,QWORD PTR[K256] - xor edi,ecx - mov r12d,DWORD PTR[rsi] - mov r13d,r8d - mov r14d,eax - bswap r12d - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r11d,r14d - mov r12d,DWORD PTR[4+rsi] - mov r13d,edx - mov r14d,r11d - bswap r12d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[4+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r10d,r14d - mov r12d,DWORD PTR[8+rsi] - mov r13d,ecx - mov r14d,r10d - bswap r12d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[8+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r9d,r14d - mov r12d,DWORD PTR[12+rsi] - mov r13d,ebx - mov r14d,r9d - bswap r12d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[12+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - add r8d,r14d - mov r12d,DWORD PTR[16+rsi] - mov r13d,eax - mov r14d,r8d - bswap r12d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[16+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - add edx,r14d - mov r12d,DWORD PTR[20+rsi] - mov r13d,r11d - mov r14d,edx - bswap r12d - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[20+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ecx,r14d - mov r12d,DWORD PTR[24+rsi] - mov r13d,r10d - mov r14d,ecx - bswap r12d - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[24+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ebx,r14d - mov r12d,DWORD PTR[28+rsi] - mov r13d,r9d - mov r14d,ebx - bswap r12d - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[28+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - add eax,r14d - mov r12d,DWORD PTR[32+rsi] - mov r13d,r8d - mov r14d,eax - bswap r12d - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[32+rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r11d,r14d - mov r12d,DWORD PTR[36+rsi] - mov r13d,edx - mov r14d,r11d - bswap r12d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[36+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r10d,r14d - mov r12d,DWORD PTR[40+rsi] - mov r13d,ecx - mov r14d,r10d - bswap r12d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[40+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r9d,r14d - mov r12d,DWORD PTR[44+rsi] - mov r13d,ebx - mov r14d,r9d - bswap r12d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[44+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - add r8d,r14d - mov r12d,DWORD PTR[48+rsi] - mov r13d,eax - mov r14d,r8d - bswap r12d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[48+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - add edx,r14d - mov r12d,DWORD PTR[52+rsi] - mov r13d,r11d - mov r14d,edx - bswap r12d - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[52+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ecx,r14d - mov r12d,DWORD PTR[56+rsi] - mov r13d,r10d - mov r14d,ecx - bswap r12d - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[56+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ebx,r14d - mov r12d,DWORD PTR[60+rsi] - mov r13d,r9d - mov r14d,ebx - bswap r12d - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[60+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - jmp $L$rounds_16_xx -ALIGN 16 -$L$rounds_16_xx:: - mov r13d,DWORD PTR[4+rsp] - mov r15d,DWORD PTR[56+rsp] - - mov r12d,r13d - ror r13d,11 - add eax,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[36+rsp] - - add r12d,DWORD PTR[rsp] - mov r13d,r8d - add r12d,r15d - mov r14d,eax - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[8+rsp] - mov edi,DWORD PTR[60+rsp] - - mov r12d,r13d - ror r13d,11 - add r11d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[40+rsp] - - add r12d,DWORD PTR[4+rsp] - mov r13d,edx - add r12d,edi - mov r14d,r11d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[4+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[12+rsp] - mov r15d,DWORD PTR[rsp] - - mov r12d,r13d - ror r13d,11 - add r10d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[44+rsp] - - add r12d,DWORD PTR[8+rsp] - mov r13d,ecx - add r12d,r15d - mov r14d,r10d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[8+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[16+rsp] - mov edi,DWORD PTR[4+rsp] - - mov r12d,r13d - ror r13d,11 - add r9d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[48+rsp] - - add r12d,DWORD PTR[12+rsp] - mov r13d,ebx - add r12d,edi - mov r14d,r9d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[12+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[20+rsp] - mov r15d,DWORD PTR[8+rsp] - - mov r12d,r13d - ror r13d,11 - add r8d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[52+rsp] - - add r12d,DWORD PTR[16+rsp] - mov r13d,eax - add r12d,r15d - mov r14d,r8d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[16+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[24+rsp] - mov edi,DWORD PTR[12+rsp] - - mov r12d,r13d - ror r13d,11 - add edx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[56+rsp] - - add r12d,DWORD PTR[20+rsp] - mov r13d,r11d - add r12d,edi - mov r14d,edx - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[20+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[28+rsp] - mov r15d,DWORD PTR[16+rsp] - - mov r12d,r13d - ror r13d,11 - add ecx,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[60+rsp] - - add r12d,DWORD PTR[24+rsp] - mov r13d,r10d - add r12d,r15d - mov r14d,ecx - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[24+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[32+rsp] - mov edi,DWORD PTR[20+rsp] - - mov r12d,r13d - ror r13d,11 - add ebx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[rsp] - - add r12d,DWORD PTR[28+rsp] - mov r13d,r9d - add r12d,edi - mov r14d,ebx - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[28+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[36+rsp] - mov r15d,DWORD PTR[24+rsp] - - mov r12d,r13d - ror r13d,11 - add eax,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[4+rsp] - - add r12d,DWORD PTR[32+rsp] - mov r13d,r8d - add r12d,r15d - mov r14d,eax - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[32+rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[40+rsp] - mov edi,DWORD PTR[28+rsp] - - mov r12d,r13d - ror r13d,11 - add r11d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[8+rsp] - - add r12d,DWORD PTR[36+rsp] - mov r13d,edx - add r12d,edi - mov r14d,r11d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[36+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[44+rsp] - mov r15d,DWORD PTR[32+rsp] - - mov r12d,r13d - ror r13d,11 - add r10d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[12+rsp] - - add r12d,DWORD PTR[40+rsp] - mov r13d,ecx - add r12d,r15d - mov r14d,r10d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[40+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[48+rsp] - mov edi,DWORD PTR[36+rsp] - - mov r12d,r13d - ror r13d,11 - add r9d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[16+rsp] - - add r12d,DWORD PTR[44+rsp] - mov r13d,ebx - add r12d,edi - mov r14d,r9d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[44+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[52+rsp] - mov r15d,DWORD PTR[40+rsp] - - mov r12d,r13d - ror r13d,11 - add r8d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[20+rsp] - - add r12d,DWORD PTR[48+rsp] - mov r13d,eax - add r12d,r15d - mov r14d,r8d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[48+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[56+rsp] - mov edi,DWORD PTR[44+rsp] - - mov r12d,r13d - ror r13d,11 - add edx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[24+rsp] - - add r12d,DWORD PTR[52+rsp] - mov r13d,r11d - add r12d,edi - mov r14d,edx - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[52+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[60+rsp] - mov r15d,DWORD PTR[48+rsp] - - mov r12d,r13d - ror r13d,11 - add ecx,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[28+rsp] - - add r12d,DWORD PTR[56+rsp] - mov r13d,r10d - add r12d,r15d - mov r14d,ecx - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[56+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[rsp] - mov edi,DWORD PTR[52+rsp] - - mov r12d,r13d - ror r13d,11 - add ebx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[32+rsp] - - add r12d,DWORD PTR[60+rsp] - mov r13d,r9d - add r12d,edi - mov r14d,ebx - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[60+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - cmp BYTE PTR[3+rbp],0 - jnz $L$rounds_16_xx - - mov rdi,QWORD PTR[((64+0))+rsp] - add eax,r14d - lea rsi,QWORD PTR[64+rsi] - - add eax,DWORD PTR[rdi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - jb $L$loop - - mov rsi,QWORD PTR[((64+24))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order:: -sha256_block_data_order ENDP -ALIGN 64 - -K256:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 003020100h,00b0a0908h,0ffffffffh,0ffffffffh - DD 003020100h,00b0a0908h,0ffffffffh,0ffffffffh - DD 0ffffffffh,0ffffffffh,003020100h,00b0a0908h - DD 0ffffffffh,0ffffffffh,003020100h,00b0a0908h -DB 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 - -ALIGN 64 -sha256_block_data_order_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[(-8-80)+rax],xmm6 - movaps XMMWORD PTR[(-8-64)+rax],xmm7 - movaps XMMWORD PTR[(-8-48)+rax],xmm8 - movaps XMMWORD PTR[(-8-32)+rax],xmm9 - movaps XMMWORD PTR[(-8-16)+rax],xmm10 -$L$prologue_shaext:: - lea rcx,QWORD PTR[((K256+128))] - movdqu xmm1,XMMWORD PTR[rdi] - movdqu xmm2,XMMWORD PTR[16+rdi] - movdqa xmm7,XMMWORD PTR[((512-128))+rcx] - - pshufd xmm0,xmm1,01bh - pshufd xmm1,xmm1,0b1h - pshufd xmm2,xmm2,01bh - movdqa xmm8,xmm7 -DB 102,15,58,15,202,8 - punpcklqdq xmm2,xmm0 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - movdqu xmm3,XMMWORD PTR[rsi] - movdqu xmm4,XMMWORD PTR[16+rsi] - movdqu xmm5,XMMWORD PTR[32+rsi] -DB 102,15,56,0,223 - movdqu xmm6,XMMWORD PTR[48+rsi] - - movdqa xmm0,XMMWORD PTR[((0-128))+rcx] - paddd xmm0,xmm3 -DB 102,15,56,0,231 - movdqa xmm10,xmm2 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - nop - movdqa xmm9,xmm1 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((32-128))+rcx] - paddd xmm0,xmm4 -DB 102,15,56,0,239 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - lea rsi,QWORD PTR[64+rsi] -DB 15,56,204,220 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((64-128))+rcx] - paddd xmm0,xmm5 -DB 102,15,56,0,247 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((96-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((128-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((160-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((192-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((224-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((256-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((288-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((320-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((352-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((384-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((416-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 -DB 15,56,203,202 - paddd xmm6,xmm7 - - movdqa xmm0,XMMWORD PTR[((448-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh -DB 15,56,205,245 - movdqa xmm7,xmm8 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((480-128))+rcx] - paddd xmm0,xmm6 - nop -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - dec rdx - nop -DB 15,56,203,202 - - paddd xmm2,xmm10 - paddd xmm1,xmm9 - jnz $L$oop_shaext - - pshufd xmm2,xmm2,0b1h - pshufd xmm7,xmm1,01bh - pshufd xmm1,xmm1,0b1h - punpckhqdq xmm1,xmm2 -DB 102,15,58,15,215,8 - - movdqu XMMWORD PTR[rdi],xmm1 - movdqu XMMWORD PTR[16+rdi],xmm2 - movaps xmm6,XMMWORD PTR[((-8-80))+rax] - movaps xmm7,XMMWORD PTR[((-8-64))+rax] - movaps xmm8,XMMWORD PTR[((-8-48))+rax] - movaps xmm9,XMMWORD PTR[((-8-32))+rax] - movaps xmm10,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_shaext:: -sha256_block_data_order_shaext ENDP - -ALIGN 64 -sha256_block_data_order_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$ssse3_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,160 - lea rdx,QWORD PTR[rdx*4+rsi] - and rsp,-64 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 - movaps XMMWORD PTR[(64+32)+rsp],xmm6 - movaps XMMWORD PTR[(64+48)+rsp],xmm7 - movaps XMMWORD PTR[(64+64)+rsp],xmm8 - movaps XMMWORD PTR[(64+80)+rsp],xmm9 -$L$prologue_ssse3:: - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - - - jmp $L$loop_ssse3 -ALIGN 16 -$L$loop_ssse3:: - movdqa xmm7,XMMWORD PTR[((K256+512))] - movdqu xmm0,XMMWORD PTR[rsi] - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] -DB 102,15,56,0,199 - movdqu xmm3,XMMWORD PTR[48+rsi] - lea rbp,QWORD PTR[K256] -DB 102,15,56,0,207 - movdqa xmm4,XMMWORD PTR[rbp] - movdqa xmm5,XMMWORD PTR[32+rbp] -DB 102,15,56,0,215 - paddd xmm4,xmm0 - movdqa xmm6,XMMWORD PTR[64+rbp] -DB 102,15,56,0,223 - movdqa xmm7,XMMWORD PTR[96+rbp] - paddd xmm5,xmm1 - paddd xmm6,xmm2 - paddd xmm7,xmm3 - movdqa XMMWORD PTR[rsp],xmm4 - mov r14d,eax - movdqa XMMWORD PTR[16+rsp],xmm5 - mov edi,ebx - movdqa XMMWORD PTR[32+rsp],xmm6 - xor edi,ecx - movdqa XMMWORD PTR[48+rsp],xmm7 - mov r13d,r8d - jmp $L$ssse3_00_47 - -ALIGN 16 -$L$ssse3_00_47:: - sub rbp,-128 - ror r13d,14 - movdqa xmm4,xmm1 - mov eax,r14d - mov r12d,r9d - movdqa xmm7,xmm3 - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax -DB 102,15,58,15,224,4 - and r12d,r8d - xor r13d,r8d -DB 102,15,58,15,250,4 - add r11d,DWORD PTR[rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,ebx - add r11d,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,eax - add r11d,r13d - xor edi,ebx - paddd xmm0,xmm7 - ror r14d,2 - add edx,r11d - psrld xmm6,7 - add r11d,edi - mov r13d,edx - pshufd xmm7,xmm3,250 - add r14d,r11d - ror r13d,14 - pslld xmm5,14 - mov r11d,r14d - mov r12d,r8d - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - psrld xmm6,11 - xor r14d,r11d - pxor xmm4,xmm5 - and r12d,edx - xor r13d,edx - pslld xmm5,11 - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - pxor xmm4,xmm6 - xor r12d,r9d - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,eax - add r10d,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,r11d - psrld xmm7,10 - add r10d,r13d - xor r15d,eax - paddd xmm0,xmm4 - ror r14d,2 - add ecx,r10d - psrlq xmm6,17 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - pxor xmm7,xmm6 - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - psrlq xmm6,2 - xor r13d,ecx - xor r12d,r8d - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - pshufd xmm7,xmm7,128 - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - psrldq xmm7,8 - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - paddd xmm0,xmm7 - and edi,r15d - xor r14d,r10d - add r9d,r13d - pshufd xmm7,xmm0,80 - xor edi,r11d - ror r14d,2 - add ebx,r9d - movdqa xmm6,xmm7 - add r9d,edi - mov r13d,ebx - psrld xmm7,10 - add r14d,r9d - ror r13d,14 - psrlq xmm6,17 - mov r9d,r14d - mov r12d,ecx - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - psrlq xmm6,2 - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - pxor xmm7,xmm6 - mov edi,r9d - xor r12d,edx - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,r10d - add r8d,r12d - movdqa xmm6,XMMWORD PTR[rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - paddd xmm0,xmm7 - ror r14d,2 - add eax,r8d - add r8d,r15d - paddd xmm6,xmm0 - mov r13d,eax - add r14d,r8d - movdqa XMMWORD PTR[rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm2 - mov r8d,r14d - mov r12d,ebx - movdqa xmm7,xmm0 - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d -DB 102,15,58,15,225,4 - and r12d,eax - xor r13d,eax -DB 102,15,58,15,251,4 - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,r9d - add edx,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,r8d - add edx,r13d - xor edi,r9d - paddd xmm1,xmm7 - ror r14d,2 - add r11d,edx - psrld xmm6,7 - add edx,edi - mov r13d,r11d - pshufd xmm7,xmm0,250 - add r14d,edx - ror r13d,14 - pslld xmm5,14 - mov edx,r14d - mov r12d,eax - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - psrld xmm6,11 - xor r14d,edx - pxor xmm4,xmm5 - and r12d,r11d - xor r13d,r11d - pslld xmm5,11 - add ecx,DWORD PTR[20+rsp] - mov edi,edx - pxor xmm4,xmm6 - xor r12d,ebx - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,r8d - add ecx,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,edx - psrld xmm7,10 - add ecx,r13d - xor r15d,r8d - paddd xmm1,xmm4 - ror r14d,2 - add r10d,ecx - psrlq xmm6,17 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - pxor xmm7,xmm6 - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - psrlq xmm6,2 - xor r13d,r10d - xor r12d,eax - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - pshufd xmm7,xmm7,128 - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - psrldq xmm7,8 - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - paddd xmm1,xmm7 - and edi,r15d - xor r14d,ecx - add ebx,r13d - pshufd xmm7,xmm1,80 - xor edi,edx - ror r14d,2 - add r9d,ebx - movdqa xmm6,xmm7 - add ebx,edi - mov r13d,r9d - psrld xmm7,10 - add r14d,ebx - ror r13d,14 - psrlq xmm6,17 - mov ebx,r14d - mov r12d,r10d - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - psrlq xmm6,2 - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - pxor xmm7,xmm6 - mov edi,ebx - xor r12d,r11d - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,ecx - add eax,r12d - movdqa xmm6,XMMWORD PTR[32+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,ebx - add eax,r13d - xor r15d,ecx - paddd xmm1,xmm7 - ror r14d,2 - add r8d,eax - add eax,r15d - paddd xmm6,xmm1 - mov r13d,r8d - add r14d,eax - movdqa XMMWORD PTR[16+rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm3 - mov eax,r14d - mov r12d,r9d - movdqa xmm7,xmm1 - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax -DB 102,15,58,15,226,4 - and r12d,r8d - xor r13d,r8d -DB 102,15,58,15,248,4 - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,ebx - add r11d,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,eax - add r11d,r13d - xor edi,ebx - paddd xmm2,xmm7 - ror r14d,2 - add edx,r11d - psrld xmm6,7 - add r11d,edi - mov r13d,edx - pshufd xmm7,xmm1,250 - add r14d,r11d - ror r13d,14 - pslld xmm5,14 - mov r11d,r14d - mov r12d,r8d - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - psrld xmm6,11 - xor r14d,r11d - pxor xmm4,xmm5 - and r12d,edx - xor r13d,edx - pslld xmm5,11 - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - pxor xmm4,xmm6 - xor r12d,r9d - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,eax - add r10d,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,r11d - psrld xmm7,10 - add r10d,r13d - xor r15d,eax - paddd xmm2,xmm4 - ror r14d,2 - add ecx,r10d - psrlq xmm6,17 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - pxor xmm7,xmm6 - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - psrlq xmm6,2 - xor r13d,ecx - xor r12d,r8d - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - pshufd xmm7,xmm7,128 - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - psrldq xmm7,8 - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - paddd xmm2,xmm7 - and edi,r15d - xor r14d,r10d - add r9d,r13d - pshufd xmm7,xmm2,80 - xor edi,r11d - ror r14d,2 - add ebx,r9d - movdqa xmm6,xmm7 - add r9d,edi - mov r13d,ebx - psrld xmm7,10 - add r14d,r9d - ror r13d,14 - psrlq xmm6,17 - mov r9d,r14d - mov r12d,ecx - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - psrlq xmm6,2 - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - pxor xmm7,xmm6 - mov edi,r9d - xor r12d,edx - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,r10d - add r8d,r12d - movdqa xmm6,XMMWORD PTR[64+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - paddd xmm2,xmm7 - ror r14d,2 - add eax,r8d - add r8d,r15d - paddd xmm6,xmm2 - mov r13d,eax - add r14d,r8d - movdqa XMMWORD PTR[32+rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm0 - mov r8d,r14d - mov r12d,ebx - movdqa xmm7,xmm2 - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d -DB 102,15,58,15,227,4 - and r12d,eax - xor r13d,eax -DB 102,15,58,15,249,4 - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,r9d - add edx,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,r8d - add edx,r13d - xor edi,r9d - paddd xmm3,xmm7 - ror r14d,2 - add r11d,edx - psrld xmm6,7 - add edx,edi - mov r13d,r11d - pshufd xmm7,xmm2,250 - add r14d,edx - ror r13d,14 - pslld xmm5,14 - mov edx,r14d - mov r12d,eax - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - psrld xmm6,11 - xor r14d,edx - pxor xmm4,xmm5 - and r12d,r11d - xor r13d,r11d - pslld xmm5,11 - add ecx,DWORD PTR[52+rsp] - mov edi,edx - pxor xmm4,xmm6 - xor r12d,ebx - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,r8d - add ecx,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,edx - psrld xmm7,10 - add ecx,r13d - xor r15d,r8d - paddd xmm3,xmm4 - ror r14d,2 - add r10d,ecx - psrlq xmm6,17 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - pxor xmm7,xmm6 - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - psrlq xmm6,2 - xor r13d,r10d - xor r12d,eax - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - pshufd xmm7,xmm7,128 - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - psrldq xmm7,8 - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - paddd xmm3,xmm7 - and edi,r15d - xor r14d,ecx - add ebx,r13d - pshufd xmm7,xmm3,80 - xor edi,edx - ror r14d,2 - add r9d,ebx - movdqa xmm6,xmm7 - add ebx,edi - mov r13d,r9d - psrld xmm7,10 - add r14d,ebx - ror r13d,14 - psrlq xmm6,17 - mov ebx,r14d - mov r12d,r10d - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - psrlq xmm6,2 - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - pxor xmm7,xmm6 - mov edi,ebx - xor r12d,r11d - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,ecx - add eax,r12d - movdqa xmm6,XMMWORD PTR[96+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,ebx - add eax,r13d - xor r15d,ecx - paddd xmm3,xmm7 - ror r14d,2 - add r8d,eax - add eax,r15d - paddd xmm6,xmm3 - mov r13d,r8d - add r14d,eax - movdqa XMMWORD PTR[48+rsp],xmm6 - cmp BYTE PTR[131+rbp],0 - jne $L$ssse3_00_47 - ror r13d,14 - mov eax,r14d - mov r12d,r9d - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - xor r15d,ebx - add r11d,r12d - ror r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - ror r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - xor r12d,r9d - ror r14d,11 - xor edi,eax - add r10d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - ror r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - xor r13d,ecx - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - ror r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov edi,r9d - xor r12d,edx - ror r14d,11 - xor edi,r10d - add r8d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - ror r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - xor r15d,r9d - add edx,r12d - ror r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - ror r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[20+rsp] - mov edi,edx - xor r12d,ebx - ror r14d,11 - xor edi,r8d - add ecx,r12d - ror r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - ror r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - xor r13d,r10d - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - ror r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov edi,ebx - xor r12d,r11d - ror r14d,11 - xor edi,ecx - add eax,r12d - ror r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - ror r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - ror r13d,14 - mov eax,r14d - mov r12d,r9d - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - xor r15d,ebx - add r11d,r12d - ror r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - ror r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - xor r12d,r9d - ror r14d,11 - xor edi,eax - add r10d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - ror r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - xor r13d,ecx - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - ror r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov edi,r9d - xor r12d,edx - ror r14d,11 - xor edi,r10d - add r8d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - ror r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - xor r15d,r9d - add edx,r12d - ror r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - ror r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[52+rsp] - mov edi,edx - xor r12d,ebx - ror r14d,11 - xor edi,r8d - add ecx,r12d - ror r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - ror r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - xor r13d,r10d - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - ror r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov edi,ebx - xor r12d,r11d - ror r14d,11 - xor edi,ecx - add eax,r12d - ror r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - ror r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - mov rdi,QWORD PTR[((64+0))+rsp] - mov eax,r14d - - add eax,DWORD PTR[rdi] - lea rsi,QWORD PTR[64+rsi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - jb $L$loop_ssse3 - - mov rsi,QWORD PTR[((64+24))+rsp] - movaps xmm6,XMMWORD PTR[((64+32))+rsp] - movaps xmm7,XMMWORD PTR[((64+48))+rsp] - movaps xmm8,XMMWORD PTR[((64+64))+rsp] - movaps xmm9,XMMWORD PTR[((64+80))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_ssse3:: -sha256_block_data_order_ssse3 ENDP - -ALIGN 64 -sha256_block_data_order_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$avx_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,160 - lea rdx,QWORD PTR[rdx*4+rsi] - and rsp,-64 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 - movaps XMMWORD PTR[(64+32)+rsp],xmm6 - movaps XMMWORD PTR[(64+48)+rsp],xmm7 - movaps XMMWORD PTR[(64+64)+rsp],xmm8 - movaps XMMWORD PTR[(64+80)+rsp],xmm9 -$L$prologue_avx:: - - vzeroupper - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - vmovdqa xmm8,XMMWORD PTR[((K256+512+32))] - vmovdqa xmm9,XMMWORD PTR[((K256+512+64))] - jmp $L$loop_avx -ALIGN 16 -$L$loop_avx:: - vmovdqa xmm7,XMMWORD PTR[((K256+512))] - vmovdqu xmm0,XMMWORD PTR[rsi] - vmovdqu xmm1,XMMWORD PTR[16+rsi] - vmovdqu xmm2,XMMWORD PTR[32+rsi] - vmovdqu xmm3,XMMWORD PTR[48+rsi] - vpshufb xmm0,xmm0,xmm7 - lea rbp,QWORD PTR[K256] - vpshufb xmm1,xmm1,xmm7 - vpshufb xmm2,xmm2,xmm7 - vpaddd xmm4,xmm0,XMMWORD PTR[rbp] - vpshufb xmm3,xmm3,xmm7 - vpaddd xmm5,xmm1,XMMWORD PTR[32+rbp] - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - vpaddd xmm7,xmm3,XMMWORD PTR[96+rbp] - vmovdqa XMMWORD PTR[rsp],xmm4 - mov r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm5 - mov edi,ebx - vmovdqa XMMWORD PTR[32+rsp],xmm6 - xor edi,ecx - vmovdqa XMMWORD PTR[48+rsp],xmm7 - mov r13d,r8d - jmp $L$avx_00_47 - -ALIGN 16 -$L$avx_00_47:: - sub rbp,-128 - vpalignr xmm4,xmm1,xmm0,4 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - vpalignr xmm7,xmm3,xmm2,4 - shrd r14d,r14d,9 - xor r13d,r8d - xor r12d,r10d - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vpaddd xmm0,xmm0,xmm7 - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - vpsrld xmm7,xmm4,3 - xor r12d,r10d - shrd r14d,r14d,11 - xor r15d,ebx - vpslld xmm5,xmm4,14 - add r11d,r12d - shrd r13d,r13d,6 - and edi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,eax - add r11d,r13d - xor edi,ebx - vpshufd xmm7,xmm3,250 - shrd r14d,r14d,2 - add edx,r11d - add r11d,edi - vpsrld xmm6,xmm6,11 - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov r11d,r14d - mov r12d,r8d - shrd r14d,r14d,9 - vpslld xmm5,xmm5,11 - xor r13d,edx - xor r12d,r9d - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,r11d - and r12d,edx - xor r13d,edx - vpsrld xmm6,xmm7,10 - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - xor r12d,r9d - vpxor xmm4,xmm4,xmm5 - shrd r14d,r14d,11 - xor edi,eax - add r10d,r12d - vpsrlq xmm7,xmm7,17 - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r11d - vpaddd xmm0,xmm0,xmm4 - add r10d,r13d - xor r15d,eax - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - vpsrlq xmm7,xmm7,2 - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,edx - shrd r14d,r14d,9 - xor r13d,ecx - vpshufb xmm6,xmm6,xmm8 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - vpaddd xmm0,xmm0,xmm6 - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - vpshufd xmm7,xmm0,80 - mov r15d,r10d - xor r12d,r8d - shrd r14d,r14d,11 - vpsrld xmm6,xmm7,10 - xor r15d,r11d - add r9d,r12d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - and edi,r15d - xor r14d,r10d - add r9d,r13d - vpxor xmm6,xmm6,xmm7 - xor edi,r11d - shrd r14d,r14d,2 - add ebx,r9d - vpsrlq xmm7,xmm7,2 - add r9d,edi - mov r13d,ebx - add r14d,r9d - vpxor xmm6,xmm6,xmm7 - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - vpshufb xmm6,xmm6,xmm9 - shrd r14d,r14d,9 - xor r13d,ebx - xor r12d,edx - vpaddd xmm0,xmm0,xmm6 - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vpaddd xmm6,xmm0,XMMWORD PTR[rbp] - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov edi,r9d - xor r12d,edx - shrd r14d,r14d,11 - xor edi,r10d - add r8d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - shrd r14d,r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[rsp],xmm6 - vpalignr xmm4,xmm2,xmm1,4 - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - vpalignr xmm7,xmm0,xmm3,4 - shrd r14d,r14d,9 - xor r13d,eax - xor r12d,ecx - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vpaddd xmm1,xmm1,xmm7 - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - vpsrld xmm7,xmm4,3 - xor r12d,ecx - shrd r14d,r14d,11 - xor r15d,r9d - vpslld xmm5,xmm4,14 - add edx,r12d - shrd r13d,r13d,6 - and edi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,r8d - add edx,r13d - xor edi,r9d - vpshufd xmm7,xmm0,250 - shrd r14d,r14d,2 - add r11d,edx - add edx,edi - vpsrld xmm6,xmm6,11 - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov edx,r14d - mov r12d,eax - shrd r14d,r14d,9 - vpslld xmm5,xmm5,11 - xor r13d,r11d - xor r12d,ebx - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - vpsrld xmm6,xmm7,10 - add ecx,DWORD PTR[20+rsp] - mov edi,edx - xor r12d,ebx - vpxor xmm4,xmm4,xmm5 - shrd r14d,r14d,11 - xor edi,r8d - add ecx,r12d - vpsrlq xmm7,xmm7,17 - shrd r13d,r13d,6 - and r15d,edi - xor r14d,edx - vpaddd xmm1,xmm1,xmm4 - add ecx,r13d - xor r15d,r8d - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - vpsrlq xmm7,xmm7,2 - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,r11d - shrd r14d,r14d,9 - xor r13d,r10d - vpshufb xmm6,xmm6,xmm8 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - vpaddd xmm1,xmm1,xmm6 - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - vpshufd xmm7,xmm1,80 - mov r15d,ecx - xor r12d,eax - shrd r14d,r14d,11 - vpsrld xmm6,xmm7,10 - xor r15d,edx - add ebx,r12d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - and edi,r15d - xor r14d,ecx - add ebx,r13d - vpxor xmm6,xmm6,xmm7 - xor edi,edx - shrd r14d,r14d,2 - add r9d,ebx - vpsrlq xmm7,xmm7,2 - add ebx,edi - mov r13d,r9d - add r14d,ebx - vpxor xmm6,xmm6,xmm7 - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - vpshufb xmm6,xmm6,xmm9 - shrd r14d,r14d,9 - xor r13d,r9d - xor r12d,r11d - vpaddd xmm1,xmm1,xmm6 - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vpaddd xmm6,xmm1,XMMWORD PTR[32+rbp] - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov edi,ebx - xor r12d,r11d - shrd r14d,r14d,11 - xor edi,ecx - add eax,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - shrd r14d,r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[16+rsp],xmm6 - vpalignr xmm4,xmm3,xmm2,4 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - vpalignr xmm7,xmm1,xmm0,4 - shrd r14d,r14d,9 - xor r13d,r8d - xor r12d,r10d - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - vpaddd xmm2,xmm2,xmm7 - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - vpsrld xmm7,xmm4,3 - xor r12d,r10d - shrd r14d,r14d,11 - xor r15d,ebx - vpslld xmm5,xmm4,14 - add r11d,r12d - shrd r13d,r13d,6 - and edi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,eax - add r11d,r13d - xor edi,ebx - vpshufd xmm7,xmm1,250 - shrd r14d,r14d,2 - add edx,r11d - add r11d,edi - vpsrld xmm6,xmm6,11 - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov r11d,r14d - mov r12d,r8d - shrd r14d,r14d,9 - vpslld xmm5,xmm5,11 - xor r13d,edx - xor r12d,r9d - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,r11d - and r12d,edx - xor r13d,edx - vpsrld xmm6,xmm7,10 - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - xor r12d,r9d - vpxor xmm4,xmm4,xmm5 - shrd r14d,r14d,11 - xor edi,eax - add r10d,r12d - vpsrlq xmm7,xmm7,17 - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r11d - vpaddd xmm2,xmm2,xmm4 - add r10d,r13d - xor r15d,eax - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - vpsrlq xmm7,xmm7,2 - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,edx - shrd r14d,r14d,9 - xor r13d,ecx - vpshufb xmm6,xmm6,xmm8 - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - vpaddd xmm2,xmm2,xmm6 - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - vpshufd xmm7,xmm2,80 - mov r15d,r10d - xor r12d,r8d - shrd r14d,r14d,11 - vpsrld xmm6,xmm7,10 - xor r15d,r11d - add r9d,r12d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - and edi,r15d - xor r14d,r10d - add r9d,r13d - vpxor xmm6,xmm6,xmm7 - xor edi,r11d - shrd r14d,r14d,2 - add ebx,r9d - vpsrlq xmm7,xmm7,2 - add r9d,edi - mov r13d,ebx - add r14d,r9d - vpxor xmm6,xmm6,xmm7 - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - vpshufb xmm6,xmm6,xmm9 - shrd r14d,r14d,9 - xor r13d,ebx - xor r12d,edx - vpaddd xmm2,xmm2,xmm6 - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - vpaddd xmm6,xmm2,XMMWORD PTR[64+rbp] - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov edi,r9d - xor r12d,edx - shrd r14d,r14d,11 - xor edi,r10d - add r8d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - shrd r14d,r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - vmovdqa XMMWORD PTR[32+rsp],xmm6 - vpalignr xmm4,xmm0,xmm3,4 - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - vpalignr xmm7,xmm2,xmm1,4 - shrd r14d,r14d,9 - xor r13d,eax - xor r12d,ecx - vpsrld xmm6,xmm4,7 - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - vpaddd xmm3,xmm3,xmm7 - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - vpsrld xmm7,xmm4,3 - xor r12d,ecx - shrd r14d,r14d,11 - xor r15d,r9d - vpslld xmm5,xmm4,14 - add edx,r12d - shrd r13d,r13d,6 - and edi,r15d - vpxor xmm4,xmm7,xmm6 - xor r14d,r8d - add edx,r13d - xor edi,r9d - vpshufd xmm7,xmm2,250 - shrd r14d,r14d,2 - add r11d,edx - add edx,edi - vpsrld xmm6,xmm6,11 - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - vpxor xmm4,xmm4,xmm5 - mov edx,r14d - mov r12d,eax - shrd r14d,r14d,9 - vpslld xmm5,xmm5,11 - xor r13d,r11d - xor r12d,ebx - shrd r13d,r13d,5 - vpxor xmm4,xmm4,xmm6 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - vpsrld xmm6,xmm7,10 - add ecx,DWORD PTR[52+rsp] - mov edi,edx - xor r12d,ebx - vpxor xmm4,xmm4,xmm5 - shrd r14d,r14d,11 - xor edi,r8d - add ecx,r12d - vpsrlq xmm7,xmm7,17 - shrd r13d,r13d,6 - and r15d,edi - xor r14d,edx - vpaddd xmm3,xmm3,xmm4 - add ecx,r13d - xor r15d,r8d - shrd r14d,r14d,2 - vpxor xmm6,xmm6,xmm7 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - vpsrlq xmm7,xmm7,2 - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - vpxor xmm6,xmm6,xmm7 - mov r12d,r11d - shrd r14d,r14d,9 - xor r13d,r10d - vpshufb xmm6,xmm6,xmm8 - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - vpaddd xmm3,xmm3,xmm6 - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - vpshufd xmm7,xmm3,80 - mov r15d,ecx - xor r12d,eax - shrd r14d,r14d,11 - vpsrld xmm6,xmm7,10 - xor r15d,edx - add ebx,r12d - shrd r13d,r13d,6 - vpsrlq xmm7,xmm7,17 - and edi,r15d - xor r14d,ecx - add ebx,r13d - vpxor xmm6,xmm6,xmm7 - xor edi,edx - shrd r14d,r14d,2 - add r9d,ebx - vpsrlq xmm7,xmm7,2 - add ebx,edi - mov r13d,r9d - add r14d,ebx - vpxor xmm6,xmm6,xmm7 - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - vpshufb xmm6,xmm6,xmm9 - shrd r14d,r14d,9 - xor r13d,r9d - xor r12d,r11d - vpaddd xmm3,xmm3,xmm6 - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - vpaddd xmm6,xmm3,XMMWORD PTR[96+rbp] - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov edi,ebx - xor r12d,r11d - shrd r14d,r14d,11 - xor edi,ecx - add eax,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - shrd r14d,r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - vmovdqa XMMWORD PTR[48+rsp],xmm6 - cmp BYTE PTR[131+rbp],0 - jne $L$avx_00_47 - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - shrd r14d,r14d,9 - xor r13d,r8d - xor r12d,r10d - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - xor r12d,r10d - shrd r14d,r14d,11 - xor r15d,ebx - add r11d,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - shrd r14d,r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - mov r11d,r14d - mov r12d,r8d - shrd r14d,r14d,9 - xor r13d,edx - xor r12d,r9d - shrd r13d,r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - xor r12d,r9d - shrd r14d,r14d,11 - xor edi,eax - add r10d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - shrd r14d,r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - mov r12d,edx - shrd r14d,r14d,9 - xor r13d,ecx - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - xor r12d,r8d - shrd r14d,r14d,11 - xor r15d,r11d - add r9d,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - shrd r14d,r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - shrd r14d,r14d,9 - xor r13d,ebx - xor r12d,edx - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov edi,r9d - xor r12d,edx - shrd r14d,r14d,11 - xor edi,r10d - add r8d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - shrd r14d,r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - shrd r14d,r14d,9 - xor r13d,eax - xor r12d,ecx - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - xor r12d,ecx - shrd r14d,r14d,11 - xor r15d,r9d - add edx,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - shrd r14d,r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - mov edx,r14d - mov r12d,eax - shrd r14d,r14d,9 - xor r13d,r11d - xor r12d,ebx - shrd r13d,r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[20+rsp] - mov edi,edx - xor r12d,ebx - shrd r14d,r14d,11 - xor edi,r8d - add ecx,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - shrd r14d,r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - mov r12d,r11d - shrd r14d,r14d,9 - xor r13d,r10d - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - xor r12d,eax - shrd r14d,r14d,11 - xor r15d,edx - add ebx,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - shrd r14d,r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - shrd r14d,r14d,9 - xor r13d,r9d - xor r12d,r11d - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov edi,ebx - xor r12d,r11d - shrd r14d,r14d,11 - xor edi,ecx - add eax,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - shrd r14d,r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - shrd r13d,r13d,14 - mov eax,r14d - mov r12d,r9d - shrd r14d,r14d,9 - xor r13d,r8d - xor r12d,r10d - shrd r13d,r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - xor r12d,r10d - shrd r14d,r14d,11 - xor r15d,ebx - add r11d,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - shrd r14d,r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - shrd r13d,r13d,14 - mov r11d,r14d - mov r12d,r8d - shrd r14d,r14d,9 - xor r13d,edx - xor r12d,r9d - shrd r13d,r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - xor r12d,r9d - shrd r14d,r14d,11 - xor edi,eax - add r10d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - shrd r14d,r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - shrd r13d,r13d,14 - mov r10d,r14d - mov r12d,edx - shrd r14d,r14d,9 - xor r13d,ecx - xor r12d,r8d - shrd r13d,r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - xor r12d,r8d - shrd r14d,r14d,11 - xor r15d,r11d - add r9d,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - shrd r14d,r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - shrd r13d,r13d,14 - mov r9d,r14d - mov r12d,ecx - shrd r14d,r14d,9 - xor r13d,ebx - xor r12d,edx - shrd r13d,r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov edi,r9d - xor r12d,edx - shrd r14d,r14d,11 - xor edi,r10d - add r8d,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - shrd r14d,r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - shrd r13d,r13d,14 - mov r8d,r14d - mov r12d,ebx - shrd r14d,r14d,9 - xor r13d,eax - xor r12d,ecx - shrd r13d,r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - xor r12d,ecx - shrd r14d,r14d,11 - xor r15d,r9d - add edx,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - shrd r14d,r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - shrd r13d,r13d,14 - mov edx,r14d - mov r12d,eax - shrd r14d,r14d,9 - xor r13d,r11d - xor r12d,ebx - shrd r13d,r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[52+rsp] - mov edi,edx - xor r12d,ebx - shrd r14d,r14d,11 - xor edi,r8d - add ecx,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - shrd r14d,r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - shrd r13d,r13d,14 - mov ecx,r14d - mov r12d,r11d - shrd r14d,r14d,9 - xor r13d,r10d - xor r12d,eax - shrd r13d,r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - xor r12d,eax - shrd r14d,r14d,11 - xor r15d,edx - add ebx,r12d - shrd r13d,r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - shrd r14d,r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - shrd r13d,r13d,14 - mov ebx,r14d - mov r12d,r10d - shrd r14d,r14d,9 - xor r13d,r9d - xor r12d,r11d - shrd r13d,r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov edi,ebx - xor r12d,r11d - shrd r14d,r14d,11 - xor edi,ecx - add eax,r12d - shrd r13d,r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - shrd r14d,r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - mov rdi,QWORD PTR[((64+0))+rsp] - mov eax,r14d - - add eax,DWORD PTR[rdi] - lea rsi,QWORD PTR[64+rsi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - jb $L$loop_avx - - mov rsi,QWORD PTR[((64+24))+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((64+32))+rsp] - movaps xmm7,XMMWORD PTR[((64+48))+rsp] - movaps xmm8,XMMWORD PTR[((64+64))+rsp] - movaps xmm9,XMMWORD PTR[((64+80))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_avx:: -sha256_block_data_order_avx ENDP - -ALIGN 64 -sha256_block_data_order_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$avx2_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - sub rsp,608 - shl rdx,4 - and rsp,-256*4 - lea rdx,QWORD PTR[rdx*4+rsi] - add rsp,448 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 - movaps XMMWORD PTR[(64+32)+rsp],xmm6 - movaps XMMWORD PTR[(64+48)+rsp],xmm7 - movaps XMMWORD PTR[(64+64)+rsp],xmm8 - movaps XMMWORD PTR[(64+80)+rsp],xmm9 -$L$prologue_avx2:: - - vzeroupper - sub rsi,-16*4 - mov eax,DWORD PTR[rdi] - mov r12,rsi - mov ebx,DWORD PTR[4+rdi] - cmp rsi,rdx - mov ecx,DWORD PTR[8+rdi] - cmove r12,rsp - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - vmovdqa ymm8,YMMWORD PTR[((K256+512+32))] - vmovdqa ymm9,YMMWORD PTR[((K256+512+64))] - jmp $L$oop_avx2 -ALIGN 16 -$L$oop_avx2:: - vmovdqa ymm7,YMMWORD PTR[((K256+512))] - vmovdqu xmm0,XMMWORD PTR[((-64+0))+rsi] - vmovdqu xmm1,XMMWORD PTR[((-64+16))+rsi] - vmovdqu xmm2,XMMWORD PTR[((-64+32))+rsi] - vmovdqu xmm3,XMMWORD PTR[((-64+48))+rsi] - - vinserti128 ymm0,ymm0,XMMWORD PTR[r12],1 - vinserti128 ymm1,ymm1,XMMWORD PTR[16+r12],1 - vpshufb ymm0,ymm0,ymm7 - vinserti128 ymm2,ymm2,XMMWORD PTR[32+r12],1 - vpshufb ymm1,ymm1,ymm7 - vinserti128 ymm3,ymm3,XMMWORD PTR[48+r12],1 - - lea rbp,QWORD PTR[K256] - vpshufb ymm2,ymm2,ymm7 - vpaddd ymm4,ymm0,YMMWORD PTR[rbp] - vpshufb ymm3,ymm3,ymm7 - vpaddd ymm5,ymm1,YMMWORD PTR[32+rbp] - vpaddd ymm6,ymm2,YMMWORD PTR[64+rbp] - vpaddd ymm7,ymm3,YMMWORD PTR[96+rbp] - vmovdqa YMMWORD PTR[rsp],ymm4 - xor r14d,r14d - vmovdqa YMMWORD PTR[32+rsp],ymm5 - lea rsp,QWORD PTR[((-64))+rsp] - mov edi,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - xor edi,ecx - vmovdqa YMMWORD PTR[32+rsp],ymm7 - mov r12d,r9d - sub rbp,-16*2*4 - jmp $L$avx2_00_47 - -ALIGN 16 -$L$avx2_00_47:: - lea rsp,QWORD PTR[((-64))+rsp] - vpalignr ymm4,ymm1,ymm0,4 - add r11d,DWORD PTR[((0+128))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - vpalignr ymm7,ymm3,ymm2,4 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - vpsrld ymm6,ymm4,7 - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - vpaddd ymm0,ymm0,ymm7 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - vpsrld ymm7,ymm4,3 - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - vpslld ymm5,ymm4,14 - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - vpxor ymm4,ymm7,ymm6 - and edi,r15d - xor r14d,r12d - xor edi,ebx - vpshufd ymm7,ymm3,250 - xor r14d,r13d - lea r11d,DWORD PTR[rdi*1+r11] - mov r12d,r8d - vpsrld ymm6,ymm6,11 - add r10d,DWORD PTR[((4+128))+rsp] - and r12d,edx - rorx r13d,edx,25 - vpxor ymm4,ymm4,ymm5 - rorx edi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - vpslld ymm5,ymm5,11 - andn r12d,edx,r9d - xor r13d,edi - rorx r14d,edx,6 - vpxor ymm4,ymm4,ymm6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov edi,r11d - vpsrld ymm6,ymm7,10 - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor edi,eax - vpxor ymm4,ymm4,ymm5 - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - vpsrlq ymm7,ymm7,17 - and r15d,edi - xor r14d,r12d - xor r15d,eax - vpaddd ymm0,ymm0,ymm4 - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - vpxor ymm6,ymm6,ymm7 - add r9d,DWORD PTR[((8+128))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - vpxor ymm6,ymm6,ymm7 - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - vpshufb ymm6,ymm6,ymm8 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - vpaddd ymm0,ymm0,ymm6 - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - vpshufd ymm7,ymm0,80 - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - vpsrld ymm6,ymm7,10 - and edi,r15d - xor r14d,r12d - xor edi,r11d - vpsrlq ymm7,ymm7,17 - xor r14d,r13d - lea r9d,DWORD PTR[rdi*1+r9] - mov r12d,ecx - vpxor ymm6,ymm6,ymm7 - add r8d,DWORD PTR[((12+128))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - vpsrlq ymm7,ymm7,2 - rorx edi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - vpxor ymm6,ymm6,ymm7 - andn r12d,ebx,edx - xor r13d,edi - rorx r14d,ebx,6 - vpshufb ymm6,ymm6,ymm9 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov edi,r9d - vpaddd ymm0,ymm0,ymm6 - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor edi,r10d - vpaddd ymm6,ymm0,YMMWORD PTR[rbp] - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,edi - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - vpalignr ymm4,ymm2,ymm1,4 - add edx,DWORD PTR[((32+128))+rsp] - and r12d,eax - rorx r13d,eax,25 - vpalignr ymm7,ymm0,ymm3,4 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - vpsrld ymm6,ymm4,7 - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - vpaddd ymm1,ymm1,ymm7 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - vpsrld ymm7,ymm4,3 - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - vpslld ymm5,ymm4,14 - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - vpxor ymm4,ymm7,ymm6 - and edi,r15d - xor r14d,r12d - xor edi,r9d - vpshufd ymm7,ymm0,250 - xor r14d,r13d - lea edx,DWORD PTR[rdi*1+rdx] - mov r12d,eax - vpsrld ymm6,ymm6,11 - add ecx,DWORD PTR[((36+128))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - vpxor ymm4,ymm4,ymm5 - rorx edi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - vpslld ymm5,ymm5,11 - andn r12d,r11d,ebx - xor r13d,edi - rorx r14d,r11d,6 - vpxor ymm4,ymm4,ymm6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov edi,edx - vpsrld ymm6,ymm7,10 - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor edi,r8d - vpxor ymm4,ymm4,ymm5 - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - vpsrlq ymm7,ymm7,17 - and r15d,edi - xor r14d,r12d - xor r15d,r8d - vpaddd ymm1,ymm1,ymm4 - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - vpxor ymm6,ymm6,ymm7 - add ebx,DWORD PTR[((40+128))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - vpxor ymm6,ymm6,ymm7 - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - vpshufb ymm6,ymm6,ymm8 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - vpaddd ymm1,ymm1,ymm6 - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - vpshufd ymm7,ymm1,80 - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - vpsrld ymm6,ymm7,10 - and edi,r15d - xor r14d,r12d - xor edi,edx - vpsrlq ymm7,ymm7,17 - xor r14d,r13d - lea ebx,DWORD PTR[rdi*1+rbx] - mov r12d,r10d - vpxor ymm6,ymm6,ymm7 - add eax,DWORD PTR[((44+128))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - vpsrlq ymm7,ymm7,2 - rorx edi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - vpxor ymm6,ymm6,ymm7 - andn r12d,r9d,r11d - xor r13d,edi - rorx r14d,r9d,6 - vpshufb ymm6,ymm6,ymm9 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov edi,ebx - vpaddd ymm1,ymm1,ymm6 - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor edi,ecx - vpaddd ymm6,ymm1,YMMWORD PTR[32+rbp] - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,edi - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vmovdqa YMMWORD PTR[32+rsp],ymm6 - lea rsp,QWORD PTR[((-64))+rsp] - vpalignr ymm4,ymm3,ymm2,4 - add r11d,DWORD PTR[((0+128))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - vpalignr ymm7,ymm1,ymm0,4 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - vpsrld ymm6,ymm4,7 - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - vpaddd ymm2,ymm2,ymm7 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - vpsrld ymm7,ymm4,3 - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - vpslld ymm5,ymm4,14 - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - vpxor ymm4,ymm7,ymm6 - and edi,r15d - xor r14d,r12d - xor edi,ebx - vpshufd ymm7,ymm1,250 - xor r14d,r13d - lea r11d,DWORD PTR[rdi*1+r11] - mov r12d,r8d - vpsrld ymm6,ymm6,11 - add r10d,DWORD PTR[((4+128))+rsp] - and r12d,edx - rorx r13d,edx,25 - vpxor ymm4,ymm4,ymm5 - rorx edi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - vpslld ymm5,ymm5,11 - andn r12d,edx,r9d - xor r13d,edi - rorx r14d,edx,6 - vpxor ymm4,ymm4,ymm6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov edi,r11d - vpsrld ymm6,ymm7,10 - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor edi,eax - vpxor ymm4,ymm4,ymm5 - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - vpsrlq ymm7,ymm7,17 - and r15d,edi - xor r14d,r12d - xor r15d,eax - vpaddd ymm2,ymm2,ymm4 - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - vpxor ymm6,ymm6,ymm7 - add r9d,DWORD PTR[((8+128))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - vpxor ymm6,ymm6,ymm7 - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - vpshufb ymm6,ymm6,ymm8 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - vpaddd ymm2,ymm2,ymm6 - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - vpshufd ymm7,ymm2,80 - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - vpsrld ymm6,ymm7,10 - and edi,r15d - xor r14d,r12d - xor edi,r11d - vpsrlq ymm7,ymm7,17 - xor r14d,r13d - lea r9d,DWORD PTR[rdi*1+r9] - mov r12d,ecx - vpxor ymm6,ymm6,ymm7 - add r8d,DWORD PTR[((12+128))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - vpsrlq ymm7,ymm7,2 - rorx edi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - vpxor ymm6,ymm6,ymm7 - andn r12d,ebx,edx - xor r13d,edi - rorx r14d,ebx,6 - vpshufb ymm6,ymm6,ymm9 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov edi,r9d - vpaddd ymm2,ymm2,ymm6 - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor edi,r10d - vpaddd ymm6,ymm2,YMMWORD PTR[64+rbp] - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,edi - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - vmovdqa YMMWORD PTR[rsp],ymm6 - vpalignr ymm4,ymm0,ymm3,4 - add edx,DWORD PTR[((32+128))+rsp] - and r12d,eax - rorx r13d,eax,25 - vpalignr ymm7,ymm2,ymm1,4 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - vpsrld ymm6,ymm4,7 - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - vpaddd ymm3,ymm3,ymm7 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - vpsrld ymm7,ymm4,3 - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - vpslld ymm5,ymm4,14 - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - vpxor ymm4,ymm7,ymm6 - and edi,r15d - xor r14d,r12d - xor edi,r9d - vpshufd ymm7,ymm2,250 - xor r14d,r13d - lea edx,DWORD PTR[rdi*1+rdx] - mov r12d,eax - vpsrld ymm6,ymm6,11 - add ecx,DWORD PTR[((36+128))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - vpxor ymm4,ymm4,ymm5 - rorx edi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - vpslld ymm5,ymm5,11 - andn r12d,r11d,ebx - xor r13d,edi - rorx r14d,r11d,6 - vpxor ymm4,ymm4,ymm6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov edi,edx - vpsrld ymm6,ymm7,10 - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor edi,r8d - vpxor ymm4,ymm4,ymm5 - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - vpsrlq ymm7,ymm7,17 - and r15d,edi - xor r14d,r12d - xor r15d,r8d - vpaddd ymm3,ymm3,ymm4 - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - vpxor ymm6,ymm6,ymm7 - add ebx,DWORD PTR[((40+128))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - vpsrlq ymm7,ymm7,2 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - vpxor ymm6,ymm6,ymm7 - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - vpshufb ymm6,ymm6,ymm8 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - vpaddd ymm3,ymm3,ymm6 - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - vpshufd ymm7,ymm3,80 - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - vpsrld ymm6,ymm7,10 - and edi,r15d - xor r14d,r12d - xor edi,edx - vpsrlq ymm7,ymm7,17 - xor r14d,r13d - lea ebx,DWORD PTR[rdi*1+rbx] - mov r12d,r10d - vpxor ymm6,ymm6,ymm7 - add eax,DWORD PTR[((44+128))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - vpsrlq ymm7,ymm7,2 - rorx edi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - vpxor ymm6,ymm6,ymm7 - andn r12d,r9d,r11d - xor r13d,edi - rorx r14d,r9d,6 - vpshufb ymm6,ymm6,ymm9 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov edi,ebx - vpaddd ymm3,ymm3,ymm6 - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor edi,ecx - vpaddd ymm6,ymm3,YMMWORD PTR[96+rbp] - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,edi - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - vmovdqa YMMWORD PTR[32+rsp],ymm6 - lea rbp,QWORD PTR[128+rbp] - cmp BYTE PTR[3+rbp],0 - jne $L$avx2_00_47 - add r11d,DWORD PTR[((0+64))+rsp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and edi,r15d - xor r14d,r12d - xor edi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rdi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[((4+64))+rsp] - and r12d,edx - rorx r13d,edx,25 - rorx edi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,edi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov edi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor edi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,edi - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[((8+64))+rsp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and edi,r15d - xor r14d,r12d - xor edi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rdi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[((12+64))+rsp] - and r12d,ebx - rorx r13d,ebx,25 - rorx edi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,edi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov edi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor edi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,edi - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[((32+64))+rsp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and edi,r15d - xor r14d,r12d - xor edi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rdi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[((36+64))+rsp] - and r12d,r11d - rorx r13d,r11d,25 - rorx edi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,edi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov edi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor edi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,edi - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[((40+64))+rsp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and edi,r15d - xor r14d,r12d - xor edi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rdi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[((44+64))+rsp] - and r12d,r9d - rorx r13d,r9d,25 - rorx edi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,edi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov edi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor edi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,edi - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - add r11d,DWORD PTR[rsp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and edi,r15d - xor r14d,r12d - xor edi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rdi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[4+rsp] - and r12d,edx - rorx r13d,edx,25 - rorx edi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,edi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov edi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor edi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,edi - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[8+rsp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and edi,r15d - xor r14d,r12d - xor edi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rdi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[12+rsp] - and r12d,ebx - rorx r13d,ebx,25 - rorx edi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,edi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov edi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor edi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,edi - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[32+rsp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and edi,r15d - xor r14d,r12d - xor edi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rdi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[36+rsp] - and r12d,r11d - rorx r13d,r11d,25 - rorx edi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,edi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov edi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor edi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,edi - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[40+rsp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and edi,r15d - xor r14d,r12d - xor edi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rdi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[44+rsp] - and r12d,r9d - rorx r13d,r9d,25 - rorx edi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,edi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov edi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor edi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,edi - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - mov rdi,QWORD PTR[512+rsp] - add eax,r14d - - lea rbp,QWORD PTR[448+rsp] - - add eax,DWORD PTR[rdi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - - cmp rsi,QWORD PTR[80+rbp] - je $L$done_avx2 - - xor r14d,r14d - mov edi,ebx - xor edi,ecx - mov r12d,r9d - jmp $L$ower_avx2 -ALIGN 16 -$L$ower_avx2:: - add r11d,DWORD PTR[((0+16))+rbp] - and r12d,r8d - rorx r13d,r8d,25 - rorx r15d,r8d,11 - lea eax,DWORD PTR[r14*1+rax] - lea r11d,DWORD PTR[r12*1+r11] - andn r12d,r8d,r10d - xor r13d,r15d - rorx r14d,r8d,6 - lea r11d,DWORD PTR[r12*1+r11] - xor r13d,r14d - mov r15d,eax - rorx r12d,eax,22 - lea r11d,DWORD PTR[r13*1+r11] - xor r15d,ebx - rorx r14d,eax,13 - rorx r13d,eax,2 - lea edx,DWORD PTR[r11*1+rdx] - and edi,r15d - xor r14d,r12d - xor edi,ebx - xor r14d,r13d - lea r11d,DWORD PTR[rdi*1+r11] - mov r12d,r8d - add r10d,DWORD PTR[((4+16))+rbp] - and r12d,edx - rorx r13d,edx,25 - rorx edi,edx,11 - lea r11d,DWORD PTR[r14*1+r11] - lea r10d,DWORD PTR[r12*1+r10] - andn r12d,edx,r9d - xor r13d,edi - rorx r14d,edx,6 - lea r10d,DWORD PTR[r12*1+r10] - xor r13d,r14d - mov edi,r11d - rorx r12d,r11d,22 - lea r10d,DWORD PTR[r13*1+r10] - xor edi,eax - rorx r14d,r11d,13 - rorx r13d,r11d,2 - lea ecx,DWORD PTR[r10*1+rcx] - and r15d,edi - xor r14d,r12d - xor r15d,eax - xor r14d,r13d - lea r10d,DWORD PTR[r15*1+r10] - mov r12d,edx - add r9d,DWORD PTR[((8+16))+rbp] - and r12d,ecx - rorx r13d,ecx,25 - rorx r15d,ecx,11 - lea r10d,DWORD PTR[r14*1+r10] - lea r9d,DWORD PTR[r12*1+r9] - andn r12d,ecx,r8d - xor r13d,r15d - rorx r14d,ecx,6 - lea r9d,DWORD PTR[r12*1+r9] - xor r13d,r14d - mov r15d,r10d - rorx r12d,r10d,22 - lea r9d,DWORD PTR[r13*1+r9] - xor r15d,r11d - rorx r14d,r10d,13 - rorx r13d,r10d,2 - lea ebx,DWORD PTR[r9*1+rbx] - and edi,r15d - xor r14d,r12d - xor edi,r11d - xor r14d,r13d - lea r9d,DWORD PTR[rdi*1+r9] - mov r12d,ecx - add r8d,DWORD PTR[((12+16))+rbp] - and r12d,ebx - rorx r13d,ebx,25 - rorx edi,ebx,11 - lea r9d,DWORD PTR[r14*1+r9] - lea r8d,DWORD PTR[r12*1+r8] - andn r12d,ebx,edx - xor r13d,edi - rorx r14d,ebx,6 - lea r8d,DWORD PTR[r12*1+r8] - xor r13d,r14d - mov edi,r9d - rorx r12d,r9d,22 - lea r8d,DWORD PTR[r13*1+r8] - xor edi,r10d - rorx r14d,r9d,13 - rorx r13d,r9d,2 - lea eax,DWORD PTR[r8*1+rax] - and r15d,edi - xor r14d,r12d - xor r15d,r10d - xor r14d,r13d - lea r8d,DWORD PTR[r15*1+r8] - mov r12d,ebx - add edx,DWORD PTR[((32+16))+rbp] - and r12d,eax - rorx r13d,eax,25 - rorx r15d,eax,11 - lea r8d,DWORD PTR[r14*1+r8] - lea edx,DWORD PTR[r12*1+rdx] - andn r12d,eax,ecx - xor r13d,r15d - rorx r14d,eax,6 - lea edx,DWORD PTR[r12*1+rdx] - xor r13d,r14d - mov r15d,r8d - rorx r12d,r8d,22 - lea edx,DWORD PTR[r13*1+rdx] - xor r15d,r9d - rorx r14d,r8d,13 - rorx r13d,r8d,2 - lea r11d,DWORD PTR[rdx*1+r11] - and edi,r15d - xor r14d,r12d - xor edi,r9d - xor r14d,r13d - lea edx,DWORD PTR[rdi*1+rdx] - mov r12d,eax - add ecx,DWORD PTR[((36+16))+rbp] - and r12d,r11d - rorx r13d,r11d,25 - rorx edi,r11d,11 - lea edx,DWORD PTR[r14*1+rdx] - lea ecx,DWORD PTR[r12*1+rcx] - andn r12d,r11d,ebx - xor r13d,edi - rorx r14d,r11d,6 - lea ecx,DWORD PTR[r12*1+rcx] - xor r13d,r14d - mov edi,edx - rorx r12d,edx,22 - lea ecx,DWORD PTR[r13*1+rcx] - xor edi,r8d - rorx r14d,edx,13 - rorx r13d,edx,2 - lea r10d,DWORD PTR[rcx*1+r10] - and r15d,edi - xor r14d,r12d - xor r15d,r8d - xor r14d,r13d - lea ecx,DWORD PTR[r15*1+rcx] - mov r12d,r11d - add ebx,DWORD PTR[((40+16))+rbp] - and r12d,r10d - rorx r13d,r10d,25 - rorx r15d,r10d,11 - lea ecx,DWORD PTR[r14*1+rcx] - lea ebx,DWORD PTR[r12*1+rbx] - andn r12d,r10d,eax - xor r13d,r15d - rorx r14d,r10d,6 - lea ebx,DWORD PTR[r12*1+rbx] - xor r13d,r14d - mov r15d,ecx - rorx r12d,ecx,22 - lea ebx,DWORD PTR[r13*1+rbx] - xor r15d,edx - rorx r14d,ecx,13 - rorx r13d,ecx,2 - lea r9d,DWORD PTR[rbx*1+r9] - and edi,r15d - xor r14d,r12d - xor edi,edx - xor r14d,r13d - lea ebx,DWORD PTR[rdi*1+rbx] - mov r12d,r10d - add eax,DWORD PTR[((44+16))+rbp] - and r12d,r9d - rorx r13d,r9d,25 - rorx edi,r9d,11 - lea ebx,DWORD PTR[r14*1+rbx] - lea eax,DWORD PTR[r12*1+rax] - andn r12d,r9d,r11d - xor r13d,edi - rorx r14d,r9d,6 - lea eax,DWORD PTR[r12*1+rax] - xor r13d,r14d - mov edi,ebx - rorx r12d,ebx,22 - lea eax,DWORD PTR[r13*1+rax] - xor edi,ecx - rorx r14d,ebx,13 - rorx r13d,ebx,2 - lea r8d,DWORD PTR[rax*1+r8] - and r15d,edi - xor r14d,r12d - xor r15d,ecx - xor r14d,r13d - lea eax,DWORD PTR[r15*1+rax] - mov r12d,r9d - lea rbp,QWORD PTR[((-64))+rbp] - cmp rbp,rsp - jae $L$ower_avx2 - - mov rdi,QWORD PTR[512+rsp] - add eax,r14d - - lea rsp,QWORD PTR[448+rsp] - - add eax,DWORD PTR[rdi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - lea rsi,QWORD PTR[128+rsi] - add r10d,DWORD PTR[24+rdi] - mov r12,rsi - add r11d,DWORD PTR[28+rdi] - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - cmove r12,rsp - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - - jbe $L$oop_avx2 - lea rbp,QWORD PTR[rsp] - -$L$done_avx2:: - lea rsp,QWORD PTR[rbp] - mov rsi,QWORD PTR[((64+24))+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((64+32))+rsp] - movaps xmm7,XMMWORD PTR[((64+48))+rsp] - movaps xmm8,XMMWORD PTR[((64+64))+rsp] - movaps xmm9,XMMWORD PTR[((64+80))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_avx2:: -sha256_block_data_order_avx2 ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - lea r10,QWORD PTR[$L$avx2_shortcut] - cmp rbx,r10 - jb $L$not_in_avx2 - - and rax,-256*4 - add rax,448 -$L$not_in_avx2:: - mov rsi,rax - mov rax,QWORD PTR[((64+24))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jb $L$in_prologue - - lea rsi,QWORD PTR[((64+32))+rsi] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -ALIGN 16 -shaext_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue_shaext] - cmp rbx,r10 - jb $L$in_prologue - - lea r10,QWORD PTR[$L$epilogue_shaext] - cmp rbx,r10 - jae $L$in_prologue - - lea rsi,QWORD PTR[((-8-80))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,10 - DD 0a548f3fch - - jmp $L$in_prologue -shaext_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha256_block_data_order - DD imagerel $L$SEH_end_sha256_block_data_order - DD imagerel $L$SEH_info_sha256_block_data_order - DD imagerel $L$SEH_begin_sha256_block_data_order_shaext - DD imagerel $L$SEH_end_sha256_block_data_order_shaext - DD imagerel $L$SEH_info_sha256_block_data_order_shaext - DD imagerel $L$SEH_begin_sha256_block_data_order_ssse3 - DD imagerel $L$SEH_end_sha256_block_data_order_ssse3 - DD imagerel $L$SEH_info_sha256_block_data_order_ssse3 - DD imagerel $L$SEH_begin_sha256_block_data_order_avx - DD imagerel $L$SEH_end_sha256_block_data_order_avx - DD imagerel $L$SEH_info_sha256_block_data_order_avx - DD imagerel $L$SEH_begin_sha256_block_data_order_avx2 - DD imagerel $L$SEH_end_sha256_block_data_order_avx2 - DD imagerel $L$SEH_info_sha256_block_data_order_avx2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha256_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue,imagerel $L$epilogue -$L$SEH_info_sha256_block_data_order_shaext:: -DB 9,0,0,0 - DD imagerel shaext_handler -$L$SEH_info_sha256_block_data_order_ssse3:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 -$L$SEH_info_sha256_block_data_order_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx,imagerel $L$epilogue_avx -$L$SEH_info_sha256_block_data_order_avx2:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx2,imagerel $L$epilogue_avx2 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/sha/sha512-x86_64.asm b/deps/openssl/asm/x64-win32-masm/sha/sha512-x86_64.asm deleted file mode 100644 index a3d68c675a73bf..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/sha/sha512-x86_64.asm +++ /dev/null @@ -1,5595 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC sha512_block_data_order - -ALIGN 16 -sha512_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha512_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea r11,QWORD PTR[OPENSSL_ia32cap_P] - mov r9d,DWORD PTR[r11] - mov r10d,DWORD PTR[4+r11] - mov r11d,DWORD PTR[8+r11] - test r10d,2048 - jnz $L$xop_shortcut - and r11d,296 - cmp r11d,296 - je $L$avx2_shortcut - and r9d,1073741824 - and r10d,268435968 - or r10d,r9d - cmp r10d,1342177792 - je $L$avx_shortcut - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,16*8+4*8 - lea rdx,QWORD PTR[rdx*8+rsi] - and rsp,-64 - mov QWORD PTR[((128+0))+rsp],rdi - mov QWORD PTR[((128+8))+rsp],rsi - mov QWORD PTR[((128+16))+rsp],rdx - mov QWORD PTR[((128+24))+rsp],r11 -$L$prologue:: - - mov rax,QWORD PTR[rdi] - mov rbx,QWORD PTR[8+rdi] - mov rcx,QWORD PTR[16+rdi] - mov rdx,QWORD PTR[24+rdi] - mov r8,QWORD PTR[32+rdi] - mov r9,QWORD PTR[40+rdi] - mov r10,QWORD PTR[48+rdi] - mov r11,QWORD PTR[56+rdi] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov rdi,rbx - lea rbp,QWORD PTR[K512] - xor rdi,rcx - mov r12,QWORD PTR[rsi] - mov r13,r8 - mov r14,rax - bswap r12 - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - add r11,r14 - mov r12,QWORD PTR[8+rsi] - mov r13,rdx - mov r14,r11 - bswap r12 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[8+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - add r10,r14 - mov r12,QWORD PTR[16+rsi] - mov r13,rcx - mov r14,r10 - bswap r12 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[16+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - add r9,r14 - mov r12,QWORD PTR[24+rsi] - mov r13,rbx - mov r14,r9 - bswap r12 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[24+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - add r8,r14 - mov r12,QWORD PTR[32+rsi] - mov r13,rax - mov r14,r8 - bswap r12 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[32+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rdx,r14 - mov r12,QWORD PTR[40+rsi] - mov r13,r11 - mov r14,rdx - bswap r12 - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[40+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - add rcx,r14 - mov r12,QWORD PTR[48+rsi] - mov r13,r10 - mov r14,rcx - bswap r12 - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[48+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rbx,r14 - mov r12,QWORD PTR[56+rsi] - mov r13,r9 - mov r14,rbx - bswap r12 - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[56+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - add rax,r14 - mov r12,QWORD PTR[64+rsi] - mov r13,r8 - mov r14,rax - bswap r12 - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[64+rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - add r11,r14 - mov r12,QWORD PTR[72+rsi] - mov r13,rdx - mov r14,r11 - bswap r12 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[72+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - add r10,r14 - mov r12,QWORD PTR[80+rsi] - mov r13,rcx - mov r14,r10 - bswap r12 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[80+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - add r9,r14 - mov r12,QWORD PTR[88+rsi] - mov r13,rbx - mov r14,r9 - bswap r12 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[88+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - add r8,r14 - mov r12,QWORD PTR[96+rsi] - mov r13,rax - mov r14,r8 - bswap r12 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[96+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rdx,r14 - mov r12,QWORD PTR[104+rsi] - mov r13,r11 - mov r14,rdx - bswap r12 - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[104+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - add rcx,r14 - mov r12,QWORD PTR[112+rsi] - mov r13,r10 - mov r14,rcx - bswap r12 - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[112+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rbx,r14 - mov r12,QWORD PTR[120+rsi] - mov r13,r9 - mov r14,rbx - bswap r12 - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[120+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - jmp $L$rounds_16_xx -ALIGN 16 -$L$rounds_16_xx:: - mov r13,QWORD PTR[8+rsp] - mov r15,QWORD PTR[112+rsp] - - mov r12,r13 - ror r13,7 - add rax,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[72+rsp] - - add r12,QWORD PTR[rsp] - mov r13,r8 - add r12,r15 - mov r14,rax - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[16+rsp] - mov rdi,QWORD PTR[120+rsp] - - mov r12,r13 - ror r13,7 - add r11,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[80+rsp] - - add r12,QWORD PTR[8+rsp] - mov r13,rdx - add r12,rdi - mov r14,r11 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[8+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[24+rsp] - mov r15,QWORD PTR[rsp] - - mov r12,r13 - ror r13,7 - add r10,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[88+rsp] - - add r12,QWORD PTR[16+rsp] - mov r13,rcx - add r12,r15 - mov r14,r10 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[16+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[32+rsp] - mov rdi,QWORD PTR[8+rsp] - - mov r12,r13 - ror r13,7 - add r9,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[96+rsp] - - add r12,QWORD PTR[24+rsp] - mov r13,rbx - add r12,rdi - mov r14,r9 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[24+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[40+rsp] - mov r15,QWORD PTR[16+rsp] - - mov r12,r13 - ror r13,7 - add r8,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[104+rsp] - - add r12,QWORD PTR[32+rsp] - mov r13,rax - add r12,r15 - mov r14,r8 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[32+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[48+rsp] - mov rdi,QWORD PTR[24+rsp] - - mov r12,r13 - ror r13,7 - add rdx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[112+rsp] - - add r12,QWORD PTR[40+rsp] - mov r13,r11 - add r12,rdi - mov r14,rdx - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[40+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[56+rsp] - mov r15,QWORD PTR[32+rsp] - - mov r12,r13 - ror r13,7 - add rcx,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[120+rsp] - - add r12,QWORD PTR[48+rsp] - mov r13,r10 - add r12,r15 - mov r14,rcx - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[48+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[64+rsp] - mov rdi,QWORD PTR[40+rsp] - - mov r12,r13 - ror r13,7 - add rbx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[rsp] - - add r12,QWORD PTR[56+rsp] - mov r13,r9 - add r12,rdi - mov r14,rbx - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[56+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[72+rsp] - mov r15,QWORD PTR[48+rsp] - - mov r12,r13 - ror r13,7 - add rax,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[8+rsp] - - add r12,QWORD PTR[64+rsp] - mov r13,r8 - add r12,r15 - mov r14,rax - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[64+rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[80+rsp] - mov rdi,QWORD PTR[56+rsp] - - mov r12,r13 - ror r13,7 - add r11,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[16+rsp] - - add r12,QWORD PTR[72+rsp] - mov r13,rdx - add r12,rdi - mov r14,r11 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[72+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[88+rsp] - mov r15,QWORD PTR[64+rsp] - - mov r12,r13 - ror r13,7 - add r10,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[24+rsp] - - add r12,QWORD PTR[80+rsp] - mov r13,rcx - add r12,r15 - mov r14,r10 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[80+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[96+rsp] - mov rdi,QWORD PTR[72+rsp] - - mov r12,r13 - ror r13,7 - add r9,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[32+rsp] - - add r12,QWORD PTR[88+rsp] - mov r13,rbx - add r12,rdi - mov r14,r9 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[88+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[104+rsp] - mov r15,QWORD PTR[80+rsp] - - mov r12,r13 - ror r13,7 - add r8,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[40+rsp] - - add r12,QWORD PTR[96+rsp] - mov r13,rax - add r12,r15 - mov r14,r8 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[96+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[112+rsp] - mov rdi,QWORD PTR[88+rsp] - - mov r12,r13 - ror r13,7 - add rdx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[48+rsp] - - add r12,QWORD PTR[104+rsp] - mov r13,r11 - add r12,rdi - mov r14,rdx - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[104+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[120+rsp] - mov r15,QWORD PTR[96+rsp] - - mov r12,r13 - ror r13,7 - add rcx,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[56+rsp] - - add r12,QWORD PTR[112+rsp] - mov r13,r10 - add r12,r15 - mov r14,rcx - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[112+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[rsp] - mov rdi,QWORD PTR[104+rsp] - - mov r12,r13 - ror r13,7 - add rbx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[64+rsp] - - add r12,QWORD PTR[120+rsp] - mov r13,r9 - add r12,rdi - mov r14,rbx - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[120+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - cmp BYTE PTR[7+rbp],0 - jnz $L$rounds_16_xx - - mov rdi,QWORD PTR[((128+0))+rsp] - add rax,r14 - lea rsi,QWORD PTR[128+rsi] - - add rax,QWORD PTR[rdi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - add r10,QWORD PTR[48+rdi] - add r11,QWORD PTR[56+rdi] - - cmp rsi,QWORD PTR[((128+16))+rsp] - - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - jb $L$loop - - mov rsi,QWORD PTR[((128+24))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha512_block_data_order:: -sha512_block_data_order ENDP -ALIGN 64 - -K512:: - DQ 0428a2f98d728ae22h,07137449123ef65cdh - DQ 0428a2f98d728ae22h,07137449123ef65cdh - DQ 0b5c0fbcfec4d3b2fh,0e9b5dba58189dbbch - DQ 0b5c0fbcfec4d3b2fh,0e9b5dba58189dbbch - DQ 03956c25bf348b538h,059f111f1b605d019h - DQ 03956c25bf348b538h,059f111f1b605d019h - DQ 0923f82a4af194f9bh,0ab1c5ed5da6d8118h - DQ 0923f82a4af194f9bh,0ab1c5ed5da6d8118h - DQ 0d807aa98a3030242h,012835b0145706fbeh - DQ 0d807aa98a3030242h,012835b0145706fbeh - DQ 0243185be4ee4b28ch,0550c7dc3d5ffb4e2h - DQ 0243185be4ee4b28ch,0550c7dc3d5ffb4e2h - DQ 072be5d74f27b896fh,080deb1fe3b1696b1h - DQ 072be5d74f27b896fh,080deb1fe3b1696b1h - DQ 09bdc06a725c71235h,0c19bf174cf692694h - DQ 09bdc06a725c71235h,0c19bf174cf692694h - DQ 0e49b69c19ef14ad2h,0efbe4786384f25e3h - DQ 0e49b69c19ef14ad2h,0efbe4786384f25e3h - DQ 00fc19dc68b8cd5b5h,0240ca1cc77ac9c65h - DQ 00fc19dc68b8cd5b5h,0240ca1cc77ac9c65h - DQ 02de92c6f592b0275h,04a7484aa6ea6e483h - DQ 02de92c6f592b0275h,04a7484aa6ea6e483h - DQ 05cb0a9dcbd41fbd4h,076f988da831153b5h - DQ 05cb0a9dcbd41fbd4h,076f988da831153b5h - DQ 0983e5152ee66dfabh,0a831c66d2db43210h - DQ 0983e5152ee66dfabh,0a831c66d2db43210h - DQ 0b00327c898fb213fh,0bf597fc7beef0ee4h - DQ 0b00327c898fb213fh,0bf597fc7beef0ee4h - DQ 0c6e00bf33da88fc2h,0d5a79147930aa725h - DQ 0c6e00bf33da88fc2h,0d5a79147930aa725h - DQ 006ca6351e003826fh,0142929670a0e6e70h - DQ 006ca6351e003826fh,0142929670a0e6e70h - DQ 027b70a8546d22ffch,02e1b21385c26c926h - DQ 027b70a8546d22ffch,02e1b21385c26c926h - DQ 04d2c6dfc5ac42aedh,053380d139d95b3dfh - DQ 04d2c6dfc5ac42aedh,053380d139d95b3dfh - DQ 0650a73548baf63deh,0766a0abb3c77b2a8h - DQ 0650a73548baf63deh,0766a0abb3c77b2a8h - DQ 081c2c92e47edaee6h,092722c851482353bh - DQ 081c2c92e47edaee6h,092722c851482353bh - DQ 0a2bfe8a14cf10364h,0a81a664bbc423001h - DQ 0a2bfe8a14cf10364h,0a81a664bbc423001h - DQ 0c24b8b70d0f89791h,0c76c51a30654be30h - DQ 0c24b8b70d0f89791h,0c76c51a30654be30h - DQ 0d192e819d6ef5218h,0d69906245565a910h - DQ 0d192e819d6ef5218h,0d69906245565a910h - DQ 0f40e35855771202ah,0106aa07032bbd1b8h - DQ 0f40e35855771202ah,0106aa07032bbd1b8h - DQ 019a4c116b8d2d0c8h,01e376c085141ab53h - DQ 019a4c116b8d2d0c8h,01e376c085141ab53h - DQ 02748774cdf8eeb99h,034b0bcb5e19b48a8h - DQ 02748774cdf8eeb99h,034b0bcb5e19b48a8h - DQ 0391c0cb3c5c95a63h,04ed8aa4ae3418acbh - DQ 0391c0cb3c5c95a63h,04ed8aa4ae3418acbh - DQ 05b9cca4f7763e373h,0682e6ff3d6b2b8a3h - DQ 05b9cca4f7763e373h,0682e6ff3d6b2b8a3h - DQ 0748f82ee5defb2fch,078a5636f43172f60h - DQ 0748f82ee5defb2fch,078a5636f43172f60h - DQ 084c87814a1f0ab72h,08cc702081a6439ech - DQ 084c87814a1f0ab72h,08cc702081a6439ech - DQ 090befffa23631e28h,0a4506cebde82bde9h - DQ 090befffa23631e28h,0a4506cebde82bde9h - DQ 0bef9a3f7b2c67915h,0c67178f2e372532bh - DQ 0bef9a3f7b2c67915h,0c67178f2e372532bh - DQ 0ca273eceea26619ch,0d186b8c721c0c207h - DQ 0ca273eceea26619ch,0d186b8c721c0c207h - DQ 0eada7dd6cde0eb1eh,0f57d4f7fee6ed178h - DQ 0eada7dd6cde0eb1eh,0f57d4f7fee6ed178h - DQ 006f067aa72176fbah,00a637dc5a2c898a6h - DQ 006f067aa72176fbah,00a637dc5a2c898a6h - DQ 0113f9804bef90daeh,01b710b35131c471bh - DQ 0113f9804bef90daeh,01b710b35131c471bh - DQ 028db77f523047d84h,032caab7b40c72493h - DQ 028db77f523047d84h,032caab7b40c72493h - DQ 03c9ebe0a15c9bebch,0431d67c49c100d4ch - DQ 03c9ebe0a15c9bebch,0431d67c49c100d4ch - DQ 04cc5d4becb3e42b6h,0597f299cfc657e2ah - DQ 04cc5d4becb3e42b6h,0597f299cfc657e2ah - DQ 05fcb6fab3ad6faech,06c44198c4a475817h - DQ 05fcb6fab3ad6faech,06c44198c4a475817h - - DQ 00001020304050607h,008090a0b0c0d0e0fh - DQ 00001020304050607h,008090a0b0c0d0e0fh -DB 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 - -ALIGN 64 -sha512_block_data_order_xop PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha512_block_data_order_xop:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$xop_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,256 - lea rdx,QWORD PTR[rdx*8+rsi] - and rsp,-64 - mov QWORD PTR[((128+0))+rsp],rdi - mov QWORD PTR[((128+8))+rsp],rsi - mov QWORD PTR[((128+16))+rsp],rdx - mov QWORD PTR[((128+24))+rsp],r11 - movaps XMMWORD PTR[(128+32)+rsp],xmm6 - movaps XMMWORD PTR[(128+48)+rsp],xmm7 - movaps XMMWORD PTR[(128+64)+rsp],xmm8 - movaps XMMWORD PTR[(128+80)+rsp],xmm9 - movaps XMMWORD PTR[(128+96)+rsp],xmm10 - movaps XMMWORD PTR[(128+112)+rsp],xmm11 -$L$prologue_xop:: - - vzeroupper - mov rax,QWORD PTR[rdi] - mov rbx,QWORD PTR[8+rdi] - mov rcx,QWORD PTR[16+rdi] - mov rdx,QWORD PTR[24+rdi] - mov r8,QWORD PTR[32+rdi] - mov r9,QWORD PTR[40+rdi] - mov r10,QWORD PTR[48+rdi] - mov r11,QWORD PTR[56+rdi] - jmp $L$loop_xop -ALIGN 16 -$L$loop_xop:: - vmovdqa xmm11,XMMWORD PTR[((K512+1280))] - vmovdqu xmm0,XMMWORD PTR[rsi] - lea rbp,QWORD PTR[((K512+128))] - vmovdqu xmm1,XMMWORD PTR[16+rsi] - vmovdqu xmm2,XMMWORD PTR[32+rsi] - vpshufb xmm0,xmm0,xmm11 - vmovdqu xmm3,XMMWORD PTR[48+rsi] - vpshufb xmm1,xmm1,xmm11 - vmovdqu xmm4,XMMWORD PTR[64+rsi] - vpshufb xmm2,xmm2,xmm11 - vmovdqu xmm5,XMMWORD PTR[80+rsi] - vpshufb xmm3,xmm3,xmm11 - vmovdqu xmm6,XMMWORD PTR[96+rsi] - vpshufb xmm4,xmm4,xmm11 - vmovdqu xmm7,XMMWORD PTR[112+rsi] - vpshufb xmm5,xmm5,xmm11 - vpaddq xmm8,xmm0,XMMWORD PTR[((-128))+rbp] - vpshufb xmm6,xmm6,xmm11 - vpaddq xmm9,xmm1,XMMWORD PTR[((-96))+rbp] - vpshufb xmm7,xmm7,xmm11 - vpaddq xmm10,xmm2,XMMWORD PTR[((-64))+rbp] - vpaddq xmm11,xmm3,XMMWORD PTR[((-32))+rbp] - vmovdqa XMMWORD PTR[rsp],xmm8 - vpaddq xmm8,xmm4,XMMWORD PTR[rbp] - vmovdqa XMMWORD PTR[16+rsp],xmm9 - vpaddq xmm9,xmm5,XMMWORD PTR[32+rbp] - vmovdqa XMMWORD PTR[32+rsp],xmm10 - vpaddq xmm10,xmm6,XMMWORD PTR[64+rbp] - vmovdqa XMMWORD PTR[48+rsp],xmm11 - vpaddq xmm11,xmm7,XMMWORD PTR[96+rbp] - vmovdqa XMMWORD PTR[64+rsp],xmm8 - mov r14,rax - vmovdqa XMMWORD PTR[80+rsp],xmm9 - mov rdi,rbx - vmovdqa XMMWORD PTR[96+rsp],xmm10 - xor rdi,rcx - vmovdqa XMMWORD PTR[112+rsp],xmm11 - mov r13,r8 - jmp $L$xop_00_47 - -ALIGN 16 -$L$xop_00_47:: - add rbp,256 - vpalignr xmm8,xmm1,xmm0,8 - ror r13,23 - mov rax,r14 - vpalignr xmm11,xmm5,xmm4,8 - mov r12,r9 - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,r8 - xor r12,r10 - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,rax - vpaddq xmm0,xmm0,xmm11 - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[rsp] - mov r15,rax -DB 143,72,120,195,209,7 - xor r12,r10 - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,rbx - add r11,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,223,3 - xor r14,rax - add r11,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rbx - ror r14,28 - vpsrlq xmm10,xmm7,6 - add rdx,r11 - add r11,rdi - vpaddq xmm0,xmm0,xmm8 - mov r13,rdx - add r14,r11 -DB 143,72,120,195,203,42 - ror r13,23 - mov r11,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,r8 - ror r14,5 - xor r13,rdx - xor r12,r9 - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - vpaddq xmm0,xmm0,xmm11 - add r10,QWORD PTR[8+rsp] - mov rdi,r11 - xor r12,r9 - ror r14,6 - vpaddq xmm10,xmm0,XMMWORD PTR[((-128))+rbp] - xor rdi,rax - add r10,r12 - ror r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - ror r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - vmovdqa XMMWORD PTR[rsp],xmm10 - vpalignr xmm8,xmm2,xmm1,8 - ror r13,23 - mov r10,r14 - vpalignr xmm11,xmm6,xmm5,8 - mov r12,rdx - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,rcx - xor r12,r8 - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,r10 - vpaddq xmm1,xmm1,xmm11 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[16+rsp] - mov r15,r10 -DB 143,72,120,195,209,7 - xor r12,r8 - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,r11 - add r9,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,216,3 - xor r14,r10 - add r9,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r11 - ror r14,28 - vpsrlq xmm10,xmm0,6 - add rbx,r9 - add r9,rdi - vpaddq xmm1,xmm1,xmm8 - mov r13,rbx - add r14,r9 -DB 143,72,120,195,203,42 - ror r13,23 - mov r9,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,rcx - ror r14,5 - xor r13,rbx - xor r12,rdx - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - vpaddq xmm1,xmm1,xmm11 - add r8,QWORD PTR[24+rsp] - mov rdi,r9 - xor r12,rdx - ror r14,6 - vpaddq xmm10,xmm1,XMMWORD PTR[((-96))+rbp] - xor rdi,r10 - add r8,r12 - ror r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - ror r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - vmovdqa XMMWORD PTR[16+rsp],xmm10 - vpalignr xmm8,xmm3,xmm2,8 - ror r13,23 - mov r8,r14 - vpalignr xmm11,xmm7,xmm6,8 - mov r12,rbx - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,rax - xor r12,rcx - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,r8 - vpaddq xmm2,xmm2,xmm11 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[32+rsp] - mov r15,r8 -DB 143,72,120,195,209,7 - xor r12,rcx - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,r9 - add rdx,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,217,3 - xor r14,r8 - add rdx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r9 - ror r14,28 - vpsrlq xmm10,xmm1,6 - add r11,rdx - add rdx,rdi - vpaddq xmm2,xmm2,xmm8 - mov r13,r11 - add r14,rdx -DB 143,72,120,195,203,42 - ror r13,23 - mov rdx,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,rax - ror r14,5 - xor r13,r11 - xor r12,rbx - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - vpaddq xmm2,xmm2,xmm11 - add rcx,QWORD PTR[40+rsp] - mov rdi,rdx - xor r12,rbx - ror r14,6 - vpaddq xmm10,xmm2,XMMWORD PTR[((-64))+rbp] - xor rdi,r8 - add rcx,r12 - ror r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - ror r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - vmovdqa XMMWORD PTR[32+rsp],xmm10 - vpalignr xmm8,xmm4,xmm3,8 - ror r13,23 - mov rcx,r14 - vpalignr xmm11,xmm0,xmm7,8 - mov r12,r11 - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,r10 - xor r12,rax - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,rcx - vpaddq xmm3,xmm3,xmm11 - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[48+rsp] - mov r15,rcx -DB 143,72,120,195,209,7 - xor r12,rax - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,rdx - add rbx,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,218,3 - xor r14,rcx - add rbx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rdx - ror r14,28 - vpsrlq xmm10,xmm2,6 - add r9,rbx - add rbx,rdi - vpaddq xmm3,xmm3,xmm8 - mov r13,r9 - add r14,rbx -DB 143,72,120,195,203,42 - ror r13,23 - mov rbx,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,r10 - ror r14,5 - xor r13,r9 - xor r12,r11 - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - vpaddq xmm3,xmm3,xmm11 - add rax,QWORD PTR[56+rsp] - mov rdi,rbx - xor r12,r11 - ror r14,6 - vpaddq xmm10,xmm3,XMMWORD PTR[((-32))+rbp] - xor rdi,rcx - add rax,r12 - ror r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - ror r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - vmovdqa XMMWORD PTR[48+rsp],xmm10 - vpalignr xmm8,xmm5,xmm4,8 - ror r13,23 - mov rax,r14 - vpalignr xmm11,xmm1,xmm0,8 - mov r12,r9 - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,r8 - xor r12,r10 - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,rax - vpaddq xmm4,xmm4,xmm11 - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[64+rsp] - mov r15,rax -DB 143,72,120,195,209,7 - xor r12,r10 - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,rbx - add r11,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,219,3 - xor r14,rax - add r11,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rbx - ror r14,28 - vpsrlq xmm10,xmm3,6 - add rdx,r11 - add r11,rdi - vpaddq xmm4,xmm4,xmm8 - mov r13,rdx - add r14,r11 -DB 143,72,120,195,203,42 - ror r13,23 - mov r11,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,r8 - ror r14,5 - xor r13,rdx - xor r12,r9 - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - vpaddq xmm4,xmm4,xmm11 - add r10,QWORD PTR[72+rsp] - mov rdi,r11 - xor r12,r9 - ror r14,6 - vpaddq xmm10,xmm4,XMMWORD PTR[rbp] - xor rdi,rax - add r10,r12 - ror r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - ror r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - vmovdqa XMMWORD PTR[64+rsp],xmm10 - vpalignr xmm8,xmm6,xmm5,8 - ror r13,23 - mov r10,r14 - vpalignr xmm11,xmm2,xmm1,8 - mov r12,rdx - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,rcx - xor r12,r8 - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,r10 - vpaddq xmm5,xmm5,xmm11 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[80+rsp] - mov r15,r10 -DB 143,72,120,195,209,7 - xor r12,r8 - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,r11 - add r9,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,220,3 - xor r14,r10 - add r9,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r11 - ror r14,28 - vpsrlq xmm10,xmm4,6 - add rbx,r9 - add r9,rdi - vpaddq xmm5,xmm5,xmm8 - mov r13,rbx - add r14,r9 -DB 143,72,120,195,203,42 - ror r13,23 - mov r9,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,rcx - ror r14,5 - xor r13,rbx - xor r12,rdx - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - vpaddq xmm5,xmm5,xmm11 - add r8,QWORD PTR[88+rsp] - mov rdi,r9 - xor r12,rdx - ror r14,6 - vpaddq xmm10,xmm5,XMMWORD PTR[32+rbp] - xor rdi,r10 - add r8,r12 - ror r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - ror r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - vmovdqa XMMWORD PTR[80+rsp],xmm10 - vpalignr xmm8,xmm7,xmm6,8 - ror r13,23 - mov r8,r14 - vpalignr xmm11,xmm3,xmm2,8 - mov r12,rbx - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,rax - xor r12,rcx - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,r8 - vpaddq xmm6,xmm6,xmm11 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[96+rsp] - mov r15,r8 -DB 143,72,120,195,209,7 - xor r12,rcx - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,r9 - add rdx,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,221,3 - xor r14,r8 - add rdx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r9 - ror r14,28 - vpsrlq xmm10,xmm5,6 - add r11,rdx - add rdx,rdi - vpaddq xmm6,xmm6,xmm8 - mov r13,r11 - add r14,rdx -DB 143,72,120,195,203,42 - ror r13,23 - mov rdx,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,rax - ror r14,5 - xor r13,r11 - xor r12,rbx - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - vpaddq xmm6,xmm6,xmm11 - add rcx,QWORD PTR[104+rsp] - mov rdi,rdx - xor r12,rbx - ror r14,6 - vpaddq xmm10,xmm6,XMMWORD PTR[64+rbp] - xor rdi,r8 - add rcx,r12 - ror r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - ror r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - vmovdqa XMMWORD PTR[96+rsp],xmm10 - vpalignr xmm8,xmm0,xmm7,8 - ror r13,23 - mov rcx,r14 - vpalignr xmm11,xmm4,xmm3,8 - mov r12,r11 - ror r14,5 -DB 143,72,120,195,200,56 - xor r13,r10 - xor r12,rax - vpsrlq xmm8,xmm8,7 - ror r13,4 - xor r14,rcx - vpaddq xmm7,xmm7,xmm11 - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[112+rsp] - mov r15,rcx -DB 143,72,120,195,209,7 - xor r12,rax - ror r14,6 - vpxor xmm8,xmm8,xmm9 - xor r15,rdx - add rbx,r12 - ror r13,14 - and rdi,r15 -DB 143,104,120,195,222,3 - xor r14,rcx - add rbx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rdx - ror r14,28 - vpsrlq xmm10,xmm6,6 - add r9,rbx - add rbx,rdi - vpaddq xmm7,xmm7,xmm8 - mov r13,r9 - add r14,rbx -DB 143,72,120,195,203,42 - ror r13,23 - mov rbx,r14 - vpxor xmm11,xmm11,xmm10 - mov r12,r10 - ror r14,5 - xor r13,r9 - xor r12,r11 - vpxor xmm11,xmm11,xmm9 - ror r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - vpaddq xmm7,xmm7,xmm11 - add rax,QWORD PTR[120+rsp] - mov rdi,rbx - xor r12,r11 - ror r14,6 - vpaddq xmm10,xmm7,XMMWORD PTR[96+rbp] - xor rdi,rcx - add rax,r12 - ror r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - ror r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - vmovdqa XMMWORD PTR[112+rsp],xmm10 - cmp BYTE PTR[135+rbp],0 - jne $L$xop_00_47 - ror r13,23 - mov rax,r14 - mov r12,r9 - ror r14,5 - xor r13,r8 - xor r12,r10 - ror r13,4 - xor r14,rax - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[rsp] - mov r15,rax - xor r12,r10 - ror r14,6 - xor r15,rbx - add r11,r12 - ror r13,14 - and rdi,r15 - xor r14,rax - add r11,r13 - xor rdi,rbx - ror r14,28 - add rdx,r11 - add r11,rdi - mov r13,rdx - add r14,r11 - ror r13,23 - mov r11,r14 - mov r12,r8 - ror r14,5 - xor r13,rdx - xor r12,r9 - ror r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - add r10,QWORD PTR[8+rsp] - mov rdi,r11 - xor r12,r9 - ror r14,6 - xor rdi,rax - add r10,r12 - ror r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - ror r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - ror r13,23 - mov r10,r14 - mov r12,rdx - ror r14,5 - xor r13,rcx - xor r12,r8 - ror r13,4 - xor r14,r10 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[16+rsp] - mov r15,r10 - xor r12,r8 - ror r14,6 - xor r15,r11 - add r9,r12 - ror r13,14 - and rdi,r15 - xor r14,r10 - add r9,r13 - xor rdi,r11 - ror r14,28 - add rbx,r9 - add r9,rdi - mov r13,rbx - add r14,r9 - ror r13,23 - mov r9,r14 - mov r12,rcx - ror r14,5 - xor r13,rbx - xor r12,rdx - ror r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - add r8,QWORD PTR[24+rsp] - mov rdi,r9 - xor r12,rdx - ror r14,6 - xor rdi,r10 - add r8,r12 - ror r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - ror r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - ror r13,23 - mov r8,r14 - mov r12,rbx - ror r14,5 - xor r13,rax - xor r12,rcx - ror r13,4 - xor r14,r8 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[32+rsp] - mov r15,r8 - xor r12,rcx - ror r14,6 - xor r15,r9 - add rdx,r12 - ror r13,14 - and rdi,r15 - xor r14,r8 - add rdx,r13 - xor rdi,r9 - ror r14,28 - add r11,rdx - add rdx,rdi - mov r13,r11 - add r14,rdx - ror r13,23 - mov rdx,r14 - mov r12,rax - ror r14,5 - xor r13,r11 - xor r12,rbx - ror r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - add rcx,QWORD PTR[40+rsp] - mov rdi,rdx - xor r12,rbx - ror r14,6 - xor rdi,r8 - add rcx,r12 - ror r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - ror r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - ror r13,23 - mov rcx,r14 - mov r12,r11 - ror r14,5 - xor r13,r10 - xor r12,rax - ror r13,4 - xor r14,rcx - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[48+rsp] - mov r15,rcx - xor r12,rax - ror r14,6 - xor r15,rdx - add rbx,r12 - ror r13,14 - and rdi,r15 - xor r14,rcx - add rbx,r13 - xor rdi,rdx - ror r14,28 - add r9,rbx - add rbx,rdi - mov r13,r9 - add r14,rbx - ror r13,23 - mov rbx,r14 - mov r12,r10 - ror r14,5 - xor r13,r9 - xor r12,r11 - ror r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - add rax,QWORD PTR[56+rsp] - mov rdi,rbx - xor r12,r11 - ror r14,6 - xor rdi,rcx - add rax,r12 - ror r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - ror r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - ror r13,23 - mov rax,r14 - mov r12,r9 - ror r14,5 - xor r13,r8 - xor r12,r10 - ror r13,4 - xor r14,rax - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[64+rsp] - mov r15,rax - xor r12,r10 - ror r14,6 - xor r15,rbx - add r11,r12 - ror r13,14 - and rdi,r15 - xor r14,rax - add r11,r13 - xor rdi,rbx - ror r14,28 - add rdx,r11 - add r11,rdi - mov r13,rdx - add r14,r11 - ror r13,23 - mov r11,r14 - mov r12,r8 - ror r14,5 - xor r13,rdx - xor r12,r9 - ror r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - add r10,QWORD PTR[72+rsp] - mov rdi,r11 - xor r12,r9 - ror r14,6 - xor rdi,rax - add r10,r12 - ror r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - ror r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - ror r13,23 - mov r10,r14 - mov r12,rdx - ror r14,5 - xor r13,rcx - xor r12,r8 - ror r13,4 - xor r14,r10 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[80+rsp] - mov r15,r10 - xor r12,r8 - ror r14,6 - xor r15,r11 - add r9,r12 - ror r13,14 - and rdi,r15 - xor r14,r10 - add r9,r13 - xor rdi,r11 - ror r14,28 - add rbx,r9 - add r9,rdi - mov r13,rbx - add r14,r9 - ror r13,23 - mov r9,r14 - mov r12,rcx - ror r14,5 - xor r13,rbx - xor r12,rdx - ror r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - add r8,QWORD PTR[88+rsp] - mov rdi,r9 - xor r12,rdx - ror r14,6 - xor rdi,r10 - add r8,r12 - ror r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - ror r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - ror r13,23 - mov r8,r14 - mov r12,rbx - ror r14,5 - xor r13,rax - xor r12,rcx - ror r13,4 - xor r14,r8 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[96+rsp] - mov r15,r8 - xor r12,rcx - ror r14,6 - xor r15,r9 - add rdx,r12 - ror r13,14 - and rdi,r15 - xor r14,r8 - add rdx,r13 - xor rdi,r9 - ror r14,28 - add r11,rdx - add rdx,rdi - mov r13,r11 - add r14,rdx - ror r13,23 - mov rdx,r14 - mov r12,rax - ror r14,5 - xor r13,r11 - xor r12,rbx - ror r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - add rcx,QWORD PTR[104+rsp] - mov rdi,rdx - xor r12,rbx - ror r14,6 - xor rdi,r8 - add rcx,r12 - ror r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - ror r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - ror r13,23 - mov rcx,r14 - mov r12,r11 - ror r14,5 - xor r13,r10 - xor r12,rax - ror r13,4 - xor r14,rcx - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[112+rsp] - mov r15,rcx - xor r12,rax - ror r14,6 - xor r15,rdx - add rbx,r12 - ror r13,14 - and rdi,r15 - xor r14,rcx - add rbx,r13 - xor rdi,rdx - ror r14,28 - add r9,rbx - add rbx,rdi - mov r13,r9 - add r14,rbx - ror r13,23 - mov rbx,r14 - mov r12,r10 - ror r14,5 - xor r13,r9 - xor r12,r11 - ror r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - add rax,QWORD PTR[120+rsp] - mov rdi,rbx - xor r12,r11 - ror r14,6 - xor rdi,rcx - add rax,r12 - ror r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - ror r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - mov rdi,QWORD PTR[((128+0))+rsp] - mov rax,r14 - - add rax,QWORD PTR[rdi] - lea rsi,QWORD PTR[128+rsi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - add r10,QWORD PTR[48+rdi] - add r11,QWORD PTR[56+rdi] - - cmp rsi,QWORD PTR[((128+16))+rsp] - - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - jb $L$loop_xop - - mov rsi,QWORD PTR[((128+24))+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((128+32))+rsp] - movaps xmm7,XMMWORD PTR[((128+48))+rsp] - movaps xmm8,XMMWORD PTR[((128+64))+rsp] - movaps xmm9,XMMWORD PTR[((128+80))+rsp] - movaps xmm10,XMMWORD PTR[((128+96))+rsp] - movaps xmm11,XMMWORD PTR[((128+112))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_xop:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha512_block_data_order_xop:: -sha512_block_data_order_xop ENDP - -ALIGN 64 -sha512_block_data_order_avx PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha512_block_data_order_avx:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$avx_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,256 - lea rdx,QWORD PTR[rdx*8+rsi] - and rsp,-64 - mov QWORD PTR[((128+0))+rsp],rdi - mov QWORD PTR[((128+8))+rsp],rsi - mov QWORD PTR[((128+16))+rsp],rdx - mov QWORD PTR[((128+24))+rsp],r11 - movaps XMMWORD PTR[(128+32)+rsp],xmm6 - movaps XMMWORD PTR[(128+48)+rsp],xmm7 - movaps XMMWORD PTR[(128+64)+rsp],xmm8 - movaps XMMWORD PTR[(128+80)+rsp],xmm9 - movaps XMMWORD PTR[(128+96)+rsp],xmm10 - movaps XMMWORD PTR[(128+112)+rsp],xmm11 -$L$prologue_avx:: - - vzeroupper - mov rax,QWORD PTR[rdi] - mov rbx,QWORD PTR[8+rdi] - mov rcx,QWORD PTR[16+rdi] - mov rdx,QWORD PTR[24+rdi] - mov r8,QWORD PTR[32+rdi] - mov r9,QWORD PTR[40+rdi] - mov r10,QWORD PTR[48+rdi] - mov r11,QWORD PTR[56+rdi] - jmp $L$loop_avx -ALIGN 16 -$L$loop_avx:: - vmovdqa xmm11,XMMWORD PTR[((K512+1280))] - vmovdqu xmm0,XMMWORD PTR[rsi] - lea rbp,QWORD PTR[((K512+128))] - vmovdqu xmm1,XMMWORD PTR[16+rsi] - vmovdqu xmm2,XMMWORD PTR[32+rsi] - vpshufb xmm0,xmm0,xmm11 - vmovdqu xmm3,XMMWORD PTR[48+rsi] - vpshufb xmm1,xmm1,xmm11 - vmovdqu xmm4,XMMWORD PTR[64+rsi] - vpshufb xmm2,xmm2,xmm11 - vmovdqu xmm5,XMMWORD PTR[80+rsi] - vpshufb xmm3,xmm3,xmm11 - vmovdqu xmm6,XMMWORD PTR[96+rsi] - vpshufb xmm4,xmm4,xmm11 - vmovdqu xmm7,XMMWORD PTR[112+rsi] - vpshufb xmm5,xmm5,xmm11 - vpaddq xmm8,xmm0,XMMWORD PTR[((-128))+rbp] - vpshufb xmm6,xmm6,xmm11 - vpaddq xmm9,xmm1,XMMWORD PTR[((-96))+rbp] - vpshufb xmm7,xmm7,xmm11 - vpaddq xmm10,xmm2,XMMWORD PTR[((-64))+rbp] - vpaddq xmm11,xmm3,XMMWORD PTR[((-32))+rbp] - vmovdqa XMMWORD PTR[rsp],xmm8 - vpaddq xmm8,xmm4,XMMWORD PTR[rbp] - vmovdqa XMMWORD PTR[16+rsp],xmm9 - vpaddq xmm9,xmm5,XMMWORD PTR[32+rbp] - vmovdqa XMMWORD PTR[32+rsp],xmm10 - vpaddq xmm10,xmm6,XMMWORD PTR[64+rbp] - vmovdqa XMMWORD PTR[48+rsp],xmm11 - vpaddq xmm11,xmm7,XMMWORD PTR[96+rbp] - vmovdqa XMMWORD PTR[64+rsp],xmm8 - mov r14,rax - vmovdqa XMMWORD PTR[80+rsp],xmm9 - mov rdi,rbx - vmovdqa XMMWORD PTR[96+rsp],xmm10 - xor rdi,rcx - vmovdqa XMMWORD PTR[112+rsp],xmm11 - mov r13,r8 - jmp $L$avx_00_47 - -ALIGN 16 -$L$avx_00_47:: - add rbp,256 - vpalignr xmm8,xmm1,xmm0,8 - shrd r13,r13,23 - mov rax,r14 - vpalignr xmm11,xmm5,xmm4,8 - mov r12,r9 - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,r8 - xor r12,r10 - vpaddq xmm0,xmm0,xmm11 - shrd r13,r13,4 - xor r14,rax - vpsrlq xmm11,xmm8,7 - and r12,r8 - xor r13,r8 - vpsllq xmm9,xmm8,56 - add r11,QWORD PTR[rsp] - mov r15,rax - vpxor xmm8,xmm11,xmm10 - xor r12,r10 - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,rbx - add r11,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,rax - add r11,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rbx - shrd r14,r14,28 - vpsrlq xmm11,xmm7,6 - add rdx,r11 - add r11,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,rdx - add r14,r11 - vpsllq xmm10,xmm7,3 - shrd r13,r13,23 - mov r11,r14 - vpaddq xmm0,xmm0,xmm8 - mov r12,r8 - shrd r14,r14,5 - vpsrlq xmm9,xmm7,19 - xor r13,rdx - xor r12,r9 - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,r11 - vpsllq xmm10,xmm10,42 - and r12,rdx - xor r13,rdx - vpxor xmm11,xmm11,xmm9 - add r10,QWORD PTR[8+rsp] - mov rdi,r11 - vpsrlq xmm9,xmm9,42 - xor r12,r9 - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,rax - add r10,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm0,xmm0,xmm11 - xor r14,r11 - add r10,r13 - vpaddq xmm10,xmm0,XMMWORD PTR[((-128))+rbp] - xor r15,rax - shrd r14,r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - vmovdqa XMMWORD PTR[rsp],xmm10 - vpalignr xmm8,xmm2,xmm1,8 - shrd r13,r13,23 - mov r10,r14 - vpalignr xmm11,xmm6,xmm5,8 - mov r12,rdx - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,rcx - xor r12,r8 - vpaddq xmm1,xmm1,xmm11 - shrd r13,r13,4 - xor r14,r10 - vpsrlq xmm11,xmm8,7 - and r12,rcx - xor r13,rcx - vpsllq xmm9,xmm8,56 - add r9,QWORD PTR[16+rsp] - mov r15,r10 - vpxor xmm8,xmm11,xmm10 - xor r12,r8 - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,r11 - add r9,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,r10 - add r9,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r11 - shrd r14,r14,28 - vpsrlq xmm11,xmm0,6 - add rbx,r9 - add r9,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,rbx - add r14,r9 - vpsllq xmm10,xmm0,3 - shrd r13,r13,23 - mov r9,r14 - vpaddq xmm1,xmm1,xmm8 - mov r12,rcx - shrd r14,r14,5 - vpsrlq xmm9,xmm0,19 - xor r13,rbx - xor r12,rdx - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,r9 - vpsllq xmm10,xmm10,42 - and r12,rbx - xor r13,rbx - vpxor xmm11,xmm11,xmm9 - add r8,QWORD PTR[24+rsp] - mov rdi,r9 - vpsrlq xmm9,xmm9,42 - xor r12,rdx - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,r10 - add r8,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm1,xmm1,xmm11 - xor r14,r9 - add r8,r13 - vpaddq xmm10,xmm1,XMMWORD PTR[((-96))+rbp] - xor r15,r10 - shrd r14,r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - vmovdqa XMMWORD PTR[16+rsp],xmm10 - vpalignr xmm8,xmm3,xmm2,8 - shrd r13,r13,23 - mov r8,r14 - vpalignr xmm11,xmm7,xmm6,8 - mov r12,rbx - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,rax - xor r12,rcx - vpaddq xmm2,xmm2,xmm11 - shrd r13,r13,4 - xor r14,r8 - vpsrlq xmm11,xmm8,7 - and r12,rax - xor r13,rax - vpsllq xmm9,xmm8,56 - add rdx,QWORD PTR[32+rsp] - mov r15,r8 - vpxor xmm8,xmm11,xmm10 - xor r12,rcx - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,r9 - add rdx,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,r8 - add rdx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r9 - shrd r14,r14,28 - vpsrlq xmm11,xmm1,6 - add r11,rdx - add rdx,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,r11 - add r14,rdx - vpsllq xmm10,xmm1,3 - shrd r13,r13,23 - mov rdx,r14 - vpaddq xmm2,xmm2,xmm8 - mov r12,rax - shrd r14,r14,5 - vpsrlq xmm9,xmm1,19 - xor r13,r11 - xor r12,rbx - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,rdx - vpsllq xmm10,xmm10,42 - and r12,r11 - xor r13,r11 - vpxor xmm11,xmm11,xmm9 - add rcx,QWORD PTR[40+rsp] - mov rdi,rdx - vpsrlq xmm9,xmm9,42 - xor r12,rbx - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,r8 - add rcx,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm2,xmm2,xmm11 - xor r14,rdx - add rcx,r13 - vpaddq xmm10,xmm2,XMMWORD PTR[((-64))+rbp] - xor r15,r8 - shrd r14,r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - vmovdqa XMMWORD PTR[32+rsp],xmm10 - vpalignr xmm8,xmm4,xmm3,8 - shrd r13,r13,23 - mov rcx,r14 - vpalignr xmm11,xmm0,xmm7,8 - mov r12,r11 - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,r10 - xor r12,rax - vpaddq xmm3,xmm3,xmm11 - shrd r13,r13,4 - xor r14,rcx - vpsrlq xmm11,xmm8,7 - and r12,r10 - xor r13,r10 - vpsllq xmm9,xmm8,56 - add rbx,QWORD PTR[48+rsp] - mov r15,rcx - vpxor xmm8,xmm11,xmm10 - xor r12,rax - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,rdx - add rbx,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,rcx - add rbx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rdx - shrd r14,r14,28 - vpsrlq xmm11,xmm2,6 - add r9,rbx - add rbx,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,r9 - add r14,rbx - vpsllq xmm10,xmm2,3 - shrd r13,r13,23 - mov rbx,r14 - vpaddq xmm3,xmm3,xmm8 - mov r12,r10 - shrd r14,r14,5 - vpsrlq xmm9,xmm2,19 - xor r13,r9 - xor r12,r11 - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,rbx - vpsllq xmm10,xmm10,42 - and r12,r9 - xor r13,r9 - vpxor xmm11,xmm11,xmm9 - add rax,QWORD PTR[56+rsp] - mov rdi,rbx - vpsrlq xmm9,xmm9,42 - xor r12,r11 - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,rcx - add rax,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm3,xmm3,xmm11 - xor r14,rbx - add rax,r13 - vpaddq xmm10,xmm3,XMMWORD PTR[((-32))+rbp] - xor r15,rcx - shrd r14,r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - vmovdqa XMMWORD PTR[48+rsp],xmm10 - vpalignr xmm8,xmm5,xmm4,8 - shrd r13,r13,23 - mov rax,r14 - vpalignr xmm11,xmm1,xmm0,8 - mov r12,r9 - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,r8 - xor r12,r10 - vpaddq xmm4,xmm4,xmm11 - shrd r13,r13,4 - xor r14,rax - vpsrlq xmm11,xmm8,7 - and r12,r8 - xor r13,r8 - vpsllq xmm9,xmm8,56 - add r11,QWORD PTR[64+rsp] - mov r15,rax - vpxor xmm8,xmm11,xmm10 - xor r12,r10 - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,rbx - add r11,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,rax - add r11,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rbx - shrd r14,r14,28 - vpsrlq xmm11,xmm3,6 - add rdx,r11 - add r11,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,rdx - add r14,r11 - vpsllq xmm10,xmm3,3 - shrd r13,r13,23 - mov r11,r14 - vpaddq xmm4,xmm4,xmm8 - mov r12,r8 - shrd r14,r14,5 - vpsrlq xmm9,xmm3,19 - xor r13,rdx - xor r12,r9 - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,r11 - vpsllq xmm10,xmm10,42 - and r12,rdx - xor r13,rdx - vpxor xmm11,xmm11,xmm9 - add r10,QWORD PTR[72+rsp] - mov rdi,r11 - vpsrlq xmm9,xmm9,42 - xor r12,r9 - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,rax - add r10,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm4,xmm4,xmm11 - xor r14,r11 - add r10,r13 - vpaddq xmm10,xmm4,XMMWORD PTR[rbp] - xor r15,rax - shrd r14,r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - vmovdqa XMMWORD PTR[64+rsp],xmm10 - vpalignr xmm8,xmm6,xmm5,8 - shrd r13,r13,23 - mov r10,r14 - vpalignr xmm11,xmm2,xmm1,8 - mov r12,rdx - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,rcx - xor r12,r8 - vpaddq xmm5,xmm5,xmm11 - shrd r13,r13,4 - xor r14,r10 - vpsrlq xmm11,xmm8,7 - and r12,rcx - xor r13,rcx - vpsllq xmm9,xmm8,56 - add r9,QWORD PTR[80+rsp] - mov r15,r10 - vpxor xmm8,xmm11,xmm10 - xor r12,r8 - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,r11 - add r9,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,r10 - add r9,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r11 - shrd r14,r14,28 - vpsrlq xmm11,xmm4,6 - add rbx,r9 - add r9,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,rbx - add r14,r9 - vpsllq xmm10,xmm4,3 - shrd r13,r13,23 - mov r9,r14 - vpaddq xmm5,xmm5,xmm8 - mov r12,rcx - shrd r14,r14,5 - vpsrlq xmm9,xmm4,19 - xor r13,rbx - xor r12,rdx - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,r9 - vpsllq xmm10,xmm10,42 - and r12,rbx - xor r13,rbx - vpxor xmm11,xmm11,xmm9 - add r8,QWORD PTR[88+rsp] - mov rdi,r9 - vpsrlq xmm9,xmm9,42 - xor r12,rdx - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,r10 - add r8,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm5,xmm5,xmm11 - xor r14,r9 - add r8,r13 - vpaddq xmm10,xmm5,XMMWORD PTR[32+rbp] - xor r15,r10 - shrd r14,r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - vmovdqa XMMWORD PTR[80+rsp],xmm10 - vpalignr xmm8,xmm7,xmm6,8 - shrd r13,r13,23 - mov r8,r14 - vpalignr xmm11,xmm3,xmm2,8 - mov r12,rbx - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,rax - xor r12,rcx - vpaddq xmm6,xmm6,xmm11 - shrd r13,r13,4 - xor r14,r8 - vpsrlq xmm11,xmm8,7 - and r12,rax - xor r13,rax - vpsllq xmm9,xmm8,56 - add rdx,QWORD PTR[96+rsp] - mov r15,r8 - vpxor xmm8,xmm11,xmm10 - xor r12,rcx - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,r9 - add rdx,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,r8 - add rdx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,r9 - shrd r14,r14,28 - vpsrlq xmm11,xmm5,6 - add r11,rdx - add rdx,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,r11 - add r14,rdx - vpsllq xmm10,xmm5,3 - shrd r13,r13,23 - mov rdx,r14 - vpaddq xmm6,xmm6,xmm8 - mov r12,rax - shrd r14,r14,5 - vpsrlq xmm9,xmm5,19 - xor r13,r11 - xor r12,rbx - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,rdx - vpsllq xmm10,xmm10,42 - and r12,r11 - xor r13,r11 - vpxor xmm11,xmm11,xmm9 - add rcx,QWORD PTR[104+rsp] - mov rdi,rdx - vpsrlq xmm9,xmm9,42 - xor r12,rbx - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,r8 - add rcx,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm6,xmm6,xmm11 - xor r14,rdx - add rcx,r13 - vpaddq xmm10,xmm6,XMMWORD PTR[64+rbp] - xor r15,r8 - shrd r14,r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - vmovdqa XMMWORD PTR[96+rsp],xmm10 - vpalignr xmm8,xmm0,xmm7,8 - shrd r13,r13,23 - mov rcx,r14 - vpalignr xmm11,xmm4,xmm3,8 - mov r12,r11 - shrd r14,r14,5 - vpsrlq xmm10,xmm8,1 - xor r13,r10 - xor r12,rax - vpaddq xmm7,xmm7,xmm11 - shrd r13,r13,4 - xor r14,rcx - vpsrlq xmm11,xmm8,7 - and r12,r10 - xor r13,r10 - vpsllq xmm9,xmm8,56 - add rbx,QWORD PTR[112+rsp] - mov r15,rcx - vpxor xmm8,xmm11,xmm10 - xor r12,rax - shrd r14,r14,6 - vpsrlq xmm10,xmm10,7 - xor r15,rdx - add rbx,r12 - vpxor xmm8,xmm8,xmm9 - shrd r13,r13,14 - and rdi,r15 - vpsllq xmm9,xmm9,7 - xor r14,rcx - add rbx,r13 - vpxor xmm8,xmm8,xmm10 - xor rdi,rdx - shrd r14,r14,28 - vpsrlq xmm11,xmm6,6 - add r9,rbx - add rbx,rdi - vpxor xmm8,xmm8,xmm9 - mov r13,r9 - add r14,rbx - vpsllq xmm10,xmm6,3 - shrd r13,r13,23 - mov rbx,r14 - vpaddq xmm7,xmm7,xmm8 - mov r12,r10 - shrd r14,r14,5 - vpsrlq xmm9,xmm6,19 - xor r13,r9 - xor r12,r11 - vpxor xmm11,xmm11,xmm10 - shrd r13,r13,4 - xor r14,rbx - vpsllq xmm10,xmm10,42 - and r12,r9 - xor r13,r9 - vpxor xmm11,xmm11,xmm9 - add rax,QWORD PTR[120+rsp] - mov rdi,rbx - vpsrlq xmm9,xmm9,42 - xor r12,r11 - shrd r14,r14,6 - vpxor xmm11,xmm11,xmm10 - xor rdi,rcx - add rax,r12 - vpxor xmm11,xmm11,xmm9 - shrd r13,r13,14 - and r15,rdi - vpaddq xmm7,xmm7,xmm11 - xor r14,rbx - add rax,r13 - vpaddq xmm10,xmm7,XMMWORD PTR[96+rbp] - xor r15,rcx - shrd r14,r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - vmovdqa XMMWORD PTR[112+rsp],xmm10 - cmp BYTE PTR[135+rbp],0 - jne $L$avx_00_47 - shrd r13,r13,23 - mov rax,r14 - mov r12,r9 - shrd r14,r14,5 - xor r13,r8 - xor r12,r10 - shrd r13,r13,4 - xor r14,rax - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[rsp] - mov r15,rax - xor r12,r10 - shrd r14,r14,6 - xor r15,rbx - add r11,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,rax - add r11,r13 - xor rdi,rbx - shrd r14,r14,28 - add rdx,r11 - add r11,rdi - mov r13,rdx - add r14,r11 - shrd r13,r13,23 - mov r11,r14 - mov r12,r8 - shrd r14,r14,5 - xor r13,rdx - xor r12,r9 - shrd r13,r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - add r10,QWORD PTR[8+rsp] - mov rdi,r11 - xor r12,r9 - shrd r14,r14,6 - xor rdi,rax - add r10,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - shrd r14,r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - shrd r13,r13,23 - mov r10,r14 - mov r12,rdx - shrd r14,r14,5 - xor r13,rcx - xor r12,r8 - shrd r13,r13,4 - xor r14,r10 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[16+rsp] - mov r15,r10 - xor r12,r8 - shrd r14,r14,6 - xor r15,r11 - add r9,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,r10 - add r9,r13 - xor rdi,r11 - shrd r14,r14,28 - add rbx,r9 - add r9,rdi - mov r13,rbx - add r14,r9 - shrd r13,r13,23 - mov r9,r14 - mov r12,rcx - shrd r14,r14,5 - xor r13,rbx - xor r12,rdx - shrd r13,r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - add r8,QWORD PTR[24+rsp] - mov rdi,r9 - xor r12,rdx - shrd r14,r14,6 - xor rdi,r10 - add r8,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - shrd r14,r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - shrd r13,r13,23 - mov r8,r14 - mov r12,rbx - shrd r14,r14,5 - xor r13,rax - xor r12,rcx - shrd r13,r13,4 - xor r14,r8 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[32+rsp] - mov r15,r8 - xor r12,rcx - shrd r14,r14,6 - xor r15,r9 - add rdx,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,r8 - add rdx,r13 - xor rdi,r9 - shrd r14,r14,28 - add r11,rdx - add rdx,rdi - mov r13,r11 - add r14,rdx - shrd r13,r13,23 - mov rdx,r14 - mov r12,rax - shrd r14,r14,5 - xor r13,r11 - xor r12,rbx - shrd r13,r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - add rcx,QWORD PTR[40+rsp] - mov rdi,rdx - xor r12,rbx - shrd r14,r14,6 - xor rdi,r8 - add rcx,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - shrd r14,r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - shrd r13,r13,23 - mov rcx,r14 - mov r12,r11 - shrd r14,r14,5 - xor r13,r10 - xor r12,rax - shrd r13,r13,4 - xor r14,rcx - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[48+rsp] - mov r15,rcx - xor r12,rax - shrd r14,r14,6 - xor r15,rdx - add rbx,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,rcx - add rbx,r13 - xor rdi,rdx - shrd r14,r14,28 - add r9,rbx - add rbx,rdi - mov r13,r9 - add r14,rbx - shrd r13,r13,23 - mov rbx,r14 - mov r12,r10 - shrd r14,r14,5 - xor r13,r9 - xor r12,r11 - shrd r13,r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - add rax,QWORD PTR[56+rsp] - mov rdi,rbx - xor r12,r11 - shrd r14,r14,6 - xor rdi,rcx - add rax,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - shrd r14,r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - shrd r13,r13,23 - mov rax,r14 - mov r12,r9 - shrd r14,r14,5 - xor r13,r8 - xor r12,r10 - shrd r13,r13,4 - xor r14,rax - and r12,r8 - xor r13,r8 - add r11,QWORD PTR[64+rsp] - mov r15,rax - xor r12,r10 - shrd r14,r14,6 - xor r15,rbx - add r11,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,rax - add r11,r13 - xor rdi,rbx - shrd r14,r14,28 - add rdx,r11 - add r11,rdi - mov r13,rdx - add r14,r11 - shrd r13,r13,23 - mov r11,r14 - mov r12,r8 - shrd r14,r14,5 - xor r13,rdx - xor r12,r9 - shrd r13,r13,4 - xor r14,r11 - and r12,rdx - xor r13,rdx - add r10,QWORD PTR[72+rsp] - mov rdi,r11 - xor r12,r9 - shrd r14,r14,6 - xor rdi,rax - add r10,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,r11 - add r10,r13 - xor r15,rax - shrd r14,r14,28 - add rcx,r10 - add r10,r15 - mov r13,rcx - add r14,r10 - shrd r13,r13,23 - mov r10,r14 - mov r12,rdx - shrd r14,r14,5 - xor r13,rcx - xor r12,r8 - shrd r13,r13,4 - xor r14,r10 - and r12,rcx - xor r13,rcx - add r9,QWORD PTR[80+rsp] - mov r15,r10 - xor r12,r8 - shrd r14,r14,6 - xor r15,r11 - add r9,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,r10 - add r9,r13 - xor rdi,r11 - shrd r14,r14,28 - add rbx,r9 - add r9,rdi - mov r13,rbx - add r14,r9 - shrd r13,r13,23 - mov r9,r14 - mov r12,rcx - shrd r14,r14,5 - xor r13,rbx - xor r12,rdx - shrd r13,r13,4 - xor r14,r9 - and r12,rbx - xor r13,rbx - add r8,QWORD PTR[88+rsp] - mov rdi,r9 - xor r12,rdx - shrd r14,r14,6 - xor rdi,r10 - add r8,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,r9 - add r8,r13 - xor r15,r10 - shrd r14,r14,28 - add rax,r8 - add r8,r15 - mov r13,rax - add r14,r8 - shrd r13,r13,23 - mov r8,r14 - mov r12,rbx - shrd r14,r14,5 - xor r13,rax - xor r12,rcx - shrd r13,r13,4 - xor r14,r8 - and r12,rax - xor r13,rax - add rdx,QWORD PTR[96+rsp] - mov r15,r8 - xor r12,rcx - shrd r14,r14,6 - xor r15,r9 - add rdx,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,r8 - add rdx,r13 - xor rdi,r9 - shrd r14,r14,28 - add r11,rdx - add rdx,rdi - mov r13,r11 - add r14,rdx - shrd r13,r13,23 - mov rdx,r14 - mov r12,rax - shrd r14,r14,5 - xor r13,r11 - xor r12,rbx - shrd r13,r13,4 - xor r14,rdx - and r12,r11 - xor r13,r11 - add rcx,QWORD PTR[104+rsp] - mov rdi,rdx - xor r12,rbx - shrd r14,r14,6 - xor rdi,r8 - add rcx,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,rdx - add rcx,r13 - xor r15,r8 - shrd r14,r14,28 - add r10,rcx - add rcx,r15 - mov r13,r10 - add r14,rcx - shrd r13,r13,23 - mov rcx,r14 - mov r12,r11 - shrd r14,r14,5 - xor r13,r10 - xor r12,rax - shrd r13,r13,4 - xor r14,rcx - and r12,r10 - xor r13,r10 - add rbx,QWORD PTR[112+rsp] - mov r15,rcx - xor r12,rax - shrd r14,r14,6 - xor r15,rdx - add rbx,r12 - shrd r13,r13,14 - and rdi,r15 - xor r14,rcx - add rbx,r13 - xor rdi,rdx - shrd r14,r14,28 - add r9,rbx - add rbx,rdi - mov r13,r9 - add r14,rbx - shrd r13,r13,23 - mov rbx,r14 - mov r12,r10 - shrd r14,r14,5 - xor r13,r9 - xor r12,r11 - shrd r13,r13,4 - xor r14,rbx - and r12,r9 - xor r13,r9 - add rax,QWORD PTR[120+rsp] - mov rdi,rbx - xor r12,r11 - shrd r14,r14,6 - xor rdi,rcx - add rax,r12 - shrd r13,r13,14 - and r15,rdi - xor r14,rbx - add rax,r13 - xor r15,rcx - shrd r14,r14,28 - add r8,rax - add rax,r15 - mov r13,r8 - add r14,rax - mov rdi,QWORD PTR[((128+0))+rsp] - mov rax,r14 - - add rax,QWORD PTR[rdi] - lea rsi,QWORD PTR[128+rsi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - add r10,QWORD PTR[48+rdi] - add r11,QWORD PTR[56+rdi] - - cmp rsi,QWORD PTR[((128+16))+rsp] - - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - jb $L$loop_avx - - mov rsi,QWORD PTR[((128+24))+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((128+32))+rsp] - movaps xmm7,XMMWORD PTR[((128+48))+rsp] - movaps xmm8,XMMWORD PTR[((128+64))+rsp] - movaps xmm9,XMMWORD PTR[((128+80))+rsp] - movaps xmm10,XMMWORD PTR[((128+96))+rsp] - movaps xmm11,XMMWORD PTR[((128+112))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha512_block_data_order_avx:: -sha512_block_data_order_avx ENDP - -ALIGN 64 -sha512_block_data_order_avx2 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha512_block_data_order_avx2:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$avx2_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - sub rsp,1408 - shl rdx,4 - and rsp,-256*8 - lea rdx,QWORD PTR[rdx*8+rsi] - add rsp,1152 - mov QWORD PTR[((128+0))+rsp],rdi - mov QWORD PTR[((128+8))+rsp],rsi - mov QWORD PTR[((128+16))+rsp],rdx - mov QWORD PTR[((128+24))+rsp],r11 - movaps XMMWORD PTR[(128+32)+rsp],xmm6 - movaps XMMWORD PTR[(128+48)+rsp],xmm7 - movaps XMMWORD PTR[(128+64)+rsp],xmm8 - movaps XMMWORD PTR[(128+80)+rsp],xmm9 - movaps XMMWORD PTR[(128+96)+rsp],xmm10 - movaps XMMWORD PTR[(128+112)+rsp],xmm11 -$L$prologue_avx2:: - - vzeroupper - sub rsi,-16*8 - mov rax,QWORD PTR[rdi] - mov r12,rsi - mov rbx,QWORD PTR[8+rdi] - cmp rsi,rdx - mov rcx,QWORD PTR[16+rdi] - cmove r12,rsp - mov rdx,QWORD PTR[24+rdi] - mov r8,QWORD PTR[32+rdi] - mov r9,QWORD PTR[40+rdi] - mov r10,QWORD PTR[48+rdi] - mov r11,QWORD PTR[56+rdi] - jmp $L$oop_avx2 -ALIGN 16 -$L$oop_avx2:: - vmovdqu xmm0,XMMWORD PTR[((-128))+rsi] - vmovdqu xmm1,XMMWORD PTR[((-128+16))+rsi] - vmovdqu xmm2,XMMWORD PTR[((-128+32))+rsi] - lea rbp,QWORD PTR[((K512+128))] - vmovdqu xmm3,XMMWORD PTR[((-128+48))+rsi] - vmovdqu xmm4,XMMWORD PTR[((-128+64))+rsi] - vmovdqu xmm5,XMMWORD PTR[((-128+80))+rsi] - vmovdqu xmm6,XMMWORD PTR[((-128+96))+rsi] - vmovdqu xmm7,XMMWORD PTR[((-128+112))+rsi] - - vmovdqa ymm10,YMMWORD PTR[1152+rbp] - vinserti128 ymm0,ymm0,XMMWORD PTR[r12],1 - vinserti128 ymm1,ymm1,XMMWORD PTR[16+r12],1 - vpshufb ymm0,ymm0,ymm10 - vinserti128 ymm2,ymm2,XMMWORD PTR[32+r12],1 - vpshufb ymm1,ymm1,ymm10 - vinserti128 ymm3,ymm3,XMMWORD PTR[48+r12],1 - vpshufb ymm2,ymm2,ymm10 - vinserti128 ymm4,ymm4,XMMWORD PTR[64+r12],1 - vpshufb ymm3,ymm3,ymm10 - vinserti128 ymm5,ymm5,XMMWORD PTR[80+r12],1 - vpshufb ymm4,ymm4,ymm10 - vinserti128 ymm6,ymm6,XMMWORD PTR[96+r12],1 - vpshufb ymm5,ymm5,ymm10 - vinserti128 ymm7,ymm7,XMMWORD PTR[112+r12],1 - - vpaddq ymm8,ymm0,YMMWORD PTR[((-128))+rbp] - vpshufb ymm6,ymm6,ymm10 - vpaddq ymm9,ymm1,YMMWORD PTR[((-96))+rbp] - vpshufb ymm7,ymm7,ymm10 - vpaddq ymm10,ymm2,YMMWORD PTR[((-64))+rbp] - vpaddq ymm11,ymm3,YMMWORD PTR[((-32))+rbp] - vmovdqa YMMWORD PTR[rsp],ymm8 - vpaddq ymm8,ymm4,YMMWORD PTR[rbp] - vmovdqa YMMWORD PTR[32+rsp],ymm9 - vpaddq ymm9,ymm5,YMMWORD PTR[32+rbp] - vmovdqa YMMWORD PTR[64+rsp],ymm10 - vpaddq ymm10,ymm6,YMMWORD PTR[64+rbp] - vmovdqa YMMWORD PTR[96+rsp],ymm11 - lea rsp,QWORD PTR[((-128))+rsp] - vpaddq ymm11,ymm7,YMMWORD PTR[96+rbp] - vmovdqa YMMWORD PTR[rsp],ymm8 - xor r14,r14 - vmovdqa YMMWORD PTR[32+rsp],ymm9 - mov rdi,rbx - vmovdqa YMMWORD PTR[64+rsp],ymm10 - xor rdi,rcx - vmovdqa YMMWORD PTR[96+rsp],ymm11 - mov r12,r9 - add rbp,16*2*8 - jmp $L$avx2_00_47 - -ALIGN 16 -$L$avx2_00_47:: - lea rsp,QWORD PTR[((-128))+rsp] - vpalignr ymm8,ymm1,ymm0,8 - add r11,QWORD PTR[((0+256))+rsp] - and r12,r8 - rorx r13,r8,41 - vpalignr ymm11,ymm5,ymm4,8 - rorx r15,r8,18 - lea rax,QWORD PTR[r14*1+rax] - lea r11,QWORD PTR[r12*1+r11] - vpsrlq ymm10,ymm8,1 - andn r12,r8,r10 - xor r13,r15 - rorx r14,r8,14 - vpaddq ymm0,ymm0,ymm11 - vpsrlq ymm11,ymm8,7 - lea r11,QWORD PTR[r12*1+r11] - xor r13,r14 - mov r15,rax - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,rax,39 - lea r11,QWORD PTR[r13*1+r11] - xor r15,rbx - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,rax,34 - rorx r13,rax,28 - lea rdx,QWORD PTR[r11*1+rdx] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,rbx - vpsrlq ymm11,ymm7,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea r11,QWORD PTR[rdi*1+r11] - mov r12,r8 - vpsllq ymm10,ymm7,3 - vpaddq ymm0,ymm0,ymm8 - add r10,QWORD PTR[((8+256))+rsp] - and r12,rdx - rorx r13,rdx,41 - vpsrlq ymm9,ymm7,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,rdx,18 - lea r11,QWORD PTR[r14*1+r11] - lea r10,QWORD PTR[r12*1+r10] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,rdx,r9 - xor r13,rdi - rorx r14,rdx,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea r10,QWORD PTR[r12*1+r10] - xor r13,r14 - mov rdi,r11 - vpxor ymm11,ymm11,ymm9 - rorx r12,r11,39 - lea r10,QWORD PTR[r13*1+r10] - xor rdi,rax - vpaddq ymm0,ymm0,ymm11 - rorx r14,r11,34 - rorx r13,r11,28 - lea rcx,QWORD PTR[r10*1+rcx] - vpaddq ymm10,ymm0,YMMWORD PTR[((-128))+rbp] - and r15,rdi - xor r14,r12 - xor r15,rax - xor r14,r13 - lea r10,QWORD PTR[r15*1+r10] - mov r12,rdx - vmovdqa YMMWORD PTR[rsp],ymm10 - vpalignr ymm8,ymm2,ymm1,8 - add r9,QWORD PTR[((32+256))+rsp] - and r12,rcx - rorx r13,rcx,41 - vpalignr ymm11,ymm6,ymm5,8 - rorx r15,rcx,18 - lea r10,QWORD PTR[r14*1+r10] - lea r9,QWORD PTR[r12*1+r9] - vpsrlq ymm10,ymm8,1 - andn r12,rcx,r8 - xor r13,r15 - rorx r14,rcx,14 - vpaddq ymm1,ymm1,ymm11 - vpsrlq ymm11,ymm8,7 - lea r9,QWORD PTR[r12*1+r9] - xor r13,r14 - mov r15,r10 - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,r10,39 - lea r9,QWORD PTR[r13*1+r9] - xor r15,r11 - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,r10,34 - rorx r13,r10,28 - lea rbx,QWORD PTR[r9*1+rbx] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,r11 - vpsrlq ymm11,ymm0,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea r9,QWORD PTR[rdi*1+r9] - mov r12,rcx - vpsllq ymm10,ymm0,3 - vpaddq ymm1,ymm1,ymm8 - add r8,QWORD PTR[((40+256))+rsp] - and r12,rbx - rorx r13,rbx,41 - vpsrlq ymm9,ymm0,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,rbx,18 - lea r9,QWORD PTR[r14*1+r9] - lea r8,QWORD PTR[r12*1+r8] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,rbx,rdx - xor r13,rdi - rorx r14,rbx,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea r8,QWORD PTR[r12*1+r8] - xor r13,r14 - mov rdi,r9 - vpxor ymm11,ymm11,ymm9 - rorx r12,r9,39 - lea r8,QWORD PTR[r13*1+r8] - xor rdi,r10 - vpaddq ymm1,ymm1,ymm11 - rorx r14,r9,34 - rorx r13,r9,28 - lea rax,QWORD PTR[r8*1+rax] - vpaddq ymm10,ymm1,YMMWORD PTR[((-96))+rbp] - and r15,rdi - xor r14,r12 - xor r15,r10 - xor r14,r13 - lea r8,QWORD PTR[r15*1+r8] - mov r12,rbx - vmovdqa YMMWORD PTR[32+rsp],ymm10 - vpalignr ymm8,ymm3,ymm2,8 - add rdx,QWORD PTR[((64+256))+rsp] - and r12,rax - rorx r13,rax,41 - vpalignr ymm11,ymm7,ymm6,8 - rorx r15,rax,18 - lea r8,QWORD PTR[r14*1+r8] - lea rdx,QWORD PTR[r12*1+rdx] - vpsrlq ymm10,ymm8,1 - andn r12,rax,rcx - xor r13,r15 - rorx r14,rax,14 - vpaddq ymm2,ymm2,ymm11 - vpsrlq ymm11,ymm8,7 - lea rdx,QWORD PTR[r12*1+rdx] - xor r13,r14 - mov r15,r8 - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,r8,39 - lea rdx,QWORD PTR[r13*1+rdx] - xor r15,r9 - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,r8,34 - rorx r13,r8,28 - lea r11,QWORD PTR[rdx*1+r11] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,r9 - vpsrlq ymm11,ymm1,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea rdx,QWORD PTR[rdi*1+rdx] - mov r12,rax - vpsllq ymm10,ymm1,3 - vpaddq ymm2,ymm2,ymm8 - add rcx,QWORD PTR[((72+256))+rsp] - and r12,r11 - rorx r13,r11,41 - vpsrlq ymm9,ymm1,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,r11,18 - lea rdx,QWORD PTR[r14*1+rdx] - lea rcx,QWORD PTR[r12*1+rcx] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,r11,rbx - xor r13,rdi - rorx r14,r11,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea rcx,QWORD PTR[r12*1+rcx] - xor r13,r14 - mov rdi,rdx - vpxor ymm11,ymm11,ymm9 - rorx r12,rdx,39 - lea rcx,QWORD PTR[r13*1+rcx] - xor rdi,r8 - vpaddq ymm2,ymm2,ymm11 - rorx r14,rdx,34 - rorx r13,rdx,28 - lea r10,QWORD PTR[rcx*1+r10] - vpaddq ymm10,ymm2,YMMWORD PTR[((-64))+rbp] - and r15,rdi - xor r14,r12 - xor r15,r8 - xor r14,r13 - lea rcx,QWORD PTR[r15*1+rcx] - mov r12,r11 - vmovdqa YMMWORD PTR[64+rsp],ymm10 - vpalignr ymm8,ymm4,ymm3,8 - add rbx,QWORD PTR[((96+256))+rsp] - and r12,r10 - rorx r13,r10,41 - vpalignr ymm11,ymm0,ymm7,8 - rorx r15,r10,18 - lea rcx,QWORD PTR[r14*1+rcx] - lea rbx,QWORD PTR[r12*1+rbx] - vpsrlq ymm10,ymm8,1 - andn r12,r10,rax - xor r13,r15 - rorx r14,r10,14 - vpaddq ymm3,ymm3,ymm11 - vpsrlq ymm11,ymm8,7 - lea rbx,QWORD PTR[r12*1+rbx] - xor r13,r14 - mov r15,rcx - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,rcx,39 - lea rbx,QWORD PTR[r13*1+rbx] - xor r15,rdx - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,rcx,34 - rorx r13,rcx,28 - lea r9,QWORD PTR[rbx*1+r9] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,rdx - vpsrlq ymm11,ymm2,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea rbx,QWORD PTR[rdi*1+rbx] - mov r12,r10 - vpsllq ymm10,ymm2,3 - vpaddq ymm3,ymm3,ymm8 - add rax,QWORD PTR[((104+256))+rsp] - and r12,r9 - rorx r13,r9,41 - vpsrlq ymm9,ymm2,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,r9,18 - lea rbx,QWORD PTR[r14*1+rbx] - lea rax,QWORD PTR[r12*1+rax] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,r9,r11 - xor r13,rdi - rorx r14,r9,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea rax,QWORD PTR[r12*1+rax] - xor r13,r14 - mov rdi,rbx - vpxor ymm11,ymm11,ymm9 - rorx r12,rbx,39 - lea rax,QWORD PTR[r13*1+rax] - xor rdi,rcx - vpaddq ymm3,ymm3,ymm11 - rorx r14,rbx,34 - rorx r13,rbx,28 - lea r8,QWORD PTR[rax*1+r8] - vpaddq ymm10,ymm3,YMMWORD PTR[((-32))+rbp] - and r15,rdi - xor r14,r12 - xor r15,rcx - xor r14,r13 - lea rax,QWORD PTR[r15*1+rax] - mov r12,r9 - vmovdqa YMMWORD PTR[96+rsp],ymm10 - lea rsp,QWORD PTR[((-128))+rsp] - vpalignr ymm8,ymm5,ymm4,8 - add r11,QWORD PTR[((0+256))+rsp] - and r12,r8 - rorx r13,r8,41 - vpalignr ymm11,ymm1,ymm0,8 - rorx r15,r8,18 - lea rax,QWORD PTR[r14*1+rax] - lea r11,QWORD PTR[r12*1+r11] - vpsrlq ymm10,ymm8,1 - andn r12,r8,r10 - xor r13,r15 - rorx r14,r8,14 - vpaddq ymm4,ymm4,ymm11 - vpsrlq ymm11,ymm8,7 - lea r11,QWORD PTR[r12*1+r11] - xor r13,r14 - mov r15,rax - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,rax,39 - lea r11,QWORD PTR[r13*1+r11] - xor r15,rbx - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,rax,34 - rorx r13,rax,28 - lea rdx,QWORD PTR[r11*1+rdx] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,rbx - vpsrlq ymm11,ymm3,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea r11,QWORD PTR[rdi*1+r11] - mov r12,r8 - vpsllq ymm10,ymm3,3 - vpaddq ymm4,ymm4,ymm8 - add r10,QWORD PTR[((8+256))+rsp] - and r12,rdx - rorx r13,rdx,41 - vpsrlq ymm9,ymm3,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,rdx,18 - lea r11,QWORD PTR[r14*1+r11] - lea r10,QWORD PTR[r12*1+r10] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,rdx,r9 - xor r13,rdi - rorx r14,rdx,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea r10,QWORD PTR[r12*1+r10] - xor r13,r14 - mov rdi,r11 - vpxor ymm11,ymm11,ymm9 - rorx r12,r11,39 - lea r10,QWORD PTR[r13*1+r10] - xor rdi,rax - vpaddq ymm4,ymm4,ymm11 - rorx r14,r11,34 - rorx r13,r11,28 - lea rcx,QWORD PTR[r10*1+rcx] - vpaddq ymm10,ymm4,YMMWORD PTR[rbp] - and r15,rdi - xor r14,r12 - xor r15,rax - xor r14,r13 - lea r10,QWORD PTR[r15*1+r10] - mov r12,rdx - vmovdqa YMMWORD PTR[rsp],ymm10 - vpalignr ymm8,ymm6,ymm5,8 - add r9,QWORD PTR[((32+256))+rsp] - and r12,rcx - rorx r13,rcx,41 - vpalignr ymm11,ymm2,ymm1,8 - rorx r15,rcx,18 - lea r10,QWORD PTR[r14*1+r10] - lea r9,QWORD PTR[r12*1+r9] - vpsrlq ymm10,ymm8,1 - andn r12,rcx,r8 - xor r13,r15 - rorx r14,rcx,14 - vpaddq ymm5,ymm5,ymm11 - vpsrlq ymm11,ymm8,7 - lea r9,QWORD PTR[r12*1+r9] - xor r13,r14 - mov r15,r10 - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,r10,39 - lea r9,QWORD PTR[r13*1+r9] - xor r15,r11 - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,r10,34 - rorx r13,r10,28 - lea rbx,QWORD PTR[r9*1+rbx] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,r11 - vpsrlq ymm11,ymm4,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea r9,QWORD PTR[rdi*1+r9] - mov r12,rcx - vpsllq ymm10,ymm4,3 - vpaddq ymm5,ymm5,ymm8 - add r8,QWORD PTR[((40+256))+rsp] - and r12,rbx - rorx r13,rbx,41 - vpsrlq ymm9,ymm4,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,rbx,18 - lea r9,QWORD PTR[r14*1+r9] - lea r8,QWORD PTR[r12*1+r8] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,rbx,rdx - xor r13,rdi - rorx r14,rbx,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea r8,QWORD PTR[r12*1+r8] - xor r13,r14 - mov rdi,r9 - vpxor ymm11,ymm11,ymm9 - rorx r12,r9,39 - lea r8,QWORD PTR[r13*1+r8] - xor rdi,r10 - vpaddq ymm5,ymm5,ymm11 - rorx r14,r9,34 - rorx r13,r9,28 - lea rax,QWORD PTR[r8*1+rax] - vpaddq ymm10,ymm5,YMMWORD PTR[32+rbp] - and r15,rdi - xor r14,r12 - xor r15,r10 - xor r14,r13 - lea r8,QWORD PTR[r15*1+r8] - mov r12,rbx - vmovdqa YMMWORD PTR[32+rsp],ymm10 - vpalignr ymm8,ymm7,ymm6,8 - add rdx,QWORD PTR[((64+256))+rsp] - and r12,rax - rorx r13,rax,41 - vpalignr ymm11,ymm3,ymm2,8 - rorx r15,rax,18 - lea r8,QWORD PTR[r14*1+r8] - lea rdx,QWORD PTR[r12*1+rdx] - vpsrlq ymm10,ymm8,1 - andn r12,rax,rcx - xor r13,r15 - rorx r14,rax,14 - vpaddq ymm6,ymm6,ymm11 - vpsrlq ymm11,ymm8,7 - lea rdx,QWORD PTR[r12*1+rdx] - xor r13,r14 - mov r15,r8 - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,r8,39 - lea rdx,QWORD PTR[r13*1+rdx] - xor r15,r9 - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,r8,34 - rorx r13,r8,28 - lea r11,QWORD PTR[rdx*1+r11] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,r9 - vpsrlq ymm11,ymm5,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea rdx,QWORD PTR[rdi*1+rdx] - mov r12,rax - vpsllq ymm10,ymm5,3 - vpaddq ymm6,ymm6,ymm8 - add rcx,QWORD PTR[((72+256))+rsp] - and r12,r11 - rorx r13,r11,41 - vpsrlq ymm9,ymm5,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,r11,18 - lea rdx,QWORD PTR[r14*1+rdx] - lea rcx,QWORD PTR[r12*1+rcx] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,r11,rbx - xor r13,rdi - rorx r14,r11,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea rcx,QWORD PTR[r12*1+rcx] - xor r13,r14 - mov rdi,rdx - vpxor ymm11,ymm11,ymm9 - rorx r12,rdx,39 - lea rcx,QWORD PTR[r13*1+rcx] - xor rdi,r8 - vpaddq ymm6,ymm6,ymm11 - rorx r14,rdx,34 - rorx r13,rdx,28 - lea r10,QWORD PTR[rcx*1+r10] - vpaddq ymm10,ymm6,YMMWORD PTR[64+rbp] - and r15,rdi - xor r14,r12 - xor r15,r8 - xor r14,r13 - lea rcx,QWORD PTR[r15*1+rcx] - mov r12,r11 - vmovdqa YMMWORD PTR[64+rsp],ymm10 - vpalignr ymm8,ymm0,ymm7,8 - add rbx,QWORD PTR[((96+256))+rsp] - and r12,r10 - rorx r13,r10,41 - vpalignr ymm11,ymm4,ymm3,8 - rorx r15,r10,18 - lea rcx,QWORD PTR[r14*1+rcx] - lea rbx,QWORD PTR[r12*1+rbx] - vpsrlq ymm10,ymm8,1 - andn r12,r10,rax - xor r13,r15 - rorx r14,r10,14 - vpaddq ymm7,ymm7,ymm11 - vpsrlq ymm11,ymm8,7 - lea rbx,QWORD PTR[r12*1+rbx] - xor r13,r14 - mov r15,rcx - vpsllq ymm9,ymm8,56 - vpxor ymm8,ymm11,ymm10 - rorx r12,rcx,39 - lea rbx,QWORD PTR[r13*1+rbx] - xor r15,rdx - vpsrlq ymm10,ymm10,7 - vpxor ymm8,ymm8,ymm9 - rorx r14,rcx,34 - rorx r13,rcx,28 - lea r9,QWORD PTR[rbx*1+r9] - vpsllq ymm9,ymm9,7 - vpxor ymm8,ymm8,ymm10 - and rdi,r15 - xor r14,r12 - xor rdi,rdx - vpsrlq ymm11,ymm6,6 - vpxor ymm8,ymm8,ymm9 - xor r14,r13 - lea rbx,QWORD PTR[rdi*1+rbx] - mov r12,r10 - vpsllq ymm10,ymm6,3 - vpaddq ymm7,ymm7,ymm8 - add rax,QWORD PTR[((104+256))+rsp] - and r12,r9 - rorx r13,r9,41 - vpsrlq ymm9,ymm6,19 - vpxor ymm11,ymm11,ymm10 - rorx rdi,r9,18 - lea rbx,QWORD PTR[r14*1+rbx] - lea rax,QWORD PTR[r12*1+rax] - vpsllq ymm10,ymm10,42 - vpxor ymm11,ymm11,ymm9 - andn r12,r9,r11 - xor r13,rdi - rorx r14,r9,14 - vpsrlq ymm9,ymm9,42 - vpxor ymm11,ymm11,ymm10 - lea rax,QWORD PTR[r12*1+rax] - xor r13,r14 - mov rdi,rbx - vpxor ymm11,ymm11,ymm9 - rorx r12,rbx,39 - lea rax,QWORD PTR[r13*1+rax] - xor rdi,rcx - vpaddq ymm7,ymm7,ymm11 - rorx r14,rbx,34 - rorx r13,rbx,28 - lea r8,QWORD PTR[rax*1+r8] - vpaddq ymm10,ymm7,YMMWORD PTR[96+rbp] - and r15,rdi - xor r14,r12 - xor r15,rcx - xor r14,r13 - lea rax,QWORD PTR[r15*1+rax] - mov r12,r9 - vmovdqa YMMWORD PTR[96+rsp],ymm10 - lea rbp,QWORD PTR[256+rbp] - cmp BYTE PTR[((-121))+rbp],0 - jne $L$avx2_00_47 - add r11,QWORD PTR[((0+128))+rsp] - and r12,r8 - rorx r13,r8,41 - rorx r15,r8,18 - lea rax,QWORD PTR[r14*1+rax] - lea r11,QWORD PTR[r12*1+r11] - andn r12,r8,r10 - xor r13,r15 - rorx r14,r8,14 - lea r11,QWORD PTR[r12*1+r11] - xor r13,r14 - mov r15,rax - rorx r12,rax,39 - lea r11,QWORD PTR[r13*1+r11] - xor r15,rbx - rorx r14,rax,34 - rorx r13,rax,28 - lea rdx,QWORD PTR[r11*1+rdx] - and rdi,r15 - xor r14,r12 - xor rdi,rbx - xor r14,r13 - lea r11,QWORD PTR[rdi*1+r11] - mov r12,r8 - add r10,QWORD PTR[((8+128))+rsp] - and r12,rdx - rorx r13,rdx,41 - rorx rdi,rdx,18 - lea r11,QWORD PTR[r14*1+r11] - lea r10,QWORD PTR[r12*1+r10] - andn r12,rdx,r9 - xor r13,rdi - rorx r14,rdx,14 - lea r10,QWORD PTR[r12*1+r10] - xor r13,r14 - mov rdi,r11 - rorx r12,r11,39 - lea r10,QWORD PTR[r13*1+r10] - xor rdi,rax - rorx r14,r11,34 - rorx r13,r11,28 - lea rcx,QWORD PTR[r10*1+rcx] - and r15,rdi - xor r14,r12 - xor r15,rax - xor r14,r13 - lea r10,QWORD PTR[r15*1+r10] - mov r12,rdx - add r9,QWORD PTR[((32+128))+rsp] - and r12,rcx - rorx r13,rcx,41 - rorx r15,rcx,18 - lea r10,QWORD PTR[r14*1+r10] - lea r9,QWORD PTR[r12*1+r9] - andn r12,rcx,r8 - xor r13,r15 - rorx r14,rcx,14 - lea r9,QWORD PTR[r12*1+r9] - xor r13,r14 - mov r15,r10 - rorx r12,r10,39 - lea r9,QWORD PTR[r13*1+r9] - xor r15,r11 - rorx r14,r10,34 - rorx r13,r10,28 - lea rbx,QWORD PTR[r9*1+rbx] - and rdi,r15 - xor r14,r12 - xor rdi,r11 - xor r14,r13 - lea r9,QWORD PTR[rdi*1+r9] - mov r12,rcx - add r8,QWORD PTR[((40+128))+rsp] - and r12,rbx - rorx r13,rbx,41 - rorx rdi,rbx,18 - lea r9,QWORD PTR[r14*1+r9] - lea r8,QWORD PTR[r12*1+r8] - andn r12,rbx,rdx - xor r13,rdi - rorx r14,rbx,14 - lea r8,QWORD PTR[r12*1+r8] - xor r13,r14 - mov rdi,r9 - rorx r12,r9,39 - lea r8,QWORD PTR[r13*1+r8] - xor rdi,r10 - rorx r14,r9,34 - rorx r13,r9,28 - lea rax,QWORD PTR[r8*1+rax] - and r15,rdi - xor r14,r12 - xor r15,r10 - xor r14,r13 - lea r8,QWORD PTR[r15*1+r8] - mov r12,rbx - add rdx,QWORD PTR[((64+128))+rsp] - and r12,rax - rorx r13,rax,41 - rorx r15,rax,18 - lea r8,QWORD PTR[r14*1+r8] - lea rdx,QWORD PTR[r12*1+rdx] - andn r12,rax,rcx - xor r13,r15 - rorx r14,rax,14 - lea rdx,QWORD PTR[r12*1+rdx] - xor r13,r14 - mov r15,r8 - rorx r12,r8,39 - lea rdx,QWORD PTR[r13*1+rdx] - xor r15,r9 - rorx r14,r8,34 - rorx r13,r8,28 - lea r11,QWORD PTR[rdx*1+r11] - and rdi,r15 - xor r14,r12 - xor rdi,r9 - xor r14,r13 - lea rdx,QWORD PTR[rdi*1+rdx] - mov r12,rax - add rcx,QWORD PTR[((72+128))+rsp] - and r12,r11 - rorx r13,r11,41 - rorx rdi,r11,18 - lea rdx,QWORD PTR[r14*1+rdx] - lea rcx,QWORD PTR[r12*1+rcx] - andn r12,r11,rbx - xor r13,rdi - rorx r14,r11,14 - lea rcx,QWORD PTR[r12*1+rcx] - xor r13,r14 - mov rdi,rdx - rorx r12,rdx,39 - lea rcx,QWORD PTR[r13*1+rcx] - xor rdi,r8 - rorx r14,rdx,34 - rorx r13,rdx,28 - lea r10,QWORD PTR[rcx*1+r10] - and r15,rdi - xor r14,r12 - xor r15,r8 - xor r14,r13 - lea rcx,QWORD PTR[r15*1+rcx] - mov r12,r11 - add rbx,QWORD PTR[((96+128))+rsp] - and r12,r10 - rorx r13,r10,41 - rorx r15,r10,18 - lea rcx,QWORD PTR[r14*1+rcx] - lea rbx,QWORD PTR[r12*1+rbx] - andn r12,r10,rax - xor r13,r15 - rorx r14,r10,14 - lea rbx,QWORD PTR[r12*1+rbx] - xor r13,r14 - mov r15,rcx - rorx r12,rcx,39 - lea rbx,QWORD PTR[r13*1+rbx] - xor r15,rdx - rorx r14,rcx,34 - rorx r13,rcx,28 - lea r9,QWORD PTR[rbx*1+r9] - and rdi,r15 - xor r14,r12 - xor rdi,rdx - xor r14,r13 - lea rbx,QWORD PTR[rdi*1+rbx] - mov r12,r10 - add rax,QWORD PTR[((104+128))+rsp] - and r12,r9 - rorx r13,r9,41 - rorx rdi,r9,18 - lea rbx,QWORD PTR[r14*1+rbx] - lea rax,QWORD PTR[r12*1+rax] - andn r12,r9,r11 - xor r13,rdi - rorx r14,r9,14 - lea rax,QWORD PTR[r12*1+rax] - xor r13,r14 - mov rdi,rbx - rorx r12,rbx,39 - lea rax,QWORD PTR[r13*1+rax] - xor rdi,rcx - rorx r14,rbx,34 - rorx r13,rbx,28 - lea r8,QWORD PTR[rax*1+r8] - and r15,rdi - xor r14,r12 - xor r15,rcx - xor r14,r13 - lea rax,QWORD PTR[r15*1+rax] - mov r12,r9 - add r11,QWORD PTR[rsp] - and r12,r8 - rorx r13,r8,41 - rorx r15,r8,18 - lea rax,QWORD PTR[r14*1+rax] - lea r11,QWORD PTR[r12*1+r11] - andn r12,r8,r10 - xor r13,r15 - rorx r14,r8,14 - lea r11,QWORD PTR[r12*1+r11] - xor r13,r14 - mov r15,rax - rorx r12,rax,39 - lea r11,QWORD PTR[r13*1+r11] - xor r15,rbx - rorx r14,rax,34 - rorx r13,rax,28 - lea rdx,QWORD PTR[r11*1+rdx] - and rdi,r15 - xor r14,r12 - xor rdi,rbx - xor r14,r13 - lea r11,QWORD PTR[rdi*1+r11] - mov r12,r8 - add r10,QWORD PTR[8+rsp] - and r12,rdx - rorx r13,rdx,41 - rorx rdi,rdx,18 - lea r11,QWORD PTR[r14*1+r11] - lea r10,QWORD PTR[r12*1+r10] - andn r12,rdx,r9 - xor r13,rdi - rorx r14,rdx,14 - lea r10,QWORD PTR[r12*1+r10] - xor r13,r14 - mov rdi,r11 - rorx r12,r11,39 - lea r10,QWORD PTR[r13*1+r10] - xor rdi,rax - rorx r14,r11,34 - rorx r13,r11,28 - lea rcx,QWORD PTR[r10*1+rcx] - and r15,rdi - xor r14,r12 - xor r15,rax - xor r14,r13 - lea r10,QWORD PTR[r15*1+r10] - mov r12,rdx - add r9,QWORD PTR[32+rsp] - and r12,rcx - rorx r13,rcx,41 - rorx r15,rcx,18 - lea r10,QWORD PTR[r14*1+r10] - lea r9,QWORD PTR[r12*1+r9] - andn r12,rcx,r8 - xor r13,r15 - rorx r14,rcx,14 - lea r9,QWORD PTR[r12*1+r9] - xor r13,r14 - mov r15,r10 - rorx r12,r10,39 - lea r9,QWORD PTR[r13*1+r9] - xor r15,r11 - rorx r14,r10,34 - rorx r13,r10,28 - lea rbx,QWORD PTR[r9*1+rbx] - and rdi,r15 - xor r14,r12 - xor rdi,r11 - xor r14,r13 - lea r9,QWORD PTR[rdi*1+r9] - mov r12,rcx - add r8,QWORD PTR[40+rsp] - and r12,rbx - rorx r13,rbx,41 - rorx rdi,rbx,18 - lea r9,QWORD PTR[r14*1+r9] - lea r8,QWORD PTR[r12*1+r8] - andn r12,rbx,rdx - xor r13,rdi - rorx r14,rbx,14 - lea r8,QWORD PTR[r12*1+r8] - xor r13,r14 - mov rdi,r9 - rorx r12,r9,39 - lea r8,QWORD PTR[r13*1+r8] - xor rdi,r10 - rorx r14,r9,34 - rorx r13,r9,28 - lea rax,QWORD PTR[r8*1+rax] - and r15,rdi - xor r14,r12 - xor r15,r10 - xor r14,r13 - lea r8,QWORD PTR[r15*1+r8] - mov r12,rbx - add rdx,QWORD PTR[64+rsp] - and r12,rax - rorx r13,rax,41 - rorx r15,rax,18 - lea r8,QWORD PTR[r14*1+r8] - lea rdx,QWORD PTR[r12*1+rdx] - andn r12,rax,rcx - xor r13,r15 - rorx r14,rax,14 - lea rdx,QWORD PTR[r12*1+rdx] - xor r13,r14 - mov r15,r8 - rorx r12,r8,39 - lea rdx,QWORD PTR[r13*1+rdx] - xor r15,r9 - rorx r14,r8,34 - rorx r13,r8,28 - lea r11,QWORD PTR[rdx*1+r11] - and rdi,r15 - xor r14,r12 - xor rdi,r9 - xor r14,r13 - lea rdx,QWORD PTR[rdi*1+rdx] - mov r12,rax - add rcx,QWORD PTR[72+rsp] - and r12,r11 - rorx r13,r11,41 - rorx rdi,r11,18 - lea rdx,QWORD PTR[r14*1+rdx] - lea rcx,QWORD PTR[r12*1+rcx] - andn r12,r11,rbx - xor r13,rdi - rorx r14,r11,14 - lea rcx,QWORD PTR[r12*1+rcx] - xor r13,r14 - mov rdi,rdx - rorx r12,rdx,39 - lea rcx,QWORD PTR[r13*1+rcx] - xor rdi,r8 - rorx r14,rdx,34 - rorx r13,rdx,28 - lea r10,QWORD PTR[rcx*1+r10] - and r15,rdi - xor r14,r12 - xor r15,r8 - xor r14,r13 - lea rcx,QWORD PTR[r15*1+rcx] - mov r12,r11 - add rbx,QWORD PTR[96+rsp] - and r12,r10 - rorx r13,r10,41 - rorx r15,r10,18 - lea rcx,QWORD PTR[r14*1+rcx] - lea rbx,QWORD PTR[r12*1+rbx] - andn r12,r10,rax - xor r13,r15 - rorx r14,r10,14 - lea rbx,QWORD PTR[r12*1+rbx] - xor r13,r14 - mov r15,rcx - rorx r12,rcx,39 - lea rbx,QWORD PTR[r13*1+rbx] - xor r15,rdx - rorx r14,rcx,34 - rorx r13,rcx,28 - lea r9,QWORD PTR[rbx*1+r9] - and rdi,r15 - xor r14,r12 - xor rdi,rdx - xor r14,r13 - lea rbx,QWORD PTR[rdi*1+rbx] - mov r12,r10 - add rax,QWORD PTR[104+rsp] - and r12,r9 - rorx r13,r9,41 - rorx rdi,r9,18 - lea rbx,QWORD PTR[r14*1+rbx] - lea rax,QWORD PTR[r12*1+rax] - andn r12,r9,r11 - xor r13,rdi - rorx r14,r9,14 - lea rax,QWORD PTR[r12*1+rax] - xor r13,r14 - mov rdi,rbx - rorx r12,rbx,39 - lea rax,QWORD PTR[r13*1+rax] - xor rdi,rcx - rorx r14,rbx,34 - rorx r13,rbx,28 - lea r8,QWORD PTR[rax*1+r8] - and r15,rdi - xor r14,r12 - xor r15,rcx - xor r14,r13 - lea rax,QWORD PTR[r15*1+rax] - mov r12,r9 - mov rdi,QWORD PTR[1280+rsp] - add rax,r14 - - lea rbp,QWORD PTR[1152+rsp] - - add rax,QWORD PTR[rdi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - add r10,QWORD PTR[48+rdi] - add r11,QWORD PTR[56+rdi] - - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - - cmp rsi,QWORD PTR[144+rbp] - je $L$done_avx2 - - xor r14,r14 - mov rdi,rbx - xor rdi,rcx - mov r12,r9 - jmp $L$ower_avx2 -ALIGN 16 -$L$ower_avx2:: - add r11,QWORD PTR[((0+16))+rbp] - and r12,r8 - rorx r13,r8,41 - rorx r15,r8,18 - lea rax,QWORD PTR[r14*1+rax] - lea r11,QWORD PTR[r12*1+r11] - andn r12,r8,r10 - xor r13,r15 - rorx r14,r8,14 - lea r11,QWORD PTR[r12*1+r11] - xor r13,r14 - mov r15,rax - rorx r12,rax,39 - lea r11,QWORD PTR[r13*1+r11] - xor r15,rbx - rorx r14,rax,34 - rorx r13,rax,28 - lea rdx,QWORD PTR[r11*1+rdx] - and rdi,r15 - xor r14,r12 - xor rdi,rbx - xor r14,r13 - lea r11,QWORD PTR[rdi*1+r11] - mov r12,r8 - add r10,QWORD PTR[((8+16))+rbp] - and r12,rdx - rorx r13,rdx,41 - rorx rdi,rdx,18 - lea r11,QWORD PTR[r14*1+r11] - lea r10,QWORD PTR[r12*1+r10] - andn r12,rdx,r9 - xor r13,rdi - rorx r14,rdx,14 - lea r10,QWORD PTR[r12*1+r10] - xor r13,r14 - mov rdi,r11 - rorx r12,r11,39 - lea r10,QWORD PTR[r13*1+r10] - xor rdi,rax - rorx r14,r11,34 - rorx r13,r11,28 - lea rcx,QWORD PTR[r10*1+rcx] - and r15,rdi - xor r14,r12 - xor r15,rax - xor r14,r13 - lea r10,QWORD PTR[r15*1+r10] - mov r12,rdx - add r9,QWORD PTR[((32+16))+rbp] - and r12,rcx - rorx r13,rcx,41 - rorx r15,rcx,18 - lea r10,QWORD PTR[r14*1+r10] - lea r9,QWORD PTR[r12*1+r9] - andn r12,rcx,r8 - xor r13,r15 - rorx r14,rcx,14 - lea r9,QWORD PTR[r12*1+r9] - xor r13,r14 - mov r15,r10 - rorx r12,r10,39 - lea r9,QWORD PTR[r13*1+r9] - xor r15,r11 - rorx r14,r10,34 - rorx r13,r10,28 - lea rbx,QWORD PTR[r9*1+rbx] - and rdi,r15 - xor r14,r12 - xor rdi,r11 - xor r14,r13 - lea r9,QWORD PTR[rdi*1+r9] - mov r12,rcx - add r8,QWORD PTR[((40+16))+rbp] - and r12,rbx - rorx r13,rbx,41 - rorx rdi,rbx,18 - lea r9,QWORD PTR[r14*1+r9] - lea r8,QWORD PTR[r12*1+r8] - andn r12,rbx,rdx - xor r13,rdi - rorx r14,rbx,14 - lea r8,QWORD PTR[r12*1+r8] - xor r13,r14 - mov rdi,r9 - rorx r12,r9,39 - lea r8,QWORD PTR[r13*1+r8] - xor rdi,r10 - rorx r14,r9,34 - rorx r13,r9,28 - lea rax,QWORD PTR[r8*1+rax] - and r15,rdi - xor r14,r12 - xor r15,r10 - xor r14,r13 - lea r8,QWORD PTR[r15*1+r8] - mov r12,rbx - add rdx,QWORD PTR[((64+16))+rbp] - and r12,rax - rorx r13,rax,41 - rorx r15,rax,18 - lea r8,QWORD PTR[r14*1+r8] - lea rdx,QWORD PTR[r12*1+rdx] - andn r12,rax,rcx - xor r13,r15 - rorx r14,rax,14 - lea rdx,QWORD PTR[r12*1+rdx] - xor r13,r14 - mov r15,r8 - rorx r12,r8,39 - lea rdx,QWORD PTR[r13*1+rdx] - xor r15,r9 - rorx r14,r8,34 - rorx r13,r8,28 - lea r11,QWORD PTR[rdx*1+r11] - and rdi,r15 - xor r14,r12 - xor rdi,r9 - xor r14,r13 - lea rdx,QWORD PTR[rdi*1+rdx] - mov r12,rax - add rcx,QWORD PTR[((72+16))+rbp] - and r12,r11 - rorx r13,r11,41 - rorx rdi,r11,18 - lea rdx,QWORD PTR[r14*1+rdx] - lea rcx,QWORD PTR[r12*1+rcx] - andn r12,r11,rbx - xor r13,rdi - rorx r14,r11,14 - lea rcx,QWORD PTR[r12*1+rcx] - xor r13,r14 - mov rdi,rdx - rorx r12,rdx,39 - lea rcx,QWORD PTR[r13*1+rcx] - xor rdi,r8 - rorx r14,rdx,34 - rorx r13,rdx,28 - lea r10,QWORD PTR[rcx*1+r10] - and r15,rdi - xor r14,r12 - xor r15,r8 - xor r14,r13 - lea rcx,QWORD PTR[r15*1+rcx] - mov r12,r11 - add rbx,QWORD PTR[((96+16))+rbp] - and r12,r10 - rorx r13,r10,41 - rorx r15,r10,18 - lea rcx,QWORD PTR[r14*1+rcx] - lea rbx,QWORD PTR[r12*1+rbx] - andn r12,r10,rax - xor r13,r15 - rorx r14,r10,14 - lea rbx,QWORD PTR[r12*1+rbx] - xor r13,r14 - mov r15,rcx - rorx r12,rcx,39 - lea rbx,QWORD PTR[r13*1+rbx] - xor r15,rdx - rorx r14,rcx,34 - rorx r13,rcx,28 - lea r9,QWORD PTR[rbx*1+r9] - and rdi,r15 - xor r14,r12 - xor rdi,rdx - xor r14,r13 - lea rbx,QWORD PTR[rdi*1+rbx] - mov r12,r10 - add rax,QWORD PTR[((104+16))+rbp] - and r12,r9 - rorx r13,r9,41 - rorx rdi,r9,18 - lea rbx,QWORD PTR[r14*1+rbx] - lea rax,QWORD PTR[r12*1+rax] - andn r12,r9,r11 - xor r13,rdi - rorx r14,r9,14 - lea rax,QWORD PTR[r12*1+rax] - xor r13,r14 - mov rdi,rbx - rorx r12,rbx,39 - lea rax,QWORD PTR[r13*1+rax] - xor rdi,rcx - rorx r14,rbx,34 - rorx r13,rbx,28 - lea r8,QWORD PTR[rax*1+r8] - and r15,rdi - xor r14,r12 - xor r15,rcx - xor r14,r13 - lea rax,QWORD PTR[r15*1+rax] - mov r12,r9 - lea rbp,QWORD PTR[((-128))+rbp] - cmp rbp,rsp - jae $L$ower_avx2 - - mov rdi,QWORD PTR[1280+rsp] - add rax,r14 - - lea rsp,QWORD PTR[1152+rsp] - - add rax,QWORD PTR[rdi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - lea rsi,QWORD PTR[256+rsi] - add r10,QWORD PTR[48+rdi] - mov r12,rsi - add r11,QWORD PTR[56+rdi] - cmp rsi,QWORD PTR[((128+16))+rsp] - - mov QWORD PTR[rdi],rax - cmove r12,rsp - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - - jbe $L$oop_avx2 - lea rbp,QWORD PTR[rsp] - -$L$done_avx2:: - lea rsp,QWORD PTR[rbp] - mov rsi,QWORD PTR[((128+24))+rsp] - vzeroupper - movaps xmm6,XMMWORD PTR[((128+32))+rsp] - movaps xmm7,XMMWORD PTR[((128+48))+rsp] - movaps xmm8,XMMWORD PTR[((128+64))+rsp] - movaps xmm9,XMMWORD PTR[((128+80))+rsp] - movaps xmm10,XMMWORD PTR[((128+96))+rsp] - movaps xmm11,XMMWORD PTR[((128+112))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_avx2:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha512_block_data_order_avx2:: -sha512_block_data_order_avx2 ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - lea r10,QWORD PTR[$L$avx2_shortcut] - cmp rbx,r10 - jb $L$not_in_avx2 - - and rax,-256*8 - add rax,1152 -$L$not_in_avx2:: - mov rsi,rax - mov rax,QWORD PTR[((128+24))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jb $L$in_prologue - - lea rsi,QWORD PTR[((128+32))+rsi] - lea rdi,QWORD PTR[512+r8] - mov ecx,12 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha512_block_data_order - DD imagerel $L$SEH_end_sha512_block_data_order - DD imagerel $L$SEH_info_sha512_block_data_order - DD imagerel $L$SEH_begin_sha512_block_data_order_xop - DD imagerel $L$SEH_end_sha512_block_data_order_xop - DD imagerel $L$SEH_info_sha512_block_data_order_xop - DD imagerel $L$SEH_begin_sha512_block_data_order_avx - DD imagerel $L$SEH_end_sha512_block_data_order_avx - DD imagerel $L$SEH_info_sha512_block_data_order_avx - DD imagerel $L$SEH_begin_sha512_block_data_order_avx2 - DD imagerel $L$SEH_end_sha512_block_data_order_avx2 - DD imagerel $L$SEH_info_sha512_block_data_order_avx2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha512_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue,imagerel $L$epilogue -$L$SEH_info_sha512_block_data_order_xop:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_xop,imagerel $L$epilogue_xop -$L$SEH_info_sha512_block_data_order_avx:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx,imagerel $L$epilogue_avx -$L$SEH_info_sha512_block_data_order_avx2:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_avx2,imagerel $L$epilogue_avx2 - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/whrlpool/wp-x86_64.asm b/deps/openssl/asm/x64-win32-masm/whrlpool/wp-x86_64.asm deleted file mode 100644 index fa5bfbc7b20cd6..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/whrlpool/wp-x86_64.asm +++ /dev/null @@ -1,974 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC whirlpool_block - -ALIGN 16 -whirlpool_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_whirlpool_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - mov r11,rsp - sub rsp,128+40 - and rsp,-64 - - lea r10,QWORD PTR[128+rsp] - mov QWORD PTR[r10],rdi - mov QWORD PTR[8+r10],rsi - mov QWORD PTR[16+r10],rdx - mov QWORD PTR[32+r10],r11 -$L$prologue:: - - mov rbx,r10 - lea rbp,QWORD PTR[$L$table] - - xor rcx,rcx - xor rdx,rdx - mov r8,QWORD PTR[rdi] - mov r9,QWORD PTR[8+rdi] - mov r10,QWORD PTR[16+rdi] - mov r11,QWORD PTR[24+rdi] - mov r12,QWORD PTR[32+rdi] - mov r13,QWORD PTR[40+rdi] - mov r14,QWORD PTR[48+rdi] - mov r15,QWORD PTR[56+rdi] -$L$outerloop:: - mov QWORD PTR[rsp],r8 - mov QWORD PTR[8+rsp],r9 - mov QWORD PTR[16+rsp],r10 - mov QWORD PTR[24+rsp],r11 - mov QWORD PTR[32+rsp],r12 - mov QWORD PTR[40+rsp],r13 - mov QWORD PTR[48+rsp],r14 - mov QWORD PTR[56+rsp],r15 - xor r8,QWORD PTR[rsi] - xor r9,QWORD PTR[8+rsi] - xor r10,QWORD PTR[16+rsi] - xor r11,QWORD PTR[24+rsi] - xor r12,QWORD PTR[32+rsi] - xor r13,QWORD PTR[40+rsi] - xor r14,QWORD PTR[48+rsi] - xor r15,QWORD PTR[56+rsi] - mov QWORD PTR[((64+0))+rsp],r8 - mov QWORD PTR[((64+8))+rsp],r9 - mov QWORD PTR[((64+16))+rsp],r10 - mov QWORD PTR[((64+24))+rsp],r11 - mov QWORD PTR[((64+32))+rsp],r12 - mov QWORD PTR[((64+40))+rsp],r13 - mov QWORD PTR[((64+48))+rsp],r14 - mov QWORD PTR[((64+56))+rsp],r15 - xor rsi,rsi - mov QWORD PTR[24+rbx],rsi - jmp $L$round -ALIGN 16 -$L$round:: - mov r8,QWORD PTR[4096+rsi*8+rbp] - mov eax,DWORD PTR[rsp] - mov ebx,DWORD PTR[4+rsp] - movzx ecx,al - movzx edx,ah - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[rsi*8+rbp] - mov r9,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((0+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - mov r10,QWORD PTR[6+rsi*8+rbp] - mov r11,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - mov r12,QWORD PTR[4+rsi*8+rbp] - mov r13,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((0+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - mov r14,QWORD PTR[2+rsi*8+rbp] - mov r15,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[rsi*8+rbp] - xor r10,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((8+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[6+rsi*8+rbp] - xor r12,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[4+rsi*8+rbp] - xor r14,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((8+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[2+rsi*8+rbp] - xor r8,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[rsi*8+rbp] - xor r11,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((16+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[6+rsi*8+rbp] - xor r13,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[4+rsi*8+rbp] - xor r15,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((16+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[2+rsi*8+rbp] - xor r9,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[rsi*8+rbp] - xor r12,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((24+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[6+rsi*8+rbp] - xor r14,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[4+rsi*8+rbp] - xor r8,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((24+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[2+rsi*8+rbp] - xor r10,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[rsi*8+rbp] - xor r13,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((32+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[6+rsi*8+rbp] - xor r15,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[4+rsi*8+rbp] - xor r9,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((32+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[2+rsi*8+rbp] - xor r11,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[rsi*8+rbp] - xor r14,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((40+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[6+rsi*8+rbp] - xor r8,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[4+rsi*8+rbp] - xor r10,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((40+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[2+rsi*8+rbp] - xor r12,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[rsi*8+rbp] - xor r15,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((48+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[6+rsi*8+rbp] - xor r9,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[4+rsi*8+rbp] - xor r11,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((48+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[2+rsi*8+rbp] - xor r13,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[rsi*8+rbp] - xor r8,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((56+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[6+rsi*8+rbp] - xor r10,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[4+rsi*8+rbp] - xor r12,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((56+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[2+rsi*8+rbp] - xor r14,QWORD PTR[1+rdi*8+rbp] - mov QWORD PTR[rsp],r8 - mov QWORD PTR[8+rsp],r9 - mov QWORD PTR[16+rsp],r10 - mov QWORD PTR[24+rsp],r11 - mov QWORD PTR[32+rsp],r12 - mov QWORD PTR[40+rsp],r13 - mov QWORD PTR[48+rsp],r14 - mov QWORD PTR[56+rsp],r15 - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[rsi*8+rbp] - xor r9,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+0+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[6+rsi*8+rbp] - xor r11,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[4+rsi*8+rbp] - xor r13,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+0+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[2+rsi*8+rbp] - xor r15,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[rsi*8+rbp] - xor r10,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+8+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[6+rsi*8+rbp] - xor r12,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[4+rsi*8+rbp] - xor r14,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+8+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[2+rsi*8+rbp] - xor r8,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[rsi*8+rbp] - xor r11,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+16+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[6+rsi*8+rbp] - xor r13,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[4+rsi*8+rbp] - xor r15,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+16+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[2+rsi*8+rbp] - xor r9,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[rsi*8+rbp] - xor r12,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+24+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[6+rsi*8+rbp] - xor r14,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[4+rsi*8+rbp] - xor r8,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+24+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[2+rsi*8+rbp] - xor r10,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[rsi*8+rbp] - xor r13,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+32+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[6+rsi*8+rbp] - xor r15,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[4+rsi*8+rbp] - xor r9,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+32+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[2+rsi*8+rbp] - xor r11,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[rsi*8+rbp] - xor r14,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+40+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[6+rsi*8+rbp] - xor r8,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[4+rsi*8+rbp] - xor r10,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+40+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[2+rsi*8+rbp] - xor r12,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[rsi*8+rbp] - xor r15,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+48+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[6+rsi*8+rbp] - xor r9,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[4+rsi*8+rbp] - xor r11,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+48+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[2+rsi*8+rbp] - xor r13,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[rsi*8+rbp] - xor r8,QWORD PTR[7+rdi*8+rbp] - - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[6+rsi*8+rbp] - xor r10,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[4+rsi*8+rbp] - xor r12,QWORD PTR[3+rdi*8+rbp] - - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[2+rsi*8+rbp] - xor r14,QWORD PTR[1+rdi*8+rbp] - lea rbx,QWORD PTR[128+rsp] - mov rsi,QWORD PTR[24+rbx] - add rsi,1 - cmp rsi,10 - je $L$roundsdone - - mov QWORD PTR[24+rbx],rsi - mov QWORD PTR[((64+0))+rsp],r8 - mov QWORD PTR[((64+8))+rsp],r9 - mov QWORD PTR[((64+16))+rsp],r10 - mov QWORD PTR[((64+24))+rsp],r11 - mov QWORD PTR[((64+32))+rsp],r12 - mov QWORD PTR[((64+40))+rsp],r13 - mov QWORD PTR[((64+48))+rsp],r14 - mov QWORD PTR[((64+56))+rsp],r15 - jmp $L$round -ALIGN 16 -$L$roundsdone:: - mov rdi,QWORD PTR[rbx] - mov rsi,QWORD PTR[8+rbx] - mov rax,QWORD PTR[16+rbx] - xor r8,QWORD PTR[rsi] - xor r9,QWORD PTR[8+rsi] - xor r10,QWORD PTR[16+rsi] - xor r11,QWORD PTR[24+rsi] - xor r12,QWORD PTR[32+rsi] - xor r13,QWORD PTR[40+rsi] - xor r14,QWORD PTR[48+rsi] - xor r15,QWORD PTR[56+rsi] - xor r8,QWORD PTR[rdi] - xor r9,QWORD PTR[8+rdi] - xor r10,QWORD PTR[16+rdi] - xor r11,QWORD PTR[24+rdi] - xor r12,QWORD PTR[32+rdi] - xor r13,QWORD PTR[40+rdi] - xor r14,QWORD PTR[48+rdi] - xor r15,QWORD PTR[56+rdi] - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - lea rsi,QWORD PTR[64+rsi] - sub rax,1 - jz $L$alldone - mov QWORD PTR[8+rbx],rsi - mov QWORD PTR[16+rbx],rax - jmp $L$outerloop -$L$alldone:: - mov rsi,QWORD PTR[32+rbx] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_whirlpool_block:: -whirlpool_block ENDP - -ALIGN 64 - -$L$table:: -DB 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -DB 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -DB 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -DB 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -DB 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -DB 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -DB 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -DB 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -DB 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -DB 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -DB 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -DB 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -DB 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -DB 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -DB 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -DB 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -DB 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -DB 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -DB 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -DB 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -DB 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -DB 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -DB 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -DB 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -DB 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -DB 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -DB 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -DB 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -DB 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -DB 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -DB 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -DB 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -DB 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -DB 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -DB 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -DB 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -DB 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -DB 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -DB 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -DB 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -DB 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -DB 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -DB 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -DB 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -DB 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -DB 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -DB 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -DB 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -DB 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -DB 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -DB 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -DB 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -DB 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -DB 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -DB 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -DB 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -DB 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -DB 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -DB 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -DB 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -DB 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -DB 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -DB 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -DB 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -DB 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -DB 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -DB 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -DB 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -DB 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -DB 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -DB 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -DB 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -DB 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -DB 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -DB 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -DB 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -DB 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -DB 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -DB 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -DB 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -DB 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -DB 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -DB 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -DB 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -DB 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -DB 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -DB 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -DB 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -DB 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -DB 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -DB 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -DB 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -DB 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -DB 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -DB 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -DB 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -DB 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -DB 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -DB 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -DB 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -DB 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -DB 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -DB 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -DB 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -DB 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -DB 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -DB 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -DB 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -DB 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -DB 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -DB 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -DB 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -DB 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -DB 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -DB 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -DB 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -DB 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -DB 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -DB 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -DB 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -DB 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -DB 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -DB 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -DB 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -DB 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -DB 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -DB 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -DB 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -DB 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -DB 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -DB 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -DB 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -DB 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -DB 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -DB 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -DB 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -DB 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -DB 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -DB 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -DB 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -DB 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -DB 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -DB 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -DB 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -DB 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -DB 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -DB 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -DB 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -DB 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -DB 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -DB 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -DB 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -DB 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -DB 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -DB 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -DB 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -DB 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -DB 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -DB 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -DB 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -DB 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -DB 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -DB 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -DB 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -DB 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -DB 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -DB 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -DB 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -DB 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -DB 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -DB 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -DB 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -DB 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -DB 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -DB 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -DB 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -DB 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -DB 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -DB 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -DB 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -DB 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -DB 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -DB 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -DB 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -DB 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -DB 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -DB 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -DB 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -DB 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -DB 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -DB 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -DB 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -DB 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -DB 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -DB 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -DB 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -DB 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -DB 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -DB 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -DB 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -DB 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -DB 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -DB 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -DB 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -DB 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -DB 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -DB 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -DB 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -DB 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -DB 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -DB 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -DB 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -DB 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -DB 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -DB 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -DB 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -DB 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -DB 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -DB 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -DB 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -DB 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -DB 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -DB 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -DB 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -DB 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -DB 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -DB 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -DB 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -DB 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -DB 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -DB 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -DB 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -DB 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -DB 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -DB 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -DB 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -DB 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -DB 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -DB 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -DB 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -DB 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -DB 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -DB 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -DB 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -DB 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -DB 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -DB 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -DB 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -DB 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -DB 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -DB 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -DB 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -DB 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -DB 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -DB 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -DB 24,35,198,232,135,184,1,79 -DB 54,166,210,245,121,111,145,82 -DB 96,188,155,142,163,12,123,53 -DB 29,224,215,194,46,75,254,87 -DB 21,119,55,229,159,240,74,218 -DB 88,201,41,10,177,160,107,133 -DB 189,93,16,244,203,62,5,103 -DB 228,39,65,139,167,125,149,216 -DB 251,238,124,102,221,23,71,158 -DB 202,45,191,7,173,90,131,51 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[((128+32))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_whirlpool_block - DD imagerel $L$SEH_end_whirlpool_block - DD imagerel $L$SEH_info_whirlpool_block - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_whirlpool_block:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm/x64-win32-masm/x86_64cpuid.asm b/deps/openssl/asm/x64-win32-masm/x86_64cpuid.asm deleted file mode 100644 index 69532e09fbece5..00000000000000 --- a/deps/openssl/asm/x64-win32-masm/x86_64cpuid.asm +++ /dev/null @@ -1,280 +0,0 @@ -OPTION DOTNAME -EXTERN OPENSSL_cpuid_setup:NEAR - -.CRT$XCU SEGMENT READONLY ALIGN(8) - DQ OPENSSL_cpuid_setup - - -.CRT$XCU ENDS -_DATA SEGMENT -COMM OPENSSL_ia32cap_P:DWORD:4 - -_DATA ENDS -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC OPENSSL_atomic_add - -ALIGN 16 -OPENSSL_atomic_add PROC PUBLIC - mov eax,DWORD PTR[rcx] -$L$spin:: lea r8,QWORD PTR[rax*1+rdx] -DB 0f0h - cmpxchg DWORD PTR[rcx],r8d - jne $L$spin - mov eax,r8d -DB 048h,098h - DB 0F3h,0C3h ;repret -OPENSSL_atomic_add ENDP - -PUBLIC OPENSSL_rdtsc - -ALIGN 16 -OPENSSL_rdtsc PROC PUBLIC - rdtsc - shl rdx,32 - or rax,rdx - DB 0F3h,0C3h ;repret -OPENSSL_rdtsc ENDP - -PUBLIC OPENSSL_ia32_cpuid - -ALIGN 16 -OPENSSL_ia32_cpuid PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_OPENSSL_ia32_cpuid:: - mov rdi,rcx - - - mov r8,rbx - - xor eax,eax - mov DWORD PTR[8+rdi],eax - cpuid - mov r11d,eax - - xor eax,eax - cmp ebx,0756e6547h - setne al - mov r9d,eax - cmp edx,049656e69h - setne al - or r9d,eax - cmp ecx,06c65746eh - setne al - or r9d,eax - jz $L$intel - - cmp ebx,068747541h - setne al - mov r10d,eax - cmp edx,069746E65h - setne al - or r10d,eax - cmp ecx,0444D4163h - setne al - or r10d,eax - jnz $L$intel - - - mov eax,080000000h - cpuid - cmp eax,080000001h - jb $L$intel - mov r10d,eax - mov eax,080000001h - cpuid - or r9d,ecx - and r9d,000000801h - - cmp r10d,080000008h - jb $L$intel - - mov eax,080000008h - cpuid - movzx r10,cl - inc r10 - - mov eax,1 - cpuid - bt edx,28 - jnc $L$generic - shr ebx,16 - cmp bl,r10b - ja $L$generic - and edx,0efffffffh - jmp $L$generic - -$L$intel:: - cmp r11d,4 - mov r10d,-1 - jb $L$nocacheinfo - - mov eax,4 - mov ecx,0 - cpuid - mov r10d,eax - shr r10d,14 - and r10d,0fffh - -$L$nocacheinfo:: - mov eax,1 - cpuid - and edx,0bfefffffh - cmp r9d,0 - jne $L$notintel - or edx,040000000h - and ah,15 - cmp ah,15 - jne $L$notP4 - or edx,000100000h -$L$notP4:: - cmp ah,6 - jne $L$notintel - and eax,00fff0ff0h - cmp eax,000050670h - je $L$knights - cmp eax,000080650h - jne $L$notintel -$L$knights:: - and ecx,0fbffffffh - -$L$notintel:: - bt edx,28 - jnc $L$generic - and edx,0efffffffh - cmp r10d,0 - je $L$generic - - or edx,010000000h - shr ebx,16 - cmp bl,1 - ja $L$generic - and edx,0efffffffh -$L$generic:: - and r9d,000000800h - and ecx,0fffff7ffh - or r9d,ecx - - mov r10d,edx - - cmp r11d,7 - jb $L$no_extended_info - mov eax,7 - xor ecx,ecx - cpuid - bt r9d,26 - jc $L$notknights - and ebx,0fff7ffffh -$L$notknights:: - mov DWORD PTR[8+rdi],ebx -$L$no_extended_info:: - - bt r9d,27 - jnc $L$clear_avx - xor ecx,ecx -DB 00fh,001h,0d0h - and eax,6 - cmp eax,6 - je $L$done -$L$clear_avx:: - mov eax,0efffe7ffh - and r9d,eax - and DWORD PTR[8+rdi],0ffffffdfh -$L$done:: - shl r9,32 - mov eax,r10d - mov rbx,r8 - or rax,r9 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_OPENSSL_ia32_cpuid:: -OPENSSL_ia32_cpuid ENDP - -PUBLIC OPENSSL_cleanse - -ALIGN 16 -OPENSSL_cleanse PROC PUBLIC - xor rax,rax - cmp rdx,15 - jae $L$ot - cmp rdx,0 - je $L$ret -$L$ittle:: - mov BYTE PTR[rcx],al - sub rdx,1 - lea rcx,QWORD PTR[1+rcx] - jnz $L$ittle -$L$ret:: - DB 0F3h,0C3h ;repret -ALIGN 16 -$L$ot:: - test rcx,7 - jz $L$aligned - mov BYTE PTR[rcx],al - lea rdx,QWORD PTR[((-1))+rdx] - lea rcx,QWORD PTR[1+rcx] - jmp $L$ot -$L$aligned:: - mov QWORD PTR[rcx],rax - lea rdx,QWORD PTR[((-8))+rdx] - test rdx,-8 - lea rcx,QWORD PTR[8+rcx] - jnz $L$aligned - cmp rdx,0 - jne $L$ittle - DB 0F3h,0C3h ;repret -OPENSSL_cleanse ENDP -PUBLIC OPENSSL_wipe_cpu - -ALIGN 16 -OPENSSL_wipe_cpu PROC PUBLIC - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - xor rcx,rcx - xor rdx,rdx - xor r8,r8 - xor r9,r9 - xor r10,r10 - xor r11,r11 - lea rax,QWORD PTR[8+rsp] - DB 0F3h,0C3h ;repret -OPENSSL_wipe_cpu ENDP -PUBLIC OPENSSL_ia32_rdrand - -ALIGN 16 -OPENSSL_ia32_rdrand PROC PUBLIC - mov ecx,8 -$L$oop_rdrand:: -DB 72,15,199,240 - jc $L$break_rdrand - loop $L$oop_rdrand -$L$break_rdrand:: - cmp rax,0 - cmove rax,rcx - DB 0F3h,0C3h ;repret -OPENSSL_ia32_rdrand ENDP - -PUBLIC OPENSSL_ia32_rdseed - -ALIGN 16 -OPENSSL_ia32_rdseed PROC PUBLIC - mov ecx,8 -$L$oop_rdseed:: -DB 72,15,199,248 - jc $L$break_rdseed - loop $L$oop_rdseed -$L$break_rdseed:: - cmp rax,0 - cmove rax,rcx - DB 0F3h,0C3h ;repret -OPENSSL_ia32_rdseed ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-elf-gas/aes/aes-586.s b/deps/openssl/asm/x86-elf-gas/aes/aes-586.s deleted file mode 100644 index 2d7c1fd09df5a9..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/aes/aes-586.s +++ /dev/null @@ -1,3244 +0,0 @@ -.file "aes-586.s" -.text -.type _x86_AES_encrypt_compact,@function -.align 16 -_x86_AES_encrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 16 -.L000loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ecx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ecx,%edi - xorl %esi,%ecx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ecx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%ecx - andl %edx,%ebp - leal (%edx,%edx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %edx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %edx,%edi - xorl %esi,%edx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%edx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%edx - andl %eax,%ebp - leal (%eax,%eax,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %eax,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %eax,%edi - xorl %esi,%eax - rorl $24,%edi - xorl %ebp,%esi - roll $24,%eax - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%eax - andl %ebx,%ebp - leal (%ebx,%ebx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ebx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ebx,%edi - xorl %esi,%ebx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ebx - xorl %edi,%esi - xorl %esi,%ebx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L000loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.size _x86_AES_encrypt_compact,.-_x86_AES_encrypt_compact -.type _sse_AES_encrypt_compact,@function -.align 16 -_sse_AES_encrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 16 -.L001loop: - pshufw $8,%mm0,%mm1 - pshufw $13,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $13,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $8,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $8,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - movd %mm2,%eax - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - movd %mm6,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $8,%esi - shrl $16,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shrl $16,%eax - movd %ecx,%mm1 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - andl $255,%eax - orl %esi,%ecx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - andl $255,%ebx - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%ecx - shll $16,%eax - movzbl -128(%ebp,%edi,1),%esi - orl %eax,%edx - shll $8,%esi - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - orl %ebx,%edx - movl 20(%esp),%edi - movd %ecx,%mm4 - movd %edx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja .L002out - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - movq %mm0,%mm1 - movq %mm4,%mm5 - pcmpgtb %mm0,%mm3 - pcmpgtb %mm4,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - pshufw $177,%mm0,%mm2 - pshufw $177,%mm4,%mm6 - paddb %mm0,%mm0 - paddb %mm4,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pshufw $177,%mm2,%mm3 - pshufw $177,%mm6,%mm7 - pxor %mm0,%mm1 - pxor %mm4,%mm5 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm3,%mm2 - movq %mm7,%mm6 - pslld $8,%mm3 - pslld $8,%mm7 - psrld $24,%mm2 - psrld $24,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - psrld $8,%mm1 - psrld $8,%mm5 - movl -128(%ebp),%eax - pslld $24,%mm3 - pslld $24,%mm7 - movl -64(%ebp),%ebx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl (%ebp),%ecx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl 64(%ebp),%edx - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp .L001loop -.align 16 -.L002out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.size _sse_AES_encrypt_compact,.-_sse_AES_encrypt_compact -.type _x86_AES_encrypt,@function -.align 16 -_x86_AES_encrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 16 -.L003loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl (%ebp,%esi,8),%esi - movzbl %ch,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movzbl %bh,%edi - xorl 1(%ebp,%edi,8),%esi - - movl 20(%esp),%edi - movl (%ebp,%edx,8),%edx - movzbl %ah,%eax - xorl 3(%ebp,%eax,8),%edx - movl 4(%esp),%eax - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - xorl 1(%ebp,%ecx,8),%edx - movl %esi,%ecx - - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L003loop - movl %eax,%esi - andl $255,%esi - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %bh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %ch,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %dh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movzbl %bh,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movl 2(%ebp,%edx,8),%edx - andl $255,%edx - movzbl %ah,%eax - movl (%ebp,%eax,8),%eax - andl $65280,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movl (%ebp,%ebx,8),%ebx - andl $16711680,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movl 2(%ebp,%ecx,8),%ecx - andl $4278190080,%ecx - xorl %ecx,%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 64 -.LAES_Te: -.long 2774754246,2774754246 -.long 2222750968,2222750968 -.long 2574743534,2574743534 -.long 2373680118,2373680118 -.long 234025727,234025727 -.long 3177933782,3177933782 -.long 2976870366,2976870366 -.long 1422247313,1422247313 -.long 1345335392,1345335392 -.long 50397442,50397442 -.long 2842126286,2842126286 -.long 2099981142,2099981142 -.long 436141799,436141799 -.long 1658312629,1658312629 -.long 3870010189,3870010189 -.long 2591454956,2591454956 -.long 1170918031,1170918031 -.long 2642575903,2642575903 -.long 1086966153,1086966153 -.long 2273148410,2273148410 -.long 368769775,368769775 -.long 3948501426,3948501426 -.long 3376891790,3376891790 -.long 200339707,200339707 -.long 3970805057,3970805057 -.long 1742001331,1742001331 -.long 4255294047,4255294047 -.long 3937382213,3937382213 -.long 3214711843,3214711843 -.long 4154762323,4154762323 -.long 2524082916,2524082916 -.long 1539358875,1539358875 -.long 3266819957,3266819957 -.long 486407649,486407649 -.long 2928907069,2928907069 -.long 1780885068,1780885068 -.long 1513502316,1513502316 -.long 1094664062,1094664062 -.long 49805301,49805301 -.long 1338821763,1338821763 -.long 1546925160,1546925160 -.long 4104496465,4104496465 -.long 887481809,887481809 -.long 150073849,150073849 -.long 2473685474,2473685474 -.long 1943591083,1943591083 -.long 1395732834,1395732834 -.long 1058346282,1058346282 -.long 201589768,201589768 -.long 1388824469,1388824469 -.long 1696801606,1696801606 -.long 1589887901,1589887901 -.long 672667696,672667696 -.long 2711000631,2711000631 -.long 251987210,251987210 -.long 3046808111,3046808111 -.long 151455502,151455502 -.long 907153956,907153956 -.long 2608889883,2608889883 -.long 1038279391,1038279391 -.long 652995533,652995533 -.long 1764173646,1764173646 -.long 3451040383,3451040383 -.long 2675275242,2675275242 -.long 453576978,453576978 -.long 2659418909,2659418909 -.long 1949051992,1949051992 -.long 773462580,773462580 -.long 756751158,756751158 -.long 2993581788,2993581788 -.long 3998898868,3998898868 -.long 4221608027,4221608027 -.long 4132590244,4132590244 -.long 1295727478,1295727478 -.long 1641469623,1641469623 -.long 3467883389,3467883389 -.long 2066295122,2066295122 -.long 1055122397,1055122397 -.long 1898917726,1898917726 -.long 2542044179,2542044179 -.long 4115878822,4115878822 -.long 1758581177,1758581177 -.long 0,0 -.long 753790401,753790401 -.long 1612718144,1612718144 -.long 536673507,536673507 -.long 3367088505,3367088505 -.long 3982187446,3982187446 -.long 3194645204,3194645204 -.long 1187761037,1187761037 -.long 3653156455,3653156455 -.long 1262041458,1262041458 -.long 3729410708,3729410708 -.long 3561770136,3561770136 -.long 3898103984,3898103984 -.long 1255133061,1255133061 -.long 1808847035,1808847035 -.long 720367557,720367557 -.long 3853167183,3853167183 -.long 385612781,385612781 -.long 3309519750,3309519750 -.long 3612167578,3612167578 -.long 1429418854,1429418854 -.long 2491778321,2491778321 -.long 3477423498,3477423498 -.long 284817897,284817897 -.long 100794884,100794884 -.long 2172616702,2172616702 -.long 4031795360,4031795360 -.long 1144798328,1144798328 -.long 3131023141,3131023141 -.long 3819481163,3819481163 -.long 4082192802,4082192802 -.long 4272137053,4272137053 -.long 3225436288,3225436288 -.long 2324664069,2324664069 -.long 2912064063,2912064063 -.long 3164445985,3164445985 -.long 1211644016,1211644016 -.long 83228145,83228145 -.long 3753688163,3753688163 -.long 3249976951,3249976951 -.long 1977277103,1977277103 -.long 1663115586,1663115586 -.long 806359072,806359072 -.long 452984805,452984805 -.long 250868733,250868733 -.long 1842533055,1842533055 -.long 1288555905,1288555905 -.long 336333848,336333848 -.long 890442534,890442534 -.long 804056259,804056259 -.long 3781124030,3781124030 -.long 2727843637,2727843637 -.long 3427026056,3427026056 -.long 957814574,957814574 -.long 1472513171,1472513171 -.long 4071073621,4071073621 -.long 2189328124,2189328124 -.long 1195195770,1195195770 -.long 2892260552,2892260552 -.long 3881655738,3881655738 -.long 723065138,723065138 -.long 2507371494,2507371494 -.long 2690670784,2690670784 -.long 2558624025,2558624025 -.long 3511635870,3511635870 -.long 2145180835,2145180835 -.long 1713513028,1713513028 -.long 2116692564,2116692564 -.long 2878378043,2878378043 -.long 2206763019,2206763019 -.long 3393603212,3393603212 -.long 703524551,703524551 -.long 3552098411,3552098411 -.long 1007948840,1007948840 -.long 2044649127,2044649127 -.long 3797835452,3797835452 -.long 487262998,487262998 -.long 1994120109,1994120109 -.long 1004593371,1004593371 -.long 1446130276,1446130276 -.long 1312438900,1312438900 -.long 503974420,503974420 -.long 3679013266,3679013266 -.long 168166924,168166924 -.long 1814307912,1814307912 -.long 3831258296,3831258296 -.long 1573044895,1573044895 -.long 1859376061,1859376061 -.long 4021070915,4021070915 -.long 2791465668,2791465668 -.long 2828112185,2828112185 -.long 2761266481,2761266481 -.long 937747667,937747667 -.long 2339994098,2339994098 -.long 854058965,854058965 -.long 1137232011,1137232011 -.long 1496790894,1496790894 -.long 3077402074,3077402074 -.long 2358086913,2358086913 -.long 1691735473,1691735473 -.long 3528347292,3528347292 -.long 3769215305,3769215305 -.long 3027004632,3027004632 -.long 4199962284,4199962284 -.long 133494003,133494003 -.long 636152527,636152527 -.long 2942657994,2942657994 -.long 2390391540,2390391540 -.long 3920539207,3920539207 -.long 403179536,403179536 -.long 3585784431,3585784431 -.long 2289596656,2289596656 -.long 1864705354,1864705354 -.long 1915629148,1915629148 -.long 605822008,605822008 -.long 4054230615,4054230615 -.long 3350508659,3350508659 -.long 1371981463,1371981463 -.long 602466507,602466507 -.long 2094914977,2094914977 -.long 2624877800,2624877800 -.long 555687742,555687742 -.long 3712699286,3712699286 -.long 3703422305,3703422305 -.long 2257292045,2257292045 -.long 2240449039,2240449039 -.long 2423288032,2423288032 -.long 1111375484,1111375484 -.long 3300242801,3300242801 -.long 2858837708,2858837708 -.long 3628615824,3628615824 -.long 84083462,84083462 -.long 32962295,32962295 -.long 302911004,302911004 -.long 2741068226,2741068226 -.long 1597322602,1597322602 -.long 4183250862,4183250862 -.long 3501832553,3501832553 -.long 2441512471,2441512471 -.long 1489093017,1489093017 -.long 656219450,656219450 -.long 3114180135,3114180135 -.long 954327513,954327513 -.long 335083755,335083755 -.long 3013122091,3013122091 -.long 856756514,856756514 -.long 3144247762,3144247762 -.long 1893325225,1893325225 -.long 2307821063,2307821063 -.long 2811532339,2811532339 -.long 3063651117,3063651117 -.long 572399164,572399164 -.long 2458355477,2458355477 -.long 552200649,552200649 -.long 1238290055,1238290055 -.long 4283782570,4283782570 -.long 2015897680,2015897680 -.long 2061492133,2061492133 -.long 2408352771,2408352771 -.long 4171342169,4171342169 -.long 2156497161,2156497161 -.long 386731290,386731290 -.long 3669999461,3669999461 -.long 837215959,837215959 -.long 3326231172,3326231172 -.long 3093850320,3093850320 -.long 3275833730,3275833730 -.long 2962856233,2962856233 -.long 1999449434,1999449434 -.long 286199582,286199582 -.long 3417354363,3417354363 -.long 4233385128,4233385128 -.long 3602627437,3602627437 -.long 974525996,974525996 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.long 1,2,4,8 -.long 16,32,64,128 -.long 27,54,0,0 -.long 0,0,0,0 -.size _x86_AES_encrypt,.-_x86_AES_encrypt -.globl AES_encrypt -.type AES_encrypt,@function -.align 16 -AES_encrypt: -.L_AES_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call .L004pic_point -.L004pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - leal .LAES_Te-.L004pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc .L005x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call _sse_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L005x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call _x86_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_encrypt,.-.L_AES_encrypt_begin -.type _x86_AES_decrypt_compact,@function -.align 16 -_x86_AES_decrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 16 -.L006loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%eax - subl %edi,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %ecx,%eax - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ecx,%ebx - roll $8,%ecx - xorl %esi,%ebp - xorl %eax,%ecx - xorl %ebp,%eax - xorl %ebx,%ecx - xorl %ebp,%ebx - roll $24,%eax - xorl %ebp,%ecx - roll $16,%ebx - xorl %eax,%ecx - roll $8,%ebp - xorl %ebx,%ecx - movl 4(%esp),%eax - xorl %ebp,%ecx - movl %ecx,12(%esp) - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %edx,%ebx - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %edx,%ecx - roll $8,%edx - xorl %esi,%ebp - xorl %ebx,%edx - xorl %ebp,%ebx - xorl %ecx,%edx - xorl %ebp,%ecx - roll $24,%ebx - xorl %ebp,%edx - roll $16,%ecx - xorl %ebx,%edx - roll $8,%ebp - xorl %ecx,%edx - movl 8(%esp),%ebx - xorl %ebp,%edx - movl %edx,16(%esp) - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %eax,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %eax,%edx - roll $8,%eax - xorl %esi,%ebp - xorl %ecx,%eax - xorl %ebp,%ecx - xorl %edx,%eax - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%eax - roll $16,%edx - xorl %ecx,%eax - roll $8,%ebp - xorl %edx,%eax - xorl %ebp,%eax - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ebx,%edx - roll $8,%ebx - xorl %esi,%ebp - xorl %ecx,%ebx - xorl %ebp,%ecx - xorl %edx,%ebx - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%ebp - xorl %edx,%ebx - movl 12(%esp),%ecx - xorl %ebp,%ebx - movl 16(%esp),%edx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L006loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.size _x86_AES_decrypt_compact,.-_x86_AES_decrypt_compact -.type _sse_AES_decrypt_compact,@function -.align 16 -_sse_AES_decrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 16 -.L007loop: - pshufw $12,%mm0,%mm1 - pshufw $9,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $6,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $3,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movd %mm2,%eax - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $16,%esi - movd %mm6,%ebx - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %al,%edi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $16,%esi - shrl $16,%eax - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shrl $16,%ebx - shll $8,%esi - movd %edx,%mm1 - movzbl -128(%ebp,%edi,1),%edx - movzbl %bh,%edi - shll $24,%edx - andl $255,%ebx - orl %esi,%edx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movzbl %ah,%eax - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - orl %ebx,%edx - shll $16,%esi - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%edx - shll $24,%eax - orl %eax,%ecx - movl 20(%esp),%edi - movd %edx,%mm4 - movd %ecx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja .L008out - movq %mm0,%mm3 - movq %mm4,%mm7 - pshufw $228,%mm0,%mm2 - pshufw $228,%mm4,%mm6 - movq %mm0,%mm1 - movq %mm4,%mm5 - pshufw $177,%mm0,%mm0 - pshufw $177,%mm4,%mm4 - pslld $8,%mm2 - pslld $8,%mm6 - psrld $8,%mm3 - psrld $8,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pslld $16,%mm2 - pslld $16,%mm6 - psrld $16,%mm3 - psrld $16,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movq 8(%esp),%mm3 - pxor %mm2,%mm2 - pxor %mm6,%mm6 - pcmpgtb %mm1,%mm2 - pcmpgtb %mm5,%mm6 - pand %mm3,%mm2 - pand %mm3,%mm6 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm2,%mm1 - pxor %mm6,%mm5 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq %mm1,%mm2 - movq %mm5,%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pslld $24,%mm3 - pslld $24,%mm7 - psrld $8,%mm2 - psrld $8,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pshufw $177,%mm1,%mm3 - pshufw $177,%mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - pshufw $177,%mm1,%mm2 - pshufw $177,%mm5,%mm6 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pslld $8,%mm1 - pslld $8,%mm5 - psrld $8,%mm3 - psrld $8,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl -128(%ebp),%eax - pslld $16,%mm1 - pslld $16,%mm5 - movl -64(%ebp),%ebx - psrld $16,%mm3 - psrld $16,%mm7 - movl (%ebp),%ecx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl 64(%ebp),%edx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp .L007loop -.align 16 -.L008out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.size _sse_AES_decrypt_compact,.-_sse_AES_decrypt_compact -.type _x86_AES_decrypt,@function -.align 16 -_x86_AES_decrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 16 -.L009loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ebx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %ah,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - - movl 20(%esp),%edi - andl $255,%edx - movl (%ebp,%edx,8),%edx - movzbl %ch,%ecx - xorl 3(%ebp,%ecx,8),%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - shrl $24,%eax - xorl 1(%ebp,%eax,8),%edx - movl 4(%esp),%eax - - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L009loop - leal 2176(%ebp),%ebp - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi - leal -128(%ebp),%ebp - movl %eax,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl (%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl (%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl (%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl (%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - leal -2048(%ebp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 64 -.LAES_Td: -.long 1353184337,1353184337 -.long 1399144830,1399144830 -.long 3282310938,3282310938 -.long 2522752826,2522752826 -.long 3412831035,3412831035 -.long 4047871263,4047871263 -.long 2874735276,2874735276 -.long 2466505547,2466505547 -.long 1442459680,1442459680 -.long 4134368941,4134368941 -.long 2440481928,2440481928 -.long 625738485,625738485 -.long 4242007375,4242007375 -.long 3620416197,3620416197 -.long 2151953702,2151953702 -.long 2409849525,2409849525 -.long 1230680542,1230680542 -.long 1729870373,1729870373 -.long 2551114309,2551114309 -.long 3787521629,3787521629 -.long 41234371,41234371 -.long 317738113,317738113 -.long 2744600205,2744600205 -.long 3338261355,3338261355 -.long 3881799427,3881799427 -.long 2510066197,2510066197 -.long 3950669247,3950669247 -.long 3663286933,3663286933 -.long 763608788,763608788 -.long 3542185048,3542185048 -.long 694804553,694804553 -.long 1154009486,1154009486 -.long 1787413109,1787413109 -.long 2021232372,2021232372 -.long 1799248025,1799248025 -.long 3715217703,3715217703 -.long 3058688446,3058688446 -.long 397248752,397248752 -.long 1722556617,1722556617 -.long 3023752829,3023752829 -.long 407560035,407560035 -.long 2184256229,2184256229 -.long 1613975959,1613975959 -.long 1165972322,1165972322 -.long 3765920945,3765920945 -.long 2226023355,2226023355 -.long 480281086,480281086 -.long 2485848313,2485848313 -.long 1483229296,1483229296 -.long 436028815,436028815 -.long 2272059028,2272059028 -.long 3086515026,3086515026 -.long 601060267,601060267 -.long 3791801202,3791801202 -.long 1468997603,1468997603 -.long 715871590,715871590 -.long 120122290,120122290 -.long 63092015,63092015 -.long 2591802758,2591802758 -.long 2768779219,2768779219 -.long 4068943920,4068943920 -.long 2997206819,2997206819 -.long 3127509762,3127509762 -.long 1552029421,1552029421 -.long 723308426,723308426 -.long 2461301159,2461301159 -.long 4042393587,4042393587 -.long 2715969870,2715969870 -.long 3455375973,3455375973 -.long 3586000134,3586000134 -.long 526529745,526529745 -.long 2331944644,2331944644 -.long 2639474228,2639474228 -.long 2689987490,2689987490 -.long 853641733,853641733 -.long 1978398372,1978398372 -.long 971801355,971801355 -.long 2867814464,2867814464 -.long 111112542,111112542 -.long 1360031421,1360031421 -.long 4186579262,4186579262 -.long 1023860118,1023860118 -.long 2919579357,2919579357 -.long 1186850381,1186850381 -.long 3045938321,3045938321 -.long 90031217,90031217 -.long 1876166148,1876166148 -.long 4279586912,4279586912 -.long 620468249,620468249 -.long 2548678102,2548678102 -.long 3426959497,3426959497 -.long 2006899047,2006899047 -.long 3175278768,3175278768 -.long 2290845959,2290845959 -.long 945494503,945494503 -.long 3689859193,3689859193 -.long 1191869601,1191869601 -.long 3910091388,3910091388 -.long 3374220536,3374220536 -.long 0,0 -.long 2206629897,2206629897 -.long 1223502642,1223502642 -.long 2893025566,2893025566 -.long 1316117100,1316117100 -.long 4227796733,4227796733 -.long 1446544655,1446544655 -.long 517320253,517320253 -.long 658058550,658058550 -.long 1691946762,1691946762 -.long 564550760,564550760 -.long 3511966619,3511966619 -.long 976107044,976107044 -.long 2976320012,2976320012 -.long 266819475,266819475 -.long 3533106868,3533106868 -.long 2660342555,2660342555 -.long 1338359936,1338359936 -.long 2720062561,2720062561 -.long 1766553434,1766553434 -.long 370807324,370807324 -.long 179999714,179999714 -.long 3844776128,3844776128 -.long 1138762300,1138762300 -.long 488053522,488053522 -.long 185403662,185403662 -.long 2915535858,2915535858 -.long 3114841645,3114841645 -.long 3366526484,3366526484 -.long 2233069911,2233069911 -.long 1275557295,1275557295 -.long 3151862254,3151862254 -.long 4250959779,4250959779 -.long 2670068215,2670068215 -.long 3170202204,3170202204 -.long 3309004356,3309004356 -.long 880737115,880737115 -.long 1982415755,1982415755 -.long 3703972811,3703972811 -.long 1761406390,1761406390 -.long 1676797112,1676797112 -.long 3403428311,3403428311 -.long 277177154,277177154 -.long 1076008723,1076008723 -.long 538035844,538035844 -.long 2099530373,2099530373 -.long 4164795346,4164795346 -.long 288553390,288553390 -.long 1839278535,1839278535 -.long 1261411869,1261411869 -.long 4080055004,4080055004 -.long 3964831245,3964831245 -.long 3504587127,3504587127 -.long 1813426987,1813426987 -.long 2579067049,2579067049 -.long 4199060497,4199060497 -.long 577038663,577038663 -.long 3297574056,3297574056 -.long 440397984,440397984 -.long 3626794326,3626794326 -.long 4019204898,4019204898 -.long 3343796615,3343796615 -.long 3251714265,3251714265 -.long 4272081548,4272081548 -.long 906744984,906744984 -.long 3481400742,3481400742 -.long 685669029,685669029 -.long 646887386,646887386 -.long 2764025151,2764025151 -.long 3835509292,3835509292 -.long 227702864,227702864 -.long 2613862250,2613862250 -.long 1648787028,1648787028 -.long 3256061430,3256061430 -.long 3904428176,3904428176 -.long 1593260334,1593260334 -.long 4121936770,4121936770 -.long 3196083615,3196083615 -.long 2090061929,2090061929 -.long 2838353263,2838353263 -.long 3004310991,3004310991 -.long 999926984,999926984 -.long 2809993232,2809993232 -.long 1852021992,1852021992 -.long 2075868123,2075868123 -.long 158869197,158869197 -.long 4095236462,4095236462 -.long 28809964,28809964 -.long 2828685187,2828685187 -.long 1701746150,1701746150 -.long 2129067946,2129067946 -.long 147831841,147831841 -.long 3873969647,3873969647 -.long 3650873274,3650873274 -.long 3459673930,3459673930 -.long 3557400554,3557400554 -.long 3598495785,3598495785 -.long 2947720241,2947720241 -.long 824393514,824393514 -.long 815048134,815048134 -.long 3227951669,3227951669 -.long 935087732,935087732 -.long 2798289660,2798289660 -.long 2966458592,2966458592 -.long 366520115,366520115 -.long 1251476721,1251476721 -.long 4158319681,4158319681 -.long 240176511,240176511 -.long 804688151,804688151 -.long 2379631990,2379631990 -.long 1303441219,1303441219 -.long 1414376140,1414376140 -.long 3741619940,3741619940 -.long 3820343710,3820343710 -.long 461924940,461924940 -.long 3089050817,3089050817 -.long 2136040774,2136040774 -.long 82468509,82468509 -.long 1563790337,1563790337 -.long 1937016826,1937016826 -.long 776014843,776014843 -.long 1511876531,1511876531 -.long 1389550482,1389550482 -.long 861278441,861278441 -.long 323475053,323475053 -.long 2355222426,2355222426 -.long 2047648055,2047648055 -.long 2383738969,2383738969 -.long 2302415851,2302415851 -.long 3995576782,3995576782 -.long 902390199,902390199 -.long 3991215329,3991215329 -.long 1018251130,1018251130 -.long 1507840668,1507840668 -.long 1064563285,1064563285 -.long 2043548696,2043548696 -.long 3208103795,3208103795 -.long 3939366739,3939366739 -.long 1537932639,1537932639 -.long 342834655,342834655 -.long 2262516856,2262516856 -.long 2180231114,2180231114 -.long 1053059257,1053059257 -.long 741614648,741614648 -.long 1598071746,1598071746 -.long 1925389590,1925389590 -.long 203809468,203809468 -.long 2336832552,2336832552 -.long 1100287487,1100287487 -.long 1895934009,1895934009 -.long 3736275976,3736275976 -.long 2632234200,2632234200 -.long 2428589668,2428589668 -.long 1636092795,1636092795 -.long 1890988757,1890988757 -.long 1952214088,1952214088 -.long 1113045200,1113045200 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.size _x86_AES_decrypt,.-_x86_AES_decrypt -.globl AES_decrypt -.type AES_decrypt,@function -.align 16 -AES_decrypt: -.L_AES_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call .L010pic_point -.L010pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - leal .LAES_Td-.L010pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc .L011x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call _sse_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L011x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call _x86_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_decrypt,.-.L_AES_decrypt_begin -.globl AES_cbc_encrypt -.type AES_cbc_encrypt,@function -.align 16 -AES_cbc_encrypt: -.L_AES_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je .L012drop_out - call .L013pic_point -.L013pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - cmpl $0,40(%esp) - leal .LAES_Te-.L013pic_point(%ebp),%ebp - jne .L014picked_te - leal .LAES_Td-.LAES_Te(%ebp),%ebp -.L014picked_te: - pushfl - cld - cmpl $512,%ecx - jb .L015slow_way - testl $15,%ecx - jnz .L015slow_way - btl $28,(%eax) - jc .L015slow_way - leal -324(%esp),%esi - andl $-64,%esi - movl %ebp,%eax - leal 2304(%ebp),%ebx - movl %esi,%edx - andl $4095,%eax - andl $4095,%ebx - andl $4095,%edx - cmpl %ebx,%edx - jb .L016tbl_break_out - subl %ebx,%edx - subl %edx,%esi - jmp .L017tbl_ok -.align 4 -.L016tbl_break_out: - subl %eax,%edx - andl $4095,%edx - addl $384,%edx - subl %edx,%esi -.align 4 -.L017tbl_ok: - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 12(%edx),%edi - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl $0,316(%esp) - movl %edi,%ebx - movl $61,%ecx - subl %ebp,%ebx - movl %edi,%esi - andl $4095,%ebx - leal 76(%esp),%edi - cmpl $2304,%ebx - jb .L018do_copy - cmpl $3852,%ebx - jb .L019skip_copy -.align 4 -.L018do_copy: - movl %edi,44(%esp) -.long 2784229001 -.L019skip_copy: - movl $16,%edi -.align 4 -.L020prefetch_tbl: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%esi - leal 128(%ebp),%ebp - subl $1,%edi - jnz .L020prefetch_tbl - subl $2048,%ebp - movl 32(%esp),%esi - movl 48(%esp),%edi - cmpl $0,%edx - je .L021fast_decrypt - movl (%edi),%eax - movl 4(%edi),%ebx -.align 16 -.L022fast_enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_encrypt - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%esi - movl 40(%esp),%ecx - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L022fast_enc_loop - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - cmpl $0,316(%esp) - movl 44(%esp),%edi - je .L023skip_ezero - movl $60,%ecx - xorl %eax,%eax -.align 4 -.long 2884892297 -.L023skip_ezero: - movl 28(%esp),%esp - popfl -.L012drop_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L021fast_decrypt: - cmpl 36(%esp),%esi - je .L024fast_dec_in_place - movl %edi,52(%esp) -.align 4 -.align 16 -.L025fast_dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_decrypt - movl 52(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 36(%esp),%edi - movl 32(%esp),%esi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl %esi,52(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edi - movl %edi,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L025fast_dec_loop - movl 52(%esp),%edi - movl 48(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp .L026fast_dec_out -.align 16 -.L024fast_dec_in_place: -.L027fast_dec_in_place_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call _x86_AES_decrypt - movl 48(%esp),%edi - movl 36(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L027fast_dec_in_place_loop -.align 4 -.L026fast_dec_out: - cmpl $0,316(%esp) - movl 44(%esp),%edi - je .L028skip_dzero - movl $60,%ecx - xorl %eax,%eax -.align 4 -.long 2884892297 -.L028skip_dzero: - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L015slow_way: - movl (%eax),%eax - movl 36(%esp),%edi - leal -80(%esp),%esi - andl $-64,%esi - leal -143(%edi),%ebx - subl %esi,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esi - leal 768(%esi),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl %eax,52(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl %esi,%edi - movl %eax,%esi - cmpl $0,%edx - je .L029slow_decrypt - cmpl $16,%ecx - movl %ebx,%edx - jb .L030slow_enc_tail - btl $25,52(%esp) - jnc .L031slow_enc_x86 - movq (%edi),%mm0 - movq 8(%edi),%mm4 -.align 16 -.L032slow_enc_loop_sse: - pxor (%esi),%mm0 - pxor 8(%esi),%mm4 - movl 44(%esp),%edi - call _sse_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl 40(%esp),%ecx - movq %mm0,(%edi) - movq %mm4,8(%edi) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae .L032slow_enc_loop_sse - testl $15,%ecx - jnz .L030slow_enc_tail - movl 48(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L031slow_enc_x86: - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4 -.L033slow_enc_loop_x86: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae .L033slow_enc_loop_x86 - testl $15,%ecx - jnz .L030slow_enc_tail - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L030slow_enc_tail: - emms - movl %edx,%edi - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je .L034enc_in_place -.align 4 -.long 2767451785 - jmp .L035enc_skip_in_place -.L034enc_in_place: - leal (%edi,%ecx,1),%edi -.L035enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 4 -.long 2868115081 - movl 48(%esp),%edi - movl %edx,%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,40(%esp) - jmp .L033slow_enc_loop_x86 -.align 16 -.L029slow_decrypt: - btl $25,52(%esp) - jnc .L036slow_dec_loop_x86 -.align 4 -.L037slow_dec_loop_sse: - movq (%esi),%mm0 - movq 8(%esi),%mm4 - movl 44(%esp),%edi - call _sse_AES_decrypt_compact - movl 32(%esp),%esi - leal 60(%esp),%eax - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl 48(%esp),%edi - movq (%esi),%mm1 - movq 8(%esi),%mm5 - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movq %mm1,(%edi) - movq %mm5,8(%edi) - subl $16,%ecx - jc .L038slow_dec_partial_sse - movq %mm0,(%ebx) - movq %mm4,8(%ebx) - leal 16(%ebx),%ebx - movl %ebx,36(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - movl %ecx,40(%esp) - jnz .L037slow_dec_loop_sse - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L038slow_dec_partial_sse: - movq %mm0,(%eax) - movq %mm4,8(%eax) - emms - addl $16,%ecx - movl %ebx,%edi - movl %eax,%esi -.align 4 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L036slow_dec_loop_x86: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call _x86_AES_decrypt_compact - movl 48(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc .L039slow_dec_partial_x86 - movl %esi,40(%esp) - movl 36(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - leal 16(%esi),%esi - movl %esi,32(%esp) - jnz .L036slow_dec_loop_x86 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L039slow_dec_partial_x86: - leal 60(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 32(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl 36(%esp),%edi - leal 60(%esp),%esi -.align 4 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_cbc_encrypt,.-.L_AES_cbc_encrypt_begin -.type _x86_AES_set_encrypt_key,@function -.align 16 -_x86_AES_set_encrypt_key: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%esi - movl 32(%esp),%edi - testl $-1,%esi - jz .L040badpointer - testl $-1,%edi - jz .L040badpointer - call .L041pic_point -.L041pic_point: - popl %ebp - leal .LAES_Te-.L041pic_point(%ebp),%ebp - leal 2176(%ebp),%ebp - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - movl 28(%esp),%ecx - cmpl $128,%ecx - je .L04210rounds - cmpl $192,%ecx - je .L04312rounds - cmpl $256,%ecx - je .L04414rounds - movl $-2,%eax - jmp .L045exit -.L04210rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - xorl %ecx,%ecx - jmp .L04610shortcut -.align 4 -.L04710loop: - movl (%edi),%eax - movl 12(%edi),%edx -.L04610shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,16(%edi) - xorl 4(%edi),%eax - movl %eax,20(%edi) - xorl 8(%edi),%eax - movl %eax,24(%edi) - xorl 12(%edi),%eax - movl %eax,28(%edi) - incl %ecx - addl $16,%edi - cmpl $10,%ecx - jl .L04710loop - movl $10,80(%edi) - xorl %eax,%eax - jmp .L045exit -.L04312rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%ecx - movl 20(%esi),%edx - movl %ecx,16(%edi) - movl %edx,20(%edi) - xorl %ecx,%ecx - jmp .L04812shortcut -.align 4 -.L04912loop: - movl (%edi),%eax - movl 20(%edi),%edx -.L04812shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,24(%edi) - xorl 4(%edi),%eax - movl %eax,28(%edi) - xorl 8(%edi),%eax - movl %eax,32(%edi) - xorl 12(%edi),%eax - movl %eax,36(%edi) - cmpl $7,%ecx - je .L05012break - incl %ecx - xorl 16(%edi),%eax - movl %eax,40(%edi) - xorl 20(%edi),%eax - movl %eax,44(%edi) - addl $24,%edi - jmp .L04912loop -.L05012break: - movl $12,72(%edi) - xorl %eax,%eax - jmp .L045exit -.L04414rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - movl %eax,16(%edi) - movl %ebx,20(%edi) - movl %ecx,24(%edi) - movl %edx,28(%edi) - xorl %ecx,%ecx - jmp .L05114shortcut -.align 4 -.L05214loop: - movl 28(%edi),%edx -.L05114shortcut: - movl (%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,32(%edi) - xorl 4(%edi),%eax - movl %eax,36(%edi) - xorl 8(%edi),%eax - movl %eax,40(%edi) - xorl 12(%edi),%eax - movl %eax,44(%edi) - cmpl $6,%ecx - je .L05314break - incl %ecx - movl %eax,%edx - movl 16(%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - movl %eax,48(%edi) - xorl 20(%edi),%eax - movl %eax,52(%edi) - xorl 24(%edi),%eax - movl %eax,56(%edi) - xorl 28(%edi),%eax - movl %eax,60(%edi) - addl $32,%edi - jmp .L05214loop -.L05314break: - movl $14,48(%edi) - xorl %eax,%eax - jmp .L045exit -.L040badpointer: - movl $-1,%eax -.L045exit: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key -.globl private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,@function -.align 16 -private_AES_set_encrypt_key: -.L_private_AES_set_encrypt_key_begin: - call _x86_AES_set_encrypt_key - ret -.size private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin -.globl private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,@function -.align 16 -private_AES_set_decrypt_key: -.L_private_AES_set_decrypt_key_begin: - call _x86_AES_set_encrypt_key - cmpl $0,%eax - je .L054proceed - ret -.L054proceed: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%esi - movl 240(%esi),%ecx - leal (,%ecx,4),%ecx - leal (%esi,%ecx,4),%edi -.align 4 -.L055invert: - movl (%esi),%eax - movl 4(%esi),%ebx - movl (%edi),%ecx - movl 4(%edi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,(%esi) - movl %edx,4(%esi) - movl 8(%esi),%eax - movl 12(%esi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,8(%edi) - movl %ebx,12(%edi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - addl $16,%esi - subl $16,%edi - cmpl %edi,%esi - jne .L055invert - movl 28(%esp),%edi - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,28(%esp) - movl 16(%edi),%eax -.align 4 -.L056permute: - addl $16,%edi - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %eax,%ebx - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - xorl %eax,%ecx - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - roll $8,%eax - xorl %esi,%edx - movl 4(%edi),%ebp - xorl %ebx,%eax - xorl %edx,%ebx - xorl %ecx,%eax - roll $24,%ebx - xorl %edx,%ecx - xorl %edx,%eax - roll $16,%ecx - xorl %ebx,%eax - roll $8,%edx - xorl %ecx,%eax - movl %ebp,%ebx - xorl %edx,%eax - movl %eax,(%edi) - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - xorl %ebx,%edx - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - roll $8,%ebx - xorl %esi,%eax - movl 8(%edi),%ebp - xorl %ecx,%ebx - xorl %eax,%ecx - xorl %edx,%ebx - roll $24,%ecx - xorl %eax,%edx - xorl %eax,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%eax - xorl %edx,%ebx - movl %ebp,%ecx - xorl %eax,%ebx - movl %ebx,4(%edi) - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %ecx,%edx - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - xorl %ecx,%eax - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - roll $8,%ecx - xorl %esi,%ebx - movl 12(%edi),%ebp - xorl %edx,%ecx - xorl %ebx,%edx - xorl %eax,%ecx - roll $24,%edx - xorl %ebx,%eax - xorl %ebx,%ecx - roll $16,%eax - xorl %edx,%ecx - roll $8,%ebx - xorl %eax,%ecx - movl %ebp,%edx - xorl %ebx,%ecx - movl %ecx,8(%edi) - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %edx,%eax - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - xorl %edx,%ebx - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - roll $8,%edx - xorl %esi,%ecx - movl 16(%edi),%ebp - xorl %eax,%edx - xorl %ecx,%eax - xorl %ebx,%edx - roll $24,%eax - xorl %ecx,%ebx - xorl %ecx,%edx - roll $16,%ebx - xorl %eax,%edx - roll $8,%ecx - xorl %ebx,%edx - movl %ebp,%eax - xorl %ecx,%edx - movl %edx,12(%edi) - cmpl 28(%esp),%edi - jb .L056permute - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin -.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s b/deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s deleted file mode 100644 index 3bbc4e47d612a8..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s +++ /dev/null @@ -1,2448 +0,0 @@ -.file "../openssl/crypto/aes/asm/aesni-x86.s" -.text -.globl aesni_encrypt -.type aesni_encrypt,@function -.align 16 -aesni_encrypt: -.L_aesni_encrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L000enc1_loop_1: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L000enc1_loop_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.size aesni_encrypt,.-.L_aesni_encrypt_begin -.globl aesni_decrypt -.type aesni_decrypt,@function -.align 16 -aesni_decrypt: -.L_aesni_decrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L001dec1_loop_2: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L001dec1_loop_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.size aesni_decrypt,.-.L_aesni_decrypt_begin -.type _aesni_encrypt2,@function -.align 16 -_aesni_encrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L002enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L002enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - ret -.size _aesni_encrypt2,.-_aesni_encrypt2 -.type _aesni_decrypt2,@function -.align 16 -_aesni_decrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L003dec2_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L003dec2_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - ret -.size _aesni_decrypt2,.-_aesni_decrypt2 -.type _aesni_encrypt3,@function -.align 16 -_aesni_encrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L004enc3_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L004enc3_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - ret -.size _aesni_encrypt3,.-_aesni_encrypt3 -.type _aesni_decrypt3,@function -.align 16 -_aesni_decrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L005dec3_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L005dec3_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - ret -.size _aesni_decrypt3,.-_aesni_decrypt3 -.type _aesni_encrypt4,@function -.align 16 -_aesni_encrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -.L006enc4_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L006enc4_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - ret -.size _aesni_encrypt4,.-_aesni_encrypt4 -.type _aesni_decrypt4,@function -.align 16 -_aesni_decrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -.L007dec4_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L007dec4_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - ret -.size _aesni_decrypt4,.-_aesni_decrypt4 -.type _aesni_encrypt6,@function -.align 16 -_aesni_encrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp .L008_aesni_encrypt6_inner -.align 16 -.L009enc6_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.L008_aesni_encrypt6_inner: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.L_aesni_encrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L009enc6_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - ret -.size _aesni_encrypt6,.-_aesni_encrypt6 -.type _aesni_decrypt6,@function -.align 16 -_aesni_decrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp .L010_aesni_decrypt6_inner -.align 16 -.L011dec6_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.L010_aesni_decrypt6_inner: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.L_aesni_decrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L011dec6_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - ret -.size _aesni_decrypt6,.-_aesni_decrypt6 -.globl aesni_ecb_encrypt -.type aesni_ecb_encrypt,@function -.align 16 -aesni_ecb_encrypt: -.L_aesni_ecb_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - andl $-16,%eax - jz .L012ecb_ret - movl 240(%edx),%ecx - testl %ebx,%ebx - jz .L013ecb_decrypt - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb .L014ecb_enc_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp .L015ecb_enc_loop6_enter -.align 16 -.L016ecb_enc_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -.L015ecb_enc_loop6_enter: - call _aesni_encrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc .L016ecb_enc_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz .L012ecb_ret -.L014ecb_enc_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb .L017ecb_enc_one - movups 16(%esi),%xmm3 - je .L018ecb_enc_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb .L019ecb_enc_three - movups 48(%esi),%xmm5 - je .L020ecb_enc_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L012ecb_ret -.align 16 -.L017ecb_enc_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L021enc1_loop_3: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L021enc1_loop_3 -.byte 102,15,56,221,209 - movups %xmm2,(%edi) - jmp .L012ecb_ret -.align 16 -.L018ecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L012ecb_ret -.align 16 -.L019ecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L012ecb_ret -.align 16 -.L020ecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - jmp .L012ecb_ret -.align 16 -.L013ecb_decrypt: - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb .L022ecb_dec_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp .L023ecb_dec_loop6_enter -.align 16 -.L024ecb_dec_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -.L023ecb_dec_loop6_enter: - call _aesni_decrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc .L024ecb_dec_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz .L012ecb_ret -.L022ecb_dec_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb .L025ecb_dec_one - movups 16(%esi),%xmm3 - je .L026ecb_dec_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb .L027ecb_dec_three - movups 48(%esi),%xmm5 - je .L028ecb_dec_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L012ecb_ret -.align 16 -.L025ecb_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L029dec1_loop_4: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L029dec1_loop_4 -.byte 102,15,56,223,209 - movups %xmm2,(%edi) - jmp .L012ecb_ret -.align 16 -.L026ecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L012ecb_ret -.align 16 -.L027ecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L012ecb_ret -.align 16 -.L028ecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -.L012ecb_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ecb_encrypt,.-.L_aesni_ecb_encrypt_begin -.globl aesni_ccm64_encrypt_blocks -.type aesni_ccm64_encrypt_blocks,@function -.align 16 -aesni_ccm64_encrypt_blocks: -.L_aesni_ccm64_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - shll $4,%ecx - movl $16,%ebx - leal (%edx),%ebp - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - leal 32(%edx,%ecx,1),%edx - subl %ecx,%ebx -.byte 102,15,56,0,253 -.L030ccm64_enc_outer: - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups (%esi),%xmm6 - xorps %xmm0,%xmm2 - movups 16(%ebp),%xmm1 - xorps %xmm6,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%ebp),%xmm0 -.L031ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L031ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq 16(%esp),%xmm7 - decl %eax -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) -.byte 102,15,56,0,213 - leal 16(%edi),%edi - jnz .L030ccm64_enc_outer - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ccm64_encrypt_blocks,.-.L_aesni_ccm64_encrypt_blocks_begin -.globl aesni_ccm64_decrypt_blocks -.type aesni_ccm64_decrypt_blocks,@function -.align 16 -aesni_ccm64_decrypt_blocks: -.L_aesni_ccm64_decrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - movl %edx,%ebp - movl %ecx,%ebx -.byte 102,15,56,0,253 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L032enc1_loop_5: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L032enc1_loop_5 -.byte 102,15,56,221,209 - shll $4,%ebx - movl $16,%ecx - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 - leal 16(%esi),%esi - subl %ebx,%ecx - leal 32(%ebp,%ebx,1),%edx - movl %ecx,%ebx - jmp .L033ccm64_dec_outer -.align 16 -.L033ccm64_dec_outer: - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) - leal 16(%edi),%edi -.byte 102,15,56,0,213 - subl $1,%eax - jz .L034ccm64_dec_break - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups 16(%ebp),%xmm1 - xorps %xmm0,%xmm6 - xorps %xmm0,%xmm2 - xorps %xmm6,%xmm3 - movups 32(%ebp),%xmm0 -.L035ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L035ccm64_dec2_loop - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - jmp .L033ccm64_dec_outer -.align 16 -.L034ccm64_dec_break: - movl 240(%ebp),%ecx - movl %ebp,%edx - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm6 - leal 32(%edx),%edx - xorps %xmm6,%xmm3 -.L036enc1_loop_6: -.byte 102,15,56,220,217 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L036enc1_loop_6 -.byte 102,15,56,221,217 - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ccm64_decrypt_blocks,.-.L_aesni_ccm64_decrypt_blocks_begin -.globl aesni_ctr32_encrypt_blocks -.type aesni_ctr32_encrypt_blocks,@function -.align 16 -aesni_ctr32_encrypt_blocks: -.L_aesni_ctr32_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl %esp,%ebp - subl $88,%esp - andl $-16,%esp - movl %ebp,80(%esp) - cmpl $1,%eax - je .L037ctr32_one_shortcut - movdqu (%ebx),%xmm7 - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $6,%ecx - xorl %ebp,%ebp - movl %ecx,16(%esp) - movl %ecx,20(%esp) - movl %ecx,24(%esp) - movl %ebp,28(%esp) -.byte 102,15,58,22,251,3 -.byte 102,15,58,34,253,3 - movl 240(%edx),%ecx - bswap %ebx - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqa (%esp),%xmm2 -.byte 102,15,58,34,195,0 - leal 3(%ebx),%ebp -.byte 102,15,58,34,205,0 - incl %ebx -.byte 102,15,58,34,195,1 - incl %ebp -.byte 102,15,58,34,205,1 - incl %ebx -.byte 102,15,58,34,195,2 - incl %ebp -.byte 102,15,58,34,205,2 - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - movdqu (%edx),%xmm6 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - pshufd $192,%xmm0,%xmm2 - pshufd $128,%xmm0,%xmm3 - cmpl $6,%eax - jb .L038ctr32_tail - pxor %xmm6,%xmm7 - shll $4,%ecx - movl $16,%ebx - movdqa %xmm7,32(%esp) - movl %edx,%ebp - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - subl $6,%eax - jmp .L039ctr32_loop6 -.align 16 -.L039ctr32_loop6: - pshufd $64,%xmm0,%xmm4 - movdqa 32(%esp),%xmm0 - pshufd $192,%xmm1,%xmm5 - pxor %xmm0,%xmm2 - pshufd $128,%xmm1,%xmm6 - pxor %xmm0,%xmm3 - pshufd $64,%xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,220,217 - movups 32(%ebp),%xmm0 - movl %ebx,%ecx -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call .L_aesni_encrypt6_enter - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups %xmm2,(%edi) - movdqa 16(%esp),%xmm0 - xorps %xmm1,%xmm4 - movdqa 64(%esp),%xmm1 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - paddd %xmm0,%xmm1 - paddd 48(%esp),%xmm0 - movdqa (%esp),%xmm2 - movups 48(%esi),%xmm3 - movups 64(%esi),%xmm4 - xorps %xmm3,%xmm5 - movups 80(%esi),%xmm3 - leal 96(%esi),%esi - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - xorps %xmm4,%xmm6 - movups %xmm5,48(%edi) - xorps %xmm3,%xmm7 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - movups %xmm6,64(%edi) - pshufd $192,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - pshufd $128,%xmm0,%xmm3 - subl $6,%eax - jnc .L039ctr32_loop6 - addl $6,%eax - jz .L040ctr32_ret - movdqu (%ebp),%xmm7 - movl %ebp,%edx - pxor 32(%esp),%xmm7 - movl 240(%ebp),%ecx -.L038ctr32_tail: - por %xmm7,%xmm2 - cmpl $2,%eax - jb .L041ctr32_one - pshufd $64,%xmm0,%xmm4 - por %xmm7,%xmm3 - je .L042ctr32_two - pshufd $192,%xmm1,%xmm5 - por %xmm7,%xmm4 - cmpl $4,%eax - jb .L043ctr32_three - pshufd $128,%xmm1,%xmm6 - por %xmm7,%xmm5 - je .L044ctr32_four - por %xmm7,%xmm6 - call _aesni_encrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm4 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm5 - movups %xmm2,(%edi) - xorps %xmm1,%xmm6 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L040ctr32_ret -.align 16 -.L037ctr32_one_shortcut: - movups (%ebx),%xmm2 - movl 240(%edx),%ecx -.L041ctr32_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L045enc1_loop_7: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L045enc1_loop_7 -.byte 102,15,56,221,209 - movups (%esi),%xmm6 - xorps %xmm2,%xmm6 - movups %xmm6,(%edi) - jmp .L040ctr32_ret -.align 16 -.L042ctr32_two: - call _aesni_encrypt2 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L040ctr32_ret -.align 16 -.L043ctr32_three: - call _aesni_encrypt3 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - movups 32(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm7,%xmm4 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L040ctr32_ret -.align 16 -.L044ctr32_four: - call _aesni_encrypt4 - movups (%esi),%xmm6 - movups 16(%esi),%xmm7 - movups 32(%esi),%xmm1 - xorps %xmm6,%xmm2 - movups 48(%esi),%xmm0 - xorps %xmm7,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -.L040ctr32_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movl 80(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ctr32_encrypt_blocks,.-.L_aesni_ctr32_encrypt_blocks_begin -.globl aesni_xts_encrypt -.type aesni_xts_encrypt,@function -.align 16 -aesni_xts_encrypt: -.L_aesni_xts_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L046enc1_loop_8: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L046enc1_loop_8 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - movl 240(%edx),%ecx - andl $-16,%esp - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - movl %edx,%ebp - movl %ecx,%ebx - subl $96,%eax - jc .L047xts_enc_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp .L048xts_enc_loop6 -.align 16 -.L048xts_enc_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,220,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call .L_aesni_encrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc .L048xts_enc_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -.L047xts_enc_short: - addl $96,%eax - jz .L049xts_enc_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb .L050xts_enc_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je .L051xts_enc_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb .L052xts_enc_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je .L053xts_enc_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call _aesni_encrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp .L054xts_enc_done -.align 16 -.L050xts_enc_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L055enc1_loop_9: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L055enc1_loop_9 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L051xts_enc_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call _aesni_encrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L052xts_enc_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call _aesni_encrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L053xts_enc_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call _aesni_encrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L049xts_enc_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz .L056xts_enc_ret - movdqa %xmm1,%xmm5 - movl %eax,112(%esp) - jmp .L057xts_enc_steal -.align 16 -.L054xts_enc_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz .L056xts_enc_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm5 - paddq %xmm1,%xmm1 - pand 96(%esp),%xmm5 - pxor %xmm1,%xmm5 -.L057xts_enc_steal: - movzbl (%esi),%ecx - movzbl -16(%edi),%edx - leal 1(%esi),%esi - movb %cl,-16(%edi) - movb %dl,(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz .L057xts_enc_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups -16(%edi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L058enc1_loop_10: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L058enc1_loop_10 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,-16(%edi) -.L056xts_enc_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_xts_encrypt,.-.L_aesni_xts_encrypt_begin -.globl aesni_xts_decrypt -.type aesni_xts_decrypt,@function -.align 16 -aesni_xts_decrypt: -.L_aesni_xts_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L059enc1_loop_11: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L059enc1_loop_11 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - andl $-16,%esp - xorl %ebx,%ebx - testl $15,%eax - setnz %bl - shll $4,%ebx - subl %ebx,%eax - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ecx,%ebx - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - subl $96,%eax - jc .L060xts_dec_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp .L061xts_dec_loop6 -.align 16 -.L061xts_dec_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,222,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - call .L_aesni_decrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc .L061xts_dec_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -.L060xts_dec_short: - addl $96,%eax - jz .L062xts_dec_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb .L063xts_dec_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je .L064xts_dec_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb .L065xts_dec_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je .L066xts_dec_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call _aesni_decrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp .L067xts_dec_done -.align 16 -.L063xts_dec_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L068dec1_loop_12: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L068dec1_loop_12 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L064xts_dec_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call _aesni_decrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L065xts_dec_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call _aesni_decrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L066xts_dec_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call _aesni_decrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L062xts_dec_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz .L069xts_dec_ret - movl %eax,112(%esp) - jmp .L070xts_dec_only_one_more -.align 16 -.L067xts_dec_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz .L069xts_dec_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 -.L070xts_dec_only_one_more: - pshufd $19,%xmm0,%xmm5 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm5 - pxor %xmm1,%xmm5 - movl %ebp,%edx - movl %ebx,%ecx - movups (%esi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L071dec1_loop_13: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L071dec1_loop_13 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) -.L072xts_dec_steal: - movzbl 16(%esi),%ecx - movzbl (%edi),%edx - leal 1(%esi),%esi - movb %cl,(%edi) - movb %dl,16(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz .L072xts_dec_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups (%edi),%xmm2 - xorps %xmm6,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L073dec1_loop_14: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L073dec1_loop_14 -.byte 102,15,56,223,209 - xorps %xmm6,%xmm2 - movups %xmm2,(%edi) -.L069xts_dec_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_xts_decrypt,.-.L_aesni_xts_decrypt_begin -.globl aesni_cbc_encrypt -.type aesni_cbc_encrypt,@function -.align 16 -aesni_cbc_encrypt: -.L_aesni_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl %esp,%ebx - movl 24(%esp),%edi - subl $24,%ebx - movl 28(%esp),%eax - andl $-16,%ebx - movl 32(%esp),%edx - movl 36(%esp),%ebp - testl %eax,%eax - jz .L074cbc_abort - cmpl $0,40(%esp) - xchgl %esp,%ebx - movups (%ebp),%xmm7 - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ebx,16(%esp) - movl %ecx,%ebx - je .L075cbc_decrypt - movaps %xmm7,%xmm2 - cmpl $16,%eax - jb .L076cbc_enc_tail - subl $16,%eax - jmp .L077cbc_enc_loop -.align 16 -.L077cbc_enc_loop: - movups (%esi),%xmm7 - leal 16(%esi),%esi - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm7 - leal 32(%edx),%edx - xorps %xmm7,%xmm2 -.L078enc1_loop_15: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L078enc1_loop_15 -.byte 102,15,56,221,209 - movl %ebx,%ecx - movl %ebp,%edx - movups %xmm2,(%edi) - leal 16(%edi),%edi - subl $16,%eax - jnc .L077cbc_enc_loop - addl $16,%eax - jnz .L076cbc_enc_tail - movaps %xmm2,%xmm7 - pxor %xmm2,%xmm2 - jmp .L079cbc_ret -.L076cbc_enc_tail: - movl %eax,%ecx -.long 2767451785 - movl $16,%ecx - subl %eax,%ecx - xorl %eax,%eax -.long 2868115081 - leal -16(%edi),%edi - movl %ebx,%ecx - movl %edi,%esi - movl %ebp,%edx - jmp .L077cbc_enc_loop -.align 16 -.L075cbc_decrypt: - cmpl $80,%eax - jbe .L080cbc_dec_tail - movaps %xmm7,(%esp) - subl $80,%eax - jmp .L081cbc_dec_loop6_enter -.align 16 -.L082cbc_dec_loop6: - movaps %xmm0,(%esp) - movups %xmm7,(%edi) - leal 16(%edi),%edi -.L081cbc_dec_loop6_enter: - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - call _aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm6 - movups 80(%esi),%xmm0 - xorps %xmm1,%xmm7 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 96(%esi),%esi - movups %xmm4,32(%edi) - movl %ebx,%ecx - movups %xmm5,48(%edi) - movl %ebp,%edx - movups %xmm6,64(%edi) - leal 80(%edi),%edi - subl $96,%eax - ja .L082cbc_dec_loop6 - movaps %xmm7,%xmm2 - movaps %xmm0,%xmm7 - addl $80,%eax - jle .L083cbc_dec_clear_tail_collected - movups %xmm2,(%edi) - leal 16(%edi),%edi -.L080cbc_dec_tail: - movups (%esi),%xmm2 - movaps %xmm2,%xmm6 - cmpl $16,%eax - jbe .L084cbc_dec_one - movups 16(%esi),%xmm3 - movaps %xmm3,%xmm5 - cmpl $32,%eax - jbe .L085cbc_dec_two - movups 32(%esi),%xmm4 - cmpl $48,%eax - jbe .L086cbc_dec_three - movups 48(%esi),%xmm5 - cmpl $64,%eax - jbe .L087cbc_dec_four - movups 64(%esi),%xmm6 - movaps %xmm7,(%esp) - movups (%esi),%xmm2 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm7 - xorps %xmm0,%xmm6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%edi) - pxor %xmm5,%xmm5 - leal 64(%edi),%edi - movaps %xmm6,%xmm2 - pxor %xmm6,%xmm6 - subl $80,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L084cbc_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L089dec1_loop_16: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L089dec1_loop_16 -.byte 102,15,56,223,209 - xorps %xmm7,%xmm2 - movaps %xmm6,%xmm7 - subl $16,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L085cbc_dec_two: - call _aesni_decrypt2 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movaps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leal 16(%edi),%edi - movaps %xmm5,%xmm7 - subl $32,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L086cbc_dec_three: - call _aesni_decrypt3 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm5,%xmm4 - movups %xmm2,(%edi) - movaps %xmm4,%xmm2 - pxor %xmm4,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - leal 32(%edi),%edi - movups 32(%esi),%xmm7 - subl $48,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L087cbc_dec_four: - call _aesni_decrypt4 - movups 16(%esi),%xmm1 - movups 32(%esi),%xmm0 - xorps %xmm7,%xmm2 - movups 48(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - leal 48(%edi),%edi - movaps %xmm5,%xmm2 - pxor %xmm5,%xmm5 - subl $64,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L083cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 -.L088cbc_dec_tail_collected: - andl $15,%eax - jnz .L090cbc_dec_tail_partial - movups %xmm2,(%edi) - pxor %xmm0,%xmm0 - jmp .L079cbc_ret -.align 16 -.L090cbc_dec_tail_partial: - movaps %xmm2,(%esp) - pxor %xmm0,%xmm0 - movl $16,%ecx - movl %esp,%esi - subl %eax,%ecx -.long 2767451785 - movdqa %xmm2,(%esp) -.L079cbc_ret: - movl 16(%esp),%esp - movl 36(%esp),%ebp - pxor %xmm2,%xmm2 - pxor %xmm1,%xmm1 - movups %xmm7,(%ebp) - pxor %xmm7,%xmm7 -.L074cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_cbc_encrypt,.-.L_aesni_cbc_encrypt_begin -.type _aesni_set_encrypt_key,@function -.align 16 -_aesni_set_encrypt_key: - pushl %ebp - pushl %ebx - testl %eax,%eax - jz .L091bad_pointer - testl %edx,%edx - jz .L091bad_pointer - call .L092pic -.L092pic: - popl %ebx - leal .Lkey_const-.L092pic(%ebx),%ebx - leal OPENSSL_ia32cap_P,%ebp - movups (%eax),%xmm0 - xorps %xmm4,%xmm4 - movl 4(%ebp),%ebp - leal 16(%edx),%edx - andl $268437504,%ebp - cmpl $256,%ecx - je .L09314rounds - cmpl $192,%ecx - je .L09412rounds - cmpl $128,%ecx - jne .L095bad_keybits -.align 16 -.L09610rounds: - cmpl $268435456,%ebp - je .L09710rounds_alt - movl $9,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,200,1 - call .L098key_128_cold -.byte 102,15,58,223,200,2 - call .L099key_128 -.byte 102,15,58,223,200,4 - call .L099key_128 -.byte 102,15,58,223,200,8 - call .L099key_128 -.byte 102,15,58,223,200,16 - call .L099key_128 -.byte 102,15,58,223,200,32 - call .L099key_128 -.byte 102,15,58,223,200,64 - call .L099key_128 -.byte 102,15,58,223,200,128 - call .L099key_128 -.byte 102,15,58,223,200,27 - call .L099key_128 -.byte 102,15,58,223,200,54 - call .L099key_128 - movups %xmm0,(%edx) - movl %ecx,80(%edx) - jmp .L100good_key -.align 16 -.L099key_128: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.L098key_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 16 -.L09710rounds_alt: - movdqa (%ebx),%xmm5 - movl $8,%ecx - movdqa 32(%ebx),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,-16(%edx) -.L101loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leal 16(%edx),%edx - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%edx) - movdqa %xmm0,%xmm2 - decl %ecx - jnz .L101loop_key128 - movdqa 48(%ebx),%xmm4 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%edx) - movl $9,%ecx - movl %ecx,96(%edx) - jmp .L100good_key -.align 16 -.L09412rounds: - movq 16(%eax),%xmm2 - cmpl $268435456,%ebp - je .L10212rounds_alt - movl $11,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,202,1 - call .L103key_192a_cold -.byte 102,15,58,223,202,2 - call .L104key_192b -.byte 102,15,58,223,202,4 - call .L105key_192a -.byte 102,15,58,223,202,8 - call .L104key_192b -.byte 102,15,58,223,202,16 - call .L105key_192a -.byte 102,15,58,223,202,32 - call .L104key_192b -.byte 102,15,58,223,202,64 - call .L105key_192a -.byte 102,15,58,223,202,128 - call .L104key_192b - movups %xmm0,(%edx) - movl %ecx,48(%edx) - jmp .L100good_key -.align 16 -.L105key_192a: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.align 16 -.L103key_192a_cold: - movaps %xmm2,%xmm5 -.L106key_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - ret -.align 16 -.L104key_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%edx) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%edx) - leal 32(%edx),%edx - jmp .L106key_192b_warm -.align 16 -.L10212rounds_alt: - movdqa 16(%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $8,%ecx - movdqu %xmm0,-16(%edx) -.L107loop_key192: - movq %xmm2,(%edx) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leal 24(%edx),%edx - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%edx) - decl %ecx - jnz .L107loop_key192 - movl $11,%ecx - movl %ecx,32(%edx) - jmp .L100good_key -.align 16 -.L09314rounds: - movups 16(%eax),%xmm2 - leal 16(%edx),%edx - cmpl $268435456,%ebp - je .L10814rounds_alt - movl $13,%ecx - movups %xmm0,-32(%edx) - movups %xmm2,-16(%edx) -.byte 102,15,58,223,202,1 - call .L109key_256a_cold -.byte 102,15,58,223,200,1 - call .L110key_256b -.byte 102,15,58,223,202,2 - call .L111key_256a -.byte 102,15,58,223,200,2 - call .L110key_256b -.byte 102,15,58,223,202,4 - call .L111key_256a -.byte 102,15,58,223,200,4 - call .L110key_256b -.byte 102,15,58,223,202,8 - call .L111key_256a -.byte 102,15,58,223,200,8 - call .L110key_256b -.byte 102,15,58,223,202,16 - call .L111key_256a -.byte 102,15,58,223,200,16 - call .L110key_256b -.byte 102,15,58,223,202,32 - call .L111key_256a -.byte 102,15,58,223,200,32 - call .L110key_256b -.byte 102,15,58,223,202,64 - call .L111key_256a - movups %xmm0,(%edx) - movl %ecx,16(%edx) - xorl %eax,%eax - jmp .L100good_key -.align 16 -.L111key_256a: - movups %xmm2,(%edx) - leal 16(%edx),%edx -.L109key_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 16 -.L110key_256b: - movups %xmm0,(%edx) - leal 16(%edx),%edx - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - ret -.align 16 -.L10814rounds_alt: - movdqa (%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $7,%ecx - movdqu %xmm0,-32(%edx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,-16(%edx) -.L112loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - decl %ecx - jz .L113done_key256 - pshufd $255,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%edx) - leal 32(%edx),%edx - movdqa %xmm2,%xmm1 - jmp .L112loop_key256 -.L113done_key256: - movl $13,%ecx - movl %ecx,16(%edx) -.L100good_key: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - xorl %eax,%eax - popl %ebx - popl %ebp - ret -.align 4 -.L091bad_pointer: - movl $-1,%eax - popl %ebx - popl %ebp - ret -.align 4 -.L095bad_keybits: - pxor %xmm0,%xmm0 - movl $-2,%eax - popl %ebx - popl %ebp - ret -.size _aesni_set_encrypt_key,.-_aesni_set_encrypt_key -.globl aesni_set_encrypt_key -.type aesni_set_encrypt_key,@function -.align 16 -aesni_set_encrypt_key: -.L_aesni_set_encrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call _aesni_set_encrypt_key - ret -.size aesni_set_encrypt_key,.-.L_aesni_set_encrypt_key_begin -.globl aesni_set_decrypt_key -.type aesni_set_decrypt_key,@function -.align 16 -aesni_set_decrypt_key: -.L_aesni_set_decrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call _aesni_set_encrypt_key - movl 12(%esp),%edx - shll $4,%ecx - testl %eax,%eax - jnz .L114dec_key_ret - leal 16(%edx,%ecx,1),%eax - movups (%edx),%xmm0 - movups (%eax),%xmm1 - movups %xmm0,(%eax) - movups %xmm1,(%edx) - leal 16(%edx),%edx - leal -16(%eax),%eax -.L115dec_key_inverse: - movups (%edx),%xmm0 - movups (%eax),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leal 16(%edx),%edx - leal -16(%eax),%eax - movups %xmm0,16(%eax) - movups %xmm1,-16(%edx) - cmpl %edx,%eax - ja .L115dec_key_inverse - movups (%edx),%xmm0 -.byte 102,15,56,219,192 - movups %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorl %eax,%eax -.L114dec_key_ret: - ret -.size aesni_set_decrypt_key,.-.L_aesni_set_decrypt_key_begin -.align 64 -.Lkey_const: -.long 202313229,202313229,202313229,202313229 -.long 67569157,67569157,67569157,67569157 -.long 1,1,1,1 -.long 27,27,27,27 -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s b/deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s deleted file mode 100644 index 5dc8d19633a8ae..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s +++ /dev/null @@ -1,661 +0,0 @@ -.file "vpaes-x86.s" -.text -.align 64 -.L_vpaes_consts: -.long 218628480,235210255,168496130,67568393 -.long 252381056,17041926,33884169,51187212 -.long 252645135,252645135,252645135,252645135 -.long 1512730624,3266504856,1377990664,3401244816 -.long 830229760,1275146365,2969422977,3447763452 -.long 3411033600,2979783055,338359620,2782886510 -.long 4209124096,907596821,221174255,1006095553 -.long 191964160,3799684038,3164090317,1589111125 -.long 182528256,1777043520,2877432650,3265356744 -.long 1874708224,3503451415,3305285752,363511674 -.long 1606117888,3487855781,1093350906,2384367825 -.long 197121,67569157,134941193,202313229 -.long 67569157,134941193,202313229,197121 -.long 134941193,202313229,197121,67569157 -.long 202313229,197121,67569157,134941193 -.long 33619971,100992007,168364043,235736079 -.long 235736079,33619971,100992007,168364043 -.long 168364043,235736079,33619971,100992007 -.long 100992007,168364043,235736079,33619971 -.long 50462976,117835012,185207048,252579084 -.long 252314880,51251460,117574920,184942860 -.long 184682752,252054788,50987272,118359308 -.long 118099200,185467140,251790600,50727180 -.long 2946363062,528716217,1300004225,1881839624 -.long 1532713819,1532713819,1532713819,1532713819 -.long 3602276352,4288629033,3737020424,4153884961 -.long 1354558464,32357713,2958822624,3775749553 -.long 1201988352,132424512,1572796698,503232858 -.long 2213177600,1597421020,4103937655,675398315 -.long 2749646592,4273543773,1511898873,121693092 -.long 3040248576,1103263732,2871565598,1608280554 -.long 2236667136,2588920351,482954393,64377734 -.long 3069987328,291237287,2117370568,3650299247 -.long 533321216,3573750986,2572112006,1401264716 -.long 1339849704,2721158661,548607111,3445553514 -.long 2128193280,3054596040,2183486460,1257083700 -.long 655635200,1165381986,3923443150,2344132524 -.long 190078720,256924420,290342170,357187870 -.long 1610966272,2263057382,4103205268,309794674 -.long 2592527872,2233205587,1335446729,3402964816 -.long 3973531904,3225098121,3002836325,1918774430 -.long 3870401024,2102906079,2284471353,4117666579 -.long 617007872,1021508343,366931923,691083277 -.long 2528395776,3491914898,2968704004,1613121270 -.long 3445188352,3247741094,844474987,4093578302 -.long 651481088,1190302358,1689581232,574775300 -.long 4289380608,206939853,2555985458,2489840491 -.long 2130264064,327674451,3566485037,3349835193 -.long 2470714624,316102159,3636825756,3393945945 -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -.byte 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -.byte 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -.byte 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -.byte 118,101,114,115,105,116,121,41,0 -.align 64 -.type _vpaes_preheat,@function -.align 16 -_vpaes_preheat: - addl (%esp),%ebp - movdqa -48(%ebp),%xmm7 - movdqa -16(%ebp),%xmm6 - ret -.size _vpaes_preheat,.-_vpaes_preheat -.type _vpaes_encrypt_core,@function -.align 16 -_vpaes_encrypt_core: - movl $16,%ecx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa (%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - movdqu (%edx),%xmm5 -.byte 102,15,56,0,208 - movdqa 16(%ebp),%xmm0 - pxor %xmm5,%xmm2 - psrld $4,%xmm1 - addl $16,%edx -.byte 102,15,56,0,193 - leal 192(%ebp),%ebx - pxor %xmm2,%xmm0 - jmp .L000enc_entry -.align 16 -.L001enc_loop: - movdqa 32(%ebp),%xmm4 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa 64(%ebp),%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%ebx,%ecx,1),%xmm1 -.byte 102,15,56,0,234 - movdqa 80(%ebp),%xmm2 - movdqa (%ebx,%ecx,1),%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addl $16,%edx - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addl $16,%ecx - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andl $48,%ecx - subl $1,%eax - pxor %xmm3,%xmm0 -.L000enc_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm6,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm7,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm5 - pxor %xmm1,%xmm3 - jnz .L001enc_loop - movdqa 96(%ebp),%xmm4 - movdqa 112(%ebp),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%ebx,%ecx,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - ret -.size _vpaes_encrypt_core,.-_vpaes_encrypt_core -.type _vpaes_decrypt_core,@function -.align 16 -_vpaes_decrypt_core: - leal 608(%ebp),%ebx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa -64(%ebx),%xmm2 - pandn %xmm0,%xmm1 - movl %eax,%ecx - psrld $4,%xmm1 - movdqu (%edx),%xmm5 - shll $4,%ecx - pand %xmm6,%xmm0 -.byte 102,15,56,0,208 - movdqa -48(%ebx),%xmm0 - xorl $48,%ecx -.byte 102,15,56,0,193 - andl $48,%ecx - pxor %xmm5,%xmm2 - movdqa 176(%ebp),%xmm5 - pxor %xmm2,%xmm0 - addl $16,%edx - leal -352(%ebx,%ecx,1),%ecx - jmp .L002dec_entry -.align 16 -.L003dec_loop: - movdqa -32(%ebx),%xmm4 - movdqa -16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa (%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addl $16,%edx -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subl $1,%eax -.L002dec_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - psrld $4,%xmm1 -.byte 102,15,56,0,208 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm7,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm0 - pxor %xmm1,%xmm3 - jnz .L003dec_loop - movdqa 96(%ebx),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%ebx),%xmm0 - movdqa (%ecx),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - ret -.size _vpaes_decrypt_core,.-_vpaes_decrypt_core -.type _vpaes_schedule_core,@function -.align 16 -_vpaes_schedule_core: - addl (%esp),%ebp - movdqu (%esi),%xmm0 - movdqa 320(%ebp),%xmm2 - movdqa %xmm0,%xmm3 - leal (%ebp),%ebx - movdqa %xmm2,4(%esp) - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - testl %edi,%edi - jnz .L004schedule_am_decrypting - movdqu %xmm0,(%edx) - jmp .L005schedule_go -.L004schedule_am_decrypting: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%edx) - xorl $48,%ecx -.L005schedule_go: - cmpl $192,%eax - ja .L006schedule_256 - je .L007schedule_192 -.L008schedule_128: - movl $10,%eax -.L009loop_schedule_128: - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - jmp .L009loop_schedule_128 -.align 16 -.L007schedule_192: - movdqu 8(%esi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%eax -.L011loop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp .L011loop_schedule_192 -.align 16 -.L006schedule_256: - movdqu 16(%esi),%xmm0 - call _vpaes_schedule_transform - movl $7,%eax -.L012loop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - pshufd $255,%xmm0,%xmm0 - movdqa %xmm7,20(%esp) - movdqa %xmm6,%xmm7 - call .L_vpaes_schedule_low_round - movdqa 20(%esp),%xmm7 - jmp .L012loop_schedule_256 -.align 16 -.L010schedule_mangle_last: - leal 384(%ebp),%ebx - testl %edi,%edi - jnz .L013schedule_mangle_last_dec - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,193 - leal 352(%ebp),%ebx - addl $32,%edx -.L013schedule_mangle_last_dec: - addl $-16,%edx - pxor 336(%ebp),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - ret -.size _vpaes_schedule_core,.-_vpaes_schedule_core -.type _vpaes_schedule_192_smear,@function -.align 16 -_vpaes_schedule_192_smear: - pshufd $128,%xmm6,%xmm1 - pshufd $254,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - ret -.size _vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear -.type _vpaes_schedule_round,@function -.align 16 -_vpaes_schedule_round: - movdqa 8(%esp),%xmm2 - pxor %xmm1,%xmm1 -.byte 102,15,58,15,202,15 -.byte 102,15,58,15,210,15 - pxor %xmm1,%xmm7 - pshufd $255,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - movdqa %xmm2,8(%esp) -.L_vpaes_schedule_low_round: - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor 336(%ebp),%xmm7 - movdqa -16(%ebp),%xmm4 - movdqa -48(%ebp),%xmm5 - movdqa %xmm4,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm4,%xmm0 - movdqa -32(%ebp),%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm5,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm5,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa 32(%ebp),%xmm4 -.byte 102,15,56,0,226 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - ret -.size _vpaes_schedule_round,.-_vpaes_schedule_round -.type _vpaes_schedule_transform,@function -.align 16 -_vpaes_schedule_transform: - movdqa -16(%ebp),%xmm2 - movdqa %xmm2,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm0 - movdqa (%ebx),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%ebx),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - ret -.size _vpaes_schedule_transform,.-_vpaes_schedule_transform -.type _vpaes_schedule_mangle,@function -.align 16 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa 128(%ebp),%xmm5 - testl %edi,%edi - jnz .L014schedule_mangle_dec - addl $16,%edx - pxor 336(%ebp),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - jmp .L015schedule_mangle_both -.align 16 -.L014schedule_mangle_dec: - movdqa -16(%ebp),%xmm2 - leal 416(%ebp),%esi - movdqa %xmm2,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm4 - movdqa (%esi),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 32(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 64(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 96(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - addl $-16,%edx -.L015schedule_mangle_both: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - addl $-16,%ecx - andl $48,%ecx - movdqu %xmm3,(%edx) - ret -.size _vpaes_schedule_mangle,.-_vpaes_schedule_mangle -.globl vpaes_set_encrypt_key -.type vpaes_set_encrypt_key,@function -.align 16 -vpaes_set_encrypt_key: -.L_vpaes_set_encrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - movl $48,%ecx - movl $0,%edi - leal .L_vpaes_consts+0x30-.L016pic_point,%ebp - call _vpaes_schedule_core -.L016pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_set_encrypt_key,.-.L_vpaes_set_encrypt_key_begin -.globl vpaes_set_decrypt_key -.type vpaes_set_decrypt_key,@function -.align 16 -vpaes_set_decrypt_key: -.L_vpaes_set_decrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - shll $4,%ebx - leal 16(%edx,%ebx,1),%edx - movl $1,%edi - movl %eax,%ecx - shrl $1,%ecx - andl $32,%ecx - xorl $32,%ecx - leal .L_vpaes_consts+0x30-.L017pic_point,%ebp - call _vpaes_schedule_core -.L017pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_set_decrypt_key,.-.L_vpaes_set_decrypt_key_begin -.globl vpaes_encrypt -.type vpaes_encrypt,@function -.align 16 -vpaes_encrypt: -.L_vpaes_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal .L_vpaes_consts+0x30-.L018pic_point,%ebp - call _vpaes_preheat -.L018pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call _vpaes_encrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_encrypt,.-.L_vpaes_encrypt_begin -.globl vpaes_decrypt -.type vpaes_decrypt,@function -.align 16 -vpaes_decrypt: -.L_vpaes_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal .L_vpaes_consts+0x30-.L019pic_point,%ebp - call _vpaes_preheat -.L019pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call _vpaes_decrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_decrypt,.-.L_vpaes_decrypt_begin -.globl vpaes_cbc_encrypt -.type vpaes_cbc_encrypt,@function -.align 16 -vpaes_cbc_encrypt: -.L_vpaes_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - subl $16,%eax - jc .L020cbc_abort - leal -56(%esp),%ebx - movl 36(%esp),%ebp - andl $-16,%ebx - movl 40(%esp),%ecx - xchgl %esp,%ebx - movdqu (%ebp),%xmm1 - subl %esi,%edi - movl %ebx,48(%esp) - movl %edi,(%esp) - movl %edx,4(%esp) - movl %ebp,8(%esp) - movl %eax,%edi - leal .L_vpaes_consts+0x30-.L021pic_point,%ebp - call _vpaes_preheat -.L021pic_point: - cmpl $0,%ecx - je .L022cbc_dec_loop - jmp .L023cbc_enc_loop -.align 16 -.L023cbc_enc_loop: - movdqu (%esi),%xmm0 - pxor %xmm1,%xmm0 - call _vpaes_encrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - movdqa %xmm0,%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc .L023cbc_enc_loop - jmp .L024cbc_done -.align 16 -.L022cbc_dec_loop: - movdqu (%esi),%xmm0 - movdqa %xmm1,16(%esp) - movdqa %xmm0,32(%esp) - call _vpaes_decrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - pxor 16(%esp),%xmm0 - movdqa 32(%esp),%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc .L022cbc_dec_loop -.L024cbc_done: - movl 8(%esp),%ebx - movl 48(%esp),%esp - movdqu %xmm1,(%ebx) -.L020cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_cbc_encrypt,.-.L_vpaes_cbc_encrypt_begin diff --git a/deps/openssl/asm/x86-elf-gas/bf/bf-586.s b/deps/openssl/asm/x86-elf-gas/bf/bf-586.s deleted file mode 100644 index aa718d40cd5c2a..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/bf/bf-586.s +++ /dev/null @@ -1,896 +0,0 @@ -.file "bf-586.s" -.text -.globl BF_encrypt -.type BF_encrypt,@function -.align 16 -BF_encrypt: -.L_BF_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - xorl %eax,%eax - movl (%ebp),%ebx - xorl %ecx,%ecx - xorl %ebx,%edi - - - movl 4(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 8(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 12(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 16(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 20(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 24(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 28(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 32(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 36(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 40(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 44(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 48(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 52(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 56(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 60(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 64(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - - movl 20(%esp),%eax - xorl %ebx,%edi - movl 68(%ebp),%edx - xorl %edx,%esi - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size BF_encrypt,.-.L_BF_encrypt_begin -.globl BF_decrypt -.type BF_decrypt,@function -.align 16 -BF_decrypt: -.L_BF_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - xorl %eax,%eax - movl 68(%ebp),%ebx - xorl %ecx,%ecx - xorl %ebx,%edi - - - movl 64(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 60(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 56(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 52(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 48(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 44(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 40(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 36(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 32(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 28(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 24(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 20(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 16(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 12(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 8(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 4(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - - movl 20(%esp),%eax - xorl %ebx,%edi - movl (%ebp),%edx - xorl %edx,%esi - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size BF_decrypt,.-.L_BF_decrypt_begin -.globl BF_cbc_encrypt -.type BF_cbc_encrypt,@function -.align 16 -BF_cbc_encrypt: -.L_BF_cbc_encrypt_begin: - - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ebp - - 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 56(%esp),%ecx - - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz .L000decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz .L001encrypt_finish -.L002encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L002encrypt_loop -.L001encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L003finish - call .L004PIC_point -.L004PIC_point: - popl %edx - leal .L005cbc_enc_jmp_table-.L004PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -.L006ej7: - movb 6(%esi),%dh - shll $8,%edx -.L007ej6: - movb 5(%esi),%dh -.L008ej5: - movb 4(%esi),%dl -.L009ej4: - movl (%esi),%ecx - jmp .L010ejend -.L011ej3: - movb 2(%esi),%ch - shll $8,%ecx -.L012ej2: - movb 1(%esi),%ch -.L013ej1: - movb (%esi),%cl -.L010ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp .L003finish -.L000decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz .L014decrypt_finish -.L015decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L015decrypt_loop -.L014decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L003finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -.L016dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -.L017dj6: - movb %dh,5(%edi) -.L018dj5: - movb %dl,4(%edi) -.L019dj4: - movl %ecx,(%edi) - jmp .L020djend -.L021dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -.L022dj2: - movb %ch,1(%esi) -.L023dj1: - movb %cl,(%esi) -.L020djend: - jmp .L003finish -.L003finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L005cbc_enc_jmp_table: -.long 0 -.long .L013ej1-.L004PIC_point -.long .L012ej2-.L004PIC_point -.long .L011ej3-.L004PIC_point -.long .L009ej4-.L004PIC_point -.long .L008ej5-.L004PIC_point -.long .L007ej6-.L004PIC_point -.long .L006ej7-.L004PIC_point -.align 64 -.size BF_cbc_encrypt,.-.L_BF_cbc_encrypt_begin diff --git a/deps/openssl/asm/x86-elf-gas/bn/bn-586.s b/deps/openssl/asm/x86-elf-gas/bn/bn-586.s deleted file mode 100644 index 3e20e9df09cc2a..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/bn/bn-586.s +++ /dev/null @@ -1,1521 +0,0 @@ -.file "../openssl/crypto/bn/asm/bn-586.s" -.text -.globl bn_mul_add_words -.type bn_mul_add_words,@function -.align 16 -bn_mul_add_words: -.L_bn_mul_add_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L000maw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 - jmp .L001maw_sse2_entry -.align 16 -.L002maw_sse2_unrolled: - movd (%eax),%mm3 - paddq %mm3,%mm1 - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - movd 4(%edx),%mm4 - pmuludq %mm0,%mm4 - movd 8(%edx),%mm6 - pmuludq %mm0,%mm6 - movd 12(%edx),%mm7 - pmuludq %mm0,%mm7 - paddq %mm2,%mm1 - movd 4(%eax),%mm3 - paddq %mm4,%mm3 - movd 8(%eax),%mm5 - paddq %mm6,%mm5 - movd 12(%eax),%mm4 - paddq %mm4,%mm7 - movd %mm1,(%eax) - movd 16(%edx),%mm2 - pmuludq %mm0,%mm2 - psrlq $32,%mm1 - movd 20(%edx),%mm4 - pmuludq %mm0,%mm4 - paddq %mm3,%mm1 - movd 24(%edx),%mm6 - pmuludq %mm0,%mm6 - movd %mm1,4(%eax) - psrlq $32,%mm1 - movd 28(%edx),%mm3 - addl $32,%edx - pmuludq %mm0,%mm3 - paddq %mm5,%mm1 - movd 16(%eax),%mm5 - paddq %mm5,%mm2 - movd %mm1,8(%eax) - psrlq $32,%mm1 - paddq %mm7,%mm1 - movd 20(%eax),%mm5 - paddq %mm5,%mm4 - movd %mm1,12(%eax) - psrlq $32,%mm1 - paddq %mm2,%mm1 - movd 24(%eax),%mm5 - paddq %mm5,%mm6 - movd %mm1,16(%eax) - psrlq $32,%mm1 - paddq %mm4,%mm1 - movd 28(%eax),%mm5 - paddq %mm5,%mm3 - movd %mm1,20(%eax) - psrlq $32,%mm1 - paddq %mm6,%mm1 - movd %mm1,24(%eax) - psrlq $32,%mm1 - paddq %mm3,%mm1 - movd %mm1,28(%eax) - leal 32(%eax),%eax - psrlq $32,%mm1 - subl $8,%ecx - jz .L003maw_sse2_exit -.L001maw_sse2_entry: - testl $4294967288,%ecx - jnz .L002maw_sse2_unrolled -.align 4 -.L004maw_sse2_loop: - movd (%edx),%mm2 - movd (%eax),%mm3 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm3,%mm1 - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz .L004maw_sse2_loop -.L003maw_sse2_exit: - movd %mm1,%eax - emms - ret -.align 16 -.L000maw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 28(%esp),%ecx - movl 24(%esp),%ebx - andl $4294967288,%ecx - movl 32(%esp),%ebp - pushl %ecx - jz .L005maw_finish -.align 16 -.L006maw_loop: - - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - - movl 28(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 28(%edi),%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - subl $8,%ecx - leal 32(%ebx),%ebx - leal 32(%edi),%edi - jnz .L006maw_loop -.L005maw_finish: - movl 32(%esp),%ecx - andl $7,%ecx - jnz .L007maw_finish2 - jmp .L008maw_end -.L007maw_finish2: - - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,4(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,8(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,12(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,16(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,20(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -.L008maw_end: - movl %esi,%eax - popl %ecx - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_add_words,.-.L_bn_mul_add_words_begin -.globl bn_mul_words -.type bn_mul_words,@function -.align 16 -bn_mul_words: -.L_bn_mul_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L009mw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 -.align 16 -.L010mw_sse2_loop: - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz .L010mw_sse2_loop - movd %mm1,%eax - emms - ret -.align 16 -.L009mw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ebp - movl 32(%esp),%ecx - andl $4294967288,%ebp - jz .L011mw_finish -.L012mw_loop: - - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - - movl 28(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - addl $32,%ebx - addl $32,%edi - subl $8,%ebp - jz .L011mw_finish - jmp .L012mw_loop -.L011mw_finish: - movl 28(%esp),%ebp - andl $7,%ebp - jnz .L013mw_finish2 - jmp .L014mw_end -.L013mw_finish2: - - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -.L014mw_end: - movl %esi,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_words,.-.L_bn_mul_words_begin -.globl bn_sqr_words -.type bn_sqr_words,@function -.align 16 -bn_sqr_words: -.L_bn_sqr_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L015sqr_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx -.align 16 -.L016sqr_sse2_loop: - movd (%edx),%mm0 - pmuludq %mm0,%mm0 - leal 4(%edx),%edx - movq %mm0,(%eax) - subl $1,%ecx - leal 8(%eax),%eax - jnz .L016sqr_sse2_loop - emms - ret -.align 16 -.L015sqr_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebx - andl $4294967288,%ebx - jz .L017sw_finish -.L018sw_loop: - - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - movl %edx,4(%esi) - - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - movl %edx,12(%esi) - - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - movl %edx,20(%esi) - - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - movl %edx,28(%esi) - - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - movl %edx,36(%esi) - - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - movl %edx,44(%esi) - - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) - - movl 28(%edi),%eax - mull %eax - movl %eax,56(%esi) - movl %edx,60(%esi) - - addl $32,%edi - addl $64,%esi - subl $8,%ebx - jnz .L018sw_loop -.L017sw_finish: - movl 28(%esp),%ebx - andl $7,%ebx - jz .L019sw_end - - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - decl %ebx - movl %edx,4(%esi) - jz .L019sw_end - - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - decl %ebx - movl %edx,12(%esi) - jz .L019sw_end - - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - decl %ebx - movl %edx,20(%esi) - jz .L019sw_end - - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - decl %ebx - movl %edx,28(%esi) - jz .L019sw_end - - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - decl %ebx - movl %edx,36(%esi) - jz .L019sw_end - - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - decl %ebx - movl %edx,44(%esi) - jz .L019sw_end - - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) -.L019sw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sqr_words,.-.L_bn_sqr_words_begin -.globl bn_div_words -.type bn_div_words,@function -.align 16 -bn_div_words: -.L_bn_div_words_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 12(%esp),%ecx - divl %ecx - ret -.size bn_div_words,.-.L_bn_div_words_begin -.globl bn_add_words -.type bn_add_words,@function -.align 16 -bn_add_words: -.L_bn_add_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L020aw_finish -.L021aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L021aw_loop -.L020aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L022aw_end - - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L022aw_end - - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L022aw_end - - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L022aw_end - - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L022aw_end - - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L022aw_end - - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L022aw_end - - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -.L022aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_add_words,.-.L_bn_add_words_begin -.globl bn_sub_words -.type bn_sub_words,@function -.align 16 -bn_sub_words: -.L_bn_sub_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L023aw_finish -.L024aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L024aw_loop -.L023aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L025aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L025aw_end - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L025aw_end - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L025aw_end - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L025aw_end - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L025aw_end - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L025aw_end - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -.L025aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sub_words,.-.L_bn_sub_words_begin -.globl bn_sub_part_words -.type bn_sub_part_words,@function -.align 16 -bn_sub_part_words: -.L_bn_sub_part_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L026aw_finish -.L027aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L027aw_loop -.L026aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx -.L028aw_end: - cmpl $0,36(%esp) - je .L029pw_end - movl 36(%esp),%ebp - cmpl $0,%ebp - je .L029pw_end - jge .L030pw_pos - - movl $0,%edx - subl %ebp,%edx - movl %edx,%ebp - andl $4294967288,%ebp - jz .L031pw_neg_finish -.L032pw_neg_loop: - - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl $0,%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L032pw_neg_loop -.L031pw_neg_finish: - movl 36(%esp),%edx - movl $0,%ebp - subl %edx,%ebp - andl $7,%ebp - jz .L029pw_end - - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - jmp .L029pw_end -.L030pw_pos: - andl $4294967288,%ebp - jz .L033pw_pos_finish -.L034pw_pos_loop: - - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc .L035pw_nc0 - - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc .L036pw_nc1 - - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc .L037pw_nc2 - - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc .L038pw_nc3 - - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc .L039pw_nc4 - - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc .L040pw_nc5 - - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc .L041pw_nc6 - - movl 28(%esi),%ecx - subl %eax,%ecx - movl %ecx,28(%ebx) - jnc .L042pw_nc7 - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz .L034pw_pos_loop -.L033pw_pos_finish: - movl 36(%esp),%ebp - andl $7,%ebp - jz .L029pw_end - - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc .L043pw_tail_nc0 - decl %ebp - jz .L029pw_end - - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc .L044pw_tail_nc1 - decl %ebp - jz .L029pw_end - - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc .L045pw_tail_nc2 - decl %ebp - jz .L029pw_end - - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc .L046pw_tail_nc3 - decl %ebp - jz .L029pw_end - - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc .L047pw_tail_nc4 - decl %ebp - jz .L029pw_end - - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc .L048pw_tail_nc5 - decl %ebp - jz .L029pw_end - - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc .L049pw_tail_nc6 - movl $1,%eax - jmp .L029pw_end -.L050pw_nc_loop: - movl (%esi),%ecx - movl %ecx,(%ebx) -.L035pw_nc0: - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -.L036pw_nc1: - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -.L037pw_nc2: - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -.L038pw_nc3: - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -.L039pw_nc4: - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -.L040pw_nc5: - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -.L041pw_nc6: - movl 28(%esi),%ecx - movl %ecx,28(%ebx) -.L042pw_nc7: - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz .L050pw_nc_loop - movl 36(%esp),%ebp - andl $7,%ebp - jz .L051pw_nc_end - movl (%esi),%ecx - movl %ecx,(%ebx) -.L043pw_tail_nc0: - decl %ebp - jz .L051pw_nc_end - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -.L044pw_tail_nc1: - decl %ebp - jz .L051pw_nc_end - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -.L045pw_tail_nc2: - decl %ebp - jz .L051pw_nc_end - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -.L046pw_tail_nc3: - decl %ebp - jz .L051pw_nc_end - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -.L047pw_tail_nc4: - decl %ebp - jz .L051pw_nc_end - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -.L048pw_tail_nc5: - decl %ebp - jz .L051pw_nc_end - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -.L049pw_tail_nc6: -.L051pw_nc_end: - movl $0,%eax -.L029pw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sub_part_words,.-.L_bn_sub_part_words_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/bn/co-586.s b/deps/openssl/asm/x86-elf-gas/bn/co-586.s deleted file mode 100644 index 1128e3e959a3a6..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/bn/co-586.s +++ /dev/null @@ -1,1254 +0,0 @@ -.file "../openssl/crypto/bn/asm/co-586.s" -.text -.globl bn_mul_comba8 -.type bn_mul_comba8,@function -.align 16 -bn_mul_comba8: -.L_bn_mul_comba8_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 16(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 20(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 24(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,24(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - movl %ecx,28(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - movl %ebp,32(%eax) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - movl %ebx,36(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - movl %ecx,40(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - movl %ebp,44(%eax) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - movl %ebx,48(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - movl %ecx,52(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%eax) - - - movl %ebx,60(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_mul_comba8,.-.L_bn_mul_comba8_begin -.globl bn_mul_comba4 -.type bn_mul_comba4,@function -.align 16 -bn_mul_comba4: -.L_bn_mul_comba4_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 12(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 12(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%eax) - - - movl %ecx,28(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_mul_comba4,.-.L_bn_mul_comba4_begin -.globl bn_sqr_comba8 -.type bn_sqr_comba8,@function -.align 16 -bn_sqr_comba8: -.L_bn_sqr_comba8_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl (%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 12(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl (%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 20(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - movl (%esi),%edx - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,24(%edi) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%eax - adcl $0,%ebx - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,28(%edi) - movl 4(%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 20(%esi),%eax - adcl $0,%ecx - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl 8(%esi),%edx - adcl $0,%ecx - movl %ebp,32(%edi) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 16(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 28(%esi),%eax - adcl $0,%ebp - movl %ebx,36(%edi) - movl 12(%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 16(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%edx - adcl $0,%ebx - movl %ecx,40(%edi) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 20(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 28(%esi),%eax - adcl $0,%ecx - movl %ebp,44(%edi) - movl 20(%esi),%edx - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%edx - adcl $0,%ebp - movl %ebx,48(%edi) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,52(%edi) - - - xorl %ecx,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%edi) - - movl %ebx,60(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_sqr_comba8,.-.L_bn_sqr_comba8_begin -.globl bn_sqr_comba4 -.type bn_sqr_comba4,@function -.align 16 -bn_sqr_comba4: -.L_bn_sqr_comba4_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl 4(%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 12(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%edi) - - movl %ecx,28(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin diff --git a/deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s b/deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s deleted file mode 100644 index d8fff7c102714d..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s +++ /dev/null @@ -1,343 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-gf2m.s" -.text -.type _mul_1x1_mmx,@function -.align 16 -_mul_1x1_mmx: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - andl $1073741823,%ecx - leal (%edx,%edx,1),%ebp - movl $0,(%esp) - andl $2147483647,%edx - movd %eax,%mm2 - movd %ebx,%mm3 - movl %ecx,4(%esp) - xorl %edx,%ecx - pxor %mm5,%mm5 - pxor %mm4,%mm4 - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - pcmpgtd %mm2,%mm5 - paddd %mm2,%mm2 - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - pand %mm3,%mm5 - pcmpgtd %mm2,%mm4 - movl %ecx,20(%esp) - xorl %ecx,%ebp - psllq $31,%mm5 - pand %mm3,%mm4 - movl %edx,24(%esp) - movl $7,%esi - movl %ebp,28(%esp) - movl %esi,%ebp - andl %ebx,%esi - shrl $3,%ebx - movl %ebp,%edi - psllq $30,%mm4 - andl %ebx,%edi - shrl $3,%ebx - movd (%esp,%esi,4),%mm0 - movl %ebp,%esi - andl %ebx,%esi - shrl $3,%ebx - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $3,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $6,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $9,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $12,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $15,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $18,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $21,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $24,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - pxor %mm4,%mm0 - psllq $27,%mm2 - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - pxor %mm5,%mm0 - psllq $30,%mm1 - addl $36,%esp - pxor %mm1,%mm0 - ret -.size _mul_1x1_mmx,.-_mul_1x1_mmx -.type _mul_1x1_ialu,@function -.align 16 -_mul_1x1_ialu: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - leal (,%eax,4),%ebp - andl $1073741823,%ecx - leal (%eax,%eax,1),%edi - sarl $31,%eax - movl $0,(%esp) - andl $2147483647,%edx - movl %ecx,4(%esp) - xorl %edx,%ecx - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - movl %ecx,20(%esp) - xorl %ecx,%ebp - sarl $31,%edi - andl %ebx,%eax - movl %edx,24(%esp) - andl %ebx,%edi - movl %ebp,28(%esp) - movl %eax,%edx - shll $31,%eax - movl %edi,%ecx - shrl $1,%edx - movl $7,%esi - shll $30,%edi - andl %ebx,%esi - shrl $2,%ecx - xorl %edi,%eax - shrl $3,%ebx - movl $7,%edi - andl %ebx,%edi - shrl $3,%ebx - xorl %ecx,%edx - xorl (%esp,%esi,4),%eax - movl $7,%esi - andl %ebx,%esi - shrl $3,%ebx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $3,%ebp - andl %ebx,%edi - shrl $29,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $6,%ecx - andl %ebx,%esi - shrl $26,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $9,%ebp - andl %ebx,%edi - shrl $23,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $12,%ecx - andl %ebx,%esi - shrl $20,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $15,%ebp - andl %ebx,%edi - shrl $17,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $18,%ecx - andl %ebx,%esi - shrl $14,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $21,%ebp - andl %ebx,%edi - shrl $11,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $24,%ecx - andl %ebx,%esi - shrl $8,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl %ebp,%ecx - shll $27,%ebp - movl (%esp,%esi,4),%edi - shrl $5,%ecx - movl %edi,%esi - xorl %ebp,%eax - shll $30,%edi - xorl %ecx,%edx - shrl $2,%esi - xorl %edi,%eax - xorl %esi,%edx - addl $36,%esp - ret -.size _mul_1x1_ialu,.-_mul_1x1_ialu -.globl bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,@function -.align 16 -bn_GF2m_mul_2x2: -.L_bn_GF2m_mul_2x2_begin: - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%eax - movl 4(%edx),%edx - testl $8388608,%eax - jz .L000ialu - testl $16777216,%eax - jz .L001mmx - testl $2,%edx - jz .L001mmx - movups 8(%esp),%xmm0 - shufps $177,%xmm0,%xmm0 -.byte 102,15,58,68,192,1 - movl 4(%esp),%eax - movups %xmm0,(%eax) - ret -.align 16 -.L001mmx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%eax - movl 32(%esp),%ebx - call _mul_1x1_mmx - movq %mm0,%mm7 - movl 28(%esp),%eax - movl 36(%esp),%ebx - call _mul_1x1_mmx - movq %mm0,%mm6 - movl 24(%esp),%eax - movl 32(%esp),%ebx - xorl 28(%esp),%eax - xorl 36(%esp),%ebx - call _mul_1x1_mmx - pxor %mm7,%mm0 - movl 20(%esp),%eax - pxor %mm6,%mm0 - movq %mm0,%mm2 - psllq $32,%mm0 - popl %edi - psrlq $32,%mm2 - popl %esi - pxor %mm6,%mm0 - popl %ebx - pxor %mm7,%mm2 - movq %mm0,(%eax) - popl %ebp - movq %mm2,8(%eax) - emms - ret -.align 16 -.L000ialu: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $20,%esp - movl 44(%esp),%eax - movl 52(%esp),%ebx - call _mul_1x1_ialu - movl %eax,8(%esp) - movl %edx,12(%esp) - movl 48(%esp),%eax - movl 56(%esp),%ebx - call _mul_1x1_ialu - movl %eax,(%esp) - movl %edx,4(%esp) - movl 44(%esp),%eax - movl 52(%esp),%ebx - xorl 48(%esp),%eax - xorl 56(%esp),%ebx - call _mul_1x1_ialu - movl 40(%esp),%ebp - movl (%esp),%ebx - movl 4(%esp),%ecx - movl 8(%esp),%edi - movl 12(%esp),%esi - xorl %edx,%eax - xorl %ecx,%edx - xorl %ebx,%eax - movl %ebx,(%ebp) - xorl %edi,%edx - movl %esi,12(%ebp) - xorl %esi,%eax - addl $20,%esp - xorl %esi,%edx - popl %edi - xorl %edx,%eax - popl %esi - movl %edx,8(%ebp) - popl %ebx - movl %eax,4(%ebp) - popl %ebp - ret -.size bn_GF2m_mul_2x2,.-.L_bn_GF2m_mul_2x2_begin -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -.byte 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/bn/x86-mont.s b/deps/openssl/asm/x86-elf-gas/bn/x86-mont.s deleted file mode 100644 index b683577231ad00..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/bn/x86-mont.s +++ /dev/null @@ -1,471 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-mont.s" -.text -.globl bn_mul_mont -.type bn_mul_mont,@function -.align 16 -bn_mul_mont: -.L_bn_mul_mont_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %eax,%eax - movl 40(%esp),%edi - cmpl $4,%edi - jl .L000just_leave - leal 20(%esp),%esi - leal 24(%esp),%edx - addl $2,%edi - negl %edi - leal -32(%esp,%edi,4),%ebp - negl %edi - movl %ebp,%eax - subl %edx,%eax - andl $2047,%eax - subl %eax,%ebp - xorl %ebp,%edx - andl $2048,%edx - xorl $2048,%edx - subl %edx,%ebp - andl $-64,%ebp - movl %esp,%eax - subl %ebp,%eax - andl $-4096,%eax - movl %esp,%edx - leal (%ebp,%eax,1),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja .L001page_walk - jmp .L002page_walk_done -.align 16 -.L001page_walk: - leal -4096(%esp),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja .L001page_walk -.L002page_walk_done: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%ebp - movl 16(%esi),%esi - movl (%esi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %ebp,16(%esp) - movl %esi,20(%esp) - leal -3(%edi),%ebx - movl %edx,24(%esp) - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L003non_sse2 - movl $-1,%eax - movd %eax,%mm7 - movl 8(%esp),%esi - movl 12(%esp),%edi - movl 16(%esp),%ebp - xorl %edx,%edx - xorl %ecx,%ecx - movd (%edi),%mm4 - movd (%esi),%mm5 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - movq %mm5,%mm2 - movq %mm5,%mm0 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - incl %ecx -.align 16 -.L0041st: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - leal 1(%ecx),%ecx - cmpl %ebx,%ecx - jl .L0041st - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm2,%mm3 - movq %mm3,32(%esp,%ebx,4) - incl %edx -.L005outer: - xorl %ecx,%ecx - movd (%edi,%edx,4),%mm4 - movd (%esi),%mm5 - movd 32(%esp),%mm6 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - paddq %mm6,%mm5 - movq %mm5,%mm0 - movq %mm5,%mm2 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 36(%esp),%mm6 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm6,%mm2 - incl %ecx - decl %ebx -.L006inner: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - movd 36(%esp,%ecx,4),%mm6 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - paddq %mm6,%mm2 - decl %ebx - leal 1(%ecx),%ecx - jnz .L006inner - movl %ecx,%ebx - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - movd 36(%esp,%ebx,4),%mm6 - paddq %mm2,%mm3 - paddq %mm6,%mm3 - movq %mm3,32(%esp,%ebx,4) - leal 1(%edx),%edx - cmpl %ebx,%edx - jle .L005outer - emms - jmp .L007common_tail -.align 16 -.L003non_sse2: - movl 8(%esp),%esi - leal 1(%ebx),%ebp - movl 12(%esp),%edi - xorl %ecx,%ecx - movl %esi,%edx - andl $1,%ebp - subl %edi,%edx - leal 4(%edi,%ebx,4),%eax - orl %edx,%ebp - movl (%edi),%edi - jz .L008bn_sqr_mont - movl %eax,28(%esp) - movl (%esi),%eax - xorl %edx,%edx -.align 16 -.L009mull: - movl %edx,%ebp - mull %edi - addl %eax,%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - movl (%esi,%ecx,4),%eax - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl .L009mull - movl %edx,%ebp - mull %edi - movl 20(%esp),%edi - addl %ebp,%eax - movl 16(%esp),%esi - adcl $0,%edx - imull 32(%esp),%edi - movl %eax,32(%esp,%ebx,4) - xorl %ecx,%ecx - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - movl (%esi),%eax - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - incl %ecx - jmp .L0102ndmadd -.align 16 -.L0111stmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl .L0111stmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - addl %eax,%ebp - adcl $0,%edx - imull 32(%esp),%edi - xorl %ecx,%ecx - addl 36(%esp,%ebx,4),%edx - movl %ebp,32(%esp,%ebx,4) - adcl $0,%ecx - movl (%esi),%eax - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - movl $1,%ecx -.align 16 -.L0102ndmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl .L0102ndmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - xorl %eax,%eax - movl 12(%esp),%ecx - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - leal 4(%ecx),%ecx - movl %edx,32(%esp,%ebx,4) - cmpl 28(%esp),%ecx - movl %eax,36(%esp,%ebx,4) - je .L007common_tail - movl (%ecx),%edi - movl 8(%esp),%esi - movl %ecx,12(%esp) - xorl %ecx,%ecx - xorl %edx,%edx - movl (%esi),%eax - jmp .L0111stmadd -.align 16 -.L008bn_sqr_mont: - movl %ebx,(%esp) - movl %ecx,12(%esp) - movl %edi,%eax - mull %edi - movl %eax,32(%esp) - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx - incl %ecx -.align 16 -.L012sqr: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal 1(%ecx),%ecx - adcl $0,%edx - leal (%ebx,%eax,2),%ebp - shrl $31,%eax - cmpl (%esp),%ecx - movl %eax,%ebx - movl %ebp,28(%esp,%ecx,4) - jl .L012sqr - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - leal (%ebx,%eax,2),%ebp - imull 32(%esp),%edi - shrl $31,%eax - movl %ebp,32(%esp,%ecx,4) - leal (%eax,%edx,2),%ebp - movl (%esi),%eax - shrl $31,%edx - movl %ebp,36(%esp,%ecx,4) - movl %edx,40(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - movl %ecx,%ebx - adcl $0,%edx - movl 4(%esi),%eax - movl $1,%ecx -.align 16 -.L0133rdmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - movl 4(%esi,%ecx,4),%eax - adcl $0,%edx - movl %ebp,28(%esp,%ecx,4) - movl %edx,%ebp - mull %edi - addl 36(%esp,%ecx,4),%ebp - leal 2(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl .L0133rdmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - movl 12(%esp),%ecx - xorl %eax,%eax - movl 8(%esp),%esi - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - movl %edx,32(%esp,%ebx,4) - cmpl %ebx,%ecx - movl %eax,36(%esp,%ebx,4) - je .L007common_tail - movl 4(%esi,%ecx,4),%edi - leal 1(%ecx),%ecx - movl %edi,%eax - movl %ecx,12(%esp) - mull %edi - addl 32(%esp,%ecx,4),%eax - adcl $0,%edx - movl %eax,32(%esp,%ecx,4) - xorl %ebp,%ebp - cmpl %ebx,%ecx - leal 1(%ecx),%ecx - je .L014sqrlast - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx -.align 16 -.L015sqradd: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal (%eax,%eax,1),%ebp - adcl $0,%edx - shrl $31,%eax - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%eax - addl %ebx,%ebp - adcl $0,%eax - cmpl (%esp),%ecx - movl %ebp,28(%esp,%ecx,4) - movl %eax,%ebx - jle .L015sqradd - movl %edx,%ebp - addl %edx,%edx - shrl $31,%ebp - addl %ebx,%edx - adcl $0,%ebp -.L014sqrlast: - movl 20(%esp),%edi - movl 16(%esp),%esi - imull 32(%esp),%edi - addl 32(%esp,%ecx,4),%edx - movl (%esi),%eax - adcl $0,%ebp - movl %edx,32(%esp,%ecx,4) - movl %ebp,36(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - leal -1(%ecx),%ebx - adcl $0,%edx - movl $1,%ecx - movl 4(%esi),%eax - jmp .L0133rdmadd -.align 16 -.L007common_tail: - movl 16(%esp),%ebp - movl 4(%esp),%edi - leal 32(%esp),%esi - movl (%esi),%eax - movl %ebx,%ecx - xorl %edx,%edx -.align 16 -.L016sub: - sbbl (%ebp,%edx,4),%eax - movl %eax,(%edi,%edx,4) - decl %ecx - movl 4(%esi,%edx,4),%eax - leal 1(%edx),%edx - jge .L016sub - sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi -.align 16 -.L017copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) - movl %ecx,32(%esp,%ebx,4) - decl %ebx - jge .L017copy - movl 24(%esp),%esp - movl $1,%eax -.L000just_leave: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_mont,.-.L_bn_mul_mont_begin -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -.byte 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -.byte 111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/camellia/cmll-x86.s b/deps/openssl/asm/x86-elf-gas/camellia/cmll-x86.s deleted file mode 100644 index 5c87910e34eb36..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/camellia/cmll-x86.s +++ /dev/null @@ -1,2375 +0,0 @@ -.file "cmll-586.s" -.text -.globl Camellia_EncryptBlock_Rounds -.type Camellia_EncryptBlock_Rounds,@function -.align 16 -Camellia_EncryptBlock_Rounds: -.L_Camellia_EncryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call .L000pic_point -.L000pic_point: - popl %ebp - leal .LCamellia_SBOX-.L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_EncryptBlock_Rounds,.-.L_Camellia_EncryptBlock_Rounds_begin -.globl Camellia_EncryptBlock -.type Camellia_EncryptBlock,@function -.align 16 -Camellia_EncryptBlock: -.L_Camellia_EncryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp .L_Camellia_EncryptBlock_Rounds_begin -.size Camellia_EncryptBlock,.-.L_Camellia_EncryptBlock_begin -.globl Camellia_encrypt -.type Camellia_encrypt,@function -.align 16 -Camellia_encrypt: -.L_Camellia_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call .L001pic_point -.L001pic_point: - popl %ebp - leal .LCamellia_SBOX-.L001pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_encrypt,.-.L_Camellia_encrypt_begin -.type _x86_Camellia_encrypt,@function -.align 16 -_x86_Camellia_encrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 16(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 16 -.L002loop: - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 52(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 56(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 60(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 64(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - addl $64,%edi - cmpl 20(%esp),%edi - je .L003done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 12(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 4(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl 8(%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl 16(%edi),%esi - movl %edx,16(%esp) - jmp .L002loop -.align 8 -.L003done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.size _x86_Camellia_encrypt,.-_x86_Camellia_encrypt -.globl Camellia_DecryptBlock_Rounds -.type Camellia_DecryptBlock_Rounds,@function -.align 16 -Camellia_DecryptBlock_Rounds: -.L_Camellia_DecryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call .L004pic_point -.L004pic_point: - popl %ebp - leal .LCamellia_SBOX-.L004pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_DecryptBlock_Rounds,.-.L_Camellia_DecryptBlock_Rounds_begin -.globl Camellia_DecryptBlock -.type Camellia_DecryptBlock,@function -.align 16 -Camellia_DecryptBlock: -.L_Camellia_DecryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp .L_Camellia_DecryptBlock_Rounds_begin -.size Camellia_DecryptBlock,.-.L_Camellia_DecryptBlock_begin -.globl Camellia_decrypt -.type Camellia_decrypt,@function -.align 16 -Camellia_decrypt: -.L_Camellia_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call .L005pic_point -.L005pic_point: - popl %ebp - leal .LCamellia_SBOX-.L005pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_decrypt,.-.L_Camellia_decrypt_begin -.type _x86_Camellia_decrypt,@function -.align 16 -_x86_Camellia_decrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl -8(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 16 -.L006loop: - xorl %esi,%eax - xorl -4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -16(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -24(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -32(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -40(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -48(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -56(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - subl $64,%edi - cmpl 20(%esp),%edi - je .L007done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 4(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 12(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl (%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl -8(%edi),%esi - movl %edx,16(%esp) - jmp .L006loop -.align 8 -.L007done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%ecx - xorl 12(%edi),%edx - xorl (%edi),%eax - xorl 4(%edi),%ebx - ret -.size _x86_Camellia_decrypt,.-_x86_Camellia_decrypt -.globl Camellia_Ekeygen -.type Camellia_Ekeygen,@function -.align 16 -Camellia_Ekeygen: -.L_Camellia_Ekeygen_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $16,%esp - movl 36(%esp),%ebp - movl 40(%esp),%esi - movl 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - cmpl $128,%ebp - je .L0081st128 - movl 16(%esi),%eax - movl 20(%esi),%ebx - cmpl $192,%ebp - je .L0091st192 - movl 24(%esi),%ecx - movl 28(%esi),%edx - jmp .L0101st256 -.align 4 -.L0091st192: - movl %eax,%ecx - movl %ebx,%edx - notl %ecx - notl %edx -.align 4 -.L0101st256: - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%edi) - movl %ebx,36(%edi) - movl %ecx,40(%edi) - movl %edx,44(%edi) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx -.align 4 -.L0081st128: - call .L011pic_point -.L011pic_point: - popl %ebp - leal .LCamellia_SBOX-.L011pic_point(%ebp),%ebp - leal .LCamellia_SIGMA-.LCamellia_SBOX(%ebp),%edi - movl (%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 8(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 16(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%esi - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 16(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 36(%esp),%esi - cmpl $128,%esi - jne .L0122nd256 - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-80(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-76(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-72(%edi) - movl %edx,-68(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-64(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-60(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-56(%edi) - movl %edx,-52(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-32(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-28(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-16(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-12(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-8(%edi) - movl %edx,-4(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,32(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,36(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,40(%edi) - movl %eax,44(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,64(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,68(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,72(%edi) - movl %eax,76(%edi) - movl -128(%edi),%ebx - movl -124(%edi),%ecx - movl -120(%edi),%edx - movl -116(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,-48(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,-44(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-40(%edi) - movl %eax,-36(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-24(%edi) - movl %eax,-20(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,4(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,8(%edi) - movl %eax,12(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,16(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,20(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,48(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,52(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,56(%edi) - movl %eax,60(%edi) - movl $3,%eax - jmp .L013done -.align 16 -.L0122nd256: - movl 44(%esp),%esi - movl %eax,48(%esi) - movl %ebx,52(%esi) - movl %ecx,56(%esi) - movl %edx,60(%esi) - xorl 32(%esi),%eax - xorl 36(%esi),%ebx - xorl 40(%esi),%ecx - xorl 44(%esi),%edx - movl 32(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,-48(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,-44(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-40(%edi) - movl %edx,-36(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,32(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,36(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,40(%edi) - movl %edx,44(%edi) - movl %ebx,%ebp - shll $19,%ebx - movl %ecx,%esi - shrl $13,%esi - shll $19,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $19,%edx - movl %ebx,128(%edi) - shrl $13,%esi - orl %esi,%ecx - shrl $13,%ebp - movl %eax,%esi - shrl $13,%esi - movl %ecx,132(%edi) - shll $19,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,136(%edi) - movl %eax,140(%edi) - movl -96(%edi),%ebx - movl -92(%edi),%ecx - movl -88(%edi),%edx - movl -84(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-64(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-60(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-56(%edi) - movl %eax,-52(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,16(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,20(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ecx,%ebp - shll $2,%ecx - movl %edx,%esi - shrl $30,%esi - shll $2,%edx - orl %esi,%ecx - movl %eax,%esi - shll $2,%eax - movl %ecx,80(%edi) - shrl $30,%esi - orl %esi,%edx - shrl $30,%ebp - movl %ebx,%esi - shrl $30,%esi - movl %edx,84(%edi) - shll $2,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,88(%edi) - movl %ebx,92(%edi) - movl -80(%edi),%ecx - movl -76(%edi),%edx - movl -72(%edi),%eax - movl -68(%edi),%ebx - movl %ecx,%ebp - shll $15,%ecx - movl %edx,%esi - shrl $17,%esi - shll $15,%edx - orl %esi,%ecx - movl %eax,%esi - shll $15,%eax - movl %ecx,-80(%edi) - shrl $17,%esi - orl %esi,%edx - shrl $17,%ebp - movl %ebx,%esi - shrl $17,%esi - movl %edx,-76(%edi) - shll $15,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-72(%edi) - movl %ebx,-68(%edi) - movl %ecx,%ebp - shll $30,%ecx - movl %edx,%esi - shrl $2,%esi - shll $30,%edx - orl %esi,%ecx - movl %eax,%esi - shll $30,%eax - movl %ecx,-16(%edi) - shrl $2,%esi - orl %esi,%edx - shrl $2,%ebp - movl %ebx,%esi - shrl $2,%esi - movl %edx,-12(%edi) - shll $30,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-8(%edi) - movl %ebx,-4(%edi) - movl %edx,64(%edi) - movl %eax,68(%edi) - movl %ebx,72(%edi) - movl %ecx,76(%edi) - movl %edx,%ebp - shll $17,%edx - movl %eax,%esi - shrl $15,%esi - shll $17,%eax - orl %esi,%edx - movl %ebx,%esi - shll $17,%ebx - movl %edx,96(%edi) - shrl $15,%esi - orl %esi,%eax - shrl $15,%ebp - movl %ecx,%esi - shrl $15,%esi - movl %eax,100(%edi) - shll $17,%ecx - orl %esi,%ebx - orl %ebp,%ecx - movl %ebx,104(%edi) - movl %ecx,108(%edi) - movl -128(%edi),%edx - movl -124(%edi),%eax - movl -120(%edi),%ebx - movl -116(%edi),%ecx - movl %eax,%ebp - shll $13,%eax - movl %ebx,%esi - shrl $19,%esi - shll $13,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $13,%ecx - movl %eax,-32(%edi) - shrl $19,%esi - orl %esi,%ebx - shrl $19,%ebp - movl %edx,%esi - shrl $19,%esi - movl %ebx,-28(%edi) - shll $13,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-24(%edi) - movl %edx,-20(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,4(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %eax,%ebp - shll $17,%eax - movl %ebx,%esi - shrl $15,%esi - shll $17,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $17,%ecx - movl %eax,48(%edi) - shrl $15,%esi - orl %esi,%ebx - shrl $15,%ebp - movl %edx,%esi - shrl $15,%esi - movl %ebx,52(%edi) - shll $17,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,56(%edi) - movl %edx,60(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,112(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,116(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,120(%edi) - movl %eax,124(%edi) - movl $4,%eax -.L013done: - leal 144(%edi),%edx - addl $16,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_Ekeygen,.-.L_Camellia_Ekeygen_begin -.globl private_Camellia_set_key -.type private_Camellia_set_key,@function -.align 16 -private_Camellia_set_key: -.L_private_Camellia_set_key_begin: - pushl %ebx - movl 8(%esp),%ecx - movl 12(%esp),%ebx - movl 16(%esp),%edx - movl $-1,%eax - testl %ecx,%ecx - jz .L014done - testl %edx,%edx - jz .L014done - movl $-2,%eax - cmpl $256,%ebx - je .L015arg_ok - cmpl $192,%ebx - je .L015arg_ok - cmpl $128,%ebx - jne .L014done -.align 4 -.L015arg_ok: - pushl %edx - pushl %ecx - pushl %ebx - call .L_Camellia_Ekeygen_begin - addl $12,%esp - movl %eax,(%edx) - xorl %eax,%eax -.align 4 -.L014done: - popl %ebx - ret -.size private_Camellia_set_key,.-.L_private_Camellia_set_key_begin -.align 64 -.LCamellia_SIGMA: -.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0 -.align 64 -.LCamellia_SBOX: -.long 1886416896,1886388336 -.long 2189591040,741081132 -.long 741092352,3014852787 -.long 3974949888,3233808576 -.long 3014898432,3840147684 -.long 656877312,1465319511 -.long 3233857536,3941204202 -.long 3857048832,2930639022 -.long 3840205824,589496355 -.long 2240120064,1802174571 -.long 1465341696,1162149957 -.long 892679424,2779054245 -.long 3941263872,3991732461 -.long 202116096,1330577487 -.long 2930683392,488439837 -.long 1094795520,2459041938 -.long 589505280,2256928902 -.long 4025478912,2947481775 -.long 1802201856,2088501372 -.long 2475922176,522125343 -.long 1162167552,1044250686 -.long 421075200,3705405660 -.long 2779096320,1583218782 -.long 555819264,185270283 -.long 3991792896,2795896998 -.long 235802112,960036921 -.long 1330597632,3587506389 -.long 1313754624,1566376029 -.long 488447232,3654877401 -.long 1701143808,1515847770 -.long 2459079168,1364262993 -.long 3183328512,1819017324 -.long 2256963072,2341142667 -.long 3099113472,2593783962 -.long 2947526400,4227531003 -.long 2408550144,2964324528 -.long 2088532992,1953759348 -.long 3958106880,724238379 -.long 522133248,4042260720 -.long 3469659648,2223243396 -.long 1044266496,3755933919 -.long 808464384,3419078859 -.long 3705461760,875823156 -.long 1600085760,1987444854 -.long 1583242752,1835860077 -.long 3318072576,2846425257 -.long 185273088,3520135377 -.long 437918208,67371012 -.long 2795939328,336855060 -.long 3789676800,976879674 -.long 960051456,3739091166 -.long 3402287616,286326801 -.long 3587560704,842137650 -.long 1195853568,2627469468 -.long 1566399744,1397948499 -.long 1027423488,4075946226 -.long 3654932736,4278059262 -.long 16843008,3486449871 -.long 1515870720,3284336835 -.long 3604403712,2054815866 -.long 1364283648,606339108 -.long 1448498688,3907518696 -.long 1819044864,1616904288 -.long 1296911616,1768489065 -.long 2341178112,2863268010 -.long 218959104,2694840480 -.long 2593823232,2711683233 -.long 1717986816,1650589794 -.long 4227595008,1414791252 -.long 3435973632,505282590 -.long 2964369408,3772776672 -.long 757935360,1684275300 -.long 1953788928,269484048 -.long 303174144,0 -.long 724249344,2745368739 -.long 538976256,1970602101 -.long 4042321920,2324299914 -.long 2981212416,3873833190 -.long 2223277056,151584777 -.long 2576980224,3722248413 -.long 3755990784,2273771655 -.long 1280068608,2206400643 -.long 3419130624,3452764365 -.long 3267543552,2425356432 -.long 875836416,1936916595 -.long 2122219008,4143317238 -.long 1987474944,2644312221 -.long 84215040,3216965823 -.long 1835887872,1381105746 -.long 3082270464,3638034648 -.long 2846468352,3368550600 -.long 825307392,3334865094 -.long 3520188672,2172715137 -.long 387389184,1869545583 -.long 67372032,320012307 -.long 3621246720,1667432547 -.long 336860160,3924361449 -.long 1482184704,2812739751 -.long 976894464,2677997727 -.long 1633771776,3166437564 -.long 3739147776,690552873 -.long 454761216,4193845497 -.long 286331136,791609391 -.long 471604224,3031695540 -.long 842150400,2021130360 -.long 252645120,101056518 -.long 2627509248,3890675943 -.long 370546176,1903231089 -.long 1397969664,3570663636 -.long 404232192,2880110763 -.long 4076007936,2290614408 -.long 572662272,2374828173 -.long 4278124032,1920073842 -.long 1145324544,3115909305 -.long 3486502656,4177002744 -.long 2998055424,2896953516 -.long 3284386560,909508662 -.long 3048584448,707395626 -.long 2054846976,1010565180 -.long 2442236160,4059103473 -.long 606348288,1077936192 -.long 134744064,3553820883 -.long 3907577856,3149594811 -.long 2829625344,1128464451 -.long 1616928768,353697813 -.long 4244438016,2913796269 -.long 1768515840,2004287607 -.long 1347440640,2155872384 -.long 2863311360,2189557890 -.long 3503345664,3974889708 -.long 2694881280,656867367 -.long 2105376000,3856990437 -.long 2711724288,2240086149 -.long 2307492096,892665909 -.long 1650614784,202113036 -.long 2543294208,1094778945 -.long 1414812672,4025417967 -.long 1532713728,2475884691 -.long 505290240,421068825 -.long 2509608192,555810849 -.long 3772833792,235798542 -.long 4294967040,1313734734 -.long 1684300800,1701118053 -.long 3537031680,3183280317 -.long 269488128,3099066552 -.long 3301229568,2408513679 -.long 0,3958046955 -.long 1212696576,3469607118 -.long 2745410304,808452144 -.long 4160222976,1600061535 -.long 1970631936,3318022341 -.long 3688618752,437911578 -.long 2324335104,3789619425 -.long 50529024,3402236106 -.long 3873891840,1195835463 -.long 3671775744,1027407933 -.long 151587072,16842753 -.long 1061109504,3604349142 -.long 3722304768,1448476758 -.long 2492765184,1296891981 -.long 2273806080,218955789 -.long 1549556736,1717960806 -.long 2206434048,3435921612 -.long 33686016,757923885 -.long 3452816640,303169554 -.long 1246382592,538968096 -.long 2425393152,2981167281 -.long 858993408,2576941209 -.long 1936945920,1280049228 -.long 1734829824,3267494082 -.long 4143379968,2122186878 -.long 4092850944,84213765 -.long 2644352256,3082223799 -.long 2139062016,825294897 -.long 3217014528,387383319 -.long 3806519808,3621191895 -.long 1381126656,1482162264 -.long 2610666240,1633747041 -.long 3638089728,454754331 -.long 640034304,471597084 -.long 3368601600,252641295 -.long 926365440,370540566 -.long 3334915584,404226072 -.long 993737472,572653602 -.long 2172748032,1145307204 -.long 2526451200,2998010034 -.long 1869573888,3048538293 -.long 1263225600,2442199185 -.long 320017152,134742024 -.long 3200171520,2829582504 -.long 1667457792,4244373756 -.long 774778368,1347420240 -.long 3924420864,3503292624 -.long 2038003968,2105344125 -.long 2812782336,2307457161 -.long 2358021120,2543255703 -.long 2678038272,1532690523 -.long 1852730880,2509570197 -.long 3166485504,4294902015 -.long 2391707136,3536978130 -.long 690563328,3301179588 -.long 4126536960,1212678216 -.long 4193908992,4160159991 -.long 3065427456,3688562907 -.long 791621376,50528259 -.long 4261281024,3671720154 -.long 3031741440,1061093439 -.long 1499027712,2492727444 -.long 2021160960,1549533276 -.long 2560137216,33685506 -.long 101058048,1246363722 -.long 1785358848,858980403 -.long 3890734848,1734803559 -.long 1179010560,4092788979 -.long 1903259904,2139029631 -.long 3132799488,3806462178 -.long 3570717696,2610626715 -.long 623191296,640024614 -.long 2880154368,926351415 -.long 1111638528,993722427 -.long 2290649088,2526412950 -.long 2728567296,1263206475 -.long 2374864128,3200123070 -.long 4210752000,774766638 -.long 1920102912,2037973113 -.long 117901056,2357985420 -.long 3115956480,1852702830 -.long 1431655680,2391670926 -.long 4177065984,4126474485 -.long 4008635904,3065381046 -.long 2896997376,4261216509 -.long 168430080,1499005017 -.long 909522432,2560098456 -.long 1229539584,1785331818 -.long 707406336,1178992710 -.long 1751672832,3132752058 -.long 1010580480,623181861 -.long 943208448,1111621698 -.long 4059164928,2728525986 -.long 2762253312,4210688250 -.long 1077952512,117899271 -.long 673720320,1431634005 -.long 3553874688,4008575214 -.long 2071689984,168427530 -.long 3149642496,1229520969 -.long 3385444608,1751646312 -.long 1128481536,943194168 -.long 3250700544,2762211492 -.long 353703168,673710120 -.long 3823362816,2071658619 -.long 2913840384,3385393353 -.long 4109693952,3250651329 -.long 2004317952,3823304931 -.long 3351758592,4109631732 -.long 2155905024,3351707847 -.long 2661195264,2661154974 -.long 14737632,939538488 -.long 328965,1090535745 -.long 5789784,369104406 -.long 14277081,1979741814 -.long 6776679,3640711641 -.long 5131854,2466288531 -.long 8487297,1610637408 -.long 13355979,4060148466 -.long 13224393,1912631922 -.long 723723,3254829762 -.long 11447982,2868947883 -.long 6974058,2583730842 -.long 14013909,1962964341 -.long 1579032,100664838 -.long 6118749,1459640151 -.long 8553090,2684395680 -.long 4605510,2432733585 -.long 14671839,4144035831 -.long 14079702,3036722613 -.long 2565927,3372272073 -.long 9079434,2717950626 -.long 3289650,2348846220 -.long 4934475,3523269330 -.long 4342338,2415956112 -.long 14408667,4127258358 -.long 1842204,117442311 -.long 10395294,2801837991 -.long 10263708,654321447 -.long 3815994,2382401166 -.long 13290186,2986390194 -.long 2434341,1224755529 -.long 8092539,3724599006 -.long 855309,1124090691 -.long 7434609,1543527516 -.long 6250335,3607156695 -.long 2039583,3338717127 -.long 16316664,1040203326 -.long 14145495,4110480885 -.long 4079166,2399178639 -.long 10329501,1728079719 -.long 8158332,520101663 -.long 6316128,402659352 -.long 12171705,1845522030 -.long 12500670,2936057775 -.long 12369084,788541231 -.long 9145227,3791708898 -.long 1447446,2231403909 -.long 3421236,218107149 -.long 5066061,1392530259 -.long 12829635,4026593520 -.long 7500402,2617285788 -.long 9803157,1694524773 -.long 11250603,3925928682 -.long 9342606,2734728099 -.long 12237498,2919280302 -.long 8026746,2650840734 -.long 11776947,3959483628 -.long 131586,2147516544 -.long 11842740,754986285 -.long 11382189,1795189611 -.long 10658466,2818615464 -.long 11316396,721431339 -.long 14211288,905983542 -.long 10132122,2785060518 -.long 1513239,3305162181 -.long 1710618,2248181382 -.long 3487029,1291865421 -.long 13421772,855651123 -.long 16250871,4244700669 -.long 10066329,1711302246 -.long 6381921,1476417624 -.long 5921370,2516620950 -.long 15263976,973093434 -.long 2368548,150997257 -.long 5658198,2499843477 -.long 4210752,268439568 -.long 14803425,2013296760 -.long 6513507,3623934168 -.long 592137,1107313218 -.long 3355443,3422604492 -.long 12566463,4009816047 -.long 10000536,637543974 -.long 9934743,3842041317 -.long 8750469,1627414881 -.long 6842472,436214298 -.long 16579836,1056980799 -.long 15527148,989870907 -.long 657930,2181071490 -.long 14342874,3053500086 -.long 7303023,3674266587 -.long 5460819,3556824276 -.long 6447714,2550175896 -.long 10724259,3892373736 -.long 3026478,2332068747 -.long 526344,33554946 -.long 11513775,3942706155 -.long 2631720,167774730 -.long 11579568,738208812 -.long 7631988,486546717 -.long 12763842,2952835248 -.long 12434877,1862299503 -.long 3552822,2365623693 -.long 2236962,2281736328 -.long 3684408,234884622 -.long 6579300,419436825 -.long 1973790,2264958855 -.long 3750201,1308642894 -.long 2894892,184552203 -.long 10921638,2835392937 -.long 3158064,201329676 -.long 15066597,2030074233 -.long 4473924,285217041 -.long 16645629,2130739071 -.long 8947848,570434082 -.long 10461087,3875596263 -.long 6645093,1493195097 -.long 8882055,3774931425 -.long 7039851,3657489114 -.long 16053492,1023425853 -.long 2302755,3355494600 -.long 4737096,301994514 -.long 1052688,67109892 -.long 13750737,1946186868 -.long 5329233,1409307732 -.long 12632256,805318704 -.long 16382457,2113961598 -.long 13816530,3019945140 -.long 10526880,671098920 -.long 5592405,1426085205 -.long 10592673,1744857192 -.long 4276545,1342197840 -.long 16448250,3187719870 -.long 4408131,3489714384 -.long 1250067,3288384708 -.long 12895428,822096177 -.long 3092271,3405827019 -.long 11053224,704653866 -.long 11974326,2902502829 -.long 3947580,251662095 -.long 2829099,3389049546 -.long 12698049,1879076976 -.long 16777215,4278255615 -.long 13158600,838873650 -.long 10855845,1761634665 -.long 2105376,134219784 -.long 9013641,1644192354 -.long 0,0 -.long 9474192,603989028 -.long 4671303,3506491857 -.long 15724527,4211145723 -.long 15395562,3120609978 -.long 12040119,3976261101 -.long 1381653,1157645637 -.long 394758,2164294017 -.long 13487565,1929409395 -.long 11908533,1828744557 -.long 1184274,2214626436 -.long 8289918,2667618207 -.long 12303291,3993038574 -.long 2697513,1241533002 -.long 986895,3271607235 -.long 12105912,771763758 -.long 460551,3238052289 -.long 263172,16777473 -.long 10197915,3858818790 -.long 9737364,620766501 -.long 2171169,1207978056 -.long 6710886,2566953369 -.long 15132390,3103832505 -.long 13553358,3003167667 -.long 15592941,2063629179 -.long 15198183,4177590777 -.long 3881787,3456159438 -.long 16711422,3204497343 -.long 8355711,3741376479 -.long 12961221,1895854449 -.long 10790052,687876393 -.long 3618615,3439381965 -.long 11645361,1811967084 -.long 5000268,318771987 -.long 9539985,1677747300 -.long 7237230,2600508315 -.long 9276813,1660969827 -.long 7763574,2634063261 -.long 197379,3221274816 -.long 2960685,1258310475 -.long 14606046,3070277559 -.long 9868950,2768283045 -.long 2500134,2298513801 -.long 8224125,1593859935 -.long 13027014,2969612721 -.long 6052956,385881879 -.long 13882323,4093703412 -.long 15921906,3154164924 -.long 5197647,3540046803 -.long 1644825,1174423110 -.long 4144959,3472936911 -.long 14474460,922761015 -.long 7960953,1577082462 -.long 1907997,1191200583 -.long 5395026,2483066004 -.long 15461355,4194368250 -.long 15987699,4227923196 -.long 7171437,1526750043 -.long 6184542,2533398423 -.long 16514043,4261478142 -.long 6908265,1509972570 -.long 11711154,2885725356 -.long 15790320,1006648380 -.long 3223857,1275087948 -.long 789516,50332419 -.long 13948116,889206069 -.long 13619151,4076925939 -.long 9211020,587211555 -.long 14869218,3087055032 -.long 7697781,1560304989 -.long 11119017,1778412138 -.long 4868682,2449511058 -.long 5723991,3573601749 -.long 8684676,553656609 -.long 1118481,1140868164 -.long 4539717,1358975313 -.long 1776411,3321939654 -.long 16119285,2097184125 -.long 15000804,956315961 -.long 921102,2197848963 -.long 7566195,3691044060 -.long 11184810,2852170410 -.long 15856113,2080406652 -.long 14540253,1996519287 -.long 5855577,1442862678 -.long 1315860,83887365 -.long 7105644,452991771 -.long 9605778,2751505572 -.long 5526612,352326933 -.long 13684944,872428596 -.long 7895160,503324190 -.long 7368816,469769244 -.long 14935011,4160813304 -.long 4802889,1375752786 -.long 8421504,536879136 -.long 5263440,335549460 -.long 10987431,3909151209 -.long 16185078,3170942397 -.long 7829367,3707821533 -.long 9671571,3825263844 -.long 8816262,2701173153 -.long 8618883,3758153952 -.long 2763306,2315291274 -.long 13092807,4043370993 -.long 5987163,3590379222 -.long 15329769,2046851706 -.long 15658734,3137387451 -.long 9408399,3808486371 -.long 65793,1073758272 -.long 4013373,1325420367 -.globl Camellia_cbc_encrypt -.type Camellia_cbc_encrypt,@function -.align 16 -Camellia_cbc_encrypt: -.L_Camellia_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je .L016enc_out - pushfl - cld - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 36(%esp),%edx - movl 40(%esp),%ebp - leal -64(%esp),%esi - andl $-64,%esi - leal -127(%edx),%edi - subl %esi,%edi - negl %edi - andl $960,%edi - subl %edi,%esi - movl 44(%esp),%edi - xchgl %esi,%esp - addl $4,%esp - movl %esi,20(%esp) - movl %eax,24(%esp) - movl %ebx,28(%esp) - movl %ecx,32(%esp) - movl %edx,36(%esp) - movl %ebp,40(%esp) - call .L017pic_point -.L017pic_point: - popl %ebp - leal .LCamellia_SBOX-.L017pic_point(%ebp),%ebp - movl $32,%esi -.align 4 -.L018prefetch_sbox: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - leal 128(%ebp),%ebp - decl %esi - jnz .L018prefetch_sbox - movl 36(%esp),%eax - subl $4096,%ebp - movl 24(%esp),%esi - movl 272(%eax),%edx - cmpl $0,%edi - je .L019DECRYPT - movl 32(%esp),%ecx - movl 40(%esp),%edi - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %edx,16(%esp) - testl $4294967280,%ecx - jz .L020enc_tail - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4 -.L021enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - bswap %eax - xorl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 24(%esp),%esi - movl 28(%esp),%edi - bswap %eax - bswap %ebx - bswap %ecx - movl %eax,(%edi) - bswap %edx - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%ecx - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edx - movl %edx,28(%esp) - subl $16,%ecx - testl $4294967280,%ecx - movl %ecx,32(%esp) - jnz .L021enc_loop - testl $15,%ecx - jnz .L020enc_tail - movl 40(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 20(%esp),%esp - popfl -.L016enc_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4 -.L020enc_tail: - movl %edi,%eax - movl 28(%esp),%edi - pushl %eax - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je .L022enc_in_place -.align 4 -.long 2767451785 - jmp .L023enc_skip_in_place -.L022enc_in_place: - leal (%edi,%ecx,1),%edi -.L023enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 4 -.long 2868115081 - popl %edi - movl 28(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,32(%esp) - jmp .L021enc_loop -.align 16 -.L019DECRYPT: - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %eax,16(%esp) - movl %edx,36(%esp) - cmpl 28(%esp),%esi - je .L024dec_in_place - movl 40(%esp),%edi - movl %edi,44(%esp) -.align 4 -.L025dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 44(%esp),%edi - movl 32(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc .L026dec_partial - movl %esi,32(%esp) - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %esi,44(%esp) - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edi - movl %edi,28(%esp) - jnz .L025dec_loop - movl 44(%esp),%edi -.L027dec_end: - movl 40(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp .L028dec_out -.align 4 -.L026dec_partial: - leal 44(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%ecx - movl %edi,%esi - movl 28(%esp),%edi -.long 2767451785 - movl 24(%esp),%edi - jmp .L027dec_end -.align 4 -.L024dec_in_place: -.L029dec_in_place_loop: - leal 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - bswap %eax - movl %edx,12(%edi) - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 40(%esp),%edi - movl 28(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,28(%esp) - leal 44(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 24(%esp),%esi - leal 16(%esi),%esi - movl %esi,24(%esp) - movl 32(%esp),%ecx - subl $16,%ecx - jc .L030dec_in_place_partial - movl %ecx,32(%esp) - jnz .L029dec_in_place_loop - jmp .L028dec_out -.align 4 -.L030dec_in_place_partial: - movl 28(%esp),%edi - leal 44(%esp),%esi - leal (%edi,%ecx,1),%edi - leal 16(%esi,%ecx,1),%esi - negl %ecx -.long 2767451785 -.align 4 -.L028dec_out: - movl 20(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_cbc_encrypt,.-.L_Camellia_cbc_encrypt_begin -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x86-elf-gas/cast/cast-586.s b/deps/openssl/asm/x86-elf-gas/cast/cast-586.s deleted file mode 100644 index 3ef7fe32b7d42b..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/cast/cast-586.s +++ /dev/null @@ -1,933 +0,0 @@ -.file "cast-586.s" -.text -.globl CAST_encrypt -.type CAST_encrypt,@function -.align 16 -CAST_encrypt: -.L_CAST_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - - movl 128(%ebp),%eax - pushl %eax - xorl %eax,%eax - - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - popl %edx - orl %edx,%edx - jnz .L000cast_enc_done - - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -.L000cast_enc_done: - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size CAST_encrypt,.-.L_CAST_encrypt_begin -.globl CAST_decrypt -.type CAST_decrypt,@function -.align 16 -CAST_decrypt: -.L_CAST_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - - movl 128(%ebp),%eax - orl %eax,%eax - jnz .L001cast_dec_skip - xorl %eax,%eax - - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -.L001cast_dec_skip: - - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size CAST_decrypt,.-.L_CAST_decrypt_begin -.globl CAST_cbc_encrypt -.type CAST_cbc_encrypt,@function -.align 16 -CAST_cbc_encrypt: -.L_CAST_cbc_encrypt_begin: - - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ebp - - 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 56(%esp),%ecx - - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz .L002decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz .L003encrypt_finish -.L004encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L004encrypt_loop -.L003encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L005finish - call .L006PIC_point -.L006PIC_point: - popl %edx - leal .L007cbc_enc_jmp_table-.L006PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -.L008ej7: - movb 6(%esi),%dh - shll $8,%edx -.L009ej6: - movb 5(%esi),%dh -.L010ej5: - movb 4(%esi),%dl -.L011ej4: - movl (%esi),%ecx - jmp .L012ejend -.L013ej3: - movb 2(%esi),%ch - shll $8,%ecx -.L014ej2: - movb 1(%esi),%ch -.L015ej1: - movb (%esi),%cl -.L012ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp .L005finish -.L002decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz .L016decrypt_finish -.L017decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L017decrypt_loop -.L016decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L005finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -.L018dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -.L019dj6: - movb %dh,5(%edi) -.L020dj5: - movb %dl,4(%edi) -.L021dj4: - movl %ecx,(%edi) - jmp .L022djend -.L023dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -.L024dj2: - movb %ch,1(%esi) -.L025dj1: - movb %cl,(%esi) -.L022djend: - jmp .L005finish -.L005finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L007cbc_enc_jmp_table: -.long 0 -.long .L015ej1-.L006PIC_point -.long .L014ej2-.L006PIC_point -.long .L013ej3-.L006PIC_point -.long .L011ej4-.L006PIC_point -.long .L010ej5-.L006PIC_point -.long .L009ej6-.L006PIC_point -.long .L008ej7-.L006PIC_point -.align 64 -.size CAST_cbc_encrypt,.-.L_CAST_cbc_encrypt_begin diff --git a/deps/openssl/asm/x86-elf-gas/des/crypt586.s b/deps/openssl/asm/x86-elf-gas/des/crypt586.s deleted file mode 100644 index 46c81c493d0b8e..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/des/crypt586.s +++ /dev/null @@ -1,875 +0,0 @@ -.file "crypt586.s" -.text -.globl fcrypt_body -.type fcrypt_body,@function -.align 16 -fcrypt_body: -.L_fcrypt_body_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - - xorl %edi,%edi - xorl %esi,%esi - leal DES_SPtrans,%edx - pushl %edx - movl 28(%esp),%ebp - pushl $25 -.L000start: - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl (%ebp),%ebx - xorl %ebx,%eax - movl 4(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 8(%ebp),%ebx - xorl %ebx,%eax - movl 12(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 16(%ebp),%ebx - xorl %ebx,%eax - movl 20(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 24(%ebp),%ebx - xorl %ebx,%eax - movl 28(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 32(%ebp),%ebx - xorl %ebx,%eax - movl 36(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 40(%ebp),%ebx - xorl %ebx,%eax - movl 44(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 48(%ebp),%ebx - xorl %ebx,%eax - movl 52(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 56(%ebp),%ebx - xorl %ebx,%eax - movl 60(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 64(%ebp),%ebx - xorl %ebx,%eax - movl 68(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 72(%ebp),%ebx - xorl %ebx,%eax - movl 76(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 80(%ebp),%ebx - xorl %ebx,%eax - movl 84(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 88(%ebp),%ebx - xorl %ebx,%eax - movl 92(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 96(%ebp),%ebx - xorl %ebx,%eax - movl 100(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 104(%ebp),%ebx - xorl %ebx,%eax - movl 108(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 112(%ebp),%ebx - xorl %ebx,%eax - movl 116(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 120(%ebp),%ebx - xorl %ebx,%eax - movl 124(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - movl (%esp),%ebx - movl %edi,%eax - decl %ebx - movl %esi,%edi - movl %eax,%esi - movl %ebx,(%esp) - jnz .L000start - - - movl 28(%esp),%edx - rorl $1,%edi - movl %esi,%eax - xorl %edi,%esi - andl $0xaaaaaaaa,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $23,%eax - movl %eax,%esi - xorl %edi,%eax - andl $0x03fc03fc,%eax - xorl %eax,%esi - xorl %eax,%edi - - roll $10,%esi - movl %esi,%eax - xorl %edi,%esi - andl $0x33333333,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $18,%edi - movl %edi,%esi - xorl %eax,%edi - andl $0xfff0000f,%edi - xorl %edi,%esi - xorl %edi,%eax - - roll $12,%esi - movl %esi,%edi - xorl %eax,%esi - andl $0xf0f0f0f0,%esi - xorl %esi,%edi - xorl %esi,%eax - - rorl $4,%eax - movl %eax,(%edx) - movl %edi,4(%edx) - addl $8,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size fcrypt_body,.-.L_fcrypt_body_begin diff --git a/deps/openssl/asm/x86-elf-gas/des/des-586.s b/deps/openssl/asm/x86-elf-gas/des/des-586.s deleted file mode 100644 index 054e2b0d597efa..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/des/des-586.s +++ /dev/null @@ -1,1838 +0,0 @@ -.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 - - 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 - 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 - - roll $1,%edi - call .L000pic_point -.L000pic_point: - popl %ebp - leal .Ldes_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 -.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 - 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 .Ldes_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 -.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 - 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 .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 -.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 - 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 .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 -.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 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 56(%esp),%ecx - - pushl %ecx - - 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 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 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 64(%esp),%ecx - - movl 56(%esp),%eax - pushl %eax - - movl 56(%esp),%eax - pushl %eax - - 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 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: -.Ldes_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 diff --git a/deps/openssl/asm/x86-elf-gas/md5/md5-586.s b/deps/openssl/asm/x86-elf-gas/md5/md5-586.s deleted file mode 100644 index e354c4ebcdea8c..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/md5/md5-586.s +++ /dev/null @@ -1,679 +0,0 @@ -.file "../openssl/crypto/md5/asm/md5-586.s" -.text -.globl md5_block_asm_data_order -.type md5_block_asm_data_order,@function -.align 16 -md5_block_asm_data_order: -.L_md5_block_asm_data_order_begin: - pushl %esi - pushl %edi - movl 12(%esp),%edi - movl 16(%esp),%esi - movl 20(%esp),%ecx - pushl %ebp - shll $6,%ecx - pushl %ebx - addl %esi,%ecx - subl $64,%ecx - movl (%edi),%eax - pushl %ecx - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx -.L000start: - - - movl %ecx,%edi - movl (%esi),%ebp - - xorl %edx,%edi - andl %ebx,%edi - leal 3614090360(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 4(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 3905402710(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 8(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 606105819(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 12(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 3250441966(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 16(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 4118548399(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 20(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 1200080426(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 24(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 2821735955(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 28(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 4249261313(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 32(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 1770035416(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 36(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 2336552879(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 40(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 4294925233(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 44(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 2304563134(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 48(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 1804603682(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 52(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 4254626195(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 56(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 2792965006(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 60(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 1236535329(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 4(%esi),%ebp - addl %ecx,%ebx - - - - leal 4129170786(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 24(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 3225465664(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 44(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 643717713(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl (%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 3921069994(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 3593408605(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 40(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 38016083(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 60(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 3634488961(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 16(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 3889429448(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 36(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 568446438(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 56(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 3275163606(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 12(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 4107603335(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 32(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 1163531501(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 52(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 2850285829(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 8(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 4243563512(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 28(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 1735328473(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 48(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 2368359562(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - - - xorl %edx,%edi - xorl %ebx,%edi - leal 4294588738(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 32(%esi),%ebp - movl %ebx,%edi - - leal 2272392833(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 44(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 1839030562(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 56(%esi),%ebp - movl %edx,%edi - - leal 4259657740(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 4(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 2763975236(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 16(%esi),%ebp - movl %ebx,%edi - - leal 1272893353(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 28(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 4139469664(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 40(%esi),%ebp - movl %edx,%edi - - leal 3200236656(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 52(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 681279174(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl (%esi),%ebp - movl %ebx,%edi - - leal 3936430074(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 12(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 3572445317(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 24(%esi),%ebp - movl %edx,%edi - - leal 76029189(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 36(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 3654602809(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 48(%esi),%ebp - movl %ebx,%edi - - leal 3873151461(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 60(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 530742520(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 8(%esi),%ebp - movl %edx,%edi - - leal 3299628645(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl (%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $23,%ebx - addl %ecx,%ebx - - - - xorl %edx,%edi - orl %ebx,%edi - leal 4096336452(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 28(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 1126891415(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 56(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 2878612391(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 20(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 4237533241(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 48(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 1700485571(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 12(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 2399980690(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 40(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 4293915773(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 4(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 2240044497(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 32(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 1873313359(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 60(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 4264355552(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 24(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 2734768916(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 52(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 1309151649(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 16(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 4149444226(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 44(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 3174756917(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 8(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 718787259(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 36(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 3951481745(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 24(%esp),%ebp - addl %edi,%ebx - addl $64,%esi - roll $21,%ebx - movl (%ebp),%edi - addl %ecx,%ebx - addl %edi,%eax - movl 4(%ebp),%edi - addl %edi,%ebx - movl 8(%ebp),%edi - addl %edi,%ecx - movl 12(%ebp),%edi - addl %edi,%edx - movl %eax,(%ebp) - movl %ebx,4(%ebp) - movl (%esp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - cmpl %esi,%edi - jae .L000start - popl %eax - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size md5_block_asm_data_order,.-.L_md5_block_asm_data_order_begin diff --git a/deps/openssl/asm/x86-elf-gas/modes/ghash-x86.s b/deps/openssl/asm/x86-elf-gas/modes/ghash-x86.s deleted file mode 100644 index 70e9493d1b3737..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/modes/ghash-x86.s +++ /dev/null @@ -1,1265 +0,0 @@ -.file "ghash-x86.s" -.text -.globl gcm_gmult_4bit_x86 -.type gcm_gmult_4bit_x86,@function -.align 16 -gcm_gmult_4bit_x86: -.L_gcm_gmult_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%edi - movl 108(%esp),%esi - movl (%edi),%ebp - movl 4(%edi),%edx - movl 8(%edi),%ecx - movl 12(%edi),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) - movl %ebp,(%esp) - movl %edx,4(%esp) - movl %ecx,8(%esp) - movl %ebx,12(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp .L000x86_loop -.align 16 -.L000x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js .L001x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp .L000x86_loop -.align 16 -.L001x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_gmult_4bit_x86,.-.L_gcm_gmult_4bit_x86_begin -.globl gcm_ghash_4bit_x86 -.type gcm_ghash_4bit_x86,@function -.align 16 -gcm_ghash_4bit_x86: -.L_gcm_ghash_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%ebx - movl 108(%esp),%esi - movl 112(%esp),%edi - movl 116(%esp),%ecx - addl %edi,%ecx - movl %ecx,116(%esp) - movl (%ebx),%ebp - movl 4(%ebx),%edx - movl 8(%ebx),%ecx - movl 12(%ebx),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) -.align 16 -.L002x86_outer_loop: - xorl 12(%edi),%ebx - xorl 8(%edi),%ecx - xorl 4(%edi),%edx - xorl (%edi),%ebp - movl %ebx,12(%esp) - movl %ecx,8(%esp) - movl %edx,4(%esp) - movl %ebp,(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp .L003x86_loop -.align 16 -.L003x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js .L004x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp .L003x86_loop -.align 16 -.L004x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 112(%esp),%edi - leal 16(%edi),%edi - cmpl 116(%esp),%edi - movl %edi,112(%esp) - jb .L002x86_outer_loop - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_4bit_x86,.-.L_gcm_ghash_4bit_x86_begin -.globl gcm_gmult_4bit_mmx -.type gcm_gmult_4bit_mmx,@function -.align 16 -gcm_gmult_4bit_mmx: -.L_gcm_gmult_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%esi - call .L005pic_point -.L005pic_point: - popl %eax - leal .Lrem_4bit-.L005pic_point(%eax),%eax - movzbl 15(%edi),%ebx - xorl %ecx,%ecx - movl %ebx,%edx - movb %dl,%cl - movl $14,%ebp - shlb $4,%cl - andl $240,%edx - movq 8(%esi,%ecx,1),%mm0 - movq (%esi,%ecx,1),%mm1 - movd %mm0,%ebx - jmp .L006mmx_loop -.align 16 -.L006mmx_loop: - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - movb (%edi,%ebp,1),%cl - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - decl %ebp - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - movl %ecx,%edx - pxor %mm2,%mm0 - js .L007mmx_break - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - jmp .L006mmx_loop -.align 16 -.L007mmx_break: - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - pxor %mm2,%mm0 - psrlq $32,%mm0 - movd %mm1,%edx - psrlq $32,%mm1 - movd %mm0,%ecx - movd %mm1,%ebp - bswap %ebx - bswap %edx - bswap %ecx - bswap %ebp - emms - movl %ebx,12(%edi) - movl %edx,4(%edi) - movl %ecx,8(%edi) - movl %ebp,(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_gmult_4bit_mmx,.-.L_gcm_gmult_4bit_mmx_begin -.globl gcm_ghash_4bit_mmx -.type gcm_ghash_4bit_mmx,@function -.align 16 -gcm_ghash_4bit_mmx: -.L_gcm_ghash_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%ebx - movl 28(%esp),%ecx - movl 32(%esp),%edx - movl %esp,%ebp - call .L008pic_point -.L008pic_point: - popl %esi - leal .Lrem_8bit-.L008pic_point(%esi),%esi - subl $544,%esp - andl $-64,%esp - subl $16,%esp - addl %ecx,%edx - movl %eax,544(%esp) - movl %edx,552(%esp) - movl %ebp,556(%esp) - addl $128,%ebx - leal 144(%esp),%edi - leal 400(%esp),%ebp - movl -120(%ebx),%edx - movq -120(%ebx),%mm0 - movq -128(%ebx),%mm3 - shll $4,%edx - movb %dl,(%esp) - movl -104(%ebx),%edx - movq -104(%ebx),%mm2 - movq -112(%ebx),%mm5 - movq %mm0,-128(%edi) - psrlq $4,%mm0 - movq %mm3,(%edi) - movq %mm3,%mm7 - psrlq $4,%mm3 - shll $4,%edx - movb %dl,1(%esp) - movl -88(%ebx),%edx - movq -88(%ebx),%mm1 - psllq $60,%mm7 - movq -96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-120(%edi) - psrlq $4,%mm2 - movq %mm5,8(%edi) - movq %mm5,%mm6 - movq %mm0,-128(%ebp) - psrlq $4,%mm5 - movq %mm3,(%ebp) - shll $4,%edx - movb %dl,2(%esp) - movl -72(%ebx),%edx - movq -72(%ebx),%mm0 - psllq $60,%mm6 - movq -80(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-112(%edi) - psrlq $4,%mm1 - movq %mm4,16(%edi) - movq %mm4,%mm7 - movq %mm2,-120(%ebp) - psrlq $4,%mm4 - movq %mm5,8(%ebp) - shll $4,%edx - movb %dl,3(%esp) - movl -56(%ebx),%edx - movq -56(%ebx),%mm2 - psllq $60,%mm7 - movq -64(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-104(%edi) - psrlq $4,%mm0 - movq %mm3,24(%edi) - movq %mm3,%mm6 - movq %mm1,-112(%ebp) - psrlq $4,%mm3 - movq %mm4,16(%ebp) - shll $4,%edx - movb %dl,4(%esp) - movl -40(%ebx),%edx - movq -40(%ebx),%mm1 - psllq $60,%mm6 - movq -48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-96(%edi) - psrlq $4,%mm2 - movq %mm5,32(%edi) - movq %mm5,%mm7 - movq %mm0,-104(%ebp) - psrlq $4,%mm5 - movq %mm3,24(%ebp) - shll $4,%edx - movb %dl,5(%esp) - movl -24(%ebx),%edx - movq -24(%ebx),%mm0 - psllq $60,%mm7 - movq -32(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-88(%edi) - psrlq $4,%mm1 - movq %mm4,40(%edi) - movq %mm4,%mm6 - movq %mm2,-96(%ebp) - psrlq $4,%mm4 - movq %mm5,32(%ebp) - shll $4,%edx - movb %dl,6(%esp) - movl -8(%ebx),%edx - movq -8(%ebx),%mm2 - psllq $60,%mm6 - movq -16(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-80(%edi) - psrlq $4,%mm0 - movq %mm3,48(%edi) - movq %mm3,%mm7 - movq %mm1,-88(%ebp) - psrlq $4,%mm3 - movq %mm4,40(%ebp) - shll $4,%edx - movb %dl,7(%esp) - movl 8(%ebx),%edx - movq 8(%ebx),%mm1 - psllq $60,%mm7 - movq (%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-72(%edi) - psrlq $4,%mm2 - movq %mm5,56(%edi) - movq %mm5,%mm6 - movq %mm0,-80(%ebp) - psrlq $4,%mm5 - movq %mm3,48(%ebp) - shll $4,%edx - movb %dl,8(%esp) - movl 24(%ebx),%edx - movq 24(%ebx),%mm0 - psllq $60,%mm6 - movq 16(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-64(%edi) - psrlq $4,%mm1 - movq %mm4,64(%edi) - movq %mm4,%mm7 - movq %mm2,-72(%ebp) - psrlq $4,%mm4 - movq %mm5,56(%ebp) - shll $4,%edx - movb %dl,9(%esp) - movl 40(%ebx),%edx - movq 40(%ebx),%mm2 - psllq $60,%mm7 - movq 32(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-56(%edi) - psrlq $4,%mm0 - movq %mm3,72(%edi) - movq %mm3,%mm6 - movq %mm1,-64(%ebp) - psrlq $4,%mm3 - movq %mm4,64(%ebp) - shll $4,%edx - movb %dl,10(%esp) - movl 56(%ebx),%edx - movq 56(%ebx),%mm1 - psllq $60,%mm6 - movq 48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-48(%edi) - psrlq $4,%mm2 - movq %mm5,80(%edi) - movq %mm5,%mm7 - movq %mm0,-56(%ebp) - psrlq $4,%mm5 - movq %mm3,72(%ebp) - shll $4,%edx - movb %dl,11(%esp) - movl 72(%ebx),%edx - movq 72(%ebx),%mm0 - psllq $60,%mm7 - movq 64(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-40(%edi) - psrlq $4,%mm1 - movq %mm4,88(%edi) - movq %mm4,%mm6 - movq %mm2,-48(%ebp) - psrlq $4,%mm4 - movq %mm5,80(%ebp) - shll $4,%edx - movb %dl,12(%esp) - movl 88(%ebx),%edx - movq 88(%ebx),%mm2 - psllq $60,%mm6 - movq 80(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-32(%edi) - psrlq $4,%mm0 - movq %mm3,96(%edi) - movq %mm3,%mm7 - movq %mm1,-40(%ebp) - psrlq $4,%mm3 - movq %mm4,88(%ebp) - shll $4,%edx - movb %dl,13(%esp) - movl 104(%ebx),%edx - movq 104(%ebx),%mm1 - psllq $60,%mm7 - movq 96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-24(%edi) - psrlq $4,%mm2 - movq %mm5,104(%edi) - movq %mm5,%mm6 - movq %mm0,-32(%ebp) - psrlq $4,%mm5 - movq %mm3,96(%ebp) - shll $4,%edx - movb %dl,14(%esp) - movl 120(%ebx),%edx - movq 120(%ebx),%mm0 - psllq $60,%mm6 - movq 112(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-16(%edi) - psrlq $4,%mm1 - movq %mm4,112(%edi) - movq %mm4,%mm7 - movq %mm2,-24(%ebp) - psrlq $4,%mm4 - movq %mm5,104(%ebp) - shll $4,%edx - movb %dl,15(%esp) - psllq $60,%mm7 - por %mm7,%mm1 - movq %mm0,-8(%edi) - psrlq $4,%mm0 - movq %mm3,120(%edi) - movq %mm3,%mm6 - movq %mm1,-16(%ebp) - psrlq $4,%mm3 - movq %mm4,112(%ebp) - psllq $60,%mm6 - por %mm6,%mm0 - movq %mm0,-8(%ebp) - movq %mm3,120(%ebp) - movq (%eax),%mm6 - movl 8(%eax),%ebx - movl 12(%eax),%edx -.align 16 -.L009outer: - xorl 12(%ecx),%edx - xorl 8(%ecx),%ebx - pxor (%ecx),%mm6 - leal 16(%ecx),%ecx - movl %ebx,536(%esp) - movq %mm6,528(%esp) - movl %ecx,548(%esp) - xorl %eax,%eax - roll $8,%edx - movb %dl,%al - movl %eax,%ebp - andb $15,%al - shrl $4,%ebp - pxor %mm0,%mm0 - roll $8,%edx - pxor %mm1,%mm1 - pxor %mm2,%mm2 - movq 16(%esp,%eax,8),%mm7 - movq 144(%esp,%eax,8),%mm6 - movb %dl,%al - movd %mm7,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%edi - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 536(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 532(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 528(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 524(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - pxor 144(%esp,%eax,8),%mm6 - xorb (%esp,%ebp,1),%bl - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - movzbl %bl,%ebx - pxor %mm2,%mm2 - psllq $4,%mm1 - movd %mm7,%ecx - psrlq $4,%mm7 - movq %mm6,%mm3 - psrlq $4,%mm6 - shll $4,%ecx - pxor 16(%esp,%edi,8),%mm7 - psllq $60,%mm3 - movzbl %cl,%ecx - pxor %mm3,%mm7 - pxor 144(%esp,%edi,8),%mm6 - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor %mm1,%mm6 - movd %mm7,%edx - pinsrw $3,(%esi,%ecx,2),%mm2 - psllq $12,%mm0 - pxor %mm0,%mm6 - psrlq $32,%mm7 - pxor %mm2,%mm6 - movl 548(%esp),%ecx - movd %mm7,%ebx - movq %mm6,%mm3 - psllw $8,%mm6 - psrlw $8,%mm3 - por %mm3,%mm6 - bswap %edx - pshufw $27,%mm6,%mm6 - bswap %ebx - cmpl 552(%esp),%ecx - jne .L009outer - movl 544(%esp),%eax - movl %edx,12(%eax) - movl %ebx,8(%eax) - movq %mm6,(%eax) - movl 556(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_4bit_mmx,.-.L_gcm_ghash_4bit_mmx_begin -.globl gcm_init_clmul -.type gcm_init_clmul,@function -.align 16 -gcm_init_clmul: -.L_gcm_init_clmul_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - call .L010pic -.L010pic: - popl %ecx - leal .Lbswap-.L010pic(%ecx),%ecx - movdqu (%eax),%xmm2 - pshufd $78,%xmm2,%xmm2 - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - pand 16(%ecx),%xmm5 - pxor %xmm5,%xmm2 - movdqa %xmm2,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,(%edx) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%edx) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%edx) - ret -.size gcm_init_clmul,.-.L_gcm_init_clmul_begin -.globl gcm_gmult_clmul -.type gcm_gmult_clmul,@function -.align 16 -gcm_gmult_clmul: -.L_gcm_gmult_clmul_begin: - movl 4(%esp),%eax - movl 8(%esp),%edx - call .L011pic -.L011pic: - popl %ecx - leal .Lbswap-.L011pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movups (%edx),%xmm2 -.byte 102,15,56,0,197 - movups 32(%edx),%xmm4 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - ret -.size gcm_gmult_clmul,.-.L_gcm_gmult_clmul_begin -.globl gcm_ghash_clmul -.type gcm_ghash_clmul,@function -.align 16 -gcm_ghash_clmul: -.L_gcm_ghash_clmul_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebx - call .L012pic -.L012pic: - popl %ecx - leal .Lbswap-.L012pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movdqu (%edx),%xmm2 -.byte 102,15,56,0,197 - subl $16,%ebx - jz .L013odd_tail - movdqu (%esi),%xmm3 - movdqu 16(%esi),%xmm6 -.byte 102,15,56,0,221 -.byte 102,15,56,0,245 - movdqu 32(%edx),%xmm5 - pxor %xmm3,%xmm0 - pshufd $78,%xmm6,%xmm3 - movdqa %xmm6,%xmm7 - pxor %xmm6,%xmm3 - leal 32(%esi),%esi -.byte 102,15,58,68,242,0 -.byte 102,15,58,68,250,17 -.byte 102,15,58,68,221,0 - movups 16(%edx),%xmm2 - nop - subl $32,%ebx - jbe .L014even_tail - jmp .L015mod_loop -.align 32 -.L015mod_loop: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 - nop -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movups (%edx),%xmm2 - xorps %xmm6,%xmm0 - movdqa (%ecx),%xmm5 - xorps %xmm7,%xmm1 - movdqu (%esi),%xmm7 - pxor %xmm0,%xmm3 - movdqu 16(%esi),%xmm6 - pxor %xmm1,%xmm3 -.byte 102,15,56,0,253 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 -.byte 102,15,56,0,245 - pxor %xmm7,%xmm1 - movdqa %xmm6,%xmm7 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 -.byte 102,15,58,68,242,0 - movups 32(%edx),%xmm5 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - pshufd $78,%xmm7,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm7,%xmm3 - pxor %xmm4,%xmm1 -.byte 102,15,58,68,250,17 - movups 16(%edx),%xmm2 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,58,68,221,0 - leal 32(%esi),%esi - subl $32,%ebx - ja .L015mod_loop -.L014even_tail: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movdqa (%ecx),%xmm5 - xorps %xmm6,%xmm0 - xorps %xmm7,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testl %ebx,%ebx - jnz .L016done - movups (%edx),%xmm2 -.L013odd_tail: - movdqu (%esi),%xmm3 -.byte 102,15,56,0,221 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.L016done: -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_clmul,.-.L_gcm_ghash_clmul_begin -.align 64 -.Lbswap: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -.align 64 -.Lrem_8bit: -.value 0,450,900,582,1800,1738,1164,1358 -.value 3600,4050,3476,3158,2328,2266,2716,2910 -.value 7200,7650,8100,7782,6952,6890,6316,6510 -.value 4656,5106,4532,4214,5432,5370,5820,6014 -.value 14400,14722,15300,14854,16200,16010,15564,15630 -.value 13904,14226,13780,13334,12632,12442,13020,13086 -.value 9312,9634,10212,9766,9064,8874,8428,8494 -.value 10864,11186,10740,10294,11640,11450,12028,12094 -.value 28800,28994,29444,29382,30600,30282,29708,30158 -.value 32400,32594,32020,31958,31128,30810,31260,31710 -.value 27808,28002,28452,28390,27560,27242,26668,27118 -.value 25264,25458,24884,24822,26040,25722,26172,26622 -.value 18624,18690,19268,19078,20424,19978,19532,19854 -.value 18128,18194,17748,17558,16856,16410,16988,17310 -.value 21728,21794,22372,22182,21480,21034,20588,20910 -.value 23280,23346,22900,22710,24056,23610,24188,24510 -.value 57600,57538,57988,58182,58888,59338,58764,58446 -.value 61200,61138,60564,60758,59416,59866,60316,59998 -.value 64800,64738,65188,65382,64040,64490,63916,63598 -.value 62256,62194,61620,61814,62520,62970,63420,63102 -.value 55616,55426,56004,56070,56904,57226,56780,56334 -.value 55120,54930,54484,54550,53336,53658,54236,53790 -.value 50528,50338,50916,50982,49768,50090,49644,49198 -.value 52080,51890,51444,51510,52344,52666,53244,52798 -.value 37248,36930,37380,37830,38536,38730,38156,38094 -.value 40848,40530,39956,40406,39064,39258,39708,39646 -.value 36256,35938,36388,36838,35496,35690,35116,35054 -.value 33712,33394,32820,33270,33976,34170,34620,34558 -.value 43456,43010,43588,43910,44744,44810,44364,44174 -.value 42960,42514,42068,42390,41176,41242,41820,41630 -.value 46560,46114,46692,47014,45800,45866,45420,45230 -.value 48112,47666,47220,47542,48376,48442,49020,48830 -.align 64 -.Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -.byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -.byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -.byte 0 diff --git a/deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s b/deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s deleted file mode 100644 index fcb4adc14633c9..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s +++ /dev/null @@ -1,372 +0,0 @@ -.file "rc4-586.s" -.text -.globl RC4 -.type RC4,@function -.align 16 -RC4: -.L_RC4_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebp - xorl %eax,%eax - xorl %ebx,%ebx - cmpl $0,%edx - je .L000abort - movb (%edi),%al - movb 4(%edi),%bl - addl $8,%edi - leal (%esi,%edx,1),%ecx - subl %esi,%ebp - movl %ecx,24(%esp) - incb %al - cmpl $-1,256(%edi) - je .L001RC4_CHAR - movl (%edi,%eax,4),%ecx - andl $-4,%edx - jz .L002loop1 - movl %ebp,32(%esp) - testl $-8,%edx - jz .L003go4loop4 - leal OPENSSL_ia32cap_P,%ebp - btl $26,(%ebp) - jnc .L003go4loop4 - movl 32(%esp),%ebp - andl $-8,%edx - leal -8(%esi,%edx,1),%edx - movl %edx,-4(%edi) - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - movq (%esi),%mm0 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 - jmp .L004loop_mmx_enter -.align 16 -.L005loop_mmx: - addb %cl,%bl - psllq $56,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movq (%esi),%mm0 - movq %mm2,-8(%ebp,%esi,1) - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 -.L004loop_mmx_enter: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm0,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $8,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $16,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $24,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $32,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $40,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $48,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - movl %ebx,%edx - xorl %ebx,%ebx - movb %dl,%bl - cmpl -4(%edi),%esi - leal 8(%esi),%esi - jb .L005loop_mmx - psllq $56,%mm1 - pxor %mm1,%mm2 - movq %mm2,-8(%ebp,%esi,1) - emms - cmpl 24(%esp),%esi - je .L006done - jmp .L002loop1 -.align 16 -.L003go4loop4: - leal -4(%esi,%edx,1),%edx - movl %edx,28(%esp) -.L007loop4: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%eax,4),%ecx - movl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl 32(%esp),%ecx - orl (%edi,%edx,4),%ebp - rorl $8,%ebp - xorl (%esi),%ebp - cmpl 28(%esp),%esi - movl %ebp,(%ecx,%esi,1) - leal 4(%esi),%esi - movl (%edi,%eax,4),%ecx - jb .L007loop4 - cmpl 24(%esp),%esi - je .L006done - movl 32(%esp),%ebp -.align 16 -.L002loop1: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%edx,4),%edx - xorb (%esi),%dl - leal 1(%esi),%esi - movl (%edi,%eax,4),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb .L002loop1 - jmp .L006done -.align 16 -.L001RC4_CHAR: - movzbl (%edi,%eax,1),%ecx -.L008cloop1: - addb %cl,%bl - movzbl (%edi,%ebx,1),%edx - movb %cl,(%edi,%ebx,1) - movb %dl,(%edi,%eax,1) - addb %cl,%dl - movzbl (%edi,%edx,1),%edx - addb $1,%al - xorb (%esi),%dl - leal 1(%esi),%esi - movzbl (%edi,%eax,1),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb .L008cloop1 -.L006done: - decb %al - movl %ebx,-4(%edi) - movb %al,-8(%edi) -.L000abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size RC4,.-.L_RC4_begin -.globl private_RC4_set_key -.type private_RC4_set_key,@function -.align 16 -private_RC4_set_key: -.L_private_RC4_set_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%esi - leal OPENSSL_ia32cap_P,%edx - leal 8(%edi),%edi - leal (%esi,%ebp,1),%esi - negl %ebp - xorl %eax,%eax - movl %ebp,-4(%edi) - btl $20,(%edx) - jc .L009c1stloop -.align 16 -.L010w1stloop: - movl %eax,(%edi,%eax,4) - addb $1,%al - jnc .L010w1stloop - xorl %ecx,%ecx - xorl %edx,%edx -.align 16 -.L011w2ndloop: - movl (%edi,%ecx,4),%eax - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movl (%edi,%edx,4),%ebx - jnz .L012wnowrap - movl -4(%edi),%ebp -.L012wnowrap: - movl %eax,(%edi,%edx,4) - movl %ebx,(%edi,%ecx,4) - addb $1,%cl - jnc .L011w2ndloop - jmp .L013exit -.align 16 -.L009c1stloop: - movb %al,(%edi,%eax,1) - addb $1,%al - jnc .L009c1stloop - xorl %ecx,%ecx - xorl %edx,%edx - xorl %ebx,%ebx -.align 16 -.L014c2ndloop: - movb (%edi,%ecx,1),%al - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movb (%edi,%edx,1),%bl - jnz .L015cnowrap - movl -4(%edi),%ebp -.L015cnowrap: - movb %al,(%edi,%edx,1) - movb %bl,(%edi,%ecx,1) - addb $1,%cl - jnc .L014c2ndloop - movl $-1,256(%edi) -.L013exit: - xorl %eax,%eax - movl %eax,-8(%edi) - movl %eax,-4(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size private_RC4_set_key,.-.L_private_RC4_set_key_begin -.globl RC4_options -.type RC4_options,@function -.align 16 -RC4_options: -.L_RC4_options_begin: - call .L016pic_point -.L016pic_point: - popl %eax - leal .L017opts-.L016pic_point(%eax),%eax - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%edx - btl $20,%edx - jc .L0181xchar - btl $26,%edx - jnc .L019ret - addl $25,%eax - ret -.L0181xchar: - addl $12,%eax -.L019ret: - ret -.align 64 -.L017opts: -.byte 114,99,52,40,52,120,44,105,110,116,41,0 -.byte 114,99,52,40,49,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,56,120,44,109,109,120,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.size RC4_options,.-.L_RC4_options_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s b/deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s deleted file mode 100644 index 3c45fb91d0563b..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s +++ /dev/null @@ -1,1965 +0,0 @@ -.file "../openssl/crypto/ripemd/asm/rmd-586.s" -.text -.globl ripemd160_block_asm_data_order -.type ripemd160_block_asm_data_order,@function -.align 16 -ripemd160_block_asm_data_order: -.L_ripemd160_block_asm_data_order_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - pushl %esi - movl (%edx),%ecx - pushl %edi - movl 4(%edx),%esi - pushl %ebp - movl 8(%edx),%edi - pushl %ebx - subl $108,%esp -.L000start: - - movl (%eax),%ebx - movl 4(%eax),%ebp - movl %ebx,(%esp) - movl %ebp,4(%esp) - movl 8(%eax),%ebx - movl 12(%eax),%ebp - movl %ebx,8(%esp) - movl %ebp,12(%esp) - movl 16(%eax),%ebx - movl 20(%eax),%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl 24(%eax),%ebx - movl 28(%eax),%ebp - movl %ebx,24(%esp) - movl %ebp,28(%esp) - movl 32(%eax),%ebx - movl 36(%eax),%ebp - movl %ebx,32(%esp) - movl %ebp,36(%esp) - movl 40(%eax),%ebx - movl 44(%eax),%ebp - movl %ebx,40(%esp) - movl %ebp,44(%esp) - movl 48(%eax),%ebx - movl 52(%eax),%ebp - movl %ebx,48(%esp) - movl %ebp,52(%esp) - movl 56(%eax),%ebx - movl 60(%eax),%ebp - movl %ebx,56(%esp) - movl %ebp,60(%esp) - movl %edi,%eax - movl 12(%edx),%ebx - movl 16(%edx),%ebp - - xorl %ebx,%eax - movl (%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $11,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 4(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $14,%ebp - addl %ebx,%ebp - - movl 8(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $15,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 12(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $12,%edi - addl %esi,%edi - - movl 16(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $5,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 20(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 24(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 28(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 32(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 36(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 40(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 44(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - movl 48(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $6,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 52(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $7,%edi - addl %esi,%edi - - movl 56(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $9,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl $-1,%eax - roll $10,%edi - addl %edx,%ecx - movl 28(%esp),%edx - roll $8,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $7,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 52(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $6,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $8,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $13,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $11,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $9,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 1518500249(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $7,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 48(%esp),%edx - roll $10,%ebp - leal 1518500249(%edi,%eax,1),%edi - movl $-1,%eax - roll $15,%edi - addl %esi,%edi - - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 1518500249(%esi,%edx,1),%esi - movl $-1,%edx - roll $7,%esi - addl %ecx,%esi - - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%edi - leal 1518500249(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $12,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $15,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $11,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 44(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $7,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $13,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl $-1,%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $12,%ebp - addl %ebx,%ebp - - movl 12(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $11,%ebx - addl %edi,%ebx - - movl 40(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $13,%edi - addl %esi,%edi - - movl 56(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $6,%esi - addl %ecx,%esi - - movl 16(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $7,%ecx - addl %ebp,%ecx - - movl 36(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $14,%ebp - addl %ebx,%ebp - - movl 60(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $9,%ebx - addl %edi,%ebx - - movl 32(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1859775393(%edi,%edx,1),%edi - subl %ebx,%eax - roll $13,%edi - addl %esi,%edi - - movl 4(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1859775393(%esi,%eax,1),%esi - subl %edi,%edx - roll $15,%esi - addl %ecx,%esi - - movl 8(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1859775393(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - movl 28(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1859775393(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $8,%ebp - addl %ebx,%ebp - - movl (%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $13,%ebx - addl %edi,%ebx - - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $6,%edi - addl %esi,%edi - - movl 52(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $5,%esi - addl %ecx,%esi - - movl 44(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $12,%ecx - addl %ebp,%ecx - - movl 20(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - movl 48(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $14,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $5,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $6,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - - movl 16(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - - movl (%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - - movl 20(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $5,%ebp - addl %ebx,%ebp - - movl 36(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $11,%ebx - addl %edi,%ebx - - movl 28(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $6,%edi - addl %esi,%edi - - movl 48(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - subl %ebx,%edx - roll $8,%esi - addl %ecx,%esi - - movl 8(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 2840853838(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - - movl 40(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 2840853838(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $12,%ebp - addl %ebx,%ebp - - movl 56(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 2840853838(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - movl 4(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 2840853838(%edi,%eax,1),%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 32(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $14,%ecx - addl %ebp,%ecx - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $11,%ebp - addl %ebx,%ebp - - movl 24(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $8,%ebx - addl %edi,%ebx - - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $5,%edi - addl %esi,%edi - - movl 52(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl 128(%esp),%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - movl %ecx,64(%esp) - roll $6,%esi - addl %ecx,%esi - movl (%edx),%ecx - movl %esi,68(%esp) - movl %edi,72(%esp) - movl 4(%edx),%esi - movl %ebx,76(%esp) - movl 8(%edx),%edi - movl %ebp,80(%esp) - movl 12(%edx),%ebx - movl 16(%edx),%ebp - - movl $-1,%edx - subl %ebx,%edx - movl 20(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 56(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $9,%ebp - addl %ebx,%ebp - - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl (%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $11,%edi - addl %esi,%edi - - movl 36(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 8(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 1352829926(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - movl 16(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 1352829926(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $5,%ebx - addl %edi,%ebx - - movl 52(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1352829926(%edi,%edx,1),%edi - subl %ebp,%eax - roll $7,%edi - addl %esi,%edi - - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 1352829926(%esi,%eax,1),%esi - subl %ebx,%edx - roll $7,%esi - addl %ecx,%esi - - movl 60(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 32(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $11,%ebp - addl %ebx,%ebp - - movl 4(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - movl 40(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $14,%edi - addl %esi,%edi - - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - - movl 48(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - movl %edi,%eax - roll $6,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $12,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $8,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $7,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $12,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $7,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $6,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $15,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - subl %ecx,%edx - roll $11,%ebp - addl %ebx,%ebp - - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 20(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $7,%edi - addl %esi,%edi - - movl 4(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $15,%esi - addl %ecx,%esi - - movl 12(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $11,%ecx - addl %ebp,%ecx - - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $8,%ebp - addl %ebx,%ebp - - movl 56(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $6,%ebx - addl %edi,%ebx - - movl 24(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1836072691(%edi,%edx,1),%edi - subl %ebx,%eax - roll $6,%edi - addl %esi,%edi - - movl 36(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1836072691(%esi,%eax,1),%esi - subl %edi,%edx - roll $14,%esi - addl %ecx,%esi - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1836072691(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $12,%ecx - addl %ebp,%ecx - - movl 32(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1836072691(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $13,%ebp - addl %ebx,%ebp - - movl 48(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $5,%ebx - addl %edi,%ebx - - movl 8(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $14,%edi - addl %esi,%edi - - movl 40(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $13,%esi - addl %ecx,%esi - - movl (%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $13,%ecx - addl %ebp,%ecx - - movl 16(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - movl 52(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl 32(%esp),%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $5,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $15,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 16(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $5,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $8,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 12(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $11,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $14,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%ebp - leal 2053994217(%edi,%eax,1),%edi - movl $-1,%eax - roll $14,%edi - addl %esi,%edi - - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 2053994217(%esi,%edx,1),%esi - movl $-1,%edx - roll $6,%esi - addl %ecx,%esi - - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 20(%esp),%edx - roll $10,%edi - leal 2053994217(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $14,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%esi - leal 2053994217(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $6,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 2053994217(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $12,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $9,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $12,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $5,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $15,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %eax,%edx - movl %ebx,%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - xorl %ebp,%eax - roll $8,%edi - addl %esi,%edi - - movl 48(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $8,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - - movl 40(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $12,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 16(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 4(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $12,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 20(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $5,%esi - addl %ecx,%esi - - movl 32(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 28(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - - movl 24(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $8,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 8(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $13,%edi - addl %esi,%edi - - movl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $6,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 56(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - - movl (%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $15,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 12(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - - movl 36(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 44(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - roll $10,%ebx - addl %edx,%esi - movl 128(%esp),%edx - roll $11,%esi - addl %ecx,%esi - movl 4(%edx),%eax - addl %eax,%ebx - movl 72(%esp),%eax - addl %eax,%ebx - movl 8(%edx),%eax - addl %eax,%ebp - movl 76(%esp),%eax - addl %eax,%ebp - movl 12(%edx),%eax - addl %eax,%ecx - movl 80(%esp),%eax - addl %eax,%ecx - movl 16(%edx),%eax - addl %eax,%esi - movl 64(%esp),%eax - addl %eax,%esi - movl (%edx),%eax - addl %eax,%edi - movl 68(%esp),%eax - addl %eax,%edi - movl 136(%esp),%eax - movl %ebx,(%edx) - movl %ebp,4(%edx) - movl %ecx,8(%edx) - subl $1,%eax - movl %esi,12(%edx) - movl %edi,16(%edx) - jle .L001get_out - movl %eax,136(%esp) - movl %ecx,%edi - movl 132(%esp),%eax - movl %ebx,%ecx - addl $64,%eax - movl %ebp,%esi - movl %eax,132(%esp) - jmp .L000start -.L001get_out: - addl $108,%esp - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size ripemd160_block_asm_data_order,.-.L_ripemd160_block_asm_data_order_begin diff --git a/deps/openssl/asm/x86-elf-gas/sha/sha1-586.s b/deps/openssl/asm/x86-elf-gas/sha/sha1-586.s deleted file mode 100644 index 8a9ef772b73414..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/sha/sha1-586.s +++ /dev/null @@ -1,3970 +0,0 @@ -.file "sha1-586.s" -.text -.globl sha1_block_data_order -.type sha1_block_data_order,@function -.align 16 -sha1_block_data_order: -.L_sha1_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L000pic_point -.L000pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%esi - leal .LK_XX_XX-.L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%edx - testl $512,%edx - jz .L001x86 - movl 8(%esi),%ecx - testl $16777216,%eax - jz .L001x86 - testl $536870912,%ecx - jnz .Lshaext_shortcut - andl $268435456,%edx - andl $1073741824,%eax - orl %edx,%eax - cmpl $1342177280,%eax - je .Lavx_shortcut - jmp .Lssse3_shortcut -.align 16 -.L001x86: - movl 20(%esp),%ebp - movl 24(%esp),%esi - movl 28(%esp),%eax - subl $76,%esp - shll $6,%eax - addl %esi,%eax - movl %eax,104(%esp) - movl 16(%ebp),%edi - jmp .L002loop -.align 16 -.L002loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,16(%esp) - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %edx,28(%esp) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edx,44(%esp) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,48(%esp) - movl %ebx,52(%esp) - movl %ecx,56(%esp) - movl %edx,60(%esp) - movl %esi,100(%esp) - movl (%ebp),%eax - movl 4(%ebp),%ebx - movl 8(%ebp),%ecx - movl 12(%ebp),%edx - - movl %ecx,%esi - movl %eax,%ebp - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl (%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 4(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 8(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 12(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 16(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 20(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 24(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 28(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 32(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 36(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 40(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 44(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 48(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 52(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 56(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 60(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - movl (%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 8(%esp),%ebx - xorl %esi,%ebp - xorl 32(%esp),%ebx - andl %edx,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - xorl %esi,%ebp - addl %ebp,%eax - movl %ecx,%ebp - rorl $2,%edx - movl %ebx,(%esp) - roll $5,%ebp - leal 1518500249(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 12(%esp),%eax - xorl %edi,%ebp - xorl 36(%esp),%eax - andl %ecx,%ebp - xorl 56(%esp),%eax - roll $1,%eax - xorl %edi,%ebp - addl %ebp,%esi - movl %ebx,%ebp - rorl $2,%ecx - movl %eax,4(%esp) - roll $5,%ebp - leal 1518500249(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 40(%esp),%esi - andl %ebx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - xorl %edx,%ebp - addl %ebp,%edi - movl %eax,%ebp - rorl $2,%ebx - movl %esi,8(%esp) - roll $5,%ebp - leal 1518500249(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 44(%esp),%edi - andl %eax,%ebp - xorl (%esp),%edi - roll $1,%edi - xorl %ecx,%ebp - addl %ebp,%edx - movl %esi,%ebp - rorl $2,%eax - movl %edi,12(%esp) - roll $5,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,52(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,56(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,60(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl (%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 8(%esp),%edx - xorl %eax,%ebp - xorl 32(%esp),%edx - xorl %ebx,%ebp - xorl 52(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 4(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 12(%esp),%ecx - xorl %esi,%ebp - xorl 36(%esp),%ecx - xorl %eax,%ebp - xorl 56(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,4(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 8(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 16(%esp),%ebx - xorl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl 60(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,8(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 12(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 20(%esp),%eax - xorl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl (%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,12(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 16(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 24(%esp),%esi - xorl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 4(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,16(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 20(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 28(%esp),%edi - xorl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 8(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,20(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 24(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 32(%esp),%edx - xorl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 12(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,24(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 28(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 36(%esp),%ecx - xorl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 16(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,28(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 32(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl (%esp),%ebx - andl %edx,%ebp - xorl 20(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,32(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 36(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl 4(%esp),%eax - andl %ecx,%ebp - xorl 24(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,36(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 40(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 8(%esp),%esi - andl %ebx,%ebp - xorl 28(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,40(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 44(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 12(%esp),%edi - andl %eax,%ebp - xorl 32(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,44(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 48(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 16(%esp),%edx - andl %esi,%ebp - xorl 36(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,48(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 52(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 20(%esp),%ecx - andl %edi,%ebp - xorl 40(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,52(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 56(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl (%esp),%ebx - xorl %esi,%ebp - xorl 24(%esp),%ebx - andl %edx,%ebp - xorl 44(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,56(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 60(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 4(%esp),%eax - xorl %edi,%ebp - xorl 28(%esp),%eax - andl %ecx,%ebp - xorl 48(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,60(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl (%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 8(%esp),%esi - xorl %edx,%ebp - xorl 32(%esp),%esi - andl %ebx,%ebp - xorl 52(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 4(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 12(%esp),%edi - xorl %ecx,%ebp - xorl 36(%esp),%edi - andl %eax,%ebp - xorl 56(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,4(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 8(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 16(%esp),%edx - xorl %ebx,%ebp - xorl 40(%esp),%edx - andl %esi,%ebp - xorl 60(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,8(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 12(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 20(%esp),%ecx - xorl %eax,%ebp - xorl 44(%esp),%ecx - andl %edi,%ebp - xorl (%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,12(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 16(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 24(%esp),%ebx - xorl %esi,%ebp - xorl 48(%esp),%ebx - andl %edx,%ebp - xorl 4(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,16(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 20(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 28(%esp),%eax - xorl %edi,%ebp - xorl 52(%esp),%eax - andl %ecx,%ebp - xorl 8(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,20(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 24(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 32(%esp),%esi - xorl %edx,%ebp - xorl 56(%esp),%esi - andl %ebx,%ebp - xorl 12(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,24(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 28(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 36(%esp),%edi - xorl %ecx,%ebp - xorl 60(%esp),%edi - andl %eax,%ebp - xorl 16(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,28(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 32(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 40(%esp),%edx - xorl %ebx,%ebp - xorl (%esp),%edx - andl %esi,%ebp - xorl 20(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,32(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 36(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 44(%esp),%ecx - xorl %eax,%ebp - xorl 4(%esp),%ecx - andl %edi,%ebp - xorl 24(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,36(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 40(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 48(%esp),%ebx - xorl %esi,%ebp - xorl 8(%esp),%ebx - andl %edx,%ebp - xorl 28(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,40(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 44(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 52(%esp),%eax - xorl %edi,%ebp - xorl 12(%esp),%eax - andl %ecx,%ebp - xorl 32(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,44(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 48(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 56(%esp),%esi - xorl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 36(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,48(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 52(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 60(%esp),%edi - xorl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 40(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,52(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 56(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl (%esp),%edx - xorl %eax,%ebp - xorl 24(%esp),%edx - xorl %ebx,%ebp - xorl 44(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,56(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 60(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 4(%esp),%ecx - xorl %esi,%ebp - xorl 28(%esp),%ecx - xorl %eax,%ebp - xorl 48(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,60(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl (%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 8(%esp),%ebx - xorl %edi,%ebp - xorl 32(%esp),%ebx - xorl %esi,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 12(%esp),%eax - xorl %edx,%ebp - xorl 36(%esp),%eax - xorl %edi,%ebp - xorl 56(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,4(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 16(%esp),%esi - xorl %ecx,%ebp - xorl 40(%esp),%esi - xorl %edx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,8(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 20(%esp),%edi - xorl %ebx,%ebp - xorl 44(%esp),%edi - xorl %ecx,%ebp - xorl (%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,12(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - leal 3395469782(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - leal 3395469782(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - leal 3395469782(%edi,%edx,1),%edi - addl %ebp,%edi - movl 96(%esp),%ebp - movl 100(%esp),%edx - addl (%ebp),%edi - addl 4(%ebp),%esi - addl 8(%ebp),%eax - addl 12(%ebp),%ebx - addl 16(%ebp),%ecx - movl %edi,(%ebp) - addl $64,%edx - movl %esi,4(%ebp) - cmpl 104(%esp),%edx - movl %eax,8(%ebp) - movl %ecx,%edi - movl %ebx,12(%ebp) - movl %edx,%esi - movl %ecx,16(%ebp) - jb .L002loop - addl $76,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size sha1_block_data_order,.-.L_sha1_block_data_order_begin -.type _sha1_block_data_order_shaext,@function -.align 16 -_sha1_block_data_order_shaext: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L003pic_point -.L003pic_point: - popl %ebp - leal .LK_XX_XX-.L003pic_point(%ebp),%ebp -.Lshaext_shortcut: - movl 20(%esp),%edi - movl %esp,%ebx - movl 24(%esp),%esi - movl 28(%esp),%ecx - subl $32,%esp - movdqu (%edi),%xmm0 - movd 16(%edi),%xmm1 - andl $-32,%esp - movdqa 80(%ebp),%xmm3 - movdqu (%esi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%esi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 -.byte 102,15,56,0,251 - jmp .L004loop_shaext -.align 16 -.L004loop_shaext: - decl %ecx - leal 64(%esi),%eax - movdqa %xmm1,(%esp) - paddd %xmm4,%xmm1 - cmovnel %eax,%esi - movdqa %xmm0,16(%esp) -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%esi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%esi),%xmm5 -.byte 102,15,56,0,227 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,235 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,243 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 - movdqa (%esp),%xmm2 -.byte 102,15,56,0,251 -.byte 15,56,200,202 - paddd 16(%esp),%xmm0 - jnz .L004loop_shaext - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%edi) - movd %xmm1,16(%edi) - movl %ebx,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _sha1_block_data_order_shaext,.-_sha1_block_data_order_shaext -.type _sha1_block_data_order_ssse3,@function -.align 16 -_sha1_block_data_order_ssse3: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L005pic_point -.L005pic_point: - popl %ebp - leal .LK_XX_XX-.L005pic_point(%ebp),%ebp -.Lssse3_shortcut: - movdqa (%ebp),%xmm7 - movdqa 16(%ebp),%xmm0 - movdqa 32(%ebp),%xmm1 - movdqa 48(%ebp),%xmm2 - movdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - movdqa %xmm0,112(%esp) - movdqa %xmm1,128(%esp) - movdqa %xmm2,144(%esp) - shll $6,%edx - movdqa %xmm7,160(%esp) - addl %ebp,%edx - movdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - movdqu -64(%ebp),%xmm0 - movdqu -48(%ebp),%xmm1 - movdqu -32(%ebp),%xmm2 - movdqu -16(%ebp),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - movdqa %xmm7,96(%esp) -.byte 102,15,56,0,222 - paddd %xmm7,%xmm0 - paddd %xmm7,%xmm1 - paddd %xmm7,%xmm2 - movdqa %xmm0,(%esp) - psubd %xmm7,%xmm0 - movdqa %xmm1,16(%esp) - psubd %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - movl %ecx,%ebp - psubd %xmm7,%xmm2 - xorl %edx,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebp,%esi - jmp .L006loop -.align 16 -.L006loop: - rorl $2,%ebx - xorl %edx,%esi - movl %eax,%ebp - punpcklqdq %xmm1,%xmm4 - movdqa %xmm3,%xmm6 - addl (%esp),%edi - xorl %ecx,%ebx - paddd %xmm3,%xmm7 - movdqa %xmm0,64(%esp) - roll $5,%eax - addl %esi,%edi - psrldq $4,%xmm6 - andl %ebx,%ebp - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%edi - rorl $7,%eax - pxor %xmm2,%xmm6 - xorl %ecx,%ebp - movl %edi,%esi - addl 4(%esp),%edx - pxor %xmm6,%xmm4 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm7,48(%esp) - addl %ebp,%edx - andl %eax,%esi - movdqa %xmm4,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - movdqa %xmm4,%xmm6 - xorl %ebx,%esi - pslldq $12,%xmm0 - paddd %xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - psrld $31,%xmm6 - xorl %eax,%edi - roll $5,%edx - movdqa %xmm0,%xmm7 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - psrld $30,%xmm0 - addl %edx,%ecx - rorl $7,%edx - por %xmm6,%xmm4 - xorl %eax,%ebp - movl %ecx,%esi - addl 12(%esp),%ebx - pslld $2,%xmm7 - xorl %edi,%edx - roll $5,%ecx - pxor %xmm0,%xmm4 - movdqa 96(%esp),%xmm0 - addl %ebp,%ebx - andl %edx,%esi - pxor %xmm7,%xmm4 - pshufd $238,%xmm1,%xmm5 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - xorl %edi,%esi - movl %ebx,%ebp - punpcklqdq %xmm2,%xmm5 - movdqa %xmm4,%xmm7 - addl 16(%esp),%eax - xorl %edx,%ecx - paddd %xmm4,%xmm0 - movdqa %xmm1,80(%esp) - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm7 - andl %ecx,%ebp - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm7 - xorl %edx,%ebp - movl %eax,%esi - addl 20(%esp),%edi - pxor %xmm7,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm0,(%esp) - addl %ebp,%edi - andl %ebx,%esi - movdqa %xmm5,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - movdqa %xmm5,%xmm7 - xorl %ecx,%esi - pslldq $12,%xmm1 - paddd %xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - psrld $31,%xmm7 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - psrld $30,%xmm1 - addl %edi,%edx - rorl $7,%edi - por %xmm7,%xmm5 - xorl %ebx,%ebp - movl %edx,%esi - addl 28(%esp),%ecx - pslld $2,%xmm0 - xorl %eax,%edi - roll $5,%edx - pxor %xmm1,%xmm5 - movdqa 112(%esp),%xmm1 - addl %ebp,%ecx - andl %edi,%esi - pxor %xmm0,%xmm5 - pshufd $238,%xmm2,%xmm6 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - punpcklqdq %xmm3,%xmm6 - movdqa %xmm5,%xmm0 - addl 32(%esp),%ebx - xorl %edi,%edx - paddd %xmm5,%xmm1 - movdqa %xmm2,96(%esp) - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm0 - andl %edx,%ebp - xorl %edi,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm0 - xorl %edi,%ebp - movl %ebx,%esi - addl 36(%esp),%eax - pxor %xmm0,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm1,16(%esp) - addl %ebp,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm0 - xorl %edx,%esi - pslldq $12,%xmm2 - paddd %xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - psrld $31,%xmm0 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm2,%xmm1 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - psrld $30,%xmm2 - addl %eax,%edi - rorl $7,%eax - por %xmm0,%xmm6 - xorl %ecx,%ebp - movdqa 64(%esp),%xmm0 - movl %edi,%esi - addl 44(%esp),%edx - pslld $2,%xmm1 - xorl %ebx,%eax - roll $5,%edi - pxor %xmm2,%xmm6 - movdqa 112(%esp),%xmm2 - addl %ebp,%edx - andl %eax,%esi - pxor %xmm1,%xmm6 - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%esi - movl %edx,%ebp - punpcklqdq %xmm4,%xmm7 - movdqa %xmm6,%xmm1 - addl 48(%esp),%ecx - xorl %eax,%edi - paddd %xmm6,%xmm2 - movdqa %xmm3,64(%esp) - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm1 - andl %edi,%ebp - xorl %eax,%edi - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm1 - xorl %eax,%ebp - movl %ecx,%esi - addl 52(%esp),%ebx - pxor %xmm1,%xmm7 - xorl %edi,%edx - roll $5,%ecx - movdqa %xmm2,32(%esp) - addl %ebp,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm1 - xorl %edi,%esi - pslldq $12,%xmm3 - paddd %xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - psrld $31,%xmm1 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm3,%xmm2 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - por %xmm1,%xmm7 - xorl %edx,%ebp - movdqa 80(%esp),%xmm1 - movl %eax,%esi - addl 60(%esp),%edi - pslld $2,%xmm2 - xorl %ecx,%ebx - roll $5,%eax - pxor %xmm3,%xmm7 - movdqa 112(%esp),%xmm3 - addl %ebp,%edi - andl %ebx,%esi - pxor %xmm2,%xmm7 - pshufd $238,%xmm6,%xmm2 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,80(%esp) - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm3,%xmm4 - addl %esi,%edx - paddd %xmm7,%xmm3 - andl %eax,%ebp - pxor %xmm2,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - roll $5,%edx - pslld $2,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - psrld $30,%xmm2 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - xorl %edi,%edx - roll $5,%ecx - por %xmm2,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - movdqa 96(%esp),%xmm2 - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - pshufd $238,%xmm7,%xmm3 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 16(%esp),%edi - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm2,%xmm1 - movdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm4,%xmm5 - rorl $7,%ebx - paddd %xmm0,%xmm4 - addl %eax,%edi - pxor %xmm3,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm3 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm3,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - movdqa 64(%esp),%xmm3 - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - pshufd $238,%xmm0,%xmm4 - addl %ecx,%ebx - addl 32(%esp),%eax - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - pxor %xmm3,%xmm2 - movdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - movdqa 128(%esp),%xmm6 - rorl $7,%ecx - paddd %xmm1,%xmm5 - addl %ebx,%eax - pxor %xmm4,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - pslld $2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - psrld $30,%xmm4 - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - por %xmm4,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - movdqa 80(%esp),%xmm4 - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - pshufd $238,%xmm1,%xmm5 - addl %edx,%ecx - addl 48(%esp),%ebx - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - pxor %xmm4,%xmm3 - movdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%edx - paddd %xmm2,%xmm6 - addl %ecx,%ebx - pxor %xmm5,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pslld $2,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - psrld $30,%xmm5 - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - por %xmm5,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - movdqa 96(%esp),%xmm5 - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - pshufd $238,%xmm2,%xmm6 - addl %edi,%edx - addl (%esp),%ecx - pxor %xmm0,%xmm4 - punpcklqdq %xmm3,%xmm6 - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - pxor %xmm5,%xmm4 - movdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - movdqa %xmm7,%xmm0 - rorl $7,%edi - paddd %xmm3,%xmm7 - addl %edx,%ecx - pxor %xmm6,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm6 - movdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - pslld $2,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - psrld $30,%xmm6 - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - por %xmm6,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - movdqa 64(%esp),%xmm6 - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - pshufd $238,%xmm3,%xmm7 - addl %eax,%edi - addl 16(%esp),%edx - pxor %xmm1,%xmm5 - punpcklqdq %xmm4,%xmm7 - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - pxor %xmm6,%xmm5 - movdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - movdqa %xmm0,%xmm1 - rorl $7,%eax - paddd %xmm4,%xmm0 - addl %edi,%edx - pxor %xmm7,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm7 - movdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - pslld $2,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - psrld $30,%xmm7 - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - por %xmm7,%xmm5 - addl 28(%esp),%eax - movdqa 80(%esp),%xmm7 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pshufd $238,%xmm4,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 32(%esp),%edi - pxor %xmm2,%xmm6 - punpcklqdq %xmm5,%xmm0 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - pxor %xmm7,%xmm6 - movdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - roll $5,%eax - movdqa %xmm1,%xmm2 - addl %esi,%edi - paddd %xmm5,%xmm1 - xorl %ebx,%ebp - pxor %xmm0,%xmm6 - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - andl %ebx,%ebp - movdqa %xmm6,%xmm0 - movdqa %xmm1,16(%esp) - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - pslld $2,%xmm6 - addl %ebp,%edx - xorl %eax,%esi - psrld $30,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - por %xmm0,%xmm6 - movl %edx,%ebp - xorl %eax,%esi - movdqa 96(%esp),%xmm0 - roll $5,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - pshufd $238,%xmm5,%xmm1 - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 48(%esp),%eax - pxor %xmm3,%xmm7 - punpcklqdq %xmm6,%xmm1 - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - pxor %xmm0,%xmm7 - movdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - roll $5,%ebx - movdqa 144(%esp),%xmm3 - addl %esi,%eax - paddd %xmm6,%xmm2 - xorl %ecx,%ebp - pxor %xmm1,%xmm7 - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - andl %ecx,%ebp - movdqa %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - pslld $2,%xmm7 - addl %ebp,%edi - xorl %ebx,%esi - psrld $30,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - por %xmm1,%xmm7 - movl %edi,%ebp - xorl %ebx,%esi - movdqa 64(%esp),%xmm1 - roll $5,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - pshufd $238,%xmm6,%xmm2 - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl (%esp),%ebx - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - roll $5,%ecx - movdqa %xmm3,%xmm4 - addl %esi,%ebx - paddd %xmm7,%xmm3 - xorl %edx,%ebp - pxor %xmm2,%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - andl %edx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pslld $2,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - psrld $30,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - por %xmm2,%xmm0 - movl %eax,%ebp - xorl %ecx,%esi - movdqa 80(%esp),%xmm2 - roll $5,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - pshufd $238,%xmm7,%xmm3 - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 16(%esp),%ecx - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - pxor %xmm2,%xmm1 - movdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - roll $5,%edx - movdqa %xmm4,%xmm5 - addl %esi,%ecx - paddd %xmm0,%xmm4 - xorl %edi,%ebp - pxor %xmm3,%xmm1 - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - andl %edi,%ebp - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - pslld $2,%xmm1 - addl %ebp,%ebx - xorl %edx,%esi - psrld $30,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - por %xmm3,%xmm1 - movl %ebx,%ebp - xorl %edx,%esi - movdqa 96(%esp),%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - pshufd $238,%xmm0,%xmm4 - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 32(%esp),%edx - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - pxor %xmm3,%xmm2 - movdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - roll $5,%edi - movdqa %xmm5,%xmm6 - addl %esi,%edx - paddd %xmm1,%xmm5 - xorl %eax,%ebp - pxor %xmm4,%xmm2 - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - andl %eax,%ebp - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - pslld $2,%xmm2 - addl %ebp,%ecx - xorl %edi,%esi - psrld $30,%xmm4 - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - por %xmm4,%xmm2 - movl %ecx,%ebp - xorl %edi,%esi - movdqa 64(%esp),%xmm4 - roll $5,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - pshufd $238,%xmm1,%xmm5 - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - addl 48(%esp),%edi - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm4,%xmm3 - movdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%ebx - paddd %xmm2,%xmm6 - addl %eax,%edi - pxor %xmm5,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm5 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm5,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl (%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - paddd %xmm3,%xmm7 - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - movdqa %xmm7,48(%esp) - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je .L007done - movdqa 160(%esp),%xmm7 - movdqa 176(%esp),%xmm6 - movdqu (%ebp),%xmm0 - movdqu 16(%ebp),%xmm1 - movdqu 32(%ebp),%xmm2 - movdqu 48(%ebp),%xmm3 - addl $64,%ebp -.byte 102,15,56,0,198 - movl %ebp,196(%esp) - movdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx -.byte 102,15,56,0,206 - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - paddd %xmm7,%xmm0 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - movdqa %xmm0,(%esp) - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - psubd %xmm7,%xmm0 - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi -.byte 102,15,56,0,214 - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - paddd %xmm7,%xmm1 - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - movdqa %xmm1,16(%esp) - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - psubd %xmm7,%xmm1 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax -.byte 102,15,56,0,222 - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - paddd %xmm7,%xmm2 - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - movdqa %xmm2,32(%esp) - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - psubd %xmm7,%xmm2 - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %ecx,%ebx - movl %edx,12(%ebp) - xorl %edx,%ebx - movl %edi,16(%ebp) - movl %esi,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebx,%esi - movl %ebp,%ebx - jmp .L006loop -.align 16 -.L007done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _sha1_block_data_order_ssse3,.-_sha1_block_data_order_ssse3 -.type _sha1_block_data_order_avx,@function -.align 16 -_sha1_block_data_order_avx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L008pic_point -.L008pic_point: - popl %ebp - leal .LK_XX_XX-.L008pic_point(%ebp),%ebp -.Lavx_shortcut: - vzeroall - vmovdqa (%ebp),%xmm7 - vmovdqa 16(%ebp),%xmm0 - vmovdqa 32(%ebp),%xmm1 - vmovdqa 48(%ebp),%xmm2 - vmovdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - vmovdqa %xmm0,112(%esp) - vmovdqa %xmm1,128(%esp) - vmovdqa %xmm2,144(%esp) - shll $6,%edx - vmovdqa %xmm7,160(%esp) - addl %ebp,%edx - vmovdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - vmovdqu -64(%ebp),%xmm0 - vmovdqu -48(%ebp),%xmm1 - vmovdqu -32(%ebp),%xmm2 - vmovdqu -16(%ebp),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vmovdqa %xmm7,96(%esp) - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm7,%xmm0,%xmm4 - vpaddd %xmm7,%xmm1,%xmm5 - vpaddd %xmm7,%xmm2,%xmm6 - vmovdqa %xmm4,(%esp) - movl %ecx,%ebp - vmovdqa %xmm5,16(%esp) - xorl %edx,%ebp - vmovdqa %xmm6,32(%esp) - andl %ebp,%esi - jmp .L009loop -.align 16 -.L009loop: - shrdl $2,%ebx,%ebx - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%ebp - addl (%esp),%edi - vpaddd %xmm3,%xmm7,%xmm7 - vmovdqa %xmm0,64(%esp) - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm6 - addl %esi,%edi - andl %ebx,%ebp - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%edi - vpxor %xmm2,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%ebp - vmovdqa %xmm7,48(%esp) - movl %edi,%esi - addl 4(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%edi,%edi - addl %ebp,%edx - andl %eax,%esi - vpsrld $31,%xmm4,%xmm6 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm0 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpsrld $30,%xmm0,%xmm7 - vpor %xmm6,%xmm4,%xmm4 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - vpslld $2,%xmm0,%xmm0 - shrdl $7,%edx,%edx - xorl %eax,%ebp - vpxor %xmm7,%xmm4,%xmm4 - movl %ecx,%esi - addl 12(%esp),%ebx - xorl %edi,%edx - shldl $5,%ecx,%ecx - vpxor %xmm0,%xmm4,%xmm4 - addl %ebp,%ebx - andl %edx,%esi - vmovdqa 96(%esp),%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %edi,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%ebp - addl 16(%esp),%eax - vpaddd %xmm4,%xmm0,%xmm0 - vmovdqa %xmm1,80(%esp) - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm7 - addl %esi,%eax - andl %ecx,%ebp - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - xorl %edx,%ebp - vmovdqa %xmm0,(%esp) - movl %eax,%esi - addl 20(%esp),%edi - vpxor %xmm7,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %ebp,%edi - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm7 - xorl %ecx,%ebx - addl %eax,%edi - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm1 - vpaddd %xmm5,%xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - xorl %ebx,%eax - shldl $5,%edi,%edi - vpsrld $30,%xmm1,%xmm0 - vpor %xmm7,%xmm5,%xmm5 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - vpslld $2,%xmm1,%xmm1 - shrdl $7,%edi,%edi - xorl %ebx,%ebp - vpxor %xmm0,%xmm5,%xmm5 - movl %edx,%esi - addl 28(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpxor %xmm1,%xmm5,%xmm5 - addl %ebp,%ecx - andl %edi,%esi - vmovdqa 112(%esp),%xmm1 - xorl %eax,%edi - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%ebp - addl 32(%esp),%ebx - vpaddd %xmm5,%xmm1,%xmm1 - vmovdqa %xmm2,96(%esp) - xorl %edi,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - vpxor %xmm2,%xmm6,%xmm6 - xorl %edi,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%ecx,%ecx - xorl %edi,%ebp - vmovdqa %xmm1,16(%esp) - movl %ebx,%esi - addl 36(%esp),%eax - vpxor %xmm0,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - addl %ebp,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm2 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm1 - vpor %xmm0,%xmm6,%xmm6 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - vpslld $2,%xmm2,%xmm2 - vmovdqa 64(%esp),%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%ebp - vpxor %xmm1,%xmm6,%xmm6 - movl %edi,%esi - addl 44(%esp),%edx - xorl %ebx,%eax - shldl $5,%edi,%edi - vpxor %xmm2,%xmm6,%xmm6 - addl %ebp,%edx - andl %eax,%esi - vmovdqa 112(%esp),%xmm2 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%ebp - addl 48(%esp),%ecx - vpaddd %xmm6,%xmm2,%xmm2 - vmovdqa %xmm3,64(%esp) - xorl %eax,%edi - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm1 - addl %esi,%ecx - andl %edi,%ebp - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%edi - addl %edx,%ecx - vpxor %xmm5,%xmm1,%xmm1 - shrdl $7,%edx,%edx - xorl %eax,%ebp - vmovdqa %xmm2,32(%esp) - movl %ecx,%esi - addl 52(%esp),%ebx - vpxor %xmm1,%xmm7,%xmm7 - xorl %edi,%edx - shldl $5,%ecx,%ecx - addl %ebp,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm1 - xorl %edi,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %edi,%esi - vpslldq $12,%xmm7,%xmm3 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm2 - vpor %xmm1,%xmm7,%xmm7 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - vmovdqa 80(%esp),%xmm1 - shrdl $7,%ebx,%ebx - xorl %edx,%ebp - vpxor %xmm2,%xmm7,%xmm7 - movl %eax,%esi - addl 60(%esp),%edi - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpxor %xmm3,%xmm7,%xmm7 - addl %ebp,%edi - andl %ebx,%esi - vmovdqa 112(%esp),%xmm3 - xorl %ecx,%ebx - addl %eax,%edi - vpalignr $8,%xmm6,%xmm7,%xmm2 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - vpxor %xmm1,%xmm0,%xmm0 - vmovdqa %xmm4,80(%esp) - xorl %ebx,%eax - shldl $5,%edi,%edi - vmovdqa %xmm3,%xmm4 - vpaddd %xmm7,%xmm3,%xmm3 - addl %esi,%edx - andl %eax,%ebp - vpxor %xmm2,%xmm0,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%ebp - vpsrld $30,%xmm0,%xmm2 - vmovdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - vpor %xmm2,%xmm0,%xmm0 - xorl %edi,%edx - shldl $5,%ecx,%ecx - vmovdqa 96(%esp),%xmm2 - addl %esi,%ebx - andl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm3 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - vmovdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - vmovdqa %xmm4,%xmm5 - vpaddd %xmm0,%xmm4,%xmm4 - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpxor %xmm3,%xmm1,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - vpsrld $30,%xmm1,%xmm3 - vmovdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vpor %xmm3,%xmm1,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - vmovdqa 64(%esp),%xmm3 - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm4 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - vmovdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - vmovdqa 128(%esp),%xmm6 - vpaddd %xmm1,%xmm5,%xmm5 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm4,%xmm2,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm4 - vmovdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpslld $2,%xmm2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - vpor %xmm4,%xmm2,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - vmovdqa 80(%esp),%xmm4 - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm5 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - vmovdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - vmovdqa %xmm6,%xmm7 - vpaddd %xmm2,%xmm6,%xmm6 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm5,%xmm3,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm5 - vmovdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpor %xmm5,%xmm3,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - vmovdqa 96(%esp),%xmm5 - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpalignr $8,%xmm2,%xmm3,%xmm6 - vpxor %xmm0,%xmm4,%xmm4 - addl (%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - vmovdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - vmovdqa %xmm7,%xmm0 - vpaddd %xmm3,%xmm7,%xmm7 - shrdl $7,%edi,%edi - addl %edx,%ecx - vpxor %xmm6,%xmm4,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm6 - vmovdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm6,%xmm4,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - vmovdqa 64(%esp),%xmm6 - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpalignr $8,%xmm3,%xmm4,%xmm7 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - vpxor %xmm6,%xmm5,%xmm5 - vmovdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - vmovdqa %xmm0,%xmm1 - vpaddd %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - addl %edi,%edx - vpxor %xmm7,%xmm5,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm7 - vmovdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm7,%xmm5,%xmm5 - addl 28(%esp),%eax - vmovdqa 80(%esp),%xmm7 - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm0 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - vmovdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - vmovdqa %xmm1,%xmm2 - vpaddd %xmm5,%xmm1,%xmm1 - shldl $5,%eax,%eax - addl %esi,%edi - vpxor %xmm0,%xmm6,%xmm6 - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - vpsrld $30,%xmm6,%xmm0 - vmovdqa %xmm1,16(%esp) - andl %ebx,%ebp - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %edi,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%ebp - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - vpor %xmm0,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%edi,%edi - vmovdqa 96(%esp),%xmm0 - movl %edx,%ebp - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - shrdl $7,%edx,%edx - movl %ecx,%esi - xorl %edi,%ebp - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm1 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - vmovdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - vmovdqa 144(%esp),%xmm3 - vpaddd %xmm6,%xmm2,%xmm2 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm1,%xmm7,%xmm7 - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - vpsrld $30,%xmm7,%xmm1 - vmovdqa %xmm2,32(%esp) - andl %ecx,%ebp - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%ebp - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - vpor %xmm1,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vmovdqa 64(%esp),%xmm1 - movl %edi,%ebp - xorl %ebx,%esi - shldl $5,%edi,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - shrdl $7,%edi,%edi - movl %edx,%esi - xorl %eax,%ebp - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm2 - vpxor %xmm4,%xmm0,%xmm0 - addl (%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - shrdl $7,%edx,%edx - vpxor %xmm1,%xmm0,%xmm0 - vmovdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - vmovdqa %xmm3,%xmm4 - vpaddd %xmm7,%xmm3,%xmm3 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm2,%xmm0,%xmm0 - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - vpsrld $30,%xmm0,%xmm2 - vmovdqa %xmm3,48(%esp) - andl %edx,%ebp - xorl %edi,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - vpor %xmm2,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vmovdqa 80(%esp),%xmm2 - movl %eax,%ebp - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %edi,%esi - xorl %ebx,%ebp - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - vpalignr $8,%xmm7,%xmm0,%xmm3 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%edi,%edi - vpxor %xmm2,%xmm1,%xmm1 - vmovdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - vmovdqa %xmm4,%xmm5 - vpaddd %xmm0,%xmm4,%xmm4 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm3,%xmm1,%xmm1 - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - vpsrld $30,%xmm1,%xmm3 - vmovdqa %xmm4,(%esp) - andl %edi,%ebp - xorl %eax,%edi - shrdl $7,%edx,%edx - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %edi,%ebp - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - vpor %xmm3,%xmm1,%xmm1 - xorl %edi,%edx - shrdl $7,%ecx,%ecx - vmovdqa 96(%esp),%xmm3 - movl %ebx,%ebp - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%ebp - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - vpalignr $8,%xmm0,%xmm1,%xmm4 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - vmovdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - vmovdqa %xmm5,%xmm6 - vpaddd %xmm1,%xmm5,%xmm5 - shldl $5,%edi,%edi - addl %esi,%edx - vpxor %xmm4,%xmm2,%xmm2 - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - vpsrld $30,%xmm2,%xmm4 - vmovdqa %xmm5,16(%esp) - andl %eax,%ebp - xorl %ebx,%eax - shrdl $7,%edi,%edi - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%ebp - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - vpor %xmm4,%xmm2,%xmm2 - xorl %eax,%edi - shrdl $7,%edx,%edx - vmovdqa 64(%esp),%xmm4 - movl %ecx,%ebp - xorl %edi,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm5 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - vmovdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - vmovdqa %xmm6,%xmm7 - vpaddd %xmm2,%xmm6,%xmm6 - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpxor %xmm5,%xmm3,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - vpsrld $30,%xmm3,%xmm5 - vmovdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vpor %xmm5,%xmm3,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl (%esp),%eax - vpaddd %xmm3,%xmm7,%xmm7 - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm7,48(%esp) - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je .L010done - vmovdqa 160(%esp),%xmm7 - vmovdqa 176(%esp),%xmm6 - vmovdqu (%ebp),%xmm0 - vmovdqu 16(%ebp),%xmm1 - vmovdqu 32(%ebp),%xmm2 - vmovdqu 48(%ebp),%xmm3 - addl $64,%ebp - vpshufb %xmm6,%xmm0,%xmm0 - movl %ebp,196(%esp) - vmovdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - vpshufb %xmm6,%xmm1,%xmm1 - movl %ecx,%ebp - shldl $5,%ecx,%ecx - vpaddd %xmm7,%xmm0,%xmm4 - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm4,(%esp) - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - vpshufb %xmm6,%xmm2,%xmm2 - movl %edx,%ebp - shldl $5,%edx,%edx - vpaddd %xmm7,%xmm1,%xmm5 - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vmovdqa %xmm5,16(%esp) - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - vpshufb %xmm6,%xmm3,%xmm3 - movl %edi,%ebp - shldl $5,%edi,%edi - vpaddd %xmm7,%xmm2,%xmm6 - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - vmovdqa %xmm6,32(%esp) - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,%ebx - movl %ecx,8(%ebp) - xorl %edx,%ebx - movl %edx,12(%ebp) - movl %edi,16(%ebp) - movl %esi,%ebp - andl %ebx,%esi - movl %ebp,%ebx - jmp .L009loop -.align 16 -.L010done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vzeroall - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _sha1_block_data_order_avx,.-_sha1_block_data_order_avx -.align 64 -.LK_XX_XX: -.long 1518500249,1518500249,1518500249,1518500249 -.long 1859775393,1859775393,1859775393,1859775393 -.long 2400959708,2400959708,2400959708,2400959708 -.long 3395469782,3395469782,3395469782,3395469782 -.long 66051,67438087,134810123,202182159 -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/sha/sha256-586.s b/deps/openssl/asm/x86-elf-gas/sha/sha256-586.s deleted file mode 100644 index b434e42babe16e..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/sha/sha256-586.s +++ /dev/null @@ -1,6783 +0,0 @@ -.file "sha512-586.s" -.text -.globl sha256_block_data_order -.type sha256_block_data_order,@function -.align 16 -sha256_block_data_order: -.L_sha256_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001K256-.L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $6,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%ecx - movl 4(%edx),%ebx - testl $1048576,%ecx - jnz .L002loop - movl 8(%edx),%edx - testl $16777216,%ecx - jz .L003no_xmm - andl $1073741824,%ecx - andl $268435968,%ebx - testl $536870912,%edx - jnz .L004shaext - orl %ebx,%ecx - andl $1342177280,%ecx - cmpl $1342177280,%ecx - je .L005AVX - testl $512,%ebx - jnz .L006SSSE3 -.L003no_xmm: - subl %edi,%eax - cmpl $256,%eax - jae .L007unrolled - jmp .L002loop -.align 16 -.L002loop: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - bswap %eax - movl 12(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - bswap %eax - movl 28(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %eax - movl 44(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - bswap %eax - movl 60(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - addl $64,%edi - leal -36(%esp),%esp - movl %edi,104(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,8(%esp) - xorl %ecx,%ebx - movl %ecx,12(%esp) - movl %edi,16(%esp) - movl %ebx,(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - movl %edi,32(%esp) -.align 16 -.L00800_15: - movl %edx,%ecx - movl 24(%esp),%esi - rorl $14,%ecx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl 96(%esp),%ebx - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - addl $4,%ebp - addl %ebx,%eax - cmpl $3248222580,%esi - jne .L00800_15 - movl 156(%esp),%ecx - jmp .L00916_63 -.align 16 -.L00916_63: - movl %ecx,%ebx - movl 104(%esp),%esi - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 160(%esp),%ebx - shrl $10,%edi - addl 124(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 24(%esp),%esi - rorl $14,%ecx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl %ebx,96(%esp) - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - movl 156(%esp),%ecx - addl $4,%ebp - addl %ebx,%eax - cmpl $3329325298,%esi - jne .L00916_63 - movl 356(%esp),%esi - movl 8(%esp),%ebx - movl 16(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 32(%esp),%ecx - movl 360(%esp),%edi - addl 16(%esi),%edx - addl 20(%esi),%eax - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %eax,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - leal 356(%esp),%esp - subl $256,%ebp - cmpl 8(%esp),%edi - jb .L002loop - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001K256: -.long 1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298 -.long 66051,67438087,134810123,202182159 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.align 16 -.L007unrolled: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebp - movl 8(%esi),%ecx - movl 12(%esi),%ebx - movl %ebp,4(%esp) - xorl %ecx,%ebp - movl %ecx,8(%esp) - movl %ebx,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %esi,28(%esp) - jmp .L010grand_loop -.align 16 -.L010grand_loop: - movl (%edi),%ebx - movl 4(%edi),%ecx - bswap %ebx - movl 8(%edi),%esi - bswap %ecx - movl %ebx,32(%esp) - bswap %esi - movl %ecx,36(%esp) - movl %esi,40(%esp) - movl 12(%edi),%ebx - movl 16(%edi),%ecx - bswap %ebx - movl 20(%edi),%esi - bswap %ecx - movl %ebx,44(%esp) - bswap %esi - movl %ecx,48(%esp) - movl %esi,52(%esp) - movl 24(%edi),%ebx - movl 28(%edi),%ecx - bswap %ebx - movl 32(%edi),%esi - bswap %ecx - movl %ebx,56(%esp) - bswap %esi - movl %ecx,60(%esp) - movl %esi,64(%esp) - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %ebx - movl 44(%edi),%esi - bswap %ecx - movl %ebx,68(%esp) - bswap %esi - movl %ecx,72(%esp) - movl %esi,76(%esp) - movl 48(%edi),%ebx - movl 52(%edi),%ecx - bswap %ebx - movl 56(%edi),%esi - bswap %ecx - movl %ebx,80(%esp) - bswap %esi - movl %ecx,84(%esp) - movl %esi,88(%esp) - movl 60(%edi),%ebx - addl $64,%edi - bswap %ebx - movl %edi,100(%esp) - movl %ebx,92(%esp) - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 32(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1116352408(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 36(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1899447441(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 40(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3049323471(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 44(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3921009573(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 48(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 961987163(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 52(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1508970993(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 56(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2453635748(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 60(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2870763221(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 64(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3624381080(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 68(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 310598401(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 72(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 607225278(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 76(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1426881987(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 80(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1925078388(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 84(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2162078206(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 88(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2614888103(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 92(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3248222580(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3835390401(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 4022224774(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 264347078(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 604807628(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 770255983(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1249150122(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1555081692(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1996064986(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2554220882(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2821834349(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2952996808(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3210313671(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3336571891(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3584528711(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 113926993(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 338241895(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 666307205(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 773529912(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1294757372(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1396182291(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1695183700(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1986661051(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2177026350(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2456956037(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2730485921(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2820302411(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3259730800(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3345764771(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3516065817(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3600352804(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 4094571909(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 275423344(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 430227734(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 506948616(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 659060556(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 883997877(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 958139571(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1322822218(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1537002063(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1747873779(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1955562222(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2024104815(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2227730452(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2361852424(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2428436474(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2756734187(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3204031479(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3329325298(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 96(%esp),%esi - xorl %edi,%ebp - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebp - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebp,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebp,4(%esp) - xorl %edi,%ebp - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - cmpl 104(%esp),%edi - jb .L010grand_loop - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L004shaext: - subl $32,%esp - movdqu (%esi),%xmm1 - leal 128(%ebp),%ebp - movdqu 16(%esi),%xmm2 - movdqa 128(%ebp),%xmm7 - pshufd $27,%xmm1,%xmm0 - pshufd $177,%xmm1,%xmm1 - pshufd $27,%xmm2,%xmm2 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp .L011loop_shaext -.align 16 -.L011loop_shaext: - movdqu (%edi),%xmm3 - movdqu 16(%edi),%xmm4 - movdqu 32(%edi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%edi),%xmm6 - movdqa %xmm2,16(%esp) - movdqa -128(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - nop - movdqa %xmm1,(%esp) -.byte 15,56,203,202 - movdqa -112(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - leal 64(%edi),%edi -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -80(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa -64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa -48(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -16(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa (%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 16(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 48(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 80(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - movdqa 96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa 128(%ebp),%xmm7 -.byte 15,56,203,202 - movdqa 112(%ebp),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - cmpl %edi,%eax - nop -.byte 15,56,203,202 - paddd 16(%esp),%xmm2 - paddd (%esp),%xmm1 - jnz .L011loop_shaext - pshufd $177,%xmm2,%xmm2 - pshufd $27,%xmm1,%xmm7 - pshufd $177,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - movl 44(%esp),%esp - movdqu %xmm1,(%esi) - movdqu %xmm2,16(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L006SSSE3: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - movdqa 256(%ebp),%xmm7 - jmp .L012grand_ssse3 -.align 16 -.L012grand_ssse3: - movdqu (%edi),%xmm0 - movdqu 16(%edi),%xmm1 - movdqu 32(%edi),%xmm2 - movdqu 48(%edi),%xmm3 - addl $64,%edi -.byte 102,15,56,0,199 - movl %edi,100(%esp) -.byte 102,15,56,0,207 - movdqa (%ebp),%xmm4 -.byte 102,15,56,0,215 - movdqa 16(%ebp),%xmm5 - paddd %xmm0,%xmm4 -.byte 102,15,56,0,223 - movdqa 32(%ebp),%xmm6 - paddd %xmm1,%xmm5 - movdqa 48(%ebp),%xmm7 - movdqa %xmm4,32(%esp) - paddd %xmm2,%xmm6 - movdqa %xmm5,48(%esp) - paddd %xmm3,%xmm7 - movdqa %xmm6,64(%esp) - movdqa %xmm7,80(%esp) - jmp .L013ssse3_00_47 -.align 16 -.L013ssse3_00_47: - addl $64,%ebp - movl %edx,%ecx - movdqa %xmm1,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,224,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,250,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm3,%xmm7 - xorl %esi,%ecx - addl 32(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm0 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm0 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm0,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa (%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm0,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,32(%esp) - movl %edx,%ecx - movdqa %xmm2,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,225,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,251,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm0,%xmm7 - xorl %esi,%ecx - addl 48(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm1 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm1 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm1,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 16(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm1,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,48(%esp) - movl %edx,%ecx - movdqa %xmm3,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,226,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,248,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm1,%xmm7 - xorl %esi,%ecx - addl 64(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm2 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm2 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm2,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 32(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm2,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,64(%esp) - movl %edx,%ecx - movdqa %xmm0,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,227,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,249,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm2,%xmm7 - xorl %esi,%ecx - addl 80(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm3 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm3 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm3,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 48(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm3,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne .L013ssse3_00_47 - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - movdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb .L012grand_ssse3 - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L005AVX: - andl $264,%edx - cmpl $264,%edx - je .L014AVX_BMI - leal -96(%esp),%esp - vzeroall - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - vmovdqa 256(%ebp),%xmm7 - jmp .L015grand_avx -.align 32 -.L015grand_avx: - vmovdqu (%edi),%xmm0 - vmovdqu 16(%edi),%xmm1 - vmovdqu 32(%edi),%xmm2 - vmovdqu 48(%edi),%xmm3 - addl $64,%edi - vpshufb %xmm7,%xmm0,%xmm0 - movl %edi,100(%esp) - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd (%ebp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 16(%ebp),%xmm1,%xmm5 - vpaddd 32(%ebp),%xmm2,%xmm6 - vpaddd 48(%ebp),%xmm3,%xmm7 - vmovdqa %xmm4,32(%esp) - vmovdqa %xmm5,48(%esp) - vmovdqa %xmm6,64(%esp) - vmovdqa %xmm7,80(%esp) - jmp .L016avx_00_47 -.align 16 -.L016avx_00_47: - addl $64,%ebp - vpalignr $4,%xmm0,%xmm1,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - vpalignr $4,%xmm2,%xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - vpaddd %xmm7,%xmm0,%xmm0 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - vpshufd $250,%xmm3,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 32(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - vpaddd %xmm4,%xmm0,%xmm0 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - vpaddd %xmm7,%xmm0,%xmm0 - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm0,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 40(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm0,%xmm0 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - vpaddd (%ebp),%xmm0,%xmm6 - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,32(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - vpalignr $4,%xmm3,%xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - vpaddd %xmm7,%xmm1,%xmm1 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - vpshufd $250,%xmm0,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 48(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - vpaddd %xmm4,%xmm1,%xmm1 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - vpaddd %xmm7,%xmm1,%xmm1 - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm1,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 56(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm1,%xmm1 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - vpaddd 16(%ebp),%xmm1,%xmm6 - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,48(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - vpalignr $4,%xmm0,%xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - vpaddd %xmm7,%xmm2,%xmm2 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - vpshufd $250,%xmm1,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 64(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - vpaddd %xmm4,%xmm2,%xmm2 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - vpaddd %xmm7,%xmm2,%xmm2 - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm2,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 72(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm2,%xmm2 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - vpaddd 32(%ebp),%xmm2,%xmm6 - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,64(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - vpalignr $4,%xmm1,%xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - vpaddd %xmm7,%xmm3,%xmm3 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - vpshufd $250,%xmm2,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 80(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - vpaddd %xmm4,%xmm3,%xmm3 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - vpaddd %xmm7,%xmm3,%xmm3 - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm3,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 88(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm3,%xmm3 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - vpaddd 48(%ebp),%xmm3,%xmm6 - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne .L016avx_00_47 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - vmovdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb .L015grand_avx - movl 108(%esp),%esp - vzeroall - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L014AVX_BMI: - leal -96(%esp),%esp - vzeroall - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - vmovdqa 256(%ebp),%xmm7 - jmp .L017grand_avx_bmi -.align 32 -.L017grand_avx_bmi: - vmovdqu (%edi),%xmm0 - vmovdqu 16(%edi),%xmm1 - vmovdqu 32(%edi),%xmm2 - vmovdqu 48(%edi),%xmm3 - addl $64,%edi - vpshufb %xmm7,%xmm0,%xmm0 - movl %edi,100(%esp) - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd (%ebp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 16(%ebp),%xmm1,%xmm5 - vpaddd 32(%ebp),%xmm2,%xmm6 - vpaddd 48(%ebp),%xmm3,%xmm7 - vmovdqa %xmm4,32(%esp) - vmovdqa %xmm5,48(%esp) - vmovdqa %xmm6,64(%esp) - vmovdqa %xmm7,80(%esp) - jmp .L018avx_bmi_00_47 -.align 16 -.L018avx_bmi_00_47: - addl $64,%ebp - vpalignr $4,%xmm0,%xmm1,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - vpaddd %xmm7,%xmm0,%xmm0 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 28(%esp),%edx - andl %eax,%ebx - addl 32(%esp),%edx - vpshufd $250,%xmm3,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 24(%esp),%edx - andl %ebx,%eax - addl 36(%esp),%edx - vpaddd %xmm4,%xmm0,%xmm0 - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm0,%xmm0 - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm0,%xmm7 - addl 20(%esp),%edx - andl %eax,%ebx - addl 40(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm0,%xmm0 - addl 16(%esp),%edx - andl %ebx,%eax - addl 44(%esp),%edx - vpaddd (%ebp),%xmm0,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,32(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - vpaddd %xmm7,%xmm1,%xmm1 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 12(%esp),%edx - andl %eax,%ebx - addl 48(%esp),%edx - vpshufd $250,%xmm0,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 8(%esp),%edx - andl %ebx,%eax - addl 52(%esp),%edx - vpaddd %xmm4,%xmm1,%xmm1 - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm1,%xmm1 - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm1,%xmm7 - addl 4(%esp),%edx - andl %eax,%ebx - addl 56(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm1,%xmm1 - addl (%esp),%edx - andl %ebx,%eax - addl 60(%esp),%edx - vpaddd 16(%ebp),%xmm1,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,48(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - vpalignr $4,%xmm0,%xmm1,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - vpaddd %xmm7,%xmm2,%xmm2 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 28(%esp),%edx - andl %eax,%ebx - addl 64(%esp),%edx - vpshufd $250,%xmm1,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 24(%esp),%edx - andl %ebx,%eax - addl 68(%esp),%edx - vpaddd %xmm4,%xmm2,%xmm2 - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm2,%xmm2 - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm2,%xmm7 - addl 20(%esp),%edx - andl %eax,%ebx - addl 72(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm2,%xmm2 - addl 16(%esp),%edx - andl %ebx,%eax - addl 76(%esp),%edx - vpaddd 32(%ebp),%xmm2,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,64(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - vpaddd %xmm7,%xmm3,%xmm3 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 12(%esp),%edx - andl %eax,%ebx - addl 80(%esp),%edx - vpshufd $250,%xmm2,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 8(%esp),%edx - andl %ebx,%eax - addl 84(%esp),%edx - vpaddd %xmm4,%xmm3,%xmm3 - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm3,%xmm3 - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm3,%xmm7 - addl 4(%esp),%edx - andl %eax,%ebx - addl 88(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm3,%xmm3 - addl (%esp),%edx - andl %ebx,%eax - addl 92(%esp),%edx - vpaddd 48(%ebp),%xmm3,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne .L018avx_bmi_00_47 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - andl %eax,%ebx - addl 32(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - andl %ebx,%eax - addl 36(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - andl %eax,%ebx - addl 40(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - andl %ebx,%eax - addl 44(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - andl %eax,%ebx - addl 48(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - andl %ebx,%eax - addl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - andl %eax,%ebx - addl 56(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl (%esp),%edx - andl %ebx,%eax - addl 60(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - andl %eax,%ebx - addl 64(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - andl %ebx,%eax - addl 68(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - andl %eax,%ebx - addl 72(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - andl %ebx,%eax - addl 76(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - andl %eax,%ebx - addl 80(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - andl %ebx,%eax - addl 84(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - andl %eax,%ebx - addl 88(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl (%esp),%edx - andl %ebx,%eax - addl 92(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - vmovdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb .L017grand_avx_bmi - movl 108(%esp),%esp - vzeroall - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size sha256_block_data_order,.-.L_sha256_block_data_order_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/sha/sha512-586.s b/deps/openssl/asm/x86-elf-gas/sha/sha512-586.s deleted file mode 100644 index 83329f439e8b79..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/sha/sha512-586.s +++ /dev/null @@ -1,2829 +0,0 @@ -.file "sha512-586.s" -.text -.globl sha512_block_data_order -.type sha512_block_data_order,@function -.align 16 -sha512_block_data_order: -.L_sha512_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001K512-.L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $7,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%ecx - testl $67108864,%ecx - jz .L002loop_x86 - movl 4(%edx),%edx - movq (%esi),%mm0 - andl $16777216,%ecx - movq 8(%esi),%mm1 - andl $512,%edx - movq 16(%esi),%mm2 - orl %edx,%ecx - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 - cmpl $16777728,%ecx - je .L003SSSE3 - subl $80,%esp - jmp .L004loop_sse2 -.align 16 -.L004loop_sse2: - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - pxor %mm1,%mm2 - movq %mm7,56(%esp) - movq %mm0,%mm3 - movl (%edi),%eax - movl 4(%edi),%ebx - addl $8,%edi - movl $15,%edx - bswap %eax - bswap %ebx - jmp .L00500_14_sse2 -.align 16 -.L00500_14_sse2: - movd %eax,%mm1 - movl (%edi),%eax - movd %ebx,%mm7 - movl 4(%edi),%ebx - addl $8,%edi - bswap %eax - bswap %ebx - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - movq 48(%esp),%mm6 - decl %edx - jnz .L00500_14_sse2 - movd %eax,%mm1 - movd %ebx,%mm7 - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - pxor %mm0,%mm0 - movl $32,%edx - jmp .L00616_79_sse2 -.align 16 -.L00616_79_sse2: - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm0 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm2 - addl $8,%ebp - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm2 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm0 - addl $8,%ebp - decl %edx - jnz .L00616_79_sse2 - paddq %mm3,%mm0 - movq 8(%esp),%mm1 - movq 24(%esp),%mm3 - movq 40(%esp),%mm5 - movq 48(%esp),%mm6 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movl $640,%eax - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal (%esp,%eax,1),%esp - subl %eax,%ebp - cmpl 88(%esp),%edi - jb .L004loop_sse2 - movl 92(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L003SSSE3: - leal -64(%esp),%edx - subl $256,%esp - movdqa 640(%ebp),%xmm1 - movdqu (%edi),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%edi),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%edi),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%edi),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%edi),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%edi),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%edi),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%edi),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movdqa %xmm2,-16(%edx) - nop -.align 32 -.L007loop_ssse3: - movdqa 16(%edx),%xmm2 - movdqa %xmm3,48(%edx) - leal 128(%ebp),%ebp - movq %mm1,8(%esp) - movl %edi,%ebx - movq %mm2,16(%esp) - leal 128(%edi),%edi - movq %mm3,24(%esp) - cmpl %eax,%edi - movq %mm5,40(%esp) - cmovbl %edi,%ebx - movq %mm6,48(%esp) - movl $4,%ecx - pxor %mm1,%mm2 - movq %mm7,56(%esp) - pxor %mm3,%mm3 - jmp .L00800_47_ssse3 -.align 32 -.L00800_47_ssse3: - movdqa %xmm5,%xmm3 - movdqa %xmm2,%xmm1 -.byte 102,15,58,15,208,8 - movdqa %xmm4,(%edx) -.byte 102,15,58,15,220,8 - movdqa %xmm2,%xmm4 - psrlq $7,%xmm2 - paddq %xmm3,%xmm0 - movdqa %xmm4,%xmm3 - psrlq $1,%xmm4 - psllq $56,%xmm3 - pxor %xmm4,%xmm2 - psrlq $7,%xmm4 - pxor %xmm3,%xmm2 - psllq $7,%xmm3 - pxor %xmm4,%xmm2 - movdqa %xmm7,%xmm4 - pxor %xmm3,%xmm2 - movdqa %xmm7,%xmm3 - psrlq $6,%xmm4 - paddq %xmm2,%xmm0 - movdqa %xmm7,%xmm2 - psrlq $19,%xmm3 - psllq $3,%xmm2 - pxor %xmm3,%xmm4 - psrlq $42,%xmm3 - pxor %xmm2,%xmm4 - psllq $42,%xmm2 - pxor %xmm3,%xmm4 - movdqa 32(%edx),%xmm3 - pxor %xmm2,%xmm4 - movdqa (%ebp),%xmm2 - movq %mm4,%mm1 - paddq %xmm4,%xmm0 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm0,%xmm2 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm2,-128(%edx) - movdqa %xmm6,%xmm4 - movdqa %xmm3,%xmm2 -.byte 102,15,58,15,217,8 - movdqa %xmm5,16(%edx) -.byte 102,15,58,15,229,8 - movdqa %xmm3,%xmm5 - psrlq $7,%xmm3 - paddq %xmm4,%xmm1 - movdqa %xmm5,%xmm4 - psrlq $1,%xmm5 - psllq $56,%xmm4 - pxor %xmm5,%xmm3 - psrlq $7,%xmm5 - pxor %xmm4,%xmm3 - psllq $7,%xmm4 - pxor %xmm5,%xmm3 - movdqa %xmm0,%xmm5 - pxor %xmm4,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $6,%xmm5 - paddq %xmm3,%xmm1 - movdqa %xmm0,%xmm3 - psrlq $19,%xmm4 - psllq $3,%xmm3 - pxor %xmm4,%xmm5 - psrlq $42,%xmm4 - pxor %xmm3,%xmm5 - psllq $42,%xmm3 - pxor %xmm4,%xmm5 - movdqa 48(%edx),%xmm4 - pxor %xmm3,%xmm5 - movdqa 16(%ebp),%xmm3 - movq %mm4,%mm1 - paddq %xmm5,%xmm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm1,%xmm3 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm3,-112(%edx) - movdqa %xmm7,%xmm5 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,226,8 - movdqa %xmm6,32(%edx) -.byte 102,15,58,15,238,8 - movdqa %xmm4,%xmm6 - psrlq $7,%xmm4 - paddq %xmm5,%xmm2 - movdqa %xmm6,%xmm5 - psrlq $1,%xmm6 - psllq $56,%xmm5 - pxor %xmm6,%xmm4 - psrlq $7,%xmm6 - pxor %xmm5,%xmm4 - psllq $7,%xmm5 - pxor %xmm6,%xmm4 - movdqa %xmm1,%xmm6 - pxor %xmm5,%xmm4 - movdqa %xmm1,%xmm5 - psrlq $6,%xmm6 - paddq %xmm4,%xmm2 - movdqa %xmm1,%xmm4 - psrlq $19,%xmm5 - psllq $3,%xmm4 - pxor %xmm5,%xmm6 - psrlq $42,%xmm5 - pxor %xmm4,%xmm6 - psllq $42,%xmm4 - pxor %xmm5,%xmm6 - movdqa (%edx),%xmm5 - pxor %xmm4,%xmm6 - movdqa 32(%ebp),%xmm4 - movq %mm4,%mm1 - paddq %xmm6,%xmm2 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm2,%xmm4 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm4,-96(%edx) - movdqa %xmm0,%xmm6 - movdqa %xmm5,%xmm4 -.byte 102,15,58,15,235,8 - movdqa %xmm7,48(%edx) -.byte 102,15,58,15,247,8 - movdqa %xmm5,%xmm7 - psrlq $7,%xmm5 - paddq %xmm6,%xmm3 - movdqa %xmm7,%xmm6 - psrlq $1,%xmm7 - psllq $56,%xmm6 - pxor %xmm7,%xmm5 - psrlq $7,%xmm7 - pxor %xmm6,%xmm5 - psllq $7,%xmm6 - pxor %xmm7,%xmm5 - movdqa %xmm2,%xmm7 - pxor %xmm6,%xmm5 - movdqa %xmm2,%xmm6 - psrlq $6,%xmm7 - paddq %xmm5,%xmm3 - movdqa %xmm2,%xmm5 - psrlq $19,%xmm6 - psllq $3,%xmm5 - pxor %xmm6,%xmm7 - psrlq $42,%xmm6 - pxor %xmm5,%xmm7 - psllq $42,%xmm5 - pxor %xmm6,%xmm7 - movdqa 16(%edx),%xmm6 - pxor %xmm5,%xmm7 - movdqa 48(%ebp),%xmm5 - movq %mm4,%mm1 - paddq %xmm7,%xmm3 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm3,%xmm5 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm5,-80(%edx) - movdqa %xmm1,%xmm7 - movdqa %xmm6,%xmm5 -.byte 102,15,58,15,244,8 - movdqa %xmm0,(%edx) -.byte 102,15,58,15,248,8 - movdqa %xmm6,%xmm0 - psrlq $7,%xmm6 - paddq %xmm7,%xmm4 - movdqa %xmm0,%xmm7 - psrlq $1,%xmm0 - psllq $56,%xmm7 - pxor %xmm0,%xmm6 - psrlq $7,%xmm0 - pxor %xmm7,%xmm6 - psllq $7,%xmm7 - pxor %xmm0,%xmm6 - movdqa %xmm3,%xmm0 - pxor %xmm7,%xmm6 - movdqa %xmm3,%xmm7 - psrlq $6,%xmm0 - paddq %xmm6,%xmm4 - movdqa %xmm3,%xmm6 - psrlq $19,%xmm7 - psllq $3,%xmm6 - pxor %xmm7,%xmm0 - psrlq $42,%xmm7 - pxor %xmm6,%xmm0 - psllq $42,%xmm6 - pxor %xmm7,%xmm0 - movdqa 32(%edx),%xmm7 - pxor %xmm6,%xmm0 - movdqa 64(%ebp),%xmm6 - movq %mm4,%mm1 - paddq %xmm0,%xmm4 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm4,%xmm6 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm6,-64(%edx) - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm6 -.byte 102,15,58,15,253,8 - movdqa %xmm1,16(%edx) -.byte 102,15,58,15,193,8 - movdqa %xmm7,%xmm1 - psrlq $7,%xmm7 - paddq %xmm0,%xmm5 - movdqa %xmm1,%xmm0 - psrlq $1,%xmm1 - psllq $56,%xmm0 - pxor %xmm1,%xmm7 - psrlq $7,%xmm1 - pxor %xmm0,%xmm7 - psllq $7,%xmm0 - pxor %xmm1,%xmm7 - movdqa %xmm4,%xmm1 - pxor %xmm0,%xmm7 - movdqa %xmm4,%xmm0 - psrlq $6,%xmm1 - paddq %xmm7,%xmm5 - movdqa %xmm4,%xmm7 - psrlq $19,%xmm0 - psllq $3,%xmm7 - pxor %xmm0,%xmm1 - psrlq $42,%xmm0 - pxor %xmm7,%xmm1 - psllq $42,%xmm7 - pxor %xmm0,%xmm1 - movdqa 48(%edx),%xmm0 - pxor %xmm7,%xmm1 - movdqa 80(%ebp),%xmm7 - movq %mm4,%mm1 - paddq %xmm1,%xmm5 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm5,%xmm7 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm7,-48(%edx) - movdqa %xmm3,%xmm1 - movdqa %xmm0,%xmm7 -.byte 102,15,58,15,198,8 - movdqa %xmm2,32(%edx) -.byte 102,15,58,15,202,8 - movdqa %xmm0,%xmm2 - psrlq $7,%xmm0 - paddq %xmm1,%xmm6 - movdqa %xmm2,%xmm1 - psrlq $1,%xmm2 - psllq $56,%xmm1 - pxor %xmm2,%xmm0 - psrlq $7,%xmm2 - pxor %xmm1,%xmm0 - psllq $7,%xmm1 - pxor %xmm2,%xmm0 - movdqa %xmm5,%xmm2 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm1 - psrlq $6,%xmm2 - paddq %xmm0,%xmm6 - movdqa %xmm5,%xmm0 - psrlq $19,%xmm1 - psllq $3,%xmm0 - pxor %xmm1,%xmm2 - psrlq $42,%xmm1 - pxor %xmm0,%xmm2 - psllq $42,%xmm0 - pxor %xmm1,%xmm2 - movdqa (%edx),%xmm1 - pxor %xmm0,%xmm2 - movdqa 96(%ebp),%xmm0 - movq %mm4,%mm1 - paddq %xmm2,%xmm6 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm6,%xmm0 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm0,-32(%edx) - movdqa %xmm4,%xmm2 - movdqa %xmm1,%xmm0 -.byte 102,15,58,15,207,8 - movdqa %xmm3,48(%edx) -.byte 102,15,58,15,211,8 - movdqa %xmm1,%xmm3 - psrlq $7,%xmm1 - paddq %xmm2,%xmm7 - movdqa %xmm3,%xmm2 - psrlq $1,%xmm3 - psllq $56,%xmm2 - pxor %xmm3,%xmm1 - psrlq $7,%xmm3 - pxor %xmm2,%xmm1 - psllq $7,%xmm2 - pxor %xmm3,%xmm1 - movdqa %xmm6,%xmm3 - pxor %xmm2,%xmm1 - movdqa %xmm6,%xmm2 - psrlq $6,%xmm3 - paddq %xmm1,%xmm7 - movdqa %xmm6,%xmm1 - psrlq $19,%xmm2 - psllq $3,%xmm1 - pxor %xmm2,%xmm3 - psrlq $42,%xmm2 - pxor %xmm1,%xmm3 - psllq $42,%xmm1 - pxor %xmm2,%xmm3 - movdqa 16(%edx),%xmm2 - pxor %xmm1,%xmm3 - movdqa 112(%ebp),%xmm1 - movq %mm4,%mm1 - paddq %xmm3,%xmm7 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm7,%xmm1 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm1,-16(%edx) - leal 128(%ebp),%ebp - decl %ecx - jnz .L00800_47_ssse3 - movdqa (%ebp),%xmm1 - leal -640(%ebp),%ebp - movdqu (%ebx),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%ebx),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movq %mm4,%mm1 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%ebx),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movq %mm4,%mm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%ebx),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movq %mm4,%mm1 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%ebx),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movq %mm4,%mm1 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%ebx),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movq %mm4,%mm1 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%ebx),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movq %mm4,%mm1 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%ebx),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movq %mm4,%mm1 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movq %mm4,%mm1 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm2,-16(%edx) - movq 8(%esp),%mm1 - paddq %mm3,%mm0 - movq 24(%esp),%mm3 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - cmpl %eax,%edi - jb .L007loop_ssse3 - movl 76(%edx),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L002loop_x86: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - movl 28(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - movl 44(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - movl 60(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 64(%edi),%eax - movl 68(%edi),%ebx - movl 72(%edi),%ecx - movl 76(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 80(%edi),%eax - movl 84(%edi),%ebx - movl 88(%edi),%ecx - movl 92(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 96(%edi),%eax - movl 100(%edi),%ebx - movl 104(%edi),%ecx - movl 108(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 112(%edi),%eax - movl 116(%edi),%ebx - movl 120(%edi),%ecx - movl 124(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - addl $128,%edi - subl $72,%esp - movl %edi,204(%esp) - leal 8(%esp),%edi - movl $16,%ecx -.long 2784229001 -.align 16 -.L00900_15_x86: - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $148,%dl - jne .L00900_15_x86 -.align 16 -.L01016_79_x86: - movl 312(%esp),%ecx - movl 316(%esp),%edx - movl %ecx,%esi - shrl $1,%ecx - movl %edx,%edi - shrl $1,%edx - movl %ecx,%eax - shll $24,%esi - movl %edx,%ebx - shll $24,%edi - xorl %esi,%ebx - shrl $6,%ecx - xorl %edi,%eax - shrl $6,%edx - xorl %ecx,%eax - shll $7,%esi - xorl %edx,%ebx - shll $1,%edi - xorl %esi,%ebx - shrl $1,%ecx - xorl %edi,%eax - shrl $1,%edx - xorl %ecx,%eax - shll $6,%edi - xorl %edx,%ebx - xorl %edi,%eax - movl %eax,(%esp) - movl %ebx,4(%esp) - movl 208(%esp),%ecx - movl 212(%esp),%edx - movl %ecx,%esi - shrl $6,%ecx - movl %edx,%edi - shrl $6,%edx - movl %ecx,%eax - shll $3,%esi - movl %edx,%ebx - shll $3,%edi - xorl %esi,%eax - shrl $13,%ecx - xorl %edi,%ebx - shrl $13,%edx - xorl %ecx,%eax - shll $10,%esi - xorl %edx,%ebx - shll $10,%edi - xorl %esi,%ebx - shrl $10,%ecx - xorl %edi,%eax - shrl $10,%edx - xorl %ecx,%ebx - shll $13,%edi - xorl %edx,%eax - xorl %edi,%eax - movl 320(%esp),%ecx - movl 324(%esp),%edx - addl (%esp),%eax - adcl 4(%esp),%ebx - movl 248(%esp),%esi - movl 252(%esp),%edi - addl %ecx,%eax - adcl %edx,%ebx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,192(%esp) - movl %ebx,196(%esp) - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $23,%dl - jne .L01016_79_x86 - movl 840(%esp),%esi - movl 844(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - addl 8(%esp),%eax - adcl 12(%esp),%ebx - movl %eax,(%esi) - movl %ebx,4(%esi) - addl 16(%esp),%ecx - adcl 20(%esp),%edx - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - addl 24(%esp),%eax - adcl 28(%esp),%ebx - movl %eax,16(%esi) - movl %ebx,20(%esi) - addl 32(%esp),%ecx - adcl 36(%esp),%edx - movl %ecx,24(%esi) - movl %edx,28(%esi) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - addl 40(%esp),%eax - adcl 44(%esp),%ebx - movl %eax,32(%esi) - movl %ebx,36(%esi) - addl 48(%esp),%ecx - adcl 52(%esp),%edx - movl %ecx,40(%esi) - movl %edx,44(%esi) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - addl 56(%esp),%eax - adcl 60(%esp),%ebx - movl %eax,48(%esi) - movl %ebx,52(%esi) - addl 64(%esp),%ecx - adcl 68(%esp),%edx - movl %ecx,56(%esi) - movl %edx,60(%esi) - addl $840,%esp - subl $640,%ebp - cmpl 8(%esp),%edi - jb .L002loop_x86 - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001K512: -.long 3609767458,1116352408 -.long 602891725,1899447441 -.long 3964484399,3049323471 -.long 2173295548,3921009573 -.long 4081628472,961987163 -.long 3053834265,1508970993 -.long 2937671579,2453635748 -.long 3664609560,2870763221 -.long 2734883394,3624381080 -.long 1164996542,310598401 -.long 1323610764,607225278 -.long 3590304994,1426881987 -.long 4068182383,1925078388 -.long 991336113,2162078206 -.long 633803317,2614888103 -.long 3479774868,3248222580 -.long 2666613458,3835390401 -.long 944711139,4022224774 -.long 2341262773,264347078 -.long 2007800933,604807628 -.long 1495990901,770255983 -.long 1856431235,1249150122 -.long 3175218132,1555081692 -.long 2198950837,1996064986 -.long 3999719339,2554220882 -.long 766784016,2821834349 -.long 2566594879,2952996808 -.long 3203337956,3210313671 -.long 1034457026,3336571891 -.long 2466948901,3584528711 -.long 3758326383,113926993 -.long 168717936,338241895 -.long 1188179964,666307205 -.long 1546045734,773529912 -.long 1522805485,1294757372 -.long 2643833823,1396182291 -.long 2343527390,1695183700 -.long 1014477480,1986661051 -.long 1206759142,2177026350 -.long 344077627,2456956037 -.long 1290863460,2730485921 -.long 3158454273,2820302411 -.long 3505952657,3259730800 -.long 106217008,3345764771 -.long 3606008344,3516065817 -.long 1432725776,3600352804 -.long 1467031594,4094571909 -.long 851169720,275423344 -.long 3100823752,430227734 -.long 1363258195,506948616 -.long 3750685593,659060556 -.long 3785050280,883997877 -.long 3318307427,958139571 -.long 3812723403,1322822218 -.long 2003034995,1537002063 -.long 3602036899,1747873779 -.long 1575990012,1955562222 -.long 1125592928,2024104815 -.long 2716904306,2227730452 -.long 442776044,2361852424 -.long 593698344,2428436474 -.long 3733110249,2756734187 -.long 2999351573,3204031479 -.long 3815920427,3329325298 -.long 3928383900,3391569614 -.long 566280711,3515267271 -.long 3454069534,3940187606 -.long 4000239992,4118630271 -.long 1914138554,116418474 -.long 2731055270,174292421 -.long 3203993006,289380356 -.long 320620315,460393269 -.long 587496836,685471733 -.long 1086792851,852142971 -.long 365543100,1017036298 -.long 2618297676,1126000580 -.long 3409855158,1288033470 -.long 4234509866,1501505948 -.long 987167468,1607167915 -.long 1246189591,1816402316 -.long 67438087,66051 -.long 202182159,134810123 -.size sha512_block_data_order,.-.L_sha512_block_data_order_begin -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s b/deps/openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s deleted file mode 100644 index 37f50898ae6b53..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s +++ /dev/null @@ -1,1107 +0,0 @@ -.file "wp-mmx.s" -.text -.globl whirlpool_block_mmx -.type whirlpool_block_mmx,@function -.align 16 -whirlpool_block_mmx: -.L_whirlpool_block_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebp - movl %esp,%eax - subl $148,%esp - andl $-64,%esp - leal 128(%esp),%ebx - movl %esi,(%ebx) - movl %edi,4(%ebx) - movl %ebp,8(%ebx) - movl %eax,16(%ebx) - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001table-.L000pic_point(%ebp),%ebp - xorl %ecx,%ecx - xorl %edx,%edx - movq (%esi),%mm0 - movq 8(%esi),%mm1 - movq 16(%esi),%mm2 - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 -.L002outerloop: - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - xorl %esi,%esi - movl %esi,12(%ebx) -.align 16 -.L003round: - movq 4096(%ebp,%esi,8),%mm0 - movl (%esp),%eax - movl 4(%esp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - movq 7(%ebp,%edi,8),%mm1 - movl 8(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 6(%ebp,%esi,8),%mm2 - movq 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 4(%ebp,%esi,8),%mm4 - movq 3(%ebp,%edi,8),%mm5 - movl 12(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - movq 2(%ebp,%esi,8),%mm6 - movq 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 16(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 20(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 24(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 28(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 32(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 36(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 40(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 44(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 48(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 52(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 56(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 60(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - movl 64(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - movl 68(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - pxor 7(%ebp,%edi,8),%mm1 - movl 72(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm2 - pxor 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm4 - pxor 3(%ebp,%edi,8),%mm5 - movl 76(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm6 - pxor 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 80(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 84(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 88(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 92(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 96(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 100(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 104(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 108(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 112(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 116(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 120(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 124(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - leal 128(%esp),%ebx - movl 12(%ebx),%esi - addl $1,%esi - cmpl $10,%esi - je .L004roundsdone - movl %esi,12(%ebx) - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - jmp .L003round -.align 16 -.L004roundsdone: - movl (%ebx),%esi - movl 4(%ebx),%edi - movl 8(%ebx),%eax - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - pxor (%esi),%mm0 - pxor 8(%esi),%mm1 - pxor 16(%esi),%mm2 - pxor 24(%esi),%mm3 - pxor 32(%esi),%mm4 - pxor 40(%esi),%mm5 - pxor 48(%esi),%mm6 - pxor 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal 64(%edi),%edi - subl $1,%eax - jz .L005alldone - movl %edi,4(%ebx) - movl %eax,8(%ebx) - jmp .L002outerloop -.L005alldone: - emms - movl 16(%ebx),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001table: -.byte 24,24,96,24,192,120,48,216 -.byte 24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38 -.byte 35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184 -.byte 198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251 -.byte 232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203 -.byte 135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17 -.byte 184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9 -.byte 1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13 -.byte 79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155 -.byte 54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255 -.byte 166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12 -.byte 210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14 -.byte 245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150 -.byte 121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48 -.byte 111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109 -.byte 145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248 -.byte 82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71 -.byte 96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53 -.byte 188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55 -.byte 155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138 -.byte 142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210 -.byte 163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108 -.byte 12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132 -.byte 123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128 -.byte 53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245 -.byte 29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179 -.byte 224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33 -.byte 215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156 -.byte 194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67 -.byte 46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41 -.byte 75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93 -.byte 254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213 -.byte 87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189 -.byte 21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232 -.byte 119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146 -.byte 55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158 -.byte 229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19 -.byte 159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35 -.byte 240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32 -.byte 74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68 -.byte 218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162 -.byte 88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207 -.byte 201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124 -.byte 41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90 -.byte 10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80 -.byte 177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201 -.byte 160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20 -.byte 107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217 -.byte 133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60 -.byte 189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143 -.byte 93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144 -.byte 16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7 -.byte 244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221 -.byte 203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211 -.byte 62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45 -.byte 5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120 -.byte 103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151 -.byte 228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2 -.byte 39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115 -.byte 65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167 -.byte 139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246 -.byte 167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178 -.byte 125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73 -.byte 149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86 -.byte 216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112 -.byte 251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205 -.byte 238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187 -.byte 124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113 -.byte 102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123 -.byte 221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175 -.byte 23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69 -.byte 71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26 -.byte 158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212 -.byte 202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88 -.byte 45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46 -.byte 191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63 -.byte 7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172 -.byte 173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176 -.byte 90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239 -.byte 131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182 -.byte 51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92 -.byte 99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18 -.byte 2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147 -.byte 170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222 -.byte 113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198 -.byte 200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209 -.byte 25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59 -.byte 73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95 -.byte 217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49 -.byte 242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168 -.byte 227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185 -.byte 91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188 -.byte 136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62 -.byte 154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11 -.byte 38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191 -.byte 50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89 -.byte 176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242 -.byte 233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119 -.byte 15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51 -.byte 213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244 -.byte 128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39 -.byte 190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235 -.byte 205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137 -.byte 52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50 -.byte 72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84 -.byte 255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141 -.byte 122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100 -.byte 144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157 -.byte 95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61 -.byte 32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15 -.byte 104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202 -.byte 26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183 -.byte 174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125 -.byte 180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206 -.byte 84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127 -.byte 147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47 -.byte 34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99 -.byte 100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42 -.byte 241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204 -.byte 115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130 -.byte 18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122 -.byte 64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72 -.byte 8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149 -.byte 195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223 -.byte 236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77 -.byte 219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192 -.byte 161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145 -.byte 141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200 -.byte 61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91 -.byte 151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0 -.byte 0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249 -.byte 207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110 -.byte 43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225 -.byte 118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230 -.byte 130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40 -.byte 214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195 -.byte 27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116 -.byte 181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190 -.byte 175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29 -.byte 106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234 -.byte 80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87 -.byte 69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56 -.byte 243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173 -.byte 48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196 -.byte 239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218 -.byte 63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199 -.byte 85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219 -.byte 162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233 -.byte 234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106 -.byte 101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3 -.byte 186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74 -.byte 47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142 -.byte 192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96 -.byte 222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252 -.byte 28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70 -.byte 253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31 -.byte 77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118 -.byte 146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250 -.byte 117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54 -.byte 6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174 -.byte 138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75 -.byte 178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133 -.byte 230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126 -.byte 14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231 -.byte 31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85 -.byte 98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58 -.byte 212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129 -.byte 168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82 -.byte 150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98 -.byte 249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163 -.byte 197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16 -.byte 37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171 -.byte 89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208 -.byte 132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197 -.byte 114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236 -.byte 57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22 -.byte 76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148 -.byte 94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159 -.byte 120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229 -.byte 56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152 -.byte 140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23 -.byte 209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228 -.byte 165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161 -.byte 226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78 -.byte 97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66 -.byte 179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52 -.byte 33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8 -.byte 156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238 -.byte 30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97 -.byte 67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177 -.byte 199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79 -.byte 252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36 -.byte 4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227 -.byte 81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37 -.byte 153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34 -.byte 109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101 -.byte 13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121 -.byte 250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105 -.byte 223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169 -.byte 126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25 -.byte 36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254 -.byte 59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154 -.byte 171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240 -.byte 206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153 -.byte 17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131 -.byte 143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4 -.byte 78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102 -.byte 183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224 -.byte 235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193 -.byte 60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253 -.byte 129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64 -.byte 148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28 -.byte 247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24 -.byte 185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139 -.byte 19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81 -.byte 44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5 -.byte 211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140 -.byte 231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57 -.byte 110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170 -.byte 196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27 -.byte 3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220 -.byte 86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94 -.byte 68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160 -.byte 127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136 -.byte 169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103 -.byte 42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10 -.byte 187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135 -.byte 193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241 -.byte 83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114 -.byte 220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83 -.byte 11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1 -.byte 157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43 -.byte 108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164 -.byte 49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243 -.byte 116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21 -.byte 246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76 -.byte 70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165 -.byte 172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181 -.byte 137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180 -.byte 20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186 -.byte 225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166 -.byte 22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247 -.byte 58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6 -.byte 105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65 -.byte 9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215 -.byte 112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111 -.byte 182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30 -.byte 208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214 -.byte 237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226 -.byte 204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104 -.byte 66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44 -.byte 152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237 -.byte 164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117 -.byte 40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134 -.byte 92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107 -.byte 248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194 -.byte 134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 -.size whirlpool_block_mmx,.-.L_whirlpool_block_mmx_begin diff --git a/deps/openssl/asm/x86-elf-gas/x86cpuid.s b/deps/openssl/asm/x86-elf-gas/x86cpuid.s deleted file mode 100644 index 08369b42391d75..00000000000000 --- a/deps/openssl/asm/x86-elf-gas/x86cpuid.s +++ /dev/null @@ -1,362 +0,0 @@ -.file "x86cpuid.s" -.text -.globl OPENSSL_ia32_cpuid -.type OPENSSL_ia32_cpuid,@function -.align 16 -OPENSSL_ia32_cpuid: -.L_OPENSSL_ia32_cpuid_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %edx,%edx - pushfl - popl %eax - movl %eax,%ecx - xorl $2097152,%eax - pushl %eax - popfl - pushfl - popl %eax - xorl %eax,%ecx - xorl %eax,%eax - movl 20(%esp),%esi - movl %eax,8(%esi) - btl $21,%ecx - jnc .L000nocpuid - .byte 0x0f,0xa2 - movl %eax,%edi - xorl %eax,%eax - cmpl $1970169159,%ebx - setne %al - movl %eax,%ebp - cmpl $1231384169,%edx - setne %al - orl %eax,%ebp - cmpl $1818588270,%ecx - setne %al - orl %eax,%ebp - jz .L001intel - cmpl $1752462657,%ebx - setne %al - movl %eax,%esi - cmpl $1769238117,%edx - setne %al - orl %eax,%esi - cmpl $1145913699,%ecx - setne %al - orl %eax,%esi - jnz .L001intel - movl $2147483648,%eax - .byte 0x0f,0xa2 - cmpl $2147483649,%eax - jb .L001intel - movl %eax,%esi - movl $2147483649,%eax - .byte 0x0f,0xa2 - orl %ecx,%ebp - andl $2049,%ebp - cmpl $2147483656,%esi - jb .L001intel - movl $2147483656,%eax - .byte 0x0f,0xa2 - movzbl %cl,%esi - incl %esi - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - btl $28,%edx - jnc .L002generic - shrl $16,%ebx - andl $255,%ebx - cmpl %esi,%ebx - ja .L002generic - andl $4026531839,%edx - jmp .L002generic -.L001intel: - cmpl $4,%edi - movl $-1,%esi - jb .L003nocacheinfo - movl $4,%eax - movl $0,%ecx - .byte 0x0f,0xa2 - movl %eax,%esi - shrl $14,%esi - andl $4095,%esi -.L003nocacheinfo: - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - andl $3220176895,%edx - cmpl $0,%ebp - jne .L004notintel - orl $1073741824,%edx - andb $15,%ah - cmpb $15,%ah - jne .L004notintel - orl $1048576,%edx -.L004notintel: - btl $28,%edx - jnc .L002generic - andl $4026531839,%edx - cmpl $0,%esi - je .L002generic - orl $268435456,%edx - shrl $16,%ebx - cmpb $1,%bl - ja .L002generic - andl $4026531839,%edx -.L002generic: - andl $2048,%ebp - andl $4294965247,%ecx - movl %edx,%esi - orl %ecx,%ebp - cmpl $7,%edi - movl 20(%esp),%edi - jb .L005no_extended_info - movl $7,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - movl %ebx,8(%edi) -.L005no_extended_info: - btl $27,%ebp - jnc .L006clear_avx - xorl %ecx,%ecx -.byte 15,1,208 - andl $6,%eax - cmpl $6,%eax - je .L007done - cmpl $2,%eax - je .L006clear_avx -.L008clear_xmm: - andl $4261412861,%ebp - andl $4278190079,%esi -.L006clear_avx: - andl $4026525695,%ebp - andl $4294967263,8(%edi) -.L007done: - movl %esi,%eax - movl %ebp,%edx -.L000nocpuid: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size OPENSSL_ia32_cpuid,.-.L_OPENSSL_ia32_cpuid_begin -.globl OPENSSL_rdtsc -.type OPENSSL_rdtsc,@function -.align 16 -OPENSSL_rdtsc: -.L_OPENSSL_rdtsc_begin: - xorl %eax,%eax - xorl %edx,%edx - leal OPENSSL_ia32cap_P,%ecx - btl $4,(%ecx) - jnc .L009notsc - .byte 0x0f,0x31 -.L009notsc: - ret -.size OPENSSL_rdtsc,.-.L_OPENSSL_rdtsc_begin -.globl OPENSSL_instrument_halt -.type OPENSSL_instrument_halt,@function -.align 16 -OPENSSL_instrument_halt: -.L_OPENSSL_instrument_halt_begin: - leal OPENSSL_ia32cap_P,%ecx - btl $4,(%ecx) - jnc .L010nohalt -.long 2421723150 - andl $3,%eax - jnz .L010nohalt - pushfl - popl %eax - btl $9,%eax - jnc .L010nohalt - .byte 0x0f,0x31 - pushl %edx - pushl %eax - hlt - .byte 0x0f,0x31 - subl (%esp),%eax - sbbl 4(%esp),%edx - addl $8,%esp - ret -.L010nohalt: - xorl %eax,%eax - xorl %edx,%edx - ret -.size OPENSSL_instrument_halt,.-.L_OPENSSL_instrument_halt_begin -.globl OPENSSL_far_spin -.type OPENSSL_far_spin,@function -.align 16 -OPENSSL_far_spin: -.L_OPENSSL_far_spin_begin: - pushfl - popl %eax - btl $9,%eax - jnc .L011nospin - movl 4(%esp),%eax - movl 8(%esp),%ecx -.long 2430111262 - xorl %eax,%eax - movl (%ecx),%edx - jmp .L012spin -.align 16 -.L012spin: - incl %eax - cmpl (%ecx),%edx - je .L012spin -.long 529567888 - ret -.L011nospin: - xorl %eax,%eax - xorl %edx,%edx - ret -.size OPENSSL_far_spin,.-.L_OPENSSL_far_spin_begin -.globl OPENSSL_wipe_cpu -.type OPENSSL_wipe_cpu,@function -.align 16 -OPENSSL_wipe_cpu: -.L_OPENSSL_wipe_cpu_begin: - xorl %eax,%eax - xorl %edx,%edx - leal OPENSSL_ia32cap_P,%ecx - movl (%ecx),%ecx - btl $1,(%ecx) - jnc .L013no_x87 - andl $83886080,%ecx - cmpl $83886080,%ecx - jne .L014no_sse2 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 -.L014no_sse2: -.long 4007259865,4007259865,4007259865,4007259865,2430851995 -.L013no_x87: - leal 4(%esp),%eax - ret -.size OPENSSL_wipe_cpu,.-.L_OPENSSL_wipe_cpu_begin -.globl OPENSSL_atomic_add -.type OPENSSL_atomic_add,@function -.align 16 -OPENSSL_atomic_add: -.L_OPENSSL_atomic_add_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - pushl %ebx - nop - movl (%edx),%eax -.L015spin: - leal (%eax,%ecx,1),%ebx - nop -.long 447811568 - jne .L015spin - movl %ebx,%eax - popl %ebx - ret -.size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin -.globl OPENSSL_indirect_call -.type OPENSSL_indirect_call,@function -.align 16 -OPENSSL_indirect_call: -.L_OPENSSL_indirect_call_begin: - pushl %ebp - movl %esp,%ebp - subl $28,%esp - movl 12(%ebp),%ecx - movl %ecx,(%esp) - movl 16(%ebp),%edx - movl %edx,4(%esp) - movl 20(%ebp),%eax - movl %eax,8(%esp) - movl 24(%ebp),%eax - movl %eax,12(%esp) - movl 28(%ebp),%eax - movl %eax,16(%esp) - movl 32(%ebp),%eax - movl %eax,20(%esp) - movl 36(%ebp),%eax - movl %eax,24(%esp) - call *8(%ebp) - movl %ebp,%esp - popl %ebp - ret -.size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin -.globl OPENSSL_cleanse -.type OPENSSL_cleanse,@function -.align 16 -OPENSSL_cleanse: -.L_OPENSSL_cleanse_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - xorl %eax,%eax - cmpl $7,%ecx - jae .L016lot - cmpl $0,%ecx - je .L017ret -.L018little: - movb %al,(%edx) - subl $1,%ecx - leal 1(%edx),%edx - jnz .L018little -.L017ret: - ret -.align 16 -.L016lot: - testl $3,%edx - jz .L019aligned - movb %al,(%edx) - leal -1(%ecx),%ecx - leal 1(%edx),%edx - jmp .L016lot -.L019aligned: - movl %eax,(%edx) - leal -4(%ecx),%ecx - testl $-4,%ecx - leal 4(%edx),%edx - jnz .L019aligned - cmpl $0,%ecx - jne .L018little - ret -.size OPENSSL_cleanse,.-.L_OPENSSL_cleanse_begin -.globl OPENSSL_ia32_rdrand -.type OPENSSL_ia32_rdrand,@function -.align 16 -OPENSSL_ia32_rdrand: -.L_OPENSSL_ia32_rdrand_begin: - movl $8,%ecx -.L020loop: -.byte 15,199,240 - jc .L021break - loop .L020loop -.L021break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin -.globl OPENSSL_ia32_rdseed -.type OPENSSL_ia32_rdseed,@function -.align 16 -OPENSSL_ia32_rdseed: -.L_OPENSSL_ia32_rdseed_begin: - movl $8,%ecx -.L022loop: -.byte 15,199,248 - jc .L023break - loop .L022loop -.L023break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.size OPENSSL_ia32_rdseed,.-.L_OPENSSL_ia32_rdseed_begin -.hidden OPENSSL_cpuid_setup -.hidden OPENSSL_ia32cap_P -.comm OPENSSL_ia32cap_P,16,4 -.section .init - call OPENSSL_cpuid_setup diff --git a/deps/openssl/asm/x86-macosx-gas/aes/aes-586.s b/deps/openssl/asm/x86-macosx-gas/aes/aes-586.s deleted file mode 100644 index 12e9100222d438..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/aes/aes-586.s +++ /dev/null @@ -1,3208 +0,0 @@ -.file "aes-586.s" -.text -.align 4 -__x86_AES_encrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 4,0x90 -L000loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ecx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ecx,%edi - xorl %esi,%ecx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ecx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%ecx - andl %edx,%ebp - leal (%edx,%edx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %edx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %edx,%edi - xorl %esi,%edx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%edx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%edx - andl %eax,%ebp - leal (%eax,%eax,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %eax,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %eax,%edi - xorl %esi,%eax - rorl $24,%edi - xorl %ebp,%esi - roll $24,%eax - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%eax - andl %ebx,%ebp - leal (%ebx,%ebx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ebx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ebx,%edi - xorl %esi,%ebx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ebx - xorl %edi,%esi - xorl %esi,%ebx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L000loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.align 4 -__sse_AES_encrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 4,0x90 -L001loop: - pshufw $8,%mm0,%mm1 - pshufw $13,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $13,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $8,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $8,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - movd %mm2,%eax - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - movd %mm6,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $8,%esi - shrl $16,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shrl $16,%eax - movd %ecx,%mm1 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - andl $255,%eax - orl %esi,%ecx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - andl $255,%ebx - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%ecx - shll $16,%eax - movzbl -128(%ebp,%edi,1),%esi - orl %eax,%edx - shll $8,%esi - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - orl %ebx,%edx - movl 20(%esp),%edi - movd %ecx,%mm4 - movd %edx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja L002out - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - movq %mm0,%mm1 - movq %mm4,%mm5 - pcmpgtb %mm0,%mm3 - pcmpgtb %mm4,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - pshufw $177,%mm0,%mm2 - pshufw $177,%mm4,%mm6 - paddb %mm0,%mm0 - paddb %mm4,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pshufw $177,%mm2,%mm3 - pshufw $177,%mm6,%mm7 - pxor %mm0,%mm1 - pxor %mm4,%mm5 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm3,%mm2 - movq %mm7,%mm6 - pslld $8,%mm3 - pslld $8,%mm7 - psrld $24,%mm2 - psrld $24,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - psrld $8,%mm1 - psrld $8,%mm5 - movl -128(%ebp),%eax - pslld $24,%mm3 - pslld $24,%mm7 - movl -64(%ebp),%ebx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl (%ebp),%ecx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl 64(%ebp),%edx - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp L001loop -.align 4,0x90 -L002out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.align 4 -__x86_AES_encrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 4,0x90 -L003loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl (%ebp,%esi,8),%esi - movzbl %ch,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movzbl %bh,%edi - xorl 1(%ebp,%edi,8),%esi - movl 20(%esp),%edi - movl (%ebp,%edx,8),%edx - movzbl %ah,%eax - xorl 3(%ebp,%eax,8),%edx - movl 4(%esp),%eax - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - xorl 1(%ebp,%ecx,8),%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L003loop - movl %eax,%esi - andl $255,%esi - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %bh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %ch,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %dh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movzbl %bh,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movl 2(%ebp,%edx,8),%edx - andl $255,%edx - movzbl %ah,%eax - movl (%ebp,%eax,8),%eax - andl $65280,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movl (%ebp,%ebx,8),%ebx - andl $16711680,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movl 2(%ebp,%ecx,8),%ecx - andl $4278190080,%ecx - xorl %ecx,%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 6,0x90 -LAES_Te: -.long 2774754246,2774754246 -.long 2222750968,2222750968 -.long 2574743534,2574743534 -.long 2373680118,2373680118 -.long 234025727,234025727 -.long 3177933782,3177933782 -.long 2976870366,2976870366 -.long 1422247313,1422247313 -.long 1345335392,1345335392 -.long 50397442,50397442 -.long 2842126286,2842126286 -.long 2099981142,2099981142 -.long 436141799,436141799 -.long 1658312629,1658312629 -.long 3870010189,3870010189 -.long 2591454956,2591454956 -.long 1170918031,1170918031 -.long 2642575903,2642575903 -.long 1086966153,1086966153 -.long 2273148410,2273148410 -.long 368769775,368769775 -.long 3948501426,3948501426 -.long 3376891790,3376891790 -.long 200339707,200339707 -.long 3970805057,3970805057 -.long 1742001331,1742001331 -.long 4255294047,4255294047 -.long 3937382213,3937382213 -.long 3214711843,3214711843 -.long 4154762323,4154762323 -.long 2524082916,2524082916 -.long 1539358875,1539358875 -.long 3266819957,3266819957 -.long 486407649,486407649 -.long 2928907069,2928907069 -.long 1780885068,1780885068 -.long 1513502316,1513502316 -.long 1094664062,1094664062 -.long 49805301,49805301 -.long 1338821763,1338821763 -.long 1546925160,1546925160 -.long 4104496465,4104496465 -.long 887481809,887481809 -.long 150073849,150073849 -.long 2473685474,2473685474 -.long 1943591083,1943591083 -.long 1395732834,1395732834 -.long 1058346282,1058346282 -.long 201589768,201589768 -.long 1388824469,1388824469 -.long 1696801606,1696801606 -.long 1589887901,1589887901 -.long 672667696,672667696 -.long 2711000631,2711000631 -.long 251987210,251987210 -.long 3046808111,3046808111 -.long 151455502,151455502 -.long 907153956,907153956 -.long 2608889883,2608889883 -.long 1038279391,1038279391 -.long 652995533,652995533 -.long 1764173646,1764173646 -.long 3451040383,3451040383 -.long 2675275242,2675275242 -.long 453576978,453576978 -.long 2659418909,2659418909 -.long 1949051992,1949051992 -.long 773462580,773462580 -.long 756751158,756751158 -.long 2993581788,2993581788 -.long 3998898868,3998898868 -.long 4221608027,4221608027 -.long 4132590244,4132590244 -.long 1295727478,1295727478 -.long 1641469623,1641469623 -.long 3467883389,3467883389 -.long 2066295122,2066295122 -.long 1055122397,1055122397 -.long 1898917726,1898917726 -.long 2542044179,2542044179 -.long 4115878822,4115878822 -.long 1758581177,1758581177 -.long 0,0 -.long 753790401,753790401 -.long 1612718144,1612718144 -.long 536673507,536673507 -.long 3367088505,3367088505 -.long 3982187446,3982187446 -.long 3194645204,3194645204 -.long 1187761037,1187761037 -.long 3653156455,3653156455 -.long 1262041458,1262041458 -.long 3729410708,3729410708 -.long 3561770136,3561770136 -.long 3898103984,3898103984 -.long 1255133061,1255133061 -.long 1808847035,1808847035 -.long 720367557,720367557 -.long 3853167183,3853167183 -.long 385612781,385612781 -.long 3309519750,3309519750 -.long 3612167578,3612167578 -.long 1429418854,1429418854 -.long 2491778321,2491778321 -.long 3477423498,3477423498 -.long 284817897,284817897 -.long 100794884,100794884 -.long 2172616702,2172616702 -.long 4031795360,4031795360 -.long 1144798328,1144798328 -.long 3131023141,3131023141 -.long 3819481163,3819481163 -.long 4082192802,4082192802 -.long 4272137053,4272137053 -.long 3225436288,3225436288 -.long 2324664069,2324664069 -.long 2912064063,2912064063 -.long 3164445985,3164445985 -.long 1211644016,1211644016 -.long 83228145,83228145 -.long 3753688163,3753688163 -.long 3249976951,3249976951 -.long 1977277103,1977277103 -.long 1663115586,1663115586 -.long 806359072,806359072 -.long 452984805,452984805 -.long 250868733,250868733 -.long 1842533055,1842533055 -.long 1288555905,1288555905 -.long 336333848,336333848 -.long 890442534,890442534 -.long 804056259,804056259 -.long 3781124030,3781124030 -.long 2727843637,2727843637 -.long 3427026056,3427026056 -.long 957814574,957814574 -.long 1472513171,1472513171 -.long 4071073621,4071073621 -.long 2189328124,2189328124 -.long 1195195770,1195195770 -.long 2892260552,2892260552 -.long 3881655738,3881655738 -.long 723065138,723065138 -.long 2507371494,2507371494 -.long 2690670784,2690670784 -.long 2558624025,2558624025 -.long 3511635870,3511635870 -.long 2145180835,2145180835 -.long 1713513028,1713513028 -.long 2116692564,2116692564 -.long 2878378043,2878378043 -.long 2206763019,2206763019 -.long 3393603212,3393603212 -.long 703524551,703524551 -.long 3552098411,3552098411 -.long 1007948840,1007948840 -.long 2044649127,2044649127 -.long 3797835452,3797835452 -.long 487262998,487262998 -.long 1994120109,1994120109 -.long 1004593371,1004593371 -.long 1446130276,1446130276 -.long 1312438900,1312438900 -.long 503974420,503974420 -.long 3679013266,3679013266 -.long 168166924,168166924 -.long 1814307912,1814307912 -.long 3831258296,3831258296 -.long 1573044895,1573044895 -.long 1859376061,1859376061 -.long 4021070915,4021070915 -.long 2791465668,2791465668 -.long 2828112185,2828112185 -.long 2761266481,2761266481 -.long 937747667,937747667 -.long 2339994098,2339994098 -.long 854058965,854058965 -.long 1137232011,1137232011 -.long 1496790894,1496790894 -.long 3077402074,3077402074 -.long 2358086913,2358086913 -.long 1691735473,1691735473 -.long 3528347292,3528347292 -.long 3769215305,3769215305 -.long 3027004632,3027004632 -.long 4199962284,4199962284 -.long 133494003,133494003 -.long 636152527,636152527 -.long 2942657994,2942657994 -.long 2390391540,2390391540 -.long 3920539207,3920539207 -.long 403179536,403179536 -.long 3585784431,3585784431 -.long 2289596656,2289596656 -.long 1864705354,1864705354 -.long 1915629148,1915629148 -.long 605822008,605822008 -.long 4054230615,4054230615 -.long 3350508659,3350508659 -.long 1371981463,1371981463 -.long 602466507,602466507 -.long 2094914977,2094914977 -.long 2624877800,2624877800 -.long 555687742,555687742 -.long 3712699286,3712699286 -.long 3703422305,3703422305 -.long 2257292045,2257292045 -.long 2240449039,2240449039 -.long 2423288032,2423288032 -.long 1111375484,1111375484 -.long 3300242801,3300242801 -.long 2858837708,2858837708 -.long 3628615824,3628615824 -.long 84083462,84083462 -.long 32962295,32962295 -.long 302911004,302911004 -.long 2741068226,2741068226 -.long 1597322602,1597322602 -.long 4183250862,4183250862 -.long 3501832553,3501832553 -.long 2441512471,2441512471 -.long 1489093017,1489093017 -.long 656219450,656219450 -.long 3114180135,3114180135 -.long 954327513,954327513 -.long 335083755,335083755 -.long 3013122091,3013122091 -.long 856756514,856756514 -.long 3144247762,3144247762 -.long 1893325225,1893325225 -.long 2307821063,2307821063 -.long 2811532339,2811532339 -.long 3063651117,3063651117 -.long 572399164,572399164 -.long 2458355477,2458355477 -.long 552200649,552200649 -.long 1238290055,1238290055 -.long 4283782570,4283782570 -.long 2015897680,2015897680 -.long 2061492133,2061492133 -.long 2408352771,2408352771 -.long 4171342169,4171342169 -.long 2156497161,2156497161 -.long 386731290,386731290 -.long 3669999461,3669999461 -.long 837215959,837215959 -.long 3326231172,3326231172 -.long 3093850320,3093850320 -.long 3275833730,3275833730 -.long 2962856233,2962856233 -.long 1999449434,1999449434 -.long 286199582,286199582 -.long 3417354363,3417354363 -.long 4233385128,4233385128 -.long 3602627437,3602627437 -.long 974525996,974525996 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.long 1,2,4,8 -.long 16,32,64,128 -.long 27,54,0,0 -.long 0,0,0,0 -.globl _AES_encrypt -.align 4 -_AES_encrypt: -L_AES_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call L004pic_point -L004pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L004pic_point(%ebp),%eax - leal LAES_Te-L004pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc L005x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call __sse_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L005x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call __x86_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_AES_decrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 4,0x90 -L006loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%eax - subl %edi,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %ecx,%eax - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ecx,%ebx - roll $8,%ecx - xorl %esi,%ebp - xorl %eax,%ecx - xorl %ebp,%eax - xorl %ebx,%ecx - xorl %ebp,%ebx - roll $24,%eax - xorl %ebp,%ecx - roll $16,%ebx - xorl %eax,%ecx - roll $8,%ebp - xorl %ebx,%ecx - movl 4(%esp),%eax - xorl %ebp,%ecx - movl %ecx,12(%esp) - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %edx,%ebx - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %edx,%ecx - roll $8,%edx - xorl %esi,%ebp - xorl %ebx,%edx - xorl %ebp,%ebx - xorl %ecx,%edx - xorl %ebp,%ecx - roll $24,%ebx - xorl %ebp,%edx - roll $16,%ecx - xorl %ebx,%edx - roll $8,%ebp - xorl %ecx,%edx - movl 8(%esp),%ebx - xorl %ebp,%edx - movl %edx,16(%esp) - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %eax,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %eax,%edx - roll $8,%eax - xorl %esi,%ebp - xorl %ecx,%eax - xorl %ebp,%ecx - xorl %edx,%eax - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%eax - roll $16,%edx - xorl %ecx,%eax - roll $8,%ebp - xorl %edx,%eax - xorl %ebp,%eax - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ebx,%edx - roll $8,%ebx - xorl %esi,%ebp - xorl %ecx,%ebx - xorl %ebp,%ecx - xorl %edx,%ebx - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%ebp - xorl %edx,%ebx - movl 12(%esp),%ecx - xorl %ebp,%ebx - movl 16(%esp),%edx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L006loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.align 4 -__sse_AES_decrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 4,0x90 -L007loop: - pshufw $12,%mm0,%mm1 - pshufw $9,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $6,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $3,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movd %mm2,%eax - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $16,%esi - movd %mm6,%ebx - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %al,%edi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $16,%esi - shrl $16,%eax - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shrl $16,%ebx - shll $8,%esi - movd %edx,%mm1 - movzbl -128(%ebp,%edi,1),%edx - movzbl %bh,%edi - shll $24,%edx - andl $255,%ebx - orl %esi,%edx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movzbl %ah,%eax - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - orl %ebx,%edx - shll $16,%esi - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%edx - shll $24,%eax - orl %eax,%ecx - movl 20(%esp),%edi - movd %edx,%mm4 - movd %ecx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja L008out - movq %mm0,%mm3 - movq %mm4,%mm7 - pshufw $228,%mm0,%mm2 - pshufw $228,%mm4,%mm6 - movq %mm0,%mm1 - movq %mm4,%mm5 - pshufw $177,%mm0,%mm0 - pshufw $177,%mm4,%mm4 - pslld $8,%mm2 - pslld $8,%mm6 - psrld $8,%mm3 - psrld $8,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pslld $16,%mm2 - pslld $16,%mm6 - psrld $16,%mm3 - psrld $16,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movq 8(%esp),%mm3 - pxor %mm2,%mm2 - pxor %mm6,%mm6 - pcmpgtb %mm1,%mm2 - pcmpgtb %mm5,%mm6 - pand %mm3,%mm2 - pand %mm3,%mm6 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm2,%mm1 - pxor %mm6,%mm5 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq %mm1,%mm2 - movq %mm5,%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pslld $24,%mm3 - pslld $24,%mm7 - psrld $8,%mm2 - psrld $8,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pshufw $177,%mm1,%mm3 - pshufw $177,%mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - pshufw $177,%mm1,%mm2 - pshufw $177,%mm5,%mm6 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pslld $8,%mm1 - pslld $8,%mm5 - psrld $8,%mm3 - psrld $8,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl -128(%ebp),%eax - pslld $16,%mm1 - pslld $16,%mm5 - movl -64(%ebp),%ebx - psrld $16,%mm3 - psrld $16,%mm7 - movl (%ebp),%ecx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl 64(%ebp),%edx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp L007loop -.align 4,0x90 -L008out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.align 4 -__x86_AES_decrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 4,0x90 -L009loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ebx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %ah,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl 20(%esp),%edi - andl $255,%edx - movl (%ebp,%edx,8),%edx - movzbl %ch,%ecx - xorl 3(%ebp,%ecx,8),%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - shrl $24,%eax - xorl 1(%ebp,%eax,8),%edx - movl 4(%esp),%eax - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L009loop - leal 2176(%ebp),%ebp - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi - leal -128(%ebp),%ebp - movl %eax,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl (%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl (%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl (%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl (%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - leal -2048(%ebp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 6,0x90 -LAES_Td: -.long 1353184337,1353184337 -.long 1399144830,1399144830 -.long 3282310938,3282310938 -.long 2522752826,2522752826 -.long 3412831035,3412831035 -.long 4047871263,4047871263 -.long 2874735276,2874735276 -.long 2466505547,2466505547 -.long 1442459680,1442459680 -.long 4134368941,4134368941 -.long 2440481928,2440481928 -.long 625738485,625738485 -.long 4242007375,4242007375 -.long 3620416197,3620416197 -.long 2151953702,2151953702 -.long 2409849525,2409849525 -.long 1230680542,1230680542 -.long 1729870373,1729870373 -.long 2551114309,2551114309 -.long 3787521629,3787521629 -.long 41234371,41234371 -.long 317738113,317738113 -.long 2744600205,2744600205 -.long 3338261355,3338261355 -.long 3881799427,3881799427 -.long 2510066197,2510066197 -.long 3950669247,3950669247 -.long 3663286933,3663286933 -.long 763608788,763608788 -.long 3542185048,3542185048 -.long 694804553,694804553 -.long 1154009486,1154009486 -.long 1787413109,1787413109 -.long 2021232372,2021232372 -.long 1799248025,1799248025 -.long 3715217703,3715217703 -.long 3058688446,3058688446 -.long 397248752,397248752 -.long 1722556617,1722556617 -.long 3023752829,3023752829 -.long 407560035,407560035 -.long 2184256229,2184256229 -.long 1613975959,1613975959 -.long 1165972322,1165972322 -.long 3765920945,3765920945 -.long 2226023355,2226023355 -.long 480281086,480281086 -.long 2485848313,2485848313 -.long 1483229296,1483229296 -.long 436028815,436028815 -.long 2272059028,2272059028 -.long 3086515026,3086515026 -.long 601060267,601060267 -.long 3791801202,3791801202 -.long 1468997603,1468997603 -.long 715871590,715871590 -.long 120122290,120122290 -.long 63092015,63092015 -.long 2591802758,2591802758 -.long 2768779219,2768779219 -.long 4068943920,4068943920 -.long 2997206819,2997206819 -.long 3127509762,3127509762 -.long 1552029421,1552029421 -.long 723308426,723308426 -.long 2461301159,2461301159 -.long 4042393587,4042393587 -.long 2715969870,2715969870 -.long 3455375973,3455375973 -.long 3586000134,3586000134 -.long 526529745,526529745 -.long 2331944644,2331944644 -.long 2639474228,2639474228 -.long 2689987490,2689987490 -.long 853641733,853641733 -.long 1978398372,1978398372 -.long 971801355,971801355 -.long 2867814464,2867814464 -.long 111112542,111112542 -.long 1360031421,1360031421 -.long 4186579262,4186579262 -.long 1023860118,1023860118 -.long 2919579357,2919579357 -.long 1186850381,1186850381 -.long 3045938321,3045938321 -.long 90031217,90031217 -.long 1876166148,1876166148 -.long 4279586912,4279586912 -.long 620468249,620468249 -.long 2548678102,2548678102 -.long 3426959497,3426959497 -.long 2006899047,2006899047 -.long 3175278768,3175278768 -.long 2290845959,2290845959 -.long 945494503,945494503 -.long 3689859193,3689859193 -.long 1191869601,1191869601 -.long 3910091388,3910091388 -.long 3374220536,3374220536 -.long 0,0 -.long 2206629897,2206629897 -.long 1223502642,1223502642 -.long 2893025566,2893025566 -.long 1316117100,1316117100 -.long 4227796733,4227796733 -.long 1446544655,1446544655 -.long 517320253,517320253 -.long 658058550,658058550 -.long 1691946762,1691946762 -.long 564550760,564550760 -.long 3511966619,3511966619 -.long 976107044,976107044 -.long 2976320012,2976320012 -.long 266819475,266819475 -.long 3533106868,3533106868 -.long 2660342555,2660342555 -.long 1338359936,1338359936 -.long 2720062561,2720062561 -.long 1766553434,1766553434 -.long 370807324,370807324 -.long 179999714,179999714 -.long 3844776128,3844776128 -.long 1138762300,1138762300 -.long 488053522,488053522 -.long 185403662,185403662 -.long 2915535858,2915535858 -.long 3114841645,3114841645 -.long 3366526484,3366526484 -.long 2233069911,2233069911 -.long 1275557295,1275557295 -.long 3151862254,3151862254 -.long 4250959779,4250959779 -.long 2670068215,2670068215 -.long 3170202204,3170202204 -.long 3309004356,3309004356 -.long 880737115,880737115 -.long 1982415755,1982415755 -.long 3703972811,3703972811 -.long 1761406390,1761406390 -.long 1676797112,1676797112 -.long 3403428311,3403428311 -.long 277177154,277177154 -.long 1076008723,1076008723 -.long 538035844,538035844 -.long 2099530373,2099530373 -.long 4164795346,4164795346 -.long 288553390,288553390 -.long 1839278535,1839278535 -.long 1261411869,1261411869 -.long 4080055004,4080055004 -.long 3964831245,3964831245 -.long 3504587127,3504587127 -.long 1813426987,1813426987 -.long 2579067049,2579067049 -.long 4199060497,4199060497 -.long 577038663,577038663 -.long 3297574056,3297574056 -.long 440397984,440397984 -.long 3626794326,3626794326 -.long 4019204898,4019204898 -.long 3343796615,3343796615 -.long 3251714265,3251714265 -.long 4272081548,4272081548 -.long 906744984,906744984 -.long 3481400742,3481400742 -.long 685669029,685669029 -.long 646887386,646887386 -.long 2764025151,2764025151 -.long 3835509292,3835509292 -.long 227702864,227702864 -.long 2613862250,2613862250 -.long 1648787028,1648787028 -.long 3256061430,3256061430 -.long 3904428176,3904428176 -.long 1593260334,1593260334 -.long 4121936770,4121936770 -.long 3196083615,3196083615 -.long 2090061929,2090061929 -.long 2838353263,2838353263 -.long 3004310991,3004310991 -.long 999926984,999926984 -.long 2809993232,2809993232 -.long 1852021992,1852021992 -.long 2075868123,2075868123 -.long 158869197,158869197 -.long 4095236462,4095236462 -.long 28809964,28809964 -.long 2828685187,2828685187 -.long 1701746150,1701746150 -.long 2129067946,2129067946 -.long 147831841,147831841 -.long 3873969647,3873969647 -.long 3650873274,3650873274 -.long 3459673930,3459673930 -.long 3557400554,3557400554 -.long 3598495785,3598495785 -.long 2947720241,2947720241 -.long 824393514,824393514 -.long 815048134,815048134 -.long 3227951669,3227951669 -.long 935087732,935087732 -.long 2798289660,2798289660 -.long 2966458592,2966458592 -.long 366520115,366520115 -.long 1251476721,1251476721 -.long 4158319681,4158319681 -.long 240176511,240176511 -.long 804688151,804688151 -.long 2379631990,2379631990 -.long 1303441219,1303441219 -.long 1414376140,1414376140 -.long 3741619940,3741619940 -.long 3820343710,3820343710 -.long 461924940,461924940 -.long 3089050817,3089050817 -.long 2136040774,2136040774 -.long 82468509,82468509 -.long 1563790337,1563790337 -.long 1937016826,1937016826 -.long 776014843,776014843 -.long 1511876531,1511876531 -.long 1389550482,1389550482 -.long 861278441,861278441 -.long 323475053,323475053 -.long 2355222426,2355222426 -.long 2047648055,2047648055 -.long 2383738969,2383738969 -.long 2302415851,2302415851 -.long 3995576782,3995576782 -.long 902390199,902390199 -.long 3991215329,3991215329 -.long 1018251130,1018251130 -.long 1507840668,1507840668 -.long 1064563285,1064563285 -.long 2043548696,2043548696 -.long 3208103795,3208103795 -.long 3939366739,3939366739 -.long 1537932639,1537932639 -.long 342834655,342834655 -.long 2262516856,2262516856 -.long 2180231114,2180231114 -.long 1053059257,1053059257 -.long 741614648,741614648 -.long 1598071746,1598071746 -.long 1925389590,1925389590 -.long 203809468,203809468 -.long 2336832552,2336832552 -.long 1100287487,1100287487 -.long 1895934009,1895934009 -.long 3736275976,3736275976 -.long 2632234200,2632234200 -.long 2428589668,2428589668 -.long 1636092795,1636092795 -.long 1890988757,1890988757 -.long 1952214088,1952214088 -.long 1113045200,1113045200 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.globl _AES_decrypt -.align 4 -_AES_decrypt: -L_AES_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call L010pic_point -L010pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010pic_point(%ebp),%eax - leal LAES_Td-L010pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc L011x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call __sse_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L011x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call __x86_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _AES_cbc_encrypt -.align 4 -_AES_cbc_encrypt: -L_AES_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je L012drop_out - call L013pic_point -L013pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L013pic_point(%ebp),%eax - cmpl $0,40(%esp) - leal LAES_Te-L013pic_point(%ebp),%ebp - jne L014picked_te - leal LAES_Td-LAES_Te(%ebp),%ebp -L014picked_te: - pushfl - cld - cmpl $512,%ecx - jb L015slow_way - testl $15,%ecx - jnz L015slow_way - btl $28,(%eax) - jc L015slow_way - leal -324(%esp),%esi - andl $-64,%esi - movl %ebp,%eax - leal 2304(%ebp),%ebx - movl %esi,%edx - andl $4095,%eax - andl $4095,%ebx - andl $4095,%edx - cmpl %ebx,%edx - jb L016tbl_break_out - subl %ebx,%edx - subl %edx,%esi - jmp L017tbl_ok -.align 2,0x90 -L016tbl_break_out: - subl %eax,%edx - andl $4095,%edx - addl $384,%edx - subl %edx,%esi -.align 2,0x90 -L017tbl_ok: - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 12(%edx),%edi - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl $0,316(%esp) - movl %edi,%ebx - movl $61,%ecx - subl %ebp,%ebx - movl %edi,%esi - andl $4095,%ebx - leal 76(%esp),%edi - cmpl $2304,%ebx - jb L018do_copy - cmpl $3852,%ebx - jb L019skip_copy -.align 2,0x90 -L018do_copy: - movl %edi,44(%esp) -.long 2784229001 -L019skip_copy: - movl $16,%edi -.align 2,0x90 -L020prefetch_tbl: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%esi - leal 128(%ebp),%ebp - subl $1,%edi - jnz L020prefetch_tbl - subl $2048,%ebp - movl 32(%esp),%esi - movl 48(%esp),%edi - cmpl $0,%edx - je L021fast_decrypt - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4,0x90 -L022fast_enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_encrypt - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%esi - movl 40(%esp),%ecx - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L022fast_enc_loop - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - cmpl $0,316(%esp) - movl 44(%esp),%edi - je L023skip_ezero - movl $60,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2884892297 -L023skip_ezero: - movl 28(%esp),%esp - popfl -L012drop_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L021fast_decrypt: - cmpl 36(%esp),%esi - je L024fast_dec_in_place - movl %edi,52(%esp) -.align 2,0x90 -.align 4,0x90 -L025fast_dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_decrypt - movl 52(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 36(%esp),%edi - movl 32(%esp),%esi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl %esi,52(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edi - movl %edi,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L025fast_dec_loop - movl 52(%esp),%edi - movl 48(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp L026fast_dec_out -.align 4,0x90 -L024fast_dec_in_place: -L027fast_dec_in_place_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call __x86_AES_decrypt - movl 48(%esp),%edi - movl 36(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L027fast_dec_in_place_loop -.align 2,0x90 -L026fast_dec_out: - cmpl $0,316(%esp) - movl 44(%esp),%edi - je L028skip_dzero - movl $60,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2884892297 -L028skip_dzero: - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L015slow_way: - movl (%eax),%eax - movl 36(%esp),%edi - leal -80(%esp),%esi - andl $-64,%esi - leal -143(%edi),%ebx - subl %esi,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esi - leal 768(%esi),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl %eax,52(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl %esi,%edi - movl %eax,%esi - cmpl $0,%edx - je L029slow_decrypt - cmpl $16,%ecx - movl %ebx,%edx - jb L030slow_enc_tail - btl $25,52(%esp) - jnc L031slow_enc_x86 - movq (%edi),%mm0 - movq 8(%edi),%mm4 -.align 4,0x90 -L032slow_enc_loop_sse: - pxor (%esi),%mm0 - pxor 8(%esi),%mm4 - movl 44(%esp),%edi - call __sse_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl 40(%esp),%ecx - movq %mm0,(%edi) - movq %mm4,8(%edi) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae L032slow_enc_loop_sse - testl $15,%ecx - jnz L030slow_enc_tail - movl 48(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L031slow_enc_x86: - movl (%edi),%eax - movl 4(%edi),%ebx -.align 2,0x90 -L033slow_enc_loop_x86: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae L033slow_enc_loop_x86 - testl $15,%ecx - jnz L030slow_enc_tail - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L030slow_enc_tail: - emms - movl %edx,%edi - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je L034enc_in_place -.align 2,0x90 -.long 2767451785 - jmp L035enc_skip_in_place -L034enc_in_place: - leal (%edi,%ecx,1),%edi -L035enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2868115081 - movl 48(%esp),%edi - movl %edx,%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,40(%esp) - jmp L033slow_enc_loop_x86 -.align 4,0x90 -L029slow_decrypt: - btl $25,52(%esp) - jnc L036slow_dec_loop_x86 -.align 2,0x90 -L037slow_dec_loop_sse: - movq (%esi),%mm0 - movq 8(%esi),%mm4 - movl 44(%esp),%edi - call __sse_AES_decrypt_compact - movl 32(%esp),%esi - leal 60(%esp),%eax - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl 48(%esp),%edi - movq (%esi),%mm1 - movq 8(%esi),%mm5 - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movq %mm1,(%edi) - movq %mm5,8(%edi) - subl $16,%ecx - jc L038slow_dec_partial_sse - movq %mm0,(%ebx) - movq %mm4,8(%ebx) - leal 16(%ebx),%ebx - movl %ebx,36(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - movl %ecx,40(%esp) - jnz L037slow_dec_loop_sse - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L038slow_dec_partial_sse: - movq %mm0,(%eax) - movq %mm4,8(%eax) - emms - addl $16,%ecx - movl %ebx,%edi - movl %eax,%esi -.align 2,0x90 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L036slow_dec_loop_x86: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call __x86_AES_decrypt_compact - movl 48(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc L039slow_dec_partial_x86 - movl %esi,40(%esp) - movl 36(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - leal 16(%esi),%esi - movl %esi,32(%esp) - jnz L036slow_dec_loop_x86 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L039slow_dec_partial_x86: - leal 60(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 32(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl 36(%esp),%edi - leal 60(%esp),%esi -.align 2,0x90 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_AES_set_encrypt_key: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%esi - movl 32(%esp),%edi - testl $-1,%esi - jz L040badpointer - testl $-1,%edi - jz L040badpointer - call L041pic_point -L041pic_point: - popl %ebp - leal LAES_Te-L041pic_point(%ebp),%ebp - leal 2176(%ebp),%ebp - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - movl 28(%esp),%ecx - cmpl $128,%ecx - je L04210rounds - cmpl $192,%ecx - je L04312rounds - cmpl $256,%ecx - je L04414rounds - movl $-2,%eax - jmp L045exit -L04210rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - xorl %ecx,%ecx - jmp L04610shortcut -.align 2,0x90 -L04710loop: - movl (%edi),%eax - movl 12(%edi),%edx -L04610shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,16(%edi) - xorl 4(%edi),%eax - movl %eax,20(%edi) - xorl 8(%edi),%eax - movl %eax,24(%edi) - xorl 12(%edi),%eax - movl %eax,28(%edi) - incl %ecx - addl $16,%edi - cmpl $10,%ecx - jl L04710loop - movl $10,80(%edi) - xorl %eax,%eax - jmp L045exit -L04312rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%ecx - movl 20(%esi),%edx - movl %ecx,16(%edi) - movl %edx,20(%edi) - xorl %ecx,%ecx - jmp L04812shortcut -.align 2,0x90 -L04912loop: - movl (%edi),%eax - movl 20(%edi),%edx -L04812shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,24(%edi) - xorl 4(%edi),%eax - movl %eax,28(%edi) - xorl 8(%edi),%eax - movl %eax,32(%edi) - xorl 12(%edi),%eax - movl %eax,36(%edi) - cmpl $7,%ecx - je L05012break - incl %ecx - xorl 16(%edi),%eax - movl %eax,40(%edi) - xorl 20(%edi),%eax - movl %eax,44(%edi) - addl $24,%edi - jmp L04912loop -L05012break: - movl $12,72(%edi) - xorl %eax,%eax - jmp L045exit -L04414rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - movl %eax,16(%edi) - movl %ebx,20(%edi) - movl %ecx,24(%edi) - movl %edx,28(%edi) - xorl %ecx,%ecx - jmp L05114shortcut -.align 2,0x90 -L05214loop: - movl 28(%edi),%edx -L05114shortcut: - movl (%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,32(%edi) - xorl 4(%edi),%eax - movl %eax,36(%edi) - xorl 8(%edi),%eax - movl %eax,40(%edi) - xorl 12(%edi),%eax - movl %eax,44(%edi) - cmpl $6,%ecx - je L05314break - incl %ecx - movl %eax,%edx - movl 16(%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - movl %eax,48(%edi) - xorl 20(%edi),%eax - movl %eax,52(%edi) - xorl 24(%edi),%eax - movl %eax,56(%edi) - xorl 28(%edi),%eax - movl %eax,60(%edi) - addl $32,%edi - jmp L05214loop -L05314break: - movl $14,48(%edi) - xorl %eax,%eax - jmp L045exit -L040badpointer: - movl $-1,%eax -L045exit: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_AES_set_encrypt_key -.align 4 -_private_AES_set_encrypt_key: -L_private_AES_set_encrypt_key_begin: - call __x86_AES_set_encrypt_key - ret -.globl _private_AES_set_decrypt_key -.align 4 -_private_AES_set_decrypt_key: -L_private_AES_set_decrypt_key_begin: - call __x86_AES_set_encrypt_key - cmpl $0,%eax - je L054proceed - ret -L054proceed: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%esi - movl 240(%esi),%ecx - leal (,%ecx,4),%ecx - leal (%esi,%ecx,4),%edi -.align 2,0x90 -L055invert: - movl (%esi),%eax - movl 4(%esi),%ebx - movl (%edi),%ecx - movl 4(%edi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,(%esi) - movl %edx,4(%esi) - movl 8(%esi),%eax - movl 12(%esi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,8(%edi) - movl %ebx,12(%edi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - addl $16,%esi - subl $16,%edi - cmpl %edi,%esi - jne L055invert - movl 28(%esp),%edi - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,28(%esp) - movl 16(%edi),%eax -.align 2,0x90 -L056permute: - addl $16,%edi - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %eax,%ebx - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - xorl %eax,%ecx - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - roll $8,%eax - xorl %esi,%edx - movl 4(%edi),%ebp - xorl %ebx,%eax - xorl %edx,%ebx - xorl %ecx,%eax - roll $24,%ebx - xorl %edx,%ecx - xorl %edx,%eax - roll $16,%ecx - xorl %ebx,%eax - roll $8,%edx - xorl %ecx,%eax - movl %ebp,%ebx - xorl %edx,%eax - movl %eax,(%edi) - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - xorl %ebx,%edx - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - roll $8,%ebx - xorl %esi,%eax - movl 8(%edi),%ebp - xorl %ecx,%ebx - xorl %eax,%ecx - xorl %edx,%ebx - roll $24,%ecx - xorl %eax,%edx - xorl %eax,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%eax - xorl %edx,%ebx - movl %ebp,%ecx - xorl %eax,%ebx - movl %ebx,4(%edi) - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %ecx,%edx - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - xorl %ecx,%eax - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - roll $8,%ecx - xorl %esi,%ebx - movl 12(%edi),%ebp - xorl %edx,%ecx - xorl %ebx,%edx - xorl %eax,%ecx - roll $24,%edx - xorl %ebx,%eax - xorl %ebx,%ecx - roll $16,%eax - xorl %edx,%ecx - roll $8,%ebx - xorl %eax,%ecx - movl %ebp,%edx - xorl %ebx,%ecx - movl %ecx,8(%edi) - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %edx,%eax - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - xorl %edx,%ebx - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - roll $8,%edx - xorl %esi,%ecx - movl 16(%edi),%ebp - xorl %eax,%edx - xorl %ecx,%eax - xorl %ebx,%edx - roll $24,%eax - xorl %ecx,%ebx - xorl %ecx,%edx - roll $16,%ebx - xorl %eax,%edx - roll $8,%ecx - xorl %ebx,%edx - movl %ebp,%eax - xorl %ecx,%edx - movl %edx,12(%edi) - cmpl 28(%esp),%edi - jb L056permute - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/aes/aesni-x86.s b/deps/openssl/asm/x86-macosx-gas/aes/aesni-x86.s deleted file mode 100644 index c1f5aec62ce4e3..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/aes/aesni-x86.s +++ /dev/null @@ -1,2412 +0,0 @@ -.file "../openssl/crypto/aes/asm/aesni-x86.s" -.text -.globl _aesni_encrypt -.align 4 -_aesni_encrypt: -L_aesni_encrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L000enc1_loop_1: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L000enc1_loop_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.globl _aesni_decrypt -.align 4 -_aesni_decrypt: -L_aesni_decrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L001dec1_loop_2: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L001dec1_loop_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.align 4 -__aesni_encrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L002enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L002enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - ret -.align 4 -__aesni_decrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L003dec2_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L003dec2_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - ret -.align 4 -__aesni_encrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L004enc3_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz L004enc3_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - ret -.align 4 -__aesni_decrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L005dec3_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz L005dec3_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - ret -.align 4 -__aesni_encrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -L006enc4_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz L006enc4_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - ret -.align 4 -__aesni_decrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -L007dec4_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz L007dec4_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - ret -.align 4 -__aesni_encrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp L008_aesni_encrypt6_inner -.align 4,0x90 -L009enc6_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -L008_aesni_encrypt6_inner: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -L_aesni_encrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz L009enc6_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - ret -.align 4 -__aesni_decrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp L010_aesni_decrypt6_inner -.align 4,0x90 -L011dec6_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -L010_aesni_decrypt6_inner: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -L_aesni_decrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz L011dec6_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - ret -.globl _aesni_ecb_encrypt -.align 4 -_aesni_ecb_encrypt: -L_aesni_ecb_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - andl $-16,%eax - jz L012ecb_ret - movl 240(%edx),%ecx - testl %ebx,%ebx - jz L013ecb_decrypt - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb L014ecb_enc_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp L015ecb_enc_loop6_enter -.align 4,0x90 -L016ecb_enc_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -L015ecb_enc_loop6_enter: - call __aesni_encrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc L016ecb_enc_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz L012ecb_ret -L014ecb_enc_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb L017ecb_enc_one - movups 16(%esi),%xmm3 - je L018ecb_enc_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb L019ecb_enc_three - movups 48(%esi),%xmm5 - je L020ecb_enc_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call __aesni_encrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L012ecb_ret -.align 4,0x90 -L017ecb_enc_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L021enc1_loop_3: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L021enc1_loop_3 -.byte 102,15,56,221,209 - movups %xmm2,(%edi) - jmp L012ecb_ret -.align 4,0x90 -L018ecb_enc_two: - call __aesni_encrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L012ecb_ret -.align 4,0x90 -L019ecb_enc_three: - call __aesni_encrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L012ecb_ret -.align 4,0x90 -L020ecb_enc_four: - call __aesni_encrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - jmp L012ecb_ret -.align 4,0x90 -L013ecb_decrypt: - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb L022ecb_dec_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp L023ecb_dec_loop6_enter -.align 4,0x90 -L024ecb_dec_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -L023ecb_dec_loop6_enter: - call __aesni_decrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc L024ecb_dec_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz L012ecb_ret -L022ecb_dec_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb L025ecb_dec_one - movups 16(%esi),%xmm3 - je L026ecb_dec_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb L027ecb_dec_three - movups 48(%esi),%xmm5 - je L028ecb_dec_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call __aesni_decrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L012ecb_ret -.align 4,0x90 -L025ecb_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L029dec1_loop_4: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L029dec1_loop_4 -.byte 102,15,56,223,209 - movups %xmm2,(%edi) - jmp L012ecb_ret -.align 4,0x90 -L026ecb_dec_two: - call __aesni_decrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L012ecb_ret -.align 4,0x90 -L027ecb_dec_three: - call __aesni_decrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L012ecb_ret -.align 4,0x90 -L028ecb_dec_four: - call __aesni_decrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -L012ecb_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ccm64_encrypt_blocks -.align 4 -_aesni_ccm64_encrypt_blocks: -L_aesni_ccm64_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - shll $4,%ecx - movl $16,%ebx - leal (%edx),%ebp - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - leal 32(%edx,%ecx,1),%edx - subl %ecx,%ebx -.byte 102,15,56,0,253 -L030ccm64_enc_outer: - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups (%esi),%xmm6 - xorps %xmm0,%xmm2 - movups 16(%ebp),%xmm1 - xorps %xmm6,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%ebp),%xmm0 -L031ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L031ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq 16(%esp),%xmm7 - decl %eax -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) -.byte 102,15,56,0,213 - leal 16(%edi),%edi - jnz L030ccm64_enc_outer - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ccm64_decrypt_blocks -.align 4 -_aesni_ccm64_decrypt_blocks: -L_aesni_ccm64_decrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - movl %edx,%ebp - movl %ecx,%ebx -.byte 102,15,56,0,253 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L032enc1_loop_5: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L032enc1_loop_5 -.byte 102,15,56,221,209 - shll $4,%ebx - movl $16,%ecx - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 - leal 16(%esi),%esi - subl %ebx,%ecx - leal 32(%ebp,%ebx,1),%edx - movl %ecx,%ebx - jmp L033ccm64_dec_outer -.align 4,0x90 -L033ccm64_dec_outer: - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) - leal 16(%edi),%edi -.byte 102,15,56,0,213 - subl $1,%eax - jz L034ccm64_dec_break - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups 16(%ebp),%xmm1 - xorps %xmm0,%xmm6 - xorps %xmm0,%xmm2 - xorps %xmm6,%xmm3 - movups 32(%ebp),%xmm0 -L035ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L035ccm64_dec2_loop - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - jmp L033ccm64_dec_outer -.align 4,0x90 -L034ccm64_dec_break: - movl 240(%ebp),%ecx - movl %ebp,%edx - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm6 - leal 32(%edx),%edx - xorps %xmm6,%xmm3 -L036enc1_loop_6: -.byte 102,15,56,220,217 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L036enc1_loop_6 -.byte 102,15,56,221,217 - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ctr32_encrypt_blocks -.align 4 -_aesni_ctr32_encrypt_blocks: -L_aesni_ctr32_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl %esp,%ebp - subl $88,%esp - andl $-16,%esp - movl %ebp,80(%esp) - cmpl $1,%eax - je L037ctr32_one_shortcut - movdqu (%ebx),%xmm7 - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $6,%ecx - xorl %ebp,%ebp - movl %ecx,16(%esp) - movl %ecx,20(%esp) - movl %ecx,24(%esp) - movl %ebp,28(%esp) -.byte 102,15,58,22,251,3 -.byte 102,15,58,34,253,3 - movl 240(%edx),%ecx - bswap %ebx - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqa (%esp),%xmm2 -.byte 102,15,58,34,195,0 - leal 3(%ebx),%ebp -.byte 102,15,58,34,205,0 - incl %ebx -.byte 102,15,58,34,195,1 - incl %ebp -.byte 102,15,58,34,205,1 - incl %ebx -.byte 102,15,58,34,195,2 - incl %ebp -.byte 102,15,58,34,205,2 - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - movdqu (%edx),%xmm6 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - pshufd $192,%xmm0,%xmm2 - pshufd $128,%xmm0,%xmm3 - cmpl $6,%eax - jb L038ctr32_tail - pxor %xmm6,%xmm7 - shll $4,%ecx - movl $16,%ebx - movdqa %xmm7,32(%esp) - movl %edx,%ebp - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - subl $6,%eax - jmp L039ctr32_loop6 -.align 4,0x90 -L039ctr32_loop6: - pshufd $64,%xmm0,%xmm4 - movdqa 32(%esp),%xmm0 - pshufd $192,%xmm1,%xmm5 - pxor %xmm0,%xmm2 - pshufd $128,%xmm1,%xmm6 - pxor %xmm0,%xmm3 - pshufd $64,%xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,220,217 - movups 32(%ebp),%xmm0 - movl %ebx,%ecx -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call L_aesni_encrypt6_enter - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups %xmm2,(%edi) - movdqa 16(%esp),%xmm0 - xorps %xmm1,%xmm4 - movdqa 64(%esp),%xmm1 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - paddd %xmm0,%xmm1 - paddd 48(%esp),%xmm0 - movdqa (%esp),%xmm2 - movups 48(%esi),%xmm3 - movups 64(%esi),%xmm4 - xorps %xmm3,%xmm5 - movups 80(%esi),%xmm3 - leal 96(%esi),%esi - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - xorps %xmm4,%xmm6 - movups %xmm5,48(%edi) - xorps %xmm3,%xmm7 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - movups %xmm6,64(%edi) - pshufd $192,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - pshufd $128,%xmm0,%xmm3 - subl $6,%eax - jnc L039ctr32_loop6 - addl $6,%eax - jz L040ctr32_ret - movdqu (%ebp),%xmm7 - movl %ebp,%edx - pxor 32(%esp),%xmm7 - movl 240(%ebp),%ecx -L038ctr32_tail: - por %xmm7,%xmm2 - cmpl $2,%eax - jb L041ctr32_one - pshufd $64,%xmm0,%xmm4 - por %xmm7,%xmm3 - je L042ctr32_two - pshufd $192,%xmm1,%xmm5 - por %xmm7,%xmm4 - cmpl $4,%eax - jb L043ctr32_three - pshufd $128,%xmm1,%xmm6 - por %xmm7,%xmm5 - je L044ctr32_four - por %xmm7,%xmm6 - call __aesni_encrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm4 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm5 - movups %xmm2,(%edi) - xorps %xmm1,%xmm6 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L037ctr32_one_shortcut: - movups (%ebx),%xmm2 - movl 240(%edx),%ecx -L041ctr32_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L045enc1_loop_7: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L045enc1_loop_7 -.byte 102,15,56,221,209 - movups (%esi),%xmm6 - xorps %xmm2,%xmm6 - movups %xmm6,(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L042ctr32_two: - call __aesni_encrypt2 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L043ctr32_three: - call __aesni_encrypt3 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - movups 32(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm7,%xmm4 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L044ctr32_four: - call __aesni_encrypt4 - movups (%esi),%xmm6 - movups 16(%esi),%xmm7 - movups 32(%esi),%xmm1 - xorps %xmm6,%xmm2 - movups 48(%esi),%xmm0 - xorps %xmm7,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -L040ctr32_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movl 80(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_xts_encrypt -.align 4 -_aesni_xts_encrypt: -L_aesni_xts_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L046enc1_loop_8: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L046enc1_loop_8 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - movl 240(%edx),%ecx - andl $-16,%esp - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - movl %edx,%ebp - movl %ecx,%ebx - subl $96,%eax - jc L047xts_enc_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp L048xts_enc_loop6 -.align 4,0x90 -L048xts_enc_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,220,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call L_aesni_encrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc L048xts_enc_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -L047xts_enc_short: - addl $96,%eax - jz L049xts_enc_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb L050xts_enc_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je L051xts_enc_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb L052xts_enc_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je L053xts_enc_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call __aesni_encrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp L054xts_enc_done -.align 4,0x90 -L050xts_enc_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L055enc1_loop_9: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L055enc1_loop_9 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L051xts_enc_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call __aesni_encrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L052xts_enc_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call __aesni_encrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L053xts_enc_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call __aesni_encrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L049xts_enc_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz L056xts_enc_ret - movdqa %xmm1,%xmm5 - movl %eax,112(%esp) - jmp L057xts_enc_steal -.align 4,0x90 -L054xts_enc_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz L056xts_enc_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm5 - paddq %xmm1,%xmm1 - pand 96(%esp),%xmm5 - pxor %xmm1,%xmm5 -L057xts_enc_steal: - movzbl (%esi),%ecx - movzbl -16(%edi),%edx - leal 1(%esi),%esi - movb %cl,-16(%edi) - movb %dl,(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz L057xts_enc_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups -16(%edi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L058enc1_loop_10: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L058enc1_loop_10 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,-16(%edi) -L056xts_enc_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_xts_decrypt -.align 4 -_aesni_xts_decrypt: -L_aesni_xts_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L059enc1_loop_11: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L059enc1_loop_11 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - andl $-16,%esp - xorl %ebx,%ebx - testl $15,%eax - setnz %bl - shll $4,%ebx - subl %ebx,%eax - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ecx,%ebx - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - subl $96,%eax - jc L060xts_dec_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp L061xts_dec_loop6 -.align 4,0x90 -L061xts_dec_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,222,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - call L_aesni_decrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc L061xts_dec_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -L060xts_dec_short: - addl $96,%eax - jz L062xts_dec_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb L063xts_dec_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je L064xts_dec_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb L065xts_dec_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je L066xts_dec_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call __aesni_decrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp L067xts_dec_done -.align 4,0x90 -L063xts_dec_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L068dec1_loop_12: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L068dec1_loop_12 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L064xts_dec_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call __aesni_decrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L065xts_dec_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call __aesni_decrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L066xts_dec_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call __aesni_decrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L062xts_dec_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz L069xts_dec_ret - movl %eax,112(%esp) - jmp L070xts_dec_only_one_more -.align 4,0x90 -L067xts_dec_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz L069xts_dec_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 -L070xts_dec_only_one_more: - pshufd $19,%xmm0,%xmm5 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm5 - pxor %xmm1,%xmm5 - movl %ebp,%edx - movl %ebx,%ecx - movups (%esi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L071dec1_loop_13: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L071dec1_loop_13 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) -L072xts_dec_steal: - movzbl 16(%esi),%ecx - movzbl (%edi),%edx - leal 1(%esi),%esi - movb %cl,(%edi) - movb %dl,16(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz L072xts_dec_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups (%edi),%xmm2 - xorps %xmm6,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L073dec1_loop_14: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L073dec1_loop_14 -.byte 102,15,56,223,209 - xorps %xmm6,%xmm2 - movups %xmm2,(%edi) -L069xts_dec_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_cbc_encrypt -.align 4 -_aesni_cbc_encrypt: -L_aesni_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl %esp,%ebx - movl 24(%esp),%edi - subl $24,%ebx - movl 28(%esp),%eax - andl $-16,%ebx - movl 32(%esp),%edx - movl 36(%esp),%ebp - testl %eax,%eax - jz L074cbc_abort - cmpl $0,40(%esp) - xchgl %esp,%ebx - movups (%ebp),%xmm7 - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ebx,16(%esp) - movl %ecx,%ebx - je L075cbc_decrypt - movaps %xmm7,%xmm2 - cmpl $16,%eax - jb L076cbc_enc_tail - subl $16,%eax - jmp L077cbc_enc_loop -.align 4,0x90 -L077cbc_enc_loop: - movups (%esi),%xmm7 - leal 16(%esi),%esi - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm7 - leal 32(%edx),%edx - xorps %xmm7,%xmm2 -L078enc1_loop_15: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L078enc1_loop_15 -.byte 102,15,56,221,209 - movl %ebx,%ecx - movl %ebp,%edx - movups %xmm2,(%edi) - leal 16(%edi),%edi - subl $16,%eax - jnc L077cbc_enc_loop - addl $16,%eax - jnz L076cbc_enc_tail - movaps %xmm2,%xmm7 - pxor %xmm2,%xmm2 - jmp L079cbc_ret -L076cbc_enc_tail: - movl %eax,%ecx -.long 2767451785 - movl $16,%ecx - subl %eax,%ecx - xorl %eax,%eax -.long 2868115081 - leal -16(%edi),%edi - movl %ebx,%ecx - movl %edi,%esi - movl %ebp,%edx - jmp L077cbc_enc_loop -.align 4,0x90 -L075cbc_decrypt: - cmpl $80,%eax - jbe L080cbc_dec_tail - movaps %xmm7,(%esp) - subl $80,%eax - jmp L081cbc_dec_loop6_enter -.align 4,0x90 -L082cbc_dec_loop6: - movaps %xmm0,(%esp) - movups %xmm7,(%edi) - leal 16(%edi),%edi -L081cbc_dec_loop6_enter: - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - call __aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm6 - movups 80(%esi),%xmm0 - xorps %xmm1,%xmm7 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 96(%esi),%esi - movups %xmm4,32(%edi) - movl %ebx,%ecx - movups %xmm5,48(%edi) - movl %ebp,%edx - movups %xmm6,64(%edi) - leal 80(%edi),%edi - subl $96,%eax - ja L082cbc_dec_loop6 - movaps %xmm7,%xmm2 - movaps %xmm0,%xmm7 - addl $80,%eax - jle L083cbc_dec_clear_tail_collected - movups %xmm2,(%edi) - leal 16(%edi),%edi -L080cbc_dec_tail: - movups (%esi),%xmm2 - movaps %xmm2,%xmm6 - cmpl $16,%eax - jbe L084cbc_dec_one - movups 16(%esi),%xmm3 - movaps %xmm3,%xmm5 - cmpl $32,%eax - jbe L085cbc_dec_two - movups 32(%esi),%xmm4 - cmpl $48,%eax - jbe L086cbc_dec_three - movups 48(%esi),%xmm5 - cmpl $64,%eax - jbe L087cbc_dec_four - movups 64(%esi),%xmm6 - movaps %xmm7,(%esp) - movups (%esi),%xmm2 - xorps %xmm7,%xmm7 - call __aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm7 - xorps %xmm0,%xmm6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%edi) - pxor %xmm5,%xmm5 - leal 64(%edi),%edi - movaps %xmm6,%xmm2 - pxor %xmm6,%xmm6 - subl $80,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L084cbc_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L089dec1_loop_16: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L089dec1_loop_16 -.byte 102,15,56,223,209 - xorps %xmm7,%xmm2 - movaps %xmm6,%xmm7 - subl $16,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L085cbc_dec_two: - call __aesni_decrypt2 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movaps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leal 16(%edi),%edi - movaps %xmm5,%xmm7 - subl $32,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L086cbc_dec_three: - call __aesni_decrypt3 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm5,%xmm4 - movups %xmm2,(%edi) - movaps %xmm4,%xmm2 - pxor %xmm4,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - leal 32(%edi),%edi - movups 32(%esi),%xmm7 - subl $48,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L087cbc_dec_four: - call __aesni_decrypt4 - movups 16(%esi),%xmm1 - movups 32(%esi),%xmm0 - xorps %xmm7,%xmm2 - movups 48(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - leal 48(%edi),%edi - movaps %xmm5,%xmm2 - pxor %xmm5,%xmm5 - subl $64,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L083cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 -L088cbc_dec_tail_collected: - andl $15,%eax - jnz L090cbc_dec_tail_partial - movups %xmm2,(%edi) - pxor %xmm0,%xmm0 - jmp L079cbc_ret -.align 4,0x90 -L090cbc_dec_tail_partial: - movaps %xmm2,(%esp) - pxor %xmm0,%xmm0 - movl $16,%ecx - movl %esp,%esi - subl %eax,%ecx -.long 2767451785 - movdqa %xmm2,(%esp) -L079cbc_ret: - movl 16(%esp),%esp - movl 36(%esp),%ebp - pxor %xmm2,%xmm2 - pxor %xmm1,%xmm1 - movups %xmm7,(%ebp) - pxor %xmm7,%xmm7 -L074cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__aesni_set_encrypt_key: - pushl %ebp - pushl %ebx - testl %eax,%eax - jz L091bad_pointer - testl %edx,%edx - jz L091bad_pointer - call L092pic -L092pic: - popl %ebx - leal Lkey_const-L092pic(%ebx),%ebx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-Lkey_const(%ebx),%ebp - movups (%eax),%xmm0 - xorps %xmm4,%xmm4 - movl 4(%ebp),%ebp - leal 16(%edx),%edx - andl $268437504,%ebp - cmpl $256,%ecx - je L09314rounds - cmpl $192,%ecx - je L09412rounds - cmpl $128,%ecx - jne L095bad_keybits -.align 4,0x90 -L09610rounds: - cmpl $268435456,%ebp - je L09710rounds_alt - movl $9,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,200,1 - call L098key_128_cold -.byte 102,15,58,223,200,2 - call L099key_128 -.byte 102,15,58,223,200,4 - call L099key_128 -.byte 102,15,58,223,200,8 - call L099key_128 -.byte 102,15,58,223,200,16 - call L099key_128 -.byte 102,15,58,223,200,32 - call L099key_128 -.byte 102,15,58,223,200,64 - call L099key_128 -.byte 102,15,58,223,200,128 - call L099key_128 -.byte 102,15,58,223,200,27 - call L099key_128 -.byte 102,15,58,223,200,54 - call L099key_128 - movups %xmm0,(%edx) - movl %ecx,80(%edx) - jmp L100good_key -.align 4,0x90 -L099key_128: - movups %xmm0,(%edx) - leal 16(%edx),%edx -L098key_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 4,0x90 -L09710rounds_alt: - movdqa (%ebx),%xmm5 - movl $8,%ecx - movdqa 32(%ebx),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,-16(%edx) -L101loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leal 16(%edx),%edx - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%edx) - movdqa %xmm0,%xmm2 - decl %ecx - jnz L101loop_key128 - movdqa 48(%ebx),%xmm4 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%edx) - movl $9,%ecx - movl %ecx,96(%edx) - jmp L100good_key -.align 4,0x90 -L09412rounds: - movq 16(%eax),%xmm2 - cmpl $268435456,%ebp - je L10212rounds_alt - movl $11,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,202,1 - call L103key_192a_cold -.byte 102,15,58,223,202,2 - call L104key_192b -.byte 102,15,58,223,202,4 - call L105key_192a -.byte 102,15,58,223,202,8 - call L104key_192b -.byte 102,15,58,223,202,16 - call L105key_192a -.byte 102,15,58,223,202,32 - call L104key_192b -.byte 102,15,58,223,202,64 - call L105key_192a -.byte 102,15,58,223,202,128 - call L104key_192b - movups %xmm0,(%edx) - movl %ecx,48(%edx) - jmp L100good_key -.align 4,0x90 -L105key_192a: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.align 4,0x90 -L103key_192a_cold: - movaps %xmm2,%xmm5 -L106key_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - ret -.align 4,0x90 -L104key_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%edx) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%edx) - leal 32(%edx),%edx - jmp L106key_192b_warm -.align 4,0x90 -L10212rounds_alt: - movdqa 16(%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $8,%ecx - movdqu %xmm0,-16(%edx) -L107loop_key192: - movq %xmm2,(%edx) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leal 24(%edx),%edx - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%edx) - decl %ecx - jnz L107loop_key192 - movl $11,%ecx - movl %ecx,32(%edx) - jmp L100good_key -.align 4,0x90 -L09314rounds: - movups 16(%eax),%xmm2 - leal 16(%edx),%edx - cmpl $268435456,%ebp - je L10814rounds_alt - movl $13,%ecx - movups %xmm0,-32(%edx) - movups %xmm2,-16(%edx) -.byte 102,15,58,223,202,1 - call L109key_256a_cold -.byte 102,15,58,223,200,1 - call L110key_256b -.byte 102,15,58,223,202,2 - call L111key_256a -.byte 102,15,58,223,200,2 - call L110key_256b -.byte 102,15,58,223,202,4 - call L111key_256a -.byte 102,15,58,223,200,4 - call L110key_256b -.byte 102,15,58,223,202,8 - call L111key_256a -.byte 102,15,58,223,200,8 - call L110key_256b -.byte 102,15,58,223,202,16 - call L111key_256a -.byte 102,15,58,223,200,16 - call L110key_256b -.byte 102,15,58,223,202,32 - call L111key_256a -.byte 102,15,58,223,200,32 - call L110key_256b -.byte 102,15,58,223,202,64 - call L111key_256a - movups %xmm0,(%edx) - movl %ecx,16(%edx) - xorl %eax,%eax - jmp L100good_key -.align 4,0x90 -L111key_256a: - movups %xmm2,(%edx) - leal 16(%edx),%edx -L109key_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 4,0x90 -L110key_256b: - movups %xmm0,(%edx) - leal 16(%edx),%edx - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - ret -.align 4,0x90 -L10814rounds_alt: - movdqa (%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $7,%ecx - movdqu %xmm0,-32(%edx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,-16(%edx) -L112loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - decl %ecx - jz L113done_key256 - pshufd $255,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%edx) - leal 32(%edx),%edx - movdqa %xmm2,%xmm1 - jmp L112loop_key256 -L113done_key256: - movl $13,%ecx - movl %ecx,16(%edx) -L100good_key: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - xorl %eax,%eax - popl %ebx - popl %ebp - ret -.align 2,0x90 -L091bad_pointer: - movl $-1,%eax - popl %ebx - popl %ebp - ret -.align 2,0x90 -L095bad_keybits: - pxor %xmm0,%xmm0 - movl $-2,%eax - popl %ebx - popl %ebp - ret -.globl _aesni_set_encrypt_key -.align 4 -_aesni_set_encrypt_key: -L_aesni_set_encrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call __aesni_set_encrypt_key - ret -.globl _aesni_set_decrypt_key -.align 4 -_aesni_set_decrypt_key: -L_aesni_set_decrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call __aesni_set_encrypt_key - movl 12(%esp),%edx - shll $4,%ecx - testl %eax,%eax - jnz L114dec_key_ret - leal 16(%edx,%ecx,1),%eax - movups (%edx),%xmm0 - movups (%eax),%xmm1 - movups %xmm0,(%eax) - movups %xmm1,(%edx) - leal 16(%edx),%edx - leal -16(%eax),%eax -L115dec_key_inverse: - movups (%edx),%xmm0 - movups (%eax),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leal 16(%edx),%edx - leal -16(%eax),%eax - movups %xmm0,16(%eax) - movups %xmm1,-16(%edx) - cmpl %edx,%eax - ja L115dec_key_inverse - movups (%edx),%xmm0 -.byte 102,15,56,219,192 - movups %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorl %eax,%eax -L114dec_key_ret: - ret -.align 6,0x90 -Lkey_const: -.long 202313229,202313229,202313229,202313229 -.long 67569157,67569157,67569157,67569157 -.long 1,1,1,1 -.long 27,27,27,27 -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/aes/vpaes-x86.s b/deps/openssl/asm/x86-macosx-gas/aes/vpaes-x86.s deleted file mode 100644 index 81f7af82388417..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/aes/vpaes-x86.s +++ /dev/null @@ -1,635 +0,0 @@ -.file "vpaes-x86.s" -.text -.align 6,0x90 -L_vpaes_consts: -.long 218628480,235210255,168496130,67568393 -.long 252381056,17041926,33884169,51187212 -.long 252645135,252645135,252645135,252645135 -.long 1512730624,3266504856,1377990664,3401244816 -.long 830229760,1275146365,2969422977,3447763452 -.long 3411033600,2979783055,338359620,2782886510 -.long 4209124096,907596821,221174255,1006095553 -.long 191964160,3799684038,3164090317,1589111125 -.long 182528256,1777043520,2877432650,3265356744 -.long 1874708224,3503451415,3305285752,363511674 -.long 1606117888,3487855781,1093350906,2384367825 -.long 197121,67569157,134941193,202313229 -.long 67569157,134941193,202313229,197121 -.long 134941193,202313229,197121,67569157 -.long 202313229,197121,67569157,134941193 -.long 33619971,100992007,168364043,235736079 -.long 235736079,33619971,100992007,168364043 -.long 168364043,235736079,33619971,100992007 -.long 100992007,168364043,235736079,33619971 -.long 50462976,117835012,185207048,252579084 -.long 252314880,51251460,117574920,184942860 -.long 184682752,252054788,50987272,118359308 -.long 118099200,185467140,251790600,50727180 -.long 2946363062,528716217,1300004225,1881839624 -.long 1532713819,1532713819,1532713819,1532713819 -.long 3602276352,4288629033,3737020424,4153884961 -.long 1354558464,32357713,2958822624,3775749553 -.long 1201988352,132424512,1572796698,503232858 -.long 2213177600,1597421020,4103937655,675398315 -.long 2749646592,4273543773,1511898873,121693092 -.long 3040248576,1103263732,2871565598,1608280554 -.long 2236667136,2588920351,482954393,64377734 -.long 3069987328,291237287,2117370568,3650299247 -.long 533321216,3573750986,2572112006,1401264716 -.long 1339849704,2721158661,548607111,3445553514 -.long 2128193280,3054596040,2183486460,1257083700 -.long 655635200,1165381986,3923443150,2344132524 -.long 190078720,256924420,290342170,357187870 -.long 1610966272,2263057382,4103205268,309794674 -.long 2592527872,2233205587,1335446729,3402964816 -.long 3973531904,3225098121,3002836325,1918774430 -.long 3870401024,2102906079,2284471353,4117666579 -.long 617007872,1021508343,366931923,691083277 -.long 2528395776,3491914898,2968704004,1613121270 -.long 3445188352,3247741094,844474987,4093578302 -.long 651481088,1190302358,1689581232,574775300 -.long 4289380608,206939853,2555985458,2489840491 -.long 2130264064,327674451,3566485037,3349835193 -.long 2470714624,316102159,3636825756,3393945945 -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -.byte 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -.byte 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -.byte 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -.byte 118,101,114,115,105,116,121,41,0 -.align 6,0x90 -.align 4 -__vpaes_preheat: - addl (%esp),%ebp - movdqa -48(%ebp),%xmm7 - movdqa -16(%ebp),%xmm6 - ret -.align 4 -__vpaes_encrypt_core: - movl $16,%ecx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa (%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - movdqu (%edx),%xmm5 -.byte 102,15,56,0,208 - movdqa 16(%ebp),%xmm0 - pxor %xmm5,%xmm2 - psrld $4,%xmm1 - addl $16,%edx -.byte 102,15,56,0,193 - leal 192(%ebp),%ebx - pxor %xmm2,%xmm0 - jmp L000enc_entry -.align 4,0x90 -L001enc_loop: - movdqa 32(%ebp),%xmm4 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa 64(%ebp),%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%ebx,%ecx,1),%xmm1 -.byte 102,15,56,0,234 - movdqa 80(%ebp),%xmm2 - movdqa (%ebx,%ecx,1),%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addl $16,%edx - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addl $16,%ecx - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andl $48,%ecx - subl $1,%eax - pxor %xmm3,%xmm0 -L000enc_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm6,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm7,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm5 - pxor %xmm1,%xmm3 - jnz L001enc_loop - movdqa 96(%ebp),%xmm4 - movdqa 112(%ebp),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%ebx,%ecx,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - ret -.align 4 -__vpaes_decrypt_core: - leal 608(%ebp),%ebx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa -64(%ebx),%xmm2 - pandn %xmm0,%xmm1 - movl %eax,%ecx - psrld $4,%xmm1 - movdqu (%edx),%xmm5 - shll $4,%ecx - pand %xmm6,%xmm0 -.byte 102,15,56,0,208 - movdqa -48(%ebx),%xmm0 - xorl $48,%ecx -.byte 102,15,56,0,193 - andl $48,%ecx - pxor %xmm5,%xmm2 - movdqa 176(%ebp),%xmm5 - pxor %xmm2,%xmm0 - addl $16,%edx - leal -352(%ebx,%ecx,1),%ecx - jmp L002dec_entry -.align 4,0x90 -L003dec_loop: - movdqa -32(%ebx),%xmm4 - movdqa -16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa (%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addl $16,%edx -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subl $1,%eax -L002dec_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - psrld $4,%xmm1 -.byte 102,15,56,0,208 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm7,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm0 - pxor %xmm1,%xmm3 - jnz L003dec_loop - movdqa 96(%ebx),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%ebx),%xmm0 - movdqa (%ecx),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - ret -.align 4 -__vpaes_schedule_core: - addl (%esp),%ebp - movdqu (%esi),%xmm0 - movdqa 320(%ebp),%xmm2 - movdqa %xmm0,%xmm3 - leal (%ebp),%ebx - movdqa %xmm2,4(%esp) - call __vpaes_schedule_transform - movdqa %xmm0,%xmm7 - testl %edi,%edi - jnz L004schedule_am_decrypting - movdqu %xmm0,(%edx) - jmp L005schedule_go -L004schedule_am_decrypting: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%edx) - xorl $48,%ecx -L005schedule_go: - cmpl $192,%eax - ja L006schedule_256 - je L007schedule_192 -L008schedule_128: - movl $10,%eax -L009loop_schedule_128: - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - jmp L009loop_schedule_128 -.align 4,0x90 -L007schedule_192: - movdqu 8(%esi),%xmm0 - call __vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%eax -L011loop_schedule_192: - call __vpaes_schedule_round -.byte 102,15,58,15,198,8 - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - call __vpaes_schedule_mangle - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - jmp L011loop_schedule_192 -.align 4,0x90 -L006schedule_256: - movdqu 16(%esi),%xmm0 - call __vpaes_schedule_transform - movl $7,%eax -L012loop_schedule_256: - call __vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - pshufd $255,%xmm0,%xmm0 - movdqa %xmm7,20(%esp) - movdqa %xmm6,%xmm7 - call L_vpaes_schedule_low_round - movdqa 20(%esp),%xmm7 - jmp L012loop_schedule_256 -.align 4,0x90 -L010schedule_mangle_last: - leal 384(%ebp),%ebx - testl %edi,%edi - jnz L013schedule_mangle_last_dec - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,193 - leal 352(%ebp),%ebx - addl $32,%edx -L013schedule_mangle_last_dec: - addl $-16,%edx - pxor 336(%ebp),%xmm0 - call __vpaes_schedule_transform - movdqu %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - ret -.align 4 -__vpaes_schedule_192_smear: - pshufd $128,%xmm6,%xmm1 - pshufd $254,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - ret -.align 4 -__vpaes_schedule_round: - movdqa 8(%esp),%xmm2 - pxor %xmm1,%xmm1 -.byte 102,15,58,15,202,15 -.byte 102,15,58,15,210,15 - pxor %xmm1,%xmm7 - pshufd $255,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - movdqa %xmm2,8(%esp) -L_vpaes_schedule_low_round: - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor 336(%ebp),%xmm7 - movdqa -16(%ebp),%xmm4 - movdqa -48(%ebp),%xmm5 - movdqa %xmm4,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm4,%xmm0 - movdqa -32(%ebp),%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm5,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm5,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa 32(%ebp),%xmm4 -.byte 102,15,56,0,226 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - ret -.align 4 -__vpaes_schedule_transform: - movdqa -16(%ebp),%xmm2 - movdqa %xmm2,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm0 - movdqa (%ebx),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%ebx),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - ret -.align 4 -__vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa 128(%ebp),%xmm5 - testl %edi,%edi - jnz L014schedule_mangle_dec - addl $16,%edx - pxor 336(%ebp),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - jmp L015schedule_mangle_both -.align 4,0x90 -L014schedule_mangle_dec: - movdqa -16(%ebp),%xmm2 - leal 416(%ebp),%esi - movdqa %xmm2,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm4 - movdqa (%esi),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 32(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 64(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 96(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - addl $-16,%edx -L015schedule_mangle_both: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - addl $-16,%ecx - andl $48,%ecx - movdqu %xmm3,(%edx) - ret -.globl _vpaes_set_encrypt_key -.align 4 -_vpaes_set_encrypt_key: -L_vpaes_set_encrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - movl $48,%ecx - movl $0,%edi - leal L_vpaes_consts+0x30-L016pic_point,%ebp - call __vpaes_schedule_core -L016pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_set_decrypt_key -.align 4 -_vpaes_set_decrypt_key: -L_vpaes_set_decrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - shll $4,%ebx - leal 16(%edx,%ebx,1),%edx - movl $1,%edi - movl %eax,%ecx - shrl $1,%ecx - andl $32,%ecx - xorl $32,%ecx - leal L_vpaes_consts+0x30-L017pic_point,%ebp - call __vpaes_schedule_core -L017pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_encrypt -.align 4 -_vpaes_encrypt: -L_vpaes_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal L_vpaes_consts+0x30-L018pic_point,%ebp - call __vpaes_preheat -L018pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call __vpaes_encrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_decrypt -.align 4 -_vpaes_decrypt: -L_vpaes_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal L_vpaes_consts+0x30-L019pic_point,%ebp - call __vpaes_preheat -L019pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call __vpaes_decrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_cbc_encrypt -.align 4 -_vpaes_cbc_encrypt: -L_vpaes_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - subl $16,%eax - jc L020cbc_abort - leal -56(%esp),%ebx - movl 36(%esp),%ebp - andl $-16,%ebx - movl 40(%esp),%ecx - xchgl %esp,%ebx - movdqu (%ebp),%xmm1 - subl %esi,%edi - movl %ebx,48(%esp) - movl %edi,(%esp) - movl %edx,4(%esp) - movl %ebp,8(%esp) - movl %eax,%edi - leal L_vpaes_consts+0x30-L021pic_point,%ebp - call __vpaes_preheat -L021pic_point: - cmpl $0,%ecx - je L022cbc_dec_loop - jmp L023cbc_enc_loop -.align 4,0x90 -L023cbc_enc_loop: - movdqu (%esi),%xmm0 - pxor %xmm1,%xmm0 - call __vpaes_encrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - movdqa %xmm0,%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc L023cbc_enc_loop - jmp L024cbc_done -.align 4,0x90 -L022cbc_dec_loop: - movdqu (%esi),%xmm0 - movdqa %xmm1,16(%esp) - movdqa %xmm0,32(%esp) - call __vpaes_decrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - pxor 16(%esp),%xmm0 - movdqa 32(%esp),%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc L022cbc_dec_loop -L024cbc_done: - movl 8(%esp),%ebx - movl 48(%esp),%esp - movdqu %xmm1,(%ebx) -L020cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret diff --git a/deps/openssl/asm/x86-macosx-gas/bf/bf-586.s b/deps/openssl/asm/x86-macosx-gas/bf/bf-586.s deleted file mode 100644 index 2b75536e78e668..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/bf/bf-586.s +++ /dev/null @@ -1,858 +0,0 @@ -.file "bf-686.s" -.text -.globl _BF_encrypt -.align 4 -_BF_encrypt: -L_BF_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - movl 20(%esp),%eax - movl (%eax),%ecx - movl 4(%eax),%edx - - # P pointer, s and enc flag - movl 24(%esp),%edi - xorl %eax,%eax - xorl %ebx,%ebx - xorl (%edi),%ecx - - # Round 0 - rorl $16,%ecx - movl 4(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 1 - rorl $16,%edx - movl 8(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 2 - rorl $16,%ecx - movl 12(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 3 - rorl $16,%edx - movl 16(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 4 - rorl $16,%ecx - movl 20(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 5 - rorl $16,%edx - movl 24(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 6 - rorl $16,%ecx - movl 28(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 7 - rorl $16,%edx - movl 32(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 8 - rorl $16,%ecx - movl 36(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 9 - rorl $16,%edx - movl 40(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 10 - rorl $16,%ecx - movl 44(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 11 - rorl $16,%edx - movl 48(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 12 - rorl $16,%ecx - movl 52(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 13 - rorl $16,%edx - movl 56(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 14 - rorl $16,%ecx - movl 60(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 15 - rorl $16,%edx - movl 64(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - xorl 68(%edi),%edx - movl 20(%esp),%eax - movl %edx,(%eax) - movl %ecx,4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _BF_decrypt -.align 4 -_BF_decrypt: -L_BF_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - movl 20(%esp),%eax - movl (%eax),%ecx - movl 4(%eax),%edx - - # P pointer, s and enc flag - movl 24(%esp),%edi - xorl %eax,%eax - xorl %ebx,%ebx - xorl 68(%edi),%ecx - - # Round 16 - rorl $16,%ecx - movl 64(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 15 - rorl $16,%edx - movl 60(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 14 - rorl $16,%ecx - movl 56(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 13 - rorl $16,%edx - movl 52(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 12 - rorl $16,%ecx - movl 48(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 11 - rorl $16,%edx - movl 44(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 10 - rorl $16,%ecx - movl 40(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 9 - rorl $16,%edx - movl 36(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 8 - rorl $16,%ecx - movl 32(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 7 - rorl $16,%edx - movl 28(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 6 - rorl $16,%ecx - movl 24(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 5 - rorl $16,%edx - movl 20(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 4 - rorl $16,%ecx - movl 16(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 3 - rorl $16,%edx - movl 12(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 2 - rorl $16,%ecx - movl 8(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 1 - rorl $16,%edx - movl 4(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - xorl (%edi),%edx - movl 20(%esp),%eax - movl %edx,(%eax) - movl %ecx,4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _BF_cbc_encrypt -.align 4 -_BF_cbc_encrypt: -L_BF_cbc_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 3 - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz L000decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz L001encrypt_finish -L002encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L002encrypt_loop -L001encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L003finish - call L004PIC_point -L004PIC_point: - popl %edx - leal L005cbc_enc_jmp_table-L004PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -L006ej7: - movb 6(%esi),%dh - shll $8,%edx -L007ej6: - movb 5(%esi),%dh -L008ej5: - movb 4(%esi),%dl -L009ej4: - movl (%esi),%ecx - jmp L010ejend -L011ej3: - movb 2(%esi),%ch - shll $8,%ecx -L012ej2: - movb 1(%esi),%ch -L013ej1: - movb (%esi),%cl -L010ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp L003finish -L000decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz L014decrypt_finish -L015decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L015decrypt_loop -L014decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L003finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -L016dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -L017dj6: - movb %dh,5(%edi) -L018dj5: - movb %dl,4(%edi) -L019dj4: - movl %ecx,(%edi) - jmp L020djend -L021dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -L022dj2: - movb %ch,1(%esi) -L023dj1: - movb %cl,(%esi) -L020djend: - jmp L003finish -L003finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L005cbc_enc_jmp_table: -.long 0 -.long L013ej1-L004PIC_point -.long L012ej2-L004PIC_point -.long L011ej3-L004PIC_point -.long L009ej4-L004PIC_point -.long L008ej5-L004PIC_point -.long L007ej6-L004PIC_point -.long L006ej7-L004PIC_point -.align 6,0x90 diff --git a/deps/openssl/asm/x86-macosx-gas/bn/bn-586.s b/deps/openssl/asm/x86-macosx-gas/bn/bn-586.s deleted file mode 100644 index 777121eae88f3f..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/bn/bn-586.s +++ /dev/null @@ -1,1520 +0,0 @@ -.file "../openssl/crypto/bn/asm/bn-586.s" -.text -.globl _bn_mul_add_words -.align 4 -_bn_mul_add_words: -L_bn_mul_add_words_begin: - call L000PIC_me_up -L000PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L001maw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 - jmp L002maw_sse2_entry -.align 4,0x90 -L003maw_sse2_unrolled: - movd (%eax),%mm3 - paddq %mm3,%mm1 - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - movd 4(%edx),%mm4 - pmuludq %mm0,%mm4 - movd 8(%edx),%mm6 - pmuludq %mm0,%mm6 - movd 12(%edx),%mm7 - pmuludq %mm0,%mm7 - paddq %mm2,%mm1 - movd 4(%eax),%mm3 - paddq %mm4,%mm3 - movd 8(%eax),%mm5 - paddq %mm6,%mm5 - movd 12(%eax),%mm4 - paddq %mm4,%mm7 - movd %mm1,(%eax) - movd 16(%edx),%mm2 - pmuludq %mm0,%mm2 - psrlq $32,%mm1 - movd 20(%edx),%mm4 - pmuludq %mm0,%mm4 - paddq %mm3,%mm1 - movd 24(%edx),%mm6 - pmuludq %mm0,%mm6 - movd %mm1,4(%eax) - psrlq $32,%mm1 - movd 28(%edx),%mm3 - addl $32,%edx - pmuludq %mm0,%mm3 - paddq %mm5,%mm1 - movd 16(%eax),%mm5 - paddq %mm5,%mm2 - movd %mm1,8(%eax) - psrlq $32,%mm1 - paddq %mm7,%mm1 - movd 20(%eax),%mm5 - paddq %mm5,%mm4 - movd %mm1,12(%eax) - psrlq $32,%mm1 - paddq %mm2,%mm1 - movd 24(%eax),%mm5 - paddq %mm5,%mm6 - movd %mm1,16(%eax) - psrlq $32,%mm1 - paddq %mm4,%mm1 - movd 28(%eax),%mm5 - paddq %mm5,%mm3 - movd %mm1,20(%eax) - psrlq $32,%mm1 - paddq %mm6,%mm1 - movd %mm1,24(%eax) - psrlq $32,%mm1 - paddq %mm3,%mm1 - movd %mm1,28(%eax) - leal 32(%eax),%eax - psrlq $32,%mm1 - subl $8,%ecx - jz L004maw_sse2_exit -L002maw_sse2_entry: - testl $4294967288,%ecx - jnz L003maw_sse2_unrolled -.align 2,0x90 -L005maw_sse2_loop: - movd (%edx),%mm2 - movd (%eax),%mm3 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm3,%mm1 - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz L005maw_sse2_loop -L004maw_sse2_exit: - movd %mm1,%eax - emms - ret -.align 4,0x90 -L001maw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 28(%esp),%ecx - movl 24(%esp),%ebx - andl $4294967288,%ecx - movl 32(%esp),%ebp - pushl %ecx - jz L006maw_finish -.align 4,0x90 -L007maw_loop: - # Round 0 - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - # Round 4 - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - # Round 8 - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - # Round 12 - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - # Round 16 - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - # Round 20 - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - # Round 24 - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - # Round 28 - movl 28(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 28(%edi),%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - subl $8,%ecx - leal 32(%ebx),%ebx - leal 32(%edi),%edi - jnz L007maw_loop -L006maw_finish: - movl 32(%esp),%ecx - andl $7,%ecx - jnz L008maw_finish2 - jmp L009maw_end -L008maw_finish2: - # Tail Round 0 - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 1 - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,4(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 2 - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,8(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 3 - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,12(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 4 - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,16(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 5 - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,20(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 6 - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -L009maw_end: - movl %esi,%eax - popl %ecx - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_mul_words -.align 4 -_bn_mul_words: -L_bn_mul_words_begin: - call L010PIC_me_up -L010PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L011mw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 -.align 4,0x90 -L012mw_sse2_loop: - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz L012mw_sse2_loop - movd %mm1,%eax - emms - ret -.align 4,0x90 -L011mw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ebp - movl 32(%esp),%ecx - andl $4294967288,%ebp - jz L013mw_finish -L014mw_loop: - # Round 0 - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - # Round 4 - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - # Round 8 - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - # Round 12 - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - # Round 16 - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - # Round 20 - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - # Round 24 - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - # Round 28 - movl 28(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - addl $32,%ebx - addl $32,%edi - subl $8,%ebp - jz L013mw_finish - jmp L014mw_loop -L013mw_finish: - movl 28(%esp),%ebp - andl $7,%ebp - jnz L015mw_finish2 - jmp L016mw_end -L015mw_finish2: - # Tail Round 0 - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 1 - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 2 - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 3 - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 4 - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 5 - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 6 - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -L016mw_end: - movl %esi,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sqr_words -.align 4 -_bn_sqr_words: -L_bn_sqr_words_begin: - call L017PIC_me_up -L017PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L017PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L018sqr_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx -.align 4,0x90 -L019sqr_sse2_loop: - movd (%edx),%mm0 - pmuludq %mm0,%mm0 - leal 4(%edx),%edx - movq %mm0,(%eax) - subl $1,%ecx - leal 8(%eax),%eax - jnz L019sqr_sse2_loop - emms - ret -.align 4,0x90 -L018sqr_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebx - andl $4294967288,%ebx - jz L020sw_finish -L021sw_loop: - # Round 0 - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - movl %edx,4(%esi) - # Round 4 - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - movl %edx,12(%esi) - # Round 8 - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - movl %edx,20(%esi) - # Round 12 - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - movl %edx,28(%esi) - # Round 16 - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - movl %edx,36(%esi) - # Round 20 - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - movl %edx,44(%esi) - # Round 24 - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) - # Round 28 - movl 28(%edi),%eax - mull %eax - movl %eax,56(%esi) - movl %edx,60(%esi) - - addl $32,%edi - addl $64,%esi - subl $8,%ebx - jnz L021sw_loop -L020sw_finish: - movl 28(%esp),%ebx - andl $7,%ebx - jz L022sw_end - # Tail Round 0 - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - decl %ebx - movl %edx,4(%esi) - jz L022sw_end - # Tail Round 1 - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - decl %ebx - movl %edx,12(%esi) - jz L022sw_end - # Tail Round 2 - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - decl %ebx - movl %edx,20(%esi) - jz L022sw_end - # Tail Round 3 - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - decl %ebx - movl %edx,28(%esi) - jz L022sw_end - # Tail Round 4 - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - decl %ebx - movl %edx,36(%esi) - jz L022sw_end - # Tail Round 5 - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - decl %ebx - movl %edx,44(%esi) - jz L022sw_end - # Tail Round 6 - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) -L022sw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_div_words -.align 4 -_bn_div_words: -L_bn_div_words_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 12(%esp),%ecx - divl %ecx - ret -.globl _bn_add_words -.align 4 -_bn_add_words: -L_bn_add_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L023aw_finish -L024aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L024aw_loop -L023aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L025aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L025aw_end - # Tail Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L025aw_end - # Tail Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L025aw_end - # Tail Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L025aw_end - # Tail Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L025aw_end - # Tail Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L025aw_end - # Tail Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -L025aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sub_words -.align 4 -_bn_sub_words: -L_bn_sub_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L026aw_finish -L027aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L027aw_loop -L026aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L028aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L028aw_end - # Tail Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L028aw_end - # Tail Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L028aw_end - # Tail Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L028aw_end - # Tail Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L028aw_end - # Tail Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L028aw_end - # Tail Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -L028aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sub_part_words -.align 4 -_bn_sub_part_words: -L_bn_sub_part_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L029aw_finish -L030aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L030aw_loop -L029aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L031aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 1 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 2 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 3 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 4 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 5 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 6 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx -L031aw_end: - cmpl $0,36(%esp) - je L032pw_end - movl 36(%esp),%ebp - cmpl $0,%ebp - je L032pw_end - jge L033pw_pos - # pw_neg - movl $0,%edx - subl %ebp,%edx - movl %edx,%ebp - andl $4294967288,%ebp - jz L034pw_neg_finish -L035pw_neg_loop: - # dl<0 Round 0 - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # dl<0 Round 1 - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # dl<0 Round 2 - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # dl<0 Round 3 - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # dl<0 Round 4 - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # dl<0 Round 5 - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # dl<0 Round 6 - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # dl<0 Round 7 - movl $0,%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L035pw_neg_loop -L034pw_neg_finish: - movl 36(%esp),%edx - movl $0,%ebp - subl %edx,%ebp - andl $7,%ebp - jz L032pw_end - # dl<0 Tail Round 0 - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L032pw_end - # dl<0 Tail Round 1 - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L032pw_end - # dl<0 Tail Round 2 - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L032pw_end - # dl<0 Tail Round 3 - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L032pw_end - # dl<0 Tail Round 4 - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L032pw_end - # dl<0 Tail Round 5 - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L032pw_end - # dl<0 Tail Round 6 - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - jmp L032pw_end -L033pw_pos: - andl $4294967288,%ebp - jz L036pw_pos_finish -L037pw_pos_loop: - # dl>0 Round 0 - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc L038pw_nc0 - # dl>0 Round 1 - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc L039pw_nc1 - # dl>0 Round 2 - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc L040pw_nc2 - # dl>0 Round 3 - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc L041pw_nc3 - # dl>0 Round 4 - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc L042pw_nc4 - # dl>0 Round 5 - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc L043pw_nc5 - # dl>0 Round 6 - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc L044pw_nc6 - # dl>0 Round 7 - movl 28(%esi),%ecx - subl %eax,%ecx - movl %ecx,28(%ebx) - jnc L045pw_nc7 - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz L037pw_pos_loop -L036pw_pos_finish: - movl 36(%esp),%ebp - andl $7,%ebp - jz L032pw_end - # dl>0 Tail Round 0 - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc L046pw_tail_nc0 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 1 - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc L047pw_tail_nc1 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 2 - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc L048pw_tail_nc2 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 3 - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc L049pw_tail_nc3 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 4 - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc L050pw_tail_nc4 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 5 - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc L051pw_tail_nc5 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 6 - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc L052pw_tail_nc6 - movl $1,%eax - jmp L032pw_end -L053pw_nc_loop: - movl (%esi),%ecx - movl %ecx,(%ebx) -L038pw_nc0: - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -L039pw_nc1: - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -L040pw_nc2: - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -L041pw_nc3: - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -L042pw_nc4: - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -L043pw_nc5: - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -L044pw_nc6: - movl 28(%esi),%ecx - movl %ecx,28(%ebx) -L045pw_nc7: - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz L053pw_nc_loop - movl 36(%esp),%ebp - andl $7,%ebp - jz L054pw_nc_end - movl (%esi),%ecx - movl %ecx,(%ebx) -L046pw_tail_nc0: - decl %ebp - jz L054pw_nc_end - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -L047pw_tail_nc1: - decl %ebp - jz L054pw_nc_end - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -L048pw_tail_nc2: - decl %ebp - jz L054pw_nc_end - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -L049pw_tail_nc3: - decl %ebp - jz L054pw_nc_end - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -L050pw_tail_nc4: - decl %ebp - jz L054pw_nc_end - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -L051pw_tail_nc5: - decl %ebp - jz L054pw_nc_end - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -L052pw_tail_nc6: -L054pw_nc_end: - movl $0,%eax -L032pw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/bn/co-586.s b/deps/openssl/asm/x86-macosx-gas/bn/co-586.s deleted file mode 100644 index 6174dea38f0243..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/bn/co-586.s +++ /dev/null @@ -1,1246 +0,0 @@ -.file "../openssl/crypto/bn/asm/co-586.s" -.text -.globl _bn_mul_comba8 -.align 4 -_bn_mul_comba8: -L_bn_mul_comba8_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - # ################## Calculate word 0 - xorl %ebp,%ebp - # mul a[0]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 - xorl %ebx,%ebx - # mul a[1]*b[0] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 - xorl %ecx,%ecx - # mul a[2]*b[0] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[1] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 - xorl %ebp,%ebp - # mul a[3]*b[0] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[1] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[2] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 16(%esi),%eax - # saved r[3] - # ################## Calculate word 4 - xorl %ebx,%ebx - # mul a[4]*b[0] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[1] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[2] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[3] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[4] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 20(%esi),%eax - # saved r[4] - # ################## Calculate word 5 - xorl %ecx,%ecx - # mul a[5]*b[0] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[1] - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[3]*b[2] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[3] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[4] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[5] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 24(%esi),%eax - # saved r[5] - # ################## Calculate word 6 - xorl %ebp,%ebp - # mul a[6]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[1] - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[4]*b[2] - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[3]*b[3] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[4] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[5] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[6] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,24(%eax) - movl 28(%esi),%eax - # saved r[6] - # ################## Calculate word 7 - xorl %ebx,%ebx - # mul a[7]*b[0] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[5]*b[2] - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[4]*b[3] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[4] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[5] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[6] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - movl %ecx,28(%eax) - movl 28(%esi),%eax - # saved r[7] - # ################## Calculate word 8 - xorl %ecx,%ecx - # mul a[7]*b[1] - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[6]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[5]*b[3] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[4] - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[3]*b[5] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[6] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - movl %ebp,32(%eax) - movl 28(%esi),%eax - # saved r[8] - # ################## Calculate word 9 - xorl %ebp,%ebp - # mul a[7]*b[2] - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[6]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[4] - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - # mul a[4]*b[5] - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[3]*b[6] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[7] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - movl %ebx,36(%eax) - movl 28(%esi),%eax - # saved r[9] - # ################## Calculate word 10 - xorl %ebx,%ebx - # mul a[7]*b[3] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[4] - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - # mul a[5]*b[5] - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - # mul a[4]*b[6] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - movl %ecx,40(%eax) - movl 28(%esi),%eax - # saved r[10] - # ################## Calculate word 11 - xorl %ecx,%ecx - # mul a[7]*b[4] - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[6]*b[5] - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - # mul a[5]*b[6] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - movl %ebp,44(%eax) - movl 28(%esi),%eax - # saved r[11] - # ################## Calculate word 12 - xorl %ebp,%ebp - # mul a[7]*b[5] - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[6]*b[6] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[7] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - movl %ebx,48(%eax) - movl 28(%esi),%eax - # saved r[12] - # ################## Calculate word 13 - xorl %ebx,%ebx - # mul a[7]*b[6] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - movl %ecx,52(%eax) - movl 28(%esi),%eax - # saved r[13] - # ################## Calculate word 14 - xorl %ecx,%ecx - # mul a[7]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%eax) - # saved r[14] - # save r[15] - movl %ebx,60(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_mul_comba4 -.align 4 -_bn_mul_comba4: -L_bn_mul_comba4_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - # ################## Calculate word 0 - xorl %ebp,%ebp - # mul a[0]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 - xorl %ebx,%ebx - # mul a[1]*b[0] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 - xorl %ecx,%ecx - # mul a[2]*b[0] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[1] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 - xorl %ebp,%ebp - # mul a[3]*b[0] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[1] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[2] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 12(%esi),%eax - # saved r[3] - # ################## Calculate word 4 - xorl %ebx,%ebx - # mul a[3]*b[1] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[2] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[3] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 12(%esi),%eax - # saved r[4] - # ################## Calculate word 5 - xorl %ecx,%ecx - # mul a[3]*b[2] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[3] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 12(%esi),%eax - # saved r[5] - # ################## Calculate word 6 - xorl %ebp,%ebp - # mul a[3]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%eax) - # saved r[6] - # save r[7] - movl %ecx,28(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_sqr_comba8 -.align 4 -_bn_sqr_comba8: -L_bn_sqr_comba8_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - # ############### Calculate word 0 - xorl %ebp,%ebp - # sqr a[0]*a[0] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 - xorl %ebx,%ebx - # sqr a[1]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 - xorl %ecx,%ecx - # sqr a[2]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - # sqr a[1]*a[1] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 - xorl %ebp,%ebp - # sqr a[3]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[2]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl (%esi),%edx - # saved r[3] - # ############### Calculate word 4 - xorl %ebx,%ebx - # sqr a[4]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 12(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - # sqr a[3]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - # sqr a[2]*a[2] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl (%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 20(%esi),%eax - # saved r[4] - # ############### Calculate word 5 - xorl %ecx,%ecx - # sqr a[5]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - movl 4(%esi),%edx - # sqr a[4]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - # sqr a[3]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - movl (%esi),%edx - # saved r[5] - # ############### Calculate word 6 - xorl %ebp,%ebp - # sqr a[6]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[5]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl 8(%esi),%edx - # sqr a[4]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - # sqr a[3]*a[3] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,24(%edi) - movl 28(%esi),%eax - # saved r[6] - # ############### Calculate word 7 - xorl %ebx,%ebx - # sqr a[7]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - # sqr a[6]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - movl 8(%esi),%edx - # sqr a[5]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%eax - adcl $0,%ebx - movl 12(%esi),%edx - # sqr a[4]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,28(%edi) - movl 4(%esi),%edx - # saved r[7] - # ############### Calculate word 8 - xorl %ecx,%ecx - # sqr a[7]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - # sqr a[6]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 20(%esi),%eax - adcl $0,%ecx - movl 12(%esi),%edx - # sqr a[5]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - # sqr a[4]*a[4] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl 8(%esi),%edx - adcl $0,%ecx - movl %ebp,32(%edi) - movl 28(%esi),%eax - # saved r[8] - # ############### Calculate word 9 - xorl %ebp,%ebp - # sqr a[7]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - movl 12(%esi),%edx - # sqr a[6]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 16(%esi),%edx - # sqr a[5]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 28(%esi),%eax - adcl $0,%ebp - movl %ebx,36(%edi) - movl 12(%esi),%edx - # saved r[9] - # ############### Calculate word 10 - xorl %ebx,%ebx - # sqr a[7]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 16(%esi),%edx - # sqr a[6]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - # sqr a[5]*a[5] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%edx - adcl $0,%ebx - movl %ecx,40(%edi) - movl 28(%esi),%eax - # saved r[10] - # ############### Calculate word 11 - xorl %ecx,%ecx - # sqr a[7]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 20(%esi),%edx - # sqr a[6]*a[5] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 28(%esi),%eax - adcl $0,%ecx - movl %ebp,44(%edi) - movl 20(%esi),%edx - # saved r[11] - # ############### Calculate word 12 - xorl %ebp,%ebp - # sqr a[7]*a[5] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - # sqr a[6]*a[6] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%edx - adcl $0,%ebp - movl %ebx,48(%edi) - movl 28(%esi),%eax - # saved r[12] - # ############### Calculate word 13 - xorl %ebx,%ebx - # sqr a[7]*a[6] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,52(%edi) - # saved r[13] - # ############### Calculate word 14 - xorl %ecx,%ecx - # sqr a[7]*a[7] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%edi) - # saved r[14] - movl %ebx,60(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_sqr_comba4 -.align 4 -_bn_sqr_comba4: -L_bn_sqr_comba4_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - # ############### Calculate word 0 - xorl %ebp,%ebp - # sqr a[0]*a[0] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 - xorl %ebx,%ebx - # sqr a[1]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 - xorl %ecx,%ecx - # sqr a[2]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - # sqr a[1]*a[1] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 - xorl %ebp,%ebp - # sqr a[3]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[2]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl 4(%esi),%edx - # saved r[3] - # ############### Calculate word 4 - xorl %ebx,%ebx - # sqr a[3]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - # sqr a[2]*a[2] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 12(%esi),%eax - # saved r[4] - # ############### Calculate word 5 - xorl %ecx,%ecx - # sqr a[3]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - # saved r[5] - # ############### Calculate word 6 - xorl %ebp,%ebp - # sqr a[3]*a[3] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%edi) - # saved r[6] - movl %ecx,28(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s b/deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s deleted file mode 100644 index 6aa546e3389c37..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s +++ /dev/null @@ -1,344 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-gf2m.s" -.text -.align 4 -__mul_1x1_mmx: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - andl $1073741823,%ecx - leal (%edx,%edx,1),%ebp - movl $0,(%esp) - andl $2147483647,%edx - movd %eax,%mm2 - movd %ebx,%mm3 - movl %ecx,4(%esp) - xorl %edx,%ecx - pxor %mm5,%mm5 - pxor %mm4,%mm4 - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - pcmpgtd %mm2,%mm5 - paddd %mm2,%mm2 - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - pand %mm3,%mm5 - pcmpgtd %mm2,%mm4 - movl %ecx,20(%esp) - xorl %ecx,%ebp - psllq $31,%mm5 - pand %mm3,%mm4 - movl %edx,24(%esp) - movl $7,%esi - movl %ebp,28(%esp) - movl %esi,%ebp - andl %ebx,%esi - shrl $3,%ebx - movl %ebp,%edi - psllq $30,%mm4 - andl %ebx,%edi - shrl $3,%ebx - movd (%esp,%esi,4),%mm0 - movl %ebp,%esi - andl %ebx,%esi - shrl $3,%ebx - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $3,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $6,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $9,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $12,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $15,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $18,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $21,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $24,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - pxor %mm4,%mm0 - psllq $27,%mm2 - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - pxor %mm5,%mm0 - psllq $30,%mm1 - addl $36,%esp - pxor %mm1,%mm0 - ret -.align 4 -__mul_1x1_ialu: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - leal (,%eax,4),%ebp - andl $1073741823,%ecx - leal (%eax,%eax,1),%edi - sarl $31,%eax - movl $0,(%esp) - andl $2147483647,%edx - movl %ecx,4(%esp) - xorl %edx,%ecx - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - movl %ecx,20(%esp) - xorl %ecx,%ebp - sarl $31,%edi - andl %ebx,%eax - movl %edx,24(%esp) - andl %ebx,%edi - movl %ebp,28(%esp) - movl %eax,%edx - shll $31,%eax - movl %edi,%ecx - shrl $1,%edx - movl $7,%esi - shll $30,%edi - andl %ebx,%esi - shrl $2,%ecx - xorl %edi,%eax - shrl $3,%ebx - movl $7,%edi - andl %ebx,%edi - shrl $3,%ebx - xorl %ecx,%edx - xorl (%esp,%esi,4),%eax - movl $7,%esi - andl %ebx,%esi - shrl $3,%ebx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $3,%ebp - andl %ebx,%edi - shrl $29,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $6,%ecx - andl %ebx,%esi - shrl $26,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $9,%ebp - andl %ebx,%edi - shrl $23,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $12,%ecx - andl %ebx,%esi - shrl $20,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $15,%ebp - andl %ebx,%edi - shrl $17,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $18,%ecx - andl %ebx,%esi - shrl $14,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $21,%ebp - andl %ebx,%edi - shrl $11,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $24,%ecx - andl %ebx,%esi - shrl $8,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl %ebp,%ecx - shll $27,%ebp - movl (%esp,%esi,4),%edi - shrl $5,%ecx - movl %edi,%esi - xorl %ebp,%eax - shll $30,%edi - xorl %ecx,%edx - shrl $2,%esi - xorl %edi,%eax - xorl %esi,%edx - addl $36,%esp - ret -.globl _bn_GF2m_mul_2x2 -.align 4 -_bn_GF2m_mul_2x2: -L_bn_GF2m_mul_2x2_begin: - call L000PIC_me_up -L000PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000PIC_me_up(%edx),%edx - movl (%edx),%eax - movl 4(%edx),%edx - testl $8388608,%eax - jz L001ialu - testl $16777216,%eax - jz L002mmx - testl $2,%edx - jz L002mmx - movups 8(%esp),%xmm0 - shufps $177,%xmm0,%xmm0 -.byte 102,15,58,68,192,1 - movl 4(%esp),%eax - movups %xmm0,(%eax) - ret -.align 4,0x90 -L002mmx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%eax - movl 32(%esp),%ebx - call __mul_1x1_mmx - movq %mm0,%mm7 - movl 28(%esp),%eax - movl 36(%esp),%ebx - call __mul_1x1_mmx - movq %mm0,%mm6 - movl 24(%esp),%eax - movl 32(%esp),%ebx - xorl 28(%esp),%eax - xorl 36(%esp),%ebx - call __mul_1x1_mmx - pxor %mm7,%mm0 - movl 20(%esp),%eax - pxor %mm6,%mm0 - movq %mm0,%mm2 - psllq $32,%mm0 - popl %edi - psrlq $32,%mm2 - popl %esi - pxor %mm6,%mm0 - popl %ebx - pxor %mm7,%mm2 - movq %mm0,(%eax) - popl %ebp - movq %mm2,8(%eax) - emms - ret -.align 4,0x90 -L001ialu: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $20,%esp - movl 44(%esp),%eax - movl 52(%esp),%ebx - call __mul_1x1_ialu - movl %eax,8(%esp) - movl %edx,12(%esp) - movl 48(%esp),%eax - movl 56(%esp),%ebx - call __mul_1x1_ialu - movl %eax,(%esp) - movl %edx,4(%esp) - movl 44(%esp),%eax - movl 52(%esp),%ebx - xorl 48(%esp),%eax - xorl 56(%esp),%ebx - call __mul_1x1_ialu - movl 40(%esp),%ebp - movl (%esp),%ebx - movl 4(%esp),%ecx - movl 8(%esp),%edi - movl 12(%esp),%esi - xorl %edx,%eax - xorl %ecx,%edx - xorl %ebx,%eax - movl %ebx,(%ebp) - xorl %edi,%edx - movl %esi,12(%ebp) - xorl %esi,%eax - addl $20,%esp - xorl %esi,%edx - popl %edi - xorl %edx,%eax - popl %esi - movl %edx,8(%ebp) - popl %ebx - movl %eax,4(%ebp) - popl %ebp - ret -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -.byte 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s b/deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s deleted file mode 100644 index 7bc58d24e0e624..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s +++ /dev/null @@ -1,476 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-mont.s" -.text -.globl _bn_mul_mont -.align 4 -_bn_mul_mont: -L_bn_mul_mont_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %eax,%eax - movl 40(%esp),%edi - cmpl $4,%edi - jl L000just_leave - leal 20(%esp),%esi - leal 24(%esp),%edx - addl $2,%edi - negl %edi - leal -32(%esp,%edi,4),%ebp - negl %edi - movl %ebp,%eax - subl %edx,%eax - andl $2047,%eax - subl %eax,%ebp - xorl %ebp,%edx - andl $2048,%edx - xorl $2048,%edx - subl %edx,%ebp - andl $-64,%ebp - movl %esp,%eax - subl %ebp,%eax - andl $-4096,%eax - movl %esp,%edx - leal (%ebp,%eax,1),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja L001page_walk - jmp L002page_walk_done -.align 4,0x90 -L001page_walk: - leal -4096(%esp),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja L001page_walk -L002page_walk_done: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%ebp - movl 16(%esi),%esi - movl (%esi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %ebp,16(%esp) - movl %esi,20(%esp) - leal -3(%edi),%ebx - movl %edx,24(%esp) - call L003PIC_me_up -L003PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L003PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L004non_sse2 - movl $-1,%eax - movd %eax,%mm7 - movl 8(%esp),%esi - movl 12(%esp),%edi - movl 16(%esp),%ebp - xorl %edx,%edx - xorl %ecx,%ecx - movd (%edi),%mm4 - movd (%esi),%mm5 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - movq %mm5,%mm2 - movq %mm5,%mm0 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - incl %ecx -.align 4,0x90 -L0051st: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - leal 1(%ecx),%ecx - cmpl %ebx,%ecx - jl L0051st - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm2,%mm3 - movq %mm3,32(%esp,%ebx,4) - incl %edx -L006outer: - xorl %ecx,%ecx - movd (%edi,%edx,4),%mm4 - movd (%esi),%mm5 - movd 32(%esp),%mm6 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - paddq %mm6,%mm5 - movq %mm5,%mm0 - movq %mm5,%mm2 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 36(%esp),%mm6 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm6,%mm2 - incl %ecx - decl %ebx -L007inner: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - movd 36(%esp,%ecx,4),%mm6 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - paddq %mm6,%mm2 - decl %ebx - leal 1(%ecx),%ecx - jnz L007inner - movl %ecx,%ebx - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - movd 36(%esp,%ebx,4),%mm6 - paddq %mm2,%mm3 - paddq %mm6,%mm3 - movq %mm3,32(%esp,%ebx,4) - leal 1(%edx),%edx - cmpl %ebx,%edx - jle L006outer - emms - jmp L008common_tail -.align 4,0x90 -L004non_sse2: - movl 8(%esp),%esi - leal 1(%ebx),%ebp - movl 12(%esp),%edi - xorl %ecx,%ecx - movl %esi,%edx - andl $1,%ebp - subl %edi,%edx - leal 4(%edi,%ebx,4),%eax - orl %edx,%ebp - movl (%edi),%edi - jz L009bn_sqr_mont - movl %eax,28(%esp) - movl (%esi),%eax - xorl %edx,%edx -.align 4,0x90 -L010mull: - movl %edx,%ebp - mull %edi - addl %eax,%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - movl (%esi,%ecx,4),%eax - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl L010mull - movl %edx,%ebp - mull %edi - movl 20(%esp),%edi - addl %ebp,%eax - movl 16(%esp),%esi - adcl $0,%edx - imull 32(%esp),%edi - movl %eax,32(%esp,%ebx,4) - xorl %ecx,%ecx - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - movl (%esi),%eax - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - incl %ecx - jmp L0112ndmadd -.align 4,0x90 -L0121stmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl L0121stmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - addl %eax,%ebp - adcl $0,%edx - imull 32(%esp),%edi - xorl %ecx,%ecx - addl 36(%esp,%ebx,4),%edx - movl %ebp,32(%esp,%ebx,4) - adcl $0,%ecx - movl (%esi),%eax - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - movl $1,%ecx -.align 4,0x90 -L0112ndmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl L0112ndmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - xorl %eax,%eax - movl 12(%esp),%ecx - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - leal 4(%ecx),%ecx - movl %edx,32(%esp,%ebx,4) - cmpl 28(%esp),%ecx - movl %eax,36(%esp,%ebx,4) - je L008common_tail - movl (%ecx),%edi - movl 8(%esp),%esi - movl %ecx,12(%esp) - xorl %ecx,%ecx - xorl %edx,%edx - movl (%esi),%eax - jmp L0121stmadd -.align 4,0x90 -L009bn_sqr_mont: - movl %ebx,(%esp) - movl %ecx,12(%esp) - movl %edi,%eax - mull %edi - movl %eax,32(%esp) - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx - incl %ecx -.align 4,0x90 -L013sqr: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal 1(%ecx),%ecx - adcl $0,%edx - leal (%ebx,%eax,2),%ebp - shrl $31,%eax - cmpl (%esp),%ecx - movl %eax,%ebx - movl %ebp,28(%esp,%ecx,4) - jl L013sqr - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - leal (%ebx,%eax,2),%ebp - imull 32(%esp),%edi - shrl $31,%eax - movl %ebp,32(%esp,%ecx,4) - leal (%eax,%edx,2),%ebp - movl (%esi),%eax - shrl $31,%edx - movl %ebp,36(%esp,%ecx,4) - movl %edx,40(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - movl %ecx,%ebx - adcl $0,%edx - movl 4(%esi),%eax - movl $1,%ecx -.align 4,0x90 -L0143rdmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - movl 4(%esi,%ecx,4),%eax - adcl $0,%edx - movl %ebp,28(%esp,%ecx,4) - movl %edx,%ebp - mull %edi - addl 36(%esp,%ecx,4),%ebp - leal 2(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl L0143rdmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - movl 12(%esp),%ecx - xorl %eax,%eax - movl 8(%esp),%esi - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - movl %edx,32(%esp,%ebx,4) - cmpl %ebx,%ecx - movl %eax,36(%esp,%ebx,4) - je L008common_tail - movl 4(%esi,%ecx,4),%edi - leal 1(%ecx),%ecx - movl %edi,%eax - movl %ecx,12(%esp) - mull %edi - addl 32(%esp,%ecx,4),%eax - adcl $0,%edx - movl %eax,32(%esp,%ecx,4) - xorl %ebp,%ebp - cmpl %ebx,%ecx - leal 1(%ecx),%ecx - je L015sqrlast - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx -.align 4,0x90 -L016sqradd: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal (%eax,%eax,1),%ebp - adcl $0,%edx - shrl $31,%eax - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%eax - addl %ebx,%ebp - adcl $0,%eax - cmpl (%esp),%ecx - movl %ebp,28(%esp,%ecx,4) - movl %eax,%ebx - jle L016sqradd - movl %edx,%ebp - addl %edx,%edx - shrl $31,%ebp - addl %ebx,%edx - adcl $0,%ebp -L015sqrlast: - movl 20(%esp),%edi - movl 16(%esp),%esi - imull 32(%esp),%edi - addl 32(%esp,%ecx,4),%edx - movl (%esi),%eax - adcl $0,%ebp - movl %edx,32(%esp,%ecx,4) - movl %ebp,36(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - leal -1(%ecx),%ebx - adcl $0,%edx - movl $1,%ecx - movl 4(%esi),%eax - jmp L0143rdmadd -.align 4,0x90 -L008common_tail: - movl 16(%esp),%ebp - movl 4(%esp),%edi - leal 32(%esp),%esi - movl (%esi),%eax - movl %ebx,%ecx - xorl %edx,%edx -.align 4,0x90 -L017sub: - sbbl (%ebp,%edx,4),%eax - movl %eax,(%edi,%edx,4) - decl %ecx - movl 4(%esi,%edx,4),%eax - leal 1(%edx),%edx - jge L017sub - sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi -.align 4,0x90 -L018copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) - movl %ecx,32(%esp,%ebx,4) - decl %ebx - jge L018copy - movl 24(%esp),%esp - movl $1,%eax -L000just_leave: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -.byte 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -.byte 111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/camellia/cmll-x86.s b/deps/openssl/asm/x86-macosx-gas/camellia/cmll-x86.s deleted file mode 100644 index 2367cee780242b..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/camellia/cmll-x86.s +++ /dev/null @@ -1,2353 +0,0 @@ -.file "cmll-586.s" -.text -.globl _Camellia_EncryptBlock_Rounds -.align 4 -_Camellia_EncryptBlock_Rounds: -L_Camellia_EncryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call L000pic_point -L000pic_point: - popl %ebp - leal LCamellia_SBOX-L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _Camellia_EncryptBlock -.align 4 -_Camellia_EncryptBlock: -L_Camellia_EncryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp L_Camellia_EncryptBlock_Rounds_begin -.globl _Camellia_encrypt -.align 4 -_Camellia_encrypt: -L_Camellia_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call L001pic_point -L001pic_point: - popl %ebp - leal LCamellia_SBOX-L001pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_Camellia_encrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 16(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 4,0x90 -L002loop: - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 52(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 56(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 60(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 64(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - addl $64,%edi - cmpl 20(%esp),%edi - je L003done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 12(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 4(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl 8(%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl 16(%edi),%esi - movl %edx,16(%esp) - jmp L002loop -.align 3,0x90 -L003done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.globl _Camellia_DecryptBlock_Rounds -.align 4 -_Camellia_DecryptBlock_Rounds: -L_Camellia_DecryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call L004pic_point -L004pic_point: - popl %ebp - leal LCamellia_SBOX-L004pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _Camellia_DecryptBlock -.align 4 -_Camellia_DecryptBlock: -L_Camellia_DecryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp L_Camellia_DecryptBlock_Rounds_begin -.globl _Camellia_decrypt -.align 4 -_Camellia_decrypt: -L_Camellia_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call L005pic_point -L005pic_point: - popl %ebp - leal LCamellia_SBOX-L005pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_Camellia_decrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl -8(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 4,0x90 -L006loop: - xorl %esi,%eax - xorl -4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -16(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -24(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -32(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -40(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -48(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -56(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - subl $64,%edi - cmpl 20(%esp),%edi - je L007done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 4(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 12(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl (%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl -8(%edi),%esi - movl %edx,16(%esp) - jmp L006loop -.align 3,0x90 -L007done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%ecx - xorl 12(%edi),%edx - xorl (%edi),%eax - xorl 4(%edi),%ebx - ret -.globl _Camellia_Ekeygen -.align 4 -_Camellia_Ekeygen: -L_Camellia_Ekeygen_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $16,%esp - movl 36(%esp),%ebp - movl 40(%esp),%esi - movl 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - cmpl $128,%ebp - je L0081st128 - movl 16(%esi),%eax - movl 20(%esi),%ebx - cmpl $192,%ebp - je L0091st192 - movl 24(%esi),%ecx - movl 28(%esi),%edx - jmp L0101st256 -.align 2,0x90 -L0091st192: - movl %eax,%ecx - movl %ebx,%edx - notl %ecx - notl %edx -.align 2,0x90 -L0101st256: - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%edi) - movl %ebx,36(%edi) - movl %ecx,40(%edi) - movl %edx,44(%edi) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx -.align 2,0x90 -L0081st128: - call L011pic_point -L011pic_point: - popl %ebp - leal LCamellia_SBOX-L011pic_point(%ebp),%ebp - leal LCamellia_SIGMA-LCamellia_SBOX(%ebp),%edi - movl (%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 8(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 16(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%esi - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 16(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 36(%esp),%esi - cmpl $128,%esi - jne L0122nd256 - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-80(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-76(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-72(%edi) - movl %edx,-68(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-64(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-60(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-56(%edi) - movl %edx,-52(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-32(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-28(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-16(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-12(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-8(%edi) - movl %edx,-4(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,32(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,36(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,40(%edi) - movl %eax,44(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,64(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,68(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,72(%edi) - movl %eax,76(%edi) - movl -128(%edi),%ebx - movl -124(%edi),%ecx - movl -120(%edi),%edx - movl -116(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,-48(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,-44(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-40(%edi) - movl %eax,-36(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-24(%edi) - movl %eax,-20(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,4(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,8(%edi) - movl %eax,12(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,16(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,20(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,48(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,52(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,56(%edi) - movl %eax,60(%edi) - movl $3,%eax - jmp L013done -.align 4,0x90 -L0122nd256: - movl 44(%esp),%esi - movl %eax,48(%esi) - movl %ebx,52(%esi) - movl %ecx,56(%esi) - movl %edx,60(%esi) - xorl 32(%esi),%eax - xorl 36(%esi),%ebx - xorl 40(%esi),%ecx - xorl 44(%esi),%edx - movl 32(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,-48(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,-44(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-40(%edi) - movl %edx,-36(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,32(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,36(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,40(%edi) - movl %edx,44(%edi) - movl %ebx,%ebp - shll $19,%ebx - movl %ecx,%esi - shrl $13,%esi - shll $19,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $19,%edx - movl %ebx,128(%edi) - shrl $13,%esi - orl %esi,%ecx - shrl $13,%ebp - movl %eax,%esi - shrl $13,%esi - movl %ecx,132(%edi) - shll $19,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,136(%edi) - movl %eax,140(%edi) - movl -96(%edi),%ebx - movl -92(%edi),%ecx - movl -88(%edi),%edx - movl -84(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-64(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-60(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-56(%edi) - movl %eax,-52(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,16(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,20(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ecx,%ebp - shll $2,%ecx - movl %edx,%esi - shrl $30,%esi - shll $2,%edx - orl %esi,%ecx - movl %eax,%esi - shll $2,%eax - movl %ecx,80(%edi) - shrl $30,%esi - orl %esi,%edx - shrl $30,%ebp - movl %ebx,%esi - shrl $30,%esi - movl %edx,84(%edi) - shll $2,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,88(%edi) - movl %ebx,92(%edi) - movl -80(%edi),%ecx - movl -76(%edi),%edx - movl -72(%edi),%eax - movl -68(%edi),%ebx - movl %ecx,%ebp - shll $15,%ecx - movl %edx,%esi - shrl $17,%esi - shll $15,%edx - orl %esi,%ecx - movl %eax,%esi - shll $15,%eax - movl %ecx,-80(%edi) - shrl $17,%esi - orl %esi,%edx - shrl $17,%ebp - movl %ebx,%esi - shrl $17,%esi - movl %edx,-76(%edi) - shll $15,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-72(%edi) - movl %ebx,-68(%edi) - movl %ecx,%ebp - shll $30,%ecx - movl %edx,%esi - shrl $2,%esi - shll $30,%edx - orl %esi,%ecx - movl %eax,%esi - shll $30,%eax - movl %ecx,-16(%edi) - shrl $2,%esi - orl %esi,%edx - shrl $2,%ebp - movl %ebx,%esi - shrl $2,%esi - movl %edx,-12(%edi) - shll $30,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-8(%edi) - movl %ebx,-4(%edi) - movl %edx,64(%edi) - movl %eax,68(%edi) - movl %ebx,72(%edi) - movl %ecx,76(%edi) - movl %edx,%ebp - shll $17,%edx - movl %eax,%esi - shrl $15,%esi - shll $17,%eax - orl %esi,%edx - movl %ebx,%esi - shll $17,%ebx - movl %edx,96(%edi) - shrl $15,%esi - orl %esi,%eax - shrl $15,%ebp - movl %ecx,%esi - shrl $15,%esi - movl %eax,100(%edi) - shll $17,%ecx - orl %esi,%ebx - orl %ebp,%ecx - movl %ebx,104(%edi) - movl %ecx,108(%edi) - movl -128(%edi),%edx - movl -124(%edi),%eax - movl -120(%edi),%ebx - movl -116(%edi),%ecx - movl %eax,%ebp - shll $13,%eax - movl %ebx,%esi - shrl $19,%esi - shll $13,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $13,%ecx - movl %eax,-32(%edi) - shrl $19,%esi - orl %esi,%ebx - shrl $19,%ebp - movl %edx,%esi - shrl $19,%esi - movl %ebx,-28(%edi) - shll $13,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-24(%edi) - movl %edx,-20(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,4(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %eax,%ebp - shll $17,%eax - movl %ebx,%esi - shrl $15,%esi - shll $17,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $17,%ecx - movl %eax,48(%edi) - shrl $15,%esi - orl %esi,%ebx - shrl $15,%ebp - movl %edx,%esi - shrl $15,%esi - movl %ebx,52(%edi) - shll $17,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,56(%edi) - movl %edx,60(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,112(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,116(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,120(%edi) - movl %eax,124(%edi) - movl $4,%eax -L013done: - leal 144(%edi),%edx - addl $16,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_Camellia_set_key -.align 4 -_private_Camellia_set_key: -L_private_Camellia_set_key_begin: - pushl %ebx - movl 8(%esp),%ecx - movl 12(%esp),%ebx - movl 16(%esp),%edx - movl $-1,%eax - testl %ecx,%ecx - jz L014done - testl %edx,%edx - jz L014done - movl $-2,%eax - cmpl $256,%ebx - je L015arg_ok - cmpl $192,%ebx - je L015arg_ok - cmpl $128,%ebx - jne L014done -.align 2,0x90 -L015arg_ok: - pushl %edx - pushl %ecx - pushl %ebx - call L_Camellia_Ekeygen_begin - addl $12,%esp - movl %eax,(%edx) - xorl %eax,%eax -.align 2,0x90 -L014done: - popl %ebx - ret -.align 6,0x90 -LCamellia_SIGMA: -.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0 -.align 6,0x90 -LCamellia_SBOX: -.long 1886416896,1886388336 -.long 2189591040,741081132 -.long 741092352,3014852787 -.long 3974949888,3233808576 -.long 3014898432,3840147684 -.long 656877312,1465319511 -.long 3233857536,3941204202 -.long 3857048832,2930639022 -.long 3840205824,589496355 -.long 2240120064,1802174571 -.long 1465341696,1162149957 -.long 892679424,2779054245 -.long 3941263872,3991732461 -.long 202116096,1330577487 -.long 2930683392,488439837 -.long 1094795520,2459041938 -.long 589505280,2256928902 -.long 4025478912,2947481775 -.long 1802201856,2088501372 -.long 2475922176,522125343 -.long 1162167552,1044250686 -.long 421075200,3705405660 -.long 2779096320,1583218782 -.long 555819264,185270283 -.long 3991792896,2795896998 -.long 235802112,960036921 -.long 1330597632,3587506389 -.long 1313754624,1566376029 -.long 488447232,3654877401 -.long 1701143808,1515847770 -.long 2459079168,1364262993 -.long 3183328512,1819017324 -.long 2256963072,2341142667 -.long 3099113472,2593783962 -.long 2947526400,4227531003 -.long 2408550144,2964324528 -.long 2088532992,1953759348 -.long 3958106880,724238379 -.long 522133248,4042260720 -.long 3469659648,2223243396 -.long 1044266496,3755933919 -.long 808464384,3419078859 -.long 3705461760,875823156 -.long 1600085760,1987444854 -.long 1583242752,1835860077 -.long 3318072576,2846425257 -.long 185273088,3520135377 -.long 437918208,67371012 -.long 2795939328,336855060 -.long 3789676800,976879674 -.long 960051456,3739091166 -.long 3402287616,286326801 -.long 3587560704,842137650 -.long 1195853568,2627469468 -.long 1566399744,1397948499 -.long 1027423488,4075946226 -.long 3654932736,4278059262 -.long 16843008,3486449871 -.long 1515870720,3284336835 -.long 3604403712,2054815866 -.long 1364283648,606339108 -.long 1448498688,3907518696 -.long 1819044864,1616904288 -.long 1296911616,1768489065 -.long 2341178112,2863268010 -.long 218959104,2694840480 -.long 2593823232,2711683233 -.long 1717986816,1650589794 -.long 4227595008,1414791252 -.long 3435973632,505282590 -.long 2964369408,3772776672 -.long 757935360,1684275300 -.long 1953788928,269484048 -.long 303174144,0 -.long 724249344,2745368739 -.long 538976256,1970602101 -.long 4042321920,2324299914 -.long 2981212416,3873833190 -.long 2223277056,151584777 -.long 2576980224,3722248413 -.long 3755990784,2273771655 -.long 1280068608,2206400643 -.long 3419130624,3452764365 -.long 3267543552,2425356432 -.long 875836416,1936916595 -.long 2122219008,4143317238 -.long 1987474944,2644312221 -.long 84215040,3216965823 -.long 1835887872,1381105746 -.long 3082270464,3638034648 -.long 2846468352,3368550600 -.long 825307392,3334865094 -.long 3520188672,2172715137 -.long 387389184,1869545583 -.long 67372032,320012307 -.long 3621246720,1667432547 -.long 336860160,3924361449 -.long 1482184704,2812739751 -.long 976894464,2677997727 -.long 1633771776,3166437564 -.long 3739147776,690552873 -.long 454761216,4193845497 -.long 286331136,791609391 -.long 471604224,3031695540 -.long 842150400,2021130360 -.long 252645120,101056518 -.long 2627509248,3890675943 -.long 370546176,1903231089 -.long 1397969664,3570663636 -.long 404232192,2880110763 -.long 4076007936,2290614408 -.long 572662272,2374828173 -.long 4278124032,1920073842 -.long 1145324544,3115909305 -.long 3486502656,4177002744 -.long 2998055424,2896953516 -.long 3284386560,909508662 -.long 3048584448,707395626 -.long 2054846976,1010565180 -.long 2442236160,4059103473 -.long 606348288,1077936192 -.long 134744064,3553820883 -.long 3907577856,3149594811 -.long 2829625344,1128464451 -.long 1616928768,353697813 -.long 4244438016,2913796269 -.long 1768515840,2004287607 -.long 1347440640,2155872384 -.long 2863311360,2189557890 -.long 3503345664,3974889708 -.long 2694881280,656867367 -.long 2105376000,3856990437 -.long 2711724288,2240086149 -.long 2307492096,892665909 -.long 1650614784,202113036 -.long 2543294208,1094778945 -.long 1414812672,4025417967 -.long 1532713728,2475884691 -.long 505290240,421068825 -.long 2509608192,555810849 -.long 3772833792,235798542 -.long 4294967040,1313734734 -.long 1684300800,1701118053 -.long 3537031680,3183280317 -.long 269488128,3099066552 -.long 3301229568,2408513679 -.long 0,3958046955 -.long 1212696576,3469607118 -.long 2745410304,808452144 -.long 4160222976,1600061535 -.long 1970631936,3318022341 -.long 3688618752,437911578 -.long 2324335104,3789619425 -.long 50529024,3402236106 -.long 3873891840,1195835463 -.long 3671775744,1027407933 -.long 151587072,16842753 -.long 1061109504,3604349142 -.long 3722304768,1448476758 -.long 2492765184,1296891981 -.long 2273806080,218955789 -.long 1549556736,1717960806 -.long 2206434048,3435921612 -.long 33686016,757923885 -.long 3452816640,303169554 -.long 1246382592,538968096 -.long 2425393152,2981167281 -.long 858993408,2576941209 -.long 1936945920,1280049228 -.long 1734829824,3267494082 -.long 4143379968,2122186878 -.long 4092850944,84213765 -.long 2644352256,3082223799 -.long 2139062016,825294897 -.long 3217014528,387383319 -.long 3806519808,3621191895 -.long 1381126656,1482162264 -.long 2610666240,1633747041 -.long 3638089728,454754331 -.long 640034304,471597084 -.long 3368601600,252641295 -.long 926365440,370540566 -.long 3334915584,404226072 -.long 993737472,572653602 -.long 2172748032,1145307204 -.long 2526451200,2998010034 -.long 1869573888,3048538293 -.long 1263225600,2442199185 -.long 320017152,134742024 -.long 3200171520,2829582504 -.long 1667457792,4244373756 -.long 774778368,1347420240 -.long 3924420864,3503292624 -.long 2038003968,2105344125 -.long 2812782336,2307457161 -.long 2358021120,2543255703 -.long 2678038272,1532690523 -.long 1852730880,2509570197 -.long 3166485504,4294902015 -.long 2391707136,3536978130 -.long 690563328,3301179588 -.long 4126536960,1212678216 -.long 4193908992,4160159991 -.long 3065427456,3688562907 -.long 791621376,50528259 -.long 4261281024,3671720154 -.long 3031741440,1061093439 -.long 1499027712,2492727444 -.long 2021160960,1549533276 -.long 2560137216,33685506 -.long 101058048,1246363722 -.long 1785358848,858980403 -.long 3890734848,1734803559 -.long 1179010560,4092788979 -.long 1903259904,2139029631 -.long 3132799488,3806462178 -.long 3570717696,2610626715 -.long 623191296,640024614 -.long 2880154368,926351415 -.long 1111638528,993722427 -.long 2290649088,2526412950 -.long 2728567296,1263206475 -.long 2374864128,3200123070 -.long 4210752000,774766638 -.long 1920102912,2037973113 -.long 117901056,2357985420 -.long 3115956480,1852702830 -.long 1431655680,2391670926 -.long 4177065984,4126474485 -.long 4008635904,3065381046 -.long 2896997376,4261216509 -.long 168430080,1499005017 -.long 909522432,2560098456 -.long 1229539584,1785331818 -.long 707406336,1178992710 -.long 1751672832,3132752058 -.long 1010580480,623181861 -.long 943208448,1111621698 -.long 4059164928,2728525986 -.long 2762253312,4210688250 -.long 1077952512,117899271 -.long 673720320,1431634005 -.long 3553874688,4008575214 -.long 2071689984,168427530 -.long 3149642496,1229520969 -.long 3385444608,1751646312 -.long 1128481536,943194168 -.long 3250700544,2762211492 -.long 353703168,673710120 -.long 3823362816,2071658619 -.long 2913840384,3385393353 -.long 4109693952,3250651329 -.long 2004317952,3823304931 -.long 3351758592,4109631732 -.long 2155905024,3351707847 -.long 2661195264,2661154974 -.long 14737632,939538488 -.long 328965,1090535745 -.long 5789784,369104406 -.long 14277081,1979741814 -.long 6776679,3640711641 -.long 5131854,2466288531 -.long 8487297,1610637408 -.long 13355979,4060148466 -.long 13224393,1912631922 -.long 723723,3254829762 -.long 11447982,2868947883 -.long 6974058,2583730842 -.long 14013909,1962964341 -.long 1579032,100664838 -.long 6118749,1459640151 -.long 8553090,2684395680 -.long 4605510,2432733585 -.long 14671839,4144035831 -.long 14079702,3036722613 -.long 2565927,3372272073 -.long 9079434,2717950626 -.long 3289650,2348846220 -.long 4934475,3523269330 -.long 4342338,2415956112 -.long 14408667,4127258358 -.long 1842204,117442311 -.long 10395294,2801837991 -.long 10263708,654321447 -.long 3815994,2382401166 -.long 13290186,2986390194 -.long 2434341,1224755529 -.long 8092539,3724599006 -.long 855309,1124090691 -.long 7434609,1543527516 -.long 6250335,3607156695 -.long 2039583,3338717127 -.long 16316664,1040203326 -.long 14145495,4110480885 -.long 4079166,2399178639 -.long 10329501,1728079719 -.long 8158332,520101663 -.long 6316128,402659352 -.long 12171705,1845522030 -.long 12500670,2936057775 -.long 12369084,788541231 -.long 9145227,3791708898 -.long 1447446,2231403909 -.long 3421236,218107149 -.long 5066061,1392530259 -.long 12829635,4026593520 -.long 7500402,2617285788 -.long 9803157,1694524773 -.long 11250603,3925928682 -.long 9342606,2734728099 -.long 12237498,2919280302 -.long 8026746,2650840734 -.long 11776947,3959483628 -.long 131586,2147516544 -.long 11842740,754986285 -.long 11382189,1795189611 -.long 10658466,2818615464 -.long 11316396,721431339 -.long 14211288,905983542 -.long 10132122,2785060518 -.long 1513239,3305162181 -.long 1710618,2248181382 -.long 3487029,1291865421 -.long 13421772,855651123 -.long 16250871,4244700669 -.long 10066329,1711302246 -.long 6381921,1476417624 -.long 5921370,2516620950 -.long 15263976,973093434 -.long 2368548,150997257 -.long 5658198,2499843477 -.long 4210752,268439568 -.long 14803425,2013296760 -.long 6513507,3623934168 -.long 592137,1107313218 -.long 3355443,3422604492 -.long 12566463,4009816047 -.long 10000536,637543974 -.long 9934743,3842041317 -.long 8750469,1627414881 -.long 6842472,436214298 -.long 16579836,1056980799 -.long 15527148,989870907 -.long 657930,2181071490 -.long 14342874,3053500086 -.long 7303023,3674266587 -.long 5460819,3556824276 -.long 6447714,2550175896 -.long 10724259,3892373736 -.long 3026478,2332068747 -.long 526344,33554946 -.long 11513775,3942706155 -.long 2631720,167774730 -.long 11579568,738208812 -.long 7631988,486546717 -.long 12763842,2952835248 -.long 12434877,1862299503 -.long 3552822,2365623693 -.long 2236962,2281736328 -.long 3684408,234884622 -.long 6579300,419436825 -.long 1973790,2264958855 -.long 3750201,1308642894 -.long 2894892,184552203 -.long 10921638,2835392937 -.long 3158064,201329676 -.long 15066597,2030074233 -.long 4473924,285217041 -.long 16645629,2130739071 -.long 8947848,570434082 -.long 10461087,3875596263 -.long 6645093,1493195097 -.long 8882055,3774931425 -.long 7039851,3657489114 -.long 16053492,1023425853 -.long 2302755,3355494600 -.long 4737096,301994514 -.long 1052688,67109892 -.long 13750737,1946186868 -.long 5329233,1409307732 -.long 12632256,805318704 -.long 16382457,2113961598 -.long 13816530,3019945140 -.long 10526880,671098920 -.long 5592405,1426085205 -.long 10592673,1744857192 -.long 4276545,1342197840 -.long 16448250,3187719870 -.long 4408131,3489714384 -.long 1250067,3288384708 -.long 12895428,822096177 -.long 3092271,3405827019 -.long 11053224,704653866 -.long 11974326,2902502829 -.long 3947580,251662095 -.long 2829099,3389049546 -.long 12698049,1879076976 -.long 16777215,4278255615 -.long 13158600,838873650 -.long 10855845,1761634665 -.long 2105376,134219784 -.long 9013641,1644192354 -.long 0,0 -.long 9474192,603989028 -.long 4671303,3506491857 -.long 15724527,4211145723 -.long 15395562,3120609978 -.long 12040119,3976261101 -.long 1381653,1157645637 -.long 394758,2164294017 -.long 13487565,1929409395 -.long 11908533,1828744557 -.long 1184274,2214626436 -.long 8289918,2667618207 -.long 12303291,3993038574 -.long 2697513,1241533002 -.long 986895,3271607235 -.long 12105912,771763758 -.long 460551,3238052289 -.long 263172,16777473 -.long 10197915,3858818790 -.long 9737364,620766501 -.long 2171169,1207978056 -.long 6710886,2566953369 -.long 15132390,3103832505 -.long 13553358,3003167667 -.long 15592941,2063629179 -.long 15198183,4177590777 -.long 3881787,3456159438 -.long 16711422,3204497343 -.long 8355711,3741376479 -.long 12961221,1895854449 -.long 10790052,687876393 -.long 3618615,3439381965 -.long 11645361,1811967084 -.long 5000268,318771987 -.long 9539985,1677747300 -.long 7237230,2600508315 -.long 9276813,1660969827 -.long 7763574,2634063261 -.long 197379,3221274816 -.long 2960685,1258310475 -.long 14606046,3070277559 -.long 9868950,2768283045 -.long 2500134,2298513801 -.long 8224125,1593859935 -.long 13027014,2969612721 -.long 6052956,385881879 -.long 13882323,4093703412 -.long 15921906,3154164924 -.long 5197647,3540046803 -.long 1644825,1174423110 -.long 4144959,3472936911 -.long 14474460,922761015 -.long 7960953,1577082462 -.long 1907997,1191200583 -.long 5395026,2483066004 -.long 15461355,4194368250 -.long 15987699,4227923196 -.long 7171437,1526750043 -.long 6184542,2533398423 -.long 16514043,4261478142 -.long 6908265,1509972570 -.long 11711154,2885725356 -.long 15790320,1006648380 -.long 3223857,1275087948 -.long 789516,50332419 -.long 13948116,889206069 -.long 13619151,4076925939 -.long 9211020,587211555 -.long 14869218,3087055032 -.long 7697781,1560304989 -.long 11119017,1778412138 -.long 4868682,2449511058 -.long 5723991,3573601749 -.long 8684676,553656609 -.long 1118481,1140868164 -.long 4539717,1358975313 -.long 1776411,3321939654 -.long 16119285,2097184125 -.long 15000804,956315961 -.long 921102,2197848963 -.long 7566195,3691044060 -.long 11184810,2852170410 -.long 15856113,2080406652 -.long 14540253,1996519287 -.long 5855577,1442862678 -.long 1315860,83887365 -.long 7105644,452991771 -.long 9605778,2751505572 -.long 5526612,352326933 -.long 13684944,872428596 -.long 7895160,503324190 -.long 7368816,469769244 -.long 14935011,4160813304 -.long 4802889,1375752786 -.long 8421504,536879136 -.long 5263440,335549460 -.long 10987431,3909151209 -.long 16185078,3170942397 -.long 7829367,3707821533 -.long 9671571,3825263844 -.long 8816262,2701173153 -.long 8618883,3758153952 -.long 2763306,2315291274 -.long 13092807,4043370993 -.long 5987163,3590379222 -.long 15329769,2046851706 -.long 15658734,3137387451 -.long 9408399,3808486371 -.long 65793,1073758272 -.long 4013373,1325420367 -.globl _Camellia_cbc_encrypt -.align 4 -_Camellia_cbc_encrypt: -L_Camellia_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je L016enc_out - pushfl - cld - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 36(%esp),%edx - movl 40(%esp),%ebp - leal -64(%esp),%esi - andl $-64,%esi - leal -127(%edx),%edi - subl %esi,%edi - negl %edi - andl $960,%edi - subl %edi,%esi - movl 44(%esp),%edi - xchgl %esi,%esp - addl $4,%esp - movl %esi,20(%esp) - movl %eax,24(%esp) - movl %ebx,28(%esp) - movl %ecx,32(%esp) - movl %edx,36(%esp) - movl %ebp,40(%esp) - call L017pic_point -L017pic_point: - popl %ebp - leal LCamellia_SBOX-L017pic_point(%ebp),%ebp - movl $32,%esi -.align 2,0x90 -L018prefetch_sbox: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - leal 128(%ebp),%ebp - decl %esi - jnz L018prefetch_sbox - movl 36(%esp),%eax - subl $4096,%ebp - movl 24(%esp),%esi - movl 272(%eax),%edx - cmpl $0,%edi - je L019DECRYPT - movl 32(%esp),%ecx - movl 40(%esp),%edi - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %edx,16(%esp) - testl $4294967280,%ecx - jz L020enc_tail - movl (%edi),%eax - movl 4(%edi),%ebx -.align 2,0x90 -L021enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - bswap %eax - xorl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 24(%esp),%esi - movl 28(%esp),%edi - bswap %eax - bswap %ebx - bswap %ecx - movl %eax,(%edi) - bswap %edx - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%ecx - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edx - movl %edx,28(%esp) - subl $16,%ecx - testl $4294967280,%ecx - movl %ecx,32(%esp) - jnz L021enc_loop - testl $15,%ecx - jnz L020enc_tail - movl 40(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 20(%esp),%esp - popfl -L016enc_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 2,0x90 -L020enc_tail: - movl %edi,%eax - movl 28(%esp),%edi - pushl %eax - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je L022enc_in_place -.align 2,0x90 -.long 2767451785 - jmp L023enc_skip_in_place -L022enc_in_place: - leal (%edi,%ecx,1),%edi -L023enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2868115081 - popl %edi - movl 28(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,32(%esp) - jmp L021enc_loop -.align 4,0x90 -L019DECRYPT: - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %eax,16(%esp) - movl %edx,36(%esp) - cmpl 28(%esp),%esi - je L024dec_in_place - movl 40(%esp),%edi - movl %edi,44(%esp) -.align 2,0x90 -L025dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 44(%esp),%edi - movl 32(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc L026dec_partial - movl %esi,32(%esp) - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %esi,44(%esp) - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edi - movl %edi,28(%esp) - jnz L025dec_loop - movl 44(%esp),%edi -L027dec_end: - movl 40(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp L028dec_out -.align 2,0x90 -L026dec_partial: - leal 44(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%ecx - movl %edi,%esi - movl 28(%esp),%edi -.long 2767451785 - movl 24(%esp),%edi - jmp L027dec_end -.align 2,0x90 -L024dec_in_place: -L029dec_in_place_loop: - leal 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - bswap %eax - movl %edx,12(%edi) - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 40(%esp),%edi - movl 28(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,28(%esp) - leal 44(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 24(%esp),%esi - leal 16(%esi),%esi - movl %esi,24(%esp) - movl 32(%esp),%ecx - subl $16,%ecx - jc L030dec_in_place_partial - movl %ecx,32(%esp) - jnz L029dec_in_place_loop - jmp L028dec_out -.align 2,0x90 -L030dec_in_place_partial: - movl 28(%esp),%edi - leal 44(%esp),%esi - leal (%edi,%ecx,1),%edi - leal 16(%esi,%ecx,1),%esi - negl %ecx -.long 2767451785 -.align 2,0x90 -L028dec_out: - movl 20(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm/x86-macosx-gas/cast/cast-586.s b/deps/openssl/asm/x86-macosx-gas/cast/cast-586.s deleted file mode 100644 index 3e797b6145f527..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/cast/cast-586.s +++ /dev/null @@ -1,927 +0,0 @@ -.file "cast-586.s" -.text -.globl _CAST_encrypt -.align 4 -_CAST_encrypt: -L_CAST_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - # Load the 2 words - movl (%ebx),%edi - movl 4(%ebx),%esi - # Get short key flag - movl 128(%ebp),%eax - pushl %eax - xorl %eax,%eax - # round 0 - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 1 - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 2 - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 3 - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 4 - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 5 - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 6 - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 7 - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 8 - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 9 - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 10 - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 11 - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # test short key flag - popl %edx - orl %edx,%edx - jnz L000cast_enc_done - # round 12 - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 13 - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 14 - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 15 - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -L000cast_enc_done: - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _CAST_decrypt -.align 4 -_CAST_decrypt: -L_CAST_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - # Load the 2 words - movl (%ebx),%edi - movl 4(%ebx),%esi - # Get short key flag - movl 128(%ebp),%eax - orl %eax,%eax - jnz L001cast_dec_skip - xorl %eax,%eax - # round 15 - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 14 - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 13 - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 12 - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -L001cast_dec_skip: - # round 11 - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 10 - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 9 - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 8 - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 7 - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 6 - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 5 - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 4 - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 3 - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 2 - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 1 - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 0 - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _CAST_cbc_encrypt -.align 4 -_CAST_cbc_encrypt: -L_CAST_cbc_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 3 - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz L002decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz L003encrypt_finish -L004encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L004encrypt_loop -L003encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L005finish - call L006PIC_point -L006PIC_point: - popl %edx - leal L007cbc_enc_jmp_table-L006PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -L008ej7: - movb 6(%esi),%dh - shll $8,%edx -L009ej6: - movb 5(%esi),%dh -L010ej5: - movb 4(%esi),%dl -L011ej4: - movl (%esi),%ecx - jmp L012ejend -L013ej3: - movb 2(%esi),%ch - shll $8,%ecx -L014ej2: - movb 1(%esi),%ch -L015ej1: - movb (%esi),%cl -L012ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp L005finish -L002decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz L016decrypt_finish -L017decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L017decrypt_loop -L016decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L005finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -L018dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -L019dj6: - movb %dh,5(%edi) -L020dj5: - movb %dl,4(%edi) -L021dj4: - movl %ecx,(%edi) - jmp L022djend -L023dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -L024dj2: - movb %ch,1(%esi) -L025dj1: - movb %cl,(%esi) -L022djend: - jmp L005finish -L005finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L007cbc_enc_jmp_table: -.long 0 -.long L015ej1-L006PIC_point -.long L014ej2-L006PIC_point -.long L013ej3-L006PIC_point -.long L011ej4-L006PIC_point -.long L010ej5-L006PIC_point -.long L009ej6-L006PIC_point -.long L008ej7-L006PIC_point -.align 6,0x90 diff --git a/deps/openssl/asm/x86-macosx-gas/des/crypt586.s b/deps/openssl/asm/x86-macosx-gas/des/crypt586.s deleted file mode 100644 index 1731c53faac06e..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/des/crypt586.s +++ /dev/null @@ -1,880 +0,0 @@ -.file "crypt586.s" -.text -.globl _fcrypt_body -.align 4 -_fcrypt_body: -L_fcrypt_body_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - xorl %edi,%edi - xorl %esi,%esi - call L000PIC_me_up -L000PIC_me_up: - popl %edx - movl L_DES_SPtrans$non_lazy_ptr-L000PIC_me_up(%edx),%edx - pushl %edx - movl 28(%esp),%ebp - pushl $25 -L001start: - - # Round 0 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl (%ebp),%ebx - xorl %ebx,%eax - movl 4(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 1 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 8(%ebp),%ebx - xorl %ebx,%eax - movl 12(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 2 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 16(%ebp),%ebx - xorl %ebx,%eax - movl 20(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 3 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 24(%ebp),%ebx - xorl %ebx,%eax - movl 28(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 4 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 32(%ebp),%ebx - xorl %ebx,%eax - movl 36(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 5 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 40(%ebp),%ebx - xorl %ebx,%eax - movl 44(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 6 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 48(%ebp),%ebx - xorl %ebx,%eax - movl 52(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 7 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 56(%ebp),%ebx - xorl %ebx,%eax - movl 60(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 8 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 64(%ebp),%ebx - xorl %ebx,%eax - movl 68(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 9 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 72(%ebp),%ebx - xorl %ebx,%eax - movl 76(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 10 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 80(%ebp),%ebx - xorl %ebx,%eax - movl 84(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 11 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 88(%ebp),%ebx - xorl %ebx,%eax - movl 92(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 12 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 96(%ebp),%ebx - xorl %ebx,%eax - movl 100(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 13 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 104(%ebp),%ebx - xorl %ebx,%eax - movl 108(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 14 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 112(%ebp),%ebx - xorl %ebx,%eax - movl 116(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 15 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 120(%ebp),%ebx - xorl %ebx,%eax - movl 124(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - movl (%esp),%ebx - movl %edi,%eax - decl %ebx - movl %esi,%edi - movl %eax,%esi - movl %ebx,(%esp) - jnz L001start - - # FP - movl 28(%esp),%edx - rorl $1,%edi - movl %esi,%eax - xorl %edi,%esi - andl $0xaaaaaaaa,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $23,%eax - movl %eax,%esi - xorl %edi,%eax - andl $0x03fc03fc,%eax - xorl %eax,%esi - xorl %eax,%edi - - roll $10,%esi - movl %esi,%eax - xorl %edi,%esi - andl $0x33333333,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $18,%edi - movl %edi,%esi - xorl %eax,%edi - andl $0xfff0000f,%edi - xorl %edi,%esi - xorl %edi,%eax - - roll $12,%esi - movl %esi,%edi - xorl %eax,%esi - andl $0xf0f0f0f0,%esi - xorl %esi,%edi - xorl %esi,%eax - - rorl $4,%eax - movl %eax,(%edx) - movl %edi,4(%edx) - addl $8,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_DES_SPtrans$non_lazy_ptr: -.indirect_symbol _DES_SPtrans -.long 0 diff --git a/deps/openssl/asm/x86-macosx-gas/des/des-586.s b/deps/openssl/asm/x86-macosx-gas/des/des-586.s deleted file mode 100644 index 43354871fcd4fa..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/des/des-586.s +++ /dev/null @@ -1,1822 +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 Ldes_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 Ldes_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: -Ldes_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 diff --git a/deps/openssl/asm/x86-macosx-gas/md5/md5-586.s b/deps/openssl/asm/x86-macosx-gas/md5/md5-586.s deleted file mode 100644 index cd5dd459ca0337..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/md5/md5-586.s +++ /dev/null @@ -1,677 +0,0 @@ -.file "../openssl/crypto/md5/asm/md5-586.s" -.text -.globl _md5_block_asm_data_order -.align 4 -_md5_block_asm_data_order: -L_md5_block_asm_data_order_begin: - pushl %esi - pushl %edi - movl 12(%esp),%edi - movl 16(%esp),%esi - movl 20(%esp),%ecx - pushl %ebp - shll $6,%ecx - pushl %ebx - addl %esi,%ecx - subl $64,%ecx - movl (%edi),%eax - pushl %ecx - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx -L000start: - - # R0 section - movl %ecx,%edi - movl (%esi),%ebp - # R0 0 - xorl %edx,%edi - andl %ebx,%edi - leal 3614090360(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 4(%esi),%ebp - addl %ebx,%eax - # R0 1 - xorl %ecx,%edi - andl %eax,%edi - leal 3905402710(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 8(%esi),%ebp - addl %eax,%edx - # R0 2 - xorl %ebx,%edi - andl %edx,%edi - leal 606105819(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 12(%esi),%ebp - addl %edx,%ecx - # R0 3 - xorl %eax,%edi - andl %ecx,%edi - leal 3250441966(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 16(%esi),%ebp - addl %ecx,%ebx - # R0 4 - xorl %edx,%edi - andl %ebx,%edi - leal 4118548399(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 20(%esi),%ebp - addl %ebx,%eax - # R0 5 - xorl %ecx,%edi - andl %eax,%edi - leal 1200080426(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 24(%esi),%ebp - addl %eax,%edx - # R0 6 - xorl %ebx,%edi - andl %edx,%edi - leal 2821735955(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 28(%esi),%ebp - addl %edx,%ecx - # R0 7 - xorl %eax,%edi - andl %ecx,%edi - leal 4249261313(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 32(%esi),%ebp - addl %ecx,%ebx - # R0 8 - xorl %edx,%edi - andl %ebx,%edi - leal 1770035416(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 36(%esi),%ebp - addl %ebx,%eax - # R0 9 - xorl %ecx,%edi - andl %eax,%edi - leal 2336552879(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 40(%esi),%ebp - addl %eax,%edx - # R0 10 - xorl %ebx,%edi - andl %edx,%edi - leal 4294925233(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 44(%esi),%ebp - addl %edx,%ecx - # R0 11 - xorl %eax,%edi - andl %ecx,%edi - leal 2304563134(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 48(%esi),%ebp - addl %ecx,%ebx - # R0 12 - xorl %edx,%edi - andl %ebx,%edi - leal 1804603682(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 52(%esi),%ebp - addl %ebx,%eax - # R0 13 - xorl %ecx,%edi - andl %eax,%edi - leal 4254626195(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 56(%esi),%ebp - addl %eax,%edx - # R0 14 - xorl %ebx,%edi - andl %edx,%edi - leal 2792965006(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 60(%esi),%ebp - addl %edx,%ecx - # R0 15 - xorl %eax,%edi - andl %ecx,%edi - leal 1236535329(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 4(%esi),%ebp - addl %ecx,%ebx - - # R1 section - # R1 16 - leal 4129170786(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 24(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 17 - leal 3225465664(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 44(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 18 - leal 643717713(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl (%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 19 - leal 3921069994(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 20 - leal 3593408605(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 40(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 21 - leal 38016083(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 60(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 22 - leal 3634488961(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 16(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 23 - leal 3889429448(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 36(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 24 - leal 568446438(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 56(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 25 - leal 3275163606(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 12(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 26 - leal 4107603335(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 32(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 27 - leal 1163531501(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 52(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 28 - leal 2850285829(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 8(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 29 - leal 4243563512(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 28(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 30 - leal 1735328473(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 48(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 31 - leal 2368359562(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - # R2 section - # R2 32 - xorl %edx,%edi - xorl %ebx,%edi - leal 4294588738(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 32(%esi),%ebp - movl %ebx,%edi - # R2 33 - leal 2272392833(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 44(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 34 - xorl %ebx,%edi - xorl %edx,%edi - leal 1839030562(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 56(%esi),%ebp - movl %edx,%edi - # R2 35 - leal 4259657740(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 4(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 36 - xorl %edx,%edi - xorl %ebx,%edi - leal 2763975236(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 16(%esi),%ebp - movl %ebx,%edi - # R2 37 - leal 1272893353(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 28(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 38 - xorl %ebx,%edi - xorl %edx,%edi - leal 4139469664(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 40(%esi),%ebp - movl %edx,%edi - # R2 39 - leal 3200236656(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 52(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 40 - xorl %edx,%edi - xorl %ebx,%edi - leal 681279174(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl (%esi),%ebp - movl %ebx,%edi - # R2 41 - leal 3936430074(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 12(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 42 - xorl %ebx,%edi - xorl %edx,%edi - leal 3572445317(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 24(%esi),%ebp - movl %edx,%edi - # R2 43 - leal 76029189(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 36(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 44 - xorl %edx,%edi - xorl %ebx,%edi - leal 3654602809(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 48(%esi),%ebp - movl %ebx,%edi - # R2 45 - leal 3873151461(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 60(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 46 - xorl %ebx,%edi - xorl %edx,%edi - leal 530742520(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 8(%esi),%ebp - movl %edx,%edi - # R2 47 - leal 3299628645(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl (%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $23,%ebx - addl %ecx,%ebx - - # R3 section - # R3 48 - xorl %edx,%edi - orl %ebx,%edi - leal 4096336452(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 28(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 49 - orl %eax,%edi - leal 1126891415(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 56(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 50 - orl %edx,%edi - leal 2878612391(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 20(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 51 - orl %ecx,%edi - leal 4237533241(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 48(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 52 - orl %ebx,%edi - leal 1700485571(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 12(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 53 - orl %eax,%edi - leal 2399980690(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 40(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 54 - orl %edx,%edi - leal 4293915773(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 4(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 55 - orl %ecx,%edi - leal 2240044497(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 32(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 56 - orl %ebx,%edi - leal 1873313359(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 60(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 57 - orl %eax,%edi - leal 4264355552(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 24(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 58 - orl %edx,%edi - leal 2734768916(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 52(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 59 - orl %ecx,%edi - leal 1309151649(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 16(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 60 - orl %ebx,%edi - leal 4149444226(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 44(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 61 - orl %eax,%edi - leal 3174756917(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 8(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 62 - orl %edx,%edi - leal 718787259(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 36(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 63 - orl %ecx,%edi - leal 3951481745(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 24(%esp),%ebp - addl %edi,%ebx - addl $64,%esi - roll $21,%ebx - movl (%ebp),%edi - addl %ecx,%ebx - addl %edi,%eax - movl 4(%ebp),%edi - addl %edi,%ebx - movl 8(%ebp),%edi - addl %edi,%ecx - movl 12(%ebp),%edi - addl %edi,%edx - movl %eax,(%ebp) - movl %ebx,4(%ebp) - movl (%esp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - cmpl %esi,%edi - jae L000start - popl %eax - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm/x86-macosx-gas/modes/ghash-x86.s b/deps/openssl/asm/x86-macosx-gas/modes/ghash-x86.s deleted file mode 100644 index c68edef5be97d8..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/modes/ghash-x86.s +++ /dev/null @@ -1,1251 +0,0 @@ -.file "ghash-x86.s" -.text -.globl _gcm_gmult_4bit_x86 -.align 4 -_gcm_gmult_4bit_x86: -L_gcm_gmult_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%edi - movl 108(%esp),%esi - movl (%edi),%ebp - movl 4(%edi),%edx - movl 8(%edi),%ecx - movl 12(%edi),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) - movl %ebp,(%esp) - movl %edx,4(%esp) - movl %ecx,8(%esp) - movl %ebx,12(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp L000x86_loop -.align 4,0x90 -L000x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js L001x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp L000x86_loop -.align 4,0x90 -L001x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_ghash_4bit_x86 -.align 4 -_gcm_ghash_4bit_x86: -L_gcm_ghash_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%ebx - movl 108(%esp),%esi - movl 112(%esp),%edi - movl 116(%esp),%ecx - addl %edi,%ecx - movl %ecx,116(%esp) - movl (%ebx),%ebp - movl 4(%ebx),%edx - movl 8(%ebx),%ecx - movl 12(%ebx),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) -.align 4,0x90 -L002x86_outer_loop: - xorl 12(%edi),%ebx - xorl 8(%edi),%ecx - xorl 4(%edi),%edx - xorl (%edi),%ebp - movl %ebx,12(%esp) - movl %ecx,8(%esp) - movl %edx,4(%esp) - movl %ebp,(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp L003x86_loop -.align 4,0x90 -L003x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js L004x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp L003x86_loop -.align 4,0x90 -L004x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 112(%esp),%edi - leal 16(%edi),%edi - cmpl 116(%esp),%edi - movl %edi,112(%esp) - jb L002x86_outer_loop - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_gmult_4bit_mmx -.align 4 -_gcm_gmult_4bit_mmx: -L_gcm_gmult_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%esi - call L005pic_point -L005pic_point: - popl %eax - leal Lrem_4bit-L005pic_point(%eax),%eax - movzbl 15(%edi),%ebx - xorl %ecx,%ecx - movl %ebx,%edx - movb %dl,%cl - movl $14,%ebp - shlb $4,%cl - andl $240,%edx - movq 8(%esi,%ecx,1),%mm0 - movq (%esi,%ecx,1),%mm1 - movd %mm0,%ebx - jmp L006mmx_loop -.align 4,0x90 -L006mmx_loop: - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - movb (%edi,%ebp,1),%cl - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - decl %ebp - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - movl %ecx,%edx - pxor %mm2,%mm0 - js L007mmx_break - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - jmp L006mmx_loop -.align 4,0x90 -L007mmx_break: - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - pxor %mm2,%mm0 - psrlq $32,%mm0 - movd %mm1,%edx - psrlq $32,%mm1 - movd %mm0,%ecx - movd %mm1,%ebp - bswap %ebx - bswap %edx - bswap %ecx - bswap %ebp - emms - movl %ebx,12(%edi) - movl %edx,4(%edi) - movl %ecx,8(%edi) - movl %ebp,(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_ghash_4bit_mmx -.align 4 -_gcm_ghash_4bit_mmx: -L_gcm_ghash_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%ebx - movl 28(%esp),%ecx - movl 32(%esp),%edx - movl %esp,%ebp - call L008pic_point -L008pic_point: - popl %esi - leal Lrem_8bit-L008pic_point(%esi),%esi - subl $544,%esp - andl $-64,%esp - subl $16,%esp - addl %ecx,%edx - movl %eax,544(%esp) - movl %edx,552(%esp) - movl %ebp,556(%esp) - addl $128,%ebx - leal 144(%esp),%edi - leal 400(%esp),%ebp - movl -120(%ebx),%edx - movq -120(%ebx),%mm0 - movq -128(%ebx),%mm3 - shll $4,%edx - movb %dl,(%esp) - movl -104(%ebx),%edx - movq -104(%ebx),%mm2 - movq -112(%ebx),%mm5 - movq %mm0,-128(%edi) - psrlq $4,%mm0 - movq %mm3,(%edi) - movq %mm3,%mm7 - psrlq $4,%mm3 - shll $4,%edx - movb %dl,1(%esp) - movl -88(%ebx),%edx - movq -88(%ebx),%mm1 - psllq $60,%mm7 - movq -96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-120(%edi) - psrlq $4,%mm2 - movq %mm5,8(%edi) - movq %mm5,%mm6 - movq %mm0,-128(%ebp) - psrlq $4,%mm5 - movq %mm3,(%ebp) - shll $4,%edx - movb %dl,2(%esp) - movl -72(%ebx),%edx - movq -72(%ebx),%mm0 - psllq $60,%mm6 - movq -80(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-112(%edi) - psrlq $4,%mm1 - movq %mm4,16(%edi) - movq %mm4,%mm7 - movq %mm2,-120(%ebp) - psrlq $4,%mm4 - movq %mm5,8(%ebp) - shll $4,%edx - movb %dl,3(%esp) - movl -56(%ebx),%edx - movq -56(%ebx),%mm2 - psllq $60,%mm7 - movq -64(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-104(%edi) - psrlq $4,%mm0 - movq %mm3,24(%edi) - movq %mm3,%mm6 - movq %mm1,-112(%ebp) - psrlq $4,%mm3 - movq %mm4,16(%ebp) - shll $4,%edx - movb %dl,4(%esp) - movl -40(%ebx),%edx - movq -40(%ebx),%mm1 - psllq $60,%mm6 - movq -48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-96(%edi) - psrlq $4,%mm2 - movq %mm5,32(%edi) - movq %mm5,%mm7 - movq %mm0,-104(%ebp) - psrlq $4,%mm5 - movq %mm3,24(%ebp) - shll $4,%edx - movb %dl,5(%esp) - movl -24(%ebx),%edx - movq -24(%ebx),%mm0 - psllq $60,%mm7 - movq -32(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-88(%edi) - psrlq $4,%mm1 - movq %mm4,40(%edi) - movq %mm4,%mm6 - movq %mm2,-96(%ebp) - psrlq $4,%mm4 - movq %mm5,32(%ebp) - shll $4,%edx - movb %dl,6(%esp) - movl -8(%ebx),%edx - movq -8(%ebx),%mm2 - psllq $60,%mm6 - movq -16(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-80(%edi) - psrlq $4,%mm0 - movq %mm3,48(%edi) - movq %mm3,%mm7 - movq %mm1,-88(%ebp) - psrlq $4,%mm3 - movq %mm4,40(%ebp) - shll $4,%edx - movb %dl,7(%esp) - movl 8(%ebx),%edx - movq 8(%ebx),%mm1 - psllq $60,%mm7 - movq (%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-72(%edi) - psrlq $4,%mm2 - movq %mm5,56(%edi) - movq %mm5,%mm6 - movq %mm0,-80(%ebp) - psrlq $4,%mm5 - movq %mm3,48(%ebp) - shll $4,%edx - movb %dl,8(%esp) - movl 24(%ebx),%edx - movq 24(%ebx),%mm0 - psllq $60,%mm6 - movq 16(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-64(%edi) - psrlq $4,%mm1 - movq %mm4,64(%edi) - movq %mm4,%mm7 - movq %mm2,-72(%ebp) - psrlq $4,%mm4 - movq %mm5,56(%ebp) - shll $4,%edx - movb %dl,9(%esp) - movl 40(%ebx),%edx - movq 40(%ebx),%mm2 - psllq $60,%mm7 - movq 32(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-56(%edi) - psrlq $4,%mm0 - movq %mm3,72(%edi) - movq %mm3,%mm6 - movq %mm1,-64(%ebp) - psrlq $4,%mm3 - movq %mm4,64(%ebp) - shll $4,%edx - movb %dl,10(%esp) - movl 56(%ebx),%edx - movq 56(%ebx),%mm1 - psllq $60,%mm6 - movq 48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-48(%edi) - psrlq $4,%mm2 - movq %mm5,80(%edi) - movq %mm5,%mm7 - movq %mm0,-56(%ebp) - psrlq $4,%mm5 - movq %mm3,72(%ebp) - shll $4,%edx - movb %dl,11(%esp) - movl 72(%ebx),%edx - movq 72(%ebx),%mm0 - psllq $60,%mm7 - movq 64(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-40(%edi) - psrlq $4,%mm1 - movq %mm4,88(%edi) - movq %mm4,%mm6 - movq %mm2,-48(%ebp) - psrlq $4,%mm4 - movq %mm5,80(%ebp) - shll $4,%edx - movb %dl,12(%esp) - movl 88(%ebx),%edx - movq 88(%ebx),%mm2 - psllq $60,%mm6 - movq 80(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-32(%edi) - psrlq $4,%mm0 - movq %mm3,96(%edi) - movq %mm3,%mm7 - movq %mm1,-40(%ebp) - psrlq $4,%mm3 - movq %mm4,88(%ebp) - shll $4,%edx - movb %dl,13(%esp) - movl 104(%ebx),%edx - movq 104(%ebx),%mm1 - psllq $60,%mm7 - movq 96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-24(%edi) - psrlq $4,%mm2 - movq %mm5,104(%edi) - movq %mm5,%mm6 - movq %mm0,-32(%ebp) - psrlq $4,%mm5 - movq %mm3,96(%ebp) - shll $4,%edx - movb %dl,14(%esp) - movl 120(%ebx),%edx - movq 120(%ebx),%mm0 - psllq $60,%mm6 - movq 112(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-16(%edi) - psrlq $4,%mm1 - movq %mm4,112(%edi) - movq %mm4,%mm7 - movq %mm2,-24(%ebp) - psrlq $4,%mm4 - movq %mm5,104(%ebp) - shll $4,%edx - movb %dl,15(%esp) - psllq $60,%mm7 - por %mm7,%mm1 - movq %mm0,-8(%edi) - psrlq $4,%mm0 - movq %mm3,120(%edi) - movq %mm3,%mm6 - movq %mm1,-16(%ebp) - psrlq $4,%mm3 - movq %mm4,112(%ebp) - psllq $60,%mm6 - por %mm6,%mm0 - movq %mm0,-8(%ebp) - movq %mm3,120(%ebp) - movq (%eax),%mm6 - movl 8(%eax),%ebx - movl 12(%eax),%edx -.align 4,0x90 -L009outer: - xorl 12(%ecx),%edx - xorl 8(%ecx),%ebx - pxor (%ecx),%mm6 - leal 16(%ecx),%ecx - movl %ebx,536(%esp) - movq %mm6,528(%esp) - movl %ecx,548(%esp) - xorl %eax,%eax - roll $8,%edx - movb %dl,%al - movl %eax,%ebp - andb $15,%al - shrl $4,%ebp - pxor %mm0,%mm0 - roll $8,%edx - pxor %mm1,%mm1 - pxor %mm2,%mm2 - movq 16(%esp,%eax,8),%mm7 - movq 144(%esp,%eax,8),%mm6 - movb %dl,%al - movd %mm7,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%edi - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 536(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 532(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 528(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 524(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - pxor 144(%esp,%eax,8),%mm6 - xorb (%esp,%ebp,1),%bl - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - movzbl %bl,%ebx - pxor %mm2,%mm2 - psllq $4,%mm1 - movd %mm7,%ecx - psrlq $4,%mm7 - movq %mm6,%mm3 - psrlq $4,%mm6 - shll $4,%ecx - pxor 16(%esp,%edi,8),%mm7 - psllq $60,%mm3 - movzbl %cl,%ecx - pxor %mm3,%mm7 - pxor 144(%esp,%edi,8),%mm6 - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor %mm1,%mm6 - movd %mm7,%edx - pinsrw $3,(%esi,%ecx,2),%mm2 - psllq $12,%mm0 - pxor %mm0,%mm6 - psrlq $32,%mm7 - pxor %mm2,%mm6 - movl 548(%esp),%ecx - movd %mm7,%ebx - movq %mm6,%mm3 - psllw $8,%mm6 - psrlw $8,%mm3 - por %mm3,%mm6 - bswap %edx - pshufw $27,%mm6,%mm6 - bswap %ebx - cmpl 552(%esp),%ecx - jne L009outer - movl 544(%esp),%eax - movl %edx,12(%eax) - movl %ebx,8(%eax) - movq %mm6,(%eax) - movl 556(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_init_clmul -.align 4 -_gcm_init_clmul: -L_gcm_init_clmul_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - call L010pic -L010pic: - popl %ecx - leal Lbswap-L010pic(%ecx),%ecx - movdqu (%eax),%xmm2 - pshufd $78,%xmm2,%xmm2 - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - pand 16(%ecx),%xmm5 - pxor %xmm5,%xmm2 - movdqa %xmm2,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,(%edx) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%edx) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%edx) - ret -.globl _gcm_gmult_clmul -.align 4 -_gcm_gmult_clmul: -L_gcm_gmult_clmul_begin: - movl 4(%esp),%eax - movl 8(%esp),%edx - call L011pic -L011pic: - popl %ecx - leal Lbswap-L011pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movups (%edx),%xmm2 -.byte 102,15,56,0,197 - movups 32(%edx),%xmm4 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - ret -.globl _gcm_ghash_clmul -.align 4 -_gcm_ghash_clmul: -L_gcm_ghash_clmul_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebx - call L012pic -L012pic: - popl %ecx - leal Lbswap-L012pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movdqu (%edx),%xmm2 -.byte 102,15,56,0,197 - subl $16,%ebx - jz L013odd_tail - movdqu (%esi),%xmm3 - movdqu 16(%esi),%xmm6 -.byte 102,15,56,0,221 -.byte 102,15,56,0,245 - movdqu 32(%edx),%xmm5 - pxor %xmm3,%xmm0 - pshufd $78,%xmm6,%xmm3 - movdqa %xmm6,%xmm7 - pxor %xmm6,%xmm3 - leal 32(%esi),%esi -.byte 102,15,58,68,242,0 -.byte 102,15,58,68,250,17 -.byte 102,15,58,68,221,0 - movups 16(%edx),%xmm2 - nop - subl $32,%ebx - jbe L014even_tail - jmp L015mod_loop -.align 5,0x90 -L015mod_loop: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 - nop -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movups (%edx),%xmm2 - xorps %xmm6,%xmm0 - movdqa (%ecx),%xmm5 - xorps %xmm7,%xmm1 - movdqu (%esi),%xmm7 - pxor %xmm0,%xmm3 - movdqu 16(%esi),%xmm6 - pxor %xmm1,%xmm3 -.byte 102,15,56,0,253 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 -.byte 102,15,56,0,245 - pxor %xmm7,%xmm1 - movdqa %xmm6,%xmm7 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 -.byte 102,15,58,68,242,0 - movups 32(%edx),%xmm5 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - pshufd $78,%xmm7,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm7,%xmm3 - pxor %xmm4,%xmm1 -.byte 102,15,58,68,250,17 - movups 16(%edx),%xmm2 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,58,68,221,0 - leal 32(%esi),%esi - subl $32,%ebx - ja L015mod_loop -L014even_tail: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movdqa (%ecx),%xmm5 - xorps %xmm6,%xmm0 - xorps %xmm7,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testl %ebx,%ebx - jnz L016done - movups (%edx),%xmm2 -L013odd_tail: - movdqu (%esi),%xmm3 -.byte 102,15,56,0,221 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -L016done: -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -Lbswap: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -.align 6,0x90 -Lrem_8bit: -.value 0,450,900,582,1800,1738,1164,1358 -.value 3600,4050,3476,3158,2328,2266,2716,2910 -.value 7200,7650,8100,7782,6952,6890,6316,6510 -.value 4656,5106,4532,4214,5432,5370,5820,6014 -.value 14400,14722,15300,14854,16200,16010,15564,15630 -.value 13904,14226,13780,13334,12632,12442,13020,13086 -.value 9312,9634,10212,9766,9064,8874,8428,8494 -.value 10864,11186,10740,10294,11640,11450,12028,12094 -.value 28800,28994,29444,29382,30600,30282,29708,30158 -.value 32400,32594,32020,31958,31128,30810,31260,31710 -.value 27808,28002,28452,28390,27560,27242,26668,27118 -.value 25264,25458,24884,24822,26040,25722,26172,26622 -.value 18624,18690,19268,19078,20424,19978,19532,19854 -.value 18128,18194,17748,17558,16856,16410,16988,17310 -.value 21728,21794,22372,22182,21480,21034,20588,20910 -.value 23280,23346,22900,22710,24056,23610,24188,24510 -.value 57600,57538,57988,58182,58888,59338,58764,58446 -.value 61200,61138,60564,60758,59416,59866,60316,59998 -.value 64800,64738,65188,65382,64040,64490,63916,63598 -.value 62256,62194,61620,61814,62520,62970,63420,63102 -.value 55616,55426,56004,56070,56904,57226,56780,56334 -.value 55120,54930,54484,54550,53336,53658,54236,53790 -.value 50528,50338,50916,50982,49768,50090,49644,49198 -.value 52080,51890,51444,51510,52344,52666,53244,52798 -.value 37248,36930,37380,37830,38536,38730,38156,38094 -.value 40848,40530,39956,40406,39064,39258,39708,39646 -.value 36256,35938,36388,36838,35496,35690,35116,35054 -.value 33712,33394,32820,33270,33976,34170,34620,34558 -.value 43456,43010,43588,43910,44744,44810,44364,44174 -.value 42960,42514,42068,42390,41176,41242,41820,41630 -.value 46560,46114,46692,47014,45800,45866,45420,45230 -.value 48112,47666,47220,47542,48376,48442,49020,48830 -.align 6,0x90 -Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -.byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -.byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -.byte 0 diff --git a/deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s b/deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s deleted file mode 100644 index ac82e76498b3b7..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s +++ /dev/null @@ -1,379 +0,0 @@ -.file "rc4-586.s" -.text -.globl _RC4 -.align 4 -_RC4: -L_RC4_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebp - xorl %eax,%eax - xorl %ebx,%ebx - cmpl $0,%edx - je L000abort - movb (%edi),%al - movb 4(%edi),%bl - addl $8,%edi - leal (%esi,%edx,1),%ecx - subl %esi,%ebp - movl %ecx,24(%esp) - incb %al - cmpl $-1,256(%edi) - je L001RC4_CHAR - movl (%edi,%eax,4),%ecx - andl $-4,%edx - jz L002loop1 - movl %ebp,32(%esp) - testl $-8,%edx - jz L003go4loop4 - call L004PIC_me_up -L004PIC_me_up: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L004PIC_me_up(%ebp),%ebp - btl $26,(%ebp) - jnc L003go4loop4 - movl 32(%esp),%ebp - andl $-8,%edx - leal -8(%esi,%edx,1),%edx - movl %edx,-4(%edi) - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - movq (%esi),%mm0 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 - jmp L005loop_mmx_enter -.align 4,0x90 -L006loop_mmx: - addb %cl,%bl - psllq $56,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movq (%esi),%mm0 - movq %mm2,-8(%ebp,%esi,1) - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 -L005loop_mmx_enter: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm0,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $8,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $16,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $24,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $32,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $40,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $48,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - movl %ebx,%edx - xorl %ebx,%ebx - movb %dl,%bl - cmpl -4(%edi),%esi - leal 8(%esi),%esi - jb L006loop_mmx - psllq $56,%mm1 - pxor %mm1,%mm2 - movq %mm2,-8(%ebp,%esi,1) - emms - cmpl 24(%esp),%esi - je L007done - jmp L002loop1 -.align 4,0x90 -L003go4loop4: - leal -4(%esi,%edx,1),%edx - movl %edx,28(%esp) -L008loop4: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%eax,4),%ecx - movl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl 32(%esp),%ecx - orl (%edi,%edx,4),%ebp - rorl $8,%ebp - xorl (%esi),%ebp - cmpl 28(%esp),%esi - movl %ebp,(%ecx,%esi,1) - leal 4(%esi),%esi - movl (%edi,%eax,4),%ecx - jb L008loop4 - cmpl 24(%esp),%esi - je L007done - movl 32(%esp),%ebp -.align 4,0x90 -L002loop1: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%edx,4),%edx - xorb (%esi),%dl - leal 1(%esi),%esi - movl (%edi,%eax,4),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb L002loop1 - jmp L007done -.align 4,0x90 -L001RC4_CHAR: - movzbl (%edi,%eax,1),%ecx -L009cloop1: - addb %cl,%bl - movzbl (%edi,%ebx,1),%edx - movb %cl,(%edi,%ebx,1) - movb %dl,(%edi,%eax,1) - addb %cl,%dl - movzbl (%edi,%edx,1),%edx - addb $1,%al - xorb (%esi),%dl - leal 1(%esi),%esi - movzbl (%edi,%eax,1),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb L009cloop1 -L007done: - decb %al - movl %ebx,-4(%edi) - movb %al,-8(%edi) -L000abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_RC4_set_key -.align 4 -_private_RC4_set_key: -L_private_RC4_set_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%esi - call L010PIC_me_up -L010PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010PIC_me_up(%edx),%edx - leal 8(%edi),%edi - leal (%esi,%ebp,1),%esi - negl %ebp - xorl %eax,%eax - movl %ebp,-4(%edi) - btl $20,(%edx) - jc L011c1stloop -.align 4,0x90 -L012w1stloop: - movl %eax,(%edi,%eax,4) - addb $1,%al - jnc L012w1stloop - xorl %ecx,%ecx - xorl %edx,%edx -.align 4,0x90 -L013w2ndloop: - movl (%edi,%ecx,4),%eax - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movl (%edi,%edx,4),%ebx - jnz L014wnowrap - movl -4(%edi),%ebp -L014wnowrap: - movl %eax,(%edi,%edx,4) - movl %ebx,(%edi,%ecx,4) - addb $1,%cl - jnc L013w2ndloop - jmp L015exit -.align 4,0x90 -L011c1stloop: - movb %al,(%edi,%eax,1) - addb $1,%al - jnc L011c1stloop - xorl %ecx,%ecx - xorl %edx,%edx - xorl %ebx,%ebx -.align 4,0x90 -L016c2ndloop: - movb (%edi,%ecx,1),%al - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movb (%edi,%edx,1),%bl - jnz L017cnowrap - movl -4(%edi),%ebp -L017cnowrap: - movb %al,(%edi,%edx,1) - movb %bl,(%edi,%ecx,1) - addb $1,%cl - jnc L016c2ndloop - movl $-1,256(%edi) -L015exit: - xorl %eax,%eax - movl %eax,-8(%edi) - movl %eax,-4(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _RC4_options -.align 4 -_RC4_options: -L_RC4_options_begin: - call L018pic_point -L018pic_point: - popl %eax - leal L019opts-L018pic_point(%eax),%eax - call L020PIC_me_up -L020PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L020PIC_me_up(%edx),%edx - movl (%edx),%edx - btl $20,%edx - jc L0211xchar - btl $26,%edx - jnc L022ret - addl $25,%eax - ret -L0211xchar: - addl $12,%eax -L022ret: - ret -.align 6,0x90 -L019opts: -.byte 114,99,52,40,52,120,44,105,110,116,41,0 -.byte 114,99,52,40,49,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,56,120,44,109,109,120,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 6,0x90 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/ripemd/rmd-586.s b/deps/openssl/asm/x86-macosx-gas/ripemd/rmd-586.s deleted file mode 100644 index 7323b2de7305a3..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/ripemd/rmd-586.s +++ /dev/null @@ -1,1963 +0,0 @@ -.file "../openssl/crypto/ripemd/asm/rmd-586.s" -.text -.globl _ripemd160_block_asm_data_order -.align 4 -_ripemd160_block_asm_data_order: -L_ripemd160_block_asm_data_order_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - pushl %esi - movl (%edx),%ecx - pushl %edi - movl 4(%edx),%esi - pushl %ebp - movl 8(%edx),%edi - pushl %ebx - subl $108,%esp -L000start: - - movl (%eax),%ebx - movl 4(%eax),%ebp - movl %ebx,(%esp) - movl %ebp,4(%esp) - movl 8(%eax),%ebx - movl 12(%eax),%ebp - movl %ebx,8(%esp) - movl %ebp,12(%esp) - movl 16(%eax),%ebx - movl 20(%eax),%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl 24(%eax),%ebx - movl 28(%eax),%ebp - movl %ebx,24(%esp) - movl %ebp,28(%esp) - movl 32(%eax),%ebx - movl 36(%eax),%ebp - movl %ebx,32(%esp) - movl %ebp,36(%esp) - movl 40(%eax),%ebx - movl 44(%eax),%ebp - movl %ebx,40(%esp) - movl %ebp,44(%esp) - movl 48(%eax),%ebx - movl 52(%eax),%ebp - movl %ebx,48(%esp) - movl %ebp,52(%esp) - movl 56(%eax),%ebx - movl 60(%eax),%ebp - movl %ebx,56(%esp) - movl %ebp,60(%esp) - movl %edi,%eax - movl 12(%edx),%ebx - movl 16(%edx),%ebp - # 0 - xorl %ebx,%eax - movl (%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $11,%ecx - addl %ebp,%ecx - # 1 - xorl %edi,%eax - movl 4(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $14,%ebp - addl %ebx,%ebp - # 2 - movl 8(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $15,%ebx - addl %edi,%ebx - # 3 - xorl %ecx,%eax - movl 12(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $12,%edi - addl %esi,%edi - # 4 - movl 16(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $5,%esi - addl %ecx,%esi - # 5 - xorl %ebx,%eax - movl 20(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 6 - movl 24(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 7 - xorl %esi,%eax - movl 28(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 8 - movl 32(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - # 9 - xorl %ebp,%eax - movl 36(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 10 - movl 40(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 11 - xorl %edi,%eax - movl 44(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 12 - movl 48(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $6,%ebx - addl %edi,%ebx - # 13 - xorl %ecx,%eax - movl 52(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $7,%edi - addl %esi,%edi - # 14 - movl 56(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $9,%esi - addl %ecx,%esi - # 15 - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl $-1,%eax - roll $10,%edi - addl %edx,%ecx - movl 28(%esp),%edx - roll $8,%ecx - addl %ebp,%ecx - # 16 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $7,%ebp - addl %ebx,%ebp - # 17 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 52(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $6,%ebx - addl %edi,%ebx - # 18 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $8,%edi - addl %esi,%edi - # 19 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $13,%esi - addl %ecx,%esi - # 20 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $11,%ecx - addl %ebp,%ecx - # 21 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $9,%ebp - addl %ebx,%ebp - # 22 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 1518500249(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $7,%ebx - addl %edi,%ebx - # 23 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 48(%esp),%edx - roll $10,%ebp - leal 1518500249(%edi,%eax,1),%edi - movl $-1,%eax - roll $15,%edi - addl %esi,%edi - # 24 - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 1518500249(%esi,%edx,1),%esi - movl $-1,%edx - roll $7,%esi - addl %ecx,%esi - # 25 - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%edi - leal 1518500249(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $12,%ecx - addl %ebp,%ecx - # 26 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $15,%ebp - addl %ebx,%ebp - # 27 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - # 28 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $11,%edi - addl %esi,%edi - # 29 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 44(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $7,%esi - addl %ecx,%esi - # 30 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $13,%ecx - addl %ebp,%ecx - # 31 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl $-1,%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $12,%ebp - addl %ebx,%ebp - # 32 - movl 12(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $11,%ebx - addl %edi,%ebx - # 33 - movl 40(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $13,%edi - addl %esi,%edi - # 34 - movl 56(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $6,%esi - addl %ecx,%esi - # 35 - movl 16(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $7,%ecx - addl %ebp,%ecx - # 36 - movl 36(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $14,%ebp - addl %ebx,%ebp - # 37 - movl 60(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $9,%ebx - addl %edi,%ebx - # 38 - movl 32(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1859775393(%edi,%edx,1),%edi - subl %ebx,%eax - roll $13,%edi - addl %esi,%edi - # 39 - movl 4(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1859775393(%esi,%eax,1),%esi - subl %edi,%edx - roll $15,%esi - addl %ecx,%esi - # 40 - movl 8(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1859775393(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 41 - movl 28(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1859775393(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $8,%ebp - addl %ebx,%ebp - # 42 - movl (%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $13,%ebx - addl %edi,%ebx - # 43 - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $6,%edi - addl %esi,%edi - # 44 - movl 52(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $5,%esi - addl %ecx,%esi - # 45 - movl 44(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $12,%ecx - addl %ebp,%ecx - # 46 - movl 20(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 47 - movl 48(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 48 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - # 49 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - # 50 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 51 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 52 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 53 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - # 54 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - # 55 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 56 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - # 57 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 58 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $5,%edi - addl %esi,%edi - # 59 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $6,%esi - addl %ecx,%esi - # 60 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 61 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - # 62 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 63 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - # 64 - movl 16(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - # 65 - movl (%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - # 66 - movl 20(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $5,%ebp - addl %ebx,%ebp - # 67 - movl 36(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $11,%ebx - addl %edi,%ebx - # 68 - movl 28(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $6,%edi - addl %esi,%edi - # 69 - movl 48(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - subl %ebx,%edx - roll $8,%esi - addl %ecx,%esi - # 70 - movl 8(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 2840853838(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - # 71 - movl 40(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 2840853838(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $12,%ebp - addl %ebx,%ebp - # 72 - movl 56(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 2840853838(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 73 - movl 4(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 2840853838(%edi,%eax,1),%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - # 74 - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 75 - movl 32(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $14,%ecx - addl %ebp,%ecx - # 76 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $11,%ebp - addl %ebx,%ebp - # 77 - movl 24(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $8,%ebx - addl %edi,%ebx - # 78 - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $5,%edi - addl %esi,%edi - # 79 - movl 52(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl 128(%esp),%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - movl %ecx,64(%esp) - roll $6,%esi - addl %ecx,%esi - movl (%edx),%ecx - movl %esi,68(%esp) - movl %edi,72(%esp) - movl 4(%edx),%esi - movl %ebx,76(%esp) - movl 8(%edx),%edi - movl %ebp,80(%esp) - movl 12(%edx),%ebx - movl 16(%edx),%ebp - # 80 - movl $-1,%edx - subl %ebx,%edx - movl 20(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 81 - movl 56(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $9,%ebp - addl %ebx,%ebp - # 82 - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 83 - movl (%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $11,%edi - addl %esi,%edi - # 84 - movl 36(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 85 - movl 8(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - # 86 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 1352829926(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 87 - movl 16(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 1352829926(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $5,%ebx - addl %edi,%ebx - # 88 - movl 52(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1352829926(%edi,%edx,1),%edi - subl %ebp,%eax - roll $7,%edi - addl %esi,%edi - # 89 - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 1352829926(%esi,%eax,1),%esi - subl %ebx,%edx - roll $7,%esi - addl %ecx,%esi - # 90 - movl 60(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 91 - movl 32(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $11,%ebp - addl %ebx,%ebp - # 92 - movl 4(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 93 - movl 40(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $14,%edi - addl %esi,%edi - # 94 - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - # 95 - movl 48(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - movl %edi,%eax - roll $6,%ecx - addl %ebp,%ecx - # 96 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - # 97 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - # 98 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - # 99 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - # 100 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $12,%ecx - addl %ebp,%ecx - # 101 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $8,%ebp - addl %ebx,%ebp - # 102 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 103 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - # 104 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - # 105 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $7,%ecx - addl %ebp,%ecx - # 106 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $12,%ebp - addl %ebx,%ebp - # 107 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $7,%ebx - addl %edi,%ebx - # 108 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $6,%edi - addl %esi,%edi - # 109 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $15,%esi - addl %ecx,%esi - # 110 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - # 111 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - subl %ecx,%edx - roll $11,%ebp - addl %ebx,%ebp - # 112 - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $9,%ebx - addl %edi,%ebx - # 113 - movl 20(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $7,%edi - addl %esi,%edi - # 114 - movl 4(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $15,%esi - addl %ecx,%esi - # 115 - movl 12(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $11,%ecx - addl %ebp,%ecx - # 116 - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $8,%ebp - addl %ebx,%ebp - # 117 - movl 56(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $6,%ebx - addl %edi,%ebx - # 118 - movl 24(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1836072691(%edi,%edx,1),%edi - subl %ebx,%eax - roll $6,%edi - addl %esi,%edi - # 119 - movl 36(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1836072691(%esi,%eax,1),%esi - subl %edi,%edx - roll $14,%esi - addl %ecx,%esi - # 120 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1836072691(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $12,%ecx - addl %ebp,%ecx - # 121 - movl 32(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1836072691(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $13,%ebp - addl %ebx,%ebp - # 122 - movl 48(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $5,%ebx - addl %edi,%ebx - # 123 - movl 8(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $14,%edi - addl %esi,%edi - # 124 - movl 40(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $13,%esi - addl %ecx,%esi - # 125 - movl (%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $13,%ecx - addl %ebp,%ecx - # 126 - movl 16(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 127 - movl 52(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl 32(%esp),%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $5,%ebx - addl %edi,%ebx - # 128 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $15,%edi - addl %esi,%edi - # 129 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 16(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $5,%esi - addl %ecx,%esi - # 130 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $8,%ecx - addl %ebp,%ecx - # 131 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 12(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $11,%ebp - addl %ebx,%ebp - # 132 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $14,%ebx - addl %edi,%ebx - # 133 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%ebp - leal 2053994217(%edi,%eax,1),%edi - movl $-1,%eax - roll $14,%edi - addl %esi,%edi - # 134 - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 2053994217(%esi,%edx,1),%esi - movl $-1,%edx - roll $6,%esi - addl %ecx,%esi - # 135 - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 20(%esp),%edx - roll $10,%edi - leal 2053994217(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $14,%ecx - addl %ebp,%ecx - # 136 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%esi - leal 2053994217(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $6,%ebp - addl %ebx,%ebp - # 137 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 2053994217(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - # 138 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $12,%edi - addl %esi,%edi - # 139 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $9,%esi - addl %ecx,%esi - # 140 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $12,%ecx - addl %ebp,%ecx - # 141 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $5,%ebp - addl %ebx,%ebp - # 142 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $15,%ebx - addl %edi,%ebx - # 143 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %eax,%edx - movl %ebx,%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - xorl %ebp,%eax - roll $8,%edi - addl %esi,%edi - # 144 - movl 48(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $8,%esi - addl %ecx,%esi - # 145 - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - # 146 - movl 40(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $12,%ebp - addl %ebx,%ebp - # 147 - xorl %esi,%eax - movl 16(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 148 - movl 4(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $12,%edi - addl %esi,%edi - # 149 - xorl %ebp,%eax - movl 20(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $5,%esi - addl %ecx,%esi - # 150 - movl 32(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 151 - xorl %edi,%eax - movl 28(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - # 152 - movl 24(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $8,%ebx - addl %edi,%ebx - # 153 - xorl %ecx,%eax - movl 8(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $13,%edi - addl %esi,%edi - # 154 - movl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $6,%esi - addl %ecx,%esi - # 155 - xorl %ebx,%eax - movl 56(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - # 156 - movl (%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $15,%ebp - addl %ebx,%ebp - # 157 - xorl %esi,%eax - movl 12(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - # 158 - movl 36(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - # 159 - xorl %ebp,%eax - movl 44(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - roll $10,%ebx - addl %edx,%esi - movl 128(%esp),%edx - roll $11,%esi - addl %ecx,%esi - movl 4(%edx),%eax - addl %eax,%ebx - movl 72(%esp),%eax - addl %eax,%ebx - movl 8(%edx),%eax - addl %eax,%ebp - movl 76(%esp),%eax - addl %eax,%ebp - movl 12(%edx),%eax - addl %eax,%ecx - movl 80(%esp),%eax - addl %eax,%ecx - movl 16(%edx),%eax - addl %eax,%esi - movl 64(%esp),%eax - addl %eax,%esi - movl (%edx),%eax - addl %eax,%edi - movl 68(%esp),%eax - addl %eax,%edi - movl 136(%esp),%eax - movl %ebx,(%edx) - movl %ebp,4(%edx) - movl %ecx,8(%edx) - subl $1,%eax - movl %esi,12(%edx) - movl %edi,16(%edx) - jle L001get_out - movl %eax,136(%esp) - movl %ecx,%edi - movl 132(%esp),%eax - movl %ebx,%ecx - addl $64,%eax - movl %ebp,%esi - movl %eax,132(%esp) - jmp L000start -L001get_out: - addl $108,%esp - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm/x86-macosx-gas/sha/sha1-586.s b/deps/openssl/asm/x86-macosx-gas/sha/sha1-586.s deleted file mode 100644 index d75e61693d5de1..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/sha/sha1-586.s +++ /dev/null @@ -1,3966 +0,0 @@ -.file "sha1-586.s" -.text -.globl _sha1_block_data_order -.align 4 -_sha1_block_data_order: -L_sha1_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L000pic_point -L000pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000pic_point(%ebp),%esi - leal LK_XX_XX-L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%edx - testl $512,%edx - jz L001x86 - movl 8(%esi),%ecx - testl $16777216,%eax - jz L001x86 - testl $536870912,%ecx - jnz Lshaext_shortcut - andl $268435456,%edx - andl $1073741824,%eax - orl %edx,%eax - cmpl $1342177280,%eax - je Lavx_shortcut - jmp Lssse3_shortcut -.align 4,0x90 -L001x86: - movl 20(%esp),%ebp - movl 24(%esp),%esi - movl 28(%esp),%eax - subl $76,%esp - shll $6,%eax - addl %esi,%eax - movl %eax,104(%esp) - movl 16(%ebp),%edi - jmp L002loop -.align 4,0x90 -L002loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,16(%esp) - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %edx,28(%esp) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edx,44(%esp) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,48(%esp) - movl %ebx,52(%esp) - movl %ecx,56(%esp) - movl %edx,60(%esp) - movl %esi,100(%esp) - movl (%ebp),%eax - movl 4(%ebp),%ebx - movl 8(%ebp),%ecx - movl 12(%ebp),%edx - # 00_15 0 - movl %ecx,%esi - movl %eax,%ebp - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl (%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 1 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 4(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 2 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 8(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 3 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 12(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - # 00_15 4 - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 16(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - # 00_15 5 - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 20(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - # 00_15 6 - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 24(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 7 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 28(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 8 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 32(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 9 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 36(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - # 00_15 10 - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 40(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - # 00_15 11 - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 44(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - # 00_15 12 - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 48(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 13 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 52(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 14 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 56(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 15 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 60(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - movl (%esp),%ebx - addl %ebp,%ecx - # 16_19 16 - movl %edi,%ebp - xorl 8(%esp),%ebx - xorl %esi,%ebp - xorl 32(%esp),%ebx - andl %edx,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - xorl %esi,%ebp - addl %ebp,%eax - movl %ecx,%ebp - rorl $2,%edx - movl %ebx,(%esp) - roll $5,%ebp - leal 1518500249(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - # 16_19 17 - movl %edx,%ebp - xorl 12(%esp),%eax - xorl %edi,%ebp - xorl 36(%esp),%eax - andl %ecx,%ebp - xorl 56(%esp),%eax - roll $1,%eax - xorl %edi,%ebp - addl %ebp,%esi - movl %ebx,%ebp - rorl $2,%ecx - movl %eax,4(%esp) - roll $5,%ebp - leal 1518500249(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - # 16_19 18 - movl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 40(%esp),%esi - andl %ebx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - xorl %edx,%ebp - addl %ebp,%edi - movl %eax,%ebp - rorl $2,%ebx - movl %esi,8(%esp) - roll $5,%ebp - leal 1518500249(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - # 16_19 19 - movl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 44(%esp),%edi - andl %eax,%ebp - xorl (%esp),%edi - roll $1,%edi - xorl %ecx,%ebp - addl %ebp,%edx - movl %esi,%ebp - rorl $2,%eax - movl %edi,12(%esp) - roll $5,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - # 20_39 20 - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - # 20_39 21 - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - # 20_39 22 - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - # 20_39 23 - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - # 20_39 24 - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - # 20_39 25 - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - # 20_39 26 - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - # 20_39 27 - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - # 20_39 28 - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - # 20_39 29 - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,52(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - # 20_39 30 - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,56(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - # 20_39 31 - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,60(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl (%esp),%edx - addl %ebp,%edi - # 20_39 32 - movl %esi,%ebp - xorl 8(%esp),%edx - xorl %eax,%ebp - xorl 32(%esp),%edx - xorl %ebx,%ebp - xorl 52(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 4(%esp),%ecx - addl %ebp,%edx - # 20_39 33 - movl %edi,%ebp - xorl 12(%esp),%ecx - xorl %esi,%ebp - xorl 36(%esp),%ecx - xorl %eax,%ebp - xorl 56(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,4(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 8(%esp),%ebx - addl %ebp,%ecx - # 20_39 34 - movl %edx,%ebp - xorl 16(%esp),%ebx - xorl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl 60(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,8(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 12(%esp),%eax - addl %ebp,%ebx - # 20_39 35 - movl %ecx,%ebp - xorl 20(%esp),%eax - xorl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl (%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,12(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 16(%esp),%esi - addl %ebp,%eax - # 20_39 36 - movl %ebx,%ebp - xorl 24(%esp),%esi - xorl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 4(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,16(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 20(%esp),%edi - addl %ebp,%esi - # 20_39 37 - movl %eax,%ebp - xorl 28(%esp),%edi - xorl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 8(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,20(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 24(%esp),%edx - addl %ebp,%edi - # 20_39 38 - movl %esi,%ebp - xorl 32(%esp),%edx - xorl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 12(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,24(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 28(%esp),%ecx - addl %ebp,%edx - # 20_39 39 - movl %edi,%ebp - xorl 36(%esp),%ecx - xorl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 16(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,28(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 32(%esp),%ebx - addl %ebp,%ecx - # 40_59 40 - movl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl (%esp),%ebx - andl %edx,%ebp - xorl 20(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,32(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 36(%esp),%eax - addl %ebp,%ebx - # 40_59 41 - movl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl 4(%esp),%eax - andl %ecx,%ebp - xorl 24(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,36(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 40(%esp),%esi - addl %ebp,%eax - # 40_59 42 - movl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 8(%esp),%esi - andl %ebx,%ebp - xorl 28(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,40(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 44(%esp),%edi - addl %ebp,%esi - # 40_59 43 - movl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 12(%esp),%edi - andl %eax,%ebp - xorl 32(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,44(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 48(%esp),%edx - addl %ebp,%edi - # 40_59 44 - movl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 16(%esp),%edx - andl %esi,%ebp - xorl 36(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,48(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 52(%esp),%ecx - addl %ebp,%edx - # 40_59 45 - movl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 20(%esp),%ecx - andl %edi,%ebp - xorl 40(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,52(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 56(%esp),%ebx - addl %ebp,%ecx - # 40_59 46 - movl %edi,%ebp - xorl (%esp),%ebx - xorl %esi,%ebp - xorl 24(%esp),%ebx - andl %edx,%ebp - xorl 44(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,56(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 60(%esp),%eax - addl %ebp,%ebx - # 40_59 47 - movl %edx,%ebp - xorl 4(%esp),%eax - xorl %edi,%ebp - xorl 28(%esp),%eax - andl %ecx,%ebp - xorl 48(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,60(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl (%esp),%esi - addl %ebp,%eax - # 40_59 48 - movl %ecx,%ebp - xorl 8(%esp),%esi - xorl %edx,%ebp - xorl 32(%esp),%esi - andl %ebx,%ebp - xorl 52(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 4(%esp),%edi - addl %ebp,%esi - # 40_59 49 - movl %ebx,%ebp - xorl 12(%esp),%edi - xorl %ecx,%ebp - xorl 36(%esp),%edi - andl %eax,%ebp - xorl 56(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,4(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 8(%esp),%edx - addl %ebp,%edi - # 40_59 50 - movl %eax,%ebp - xorl 16(%esp),%edx - xorl %ebx,%ebp - xorl 40(%esp),%edx - andl %esi,%ebp - xorl 60(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,8(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 12(%esp),%ecx - addl %ebp,%edx - # 40_59 51 - movl %esi,%ebp - xorl 20(%esp),%ecx - xorl %eax,%ebp - xorl 44(%esp),%ecx - andl %edi,%ebp - xorl (%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,12(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 16(%esp),%ebx - addl %ebp,%ecx - # 40_59 52 - movl %edi,%ebp - xorl 24(%esp),%ebx - xorl %esi,%ebp - xorl 48(%esp),%ebx - andl %edx,%ebp - xorl 4(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,16(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 20(%esp),%eax - addl %ebp,%ebx - # 40_59 53 - movl %edx,%ebp - xorl 28(%esp),%eax - xorl %edi,%ebp - xorl 52(%esp),%eax - andl %ecx,%ebp - xorl 8(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,20(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 24(%esp),%esi - addl %ebp,%eax - # 40_59 54 - movl %ecx,%ebp - xorl 32(%esp),%esi - xorl %edx,%ebp - xorl 56(%esp),%esi - andl %ebx,%ebp - xorl 12(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,24(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 28(%esp),%edi - addl %ebp,%esi - # 40_59 55 - movl %ebx,%ebp - xorl 36(%esp),%edi - xorl %ecx,%ebp - xorl 60(%esp),%edi - andl %eax,%ebp - xorl 16(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,28(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 32(%esp),%edx - addl %ebp,%edi - # 40_59 56 - movl %eax,%ebp - xorl 40(%esp),%edx - xorl %ebx,%ebp - xorl (%esp),%edx - andl %esi,%ebp - xorl 20(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,32(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 36(%esp),%ecx - addl %ebp,%edx - # 40_59 57 - movl %esi,%ebp - xorl 44(%esp),%ecx - xorl %eax,%ebp - xorl 4(%esp),%ecx - andl %edi,%ebp - xorl 24(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,36(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 40(%esp),%ebx - addl %ebp,%ecx - # 40_59 58 - movl %edi,%ebp - xorl 48(%esp),%ebx - xorl %esi,%ebp - xorl 8(%esp),%ebx - andl %edx,%ebp - xorl 28(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,40(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 44(%esp),%eax - addl %ebp,%ebx - # 40_59 59 - movl %edx,%ebp - xorl 52(%esp),%eax - xorl %edi,%ebp - xorl 12(%esp),%eax - andl %ecx,%ebp - xorl 32(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,44(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 48(%esp),%esi - addl %ebp,%eax - # 20_39 60 - movl %ebx,%ebp - xorl 56(%esp),%esi - xorl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 36(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,48(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 52(%esp),%edi - addl %ebp,%esi - # 20_39 61 - movl %eax,%ebp - xorl 60(%esp),%edi - xorl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 40(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,52(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 56(%esp),%edx - addl %ebp,%edi - # 20_39 62 - movl %esi,%ebp - xorl (%esp),%edx - xorl %eax,%ebp - xorl 24(%esp),%edx - xorl %ebx,%ebp - xorl 44(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,56(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 60(%esp),%ecx - addl %ebp,%edx - # 20_39 63 - movl %edi,%ebp - xorl 4(%esp),%ecx - xorl %esi,%ebp - xorl 28(%esp),%ecx - xorl %eax,%ebp - xorl 48(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,60(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl (%esp),%ebx - addl %ebp,%ecx - # 20_39 64 - movl %edx,%ebp - xorl 8(%esp),%ebx - xorl %edi,%ebp - xorl 32(%esp),%ebx - xorl %esi,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - # 20_39 65 - movl %ecx,%ebp - xorl 12(%esp),%eax - xorl %edx,%ebp - xorl 36(%esp),%eax - xorl %edi,%ebp - xorl 56(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,4(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - # 20_39 66 - movl %ebx,%ebp - xorl 16(%esp),%esi - xorl %ecx,%ebp - xorl 40(%esp),%esi - xorl %edx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,8(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - # 20_39 67 - movl %eax,%ebp - xorl 20(%esp),%edi - xorl %ebx,%ebp - xorl 44(%esp),%edi - xorl %ecx,%ebp - xorl (%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,12(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - # 20_39 68 - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - # 20_39 69 - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - # 20_39 70 - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - # 20_39 71 - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - # 20_39 72 - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - # 20_39 73 - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - # 20_39 74 - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - # 20_39 75 - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - # 20_39 76 - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - # 20_39 77 - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - leal 3395469782(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - # 20_39 78 - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - leal 3395469782(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - # 20_39 79 - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - leal 3395469782(%edi,%edx,1),%edi - addl %ebp,%edi - movl 96(%esp),%ebp - movl 100(%esp),%edx - addl (%ebp),%edi - addl 4(%ebp),%esi - addl 8(%ebp),%eax - addl 12(%ebp),%ebx - addl 16(%ebp),%ecx - movl %edi,(%ebp) - addl $64,%edx - movl %esi,4(%ebp) - cmpl 104(%esp),%edx - movl %eax,8(%ebp) - movl %ecx,%edi - movl %ebx,12(%ebp) - movl %edx,%esi - movl %ecx,16(%ebp) - jb L002loop - addl $76,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__sha1_block_data_order_shaext: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L003pic_point -L003pic_point: - popl %ebp - leal LK_XX_XX-L003pic_point(%ebp),%ebp -Lshaext_shortcut: - movl 20(%esp),%edi - movl %esp,%ebx - movl 24(%esp),%esi - movl 28(%esp),%ecx - subl $32,%esp - movdqu (%edi),%xmm0 - movd 16(%edi),%xmm1 - andl $-32,%esp - movdqa 80(%ebp),%xmm3 - movdqu (%esi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%esi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 -.byte 102,15,56,0,251 - jmp L004loop_shaext -.align 4,0x90 -L004loop_shaext: - decl %ecx - leal 64(%esi),%eax - movdqa %xmm1,(%esp) - paddd %xmm4,%xmm1 - cmovnel %eax,%esi - movdqa %xmm0,16(%esp) -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%esi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%esi),%xmm5 -.byte 102,15,56,0,227 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,235 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,243 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 - movdqa (%esp),%xmm2 -.byte 102,15,56,0,251 -.byte 15,56,200,202 - paddd 16(%esp),%xmm0 - jnz L004loop_shaext - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%edi) - movd %xmm1,16(%edi) - movl %ebx,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__sha1_block_data_order_ssse3: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L005pic_point -L005pic_point: - popl %ebp - leal LK_XX_XX-L005pic_point(%ebp),%ebp -Lssse3_shortcut: - movdqa (%ebp),%xmm7 - movdqa 16(%ebp),%xmm0 - movdqa 32(%ebp),%xmm1 - movdqa 48(%ebp),%xmm2 - movdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - movdqa %xmm0,112(%esp) - movdqa %xmm1,128(%esp) - movdqa %xmm2,144(%esp) - shll $6,%edx - movdqa %xmm7,160(%esp) - addl %ebp,%edx - movdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - movdqu -64(%ebp),%xmm0 - movdqu -48(%ebp),%xmm1 - movdqu -32(%ebp),%xmm2 - movdqu -16(%ebp),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - movdqa %xmm7,96(%esp) -.byte 102,15,56,0,222 - paddd %xmm7,%xmm0 - paddd %xmm7,%xmm1 - paddd %xmm7,%xmm2 - movdqa %xmm0,(%esp) - psubd %xmm7,%xmm0 - movdqa %xmm1,16(%esp) - psubd %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - movl %ecx,%ebp - psubd %xmm7,%xmm2 - xorl %edx,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebp,%esi - jmp L006loop -.align 4,0x90 -L006loop: - rorl $2,%ebx - xorl %edx,%esi - movl %eax,%ebp - punpcklqdq %xmm1,%xmm4 - movdqa %xmm3,%xmm6 - addl (%esp),%edi - xorl %ecx,%ebx - paddd %xmm3,%xmm7 - movdqa %xmm0,64(%esp) - roll $5,%eax - addl %esi,%edi - psrldq $4,%xmm6 - andl %ebx,%ebp - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%edi - rorl $7,%eax - pxor %xmm2,%xmm6 - xorl %ecx,%ebp - movl %edi,%esi - addl 4(%esp),%edx - pxor %xmm6,%xmm4 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm7,48(%esp) - addl %ebp,%edx - andl %eax,%esi - movdqa %xmm4,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - movdqa %xmm4,%xmm6 - xorl %ebx,%esi - pslldq $12,%xmm0 - paddd %xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - psrld $31,%xmm6 - xorl %eax,%edi - roll $5,%edx - movdqa %xmm0,%xmm7 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - psrld $30,%xmm0 - addl %edx,%ecx - rorl $7,%edx - por %xmm6,%xmm4 - xorl %eax,%ebp - movl %ecx,%esi - addl 12(%esp),%ebx - pslld $2,%xmm7 - xorl %edi,%edx - roll $5,%ecx - pxor %xmm0,%xmm4 - movdqa 96(%esp),%xmm0 - addl %ebp,%ebx - andl %edx,%esi - pxor %xmm7,%xmm4 - pshufd $238,%xmm1,%xmm5 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - xorl %edi,%esi - movl %ebx,%ebp - punpcklqdq %xmm2,%xmm5 - movdqa %xmm4,%xmm7 - addl 16(%esp),%eax - xorl %edx,%ecx - paddd %xmm4,%xmm0 - movdqa %xmm1,80(%esp) - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm7 - andl %ecx,%ebp - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm7 - xorl %edx,%ebp - movl %eax,%esi - addl 20(%esp),%edi - pxor %xmm7,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm0,(%esp) - addl %ebp,%edi - andl %ebx,%esi - movdqa %xmm5,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - movdqa %xmm5,%xmm7 - xorl %ecx,%esi - pslldq $12,%xmm1 - paddd %xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - psrld $31,%xmm7 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - psrld $30,%xmm1 - addl %edi,%edx - rorl $7,%edi - por %xmm7,%xmm5 - xorl %ebx,%ebp - movl %edx,%esi - addl 28(%esp),%ecx - pslld $2,%xmm0 - xorl %eax,%edi - roll $5,%edx - pxor %xmm1,%xmm5 - movdqa 112(%esp),%xmm1 - addl %ebp,%ecx - andl %edi,%esi - pxor %xmm0,%xmm5 - pshufd $238,%xmm2,%xmm6 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - punpcklqdq %xmm3,%xmm6 - movdqa %xmm5,%xmm0 - addl 32(%esp),%ebx - xorl %edi,%edx - paddd %xmm5,%xmm1 - movdqa %xmm2,96(%esp) - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm0 - andl %edx,%ebp - xorl %edi,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm0 - xorl %edi,%ebp - movl %ebx,%esi - addl 36(%esp),%eax - pxor %xmm0,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm1,16(%esp) - addl %ebp,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm0 - xorl %edx,%esi - pslldq $12,%xmm2 - paddd %xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - psrld $31,%xmm0 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm2,%xmm1 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - psrld $30,%xmm2 - addl %eax,%edi - rorl $7,%eax - por %xmm0,%xmm6 - xorl %ecx,%ebp - movdqa 64(%esp),%xmm0 - movl %edi,%esi - addl 44(%esp),%edx - pslld $2,%xmm1 - xorl %ebx,%eax - roll $5,%edi - pxor %xmm2,%xmm6 - movdqa 112(%esp),%xmm2 - addl %ebp,%edx - andl %eax,%esi - pxor %xmm1,%xmm6 - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%esi - movl %edx,%ebp - punpcklqdq %xmm4,%xmm7 - movdqa %xmm6,%xmm1 - addl 48(%esp),%ecx - xorl %eax,%edi - paddd %xmm6,%xmm2 - movdqa %xmm3,64(%esp) - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm1 - andl %edi,%ebp - xorl %eax,%edi - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm1 - xorl %eax,%ebp - movl %ecx,%esi - addl 52(%esp),%ebx - pxor %xmm1,%xmm7 - xorl %edi,%edx - roll $5,%ecx - movdqa %xmm2,32(%esp) - addl %ebp,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm1 - xorl %edi,%esi - pslldq $12,%xmm3 - paddd %xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - psrld $31,%xmm1 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm3,%xmm2 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - por %xmm1,%xmm7 - xorl %edx,%ebp - movdqa 80(%esp),%xmm1 - movl %eax,%esi - addl 60(%esp),%edi - pslld $2,%xmm2 - xorl %ecx,%ebx - roll $5,%eax - pxor %xmm3,%xmm7 - movdqa 112(%esp),%xmm3 - addl %ebp,%edi - andl %ebx,%esi - pxor %xmm2,%xmm7 - pshufd $238,%xmm6,%xmm2 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,80(%esp) - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm3,%xmm4 - addl %esi,%edx - paddd %xmm7,%xmm3 - andl %eax,%ebp - pxor %xmm2,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - roll $5,%edx - pslld $2,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - psrld $30,%xmm2 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - xorl %edi,%edx - roll $5,%ecx - por %xmm2,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - movdqa 96(%esp),%xmm2 - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - pshufd $238,%xmm7,%xmm3 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 16(%esp),%edi - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm2,%xmm1 - movdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm4,%xmm5 - rorl $7,%ebx - paddd %xmm0,%xmm4 - addl %eax,%edi - pxor %xmm3,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm3 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm3,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - movdqa 64(%esp),%xmm3 - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - pshufd $238,%xmm0,%xmm4 - addl %ecx,%ebx - addl 32(%esp),%eax - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - pxor %xmm3,%xmm2 - movdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - movdqa 128(%esp),%xmm6 - rorl $7,%ecx - paddd %xmm1,%xmm5 - addl %ebx,%eax - pxor %xmm4,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - pslld $2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - psrld $30,%xmm4 - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - por %xmm4,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - movdqa 80(%esp),%xmm4 - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - pshufd $238,%xmm1,%xmm5 - addl %edx,%ecx - addl 48(%esp),%ebx - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - pxor %xmm4,%xmm3 - movdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%edx - paddd %xmm2,%xmm6 - addl %ecx,%ebx - pxor %xmm5,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pslld $2,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - psrld $30,%xmm5 - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - por %xmm5,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - movdqa 96(%esp),%xmm5 - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - pshufd $238,%xmm2,%xmm6 - addl %edi,%edx - addl (%esp),%ecx - pxor %xmm0,%xmm4 - punpcklqdq %xmm3,%xmm6 - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - pxor %xmm5,%xmm4 - movdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - movdqa %xmm7,%xmm0 - rorl $7,%edi - paddd %xmm3,%xmm7 - addl %edx,%ecx - pxor %xmm6,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm6 - movdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - pslld $2,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - psrld $30,%xmm6 - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - por %xmm6,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - movdqa 64(%esp),%xmm6 - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - pshufd $238,%xmm3,%xmm7 - addl %eax,%edi - addl 16(%esp),%edx - pxor %xmm1,%xmm5 - punpcklqdq %xmm4,%xmm7 - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - pxor %xmm6,%xmm5 - movdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - movdqa %xmm0,%xmm1 - rorl $7,%eax - paddd %xmm4,%xmm0 - addl %edi,%edx - pxor %xmm7,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm7 - movdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - pslld $2,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - psrld $30,%xmm7 - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - por %xmm7,%xmm5 - addl 28(%esp),%eax - movdqa 80(%esp),%xmm7 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pshufd $238,%xmm4,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 32(%esp),%edi - pxor %xmm2,%xmm6 - punpcklqdq %xmm5,%xmm0 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - pxor %xmm7,%xmm6 - movdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - roll $5,%eax - movdqa %xmm1,%xmm2 - addl %esi,%edi - paddd %xmm5,%xmm1 - xorl %ebx,%ebp - pxor %xmm0,%xmm6 - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - andl %ebx,%ebp - movdqa %xmm6,%xmm0 - movdqa %xmm1,16(%esp) - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - pslld $2,%xmm6 - addl %ebp,%edx - xorl %eax,%esi - psrld $30,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - por %xmm0,%xmm6 - movl %edx,%ebp - xorl %eax,%esi - movdqa 96(%esp),%xmm0 - roll $5,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - pshufd $238,%xmm5,%xmm1 - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 48(%esp),%eax - pxor %xmm3,%xmm7 - punpcklqdq %xmm6,%xmm1 - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - pxor %xmm0,%xmm7 - movdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - roll $5,%ebx - movdqa 144(%esp),%xmm3 - addl %esi,%eax - paddd %xmm6,%xmm2 - xorl %ecx,%ebp - pxor %xmm1,%xmm7 - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - andl %ecx,%ebp - movdqa %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - pslld $2,%xmm7 - addl %ebp,%edi - xorl %ebx,%esi - psrld $30,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - por %xmm1,%xmm7 - movl %edi,%ebp - xorl %ebx,%esi - movdqa 64(%esp),%xmm1 - roll $5,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - pshufd $238,%xmm6,%xmm2 - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl (%esp),%ebx - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - roll $5,%ecx - movdqa %xmm3,%xmm4 - addl %esi,%ebx - paddd %xmm7,%xmm3 - xorl %edx,%ebp - pxor %xmm2,%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - andl %edx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pslld $2,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - psrld $30,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - por %xmm2,%xmm0 - movl %eax,%ebp - xorl %ecx,%esi - movdqa 80(%esp),%xmm2 - roll $5,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - pshufd $238,%xmm7,%xmm3 - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 16(%esp),%ecx - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - pxor %xmm2,%xmm1 - movdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - roll $5,%edx - movdqa %xmm4,%xmm5 - addl %esi,%ecx - paddd %xmm0,%xmm4 - xorl %edi,%ebp - pxor %xmm3,%xmm1 - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - andl %edi,%ebp - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - pslld $2,%xmm1 - addl %ebp,%ebx - xorl %edx,%esi - psrld $30,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - por %xmm3,%xmm1 - movl %ebx,%ebp - xorl %edx,%esi - movdqa 96(%esp),%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - pshufd $238,%xmm0,%xmm4 - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 32(%esp),%edx - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - pxor %xmm3,%xmm2 - movdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - roll $5,%edi - movdqa %xmm5,%xmm6 - addl %esi,%edx - paddd %xmm1,%xmm5 - xorl %eax,%ebp - pxor %xmm4,%xmm2 - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - andl %eax,%ebp - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - pslld $2,%xmm2 - addl %ebp,%ecx - xorl %edi,%esi - psrld $30,%xmm4 - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - por %xmm4,%xmm2 - movl %ecx,%ebp - xorl %edi,%esi - movdqa 64(%esp),%xmm4 - roll $5,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - pshufd $238,%xmm1,%xmm5 - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - addl 48(%esp),%edi - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm4,%xmm3 - movdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%ebx - paddd %xmm2,%xmm6 - addl %eax,%edi - pxor %xmm5,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm5 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm5,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl (%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - paddd %xmm3,%xmm7 - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - movdqa %xmm7,48(%esp) - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je L007done - movdqa 160(%esp),%xmm7 - movdqa 176(%esp),%xmm6 - movdqu (%ebp),%xmm0 - movdqu 16(%ebp),%xmm1 - movdqu 32(%ebp),%xmm2 - movdqu 48(%ebp),%xmm3 - addl $64,%ebp -.byte 102,15,56,0,198 - movl %ebp,196(%esp) - movdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx -.byte 102,15,56,0,206 - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - paddd %xmm7,%xmm0 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - movdqa %xmm0,(%esp) - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - psubd %xmm7,%xmm0 - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi -.byte 102,15,56,0,214 - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - paddd %xmm7,%xmm1 - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - movdqa %xmm1,16(%esp) - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - psubd %xmm7,%xmm1 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax -.byte 102,15,56,0,222 - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - paddd %xmm7,%xmm2 - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - movdqa %xmm2,32(%esp) - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - psubd %xmm7,%xmm2 - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %ecx,%ebx - movl %edx,12(%ebp) - xorl %edx,%ebx - movl %edi,16(%ebp) - movl %esi,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebx,%esi - movl %ebp,%ebx - jmp L006loop -.align 4,0x90 -L007done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__sha1_block_data_order_avx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L008pic_point -L008pic_point: - popl %ebp - leal LK_XX_XX-L008pic_point(%ebp),%ebp -Lavx_shortcut: - vzeroall - vmovdqa (%ebp),%xmm7 - vmovdqa 16(%ebp),%xmm0 - vmovdqa 32(%ebp),%xmm1 - vmovdqa 48(%ebp),%xmm2 - vmovdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - vmovdqa %xmm0,112(%esp) - vmovdqa %xmm1,128(%esp) - vmovdqa %xmm2,144(%esp) - shll $6,%edx - vmovdqa %xmm7,160(%esp) - addl %ebp,%edx - vmovdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - vmovdqu -64(%ebp),%xmm0 - vmovdqu -48(%ebp),%xmm1 - vmovdqu -32(%ebp),%xmm2 - vmovdqu -16(%ebp),%xmm3 - vpshufb %xmm6,%xmm0,%xmm0 - vpshufb %xmm6,%xmm1,%xmm1 - vpshufb %xmm6,%xmm2,%xmm2 - vmovdqa %xmm7,96(%esp) - vpshufb %xmm6,%xmm3,%xmm3 - vpaddd %xmm7,%xmm0,%xmm4 - vpaddd %xmm7,%xmm1,%xmm5 - vpaddd %xmm7,%xmm2,%xmm6 - vmovdqa %xmm4,(%esp) - movl %ecx,%ebp - vmovdqa %xmm5,16(%esp) - xorl %edx,%ebp - vmovdqa %xmm6,32(%esp) - andl %ebp,%esi - jmp L009loop -.align 4,0x90 -L009loop: - shrdl $2,%ebx,%ebx - xorl %edx,%esi - vpalignr $8,%xmm0,%xmm1,%xmm4 - movl %eax,%ebp - addl (%esp),%edi - vpaddd %xmm3,%xmm7,%xmm7 - vmovdqa %xmm0,64(%esp) - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrldq $4,%xmm3,%xmm6 - addl %esi,%edi - andl %ebx,%ebp - vpxor %xmm0,%xmm4,%xmm4 - xorl %ecx,%ebx - addl %eax,%edi - vpxor %xmm2,%xmm6,%xmm6 - shrdl $7,%eax,%eax - xorl %ecx,%ebp - vmovdqa %xmm7,48(%esp) - movl %edi,%esi - addl 4(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - xorl %ebx,%eax - shldl $5,%edi,%edi - addl %ebp,%edx - andl %eax,%esi - vpsrld $31,%xmm4,%xmm6 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%esi - vpslldq $12,%xmm4,%xmm0 - vpaddd %xmm4,%xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpsrld $30,%xmm0,%xmm7 - vpor %xmm6,%xmm4,%xmm4 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - vpslld $2,%xmm0,%xmm0 - shrdl $7,%edx,%edx - xorl %eax,%ebp - vpxor %xmm7,%xmm4,%xmm4 - movl %ecx,%esi - addl 12(%esp),%ebx - xorl %edi,%edx - shldl $5,%ecx,%ecx - vpxor %xmm0,%xmm4,%xmm4 - addl %ebp,%ebx - andl %edx,%esi - vmovdqa 96(%esp),%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %edi,%esi - vpalignr $8,%xmm1,%xmm2,%xmm5 - movl %ebx,%ebp - addl 16(%esp),%eax - vpaddd %xmm4,%xmm0,%xmm0 - vmovdqa %xmm1,80(%esp) - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrldq $4,%xmm4,%xmm7 - addl %esi,%eax - andl %ecx,%ebp - vpxor %xmm1,%xmm5,%xmm5 - xorl %edx,%ecx - addl %ebx,%eax - vpxor %xmm3,%xmm7,%xmm7 - shrdl $7,%ebx,%ebx - xorl %edx,%ebp - vmovdqa %xmm0,(%esp) - movl %eax,%esi - addl 20(%esp),%edi - vpxor %xmm7,%xmm5,%xmm5 - xorl %ecx,%ebx - shldl $5,%eax,%eax - addl %ebp,%edi - andl %ebx,%esi - vpsrld $31,%xmm5,%xmm7 - xorl %ecx,%ebx - addl %eax,%edi - shrdl $7,%eax,%eax - xorl %ecx,%esi - vpslldq $12,%xmm5,%xmm1 - vpaddd %xmm5,%xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - xorl %ebx,%eax - shldl $5,%edi,%edi - vpsrld $30,%xmm1,%xmm0 - vpor %xmm7,%xmm5,%xmm5 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - vpslld $2,%xmm1,%xmm1 - shrdl $7,%edi,%edi - xorl %ebx,%ebp - vpxor %xmm0,%xmm5,%xmm5 - movl %edx,%esi - addl 28(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpxor %xmm1,%xmm5,%xmm5 - addl %ebp,%ecx - andl %edi,%esi - vmovdqa 112(%esp),%xmm1 - xorl %eax,%edi - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - vpalignr $8,%xmm2,%xmm3,%xmm6 - movl %ecx,%ebp - addl 32(%esp),%ebx - vpaddd %xmm5,%xmm1,%xmm1 - vmovdqa %xmm2,96(%esp) - xorl %edi,%edx - shldl $5,%ecx,%ecx - vpsrldq $4,%xmm5,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - vpxor %xmm2,%xmm6,%xmm6 - xorl %edi,%edx - addl %ecx,%ebx - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%ecx,%ecx - xorl %edi,%ebp - vmovdqa %xmm1,16(%esp) - movl %ebx,%esi - addl 36(%esp),%eax - vpxor %xmm0,%xmm6,%xmm6 - xorl %edx,%ecx - shldl $5,%ebx,%ebx - addl %ebp,%eax - andl %ecx,%esi - vpsrld $31,%xmm6,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - shrdl $7,%ebx,%ebx - xorl %edx,%esi - vpslldq $12,%xmm6,%xmm2 - vpaddd %xmm6,%xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm1 - vpor %xmm0,%xmm6,%xmm6 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - vpslld $2,%xmm2,%xmm2 - vmovdqa 64(%esp),%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%ebp - vpxor %xmm1,%xmm6,%xmm6 - movl %edi,%esi - addl 44(%esp),%edx - xorl %ebx,%eax - shldl $5,%edi,%edi - vpxor %xmm2,%xmm6,%xmm6 - addl %ebp,%edx - andl %eax,%esi - vmovdqa 112(%esp),%xmm2 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%esi - vpalignr $8,%xmm3,%xmm4,%xmm7 - movl %edx,%ebp - addl 48(%esp),%ecx - vpaddd %xmm6,%xmm2,%xmm2 - vmovdqa %xmm3,64(%esp) - xorl %eax,%edi - shldl $5,%edx,%edx - vpsrldq $4,%xmm6,%xmm1 - addl %esi,%ecx - andl %edi,%ebp - vpxor %xmm3,%xmm7,%xmm7 - xorl %eax,%edi - addl %edx,%ecx - vpxor %xmm5,%xmm1,%xmm1 - shrdl $7,%edx,%edx - xorl %eax,%ebp - vmovdqa %xmm2,32(%esp) - movl %ecx,%esi - addl 52(%esp),%ebx - vpxor %xmm1,%xmm7,%xmm7 - xorl %edi,%edx - shldl $5,%ecx,%ecx - addl %ebp,%ebx - andl %edx,%esi - vpsrld $31,%xmm7,%xmm1 - xorl %edi,%edx - addl %ecx,%ebx - shrdl $7,%ecx,%ecx - xorl %edi,%esi - vpslldq $12,%xmm7,%xmm3 - vpaddd %xmm7,%xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - xorl %edx,%ecx - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm2 - vpor %xmm1,%xmm7,%xmm7 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - vmovdqa 80(%esp),%xmm1 - shrdl $7,%ebx,%ebx - xorl %edx,%ebp - vpxor %xmm2,%xmm7,%xmm7 - movl %eax,%esi - addl 60(%esp),%edi - xorl %ecx,%ebx - shldl $5,%eax,%eax - vpxor %xmm3,%xmm7,%xmm7 - addl %ebp,%edi - andl %ebx,%esi - vmovdqa 112(%esp),%xmm3 - xorl %ecx,%ebx - addl %eax,%edi - vpalignr $8,%xmm6,%xmm7,%xmm2 - vpxor %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - vpxor %xmm1,%xmm0,%xmm0 - vmovdqa %xmm4,80(%esp) - xorl %ebx,%eax - shldl $5,%edi,%edi - vmovdqa %xmm3,%xmm4 - vpaddd %xmm7,%xmm3,%xmm3 - addl %esi,%edx - andl %eax,%ebp - vpxor %xmm2,%xmm0,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - shrdl $7,%edi,%edi - xorl %ebx,%ebp - vpsrld $30,%xmm0,%xmm2 - vmovdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - shldl $5,%edx,%edx - vpslld $2,%xmm0,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - shrdl $7,%edx,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - vpor %xmm2,%xmm0,%xmm0 - xorl %edi,%edx - shldl $5,%ecx,%ecx - vmovdqa 96(%esp),%xmm2 - addl %esi,%ebx - andl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm7,%xmm0,%xmm3 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - vpxor %xmm2,%xmm1,%xmm1 - vmovdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - vmovdqa %xmm4,%xmm5 - vpaddd %xmm0,%xmm4,%xmm4 - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpxor %xmm3,%xmm1,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - vpsrld $30,%xmm1,%xmm3 - vmovdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpslld $2,%xmm1,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vpor %xmm3,%xmm1,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - vmovdqa 64(%esp),%xmm3 - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpalignr $8,%xmm0,%xmm1,%xmm4 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - vpxor %xmm3,%xmm2,%xmm2 - vmovdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - vmovdqa 128(%esp),%xmm6 - vpaddd %xmm1,%xmm5,%xmm5 - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpxor %xmm4,%xmm2,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - vpsrld $30,%xmm2,%xmm4 - vmovdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpslld $2,%xmm2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - vpor %xmm4,%xmm2,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - vmovdqa 80(%esp),%xmm4 - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - vpalignr $8,%xmm1,%xmm2,%xmm5 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - vpxor %xmm4,%xmm3,%xmm3 - vmovdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - vmovdqa %xmm6,%xmm7 - vpaddd %xmm2,%xmm6,%xmm6 - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpxor %xmm5,%xmm3,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - vpsrld $30,%xmm3,%xmm5 - vmovdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpslld $2,%xmm3,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpor %xmm5,%xmm3,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - vmovdqa 96(%esp),%xmm5 - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpalignr $8,%xmm2,%xmm3,%xmm6 - vpxor %xmm0,%xmm4,%xmm4 - addl (%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - vpxor %xmm5,%xmm4,%xmm4 - vmovdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - vmovdqa %xmm7,%xmm0 - vpaddd %xmm3,%xmm7,%xmm7 - shrdl $7,%edi,%edi - addl %edx,%ecx - vpxor %xmm6,%xmm4,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - vpsrld $30,%xmm4,%xmm6 - vmovdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpslld $2,%xmm4,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vpor %xmm6,%xmm4,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - vmovdqa 64(%esp),%xmm6 - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpalignr $8,%xmm3,%xmm4,%xmm7 - vpxor %xmm1,%xmm5,%xmm5 - addl 16(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - vpxor %xmm6,%xmm5,%xmm5 - vmovdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - vmovdqa %xmm0,%xmm1 - vpaddd %xmm4,%xmm0,%xmm0 - shrdl $7,%eax,%eax - addl %edi,%edx - vpxor %xmm7,%xmm5,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - vpsrld $30,%xmm5,%xmm7 - vmovdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - vpslld $2,%xmm5,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - vpor %xmm7,%xmm5,%xmm5 - addl 28(%esp),%eax - vmovdqa 80(%esp),%xmm7 - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - vpalignr $8,%xmm4,%xmm5,%xmm0 - vpxor %xmm2,%xmm6,%xmm6 - addl 32(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vpxor %xmm7,%xmm6,%xmm6 - vmovdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - vmovdqa %xmm1,%xmm2 - vpaddd %xmm5,%xmm1,%xmm1 - shldl $5,%eax,%eax - addl %esi,%edi - vpxor %xmm0,%xmm6,%xmm6 - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - vpsrld $30,%xmm6,%xmm0 - vmovdqa %xmm1,16(%esp) - andl %ebx,%ebp - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %edi,%esi - vpslld $2,%xmm6,%xmm6 - xorl %ebx,%ebp - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - vpor %xmm0,%xmm6,%xmm6 - xorl %ebx,%eax - shrdl $7,%edi,%edi - vmovdqa 96(%esp),%xmm0 - movl %edx,%ebp - xorl %eax,%esi - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - shrdl $7,%edx,%edx - movl %ecx,%esi - xorl %edi,%ebp - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - vpalignr $8,%xmm5,%xmm6,%xmm1 - vpxor %xmm3,%xmm7,%xmm7 - addl 48(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - shrdl $7,%ecx,%ecx - vpxor %xmm0,%xmm7,%xmm7 - vmovdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - vmovdqa 144(%esp),%xmm3 - vpaddd %xmm6,%xmm2,%xmm2 - shldl $5,%ebx,%ebx - addl %esi,%eax - vpxor %xmm1,%xmm7,%xmm7 - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - vpsrld $30,%xmm7,%xmm1 - vmovdqa %xmm2,32(%esp) - andl %ecx,%ebp - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - vpslld $2,%xmm7,%xmm7 - xorl %ecx,%ebp - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - vpor %xmm1,%xmm7,%xmm7 - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vmovdqa 64(%esp),%xmm1 - movl %edi,%ebp - xorl %ebx,%esi - shldl $5,%edi,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - shrdl $7,%edi,%edi - movl %edx,%esi - xorl %eax,%ebp - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - vpalignr $8,%xmm6,%xmm7,%xmm2 - vpxor %xmm4,%xmm0,%xmm0 - addl (%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - shrdl $7,%edx,%edx - vpxor %xmm1,%xmm0,%xmm0 - vmovdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - vmovdqa %xmm3,%xmm4 - vpaddd %xmm7,%xmm3,%xmm3 - shldl $5,%ecx,%ecx - addl %esi,%ebx - vpxor %xmm2,%xmm0,%xmm0 - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - vpsrld $30,%xmm0,%xmm2 - vmovdqa %xmm3,48(%esp) - andl %edx,%ebp - xorl %edi,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - vpslld $2,%xmm0,%xmm0 - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - vpor %xmm2,%xmm0,%xmm0 - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - vmovdqa 80(%esp),%xmm2 - movl %eax,%ebp - xorl %ecx,%esi - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - shrdl $7,%eax,%eax - movl %edi,%esi - xorl %ebx,%ebp - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - vpalignr $8,%xmm7,%xmm0,%xmm3 - vpxor %xmm5,%xmm1,%xmm1 - addl 16(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - shrdl $7,%edi,%edi - vpxor %xmm2,%xmm1,%xmm1 - vmovdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - vmovdqa %xmm4,%xmm5 - vpaddd %xmm0,%xmm4,%xmm4 - shldl $5,%edx,%edx - addl %esi,%ecx - vpxor %xmm3,%xmm1,%xmm1 - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - vpsrld $30,%xmm1,%xmm3 - vmovdqa %xmm4,(%esp) - andl %edi,%ebp - xorl %eax,%edi - shrdl $7,%edx,%edx - movl %ecx,%esi - vpslld $2,%xmm1,%xmm1 - xorl %edi,%ebp - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - vpor %xmm3,%xmm1,%xmm1 - xorl %edi,%edx - shrdl $7,%ecx,%ecx - vmovdqa 96(%esp),%xmm3 - movl %ebx,%ebp - xorl %edx,%esi - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - shrdl $7,%ebx,%ebx - movl %eax,%esi - xorl %ecx,%ebp - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - vpalignr $8,%xmm0,%xmm1,%xmm4 - vpxor %xmm6,%xmm2,%xmm2 - addl 32(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - shrdl $7,%eax,%eax - vpxor %xmm3,%xmm2,%xmm2 - vmovdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - vmovdqa %xmm5,%xmm6 - vpaddd %xmm1,%xmm5,%xmm5 - shldl $5,%edi,%edi - addl %esi,%edx - vpxor %xmm4,%xmm2,%xmm2 - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - vpsrld $30,%xmm2,%xmm4 - vmovdqa %xmm5,16(%esp) - andl %eax,%ebp - xorl %ebx,%eax - shrdl $7,%edi,%edi - movl %edx,%esi - vpslld $2,%xmm2,%xmm2 - xorl %eax,%ebp - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - vpor %xmm4,%xmm2,%xmm2 - xorl %eax,%edi - shrdl $7,%edx,%edx - vmovdqa 64(%esp),%xmm4 - movl %ecx,%ebp - xorl %edi,%esi - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - shrdl $7,%ecx,%ecx - movl %ebx,%esi - xorl %edx,%ebp - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - vpalignr $8,%xmm1,%xmm2,%xmm5 - vpxor %xmm7,%xmm3,%xmm3 - addl 48(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - vpxor %xmm4,%xmm3,%xmm3 - vmovdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - vmovdqa %xmm6,%xmm7 - vpaddd %xmm2,%xmm6,%xmm6 - shrdl $7,%ebx,%ebx - addl %eax,%edi - vpxor %xmm5,%xmm3,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - vpsrld $30,%xmm3,%xmm5 - vmovdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - vpslld $2,%xmm3,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vpor %xmm5,%xmm3,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl (%esp),%eax - vpaddd %xmm3,%xmm7,%xmm7 - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - vmovdqa %xmm7,48(%esp) - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je L010done - vmovdqa 160(%esp),%xmm7 - vmovdqa 176(%esp),%xmm6 - vmovdqu (%ebp),%xmm0 - vmovdqu 16(%ebp),%xmm1 - vmovdqu 32(%ebp),%xmm2 - vmovdqu 48(%ebp),%xmm3 - addl $64,%ebp - vpshufb %xmm6,%xmm0,%xmm0 - movl %ebp,196(%esp) - vmovdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - vpshufb %xmm6,%xmm1,%xmm1 - movl %ecx,%ebp - shldl $5,%ecx,%ecx - vpaddd %xmm7,%xmm0,%xmm4 - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - vmovdqa %xmm4,(%esp) - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - vpshufb %xmm6,%xmm2,%xmm2 - movl %edx,%ebp - shldl $5,%edx,%edx - vpaddd %xmm7,%xmm1,%xmm5 - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - vmovdqa %xmm5,16(%esp) - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - vpshufb %xmm6,%xmm3,%xmm3 - movl %edi,%ebp - shldl $5,%edi,%edi - vpaddd %xmm7,%xmm2,%xmm6 - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - vmovdqa %xmm6,32(%esp) - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,%ebx - movl %ecx,8(%ebp) - xorl %edx,%ebx - movl %edx,12(%ebp) - movl %edi,16(%ebp) - movl %esi,%ebp - andl %ebx,%esi - movl %ebp,%ebx - jmp L009loop -.align 4,0x90 -L010done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - xorl %edx,%esi - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - shldl $5,%eax,%eax - addl %esi,%edi - xorl %ecx,%ebp - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - shldl $5,%edi,%edi - addl %ebp,%edx - xorl %ebx,%esi - shrdl $7,%eax,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - shldl $5,%edx,%edx - addl %esi,%ecx - xorl %eax,%ebp - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - shldl $5,%ecx,%ecx - addl %ebp,%ebx - xorl %edi,%esi - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - shldl $5,%ebx,%ebx - addl %esi,%eax - xorl %edx,%ebp - shrdl $7,%ecx,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - shldl $5,%eax,%eax - addl %ebp,%edi - xorl %ecx,%esi - shrdl $7,%ebx,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - shldl $5,%edi,%edi - addl %esi,%edx - xorl %ebx,%ebp - shrdl $7,%eax,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - shldl $5,%edx,%edx - addl %ebp,%ecx - xorl %eax,%esi - shrdl $7,%edi,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - shldl $5,%ecx,%ecx - addl %esi,%ebx - xorl %edi,%ebp - shrdl $7,%edx,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - shldl $5,%ebx,%ebx - addl %ebp,%eax - shrdl $7,%ecx,%ecx - addl %ebx,%eax - vzeroall - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -LK_XX_XX: -.long 1518500249,1518500249,1518500249,1518500249 -.long 1859775393,1859775393,1859775393,1859775393 -.long 2400959708,2400959708,2400959708,2400959708 -.long 3395469782,3395469782,3395469782,3395469782 -.long 66051,67438087,134810123,202182159 -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/sha/sha256-586.s b/deps/openssl/asm/x86-macosx-gas/sha/sha256-586.s deleted file mode 100644 index d30c582726c2be..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/sha/sha256-586.s +++ /dev/null @@ -1,6785 +0,0 @@ -.file "sha512-586.s" -.text -.globl _sha256_block_data_order -.align 4 -_sha256_block_data_order: -L_sha256_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call L000pic_point -L000pic_point: - popl %ebp - leal L001K256-L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $6,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K256(%ebp),%edx - movl (%edx),%ecx - movl 4(%edx),%ebx - testl $1048576,%ecx - jnz L002loop - movl 8(%edx),%edx - testl $16777216,%ecx - jz L003no_xmm - andl $1073741824,%ecx - andl $268435968,%ebx - testl $536870912,%edx - jnz L004shaext - orl %ebx,%ecx - andl $1342177280,%ecx - cmpl $1342177280,%ecx - je L005AVX - testl $512,%ebx - jnz L006SSSE3 -L003no_xmm: - subl %edi,%eax - cmpl $256,%eax - jae L007unrolled - jmp L002loop -.align 4,0x90 -L002loop: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - bswap %eax - movl 12(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - bswap %eax - movl 28(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %eax - movl 44(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - bswap %eax - movl 60(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - addl $64,%edi - leal -36(%esp),%esp - movl %edi,104(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,8(%esp) - xorl %ecx,%ebx - movl %ecx,12(%esp) - movl %edi,16(%esp) - movl %ebx,(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - movl %edi,32(%esp) -.align 4,0x90 -L00800_15: - movl %edx,%ecx - movl 24(%esp),%esi - rorl $14,%ecx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl 96(%esp),%ebx - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - addl $4,%ebp - addl %ebx,%eax - cmpl $3248222580,%esi - jne L00800_15 - movl 156(%esp),%ecx - jmp L00916_63 -.align 4,0x90 -L00916_63: - movl %ecx,%ebx - movl 104(%esp),%esi - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 160(%esp),%ebx - shrl $10,%edi - addl 124(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 24(%esp),%esi - rorl $14,%ecx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl %ebx,96(%esp) - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - movl 156(%esp),%ecx - addl $4,%ebp - addl %ebx,%eax - cmpl $3329325298,%esi - jne L00916_63 - movl 356(%esp),%esi - movl 8(%esp),%ebx - movl 16(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 32(%esp),%ecx - movl 360(%esp),%edi - addl 16(%esi),%edx - addl 20(%esi),%eax - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %eax,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - leal 356(%esp),%esp - subl $256,%ebp - cmpl 8(%esp),%edi - jb L002loop - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001K256: -.long 1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298 -.long 66051,67438087,134810123,202182159 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.align 4,0x90 -L007unrolled: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebp - movl 8(%esi),%ecx - movl 12(%esi),%ebx - movl %ebp,4(%esp) - xorl %ecx,%ebp - movl %ecx,8(%esp) - movl %ebx,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %esi,28(%esp) - jmp L010grand_loop -.align 4,0x90 -L010grand_loop: - movl (%edi),%ebx - movl 4(%edi),%ecx - bswap %ebx - movl 8(%edi),%esi - bswap %ecx - movl %ebx,32(%esp) - bswap %esi - movl %ecx,36(%esp) - movl %esi,40(%esp) - movl 12(%edi),%ebx - movl 16(%edi),%ecx - bswap %ebx - movl 20(%edi),%esi - bswap %ecx - movl %ebx,44(%esp) - bswap %esi - movl %ecx,48(%esp) - movl %esi,52(%esp) - movl 24(%edi),%ebx - movl 28(%edi),%ecx - bswap %ebx - movl 32(%edi),%esi - bswap %ecx - movl %ebx,56(%esp) - bswap %esi - movl %ecx,60(%esp) - movl %esi,64(%esp) - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %ebx - movl 44(%edi),%esi - bswap %ecx - movl %ebx,68(%esp) - bswap %esi - movl %ecx,72(%esp) - movl %esi,76(%esp) - movl 48(%edi),%ebx - movl 52(%edi),%ecx - bswap %ebx - movl 56(%edi),%esi - bswap %ecx - movl %ebx,80(%esp) - bswap %esi - movl %ecx,84(%esp) - movl %esi,88(%esp) - movl 60(%edi),%ebx - addl $64,%edi - bswap %ebx - movl %edi,100(%esp) - movl %ebx,92(%esp) - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 32(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1116352408(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 36(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1899447441(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 40(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3049323471(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 44(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3921009573(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 48(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 961987163(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 52(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1508970993(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 56(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2453635748(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 60(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2870763221(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 64(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3624381080(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 68(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 310598401(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 72(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 607225278(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 76(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1426881987(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 80(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1925078388(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 84(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2162078206(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 88(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2614888103(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 92(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3248222580(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3835390401(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 4022224774(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 264347078(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 604807628(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 770255983(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1249150122(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1555081692(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1996064986(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2554220882(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2821834349(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2952996808(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3210313671(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3336571891(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3584528711(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 113926993(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 338241895(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 666307205(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 773529912(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1294757372(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1396182291(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1695183700(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1986661051(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2177026350(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2456956037(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2730485921(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2820302411(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3259730800(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3345764771(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3516065817(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3600352804(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 4094571909(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 275423344(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 430227734(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 506948616(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 659060556(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 883997877(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 958139571(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1322822218(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1537002063(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1747873779(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1955562222(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2024104815(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2227730452(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2361852424(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2428436474(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2756734187(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3204031479(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3329325298(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 96(%esp),%esi - xorl %edi,%ebp - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebp - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebp,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebp,4(%esp) - xorl %edi,%ebp - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - cmpl 104(%esp),%edi - jb L010grand_loop - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L004shaext: - subl $32,%esp - movdqu (%esi),%xmm1 - leal 128(%ebp),%ebp - movdqu 16(%esi),%xmm2 - movdqa 128(%ebp),%xmm7 - pshufd $27,%xmm1,%xmm0 - pshufd $177,%xmm1,%xmm1 - pshufd $27,%xmm2,%xmm2 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp L011loop_shaext -.align 4,0x90 -L011loop_shaext: - movdqu (%edi),%xmm3 - movdqu 16(%edi),%xmm4 - movdqu 32(%edi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%edi),%xmm6 - movdqa %xmm2,16(%esp) - movdqa -128(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - nop - movdqa %xmm1,(%esp) -.byte 15,56,203,202 - movdqa -112(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - leal 64(%edi),%edi -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -80(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa -64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa -48(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -16(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa (%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 16(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 48(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 80(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - movdqa 96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa 128(%ebp),%xmm7 -.byte 15,56,203,202 - movdqa 112(%ebp),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - cmpl %edi,%eax - nop -.byte 15,56,203,202 - paddd 16(%esp),%xmm2 - paddd (%esp),%xmm1 - jnz L011loop_shaext - pshufd $177,%xmm2,%xmm2 - pshufd $27,%xmm1,%xmm7 - pshufd $177,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - movl 44(%esp),%esp - movdqu %xmm1,(%esi) - movdqu %xmm2,16(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L006SSSE3: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - movdqa 256(%ebp),%xmm7 - jmp L012grand_ssse3 -.align 4,0x90 -L012grand_ssse3: - movdqu (%edi),%xmm0 - movdqu 16(%edi),%xmm1 - movdqu 32(%edi),%xmm2 - movdqu 48(%edi),%xmm3 - addl $64,%edi -.byte 102,15,56,0,199 - movl %edi,100(%esp) -.byte 102,15,56,0,207 - movdqa (%ebp),%xmm4 -.byte 102,15,56,0,215 - movdqa 16(%ebp),%xmm5 - paddd %xmm0,%xmm4 -.byte 102,15,56,0,223 - movdqa 32(%ebp),%xmm6 - paddd %xmm1,%xmm5 - movdqa 48(%ebp),%xmm7 - movdqa %xmm4,32(%esp) - paddd %xmm2,%xmm6 - movdqa %xmm5,48(%esp) - paddd %xmm3,%xmm7 - movdqa %xmm6,64(%esp) - movdqa %xmm7,80(%esp) - jmp L013ssse3_00_47 -.align 4,0x90 -L013ssse3_00_47: - addl $64,%ebp - movl %edx,%ecx - movdqa %xmm1,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,224,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,250,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm3,%xmm7 - xorl %esi,%ecx - addl 32(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm0 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm0 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm0,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa (%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm0,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,32(%esp) - movl %edx,%ecx - movdqa %xmm2,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,225,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,251,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm0,%xmm7 - xorl %esi,%ecx - addl 48(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm1 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm1 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm1,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 16(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm1,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,48(%esp) - movl %edx,%ecx - movdqa %xmm3,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,226,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,248,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm1,%xmm7 - xorl %esi,%ecx - addl 64(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm2 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm2 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm2,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 32(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm2,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,64(%esp) - movl %edx,%ecx - movdqa %xmm0,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,227,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,249,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm2,%xmm7 - xorl %esi,%ecx - addl 80(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm3 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm3 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm3,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 48(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm3,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne L013ssse3_00_47 - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - movdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb L012grand_ssse3 - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L005AVX: - andl $264,%edx - cmpl $264,%edx - je L014AVX_BMI - leal -96(%esp),%esp - vzeroall - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - vmovdqa 256(%ebp),%xmm7 - jmp L015grand_avx -.align 5,0x90 -L015grand_avx: - vmovdqu (%edi),%xmm0 - vmovdqu 16(%edi),%xmm1 - vmovdqu 32(%edi),%xmm2 - vmovdqu 48(%edi),%xmm3 - addl $64,%edi - vpshufb %xmm7,%xmm0,%xmm0 - movl %edi,100(%esp) - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd (%ebp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 16(%ebp),%xmm1,%xmm5 - vpaddd 32(%ebp),%xmm2,%xmm6 - vpaddd 48(%ebp),%xmm3,%xmm7 - vmovdqa %xmm4,32(%esp) - vmovdqa %xmm5,48(%esp) - vmovdqa %xmm6,64(%esp) - vmovdqa %xmm7,80(%esp) - jmp L016avx_00_47 -.align 4,0x90 -L016avx_00_47: - addl $64,%ebp - vpalignr $4,%xmm0,%xmm1,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - vpalignr $4,%xmm2,%xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - vpaddd %xmm7,%xmm0,%xmm0 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - vpshufd $250,%xmm3,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 32(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - vpaddd %xmm4,%xmm0,%xmm0 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - vpaddd %xmm7,%xmm0,%xmm0 - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm0,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 40(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm0,%xmm0 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - vpaddd (%ebp),%xmm0,%xmm6 - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,32(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - vpalignr $4,%xmm3,%xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - vpaddd %xmm7,%xmm1,%xmm1 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - vpshufd $250,%xmm0,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 48(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - vpaddd %xmm4,%xmm1,%xmm1 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - vpaddd %xmm7,%xmm1,%xmm1 - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm1,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 56(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm1,%xmm1 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - vpaddd 16(%ebp),%xmm1,%xmm6 - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,48(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - vpalignr $4,%xmm0,%xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - vpaddd %xmm7,%xmm2,%xmm2 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - vpshufd $250,%xmm1,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 64(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - vpaddd %xmm4,%xmm2,%xmm2 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - vpaddd %xmm7,%xmm2,%xmm2 - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm2,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 72(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm2,%xmm2 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - vpaddd 32(%ebp),%xmm2,%xmm6 - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,64(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - vpalignr $4,%xmm1,%xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - vpsrld $7,%xmm4,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - vpaddd %xmm7,%xmm3,%xmm3 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrld $3,%xmm4,%xmm7 - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - vpslld $14,%xmm4,%xmm5 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - vpxor %xmm6,%xmm7,%xmm4 - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - vpshufd $250,%xmm2,%xmm7 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpsrld $11,%xmm6,%xmm6 - addl 80(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpxor %xmm5,%xmm4,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - vpslld $11,%xmm5,%xmm5 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - vpxor %xmm6,%xmm4,%xmm4 - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - vpsrld $10,%xmm7,%xmm6 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - vpxor %xmm5,%xmm4,%xmm4 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - vpaddd %xmm4,%xmm3,%xmm3 - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - vpxor %xmm5,%xmm6,%xmm6 - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - vpsrlq $19,%xmm7,%xmm7 - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - vpshufd $132,%xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - vpsrldq $8,%xmm7,%xmm7 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - vpaddd %xmm7,%xmm3,%xmm3 - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - vpshufd $80,%xmm3,%xmm7 - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - vpsrld $10,%xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - vpsrlq $17,%xmm7,%xmm5 - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - vpxor %xmm5,%xmm6,%xmm6 - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - vpsrlq $19,%xmm7,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - vpshufd $232,%xmm6,%xmm7 - addl 88(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - vpslldq $8,%xmm7,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - vpaddd %xmm7,%xmm3,%xmm3 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - vpaddd 48(%ebp),%xmm3,%xmm6 - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - vmovdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne L016avx_00_47 - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - shrdl $9,%ecx,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - shrdl $11,%ecx,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - shrdl $2,%ecx,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - shrdl $14,%edx,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - shrdl $5,%edx,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - shrdl $6,%edx,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - shrdl $9,%ecx,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - shrdl $11,%ecx,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - shrdl $2,%ecx,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - vmovdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb L015grand_avx - movl 108(%esp),%esp - vzeroall - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L014AVX_BMI: - leal -96(%esp),%esp - vzeroall - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - vmovdqa 256(%ebp),%xmm7 - jmp L017grand_avx_bmi -.align 5,0x90 -L017grand_avx_bmi: - vmovdqu (%edi),%xmm0 - vmovdqu 16(%edi),%xmm1 - vmovdqu 32(%edi),%xmm2 - vmovdqu 48(%edi),%xmm3 - addl $64,%edi - vpshufb %xmm7,%xmm0,%xmm0 - movl %edi,100(%esp) - vpshufb %xmm7,%xmm1,%xmm1 - vpshufb %xmm7,%xmm2,%xmm2 - vpaddd (%ebp),%xmm0,%xmm4 - vpshufb %xmm7,%xmm3,%xmm3 - vpaddd 16(%ebp),%xmm1,%xmm5 - vpaddd 32(%ebp),%xmm2,%xmm6 - vpaddd 48(%ebp),%xmm3,%xmm7 - vmovdqa %xmm4,32(%esp) - vmovdqa %xmm5,48(%esp) - vmovdqa %xmm6,64(%esp) - vmovdqa %xmm7,80(%esp) - jmp L018avx_bmi_00_47 -.align 4,0x90 -L018avx_bmi_00_47: - addl $64,%ebp - vpalignr $4,%xmm0,%xmm1,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - vpaddd %xmm7,%xmm0,%xmm0 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 28(%esp),%edx - andl %eax,%ebx - addl 32(%esp),%edx - vpshufd $250,%xmm3,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 24(%esp),%edx - andl %ebx,%eax - addl 36(%esp),%edx - vpaddd %xmm4,%xmm0,%xmm0 - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm0,%xmm0 - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm0,%xmm7 - addl 20(%esp),%edx - andl %eax,%ebx - addl 40(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm0,%xmm0 - addl 16(%esp),%edx - andl %ebx,%eax - addl 44(%esp),%edx - vpaddd (%ebp),%xmm0,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,32(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - vpaddd %xmm7,%xmm1,%xmm1 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 12(%esp),%edx - andl %eax,%ebx - addl 48(%esp),%edx - vpshufd $250,%xmm0,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 8(%esp),%edx - andl %ebx,%eax - addl 52(%esp),%edx - vpaddd %xmm4,%xmm1,%xmm1 - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm1,%xmm1 - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm1,%xmm7 - addl 4(%esp),%edx - andl %eax,%ebx - addl 56(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm1,%xmm1 - addl (%esp),%edx - andl %ebx,%eax - addl 60(%esp),%edx - vpaddd 16(%ebp),%xmm1,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,48(%esp) - vpalignr $4,%xmm2,%xmm3,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - vpalignr $4,%xmm0,%xmm1,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - vpaddd %xmm7,%xmm2,%xmm2 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 28(%esp),%edx - andl %eax,%ebx - addl 64(%esp),%edx - vpshufd $250,%xmm1,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 24(%esp),%edx - andl %ebx,%eax - addl 68(%esp),%edx - vpaddd %xmm4,%xmm2,%xmm2 - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm2,%xmm2 - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm2,%xmm7 - addl 20(%esp),%edx - andl %eax,%ebx - addl 72(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm2,%xmm2 - addl 16(%esp),%edx - andl %ebx,%eax - addl 76(%esp),%edx - vpaddd 32(%ebp),%xmm2,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,64(%esp) - vpalignr $4,%xmm3,%xmm0,%xmm4 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - vpalignr $4,%xmm1,%xmm2,%xmm7 - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - vpsrld $7,%xmm4,%xmm6 - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - vpaddd %xmm7,%xmm3,%xmm3 - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrld $3,%xmm4,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpslld $14,%xmm4,%xmm5 - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpxor %xmm6,%xmm7,%xmm4 - addl 12(%esp),%edx - andl %eax,%ebx - addl 80(%esp),%edx - vpshufd $250,%xmm2,%xmm7 - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - vpsrld $11,%xmm6,%xmm6 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpslld $11,%xmm5,%xmm5 - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - vpxor %xmm6,%xmm4,%xmm4 - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpsrld $10,%xmm7,%xmm6 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpxor %xmm5,%xmm4,%xmm4 - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpsrlq $17,%xmm7,%xmm5 - addl 8(%esp),%edx - andl %ebx,%eax - addl 84(%esp),%edx - vpaddd %xmm4,%xmm3,%xmm3 - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - vpxor %xmm5,%xmm6,%xmm6 - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpsrlq $19,%xmm7,%xmm7 - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpxor %xmm7,%xmm6,%xmm6 - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - vpshufd $132,%xmm6,%xmm7 - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - vpsrldq $8,%xmm7,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - vpaddd %xmm7,%xmm3,%xmm3 - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - vpshufd $80,%xmm3,%xmm7 - addl 4(%esp),%edx - andl %eax,%ebx - addl 88(%esp),%edx - vpsrld $10,%xmm7,%xmm6 - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - vpsrlq $17,%xmm7,%xmm5 - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - vpxor %xmm5,%xmm6,%xmm6 - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - vpsrlq $19,%xmm7,%xmm7 - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - vpxor %xmm7,%xmm6,%xmm6 - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - vpshufd $232,%xmm6,%xmm7 - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - vpslldq $8,%xmm7,%xmm7 - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - vpaddd %xmm7,%xmm3,%xmm3 - addl (%esp),%edx - andl %ebx,%eax - addl 92(%esp),%edx - vpaddd 48(%ebp),%xmm3,%xmm6 - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - vmovdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne L018avx_bmi_00_47 - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - andl %eax,%ebx - addl 32(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - andl %ebx,%eax - addl 36(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - andl %eax,%ebx - addl 40(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - andl %ebx,%eax - addl 44(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - andl %eax,%ebx - addl 48(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - andl %ebx,%eax - addl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - andl %eax,%ebx - addl 56(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl (%esp),%edx - andl %ebx,%eax - addl 60(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,16(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 24(%esp),%edx,%esi - xorl %edi,%ecx - andl 20(%esp),%edx - movl %eax,(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 4(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - andl %eax,%ebx - addl 64(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 12(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,12(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 20(%esp),%edx,%esi - xorl %edi,%ecx - andl 16(%esp),%edx - movl %ebx,28(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl (%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - andl %ebx,%eax - addl 68(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 8(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,8(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 16(%esp),%edx,%esi - xorl %edi,%ecx - andl 12(%esp),%edx - movl %eax,24(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 28(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - andl %eax,%ebx - addl 72(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 4(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,4(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 12(%esp),%edx,%esi - xorl %edi,%ecx - andl 8(%esp),%edx - movl %ebx,20(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 24(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - andl %ebx,%eax - addl 76(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl (%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 8(%esp),%edx,%esi - xorl %edi,%ecx - andl 4(%esp),%edx - movl %eax,16(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 20(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - andl %eax,%ebx - addl 80(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 28(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,28(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 4(%esp),%edx,%esi - xorl %edi,%ecx - andl (%esp),%edx - movl %ebx,12(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 16(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - andl %ebx,%eax - addl 84(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 24(%esp),%edx - leal (%eax,%ecx,1),%eax - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,24(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl (%esp),%edx,%esi - xorl %edi,%ecx - andl 28(%esp),%edx - movl %eax,8(%esp) - orl %esi,%edx - rorxl $2,%eax,%edi - rorxl $13,%eax,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%eax,%ecx - xorl %edi,%esi - movl 12(%esp),%edi - xorl %esi,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - andl %eax,%ebx - addl 88(%esp),%edx - xorl %edi,%ebx - addl %edx,%ecx - addl 20(%esp),%edx - leal (%ebx,%ecx,1),%ebx - rorxl $6,%edx,%ecx - rorxl $11,%edx,%esi - movl %edx,20(%esp) - rorxl $25,%edx,%edi - xorl %esi,%ecx - andnl 28(%esp),%edx,%esi - xorl %edi,%ecx - andl 24(%esp),%edx - movl %ebx,4(%esp) - orl %esi,%edx - rorxl $2,%ebx,%edi - rorxl $13,%ebx,%esi - leal (%edx,%ecx,1),%edx - rorxl $22,%ebx,%ecx - xorl %edi,%esi - movl 8(%esp),%edi - xorl %esi,%ecx - xorl %edi,%ebx - addl (%esp),%edx - andl %ebx,%eax - addl 92(%esp),%edx - xorl %edi,%eax - addl %edx,%ecx - addl 16(%esp),%edx - leal (%eax,%ecx,1),%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - vmovdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb L017grand_avx_bmi - movl 108(%esp),%esp - vzeroall - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/sha/sha512-586.s b/deps/openssl/asm/x86-macosx-gas/sha/sha512-586.s deleted file mode 100644 index d539b1d168116f..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/sha/sha512-586.s +++ /dev/null @@ -1,2831 +0,0 @@ -.file "sha512-586.s" -.text -.globl _sha512_block_data_order -.align 4 -_sha512_block_data_order: -L_sha512_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call L000pic_point -L000pic_point: - popl %ebp - leal L001K512-L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $7,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K512(%ebp),%edx - movl (%edx),%ecx - testl $67108864,%ecx - jz L002loop_x86 - movl 4(%edx),%edx - movq (%esi),%mm0 - andl $16777216,%ecx - movq 8(%esi),%mm1 - andl $512,%edx - movq 16(%esi),%mm2 - orl %edx,%ecx - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 - cmpl $16777728,%ecx - je L003SSSE3 - subl $80,%esp - jmp L004loop_sse2 -.align 4,0x90 -L004loop_sse2: - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - pxor %mm1,%mm2 - movq %mm7,56(%esp) - movq %mm0,%mm3 - movl (%edi),%eax - movl 4(%edi),%ebx - addl $8,%edi - movl $15,%edx - bswap %eax - bswap %ebx - jmp L00500_14_sse2 -.align 4,0x90 -L00500_14_sse2: - movd %eax,%mm1 - movl (%edi),%eax - movd %ebx,%mm7 - movl 4(%edi),%ebx - addl $8,%edi - bswap %eax - bswap %ebx - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - movq 48(%esp),%mm6 - decl %edx - jnz L00500_14_sse2 - movd %eax,%mm1 - movd %ebx,%mm7 - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - pxor %mm0,%mm0 - movl $32,%edx - jmp L00616_79_sse2 -.align 4,0x90 -L00616_79_sse2: - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm0 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm2 - addl $8,%ebp - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm2 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm0 - addl $8,%ebp - decl %edx - jnz L00616_79_sse2 - paddq %mm3,%mm0 - movq 8(%esp),%mm1 - movq 24(%esp),%mm3 - movq 40(%esp),%mm5 - movq 48(%esp),%mm6 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movl $640,%eax - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal (%esp,%eax,1),%esp - subl %eax,%ebp - cmpl 88(%esp),%edi - jb L004loop_sse2 - movl 92(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L003SSSE3: - leal -64(%esp),%edx - subl $256,%esp - movdqa 640(%ebp),%xmm1 - movdqu (%edi),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%edi),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%edi),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%edi),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%edi),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%edi),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%edi),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%edi),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movdqa %xmm2,-16(%edx) - nop -.align 5,0x90 -L007loop_ssse3: - movdqa 16(%edx),%xmm2 - movdqa %xmm3,48(%edx) - leal 128(%ebp),%ebp - movq %mm1,8(%esp) - movl %edi,%ebx - movq %mm2,16(%esp) - leal 128(%edi),%edi - movq %mm3,24(%esp) - cmpl %eax,%edi - movq %mm5,40(%esp) - cmovbl %edi,%ebx - movq %mm6,48(%esp) - movl $4,%ecx - pxor %mm1,%mm2 - movq %mm7,56(%esp) - pxor %mm3,%mm3 - jmp L00800_47_ssse3 -.align 5,0x90 -L00800_47_ssse3: - movdqa %xmm5,%xmm3 - movdqa %xmm2,%xmm1 -.byte 102,15,58,15,208,8 - movdqa %xmm4,(%edx) -.byte 102,15,58,15,220,8 - movdqa %xmm2,%xmm4 - psrlq $7,%xmm2 - paddq %xmm3,%xmm0 - movdqa %xmm4,%xmm3 - psrlq $1,%xmm4 - psllq $56,%xmm3 - pxor %xmm4,%xmm2 - psrlq $7,%xmm4 - pxor %xmm3,%xmm2 - psllq $7,%xmm3 - pxor %xmm4,%xmm2 - movdqa %xmm7,%xmm4 - pxor %xmm3,%xmm2 - movdqa %xmm7,%xmm3 - psrlq $6,%xmm4 - paddq %xmm2,%xmm0 - movdqa %xmm7,%xmm2 - psrlq $19,%xmm3 - psllq $3,%xmm2 - pxor %xmm3,%xmm4 - psrlq $42,%xmm3 - pxor %xmm2,%xmm4 - psllq $42,%xmm2 - pxor %xmm3,%xmm4 - movdqa 32(%edx),%xmm3 - pxor %xmm2,%xmm4 - movdqa (%ebp),%xmm2 - movq %mm4,%mm1 - paddq %xmm4,%xmm0 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm0,%xmm2 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm2,-128(%edx) - movdqa %xmm6,%xmm4 - movdqa %xmm3,%xmm2 -.byte 102,15,58,15,217,8 - movdqa %xmm5,16(%edx) -.byte 102,15,58,15,229,8 - movdqa %xmm3,%xmm5 - psrlq $7,%xmm3 - paddq %xmm4,%xmm1 - movdqa %xmm5,%xmm4 - psrlq $1,%xmm5 - psllq $56,%xmm4 - pxor %xmm5,%xmm3 - psrlq $7,%xmm5 - pxor %xmm4,%xmm3 - psllq $7,%xmm4 - pxor %xmm5,%xmm3 - movdqa %xmm0,%xmm5 - pxor %xmm4,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $6,%xmm5 - paddq %xmm3,%xmm1 - movdqa %xmm0,%xmm3 - psrlq $19,%xmm4 - psllq $3,%xmm3 - pxor %xmm4,%xmm5 - psrlq $42,%xmm4 - pxor %xmm3,%xmm5 - psllq $42,%xmm3 - pxor %xmm4,%xmm5 - movdqa 48(%edx),%xmm4 - pxor %xmm3,%xmm5 - movdqa 16(%ebp),%xmm3 - movq %mm4,%mm1 - paddq %xmm5,%xmm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm1,%xmm3 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm3,-112(%edx) - movdqa %xmm7,%xmm5 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,226,8 - movdqa %xmm6,32(%edx) -.byte 102,15,58,15,238,8 - movdqa %xmm4,%xmm6 - psrlq $7,%xmm4 - paddq %xmm5,%xmm2 - movdqa %xmm6,%xmm5 - psrlq $1,%xmm6 - psllq $56,%xmm5 - pxor %xmm6,%xmm4 - psrlq $7,%xmm6 - pxor %xmm5,%xmm4 - psllq $7,%xmm5 - pxor %xmm6,%xmm4 - movdqa %xmm1,%xmm6 - pxor %xmm5,%xmm4 - movdqa %xmm1,%xmm5 - psrlq $6,%xmm6 - paddq %xmm4,%xmm2 - movdqa %xmm1,%xmm4 - psrlq $19,%xmm5 - psllq $3,%xmm4 - pxor %xmm5,%xmm6 - psrlq $42,%xmm5 - pxor %xmm4,%xmm6 - psllq $42,%xmm4 - pxor %xmm5,%xmm6 - movdqa (%edx),%xmm5 - pxor %xmm4,%xmm6 - movdqa 32(%ebp),%xmm4 - movq %mm4,%mm1 - paddq %xmm6,%xmm2 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm2,%xmm4 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm4,-96(%edx) - movdqa %xmm0,%xmm6 - movdqa %xmm5,%xmm4 -.byte 102,15,58,15,235,8 - movdqa %xmm7,48(%edx) -.byte 102,15,58,15,247,8 - movdqa %xmm5,%xmm7 - psrlq $7,%xmm5 - paddq %xmm6,%xmm3 - movdqa %xmm7,%xmm6 - psrlq $1,%xmm7 - psllq $56,%xmm6 - pxor %xmm7,%xmm5 - psrlq $7,%xmm7 - pxor %xmm6,%xmm5 - psllq $7,%xmm6 - pxor %xmm7,%xmm5 - movdqa %xmm2,%xmm7 - pxor %xmm6,%xmm5 - movdqa %xmm2,%xmm6 - psrlq $6,%xmm7 - paddq %xmm5,%xmm3 - movdqa %xmm2,%xmm5 - psrlq $19,%xmm6 - psllq $3,%xmm5 - pxor %xmm6,%xmm7 - psrlq $42,%xmm6 - pxor %xmm5,%xmm7 - psllq $42,%xmm5 - pxor %xmm6,%xmm7 - movdqa 16(%edx),%xmm6 - pxor %xmm5,%xmm7 - movdqa 48(%ebp),%xmm5 - movq %mm4,%mm1 - paddq %xmm7,%xmm3 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm3,%xmm5 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm5,-80(%edx) - movdqa %xmm1,%xmm7 - movdqa %xmm6,%xmm5 -.byte 102,15,58,15,244,8 - movdqa %xmm0,(%edx) -.byte 102,15,58,15,248,8 - movdqa %xmm6,%xmm0 - psrlq $7,%xmm6 - paddq %xmm7,%xmm4 - movdqa %xmm0,%xmm7 - psrlq $1,%xmm0 - psllq $56,%xmm7 - pxor %xmm0,%xmm6 - psrlq $7,%xmm0 - pxor %xmm7,%xmm6 - psllq $7,%xmm7 - pxor %xmm0,%xmm6 - movdqa %xmm3,%xmm0 - pxor %xmm7,%xmm6 - movdqa %xmm3,%xmm7 - psrlq $6,%xmm0 - paddq %xmm6,%xmm4 - movdqa %xmm3,%xmm6 - psrlq $19,%xmm7 - psllq $3,%xmm6 - pxor %xmm7,%xmm0 - psrlq $42,%xmm7 - pxor %xmm6,%xmm0 - psllq $42,%xmm6 - pxor %xmm7,%xmm0 - movdqa 32(%edx),%xmm7 - pxor %xmm6,%xmm0 - movdqa 64(%ebp),%xmm6 - movq %mm4,%mm1 - paddq %xmm0,%xmm4 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm4,%xmm6 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm6,-64(%edx) - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm6 -.byte 102,15,58,15,253,8 - movdqa %xmm1,16(%edx) -.byte 102,15,58,15,193,8 - movdqa %xmm7,%xmm1 - psrlq $7,%xmm7 - paddq %xmm0,%xmm5 - movdqa %xmm1,%xmm0 - psrlq $1,%xmm1 - psllq $56,%xmm0 - pxor %xmm1,%xmm7 - psrlq $7,%xmm1 - pxor %xmm0,%xmm7 - psllq $7,%xmm0 - pxor %xmm1,%xmm7 - movdqa %xmm4,%xmm1 - pxor %xmm0,%xmm7 - movdqa %xmm4,%xmm0 - psrlq $6,%xmm1 - paddq %xmm7,%xmm5 - movdqa %xmm4,%xmm7 - psrlq $19,%xmm0 - psllq $3,%xmm7 - pxor %xmm0,%xmm1 - psrlq $42,%xmm0 - pxor %xmm7,%xmm1 - psllq $42,%xmm7 - pxor %xmm0,%xmm1 - movdqa 48(%edx),%xmm0 - pxor %xmm7,%xmm1 - movdqa 80(%ebp),%xmm7 - movq %mm4,%mm1 - paddq %xmm1,%xmm5 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm5,%xmm7 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm7,-48(%edx) - movdqa %xmm3,%xmm1 - movdqa %xmm0,%xmm7 -.byte 102,15,58,15,198,8 - movdqa %xmm2,32(%edx) -.byte 102,15,58,15,202,8 - movdqa %xmm0,%xmm2 - psrlq $7,%xmm0 - paddq %xmm1,%xmm6 - movdqa %xmm2,%xmm1 - psrlq $1,%xmm2 - psllq $56,%xmm1 - pxor %xmm2,%xmm0 - psrlq $7,%xmm2 - pxor %xmm1,%xmm0 - psllq $7,%xmm1 - pxor %xmm2,%xmm0 - movdqa %xmm5,%xmm2 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm1 - psrlq $6,%xmm2 - paddq %xmm0,%xmm6 - movdqa %xmm5,%xmm0 - psrlq $19,%xmm1 - psllq $3,%xmm0 - pxor %xmm1,%xmm2 - psrlq $42,%xmm1 - pxor %xmm0,%xmm2 - psllq $42,%xmm0 - pxor %xmm1,%xmm2 - movdqa (%edx),%xmm1 - pxor %xmm0,%xmm2 - movdqa 96(%ebp),%xmm0 - movq %mm4,%mm1 - paddq %xmm2,%xmm6 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm6,%xmm0 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm0,-32(%edx) - movdqa %xmm4,%xmm2 - movdqa %xmm1,%xmm0 -.byte 102,15,58,15,207,8 - movdqa %xmm3,48(%edx) -.byte 102,15,58,15,211,8 - movdqa %xmm1,%xmm3 - psrlq $7,%xmm1 - paddq %xmm2,%xmm7 - movdqa %xmm3,%xmm2 - psrlq $1,%xmm3 - psllq $56,%xmm2 - pxor %xmm3,%xmm1 - psrlq $7,%xmm3 - pxor %xmm2,%xmm1 - psllq $7,%xmm2 - pxor %xmm3,%xmm1 - movdqa %xmm6,%xmm3 - pxor %xmm2,%xmm1 - movdqa %xmm6,%xmm2 - psrlq $6,%xmm3 - paddq %xmm1,%xmm7 - movdqa %xmm6,%xmm1 - psrlq $19,%xmm2 - psllq $3,%xmm1 - pxor %xmm2,%xmm3 - psrlq $42,%xmm2 - pxor %xmm1,%xmm3 - psllq $42,%xmm1 - pxor %xmm2,%xmm3 - movdqa 16(%edx),%xmm2 - pxor %xmm1,%xmm3 - movdqa 112(%ebp),%xmm1 - movq %mm4,%mm1 - paddq %xmm3,%xmm7 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm7,%xmm1 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm1,-16(%edx) - leal 128(%ebp),%ebp - decl %ecx - jnz L00800_47_ssse3 - movdqa (%ebp),%xmm1 - leal -640(%ebp),%ebp - movdqu (%ebx),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%ebx),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movq %mm4,%mm1 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%ebx),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movq %mm4,%mm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%ebx),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movq %mm4,%mm1 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%ebx),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movq %mm4,%mm1 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%ebx),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movq %mm4,%mm1 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%ebx),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movq %mm4,%mm1 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%ebx),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movq %mm4,%mm1 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movq %mm4,%mm1 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm2,-16(%edx) - movq 8(%esp),%mm1 - paddq %mm3,%mm0 - movq 24(%esp),%mm3 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - cmpl %eax,%edi - jb L007loop_ssse3 - movl 76(%edx),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L002loop_x86: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - movl 28(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - movl 44(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - movl 60(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 64(%edi),%eax - movl 68(%edi),%ebx - movl 72(%edi),%ecx - movl 76(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 80(%edi),%eax - movl 84(%edi),%ebx - movl 88(%edi),%ecx - movl 92(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 96(%edi),%eax - movl 100(%edi),%ebx - movl 104(%edi),%ecx - movl 108(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 112(%edi),%eax - movl 116(%edi),%ebx - movl 120(%edi),%ecx - movl 124(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - addl $128,%edi - subl $72,%esp - movl %edi,204(%esp) - leal 8(%esp),%edi - movl $16,%ecx -.long 2784229001 -.align 4,0x90 -L00900_15_x86: - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $148,%dl - jne L00900_15_x86 -.align 4,0x90 -L01016_79_x86: - movl 312(%esp),%ecx - movl 316(%esp),%edx - movl %ecx,%esi - shrl $1,%ecx - movl %edx,%edi - shrl $1,%edx - movl %ecx,%eax - shll $24,%esi - movl %edx,%ebx - shll $24,%edi - xorl %esi,%ebx - shrl $6,%ecx - xorl %edi,%eax - shrl $6,%edx - xorl %ecx,%eax - shll $7,%esi - xorl %edx,%ebx - shll $1,%edi - xorl %esi,%ebx - shrl $1,%ecx - xorl %edi,%eax - shrl $1,%edx - xorl %ecx,%eax - shll $6,%edi - xorl %edx,%ebx - xorl %edi,%eax - movl %eax,(%esp) - movl %ebx,4(%esp) - movl 208(%esp),%ecx - movl 212(%esp),%edx - movl %ecx,%esi - shrl $6,%ecx - movl %edx,%edi - shrl $6,%edx - movl %ecx,%eax - shll $3,%esi - movl %edx,%ebx - shll $3,%edi - xorl %esi,%eax - shrl $13,%ecx - xorl %edi,%ebx - shrl $13,%edx - xorl %ecx,%eax - shll $10,%esi - xorl %edx,%ebx - shll $10,%edi - xorl %esi,%ebx - shrl $10,%ecx - xorl %edi,%eax - shrl $10,%edx - xorl %ecx,%ebx - shll $13,%edi - xorl %edx,%eax - xorl %edi,%eax - movl 320(%esp),%ecx - movl 324(%esp),%edx - addl (%esp),%eax - adcl 4(%esp),%ebx - movl 248(%esp),%esi - movl 252(%esp),%edi - addl %ecx,%eax - adcl %edx,%ebx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,192(%esp) - movl %ebx,196(%esp) - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $23,%dl - jne L01016_79_x86 - movl 840(%esp),%esi - movl 844(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - addl 8(%esp),%eax - adcl 12(%esp),%ebx - movl %eax,(%esi) - movl %ebx,4(%esi) - addl 16(%esp),%ecx - adcl 20(%esp),%edx - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - addl 24(%esp),%eax - adcl 28(%esp),%ebx - movl %eax,16(%esi) - movl %ebx,20(%esi) - addl 32(%esp),%ecx - adcl 36(%esp),%edx - movl %ecx,24(%esi) - movl %edx,28(%esi) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - addl 40(%esp),%eax - adcl 44(%esp),%ebx - movl %eax,32(%esi) - movl %ebx,36(%esi) - addl 48(%esp),%ecx - adcl 52(%esp),%edx - movl %ecx,40(%esi) - movl %edx,44(%esi) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - addl 56(%esp),%eax - adcl 60(%esp),%ebx - movl %eax,48(%esi) - movl %ebx,52(%esi) - addl 64(%esp),%ecx - adcl 68(%esp),%edx - movl %ecx,56(%esi) - movl %edx,60(%esi) - addl $840,%esp - subl $640,%ebp - cmpl 8(%esp),%edi - jb L002loop_x86 - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001K512: -.long 3609767458,1116352408 -.long 602891725,1899447441 -.long 3964484399,3049323471 -.long 2173295548,3921009573 -.long 4081628472,961987163 -.long 3053834265,1508970993 -.long 2937671579,2453635748 -.long 3664609560,2870763221 -.long 2734883394,3624381080 -.long 1164996542,310598401 -.long 1323610764,607225278 -.long 3590304994,1426881987 -.long 4068182383,1925078388 -.long 991336113,2162078206 -.long 633803317,2614888103 -.long 3479774868,3248222580 -.long 2666613458,3835390401 -.long 944711139,4022224774 -.long 2341262773,264347078 -.long 2007800933,604807628 -.long 1495990901,770255983 -.long 1856431235,1249150122 -.long 3175218132,1555081692 -.long 2198950837,1996064986 -.long 3999719339,2554220882 -.long 766784016,2821834349 -.long 2566594879,2952996808 -.long 3203337956,3210313671 -.long 1034457026,3336571891 -.long 2466948901,3584528711 -.long 3758326383,113926993 -.long 168717936,338241895 -.long 1188179964,666307205 -.long 1546045734,773529912 -.long 1522805485,1294757372 -.long 2643833823,1396182291 -.long 2343527390,1695183700 -.long 1014477480,1986661051 -.long 1206759142,2177026350 -.long 344077627,2456956037 -.long 1290863460,2730485921 -.long 3158454273,2820302411 -.long 3505952657,3259730800 -.long 106217008,3345764771 -.long 3606008344,3516065817 -.long 1432725776,3600352804 -.long 1467031594,4094571909 -.long 851169720,275423344 -.long 3100823752,430227734 -.long 1363258195,506948616 -.long 3750685593,659060556 -.long 3785050280,883997877 -.long 3318307427,958139571 -.long 3812723403,1322822218 -.long 2003034995,1537002063 -.long 3602036899,1747873779 -.long 1575990012,1955562222 -.long 1125592928,2024104815 -.long 2716904306,2227730452 -.long 442776044,2361852424 -.long 593698344,2428436474 -.long 3733110249,2756734187 -.long 2999351573,3204031479 -.long 3815920427,3329325298 -.long 3928383900,3391569614 -.long 566280711,3515267271 -.long 3454069534,3940187606 -.long 4000239992,4118630271 -.long 1914138554,116418474 -.long 2731055270,174292421 -.long 3203993006,289380356 -.long 320620315,460393269 -.long 587496836,685471733 -.long 1086792851,852142971 -.long 365543100,1017036298 -.long 2618297676,1126000580 -.long 3409855158,1288033470 -.long 4234509866,1501505948 -.long 987167468,1607167915 -.long 1246189591,1816402316 -.long 67438087,66051 -.long 202182159,134810123 -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm/x86-macosx-gas/whrlpool/wp-mmx.s b/deps/openssl/asm/x86-macosx-gas/whrlpool/wp-mmx.s deleted file mode 100644 index 379e585263db4d..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/whrlpool/wp-mmx.s +++ /dev/null @@ -1,1105 +0,0 @@ -.file "wp-mmx.s" -.text -.globl _whirlpool_block_mmx -.align 4 -_whirlpool_block_mmx: -L_whirlpool_block_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebp - movl %esp,%eax - subl $148,%esp - andl $-64,%esp - leal 128(%esp),%ebx - movl %esi,(%ebx) - movl %edi,4(%ebx) - movl %ebp,8(%ebx) - movl %eax,16(%ebx) - call L000pic_point -L000pic_point: - popl %ebp - leal L001table-L000pic_point(%ebp),%ebp - xorl %ecx,%ecx - xorl %edx,%edx - movq (%esi),%mm0 - movq 8(%esi),%mm1 - movq 16(%esi),%mm2 - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 -L002outerloop: - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - xorl %esi,%esi - movl %esi,12(%ebx) -.align 4,0x90 -L003round: - movq 4096(%ebp,%esi,8),%mm0 - movl (%esp),%eax - movl 4(%esp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - movq 7(%ebp,%edi,8),%mm1 - movl 8(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 6(%ebp,%esi,8),%mm2 - movq 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 4(%ebp,%esi,8),%mm4 - movq 3(%ebp,%edi,8),%mm5 - movl 12(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - movq 2(%ebp,%esi,8),%mm6 - movq 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 16(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 20(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 24(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 28(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 32(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 36(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 40(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 44(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 48(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 52(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 56(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 60(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - movl 64(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - movl 68(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - pxor 7(%ebp,%edi,8),%mm1 - movl 72(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm2 - pxor 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm4 - pxor 3(%ebp,%edi,8),%mm5 - movl 76(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm6 - pxor 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 80(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 84(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 88(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 92(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 96(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 100(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 104(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 108(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 112(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 116(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 120(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 124(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - leal 128(%esp),%ebx - movl 12(%ebx),%esi - addl $1,%esi - cmpl $10,%esi - je L004roundsdone - movl %esi,12(%ebx) - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - jmp L003round -.align 4,0x90 -L004roundsdone: - movl (%ebx),%esi - movl 4(%ebx),%edi - movl 8(%ebx),%eax - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - pxor (%esi),%mm0 - pxor 8(%esi),%mm1 - pxor 16(%esi),%mm2 - pxor 24(%esi),%mm3 - pxor 32(%esi),%mm4 - pxor 40(%esi),%mm5 - pxor 48(%esi),%mm6 - pxor 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal 64(%edi),%edi - subl $1,%eax - jz L005alldone - movl %edi,4(%ebx) - movl %eax,8(%ebx) - jmp L002outerloop -L005alldone: - emms - movl 16(%ebx),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001table: -.byte 24,24,96,24,192,120,48,216 -.byte 24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38 -.byte 35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184 -.byte 198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251 -.byte 232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203 -.byte 135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17 -.byte 184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9 -.byte 1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13 -.byte 79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155 -.byte 54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255 -.byte 166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12 -.byte 210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14 -.byte 245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150 -.byte 121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48 -.byte 111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109 -.byte 145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248 -.byte 82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71 -.byte 96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53 -.byte 188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55 -.byte 155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138 -.byte 142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210 -.byte 163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108 -.byte 12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132 -.byte 123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128 -.byte 53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245 -.byte 29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179 -.byte 224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33 -.byte 215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156 -.byte 194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67 -.byte 46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41 -.byte 75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93 -.byte 254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213 -.byte 87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189 -.byte 21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232 -.byte 119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146 -.byte 55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158 -.byte 229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19 -.byte 159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35 -.byte 240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32 -.byte 74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68 -.byte 218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162 -.byte 88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207 -.byte 201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124 -.byte 41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90 -.byte 10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80 -.byte 177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201 -.byte 160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20 -.byte 107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217 -.byte 133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60 -.byte 189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143 -.byte 93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144 -.byte 16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7 -.byte 244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221 -.byte 203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211 -.byte 62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45 -.byte 5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120 -.byte 103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151 -.byte 228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2 -.byte 39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115 -.byte 65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167 -.byte 139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246 -.byte 167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178 -.byte 125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73 -.byte 149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86 -.byte 216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112 -.byte 251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205 -.byte 238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187 -.byte 124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113 -.byte 102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123 -.byte 221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175 -.byte 23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69 -.byte 71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26 -.byte 158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212 -.byte 202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88 -.byte 45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46 -.byte 191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63 -.byte 7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172 -.byte 173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176 -.byte 90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239 -.byte 131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182 -.byte 51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92 -.byte 99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18 -.byte 2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147 -.byte 170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222 -.byte 113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198 -.byte 200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209 -.byte 25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59 -.byte 73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95 -.byte 217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49 -.byte 242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168 -.byte 227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185 -.byte 91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188 -.byte 136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62 -.byte 154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11 -.byte 38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191 -.byte 50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89 -.byte 176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242 -.byte 233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119 -.byte 15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51 -.byte 213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244 -.byte 128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39 -.byte 190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235 -.byte 205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137 -.byte 52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50 -.byte 72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84 -.byte 255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141 -.byte 122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100 -.byte 144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157 -.byte 95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61 -.byte 32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15 -.byte 104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202 -.byte 26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183 -.byte 174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125 -.byte 180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206 -.byte 84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127 -.byte 147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47 -.byte 34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99 -.byte 100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42 -.byte 241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204 -.byte 115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130 -.byte 18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122 -.byte 64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72 -.byte 8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149 -.byte 195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223 -.byte 236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77 -.byte 219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192 -.byte 161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145 -.byte 141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200 -.byte 61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91 -.byte 151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0 -.byte 0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249 -.byte 207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110 -.byte 43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225 -.byte 118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230 -.byte 130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40 -.byte 214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195 -.byte 27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116 -.byte 181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190 -.byte 175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29 -.byte 106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234 -.byte 80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87 -.byte 69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56 -.byte 243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173 -.byte 48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196 -.byte 239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218 -.byte 63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199 -.byte 85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219 -.byte 162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233 -.byte 234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106 -.byte 101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3 -.byte 186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74 -.byte 47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142 -.byte 192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96 -.byte 222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252 -.byte 28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70 -.byte 253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31 -.byte 77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118 -.byte 146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250 -.byte 117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54 -.byte 6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174 -.byte 138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75 -.byte 178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133 -.byte 230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126 -.byte 14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231 -.byte 31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85 -.byte 98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58 -.byte 212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129 -.byte 168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82 -.byte 150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98 -.byte 249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163 -.byte 197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16 -.byte 37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171 -.byte 89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208 -.byte 132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197 -.byte 114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236 -.byte 57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22 -.byte 76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148 -.byte 94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159 -.byte 120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229 -.byte 56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152 -.byte 140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23 -.byte 209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228 -.byte 165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161 -.byte 226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78 -.byte 97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66 -.byte 179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52 -.byte 33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8 -.byte 156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238 -.byte 30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97 -.byte 67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177 -.byte 199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79 -.byte 252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36 -.byte 4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227 -.byte 81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37 -.byte 153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34 -.byte 109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101 -.byte 13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121 -.byte 250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105 -.byte 223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169 -.byte 126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25 -.byte 36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254 -.byte 59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154 -.byte 171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240 -.byte 206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153 -.byte 17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131 -.byte 143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4 -.byte 78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102 -.byte 183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224 -.byte 235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193 -.byte 60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253 -.byte 129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64 -.byte 148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28 -.byte 247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24 -.byte 185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139 -.byte 19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81 -.byte 44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5 -.byte 211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140 -.byte 231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57 -.byte 110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170 -.byte 196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27 -.byte 3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220 -.byte 86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94 -.byte 68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160 -.byte 127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136 -.byte 169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103 -.byte 42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10 -.byte 187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135 -.byte 193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241 -.byte 83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114 -.byte 220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83 -.byte 11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1 -.byte 157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43 -.byte 108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164 -.byte 49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243 -.byte 116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21 -.byte 246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76 -.byte 70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165 -.byte 172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181 -.byte 137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180 -.byte 20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186 -.byte 225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166 -.byte 22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247 -.byte 58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6 -.byte 105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65 -.byte 9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215 -.byte 112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111 -.byte 182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30 -.byte 208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214 -.byte 237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226 -.byte 204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104 -.byte 66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44 -.byte 152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237 -.byte 164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117 -.byte 40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134 -.byte 92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107 -.byte 248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194 -.byte 134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm/x86-macosx-gas/x86cpuid.s b/deps/openssl/asm/x86-macosx-gas/x86cpuid.s deleted file mode 100644 index c3e9fd6dbaf05b..00000000000000 --- a/deps/openssl/asm/x86-macosx-gas/x86cpuid.s +++ /dev/null @@ -1,354 +0,0 @@ -.file "x86cpuid.s" -.text -.globl _OPENSSL_ia32_cpuid -.align 4 -_OPENSSL_ia32_cpuid: -L_OPENSSL_ia32_cpuid_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %edx,%edx - pushfl - popl %eax - movl %eax,%ecx - xorl $2097152,%eax - pushl %eax - popfl - pushfl - popl %eax - xorl %eax,%ecx - xorl %eax,%eax - movl 20(%esp),%esi - movl %eax,8(%esi) - btl $21,%ecx - jnc L000nocpuid - .byte 0x0f,0xa2 - movl %eax,%edi - xorl %eax,%eax - cmpl $1970169159,%ebx - setne %al - movl %eax,%ebp - cmpl $1231384169,%edx - setne %al - orl %eax,%ebp - cmpl $1818588270,%ecx - setne %al - orl %eax,%ebp - jz L001intel - cmpl $1752462657,%ebx - setne %al - movl %eax,%esi - cmpl $1769238117,%edx - setne %al - orl %eax,%esi - cmpl $1145913699,%ecx - setne %al - orl %eax,%esi - jnz L001intel - movl $2147483648,%eax - .byte 0x0f,0xa2 - cmpl $2147483649,%eax - jb L001intel - movl %eax,%esi - movl $2147483649,%eax - .byte 0x0f,0xa2 - orl %ecx,%ebp - andl $2049,%ebp - cmpl $2147483656,%esi - jb L001intel - movl $2147483656,%eax - .byte 0x0f,0xa2 - movzbl %cl,%esi - incl %esi - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - btl $28,%edx - jnc L002generic - shrl $16,%ebx - andl $255,%ebx - cmpl %esi,%ebx - ja L002generic - andl $4026531839,%edx - jmp L002generic -L001intel: - cmpl $4,%edi - movl $-1,%esi - jb L003nocacheinfo - movl $4,%eax - movl $0,%ecx - .byte 0x0f,0xa2 - movl %eax,%esi - shrl $14,%esi - andl $4095,%esi -L003nocacheinfo: - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - andl $3220176895,%edx - cmpl $0,%ebp - jne L004notintel - orl $1073741824,%edx - andb $15,%ah - cmpb $15,%ah - jne L004notintel - orl $1048576,%edx -L004notintel: - btl $28,%edx - jnc L002generic - andl $4026531839,%edx - cmpl $0,%esi - je L002generic - orl $268435456,%edx - shrl $16,%ebx - cmpb $1,%bl - ja L002generic - andl $4026531839,%edx -L002generic: - andl $2048,%ebp - andl $4294965247,%ecx - movl %edx,%esi - orl %ecx,%ebp - cmpl $7,%edi - movl 20(%esp),%edi - jb L005no_extended_info - movl $7,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - movl %ebx,8(%edi) -L005no_extended_info: - btl $27,%ebp - jnc L006clear_avx - xorl %ecx,%ecx -.byte 15,1,208 - andl $6,%eax - cmpl $6,%eax - je L007done - cmpl $2,%eax - je L006clear_avx -L008clear_xmm: - andl $4261412861,%ebp - andl $4278190079,%esi -L006clear_avx: - andl $4026525695,%ebp - andl $4294967263,8(%edi) -L007done: - movl %esi,%eax - movl %ebp,%edx -L000nocpuid: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _OPENSSL_rdtsc -.align 4 -_OPENSSL_rdtsc: -L_OPENSSL_rdtsc_begin: - xorl %eax,%eax - xorl %edx,%edx - call L009PIC_me_up -L009PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L009PIC_me_up(%ecx),%ecx - btl $4,(%ecx) - jnc L010notsc - .byte 0x0f,0x31 -L010notsc: - ret -.globl _OPENSSL_instrument_halt -.align 4 -_OPENSSL_instrument_halt: -L_OPENSSL_instrument_halt_begin: - call L011PIC_me_up -L011PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L011PIC_me_up(%ecx),%ecx - btl $4,(%ecx) - jnc L012nohalt -.long 2421723150 - andl $3,%eax - jnz L012nohalt - pushfl - popl %eax - btl $9,%eax - jnc L012nohalt - .byte 0x0f,0x31 - pushl %edx - pushl %eax - hlt - .byte 0x0f,0x31 - subl (%esp),%eax - sbbl 4(%esp),%edx - addl $8,%esp - ret -L012nohalt: - xorl %eax,%eax - xorl %edx,%edx - ret -.globl _OPENSSL_far_spin -.align 4 -_OPENSSL_far_spin: -L_OPENSSL_far_spin_begin: - pushfl - popl %eax - btl $9,%eax - jnc L013nospin - movl 4(%esp),%eax - movl 8(%esp),%ecx -.long 2430111262 - xorl %eax,%eax - movl (%ecx),%edx - jmp L014spin -.align 4,0x90 -L014spin: - incl %eax - cmpl (%ecx),%edx - je L014spin -.long 529567888 - ret -L013nospin: - xorl %eax,%eax - xorl %edx,%edx - ret -.globl _OPENSSL_wipe_cpu -.align 4 -_OPENSSL_wipe_cpu: -L_OPENSSL_wipe_cpu_begin: - xorl %eax,%eax - xorl %edx,%edx - call L015PIC_me_up -L015PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L015PIC_me_up(%ecx),%ecx - movl (%ecx),%ecx - btl $1,(%ecx) - jnc L016no_x87 - andl $83886080,%ecx - cmpl $83886080,%ecx - jne L017no_sse2 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 -L017no_sse2: -.long 4007259865,4007259865,4007259865,4007259865,2430851995 -L016no_x87: - leal 4(%esp),%eax - ret -.globl _OPENSSL_atomic_add -.align 4 -_OPENSSL_atomic_add: -L_OPENSSL_atomic_add_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - pushl %ebx - nop - movl (%edx),%eax -L018spin: - leal (%eax,%ecx,1),%ebx - nop -.long 447811568 - jne L018spin - movl %ebx,%eax - popl %ebx - ret -.globl _OPENSSL_indirect_call -.align 4 -_OPENSSL_indirect_call: -L_OPENSSL_indirect_call_begin: - pushl %ebp - movl %esp,%ebp - subl $28,%esp - movl 12(%ebp),%ecx - movl %ecx,(%esp) - movl 16(%ebp),%edx - movl %edx,4(%esp) - movl 20(%ebp),%eax - movl %eax,8(%esp) - movl 24(%ebp),%eax - movl %eax,12(%esp) - movl 28(%ebp),%eax - movl %eax,16(%esp) - movl 32(%ebp),%eax - movl %eax,20(%esp) - movl 36(%ebp),%eax - movl %eax,24(%esp) - call *8(%ebp) - movl %ebp,%esp - popl %ebp - ret -.globl _OPENSSL_cleanse -.align 4 -_OPENSSL_cleanse: -L_OPENSSL_cleanse_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - xorl %eax,%eax - cmpl $7,%ecx - jae L019lot - cmpl $0,%ecx - je L020ret -L021little: - movb %al,(%edx) - subl $1,%ecx - leal 1(%edx),%edx - jnz L021little -L020ret: - ret -.align 4,0x90 -L019lot: - testl $3,%edx - jz L022aligned - movb %al,(%edx) - leal -1(%ecx),%ecx - leal 1(%edx),%edx - jmp L019lot -L022aligned: - movl %eax,(%edx) - leal -4(%ecx),%ecx - testl $-4,%ecx - leal 4(%edx),%edx - jnz L022aligned - cmpl $0,%ecx - jne L021little - ret -.globl _OPENSSL_ia32_rdrand -.align 4 -_OPENSSL_ia32_rdrand: -L_OPENSSL_ia32_rdrand_begin: - movl $8,%ecx -L023loop: -.byte 15,199,240 - jc L024break - loop L023loop -L024break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.globl _OPENSSL_ia32_rdseed -.align 4 -_OPENSSL_ia32_rdseed: -L_OPENSSL_ia32_rdseed_begin: - movl $8,%ecx -L025loop: -.byte 15,199,248 - jc L026break - loop L025loop -L026break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 -.mod_init_func -.align 2 -.long _OPENSSL_cpuid_setup diff --git a/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm b/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm deleted file mode 100644 index ea853704c7458e..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm +++ /dev/null @@ -1,3232 +0,0 @@ -TITLE aes-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -__x86_AES_encrypt_compact PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] -ALIGN 16 -$L000loop: - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ch - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,eax - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx eax,ah - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,8 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,24 - xor edx,ecx - mov ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edi,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,ecx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,ecx - xor ecx,esi - ror edi,24 - xor esi,ebp - rol ecx,24 - xor esi,edi - mov ebp,2155905152 - xor ecx,esi - and ebp,edx - lea edi,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,edx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,edx - xor edx,esi - ror edi,24 - xor esi,ebp - rol edx,24 - xor esi,edi - mov ebp,2155905152 - xor edx,esi - and ebp,eax - lea edi,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,eax - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,eax - xor eax,esi - ror edi,24 - xor esi,ebp - rol eax,24 - xor esi,edi - mov ebp,2155905152 - xor eax,esi - and ebp,ebx - lea edi,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,ebx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,ebx - xor ebx,esi - ror edi,24 - xor esi,ebp - rol ebx,24 - xor esi,edi - xor ebx,esi - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 28[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L000loop - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ch - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,eax - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx eax,ah - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,8 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,24 - xor edx,ecx - mov ecx,esi - xor eax,DWORD PTR 16[edi] - xor ebx,DWORD PTR 20[edi] - xor ecx,DWORD PTR 24[edi] - xor edx,DWORD PTR 28[edi] - ret -__x86_AES_encrypt_compact ENDP -ALIGN 16 -__sse_AES_encrypt_compact PROC PRIVATE - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov eax,454761243 - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] -ALIGN 16 -$L001loop: - pshufw mm1,mm0,8 - pshufw mm5,mm4,13 - movd eax,mm1 - movd ebx,mm5 - mov DWORD PTR 20[esp],edi - movzx esi,al - movzx edx,ah - pshufw mm2,mm0,13 - movzx ecx,BYTE PTR [esi*1+ebp-128] - movzx edi,bl - movzx edx,BYTE PTR [edx*1+ebp-128] - shr eax,16 - shl edx,8 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,16 - pshufw mm6,mm4,8 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,24 - shr ebx,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,8 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - movd eax,mm2 - movd mm0,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl ecx,16 - movd ebx,mm6 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - shl esi,8 - shr ebx,16 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shr eax,16 - movd mm1,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl ecx,16 - and eax,255 - or ecx,esi - punpckldq mm0,mm1 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - and ebx,255 - movzx eax,BYTE PTR [eax*1+ebp-128] - or ecx,esi - shl eax,16 - movzx esi,BYTE PTR [edi*1+ebp-128] - or edx,eax - shl esi,8 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - or ecx,esi - or edx,ebx - mov edi,DWORD PTR 20[esp] - movd mm4,ecx - movd mm5,edx - punpckldq mm4,mm5 - add edi,16 - cmp edi,DWORD PTR 24[esp] - ja $L002out - movq mm2,QWORD PTR 8[esp] - pxor mm3,mm3 - pxor mm7,mm7 - movq mm1,mm0 - movq mm5,mm4 - pcmpgtb mm3,mm0 - pcmpgtb mm7,mm4 - pand mm3,mm2 - pand mm7,mm2 - pshufw mm2,mm0,177 - pshufw mm6,mm4,177 - paddb mm0,mm0 - paddb mm4,mm4 - pxor mm0,mm3 - pxor mm4,mm7 - pshufw mm3,mm2,177 - pshufw mm7,mm6,177 - pxor mm1,mm0 - pxor mm5,mm4 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm2,mm3 - movq mm6,mm7 - pslld mm3,8 - pslld mm7,8 - psrld mm2,24 - psrld mm6,24 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm3,mm1 - movq mm7,mm5 - movq mm2,QWORD PTR [edi] - movq mm6,QWORD PTR 8[edi] - psrld mm1,8 - psrld mm5,8 - mov eax,DWORD PTR [ebp-128] - pslld mm3,24 - pslld mm7,24 - mov ebx,DWORD PTR [ebp-64] - pxor mm0,mm1 - pxor mm4,mm5 - mov ecx,DWORD PTR [ebp] - pxor mm0,mm3 - pxor mm4,mm7 - mov edx,DWORD PTR 64[ebp] - pxor mm0,mm2 - pxor mm4,mm6 - jmp $L001loop -ALIGN 16 -$L002out: - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - ret -__sse_AES_encrypt_compact ENDP -ALIGN 16 -__x86_AES_encrypt PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi -ALIGN 16 -$L003loop: - mov esi,eax - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,ecx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,edx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,ch - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,edx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,eax - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,dh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 1[edi*8+ebp] - mov edi,DWORD PTR 20[esp] - mov edx,DWORD PTR [edx*8+ebp] - movzx eax,ah - xor edx,DWORD PTR 3[eax*8+ebp] - mov eax,DWORD PTR 4[esp] - and ebx,255 - xor edx,DWORD PTR 2[ebx*8+ebp] - mov ebx,DWORD PTR 8[esp] - xor edx,DWORD PTR 1[ecx*8+ebp] - mov ecx,esi - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L003loop - mov esi,eax - and esi,255 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,bh - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - mov edi,edx - shr edi,24 - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,ch - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - mov edi,eax - shr edi,24 - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,dh - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - movzx edi,bh - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - mov edx,DWORD PTR 2[edx*8+ebp] - and edx,255 - movzx eax,ah - mov eax,DWORD PTR [eax*8+ebp] - and eax,65280 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - mov ebx,DWORD PTR [ebx*8+ebp] - and ebx,16711680 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 2[ecx*8+ebp] - and ecx,4278190080 - xor edx,ecx - mov ecx,esi - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -ALIGN 64 -$LAES_Te:: -DD 2774754246,2774754246 -DD 2222750968,2222750968 -DD 2574743534,2574743534 -DD 2373680118,2373680118 -DD 234025727,234025727 -DD 3177933782,3177933782 -DD 2976870366,2976870366 -DD 1422247313,1422247313 -DD 1345335392,1345335392 -DD 50397442,50397442 -DD 2842126286,2842126286 -DD 2099981142,2099981142 -DD 436141799,436141799 -DD 1658312629,1658312629 -DD 3870010189,3870010189 -DD 2591454956,2591454956 -DD 1170918031,1170918031 -DD 2642575903,2642575903 -DD 1086966153,1086966153 -DD 2273148410,2273148410 -DD 368769775,368769775 -DD 3948501426,3948501426 -DD 3376891790,3376891790 -DD 200339707,200339707 -DD 3970805057,3970805057 -DD 1742001331,1742001331 -DD 4255294047,4255294047 -DD 3937382213,3937382213 -DD 3214711843,3214711843 -DD 4154762323,4154762323 -DD 2524082916,2524082916 -DD 1539358875,1539358875 -DD 3266819957,3266819957 -DD 486407649,486407649 -DD 2928907069,2928907069 -DD 1780885068,1780885068 -DD 1513502316,1513502316 -DD 1094664062,1094664062 -DD 49805301,49805301 -DD 1338821763,1338821763 -DD 1546925160,1546925160 -DD 4104496465,4104496465 -DD 887481809,887481809 -DD 150073849,150073849 -DD 2473685474,2473685474 -DD 1943591083,1943591083 -DD 1395732834,1395732834 -DD 1058346282,1058346282 -DD 201589768,201589768 -DD 1388824469,1388824469 -DD 1696801606,1696801606 -DD 1589887901,1589887901 -DD 672667696,672667696 -DD 2711000631,2711000631 -DD 251987210,251987210 -DD 3046808111,3046808111 -DD 151455502,151455502 -DD 907153956,907153956 -DD 2608889883,2608889883 -DD 1038279391,1038279391 -DD 652995533,652995533 -DD 1764173646,1764173646 -DD 3451040383,3451040383 -DD 2675275242,2675275242 -DD 453576978,453576978 -DD 2659418909,2659418909 -DD 1949051992,1949051992 -DD 773462580,773462580 -DD 756751158,756751158 -DD 2993581788,2993581788 -DD 3998898868,3998898868 -DD 4221608027,4221608027 -DD 4132590244,4132590244 -DD 1295727478,1295727478 -DD 1641469623,1641469623 -DD 3467883389,3467883389 -DD 2066295122,2066295122 -DD 1055122397,1055122397 -DD 1898917726,1898917726 -DD 2542044179,2542044179 -DD 4115878822,4115878822 -DD 1758581177,1758581177 -DD 0,0 -DD 753790401,753790401 -DD 1612718144,1612718144 -DD 536673507,536673507 -DD 3367088505,3367088505 -DD 3982187446,3982187446 -DD 3194645204,3194645204 -DD 1187761037,1187761037 -DD 3653156455,3653156455 -DD 1262041458,1262041458 -DD 3729410708,3729410708 -DD 3561770136,3561770136 -DD 3898103984,3898103984 -DD 1255133061,1255133061 -DD 1808847035,1808847035 -DD 720367557,720367557 -DD 3853167183,3853167183 -DD 385612781,385612781 -DD 3309519750,3309519750 -DD 3612167578,3612167578 -DD 1429418854,1429418854 -DD 2491778321,2491778321 -DD 3477423498,3477423498 -DD 284817897,284817897 -DD 100794884,100794884 -DD 2172616702,2172616702 -DD 4031795360,4031795360 -DD 1144798328,1144798328 -DD 3131023141,3131023141 -DD 3819481163,3819481163 -DD 4082192802,4082192802 -DD 4272137053,4272137053 -DD 3225436288,3225436288 -DD 2324664069,2324664069 -DD 2912064063,2912064063 -DD 3164445985,3164445985 -DD 1211644016,1211644016 -DD 83228145,83228145 -DD 3753688163,3753688163 -DD 3249976951,3249976951 -DD 1977277103,1977277103 -DD 1663115586,1663115586 -DD 806359072,806359072 -DD 452984805,452984805 -DD 250868733,250868733 -DD 1842533055,1842533055 -DD 1288555905,1288555905 -DD 336333848,336333848 -DD 890442534,890442534 -DD 804056259,804056259 -DD 3781124030,3781124030 -DD 2727843637,2727843637 -DD 3427026056,3427026056 -DD 957814574,957814574 -DD 1472513171,1472513171 -DD 4071073621,4071073621 -DD 2189328124,2189328124 -DD 1195195770,1195195770 -DD 2892260552,2892260552 -DD 3881655738,3881655738 -DD 723065138,723065138 -DD 2507371494,2507371494 -DD 2690670784,2690670784 -DD 2558624025,2558624025 -DD 3511635870,3511635870 -DD 2145180835,2145180835 -DD 1713513028,1713513028 -DD 2116692564,2116692564 -DD 2878378043,2878378043 -DD 2206763019,2206763019 -DD 3393603212,3393603212 -DD 703524551,703524551 -DD 3552098411,3552098411 -DD 1007948840,1007948840 -DD 2044649127,2044649127 -DD 3797835452,3797835452 -DD 487262998,487262998 -DD 1994120109,1994120109 -DD 1004593371,1004593371 -DD 1446130276,1446130276 -DD 1312438900,1312438900 -DD 503974420,503974420 -DD 3679013266,3679013266 -DD 168166924,168166924 -DD 1814307912,1814307912 -DD 3831258296,3831258296 -DD 1573044895,1573044895 -DD 1859376061,1859376061 -DD 4021070915,4021070915 -DD 2791465668,2791465668 -DD 2828112185,2828112185 -DD 2761266481,2761266481 -DD 937747667,937747667 -DD 2339994098,2339994098 -DD 854058965,854058965 -DD 1137232011,1137232011 -DD 1496790894,1496790894 -DD 3077402074,3077402074 -DD 2358086913,2358086913 -DD 1691735473,1691735473 -DD 3528347292,3528347292 -DD 3769215305,3769215305 -DD 3027004632,3027004632 -DD 4199962284,4199962284 -DD 133494003,133494003 -DD 636152527,636152527 -DD 2942657994,2942657994 -DD 2390391540,2390391540 -DD 3920539207,3920539207 -DD 403179536,403179536 -DD 3585784431,3585784431 -DD 2289596656,2289596656 -DD 1864705354,1864705354 -DD 1915629148,1915629148 -DD 605822008,605822008 -DD 4054230615,4054230615 -DD 3350508659,3350508659 -DD 1371981463,1371981463 -DD 602466507,602466507 -DD 2094914977,2094914977 -DD 2624877800,2624877800 -DD 555687742,555687742 -DD 3712699286,3712699286 -DD 3703422305,3703422305 -DD 2257292045,2257292045 -DD 2240449039,2240449039 -DD 2423288032,2423288032 -DD 1111375484,1111375484 -DD 3300242801,3300242801 -DD 2858837708,2858837708 -DD 3628615824,3628615824 -DD 84083462,84083462 -DD 32962295,32962295 -DD 302911004,302911004 -DD 2741068226,2741068226 -DD 1597322602,1597322602 -DD 4183250862,4183250862 -DD 3501832553,3501832553 -DD 2441512471,2441512471 -DD 1489093017,1489093017 -DD 656219450,656219450 -DD 3114180135,3114180135 -DD 954327513,954327513 -DD 335083755,335083755 -DD 3013122091,3013122091 -DD 856756514,856756514 -DD 3144247762,3144247762 -DD 1893325225,1893325225 -DD 2307821063,2307821063 -DD 2811532339,2811532339 -DD 3063651117,3063651117 -DD 572399164,572399164 -DD 2458355477,2458355477 -DD 552200649,552200649 -DD 1238290055,1238290055 -DD 4283782570,4283782570 -DD 2015897680,2015897680 -DD 2061492133,2061492133 -DD 2408352771,2408352771 -DD 4171342169,4171342169 -DD 2156497161,2156497161 -DD 386731290,386731290 -DD 3669999461,3669999461 -DD 837215959,837215959 -DD 3326231172,3326231172 -DD 3093850320,3093850320 -DD 3275833730,3275833730 -DD 2962856233,2962856233 -DD 1999449434,1999449434 -DD 286199582,286199582 -DD 3417354363,3417354363 -DD 4233385128,4233385128 -DD 3602627437,3602627437 -DD 974525996,974525996 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DD 1,2,4,8 -DD 16,32,64,128 -DD 27,54,0,0 -DD 0,0,0,0 -__x86_AES_encrypt ENDP -ALIGN 16 -_AES_encrypt PROC PUBLIC -$L_AES_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov eax,esp - sub esp,36 - and esp,-64 - lea ebx,DWORD PTR [edi-127] - sub ebx,esp - neg ebx - and ebx,960 - sub esp,ebx - add esp,4 - mov DWORD PTR 28[esp],eax - call $L004pic_point -$L004pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LAES_Te-$L004pic_point)[ebp] - lea ebx,DWORD PTR 764[esp] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - bt DWORD PTR [eax],25 - jnc $L005x86 - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - call __sse_AES_encrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L005x86: - mov DWORD PTR 24[esp],ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - call __x86_AES_encrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_encrypt ENDP -ALIGN 16 -__x86_AES_decrypt_compact PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] -ALIGN 16 -$L006loop: - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,24 - xor edx,eax - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea eax,DWORD PTR [ecx*1+ecx] - sub esi,edi - and eax,4278124286 - and esi,454761243 - xor eax,esi - mov edi,2155905152 - and edi,eax - mov esi,edi - shr edi,7 - lea ebx,DWORD PTR [eax*1+eax] - sub esi,edi - and ebx,4278124286 - and esi,454761243 - xor eax,ecx - xor ebx,esi - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor ebx,ecx - rol ecx,8 - xor ebp,esi - xor ecx,eax - xor eax,ebp - xor ecx,ebx - xor ebx,ebp - rol eax,24 - xor ecx,ebp - rol ebx,16 - xor ecx,eax - rol ebp,8 - xor ecx,ebx - mov eax,DWORD PTR 4[esp] - xor ecx,ebp - mov DWORD PTR 12[esp],ecx - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebx,DWORD PTR [edx*1+edx] - sub esi,edi - and ebx,4278124286 - and esi,454761243 - xor ebx,esi - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ebx,edx - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [ecx*1+ecx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor ecx,edx - rol edx,8 - xor ebp,esi - xor edx,ebx - xor ebx,ebp - xor edx,ecx - xor ecx,ebp - rol ebx,24 - xor edx,ebp - rol ecx,16 - xor edx,ebx - rol ebp,8 - xor edx,ecx - mov ebx,DWORD PTR 8[esp] - xor edx,ebp - mov DWORD PTR 16[esp],edx - mov edi,2155905152 - and edi,eax - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [eax*1+eax] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea edx,DWORD PTR [ecx*1+ecx] - sub esi,edi - and edx,4278124286 - and esi,454761243 - xor ecx,eax - xor edx,esi - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [edx*1+edx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor edx,eax - rol eax,8 - xor ebp,esi - xor eax,ecx - xor ecx,ebp - xor eax,edx - xor edx,ebp - rol ecx,24 - xor eax,ebp - rol edx,16 - xor eax,ecx - rol ebp,8 - xor eax,edx - xor eax,ebp - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea edx,DWORD PTR [ecx*1+ecx] - sub esi,edi - and edx,4278124286 - and esi,454761243 - xor ecx,ebx - xor edx,esi - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [edx*1+edx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor edx,ebx - rol ebx,8 - xor ebp,esi - xor ebx,ecx - xor ecx,ebp - xor ebx,edx - xor edx,ebp - rol ecx,24 - xor ebx,ebp - rol edx,16 - xor ebx,ecx - rol ebp,8 - xor ebx,edx - mov ecx,DWORD PTR 12[esp] - xor ebx,ebp - mov edx,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 28[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L006loop - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,24 - xor edx,eax - mov eax,DWORD PTR 4[esp] - xor eax,DWORD PTR 16[edi] - xor ebx,DWORD PTR 20[edi] - xor ecx,DWORD PTR 24[edi] - xor edx,DWORD PTR 28[edi] - ret -__x86_AES_decrypt_compact ENDP -ALIGN 16 -__sse_AES_decrypt_compact PROC PRIVATE - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov eax,454761243 - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] -ALIGN 16 -$L007loop: - pshufw mm1,mm0,12 - pshufw mm5,mm4,9 - movd eax,mm1 - movd ebx,mm5 - mov DWORD PTR 20[esp],edi - movzx esi,al - movzx edx,ah - pshufw mm2,mm0,6 - movzx ecx,BYTE PTR [esi*1+ebp-128] - movzx edi,bl - movzx edx,BYTE PTR [edx*1+ebp-128] - shr eax,16 - shl edx,8 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,16 - pshufw mm6,mm4,3 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,24 - shr ebx,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,8 - movd eax,mm2 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - shl esi,16 - movd ebx,mm6 - movd mm0,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,al - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,16 - shr eax,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shr ebx,16 - shl esi,8 - movd mm1,edx - movzx edx,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl edx,24 - and ebx,255 - or edx,esi - punpckldq mm0,mm1 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,8 - movzx eax,ah - movzx ebx,BYTE PTR [ebx*1+ebp-128] - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - or edx,ebx - shl esi,16 - movzx eax,BYTE PTR [eax*1+ebp-128] - or edx,esi - shl eax,24 - or ecx,eax - mov edi,DWORD PTR 20[esp] - movd mm4,edx - movd mm5,ecx - punpckldq mm4,mm5 - add edi,16 - cmp edi,DWORD PTR 24[esp] - ja $L008out - movq mm3,mm0 - movq mm7,mm4 - pshufw mm2,mm0,228 - pshufw mm6,mm4,228 - movq mm1,mm0 - movq mm5,mm4 - pshufw mm0,mm0,177 - pshufw mm4,mm4,177 - pslld mm2,8 - pslld mm6,8 - psrld mm3,8 - psrld mm7,8 - pxor mm0,mm2 - pxor mm4,mm6 - pxor mm0,mm3 - pxor mm4,mm7 - pslld mm2,16 - pslld mm6,16 - psrld mm3,16 - psrld mm7,16 - pxor mm0,mm2 - pxor mm4,mm6 - pxor mm0,mm3 - pxor mm4,mm7 - movq mm3,QWORD PTR 8[esp] - pxor mm2,mm2 - pxor mm6,mm6 - pcmpgtb mm2,mm1 - pcmpgtb mm6,mm5 - pand mm2,mm3 - pand mm6,mm3 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm2 - pxor mm5,mm6 - movq mm3,mm1 - movq mm7,mm5 - movq mm2,mm1 - movq mm6,mm5 - pxor mm0,mm1 - pxor mm4,mm5 - pslld mm3,24 - pslld mm7,24 - psrld mm2,8 - psrld mm6,8 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm2,QWORD PTR 8[esp] - pxor mm3,mm3 - pxor mm7,mm7 - pcmpgtb mm3,mm1 - pcmpgtb mm7,mm5 - pand mm3,mm2 - pand mm7,mm2 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm3 - pxor mm5,mm7 - pshufw mm3,mm1,177 - pshufw mm7,mm5,177 - pxor mm0,mm1 - pxor mm4,mm5 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm3,mm3 - pxor mm7,mm7 - pcmpgtb mm3,mm1 - pcmpgtb mm7,mm5 - pand mm3,mm2 - pand mm7,mm2 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm3 - pxor mm5,mm7 - pxor mm0,mm1 - pxor mm4,mm5 - movq mm3,mm1 - movq mm7,mm5 - pshufw mm2,mm1,177 - pshufw mm6,mm5,177 - pxor mm0,mm2 - pxor mm4,mm6 - pslld mm1,8 - pslld mm5,8 - psrld mm3,8 - psrld mm7,8 - movq mm2,QWORD PTR [edi] - movq mm6,QWORD PTR 8[edi] - pxor mm0,mm1 - pxor mm4,mm5 - pxor mm0,mm3 - pxor mm4,mm7 - mov eax,DWORD PTR [ebp-128] - pslld mm1,16 - pslld mm5,16 - mov ebx,DWORD PTR [ebp-64] - psrld mm3,16 - psrld mm7,16 - mov ecx,DWORD PTR [ebp] - pxor mm0,mm1 - pxor mm4,mm5 - mov edx,DWORD PTR 64[ebp] - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - jmp $L007loop -ALIGN 16 -$L008out: - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - ret -__sse_AES_decrypt_compact ENDP -ALIGN 16 -__x86_AES_decrypt PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi -ALIGN 16 -$L009loop: - mov esi,eax - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,dh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,ecx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,ebx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,ah - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,edx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,ecx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,eax - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,edx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov edi,DWORD PTR 20[esp] - and edx,255 - mov edx,DWORD PTR [edx*8+ebp] - movzx ecx,ch - xor edx,DWORD PTR 3[ecx*8+ebp] - mov ecx,esi - shr ebx,16 - and ebx,255 - xor edx,DWORD PTR 2[ebx*8+ebp] - mov ebx,DWORD PTR 8[esp] - shr eax,24 - xor edx,DWORD PTR 1[eax*8+ebp] - mov eax,DWORD PTR 4[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L009loop - lea ebp,DWORD PTR 2176[ebp] - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] - lea ebp,DWORD PTR [ebp-128] - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp] - shl eax,24 - xor edx,eax - mov eax,DWORD PTR 4[esp] - lea ebp,DWORD PTR [ebp-2048] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -ALIGN 64 -$LAES_Td:: -DD 1353184337,1353184337 -DD 1399144830,1399144830 -DD 3282310938,3282310938 -DD 2522752826,2522752826 -DD 3412831035,3412831035 -DD 4047871263,4047871263 -DD 2874735276,2874735276 -DD 2466505547,2466505547 -DD 1442459680,1442459680 -DD 4134368941,4134368941 -DD 2440481928,2440481928 -DD 625738485,625738485 -DD 4242007375,4242007375 -DD 3620416197,3620416197 -DD 2151953702,2151953702 -DD 2409849525,2409849525 -DD 1230680542,1230680542 -DD 1729870373,1729870373 -DD 2551114309,2551114309 -DD 3787521629,3787521629 -DD 41234371,41234371 -DD 317738113,317738113 -DD 2744600205,2744600205 -DD 3338261355,3338261355 -DD 3881799427,3881799427 -DD 2510066197,2510066197 -DD 3950669247,3950669247 -DD 3663286933,3663286933 -DD 763608788,763608788 -DD 3542185048,3542185048 -DD 694804553,694804553 -DD 1154009486,1154009486 -DD 1787413109,1787413109 -DD 2021232372,2021232372 -DD 1799248025,1799248025 -DD 3715217703,3715217703 -DD 3058688446,3058688446 -DD 397248752,397248752 -DD 1722556617,1722556617 -DD 3023752829,3023752829 -DD 407560035,407560035 -DD 2184256229,2184256229 -DD 1613975959,1613975959 -DD 1165972322,1165972322 -DD 3765920945,3765920945 -DD 2226023355,2226023355 -DD 480281086,480281086 -DD 2485848313,2485848313 -DD 1483229296,1483229296 -DD 436028815,436028815 -DD 2272059028,2272059028 -DD 3086515026,3086515026 -DD 601060267,601060267 -DD 3791801202,3791801202 -DD 1468997603,1468997603 -DD 715871590,715871590 -DD 120122290,120122290 -DD 63092015,63092015 -DD 2591802758,2591802758 -DD 2768779219,2768779219 -DD 4068943920,4068943920 -DD 2997206819,2997206819 -DD 3127509762,3127509762 -DD 1552029421,1552029421 -DD 723308426,723308426 -DD 2461301159,2461301159 -DD 4042393587,4042393587 -DD 2715969870,2715969870 -DD 3455375973,3455375973 -DD 3586000134,3586000134 -DD 526529745,526529745 -DD 2331944644,2331944644 -DD 2639474228,2639474228 -DD 2689987490,2689987490 -DD 853641733,853641733 -DD 1978398372,1978398372 -DD 971801355,971801355 -DD 2867814464,2867814464 -DD 111112542,111112542 -DD 1360031421,1360031421 -DD 4186579262,4186579262 -DD 1023860118,1023860118 -DD 2919579357,2919579357 -DD 1186850381,1186850381 -DD 3045938321,3045938321 -DD 90031217,90031217 -DD 1876166148,1876166148 -DD 4279586912,4279586912 -DD 620468249,620468249 -DD 2548678102,2548678102 -DD 3426959497,3426959497 -DD 2006899047,2006899047 -DD 3175278768,3175278768 -DD 2290845959,2290845959 -DD 945494503,945494503 -DD 3689859193,3689859193 -DD 1191869601,1191869601 -DD 3910091388,3910091388 -DD 3374220536,3374220536 -DD 0,0 -DD 2206629897,2206629897 -DD 1223502642,1223502642 -DD 2893025566,2893025566 -DD 1316117100,1316117100 -DD 4227796733,4227796733 -DD 1446544655,1446544655 -DD 517320253,517320253 -DD 658058550,658058550 -DD 1691946762,1691946762 -DD 564550760,564550760 -DD 3511966619,3511966619 -DD 976107044,976107044 -DD 2976320012,2976320012 -DD 266819475,266819475 -DD 3533106868,3533106868 -DD 2660342555,2660342555 -DD 1338359936,1338359936 -DD 2720062561,2720062561 -DD 1766553434,1766553434 -DD 370807324,370807324 -DD 179999714,179999714 -DD 3844776128,3844776128 -DD 1138762300,1138762300 -DD 488053522,488053522 -DD 185403662,185403662 -DD 2915535858,2915535858 -DD 3114841645,3114841645 -DD 3366526484,3366526484 -DD 2233069911,2233069911 -DD 1275557295,1275557295 -DD 3151862254,3151862254 -DD 4250959779,4250959779 -DD 2670068215,2670068215 -DD 3170202204,3170202204 -DD 3309004356,3309004356 -DD 880737115,880737115 -DD 1982415755,1982415755 -DD 3703972811,3703972811 -DD 1761406390,1761406390 -DD 1676797112,1676797112 -DD 3403428311,3403428311 -DD 277177154,277177154 -DD 1076008723,1076008723 -DD 538035844,538035844 -DD 2099530373,2099530373 -DD 4164795346,4164795346 -DD 288553390,288553390 -DD 1839278535,1839278535 -DD 1261411869,1261411869 -DD 4080055004,4080055004 -DD 3964831245,3964831245 -DD 3504587127,3504587127 -DD 1813426987,1813426987 -DD 2579067049,2579067049 -DD 4199060497,4199060497 -DD 577038663,577038663 -DD 3297574056,3297574056 -DD 440397984,440397984 -DD 3626794326,3626794326 -DD 4019204898,4019204898 -DD 3343796615,3343796615 -DD 3251714265,3251714265 -DD 4272081548,4272081548 -DD 906744984,906744984 -DD 3481400742,3481400742 -DD 685669029,685669029 -DD 646887386,646887386 -DD 2764025151,2764025151 -DD 3835509292,3835509292 -DD 227702864,227702864 -DD 2613862250,2613862250 -DD 1648787028,1648787028 -DD 3256061430,3256061430 -DD 3904428176,3904428176 -DD 1593260334,1593260334 -DD 4121936770,4121936770 -DD 3196083615,3196083615 -DD 2090061929,2090061929 -DD 2838353263,2838353263 -DD 3004310991,3004310991 -DD 999926984,999926984 -DD 2809993232,2809993232 -DD 1852021992,1852021992 -DD 2075868123,2075868123 -DD 158869197,158869197 -DD 4095236462,4095236462 -DD 28809964,28809964 -DD 2828685187,2828685187 -DD 1701746150,1701746150 -DD 2129067946,2129067946 -DD 147831841,147831841 -DD 3873969647,3873969647 -DD 3650873274,3650873274 -DD 3459673930,3459673930 -DD 3557400554,3557400554 -DD 3598495785,3598495785 -DD 2947720241,2947720241 -DD 824393514,824393514 -DD 815048134,815048134 -DD 3227951669,3227951669 -DD 935087732,935087732 -DD 2798289660,2798289660 -DD 2966458592,2966458592 -DD 366520115,366520115 -DD 1251476721,1251476721 -DD 4158319681,4158319681 -DD 240176511,240176511 -DD 804688151,804688151 -DD 2379631990,2379631990 -DD 1303441219,1303441219 -DD 1414376140,1414376140 -DD 3741619940,3741619940 -DD 3820343710,3820343710 -DD 461924940,461924940 -DD 3089050817,3089050817 -DD 2136040774,2136040774 -DD 82468509,82468509 -DD 1563790337,1563790337 -DD 1937016826,1937016826 -DD 776014843,776014843 -DD 1511876531,1511876531 -DD 1389550482,1389550482 -DD 861278441,861278441 -DD 323475053,323475053 -DD 2355222426,2355222426 -DD 2047648055,2047648055 -DD 2383738969,2383738969 -DD 2302415851,2302415851 -DD 3995576782,3995576782 -DD 902390199,902390199 -DD 3991215329,3991215329 -DD 1018251130,1018251130 -DD 1507840668,1507840668 -DD 1064563285,1064563285 -DD 2043548696,2043548696 -DD 3208103795,3208103795 -DD 3939366739,3939366739 -DD 1537932639,1537932639 -DD 342834655,342834655 -DD 2262516856,2262516856 -DD 2180231114,2180231114 -DD 1053059257,1053059257 -DD 741614648,741614648 -DD 1598071746,1598071746 -DD 1925389590,1925389590 -DD 203809468,203809468 -DD 2336832552,2336832552 -DD 1100287487,1100287487 -DD 1895934009,1895934009 -DD 3736275976,3736275976 -DD 2632234200,2632234200 -DD 2428589668,2428589668 -DD 1636092795,1636092795 -DD 1890988757,1890988757 -DD 1952214088,1952214088 -DD 1113045200,1113045200 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -__x86_AES_decrypt ENDP -ALIGN 16 -_AES_decrypt PROC PUBLIC -$L_AES_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov eax,esp - sub esp,36 - and esp,-64 - lea ebx,DWORD PTR [edi-127] - sub ebx,esp - neg ebx - and ebx,960 - sub esp,ebx - add esp,4 - mov DWORD PTR 28[esp],eax - call $L010pic_point -$L010pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LAES_Td-$L010pic_point)[ebp] - lea ebx,DWORD PTR 764[esp] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - bt DWORD PTR [eax],25 - jnc $L011x86 - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - call __sse_AES_decrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L011x86: - mov DWORD PTR 24[esp],ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - call __x86_AES_decrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_decrypt ENDP -ALIGN 16 -_AES_cbc_encrypt PROC PUBLIC -$L_AES_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ecx,DWORD PTR 28[esp] - cmp ecx,0 - je $L012drop_out - call $L013pic_point -$L013pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - cmp DWORD PTR 40[esp],0 - lea ebp,DWORD PTR ($LAES_Te-$L013pic_point)[ebp] - jne $L014picked_te - lea ebp,DWORD PTR ($LAES_Td-$LAES_Te)[ebp] -$L014picked_te: - pushfd - cld - cmp ecx,512 - jb $L015slow_way - test ecx,15 - jnz $L015slow_way - bt DWORD PTR [eax],28 - jc $L015slow_way - lea esi,DWORD PTR [esp-324] - and esi,-64 - mov eax,ebp - lea ebx,DWORD PTR 2304[ebp] - mov edx,esi - and eax,4095 - and ebx,4095 - and edx,4095 - cmp edx,ebx - jb $L016tbl_break_out - sub edx,ebx - sub esi,edx - jmp $L017tbl_ok -ALIGN 4 -$L016tbl_break_out: - sub edx,eax - and edx,4095 - add edx,384 - sub esi,edx -ALIGN 4 -$L017tbl_ok: - lea edx,DWORD PTR 24[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],esi - mov eax,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - mov edi,DWORD PTR 12[edx] - mov esi,DWORD PTR 16[edx] - mov edx,DWORD PTR 20[edx] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edi - mov DWORD PTR 48[esp],esi - mov DWORD PTR 316[esp],0 - mov ebx,edi - mov ecx,61 - sub ebx,ebp - mov esi,edi - and ebx,4095 - lea edi,DWORD PTR 76[esp] - cmp ebx,2304 - jb $L018do_copy - cmp ebx,3852 - jb $L019skip_copy -ALIGN 4 -$L018do_copy: - mov DWORD PTR 44[esp],edi -DD 2784229001 -$L019skip_copy: - mov edi,16 -ALIGN 4 -$L020prefetch_tbl: - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] - lea ebp,DWORD PTR 128[ebp] - sub edi,1 - jnz $L020prefetch_tbl - sub ebp,2048 - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 48[esp] - cmp edx,0 - je $L021fast_decrypt - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 16 -$L022fast_enc_loop: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_encrypt - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - lea esi,DWORD PTR 16[esi] - mov ecx,DWORD PTR 40[esp] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L022fast_enc_loop - mov esi,DWORD PTR 48[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - cmp DWORD PTR 316[esp],0 - mov edi,DWORD PTR 44[esp] - je $L023skip_ezero - mov ecx,60 - xor eax,eax -ALIGN 4 -DD 2884892297 -$L023skip_ezero: - mov esp,DWORD PTR 28[esp] - popfd -$L012drop_out: - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L021fast_decrypt: - cmp esi,DWORD PTR 36[esp] - je $L024fast_dec_in_place - mov DWORD PTR 52[esp],edi -ALIGN 4 -ALIGN 16 -$L025fast_dec_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt - mov edi,DWORD PTR 52[esp] - mov esi,DWORD PTR 40[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov edi,DWORD PTR 36[esp] - mov esi,DWORD PTR 32[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - mov DWORD PTR 52[esp],esi - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edi,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edi - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L025fast_dec_loop - mov edi,DWORD PTR 52[esp] - mov esi,DWORD PTR 48[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - jmp $L026fast_dec_out -ALIGN 16 -$L024fast_dec_in_place: -$L027fast_dec_in_place_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - lea edi,DWORD PTR 60[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt - mov edi,DWORD PTR 48[esp] - mov esi,DWORD PTR 36[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 36[esp],esi - lea esi,DWORD PTR 60[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 32[esp] - mov ecx,DWORD PTR 40[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L027fast_dec_in_place_loop -ALIGN 4 -$L026fast_dec_out: - cmp DWORD PTR 316[esp],0 - mov edi,DWORD PTR 44[esp] - je $L028skip_dzero - mov ecx,60 - xor eax,eax -ALIGN 4 -DD 2884892297 -$L028skip_dzero: - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L015slow_way: - mov eax,DWORD PTR [eax] - mov edi,DWORD PTR 36[esp] - lea esi,DWORD PTR [esp-80] - and esi,-64 - lea ebx,DWORD PTR [edi-143] - sub ebx,esi - neg ebx - and ebx,960 - sub esi,ebx - lea ebx,DWORD PTR 768[esi] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - lea edx,DWORD PTR 24[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],esi - mov DWORD PTR 52[esp],eax - mov eax,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - mov esi,DWORD PTR 16[edx] - mov edx,DWORD PTR 20[edx] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edi - mov DWORD PTR 48[esp],esi - mov edi,esi - mov esi,eax - cmp edx,0 - je $L029slow_decrypt - cmp ecx,16 - mov edx,ebx - jb $L030slow_enc_tail - bt DWORD PTR 52[esp],25 - jnc $L031slow_enc_x86 - movq mm0,QWORD PTR [edi] - movq mm4,QWORD PTR 8[edi] -ALIGN 16 -$L032slow_enc_loop_sse: - pxor mm0,QWORD PTR [esi] - pxor mm4,QWORD PTR 8[esi] - mov edi,DWORD PTR 44[esp] - call __sse_AES_encrypt_compact - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - movq QWORD PTR [edi],mm0 - movq QWORD PTR 8[edi],mm4 - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - cmp ecx,16 - mov DWORD PTR 40[esp],ecx - jae $L032slow_enc_loop_sse - test ecx,15 - jnz $L030slow_enc_tail - mov esi,DWORD PTR 48[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L031slow_enc_x86: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 4 -$L033slow_enc_loop_x86: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_encrypt_compact - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - cmp ecx,16 - mov DWORD PTR 40[esp],ecx - jae $L033slow_enc_loop_x86 - test ecx,15 - jnz $L030slow_enc_tail - mov esi,DWORD PTR 48[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L030slow_enc_tail: - emms - mov edi,edx - mov ebx,16 - sub ebx,ecx - cmp edi,esi - je $L034enc_in_place -ALIGN 4 -DD 2767451785 - jmp $L035enc_skip_in_place -$L034enc_in_place: - lea edi,DWORD PTR [ecx*1+edi] -$L035enc_skip_in_place: - mov ecx,ebx - xor eax,eax -ALIGN 4 -DD 2868115081 - mov edi,DWORD PTR 48[esp] - mov esi,edx - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov DWORD PTR 40[esp],16 - jmp $L033slow_enc_loop_x86 -ALIGN 16 -$L029slow_decrypt: - bt DWORD PTR 52[esp],25 - jnc $L036slow_dec_loop_x86 -ALIGN 4 -$L037slow_dec_loop_sse: - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - mov edi,DWORD PTR 44[esp] - call __sse_AES_decrypt_compact - mov esi,DWORD PTR 32[esp] - lea eax,DWORD PTR 60[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov edi,DWORD PTR 48[esp] - movq mm1,QWORD PTR [esi] - movq mm5,QWORD PTR 8[esi] - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - movq QWORD PTR [edi],mm1 - movq QWORD PTR 8[edi],mm5 - sub ecx,16 - jc $L038slow_dec_partial_sse - movq QWORD PTR [ebx],mm0 - movq QWORD PTR 8[ebx],mm4 - lea ebx,DWORD PTR 16[ebx] - mov DWORD PTR 36[esp],ebx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - mov DWORD PTR 40[esp],ecx - jnz $L037slow_dec_loop_sse - emms - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L038slow_dec_partial_sse: - movq QWORD PTR [eax],mm0 - movq QWORD PTR 8[eax],mm4 - emms - add ecx,16 - mov edi,ebx - mov esi,eax -ALIGN 4 -DD 2767451785 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L036slow_dec_loop_x86: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - lea edi,DWORD PTR 60[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt_compact - mov edi,DWORD PTR 48[esp] - mov esi,DWORD PTR 40[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - sub esi,16 - jc $L039slow_dec_partial_x86 - mov DWORD PTR 40[esp],esi - mov esi,DWORD PTR 36[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 36[esp],esi - lea esi,DWORD PTR 60[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 32[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - jnz $L036slow_dec_loop_x86 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L039slow_dec_partial_x86: - lea esi,DWORD PTR 60[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esi,DWORD PTR 32[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - mov edi,DWORD PTR 36[esp] - lea esi,DWORD PTR 60[esp] -ALIGN 4 -DD 2767451785 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_cbc_encrypt ENDP -ALIGN 16 -__x86_AES_set_encrypt_key PROC PRIVATE - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 32[esp] - test esi,-1 - jz $L040badpointer - test edi,-1 - jz $L040badpointer - call $L041pic_point -$L041pic_point: - pop ebp - lea ebp,DWORD PTR ($LAES_Te-$L041pic_point)[ebp] - lea ebp,DWORD PTR 2176[ebp] - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 28[esp] - cmp ecx,128 - je $L04210rounds - cmp ecx,192 - je $L04312rounds - cmp ecx,256 - je $L04414rounds - mov eax,-2 - jmp $L045exit -$L04210rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - xor ecx,ecx - jmp $L04610shortcut -ALIGN 4 -$L04710loop: - mov eax,DWORD PTR [edi] - mov edx,DWORD PTR 12[edi] -$L04610shortcut: - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 16[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 20[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 24[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 28[edi],eax - inc ecx - add edi,16 - cmp ecx,10 - jl $L04710loop - mov DWORD PTR 80[edi],10 - xor eax,eax - jmp $L045exit -$L04312rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 20[esi] - mov DWORD PTR 16[edi],ecx - mov DWORD PTR 20[edi],edx - xor ecx,ecx - jmp $L04812shortcut -ALIGN 4 -$L04912loop: - mov eax,DWORD PTR [edi] - mov edx,DWORD PTR 20[edi] -$L04812shortcut: - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 24[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 28[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 32[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 36[edi],eax - cmp ecx,7 - je $L05012break - inc ecx - xor eax,DWORD PTR 16[edi] - mov DWORD PTR 40[edi],eax - xor eax,DWORD PTR 20[edi] - mov DWORD PTR 44[edi],eax - add edi,24 - jmp $L04912loop -$L05012break: - mov DWORD PTR 72[edi],12 - xor eax,eax - jmp $L045exit -$L04414rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - mov DWORD PTR 16[edi],eax - mov DWORD PTR 20[edi],ebx - mov DWORD PTR 24[edi],ecx - mov DWORD PTR 28[edi],edx - xor ecx,ecx - jmp $L05114shortcut -ALIGN 4 -$L05214loop: - mov edx,DWORD PTR 28[edi] -$L05114shortcut: - mov eax,DWORD PTR [edi] - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 32[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 36[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 40[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 44[edi],eax - cmp ecx,6 - je $L05314break - inc ecx - mov edx,eax - mov eax,DWORD PTR 16[edi] - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - shl ebx,8 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,16 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,24 - xor eax,ebx - mov DWORD PTR 48[edi],eax - xor eax,DWORD PTR 20[edi] - mov DWORD PTR 52[edi],eax - xor eax,DWORD PTR 24[edi] - mov DWORD PTR 56[edi],eax - xor eax,DWORD PTR 28[edi] - mov DWORD PTR 60[edi],eax - add edi,32 - jmp $L05214loop -$L05314break: - mov DWORD PTR 48[edi],14 - xor eax,eax - jmp $L045exit -$L040badpointer: - mov eax,-1 -$L045exit: - pop edi - pop esi - pop ebx - pop ebp - ret -__x86_AES_set_encrypt_key ENDP -ALIGN 16 -_private_AES_set_encrypt_key PROC PUBLIC -$L_private_AES_set_encrypt_key_begin:: - call __x86_AES_set_encrypt_key - ret -_private_AES_set_encrypt_key ENDP -ALIGN 16 -_private_AES_set_decrypt_key PROC PUBLIC -$L_private_AES_set_decrypt_key_begin:: - call __x86_AES_set_encrypt_key - cmp eax,0 - je $L054proceed - ret -$L054proceed: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 28[esp] - mov ecx,DWORD PTR 240[esi] - lea ecx,DWORD PTR [ecx*4] - lea edi,DWORD PTR [ecx*4+esi] -ALIGN 4 -$L055invert: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR [edi] - mov edx,DWORD PTR 4[edi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR [esi],ecx - mov DWORD PTR 4[esi],edx - mov eax,DWORD PTR 8[esi] - mov ebx,DWORD PTR 12[esi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR 8[edi],eax - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - add esi,16 - sub edi,16 - cmp esi,edi - jne $L055invert - mov edi,DWORD PTR 28[esp] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 28[esp],esi - mov eax,DWORD PTR 16[edi] -ALIGN 4 -$L056permute: - add edi,16 - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - xor ebx,esi - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - xor ebx,eax - xor ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - xor ecx,eax - sub esi,ebp - and edx,4278124286 - and esi,454761243 - rol eax,8 - xor edx,esi - mov ebp,DWORD PTR 4[edi] - xor eax,ebx - xor ebx,edx - xor eax,ecx - rol ebx,24 - xor ecx,edx - xor eax,edx - rol ecx,16 - xor eax,ebx - rol edx,8 - xor eax,ecx - mov ebx,ebp - xor eax,edx - mov DWORD PTR [edi],eax - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and edx,4278124286 - and esi,454761243 - xor ecx,ebx - xor edx,esi - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - xor edx,ebx - sub esi,ebp - and eax,4278124286 - and esi,454761243 - rol ebx,8 - xor eax,esi - mov ebp,DWORD PTR 8[edi] - xor ebx,ecx - xor ecx,eax - xor ebx,edx - rol ecx,24 - xor edx,eax - xor ebx,eax - rol edx,16 - xor ebx,ecx - rol eax,8 - xor ebx,edx - mov ecx,ebp - xor ebx,eax - mov DWORD PTR 4[edi],ebx - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and edx,4278124286 - and esi,454761243 - xor edx,esi - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and eax,4278124286 - and esi,454761243 - xor edx,ecx - xor eax,esi - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - xor eax,ecx - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - rol ecx,8 - xor ebx,esi - mov ebp,DWORD PTR 12[edi] - xor ecx,edx - xor edx,ebx - xor ecx,eax - rol edx,24 - xor eax,ebx - xor ecx,ebx - rol eax,16 - xor ecx,edx - rol ebx,8 - xor ecx,eax - mov edx,ebp - xor ecx,ebx - mov DWORD PTR 8[edi],ecx - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and eax,4278124286 - and esi,454761243 - xor eax,esi - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - xor eax,edx - xor ebx,esi - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - xor ebx,edx - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - rol edx,8 - xor ecx,esi - mov ebp,DWORD PTR 16[edi] - xor edx,eax - xor eax,ecx - xor edx,ebx - rol eax,24 - xor ebx,ecx - xor edx,ecx - rol ebx,16 - xor edx,eax - rol ecx,8 - xor edx,ebx - mov eax,ebp - xor edx,ecx - mov DWORD PTR 12[edi],edx - cmp edi,DWORD PTR 28[esp] - jb $L056permute - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_private_AES_set_decrypt_key ENDP -DB 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/aes/aesni-x86.asm b/deps/openssl/asm/x86-win32-masm/aes/aesni-x86.asm deleted file mode 100644 index 6511c21bcf87ca..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/aes/aesni-x86.asm +++ /dev/null @@ -1,2439 +0,0 @@ -TITLE ../openssl/crypto/aes/asm/aesni-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_aesni_encrypt PROC PUBLIC -$L_aesni_encrypt_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 12[esp] - movups xmm2,XMMWORD PTR [eax] - mov ecx,DWORD PTR 240[edx] - mov eax,DWORD PTR 8[esp] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L000enc1_loop_1: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L000enc1_loop_1 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR [eax],xmm2 - pxor xmm2,xmm2 - ret -_aesni_encrypt ENDP -ALIGN 16 -_aesni_decrypt PROC PUBLIC -$L_aesni_decrypt_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 12[esp] - movups xmm2,XMMWORD PTR [eax] - mov ecx,DWORD PTR 240[edx] - mov eax,DWORD PTR 8[esp] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L001dec1_loop_2: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L001dec1_loop_2 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR [eax],xmm2 - pxor xmm2,xmm2 - ret -_aesni_decrypt ENDP -ALIGN 16 -__aesni_encrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L002enc2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L002enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - ret -__aesni_encrypt2 ENDP -ALIGN 16 -__aesni_decrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L003dec2_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L003dec2_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,223,208 -DB 102,15,56,223,216 - ret -__aesni_decrypt2 ENDP -ALIGN 16 -__aesni_encrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L004enc3_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L004enc3_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 - ret -__aesni_encrypt3 ENDP -ALIGN 16 -__aesni_decrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L005dec3_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L005dec3_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 - ret -__aesni_decrypt3 ENDP -ALIGN 16 -__aesni_encrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - shl ecx,4 - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 15,31,64,0 - add ecx,16 -$L006enc4_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L006enc4_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 - ret -__aesni_encrypt4 ENDP -ALIGN 16 -__aesni_decrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - shl ecx,4 - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 15,31,64,0 - add ecx,16 -$L007dec4_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L007dec4_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 - ret -__aesni_decrypt4 ENDP -ALIGN 16 -__aesni_encrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,220,209 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,220,217 - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 102,15,56,220,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR [ecx*1+edx] - add ecx,16 - jmp $L008_aesni_encrypt6_inner -ALIGN 16 -$L009enc6_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -$L008_aesni_encrypt6_inner: -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -$L_aesni_encrypt6_enter:: - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L009enc6_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 - ret -__aesni_encrypt6 ENDP -ALIGN 16 -__aesni_decrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,222,209 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,222,217 - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 102,15,56,222,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR [ecx*1+edx] - add ecx,16 - jmp $L010_aesni_decrypt6_inner -ALIGN 16 -$L011dec6_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -$L010_aesni_decrypt6_inner: -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -$L_aesni_decrypt6_enter:: - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L011dec6_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 - ret -__aesni_decrypt6 ENDP -ALIGN 16 -_aesni_ecb_encrypt PROC PUBLIC -$L_aesni_ecb_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - and eax,-16 - jz $L012ecb_ret - mov ecx,DWORD PTR 240[edx] - test ebx,ebx - jz $L013ecb_decrypt - mov ebp,edx - mov ebx,ecx - cmp eax,96 - jb $L014ecb_enc_tail - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - sub eax,96 - jmp $L015ecb_enc_loop6_enter -ALIGN 16 -$L016ecb_enc_loop6: - movups XMMWORD PTR [edi],xmm2 - movdqu xmm2,XMMWORD PTR [esi] - movups XMMWORD PTR 16[edi],xmm3 - movdqu xmm3,XMMWORD PTR 16[esi] - movups XMMWORD PTR 32[edi],xmm4 - movdqu xmm4,XMMWORD PTR 32[esi] - movups XMMWORD PTR 48[edi],xmm5 - movdqu xmm5,XMMWORD PTR 48[esi] - movups XMMWORD PTR 64[edi],xmm6 - movdqu xmm6,XMMWORD PTR 64[esi] - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] -$L015ecb_enc_loop6_enter: - call __aesni_encrypt6 - mov edx,ebp - mov ecx,ebx - sub eax,96 - jnc $L016ecb_enc_loop6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - add eax,96 - jz $L012ecb_ret -$L014ecb_enc_tail: - movups xmm2,XMMWORD PTR [esi] - cmp eax,32 - jb $L017ecb_enc_one - movups xmm3,XMMWORD PTR 16[esi] - je $L018ecb_enc_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,64 - jb $L019ecb_enc_three - movups xmm5,XMMWORD PTR 48[esi] - je $L020ecb_enc_four - movups xmm6,XMMWORD PTR 64[esi] - xorps xmm7,xmm7 - call __aesni_encrypt6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L012ecb_ret -ALIGN 16 -$L017ecb_enc_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L021enc1_loop_3: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L021enc1_loop_3 -DB 102,15,56,221,209 - movups XMMWORD PTR [edi],xmm2 - jmp $L012ecb_ret -ALIGN 16 -$L018ecb_enc_two: - call __aesni_encrypt2 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L012ecb_ret -ALIGN 16 -$L019ecb_enc_three: - call __aesni_encrypt3 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L012ecb_ret -ALIGN 16 -$L020ecb_enc_four: - call __aesni_encrypt4 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - jmp $L012ecb_ret -ALIGN 16 -$L013ecb_decrypt: - mov ebp,edx - mov ebx,ecx - cmp eax,96 - jb $L022ecb_dec_tail - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - sub eax,96 - jmp $L023ecb_dec_loop6_enter -ALIGN 16 -$L024ecb_dec_loop6: - movups XMMWORD PTR [edi],xmm2 - movdqu xmm2,XMMWORD PTR [esi] - movups XMMWORD PTR 16[edi],xmm3 - movdqu xmm3,XMMWORD PTR 16[esi] - movups XMMWORD PTR 32[edi],xmm4 - movdqu xmm4,XMMWORD PTR 32[esi] - movups XMMWORD PTR 48[edi],xmm5 - movdqu xmm5,XMMWORD PTR 48[esi] - movups XMMWORD PTR 64[edi],xmm6 - movdqu xmm6,XMMWORD PTR 64[esi] - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] -$L023ecb_dec_loop6_enter: - call __aesni_decrypt6 - mov edx,ebp - mov ecx,ebx - sub eax,96 - jnc $L024ecb_dec_loop6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - add eax,96 - jz $L012ecb_ret -$L022ecb_dec_tail: - movups xmm2,XMMWORD PTR [esi] - cmp eax,32 - jb $L025ecb_dec_one - movups xmm3,XMMWORD PTR 16[esi] - je $L026ecb_dec_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,64 - jb $L027ecb_dec_three - movups xmm5,XMMWORD PTR 48[esi] - je $L028ecb_dec_four - movups xmm6,XMMWORD PTR 64[esi] - xorps xmm7,xmm7 - call __aesni_decrypt6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L012ecb_ret -ALIGN 16 -$L025ecb_dec_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L029dec1_loop_4: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L029dec1_loop_4 -DB 102,15,56,223,209 - movups XMMWORD PTR [edi],xmm2 - jmp $L012ecb_ret -ALIGN 16 -$L026ecb_dec_two: - call __aesni_decrypt2 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L012ecb_ret -ALIGN 16 -$L027ecb_dec_three: - call __aesni_decrypt3 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L012ecb_ret -ALIGN 16 -$L028ecb_dec_four: - call __aesni_decrypt4 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 -$L012ecb_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ecb_encrypt ENDP -ALIGN 16 -_aesni_ccm64_encrypt_blocks PROC PUBLIC -$L_aesni_ccm64_encrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov ebp,esp - sub esp,60 - and esp,-16 - mov DWORD PTR 48[esp],ebp - movdqu xmm7,XMMWORD PTR [ebx] - movdqu xmm3,XMMWORD PTR [ecx] - mov ecx,DWORD PTR 240[edx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ebx,1 - xor ebp,ebp - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],ebp - shl ecx,4 - mov ebx,16 - lea ebp,DWORD PTR [edx] - movdqa xmm5,XMMWORD PTR [esp] - movdqa xmm2,xmm7 - lea edx,DWORD PTR 32[ecx*1+edx] - sub ebx,ecx -DB 102,15,56,0,253 -$L030ccm64_enc_outer: - movups xmm0,XMMWORD PTR [ebp] - mov ecx,ebx - movups xmm6,XMMWORD PTR [esi] - xorps xmm2,xmm0 - movups xmm1,XMMWORD PTR 16[ebp] - xorps xmm0,xmm6 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -$L031ccm64_enc2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L031ccm64_enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 - paddq xmm7,XMMWORD PTR 16[esp] - dec eax -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea esi,DWORD PTR 16[esi] - xorps xmm6,xmm2 - movdqa xmm2,xmm7 - movups XMMWORD PTR [edi],xmm6 -DB 102,15,56,0,213 - lea edi,DWORD PTR 16[edi] - jnz $L030ccm64_enc_outer - mov esp,DWORD PTR 48[esp] - mov edi,DWORD PTR 40[esp] - movups XMMWORD PTR [edi],xmm3 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ccm64_encrypt_blocks ENDP -ALIGN 16 -_aesni_ccm64_decrypt_blocks PROC PUBLIC -$L_aesni_ccm64_decrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov ebp,esp - sub esp,60 - and esp,-16 - mov DWORD PTR 48[esp],ebp - movdqu xmm7,XMMWORD PTR [ebx] - movdqu xmm3,XMMWORD PTR [ecx] - mov ecx,DWORD PTR 240[edx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ebx,1 - xor ebp,ebp - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],ebp - movdqa xmm5,XMMWORD PTR [esp] - movdqa xmm2,xmm7 - mov ebp,edx - mov ebx,ecx -DB 102,15,56,0,253 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L032enc1_loop_5: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L032enc1_loop_5 -DB 102,15,56,221,209 - shl ebx,4 - mov ecx,16 - movups xmm6,XMMWORD PTR [esi] - paddq xmm7,XMMWORD PTR 16[esp] - lea esi,QWORD PTR 16[esi] - sub ecx,ebx - lea edx,DWORD PTR 32[ebx*1+ebp] - mov ebx,ecx - jmp $L033ccm64_dec_outer -ALIGN 16 -$L033ccm64_dec_outer: - xorps xmm6,xmm2 - movdqa xmm2,xmm7 - movups XMMWORD PTR [edi],xmm6 - lea edi,DWORD PTR 16[edi] -DB 102,15,56,0,213 - sub eax,1 - jz $L034ccm64_dec_break - movups xmm0,XMMWORD PTR [ebp] - mov ecx,ebx - movups xmm1,XMMWORD PTR 16[ebp] - xorps xmm6,xmm0 - xorps xmm2,xmm0 - xorps xmm3,xmm6 - movups xmm0,XMMWORD PTR 32[ebp] -$L035ccm64_dec2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L035ccm64_dec2_loop - movups xmm6,XMMWORD PTR [esi] - paddq xmm7,XMMWORD PTR 16[esp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea esi,QWORD PTR 16[esi] - jmp $L033ccm64_dec_outer -ALIGN 16 -$L034ccm64_dec_break: - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm6,xmm0 - lea edx,DWORD PTR 32[edx] - xorps xmm3,xmm6 -$L036enc1_loop_6: -DB 102,15,56,220,217 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L036enc1_loop_6 -DB 102,15,56,221,217 - mov esp,DWORD PTR 48[esp] - mov edi,DWORD PTR 40[esp] - movups XMMWORD PTR [edi],xmm3 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ccm64_decrypt_blocks ENDP -ALIGN 16 -_aesni_ctr32_encrypt_blocks PROC PUBLIC -$L_aesni_ctr32_encrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ebp,esp - sub esp,88 - and esp,-16 - mov DWORD PTR 80[esp],ebp - cmp eax,1 - je $L037ctr32_one_shortcut - movdqu xmm7,XMMWORD PTR [ebx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ecx,6 - xor ebp,ebp - mov DWORD PTR 16[esp],ecx - mov DWORD PTR 20[esp],ecx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],ebp -DB 102,15,58,22,251,3 -DB 102,15,58,34,253,3 - mov ecx,DWORD PTR 240[edx] - bswap ebx - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movdqa xmm2,XMMWORD PTR [esp] -DB 102,15,58,34,195,0 - lea ebp,DWORD PTR 3[ebx] -DB 102,15,58,34,205,0 - inc ebx -DB 102,15,58,34,195,1 - inc ebp -DB 102,15,58,34,205,1 - inc ebx -DB 102,15,58,34,195,2 - inc ebp -DB 102,15,58,34,205,2 - movdqa XMMWORD PTR 48[esp],xmm0 -DB 102,15,56,0,194 - movdqu xmm6,XMMWORD PTR [edx] - movdqa XMMWORD PTR 64[esp],xmm1 -DB 102,15,56,0,202 - pshufd xmm2,xmm0,192 - pshufd xmm3,xmm0,128 - cmp eax,6 - jb $L038ctr32_tail - pxor xmm7,xmm6 - shl ecx,4 - mov ebx,16 - movdqa XMMWORD PTR 32[esp],xmm7 - mov ebp,edx - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - sub eax,6 - jmp $L039ctr32_loop6 -ALIGN 16 -$L039ctr32_loop6: - pshufd xmm4,xmm0,64 - movdqa xmm0,XMMWORD PTR 32[esp] - pshufd xmm5,xmm1,192 - pxor xmm2,xmm0 - pshufd xmm6,xmm1,128 - pxor xmm3,xmm0 - pshufd xmm7,xmm1,64 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm4,xmm0 - pxor xmm5,xmm0 -DB 102,15,56,220,209 - pxor xmm6,xmm0 - pxor xmm7,xmm0 -DB 102,15,56,220,217 - movups xmm0,XMMWORD PTR 32[ebp] - mov ecx,ebx -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - call $L_aesni_encrypt6_enter - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm3,xmm0 - movups XMMWORD PTR [edi],xmm2 - movdqa xmm0,XMMWORD PTR 16[esp] - xorps xmm4,xmm1 - movdqa xmm1,XMMWORD PTR 64[esp] - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - paddd xmm1,xmm0 - paddd xmm0,XMMWORD PTR 48[esp] - movdqa xmm2,XMMWORD PTR [esp] - movups xmm3,XMMWORD PTR 48[esi] - movups xmm4,XMMWORD PTR 64[esi] - xorps xmm5,xmm3 - movups xmm3,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - movdqa XMMWORD PTR 48[esp],xmm0 -DB 102,15,56,0,194 - xorps xmm6,xmm4 - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm1 -DB 102,15,56,0,202 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,192 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - pshufd xmm3,xmm0,128 - sub eax,6 - jnc $L039ctr32_loop6 - add eax,6 - jz $L040ctr32_ret - movdqu xmm7,XMMWORD PTR [ebp] - mov edx,ebp - pxor xmm7,XMMWORD PTR 32[esp] - mov ecx,DWORD PTR 240[ebp] -$L038ctr32_tail: - por xmm2,xmm7 - cmp eax,2 - jb $L041ctr32_one - pshufd xmm4,xmm0,64 - por xmm3,xmm7 - je $L042ctr32_two - pshufd xmm5,xmm1,192 - por xmm4,xmm7 - cmp eax,4 - jb $L043ctr32_three - pshufd xmm6,xmm1,128 - por xmm5,xmm7 - je $L044ctr32_four - por xmm6,xmm7 - call __aesni_encrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm4,xmm1 - movups xmm1,XMMWORD PTR 64[esi] - xorps xmm5,xmm0 - movups XMMWORD PTR [edi],xmm2 - xorps xmm6,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L040ctr32_ret -ALIGN 16 -$L037ctr32_one_shortcut: - movups xmm2,XMMWORD PTR [ebx] - mov ecx,DWORD PTR 240[edx] -$L041ctr32_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L045enc1_loop_7: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L045enc1_loop_7 -DB 102,15,56,221,209 - movups xmm6,XMMWORD PTR [esi] - xorps xmm6,xmm2 - movups XMMWORD PTR [edi],xmm6 - jmp $L040ctr32_ret -ALIGN 16 -$L042ctr32_two: - call __aesni_encrypt2 - movups xmm5,XMMWORD PTR [esi] - movups xmm6,XMMWORD PTR 16[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L040ctr32_ret -ALIGN 16 -$L043ctr32_three: - call __aesni_encrypt3 - movups xmm5,XMMWORD PTR [esi] - movups xmm6,XMMWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm7,XMMWORD PTR 32[esi] - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm7 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L040ctr32_ret -ALIGN 16 -$L044ctr32_four: - call __aesni_encrypt4 - movups xmm6,XMMWORD PTR [esi] - movups xmm7,XMMWORD PTR 16[esi] - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm2,xmm6 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm3,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,xmm0 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 -$L040ctr32_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - mov esp,DWORD PTR 80[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ctr32_encrypt_blocks ENDP -ALIGN 16 -_aesni_xts_encrypt PROC PUBLIC -$L_aesni_xts_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov edx,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 240[edx] - movups xmm2,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L046enc1_loop_8: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L046enc1_loop_8 -DB 102,15,56,221,209 - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - sub esp,120 - mov ecx,DWORD PTR 240[edx] - and esp,-16 - mov DWORD PTR 96[esp],135 - mov DWORD PTR 100[esp],0 - mov DWORD PTR 104[esp],1 - mov DWORD PTR 108[esp],0 - mov DWORD PTR 112[esp],eax - mov DWORD PTR 116[esp],ebp - movdqa xmm1,xmm2 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - pcmpgtd xmm0,xmm1 - and eax,-16 - mov ebp,edx - mov ebx,ecx - sub eax,96 - jc $L047xts_enc_short - shl ecx,4 - mov ebx,16 - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - jmp $L048xts_enc_loop6 -ALIGN 16 -$L048xts_enc_loop6: - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR [esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 16[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 32[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 64[esp],xmm1 - paddq xmm1,xmm1 - movups xmm0,XMMWORD PTR [ebp] - pand xmm7,xmm3 - movups xmm2,XMMWORD PTR [esi] - pxor xmm7,xmm1 - mov ecx,ebx - movdqu xmm3,XMMWORD PTR 16[esi] - xorps xmm2,xmm0 - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm3,xmm0 - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm4,xmm0 - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm5,xmm0 - movdqu xmm1,XMMWORD PTR 80[esi] - pxor xmm6,xmm0 - lea esi,DWORD PTR 96[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqa XMMWORD PTR 80[esp],xmm7 - pxor xmm7,xmm1 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm3,XMMWORD PTR 16[esp] - pxor xmm4,XMMWORD PTR 32[esp] -DB 102,15,56,220,209 - pxor xmm5,XMMWORD PTR 48[esp] - pxor xmm6,XMMWORD PTR 64[esp] -DB 102,15,56,220,217 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - call $L_aesni_encrypt6_enter - movdqa xmm1,XMMWORD PTR 80[esp] - pxor xmm0,xmm0 - xorps xmm2,XMMWORD PTR [esp] - pcmpgtd xmm0,xmm1 - xorps xmm3,XMMWORD PTR 16[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 32[edi],xmm4 - xorps xmm6,XMMWORD PTR 64[esp] - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm1 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,19 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqa xmm3,XMMWORD PTR 96[esp] - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - sub eax,96 - jnc $L048xts_enc_loop6 - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - mov ebx,ecx -$L047xts_enc_short: - add eax,96 - jz $L049xts_enc_done6x - movdqa xmm5,xmm1 - cmp eax,32 - jb $L050xts_enc_one - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - je $L051xts_enc_two - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - cmp eax,64 - jb $L052xts_enc_three - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm7,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - movdqa XMMWORD PTR [esp],xmm5 - movdqa XMMWORD PTR 16[esp],xmm6 - je $L053xts_enc_four - movdqa XMMWORD PTR 32[esp],xmm7 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm7,xmm3 - pxor xmm7,xmm1 - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm3,XMMWORD PTR 16[esp] - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm4,XMMWORD PTR 32[esp] - lea esi,DWORD PTR 80[esi] - pxor xmm5,XMMWORD PTR 48[esp] - movdqa XMMWORD PTR 64[esp],xmm7 - pxor xmm6,xmm7 - call __aesni_encrypt6 - movaps xmm1,XMMWORD PTR 64[esp] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm6,xmm1 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - jmp $L054xts_enc_done -ALIGN 16 -$L050xts_enc_one: - movups xmm2,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L055enc1_loop_9: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L055enc1_loop_9 -DB 102,15,56,221,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - movdqa xmm1,xmm5 - jmp $L054xts_enc_done -ALIGN 16 -$L051xts_enc_two: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - lea esi,DWORD PTR 32[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - call __aesni_encrypt2 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea edi,DWORD PTR 32[edi] - movdqa xmm1,xmm6 - jmp $L054xts_enc_done -ALIGN 16 -$L052xts_enc_three: - movaps xmm7,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - lea esi,DWORD PTR 48[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - call __aesni_encrypt3 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - lea edi,DWORD PTR 48[edi] - movdqa xmm1,xmm7 - jmp $L054xts_enc_done -ALIGN 16 -$L053xts_enc_four: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - xorps xmm2,XMMWORD PTR [esp] - movups xmm5,XMMWORD PTR 48[esi] - lea esi,DWORD PTR 64[esi] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - xorps xmm5,xmm6 - call __aesni_encrypt4 - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,xmm6 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - lea edi,DWORD PTR 64[edi] - movdqa xmm1,xmm6 - jmp $L054xts_enc_done -ALIGN 16 -$L049xts_enc_done6x: - mov eax,DWORD PTR 112[esp] - and eax,15 - jz $L056xts_enc_ret - movdqa xmm5,xmm1 - mov DWORD PTR 112[esp],eax - jmp $L057xts_enc_steal -ALIGN 16 -$L054xts_enc_done: - mov eax,DWORD PTR 112[esp] - pxor xmm0,xmm0 - and eax,15 - jz $L056xts_enc_ret - pcmpgtd xmm0,xmm1 - mov DWORD PTR 112[esp],eax - pshufd xmm5,xmm0,19 - paddq xmm1,xmm1 - pand xmm5,XMMWORD PTR 96[esp] - pxor xmm5,xmm1 -$L057xts_enc_steal: - movzx ecx,BYTE PTR [esi] - movzx edx,BYTE PTR [edi-16] - lea esi,DWORD PTR 1[esi] - mov BYTE PTR [edi-16],cl - mov BYTE PTR [edi],dl - lea edi,DWORD PTR 1[edi] - sub eax,1 - jnz $L057xts_enc_steal - sub edi,DWORD PTR 112[esp] - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [edi-16] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L058enc1_loop_10: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L058enc1_loop_10 -DB 102,15,56,221,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi-16],xmm2 -$L056xts_enc_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movdqa XMMWORD PTR [esp],xmm0 - pxor xmm3,xmm3 - movdqa XMMWORD PTR 16[esp],xmm0 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - movdqa XMMWORD PTR 80[esp],xmm0 - mov esp,DWORD PTR 116[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_xts_encrypt ENDP -ALIGN 16 -_aesni_xts_decrypt PROC PUBLIC -$L_aesni_xts_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov edx,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 240[edx] - movups xmm2,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L059enc1_loop_11: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L059enc1_loop_11 -DB 102,15,56,221,209 - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - sub esp,120 - and esp,-16 - xor ebx,ebx - test eax,15 - setnz bl - shl ebx,4 - sub eax,ebx - mov DWORD PTR 96[esp],135 - mov DWORD PTR 100[esp],0 - mov DWORD PTR 104[esp],1 - mov DWORD PTR 108[esp],0 - mov DWORD PTR 112[esp],eax - mov DWORD PTR 116[esp],ebp - mov ecx,DWORD PTR 240[edx] - mov ebp,edx - mov ebx,ecx - movdqa xmm1,xmm2 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - pcmpgtd xmm0,xmm1 - and eax,-16 - sub eax,96 - jc $L060xts_dec_short - shl ecx,4 - mov ebx,16 - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - jmp $L061xts_dec_loop6 -ALIGN 16 -$L061xts_dec_loop6: - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR [esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 16[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 32[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 64[esp],xmm1 - paddq xmm1,xmm1 - movups xmm0,XMMWORD PTR [ebp] - pand xmm7,xmm3 - movups xmm2,XMMWORD PTR [esi] - pxor xmm7,xmm1 - mov ecx,ebx - movdqu xmm3,XMMWORD PTR 16[esi] - xorps xmm2,xmm0 - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm3,xmm0 - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm4,xmm0 - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm5,xmm0 - movdqu xmm1,XMMWORD PTR 80[esi] - pxor xmm6,xmm0 - lea esi,DWORD PTR 96[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqa XMMWORD PTR 80[esp],xmm7 - pxor xmm7,xmm1 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm3,XMMWORD PTR 16[esp] - pxor xmm4,XMMWORD PTR 32[esp] -DB 102,15,56,222,209 - pxor xmm5,XMMWORD PTR 48[esp] - pxor xmm6,XMMWORD PTR 64[esp] -DB 102,15,56,222,217 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - call $L_aesni_decrypt6_enter - movdqa xmm1,XMMWORD PTR 80[esp] - pxor xmm0,xmm0 - xorps xmm2,XMMWORD PTR [esp] - pcmpgtd xmm0,xmm1 - xorps xmm3,XMMWORD PTR 16[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 32[edi],xmm4 - xorps xmm6,XMMWORD PTR 64[esp] - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm1 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,19 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqa xmm3,XMMWORD PTR 96[esp] - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - sub eax,96 - jnc $L061xts_dec_loop6 - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - mov ebx,ecx -$L060xts_dec_short: - add eax,96 - jz $L062xts_dec_done6x - movdqa xmm5,xmm1 - cmp eax,32 - jb $L063xts_dec_one - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - je $L064xts_dec_two - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - cmp eax,64 - jb $L065xts_dec_three - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm7,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - movdqa XMMWORD PTR [esp],xmm5 - movdqa XMMWORD PTR 16[esp],xmm6 - je $L066xts_dec_four - movdqa XMMWORD PTR 32[esp],xmm7 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm7,xmm3 - pxor xmm7,xmm1 - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm3,XMMWORD PTR 16[esp] - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm4,XMMWORD PTR 32[esp] - lea esi,DWORD PTR 80[esi] - pxor xmm5,XMMWORD PTR 48[esp] - movdqa XMMWORD PTR 64[esp],xmm7 - pxor xmm6,xmm7 - call __aesni_decrypt6 - movaps xmm1,XMMWORD PTR 64[esp] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm6,xmm1 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - jmp $L067xts_dec_done -ALIGN 16 -$L063xts_dec_one: - movups xmm2,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L068dec1_loop_12: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L068dec1_loop_12 -DB 102,15,56,223,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - movdqa xmm1,xmm5 - jmp $L067xts_dec_done -ALIGN 16 -$L064xts_dec_two: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - lea esi,DWORD PTR 32[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - call __aesni_decrypt2 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea edi,DWORD PTR 32[edi] - movdqa xmm1,xmm6 - jmp $L067xts_dec_done -ALIGN 16 -$L065xts_dec_three: - movaps xmm7,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - lea esi,DWORD PTR 48[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - call __aesni_decrypt3 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - lea edi,DWORD PTR 48[edi] - movdqa xmm1,xmm7 - jmp $L067xts_dec_done -ALIGN 16 -$L066xts_dec_four: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - xorps xmm2,XMMWORD PTR [esp] - movups xmm5,XMMWORD PTR 48[esi] - lea esi,DWORD PTR 64[esi] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - xorps xmm5,xmm6 - call __aesni_decrypt4 - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,xmm6 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - lea edi,DWORD PTR 64[edi] - movdqa xmm1,xmm6 - jmp $L067xts_dec_done -ALIGN 16 -$L062xts_dec_done6x: - mov eax,DWORD PTR 112[esp] - and eax,15 - jz $L069xts_dec_ret - mov DWORD PTR 112[esp],eax - jmp $L070xts_dec_only_one_more -ALIGN 16 -$L067xts_dec_done: - mov eax,DWORD PTR 112[esp] - pxor xmm0,xmm0 - and eax,15 - jz $L069xts_dec_ret - pcmpgtd xmm0,xmm1 - mov DWORD PTR 112[esp],eax - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 -$L070xts_dec_only_one_more: - pshufd xmm5,xmm0,19 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm5,xmm3 - pxor xmm5,xmm1 - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L071dec1_loop_13: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L071dec1_loop_13 -DB 102,15,56,223,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 -$L072xts_dec_steal: - movzx ecx,BYTE PTR 16[esi] - movzx edx,BYTE PTR [edi] - lea esi,DWORD PTR 1[esi] - mov BYTE PTR [edi],cl - mov BYTE PTR 16[edi],dl - lea edi,DWORD PTR 1[edi] - sub eax,1 - jnz $L072xts_dec_steal - sub edi,DWORD PTR 112[esp] - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [edi] - xorps xmm2,xmm6 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L073dec1_loop_14: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L073dec1_loop_14 -DB 102,15,56,223,209 - xorps xmm2,xmm6 - movups XMMWORD PTR [edi],xmm2 -$L069xts_dec_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movdqa XMMWORD PTR [esp],xmm0 - pxor xmm3,xmm3 - movdqa XMMWORD PTR 16[esp],xmm0 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - movdqa XMMWORD PTR 80[esp],xmm0 - mov esp,DWORD PTR 116[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_xts_decrypt ENDP -ALIGN 16 -_aesni_cbc_encrypt PROC PUBLIC -$L_aesni_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov ebx,esp - mov edi,DWORD PTR 24[esp] - sub ebx,24 - mov eax,DWORD PTR 28[esp] - and ebx,-16 - mov edx,DWORD PTR 32[esp] - mov ebp,DWORD PTR 36[esp] - test eax,eax - jz $L074cbc_abort - cmp DWORD PTR 40[esp],0 - xchg ebx,esp - movups xmm7,XMMWORD PTR [ebp] - mov ecx,DWORD PTR 240[edx] - mov ebp,edx - mov DWORD PTR 16[esp],ebx - mov ebx,ecx - je $L075cbc_decrypt - movaps xmm2,xmm7 - cmp eax,16 - jb $L076cbc_enc_tail - sub eax,16 - jmp $L077cbc_enc_loop -ALIGN 16 -$L077cbc_enc_loop: - movups xmm7,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm7,xmm0 - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm7 -$L078enc1_loop_15: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L078enc1_loop_15 -DB 102,15,56,221,209 - mov ecx,ebx - mov edx,ebp - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - sub eax,16 - jnc $L077cbc_enc_loop - add eax,16 - jnz $L076cbc_enc_tail - movaps xmm7,xmm2 - pxor xmm2,xmm2 - jmp $L079cbc_ret -$L076cbc_enc_tail: - mov ecx,eax -DD 2767451785 - mov ecx,16 - sub ecx,eax - xor eax,eax -DD 2868115081 - lea edi,DWORD PTR [edi-16] - mov ecx,ebx - mov esi,edi - mov edx,ebp - jmp $L077cbc_enc_loop -ALIGN 16 -$L075cbc_decrypt: - cmp eax,80 - jbe $L080cbc_dec_tail - movaps XMMWORD PTR [esp],xmm7 - sub eax,80 - jmp $L081cbc_dec_loop6_enter -ALIGN 16 -$L082cbc_dec_loop6: - movaps XMMWORD PTR [esp],xmm0 - movups XMMWORD PTR [edi],xmm7 - lea edi,DWORD PTR 16[edi] -$L081cbc_dec_loop6_enter: - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - call __aesni_decrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm5,xmm1 - movups xmm1,XMMWORD PTR 64[esi] - xorps xmm6,xmm0 - movups xmm0,XMMWORD PTR 80[esi] - xorps xmm7,xmm1 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea esi,DWORD PTR 96[esi] - movups XMMWORD PTR 32[edi],xmm4 - mov ecx,ebx - movups XMMWORD PTR 48[edi],xmm5 - mov edx,ebp - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - sub eax,96 - ja $L082cbc_dec_loop6 - movaps xmm2,xmm7 - movaps xmm7,xmm0 - add eax,80 - jle $L083cbc_dec_clear_tail_collected - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] -$L080cbc_dec_tail: - movups xmm2,XMMWORD PTR [esi] - movaps xmm6,xmm2 - cmp eax,16 - jbe $L084cbc_dec_one - movups xmm3,XMMWORD PTR 16[esi] - movaps xmm5,xmm3 - cmp eax,32 - jbe $L085cbc_dec_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,48 - jbe $L086cbc_dec_three - movups xmm5,XMMWORD PTR 48[esi] - cmp eax,64 - jbe $L087cbc_dec_four - movups xmm6,XMMWORD PTR 64[esi] - movaps XMMWORD PTR [esp],xmm7 - movups xmm2,XMMWORD PTR [esi] - xorps xmm7,xmm7 - call __aesni_decrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm5,xmm1 - movups xmm7,XMMWORD PTR 64[esi] - xorps xmm6,xmm0 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR 32[edi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR 48[edi],xmm5 - pxor xmm5,xmm5 - lea edi,DWORD PTR 64[edi] - movaps xmm2,xmm6 - pxor xmm6,xmm6 - sub eax,80 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L084cbc_dec_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L089dec1_loop_16: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L089dec1_loop_16 -DB 102,15,56,223,209 - xorps xmm2,xmm7 - movaps xmm7,xmm6 - sub eax,16 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L085cbc_dec_two: - call __aesni_decrypt2 - xorps xmm2,xmm7 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movaps xmm2,xmm3 - pxor xmm3,xmm3 - lea edi,DWORD PTR 16[edi] - movaps xmm7,xmm5 - sub eax,32 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L086cbc_dec_three: - call __aesni_decrypt3 - xorps xmm2,xmm7 - xorps xmm3,xmm6 - xorps xmm4,xmm5 - movups XMMWORD PTR [edi],xmm2 - movaps xmm2,xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - lea edi,DWORD PTR 32[edi] - movups xmm7,XMMWORD PTR 32[esi] - sub eax,48 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L087cbc_dec_four: - call __aesni_decrypt4 - movups xmm1,XMMWORD PTR 16[esi] - movups xmm0,XMMWORD PTR 32[esi] - xorps xmm2,xmm7 - movups xmm7,XMMWORD PTR 48[esi] - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - xorps xmm5,xmm0 - movups XMMWORD PTR 32[edi],xmm4 - pxor xmm4,xmm4 - lea edi,DWORD PTR 48[edi] - movaps xmm2,xmm5 - pxor xmm5,xmm5 - sub eax,64 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L083cbc_dec_clear_tail_collected: - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 -$L088cbc_dec_tail_collected: - and eax,15 - jnz $L090cbc_dec_tail_partial - movups XMMWORD PTR [edi],xmm2 - pxor xmm0,xmm0 - jmp $L079cbc_ret -ALIGN 16 -$L090cbc_dec_tail_partial: - movaps XMMWORD PTR [esp],xmm2 - pxor xmm0,xmm0 - mov ecx,16 - mov esi,esp - sub ecx,eax -DD 2767451785 - movdqa XMMWORD PTR [esp],xmm2 -$L079cbc_ret: - mov esp,DWORD PTR 16[esp] - mov ebp,DWORD PTR 36[esp] - pxor xmm2,xmm2 - pxor xmm1,xmm1 - movups XMMWORD PTR [ebp],xmm7 - pxor xmm7,xmm7 -$L074cbc_abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_cbc_encrypt ENDP -ALIGN 16 -__aesni_set_encrypt_key PROC PRIVATE - push ebp - push ebx - test eax,eax - jz $L091bad_pointer - test edx,edx - jz $L091bad_pointer - call $L092pic -$L092pic: - pop ebx - lea ebx,DWORD PTR ($Lkey_const-$L092pic)[ebx] - lea ebp,DWORD PTR _OPENSSL_ia32cap_P - movups xmm0,XMMWORD PTR [eax] - xorps xmm4,xmm4 - mov ebp,DWORD PTR 4[ebp] - lea edx,DWORD PTR 16[edx] - and ebp,268437504 - cmp ecx,256 - je $L09314rounds - cmp ecx,192 - je $L09412rounds - cmp ecx,128 - jne $L095bad_keybits -ALIGN 16 -$L09610rounds: - cmp ebp,268435456 - je $L09710rounds_alt - mov ecx,9 - movups XMMWORD PTR [edx-16],xmm0 -DB 102,15,58,223,200,1 - call $L098key_128_cold -DB 102,15,58,223,200,2 - call $L099key_128 -DB 102,15,58,223,200,4 - call $L099key_128 -DB 102,15,58,223,200,8 - call $L099key_128 -DB 102,15,58,223,200,16 - call $L099key_128 -DB 102,15,58,223,200,32 - call $L099key_128 -DB 102,15,58,223,200,64 - call $L099key_128 -DB 102,15,58,223,200,128 - call $L099key_128 -DB 102,15,58,223,200,27 - call $L099key_128 -DB 102,15,58,223,200,54 - call $L099key_128 - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 80[edx],ecx - jmp $L100good_key -ALIGN 16 -$L099key_128: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] -$L098key_128_cold: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - ret -ALIGN 16 -$L09710rounds_alt: - movdqa xmm5,XMMWORD PTR [ebx] - mov ecx,8 - movdqa xmm4,XMMWORD PTR 32[ebx] - movdqa xmm2,xmm0 - movdqu XMMWORD PTR [edx-16],xmm0 -$L101loop_key128: -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - lea edx,DWORD PTR 16[edx] - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx-16],xmm0 - movdqa xmm2,xmm0 - dec ecx - jnz $L101loop_key128 - movdqa xmm4,XMMWORD PTR 48[ebx] -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx],xmm0 - movdqa xmm2,xmm0 -DB 102,15,56,0,197 -DB 102,15,56,221,196 - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR 16[edx],xmm0 - mov ecx,9 - mov DWORD PTR 96[edx],ecx - jmp $L100good_key -ALIGN 16 -$L09412rounds: - movq xmm2,QWORD PTR 16[eax] - cmp ebp,268435456 - je $L10212rounds_alt - mov ecx,11 - movups XMMWORD PTR [edx-16],xmm0 -DB 102,15,58,223,202,1 - call $L103key_192a_cold -DB 102,15,58,223,202,2 - call $L104key_192b -DB 102,15,58,223,202,4 - call $L105key_192a -DB 102,15,58,223,202,8 - call $L104key_192b -DB 102,15,58,223,202,16 - call $L105key_192a -DB 102,15,58,223,202,32 - call $L104key_192b -DB 102,15,58,223,202,64 - call $L105key_192a -DB 102,15,58,223,202,128 - call $L104key_192b - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 48[edx],ecx - jmp $L100good_key -ALIGN 16 -$L105key_192a: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] -ALIGN 16 -$L103key_192a_cold: - movaps xmm5,xmm2 -$L106key_192b_warm: - shufps xmm4,xmm0,16 - movdqa xmm3,xmm2 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - pslldq xmm3,4 - xorps xmm0,xmm4 - pshufd xmm1,xmm1,85 - pxor xmm2,xmm3 - pxor xmm0,xmm1 - pshufd xmm3,xmm0,255 - pxor xmm2,xmm3 - ret -ALIGN 16 -$L104key_192b: - movaps xmm3,xmm0 - shufps xmm5,xmm0,68 - movups XMMWORD PTR [edx],xmm5 - shufps xmm3,xmm2,78 - movups XMMWORD PTR 16[edx],xmm3 - lea edx,DWORD PTR 32[edx] - jmp $L106key_192b_warm -ALIGN 16 -$L10212rounds_alt: - movdqa xmm5,XMMWORD PTR 16[ebx] - movdqa xmm4,XMMWORD PTR 32[ebx] - mov ecx,8 - movdqu XMMWORD PTR [edx-16],xmm0 -$L107loop_key192: - movq QWORD PTR [edx],xmm2 - movdqa xmm1,xmm2 -DB 102,15,56,0,213 -DB 102,15,56,221,212 - pslld xmm4,1 - lea edx,DWORD PTR 24[edx] - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pshufd xmm3,xmm0,255 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pxor xmm0,xmm2 - pxor xmm2,xmm3 - movdqu XMMWORD PTR [edx-16],xmm0 - dec ecx - jnz $L107loop_key192 - mov ecx,11 - mov DWORD PTR 32[edx],ecx - jmp $L100good_key -ALIGN 16 -$L09314rounds: - movups xmm2,XMMWORD PTR 16[eax] - lea edx,DWORD PTR 16[edx] - cmp ebp,268435456 - je $L10814rounds_alt - mov ecx,13 - movups XMMWORD PTR [edx-32],xmm0 - movups XMMWORD PTR [edx-16],xmm2 -DB 102,15,58,223,202,1 - call $L109key_256a_cold -DB 102,15,58,223,200,1 - call $L110key_256b -DB 102,15,58,223,202,2 - call $L111key_256a -DB 102,15,58,223,200,2 - call $L110key_256b -DB 102,15,58,223,202,4 - call $L111key_256a -DB 102,15,58,223,200,4 - call $L110key_256b -DB 102,15,58,223,202,8 - call $L111key_256a -DB 102,15,58,223,200,8 - call $L110key_256b -DB 102,15,58,223,202,16 - call $L111key_256a -DB 102,15,58,223,200,16 - call $L110key_256b -DB 102,15,58,223,202,32 - call $L111key_256a -DB 102,15,58,223,200,32 - call $L110key_256b -DB 102,15,58,223,202,64 - call $L111key_256a - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 16[edx],ecx - xor eax,eax - jmp $L100good_key -ALIGN 16 -$L111key_256a: - movups XMMWORD PTR [edx],xmm2 - lea edx,DWORD PTR 16[edx] -$L109key_256a_cold: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - ret -ALIGN 16 -$L110key_256b: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] - shufps xmm4,xmm2,16 - xorps xmm2,xmm4 - shufps xmm4,xmm2,140 - xorps xmm2,xmm4 - shufps xmm1,xmm1,170 - xorps xmm2,xmm1 - ret -ALIGN 16 -$L10814rounds_alt: - movdqa xmm5,XMMWORD PTR [ebx] - movdqa xmm4,XMMWORD PTR 32[ebx] - mov ecx,7 - movdqu XMMWORD PTR [edx-32],xmm0 - movdqa xmm1,xmm2 - movdqu XMMWORD PTR [edx-16],xmm2 -$L112loop_key256: -DB 102,15,56,0,213 -DB 102,15,56,221,212 - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pslld xmm4,1 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx],xmm0 - dec ecx - jz $L113done_key256 - pshufd xmm2,xmm0,255 - pxor xmm3,xmm3 -DB 102,15,56,221,211 - movdqa xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm1,xmm3 - pxor xmm2,xmm1 - movdqu XMMWORD PTR 16[edx],xmm2 - lea edx,DWORD PTR 32[edx] - movdqa xmm1,xmm2 - jmp $L112loop_key256 -$L113done_key256: - mov ecx,13 - mov DWORD PTR 16[edx],ecx -$L100good_key: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - xor eax,eax - pop ebx - pop ebp - ret -ALIGN 4 -$L091bad_pointer: - mov eax,-1 - pop ebx - pop ebp - ret -ALIGN 4 -$L095bad_keybits: - pxor xmm0,xmm0 - mov eax,-2 - pop ebx - pop ebp - ret -__aesni_set_encrypt_key ENDP -ALIGN 16 -_aesni_set_encrypt_key PROC PUBLIC -$L_aesni_set_encrypt_key_begin:: - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - call __aesni_set_encrypt_key - ret -_aesni_set_encrypt_key ENDP -ALIGN 16 -_aesni_set_decrypt_key PROC PUBLIC -$L_aesni_set_decrypt_key_begin:: - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - call __aesni_set_encrypt_key - mov edx,DWORD PTR 12[esp] - shl ecx,4 - test eax,eax - jnz $L114dec_key_ret - lea eax,DWORD PTR 16[ecx*1+edx] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR [eax] - movups XMMWORD PTR [eax],xmm0 - movups XMMWORD PTR [edx],xmm1 - lea edx,DWORD PTR 16[edx] - lea eax,DWORD PTR [eax-16] -$L115dec_key_inverse: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR [eax] -DB 102,15,56,219,192 -DB 102,15,56,219,201 - lea edx,DWORD PTR 16[edx] - lea eax,DWORD PTR [eax-16] - movups XMMWORD PTR 16[eax],xmm0 - movups XMMWORD PTR [edx-16],xmm1 - cmp eax,edx - ja $L115dec_key_inverse - movups xmm0,XMMWORD PTR [edx] -DB 102,15,56,219,192 - movups XMMWORD PTR [edx],xmm0 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - xor eax,eax -$L114dec_key_ret: - ret -_aesni_set_decrypt_key ENDP -ALIGN 64 -$Lkey_const:: -DD 202313229,202313229,202313229,202313229 -DD 67569157,67569157,67569157,67569157 -DD 1,1,1,1 -DD 27,27,27,27 -DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/aes/vpaes-x86.asm b/deps/openssl/asm/x86-win32-masm/aes/vpaes-x86.asm deleted file mode 100644 index 57afc202bb7f31..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/aes/vpaes-x86.asm +++ /dev/null @@ -1,662 +0,0 @@ -TITLE vpaes-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 64 -$L_vpaes_consts:: -DD 218628480,235210255,168496130,67568393 -DD 252381056,17041926,33884169,51187212 -DD 252645135,252645135,252645135,252645135 -DD 1512730624,3266504856,1377990664,3401244816 -DD 830229760,1275146365,2969422977,3447763452 -DD 3411033600,2979783055,338359620,2782886510 -DD 4209124096,907596821,221174255,1006095553 -DD 191964160,3799684038,3164090317,1589111125 -DD 182528256,1777043520,2877432650,3265356744 -DD 1874708224,3503451415,3305285752,363511674 -DD 1606117888,3487855781,1093350906,2384367825 -DD 197121,67569157,134941193,202313229 -DD 67569157,134941193,202313229,197121 -DD 134941193,202313229,197121,67569157 -DD 202313229,197121,67569157,134941193 -DD 33619971,100992007,168364043,235736079 -DD 235736079,33619971,100992007,168364043 -DD 168364043,235736079,33619971,100992007 -DD 100992007,168364043,235736079,33619971 -DD 50462976,117835012,185207048,252579084 -DD 252314880,51251460,117574920,184942860 -DD 184682752,252054788,50987272,118359308 -DD 118099200,185467140,251790600,50727180 -DD 2946363062,528716217,1300004225,1881839624 -DD 1532713819,1532713819,1532713819,1532713819 -DD 3602276352,4288629033,3737020424,4153884961 -DD 1354558464,32357713,2958822624,3775749553 -DD 1201988352,132424512,1572796698,503232858 -DD 2213177600,1597421020,4103937655,675398315 -DD 2749646592,4273543773,1511898873,121693092 -DD 3040248576,1103263732,2871565598,1608280554 -DD 2236667136,2588920351,482954393,64377734 -DD 3069987328,291237287,2117370568,3650299247 -DD 533321216,3573750986,2572112006,1401264716 -DD 1339849704,2721158661,548607111,3445553514 -DD 2128193280,3054596040,2183486460,1257083700 -DD 655635200,1165381986,3923443150,2344132524 -DD 190078720,256924420,290342170,357187870 -DD 1610966272,2263057382,4103205268,309794674 -DD 2592527872,2233205587,1335446729,3402964816 -DD 3973531904,3225098121,3002836325,1918774430 -DD 3870401024,2102906079,2284471353,4117666579 -DD 617007872,1021508343,366931923,691083277 -DD 2528395776,3491914898,2968704004,1613121270 -DD 3445188352,3247741094,844474987,4093578302 -DD 651481088,1190302358,1689581232,574775300 -DD 4289380608,206939853,2555985458,2489840491 -DD 2130264064,327674451,3566485037,3349835193 -DD 2470714624,316102159,3636825756,3393945945 -DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -DB 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -DB 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -DB 118,101,114,115,105,116,121,41,0 -ALIGN 64 -ALIGN 16 -__vpaes_preheat PROC PRIVATE - add ebp,DWORD PTR [esp] - movdqa xmm7,XMMWORD PTR [ebp-48] - movdqa xmm6,XMMWORD PTR [ebp-16] - ret -__vpaes_preheat ENDP -ALIGN 16 -__vpaes_encrypt_core PROC PRIVATE - mov ecx,16 - mov eax,DWORD PTR 240[edx] - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebp] - pandn xmm1,xmm0 - pand xmm0,xmm6 - movdqu xmm5,XMMWORD PTR [edx] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR 16[ebp] - pxor xmm2,xmm5 - psrld xmm1,4 - add edx,16 -DB 102,15,56,0,193 - lea ebx,DWORD PTR 192[ebp] - pxor xmm0,xmm2 - jmp $L000enc_entry -ALIGN 16 -$L001enc_loop: - movdqa xmm4,XMMWORD PTR 32[ebp] - movdqa xmm0,XMMWORD PTR 48[ebp] -DB 102,15,56,0,226 -DB 102,15,56,0,195 - pxor xmm4,xmm5 - movdqa xmm5,XMMWORD PTR 64[ebp] - pxor xmm0,xmm4 - movdqa xmm1,XMMWORD PTR [ecx*1+ebx-64] -DB 102,15,56,0,234 - movdqa xmm2,XMMWORD PTR 80[ebp] - movdqa xmm4,XMMWORD PTR [ecx*1+ebx] -DB 102,15,56,0,211 - movdqa xmm3,xmm0 - pxor xmm2,xmm5 -DB 102,15,56,0,193 - add edx,16 - pxor xmm0,xmm2 -DB 102,15,56,0,220 - add ecx,16 - pxor xmm3,xmm0 -DB 102,15,56,0,193 - and ecx,48 - sub eax,1 - pxor xmm0,xmm3 -$L000enc_entry: - movdqa xmm1,xmm6 - movdqa xmm5,XMMWORD PTR [ebp-32] - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm6 -DB 102,15,56,0,232 - movdqa xmm3,xmm7 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm7 - pxor xmm3,xmm5 -DB 102,15,56,0,224 - movdqa xmm2,xmm7 - pxor xmm4,xmm5 -DB 102,15,56,0,211 - movdqa xmm3,xmm7 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm5,XMMWORD PTR [edx] - pxor xmm3,xmm1 - jnz $L001enc_loop - movdqa xmm4,XMMWORD PTR 96[ebp] - movdqa xmm0,XMMWORD PTR 112[ebp] -DB 102,15,56,0,226 - pxor xmm4,xmm5 -DB 102,15,56,0,195 - movdqa xmm1,XMMWORD PTR 64[ecx*1+ebx] - pxor xmm0,xmm4 -DB 102,15,56,0,193 - ret -__vpaes_encrypt_core ENDP -ALIGN 16 -__vpaes_decrypt_core PROC PRIVATE - lea ebx,DWORD PTR 608[ebp] - mov eax,DWORD PTR 240[edx] - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebx-64] - pandn xmm1,xmm0 - mov ecx,eax - psrld xmm1,4 - movdqu xmm5,XMMWORD PTR [edx] - shl ecx,4 - pand xmm0,xmm6 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR [ebx-48] - xor ecx,48 -DB 102,15,56,0,193 - and ecx,48 - pxor xmm2,xmm5 - movdqa xmm5,XMMWORD PTR 176[ebp] - pxor xmm0,xmm2 - add edx,16 - lea ecx,DWORD PTR [ecx*1+ebx-352] - jmp $L002dec_entry -ALIGN 16 -$L003dec_loop: - movdqa xmm4,XMMWORD PTR [ebx-32] - movdqa xmm1,XMMWORD PTR [ebx-16] -DB 102,15,56,0,226 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR [ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 16[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR 32[ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 48[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR 64[ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 80[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - add edx,16 -DB 102,15,58,15,237,12 - pxor xmm0,xmm1 - sub eax,1 -$L002dec_entry: - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebp-32] - pandn xmm1,xmm0 - pand xmm0,xmm6 - psrld xmm1,4 -DB 102,15,56,0,208 - movdqa xmm3,xmm7 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm7 - pxor xmm3,xmm2 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm7 -DB 102,15,56,0,211 - movdqa xmm3,xmm7 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm0,XMMWORD PTR [edx] - pxor xmm3,xmm1 - jnz $L003dec_loop - movdqa xmm4,XMMWORD PTR 96[ebx] -DB 102,15,56,0,226 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR 112[ebx] - movdqa xmm2,XMMWORD PTR [ecx] -DB 102,15,56,0,195 - pxor xmm0,xmm4 -DB 102,15,56,0,194 - ret -__vpaes_decrypt_core ENDP -ALIGN 16 -__vpaes_schedule_core PROC PRIVATE - add ebp,DWORD PTR [esp] - movdqu xmm0,XMMWORD PTR [esi] - movdqa xmm2,XMMWORD PTR 320[ebp] - movdqa xmm3,xmm0 - lea ebx,DWORD PTR [ebp] - movdqa XMMWORD PTR 4[esp],xmm2 - call __vpaes_schedule_transform - movdqa xmm7,xmm0 - test edi,edi - jnz $L004schedule_am_decrypting - movdqu XMMWORD PTR [edx],xmm0 - jmp $L005schedule_go -$L004schedule_am_decrypting: - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,217 - movdqu XMMWORD PTR [edx],xmm3 - xor ecx,48 -$L005schedule_go: - cmp eax,192 - ja $L006schedule_256 - je $L007schedule_192 -$L008schedule_128: - mov eax,10 -$L009loop_schedule_128: - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - jmp $L009loop_schedule_128 -ALIGN 16 -$L007schedule_192: - movdqu xmm0,XMMWORD PTR 8[esi] - call __vpaes_schedule_transform - movdqa xmm6,xmm0 - pxor xmm4,xmm4 - movhlps xmm6,xmm4 - mov eax,4 -$L011loop_schedule_192: - call __vpaes_schedule_round -DB 102,15,58,15,198,8 - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - call __vpaes_schedule_mangle - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - jmp $L011loop_schedule_192 -ALIGN 16 -$L006schedule_256: - movdqu xmm0,XMMWORD PTR 16[esi] - call __vpaes_schedule_transform - mov eax,7 -$L012loop_schedule_256: - call __vpaes_schedule_mangle - movdqa xmm6,xmm0 - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - pshufd xmm0,xmm0,255 - movdqa XMMWORD PTR 20[esp],xmm7 - movdqa xmm7,xmm6 - call $L_vpaes_schedule_low_round - movdqa xmm7,XMMWORD PTR 20[esp] - jmp $L012loop_schedule_256 -ALIGN 16 -$L010schedule_mangle_last: - lea ebx,DWORD PTR 384[ebp] - test edi,edi - jnz $L013schedule_mangle_last_dec - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,193 - lea ebx,DWORD PTR 352[ebp] - add edx,32 -$L013schedule_mangle_last_dec: - add edx,-16 - pxor xmm0,XMMWORD PTR 336[ebp] - call __vpaes_schedule_transform - movdqu XMMWORD PTR [edx],xmm0 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - ret -__vpaes_schedule_core ENDP -ALIGN 16 -__vpaes_schedule_192_smear PROC PRIVATE - pshufd xmm1,xmm6,128 - pshufd xmm0,xmm7,254 - pxor xmm6,xmm1 - pxor xmm1,xmm1 - pxor xmm6,xmm0 - movdqa xmm0,xmm6 - movhlps xmm6,xmm1 - ret -__vpaes_schedule_192_smear ENDP -ALIGN 16 -__vpaes_schedule_round PROC PRIVATE - movdqa xmm2,XMMWORD PTR 8[esp] - pxor xmm1,xmm1 -DB 102,15,58,15,202,15 -DB 102,15,58,15,210,15 - pxor xmm7,xmm1 - pshufd xmm0,xmm0,255 -DB 102,15,58,15,192,1 - movdqa XMMWORD PTR 8[esp],xmm2 -$L_vpaes_schedule_low_round:: - movdqa xmm1,xmm7 - pslldq xmm7,4 - pxor xmm7,xmm1 - movdqa xmm1,xmm7 - pslldq xmm7,8 - pxor xmm7,xmm1 - pxor xmm7,XMMWORD PTR 336[ebp] - movdqa xmm4,XMMWORD PTR [ebp-16] - movdqa xmm5,XMMWORD PTR [ebp-48] - movdqa xmm1,xmm4 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm4 - movdqa xmm2,XMMWORD PTR [ebp-32] -DB 102,15,56,0,208 - pxor xmm0,xmm1 - movdqa xmm3,xmm5 -DB 102,15,56,0,217 - pxor xmm3,xmm2 - movdqa xmm4,xmm5 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm5 -DB 102,15,56,0,211 - pxor xmm2,xmm0 - movdqa xmm3,xmm5 -DB 102,15,56,0,220 - pxor xmm3,xmm1 - movdqa xmm4,XMMWORD PTR 32[ebp] -DB 102,15,56,0,226 - movdqa xmm0,XMMWORD PTR 48[ebp] -DB 102,15,56,0,195 - pxor xmm0,xmm4 - pxor xmm0,xmm7 - movdqa xmm7,xmm0 - ret -__vpaes_schedule_round ENDP -ALIGN 16 -__vpaes_schedule_transform PROC PRIVATE - movdqa xmm2,XMMWORD PTR [ebp-16] - movdqa xmm1,xmm2 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm2 - movdqa xmm2,XMMWORD PTR [ebx] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR 16[ebx] -DB 102,15,56,0,193 - pxor xmm0,xmm2 - ret -__vpaes_schedule_transform ENDP -ALIGN 16 -__vpaes_schedule_mangle PROC PRIVATE - movdqa xmm4,xmm0 - movdqa xmm5,XMMWORD PTR 128[ebp] - test edi,edi - jnz $L014schedule_mangle_dec - add edx,16 - pxor xmm4,XMMWORD PTR 336[ebp] -DB 102,15,56,0,229 - movdqa xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 - jmp $L015schedule_mangle_both -ALIGN 16 -$L014schedule_mangle_dec: - movdqa xmm2,XMMWORD PTR [ebp-16] - lea esi,DWORD PTR 416[ebp] - movdqa xmm1,xmm2 - pandn xmm1,xmm4 - psrld xmm1,4 - pand xmm4,xmm2 - movdqa xmm2,XMMWORD PTR [esi] -DB 102,15,56,0,212 - movdqa xmm3,XMMWORD PTR 16[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 32[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 48[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 64[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 80[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 96[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 112[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 - add edx,-16 -$L015schedule_mangle_both: - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,217 - add ecx,-16 - and ecx,48 - movdqu XMMWORD PTR [edx],xmm3 - ret -__vpaes_schedule_mangle ENDP -ALIGN 16 -_vpaes_set_encrypt_key PROC PUBLIC -$L_vpaes_set_encrypt_key_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov eax,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - mov ebx,eax - shr ebx,5 - add ebx,5 - mov DWORD PTR 240[edx],ebx - mov ecx,48 - mov edi,0 - mov ebp,OFFSET ($L_vpaes_consts+030h-$L016pic_point) - call __vpaes_schedule_core -$L016pic_point: - mov esp,DWORD PTR 48[esp] - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_set_encrypt_key ENDP -ALIGN 16 -_vpaes_set_decrypt_key PROC PUBLIC -$L_vpaes_set_decrypt_key_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov eax,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - mov ebx,eax - shr ebx,5 - add ebx,5 - mov DWORD PTR 240[edx],ebx - shl ebx,4 - lea edx,DWORD PTR 16[ebx*1+edx] - mov edi,1 - mov ecx,eax - shr ecx,1 - and ecx,32 - xor ecx,32 - mov ebp,OFFSET ($L_vpaes_consts+030h-$L017pic_point) - call __vpaes_schedule_core -$L017pic_point: - mov esp,DWORD PTR 48[esp] - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_set_decrypt_key ENDP -ALIGN 16 -_vpaes_encrypt PROC PUBLIC -$L_vpaes_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ebp,OFFSET ($L_vpaes_consts+030h-$L018pic_point) - call __vpaes_preheat -$L018pic_point: - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov edi,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - movdqu xmm0,XMMWORD PTR [esi] - call __vpaes_encrypt_core - movdqu XMMWORD PTR [edi],xmm0 - mov esp,DWORD PTR 48[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_encrypt ENDP -ALIGN 16 -_vpaes_decrypt PROC PUBLIC -$L_vpaes_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ebp,OFFSET ($L_vpaes_consts+030h-$L019pic_point) - call __vpaes_preheat -$L019pic_point: - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov edi,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - movdqu xmm0,XMMWORD PTR [esi] - call __vpaes_decrypt_core - movdqu XMMWORD PTR [edi],xmm0 - mov esp,DWORD PTR 48[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_decrypt ENDP -ALIGN 16 -_vpaes_cbc_encrypt PROC PUBLIC -$L_vpaes_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - sub eax,16 - jc $L020cbc_abort - lea ebx,DWORD PTR [esp-56] - mov ebp,DWORD PTR 36[esp] - and ebx,-16 - mov ecx,DWORD PTR 40[esp] - xchg ebx,esp - movdqu xmm1,XMMWORD PTR [ebp] - sub edi,esi - mov DWORD PTR 48[esp],ebx - mov DWORD PTR [esp],edi - mov DWORD PTR 4[esp],edx - mov DWORD PTR 8[esp],ebp - mov edi,eax - mov ebp,OFFSET ($L_vpaes_consts+030h-$L021pic_point) - call __vpaes_preheat -$L021pic_point: - cmp ecx,0 - je $L022cbc_dec_loop - jmp $L023cbc_enc_loop -ALIGN 16 -$L023cbc_enc_loop: - movdqu xmm0,XMMWORD PTR [esi] - pxor xmm0,xmm1 - call __vpaes_encrypt_core - mov ebx,DWORD PTR [esp] - mov edx,DWORD PTR 4[esp] - movdqa xmm1,xmm0 - movdqu XMMWORD PTR [esi*1+ebx],xmm0 - lea esi,DWORD PTR 16[esi] - sub edi,16 - jnc $L023cbc_enc_loop - jmp $L024cbc_done -ALIGN 16 -$L022cbc_dec_loop: - movdqu xmm0,XMMWORD PTR [esi] - movdqa XMMWORD PTR 16[esp],xmm1 - movdqa XMMWORD PTR 32[esp],xmm0 - call __vpaes_decrypt_core - mov ebx,DWORD PTR [esp] - mov edx,DWORD PTR 4[esp] - pxor xmm0,XMMWORD PTR 16[esp] - movdqa xmm1,XMMWORD PTR 32[esp] - movdqu XMMWORD PTR [esi*1+ebx],xmm0 - lea esi,DWORD PTR 16[esi] - sub edi,16 - jnc $L022cbc_dec_loop -$L024cbc_done: - mov ebx,DWORD PTR 8[esp] - mov esp,DWORD PTR 48[esp] - movdqu XMMWORD PTR [ebx],xmm1 -$L020cbc_abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/bf/bf-586.asm b/deps/openssl/asm/x86-win32-masm/bf/bf-586.asm deleted file mode 100644 index 218e8f5c7d445d..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/bf/bf-586.asm +++ /dev/null @@ -1,902 +0,0 @@ -TITLE bf-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_BF_encrypt PROC PUBLIC -$L_BF_encrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - xor eax,eax - mov ebx,DWORD PTR [ebp] - xor ecx,ecx - xor edi,ebx - ; - ; Round 0 - mov edx,DWORD PTR 4[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 1 - mov edx,DWORD PTR 8[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 2 - mov edx,DWORD PTR 12[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 3 - mov edx,DWORD PTR 16[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 4 - mov edx,DWORD PTR 20[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 5 - mov edx,DWORD PTR 24[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 6 - mov edx,DWORD PTR 28[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 7 - mov edx,DWORD PTR 32[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 8 - mov edx,DWORD PTR 36[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 9 - mov edx,DWORD PTR 40[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 10 - mov edx,DWORD PTR 44[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 11 - mov edx,DWORD PTR 48[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 12 - mov edx,DWORD PTR 52[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 13 - mov edx,DWORD PTR 56[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 14 - mov edx,DWORD PTR 60[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 15 - mov edx,DWORD PTR 64[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - ; Load parameter 0 (16) enc=1 - mov eax,DWORD PTR 20[esp] - xor edi,ebx - mov edx,DWORD PTR 68[ebp] - xor esi,edx - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_BF_encrypt ENDP -ALIGN 16 -_BF_decrypt PROC PUBLIC -$L_BF_decrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - xor eax,eax - mov ebx,DWORD PTR 68[ebp] - xor ecx,ecx - xor edi,ebx - ; - ; Round 16 - mov edx,DWORD PTR 64[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 15 - mov edx,DWORD PTR 60[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 14 - mov edx,DWORD PTR 56[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 13 - mov edx,DWORD PTR 52[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 12 - mov edx,DWORD PTR 48[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 11 - mov edx,DWORD PTR 44[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 10 - mov edx,DWORD PTR 40[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 9 - mov edx,DWORD PTR 36[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 8 - mov edx,DWORD PTR 32[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 7 - mov edx,DWORD PTR 28[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 6 - mov edx,DWORD PTR 24[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 5 - mov edx,DWORD PTR 20[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 4 - mov edx,DWORD PTR 16[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 3 - mov edx,DWORD PTR 12[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 2 - mov edx,DWORD PTR 8[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 1 - mov edx,DWORD PTR 4[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - ; Load parameter 0 (1) enc=0 - mov eax,DWORD PTR 20[esp] - xor edi,ebx - mov edx,DWORD PTR [ebp] - xor esi,edx - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_BF_decrypt ENDP -ALIGN 16 -_BF_cbc_encrypt PROC PUBLIC -$L_BF_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 3 - mov eax,DWORD PTR 48[esp] - push eax - push ebx - cmp ecx,0 - jz $L000decrypt - and ebp,4294967288 - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - jz $L001encrypt_finish -$L002encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L002encrypt_loop -$L001encrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L003finish - call $L004PIC_point -$L004PIC_point: - pop edx - lea ecx,DWORD PTR ($L005cbc_enc_jmp_table-$L004PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L006ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L007ej6: - mov dh,BYTE PTR 5[esi] -$L008ej5: - mov dl,BYTE PTR 4[esi] -$L009ej4: - mov ecx,DWORD PTR [esi] - jmp $L010ejend -$L011ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L012ej2: - mov ch,BYTE PTR 1[esi] -$L013ej1: - mov cl,BYTE PTR [esi] -$L010ejend: - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L003finish -$L000decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L014decrypt_finish -$L015decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L015decrypt_loop -$L014decrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L003finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L016dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L017dj6: - mov BYTE PTR 5[edi],dh -$L018dj5: - mov BYTE PTR 4[edi],dl -$L019dj4: - mov DWORD PTR [edi],ecx - jmp $L020djend -$L021dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L022dj2: - mov BYTE PTR 1[esi],ch -$L023dj1: - mov BYTE PTR [esi],cl -$L020djend: - jmp $L003finish -$L003finish: - mov ecx,DWORD PTR 60[esp] - add esp,24 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L005cbc_enc_jmp_table: -DD 0 -DD $L013ej1-$L004PIC_point -DD $L012ej2-$L004PIC_point -DD $L011ej3-$L004PIC_point -DD $L009ej4-$L004PIC_point -DD $L008ej5-$L004PIC_point -DD $L007ej6-$L004PIC_point -DD $L006ej7-$L004PIC_point -ALIGN 64 -_BF_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/bn/bn-586.asm b/deps/openssl/asm/x86-win32-masm/bn/bn-586.asm deleted file mode 100644 index 916ed888615f8b..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/bn/bn-586.asm +++ /dev/null @@ -1,1529 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/bn-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_bn_mul_add_words PROC PUBLIC -$L_bn_mul_add_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L000maw_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - movd mm0,DWORD PTR 16[esp] - pxor mm1,mm1 - jmp $L001maw_sse2_entry -ALIGN 16 -$L002maw_sse2_unrolled: - movd mm3,DWORD PTR [eax] - paddq mm1,mm3 - movd mm2,DWORD PTR [edx] - pmuludq mm2,mm0 - movd mm4,DWORD PTR 4[edx] - pmuludq mm4,mm0 - movd mm6,DWORD PTR 8[edx] - pmuludq mm6,mm0 - movd mm7,DWORD PTR 12[edx] - pmuludq mm7,mm0 - paddq mm1,mm2 - movd mm3,DWORD PTR 4[eax] - paddq mm3,mm4 - movd mm5,DWORD PTR 8[eax] - paddq mm5,mm6 - movd mm4,DWORD PTR 12[eax] - paddq mm7,mm4 - movd DWORD PTR [eax],mm1 - movd mm2,DWORD PTR 16[edx] - pmuludq mm2,mm0 - psrlq mm1,32 - movd mm4,DWORD PTR 20[edx] - pmuludq mm4,mm0 - paddq mm1,mm3 - movd mm6,DWORD PTR 24[edx] - pmuludq mm6,mm0 - movd DWORD PTR 4[eax],mm1 - psrlq mm1,32 - movd mm3,DWORD PTR 28[edx] - add edx,32 - pmuludq mm3,mm0 - paddq mm1,mm5 - movd mm5,DWORD PTR 16[eax] - paddq mm2,mm5 - movd DWORD PTR 8[eax],mm1 - psrlq mm1,32 - paddq mm1,mm7 - movd mm5,DWORD PTR 20[eax] - paddq mm4,mm5 - movd DWORD PTR 12[eax],mm1 - psrlq mm1,32 - paddq mm1,mm2 - movd mm5,DWORD PTR 24[eax] - paddq mm6,mm5 - movd DWORD PTR 16[eax],mm1 - psrlq mm1,32 - paddq mm1,mm4 - movd mm5,DWORD PTR 28[eax] - paddq mm3,mm5 - movd DWORD PTR 20[eax],mm1 - psrlq mm1,32 - paddq mm1,mm6 - movd DWORD PTR 24[eax],mm1 - psrlq mm1,32 - paddq mm1,mm3 - movd DWORD PTR 28[eax],mm1 - lea eax,DWORD PTR 32[eax] - psrlq mm1,32 - sub ecx,8 - jz $L003maw_sse2_exit -$L001maw_sse2_entry: - test ecx,4294967288 - jnz $L002maw_sse2_unrolled -ALIGN 4 -$L004maw_sse2_loop: - movd mm2,DWORD PTR [edx] - movd mm3,DWORD PTR [eax] - pmuludq mm2,mm0 - lea edx,DWORD PTR 4[edx] - paddq mm1,mm3 - paddq mm1,mm2 - movd DWORD PTR [eax],mm1 - sub ecx,1 - psrlq mm1,32 - lea eax,DWORD PTR 4[eax] - jnz $L004maw_sse2_loop -$L003maw_sse2_exit: - movd eax,mm1 - emms - ret -ALIGN 16 -$L000maw_non_sse2: - push ebp - push ebx - push esi - push edi - ; - xor esi,esi - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 28[esp] - mov ebx,DWORD PTR 24[esp] - and ecx,4294967288 - mov ebp,DWORD PTR 32[esp] - push ecx - jz $L005maw_finish -ALIGN 16 -$L006maw_loop: - ; Round 0 - mov eax,DWORD PTR [ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR [edi] - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - ; Round 4 - mov eax,DWORD PTR 4[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 4[edi] - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - ; Round 8 - mov eax,DWORD PTR 8[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 8[edi] - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - ; Round 12 - mov eax,DWORD PTR 12[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 12[edi] - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - ; Round 16 - mov eax,DWORD PTR 16[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 16[edi] - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - ; Round 20 - mov eax,DWORD PTR 20[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 20[edi] - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - ; Round 24 - mov eax,DWORD PTR 24[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 24[edi] - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx - ; Round 28 - mov eax,DWORD PTR 28[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 28[edi] - adc edx,0 - mov DWORD PTR 28[edi],eax - mov esi,edx - ; - sub ecx,8 - lea ebx,DWORD PTR 32[ebx] - lea edi,DWORD PTR 32[edi] - jnz $L006maw_loop -$L005maw_finish: - mov ecx,DWORD PTR 32[esp] - and ecx,7 - jnz $L007maw_finish2 - jmp $L008maw_end -$L007maw_finish2: - ; Tail Round 0 - mov eax,DWORD PTR [ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR [edi] - adc edx,0 - dec ecx - mov DWORD PTR [edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 4[edi] - adc edx,0 - dec ecx - mov DWORD PTR 4[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 8[edi] - adc edx,0 - dec ecx - mov DWORD PTR 8[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 12[edi] - adc edx,0 - dec ecx - mov DWORD PTR 12[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 16[edi] - adc edx,0 - dec ecx - mov DWORD PTR 16[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 20[edi] - adc edx,0 - dec ecx - mov DWORD PTR 20[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 24[edi] - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx -$L008maw_end: - mov eax,esi - pop ecx - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_add_words ENDP -ALIGN 16 -_bn_mul_words PROC PUBLIC -$L_bn_mul_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L009mw_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - movd mm0,DWORD PTR 16[esp] - pxor mm1,mm1 -ALIGN 16 -$L010mw_sse2_loop: - movd mm2,DWORD PTR [edx] - pmuludq mm2,mm0 - lea edx,DWORD PTR 4[edx] - paddq mm1,mm2 - movd DWORD PTR [eax],mm1 - sub ecx,1 - psrlq mm1,32 - lea eax,DWORD PTR 4[eax] - jnz $L010mw_sse2_loop - movd eax,mm1 - emms - ret -ALIGN 16 -$L009mw_non_sse2: - push ebp - push ebx - push esi - push edi - ; - xor esi,esi - mov edi,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ebp,DWORD PTR 28[esp] - mov ecx,DWORD PTR 32[esp] - and ebp,4294967288 - jz $L011mw_finish -$L012mw_loop: - ; Round 0 - mov eax,DWORD PTR [ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - ; Round 4 - mov eax,DWORD PTR 4[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - ; Round 8 - mov eax,DWORD PTR 8[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - ; Round 12 - mov eax,DWORD PTR 12[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - ; Round 16 - mov eax,DWORD PTR 16[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - ; Round 20 - mov eax,DWORD PTR 20[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - ; Round 24 - mov eax,DWORD PTR 24[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx - ; Round 28 - mov eax,DWORD PTR 28[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 28[edi],eax - mov esi,edx - ; - add ebx,32 - add edi,32 - sub ebp,8 - jz $L011mw_finish - jmp $L012mw_loop -$L011mw_finish: - mov ebp,DWORD PTR 28[esp] - and ebp,7 - jnz $L013mw_finish2 - jmp $L014mw_end -$L013mw_finish2: - ; Tail Round 0 - mov eax,DWORD PTR [ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx -$L014mw_end: - mov eax,esi - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_words ENDP -ALIGN 16 -_bn_sqr_words PROC PUBLIC -$L_bn_sqr_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L015sqr_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] -ALIGN 16 -$L016sqr_sse2_loop: - movd mm0,DWORD PTR [edx] - pmuludq mm0,mm0 - lea edx,DWORD PTR 4[edx] - movq QWORD PTR [eax],mm0 - sub ecx,1 - lea eax,DWORD PTR 8[eax] - jnz $L016sqr_sse2_loop - emms - ret -ALIGN 16 -$L015sqr_non_sse2: - push ebp - push ebx - push esi - push edi - ; - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - and ebx,4294967288 - jz $L017sw_finish -$L018sw_loop: - ; Round 0 - mov eax,DWORD PTR [edi] - mul eax - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],edx - ; Round 4 - mov eax,DWORD PTR 4[edi] - mul eax - mov DWORD PTR 8[esi],eax - mov DWORD PTR 12[esi],edx - ; Round 8 - mov eax,DWORD PTR 8[edi] - mul eax - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],edx - ; Round 12 - mov eax,DWORD PTR 12[edi] - mul eax - mov DWORD PTR 24[esi],eax - mov DWORD PTR 28[esi],edx - ; Round 16 - mov eax,DWORD PTR 16[edi] - mul eax - mov DWORD PTR 32[esi],eax - mov DWORD PTR 36[esi],edx - ; Round 20 - mov eax,DWORD PTR 20[edi] - mul eax - mov DWORD PTR 40[esi],eax - mov DWORD PTR 44[esi],edx - ; Round 24 - mov eax,DWORD PTR 24[edi] - mul eax - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],edx - ; Round 28 - mov eax,DWORD PTR 28[edi] - mul eax - mov DWORD PTR 56[esi],eax - mov DWORD PTR 60[esi],edx - ; - add edi,32 - add esi,64 - sub ebx,8 - jnz $L018sw_loop -$L017sw_finish: - mov ebx,DWORD PTR 28[esp] - and ebx,7 - jz $L019sw_end - ; Tail Round 0 - mov eax,DWORD PTR [edi] - mul eax - mov DWORD PTR [esi],eax - dec ebx - mov DWORD PTR 4[esi],edx - jz $L019sw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[edi] - mul eax - mov DWORD PTR 8[esi],eax - dec ebx - mov DWORD PTR 12[esi],edx - jz $L019sw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[edi] - mul eax - mov DWORD PTR 16[esi],eax - dec ebx - mov DWORD PTR 20[esi],edx - jz $L019sw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[edi] - mul eax - mov DWORD PTR 24[esi],eax - dec ebx - mov DWORD PTR 28[esi],edx - jz $L019sw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[edi] - mul eax - mov DWORD PTR 32[esi],eax - dec ebx - mov DWORD PTR 36[esi],edx - jz $L019sw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[edi] - mul eax - mov DWORD PTR 40[esi],eax - dec ebx - mov DWORD PTR 44[esi],edx - jz $L019sw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[edi] - mul eax - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],edx -$L019sw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sqr_words ENDP -ALIGN 16 -_bn_div_words PROC PUBLIC -$L_bn_div_words_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - div ecx - ret -_bn_div_words ENDP -ALIGN 16 -_bn_add_words PROC PUBLIC -$L_bn_add_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L020aw_finish -$L021aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L021aw_loop -$L020aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L022aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L022aw_end - ; Tail Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L022aw_end - ; Tail Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L022aw_end - ; Tail Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L022aw_end - ; Tail Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L022aw_end - ; Tail Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L022aw_end - ; Tail Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx -$L022aw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_add_words ENDP -ALIGN 16 -_bn_sub_words PROC PUBLIC -$L_bn_sub_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L023aw_finish -$L024aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L024aw_loop -$L023aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L025aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L025aw_end - ; Tail Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L025aw_end - ; Tail Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L025aw_end - ; Tail Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L025aw_end - ; Tail Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L025aw_end - ; Tail Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L025aw_end - ; Tail Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx -$L025aw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sub_words ENDP -ALIGN 16 -_bn_sub_part_words PROC PUBLIC -$L_bn_sub_part_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L026aw_finish -$L027aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L027aw_loop -$L026aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L028aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 1 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 2 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 3 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 4 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 5 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 6 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 -$L028aw_end: - cmp DWORD PTR 36[esp],0 - je $L029pw_end - mov ebp,DWORD PTR 36[esp] - cmp ebp,0 - je $L029pw_end - jge $L030pw_pos - ; pw_neg - mov edx,0 - sub edx,ebp - mov ebp,edx - and ebp,4294967288 - jz $L031pw_neg_finish -$L032pw_neg_loop: - ; dl<0 Round 0 - mov ecx,0 - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; dl<0 Round 1 - mov ecx,0 - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; dl<0 Round 2 - mov ecx,0 - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; dl<0 Round 3 - mov ecx,0 - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; dl<0 Round 4 - mov ecx,0 - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; dl<0 Round 5 - mov ecx,0 - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; dl<0 Round 6 - mov ecx,0 - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; dl<0 Round 7 - mov ecx,0 - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L032pw_neg_loop -$L031pw_neg_finish: - mov edx,DWORD PTR 36[esp] - mov ebp,0 - sub ebp,edx - and ebp,7 - jz $L029pw_end - ; dl<0 Tail Round 0 - mov ecx,0 - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 1 - mov ecx,0 - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 2 - mov ecx,0 - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 3 - mov ecx,0 - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 4 - mov ecx,0 - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 5 - mov ecx,0 - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 6 - mov ecx,0 - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - jmp $L029pw_end -$L030pw_pos: - and ebp,4294967288 - jz $L033pw_pos_finish -$L034pw_pos_loop: - ; dl>0 Round 0 - mov ecx,DWORD PTR [esi] - sub ecx,eax - mov DWORD PTR [ebx],ecx - jnc $L035pw_nc0 - ; dl>0 Round 1 - mov ecx,DWORD PTR 4[esi] - sub ecx,eax - mov DWORD PTR 4[ebx],ecx - jnc $L036pw_nc1 - ; dl>0 Round 2 - mov ecx,DWORD PTR 8[esi] - sub ecx,eax - mov DWORD PTR 8[ebx],ecx - jnc $L037pw_nc2 - ; dl>0 Round 3 - mov ecx,DWORD PTR 12[esi] - sub ecx,eax - mov DWORD PTR 12[ebx],ecx - jnc $L038pw_nc3 - ; dl>0 Round 4 - mov ecx,DWORD PTR 16[esi] - sub ecx,eax - mov DWORD PTR 16[ebx],ecx - jnc $L039pw_nc4 - ; dl>0 Round 5 - mov ecx,DWORD PTR 20[esi] - sub ecx,eax - mov DWORD PTR 20[ebx],ecx - jnc $L040pw_nc5 - ; dl>0 Round 6 - mov ecx,DWORD PTR 24[esi] - sub ecx,eax - mov DWORD PTR 24[ebx],ecx - jnc $L041pw_nc6 - ; dl>0 Round 7 - mov ecx,DWORD PTR 28[esi] - sub ecx,eax - mov DWORD PTR 28[ebx],ecx - jnc $L042pw_nc7 - ; - add esi,32 - add ebx,32 - sub ebp,8 - jnz $L034pw_pos_loop -$L033pw_pos_finish: - mov ebp,DWORD PTR 36[esp] - and ebp,7 - jz $L029pw_end - ; dl>0 Tail Round 0 - mov ecx,DWORD PTR [esi] - sub ecx,eax - mov DWORD PTR [ebx],ecx - jnc $L043pw_tail_nc0 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 1 - mov ecx,DWORD PTR 4[esi] - sub ecx,eax - mov DWORD PTR 4[ebx],ecx - jnc $L044pw_tail_nc1 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 2 - mov ecx,DWORD PTR 8[esi] - sub ecx,eax - mov DWORD PTR 8[ebx],ecx - jnc $L045pw_tail_nc2 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 3 - mov ecx,DWORD PTR 12[esi] - sub ecx,eax - mov DWORD PTR 12[ebx],ecx - jnc $L046pw_tail_nc3 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 4 - mov ecx,DWORD PTR 16[esi] - sub ecx,eax - mov DWORD PTR 16[ebx],ecx - jnc $L047pw_tail_nc4 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 5 - mov ecx,DWORD PTR 20[esi] - sub ecx,eax - mov DWORD PTR 20[ebx],ecx - jnc $L048pw_tail_nc5 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 6 - mov ecx,DWORD PTR 24[esi] - sub ecx,eax - mov DWORD PTR 24[ebx],ecx - jnc $L049pw_tail_nc6 - mov eax,1 - jmp $L029pw_end -$L050pw_nc_loop: - mov ecx,DWORD PTR [esi] - mov DWORD PTR [ebx],ecx -$L035pw_nc0: - mov ecx,DWORD PTR 4[esi] - mov DWORD PTR 4[ebx],ecx -$L036pw_nc1: - mov ecx,DWORD PTR 8[esi] - mov DWORD PTR 8[ebx],ecx -$L037pw_nc2: - mov ecx,DWORD PTR 12[esi] - mov DWORD PTR 12[ebx],ecx -$L038pw_nc3: - mov ecx,DWORD PTR 16[esi] - mov DWORD PTR 16[ebx],ecx -$L039pw_nc4: - mov ecx,DWORD PTR 20[esi] - mov DWORD PTR 20[ebx],ecx -$L040pw_nc5: - mov ecx,DWORD PTR 24[esi] - mov DWORD PTR 24[ebx],ecx -$L041pw_nc6: - mov ecx,DWORD PTR 28[esi] - mov DWORD PTR 28[ebx],ecx -$L042pw_nc7: - ; - add esi,32 - add ebx,32 - sub ebp,8 - jnz $L050pw_nc_loop - mov ebp,DWORD PTR 36[esp] - and ebp,7 - jz $L051pw_nc_end - mov ecx,DWORD PTR [esi] - mov DWORD PTR [ebx],ecx -$L043pw_tail_nc0: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 4[esi] - mov DWORD PTR 4[ebx],ecx -$L044pw_tail_nc1: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 8[esi] - mov DWORD PTR 8[ebx],ecx -$L045pw_tail_nc2: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 12[esi] - mov DWORD PTR 12[ebx],ecx -$L046pw_tail_nc3: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 16[esi] - mov DWORD PTR 16[ebx],ecx -$L047pw_tail_nc4: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 20[esi] - mov DWORD PTR 20[ebx],ecx -$L048pw_tail_nc5: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 24[esi] - mov DWORD PTR 24[ebx],ecx -$L049pw_tail_nc6: -$L051pw_nc_end: - mov eax,0 -$L029pw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sub_part_words ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/bn/co-586.asm b/deps/openssl/asm/x86-win32-masm/bn/co-586.asm deleted file mode 100644 index a44b2b1b957268..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/bn/co-586.asm +++ /dev/null @@ -1,1258 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/co-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_bn_mul_comba8 PROC PUBLIC -$L_bn_mul_comba8_begin:: - push esi - mov esi,DWORD PTR 12[esp] - push edi - mov edi,DWORD PTR 20[esp] - push ebp - push ebx - xor ebx,ebx - mov eax,DWORD PTR [esi] - xor ecx,ecx - mov edx,DWORD PTR [edi] - ; ################## Calculate word 0 - xor ebp,ebp - ; mul a[0]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR [eax],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ################## Calculate word 1 - xor ebx,ebx - ; mul a[1]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[0]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 4[eax],ecx - mov eax,DWORD PTR 8[esi] - ; saved r[1] - ; ################## Calculate word 2 - xor ecx,ecx - ; mul a[2]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[1]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[0]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 8[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ################## Calculate word 3 - xor ebp,ebp - ; mul a[3]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[2]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[1]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[0]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR 12[eax],ebx - mov eax,DWORD PTR 16[esi] - ; saved r[3] - ; ################## Calculate word 4 - xor ebx,ebx - ; mul a[4]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[3]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[2]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[1]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[0]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 16[eax],ecx - mov eax,DWORD PTR 20[esi] - ; saved r[4] - ; ################## Calculate word 5 - xor ecx,ecx - ; mul a[5]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[4]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR 12[esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[3]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[2]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 16[edi] - adc ecx,0 - ; mul a[1]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[0]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 20[eax],ebp - mov eax,DWORD PTR 24[esi] - ; saved r[5] - ; ################## Calculate word 6 - xor ebp,ebp - ; mul a[6]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[5]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 16[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[4]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR 12[esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[3]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 16[edi] - adc ebp,0 - ; mul a[2]*b[4] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 20[edi] - adc ebp,0 - ; mul a[1]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[0]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR 24[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[6] - ; ################## Calculate word 7 - xor ebx,ebx - ; mul a[7]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[6]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[5]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 16[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[4]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[3]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 20[edi] - adc ebx,0 - ; mul a[2]*b[5] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 24[edi] - adc ebx,0 - ; mul a[1]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[0]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - mov DWORD PTR 28[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[7] - ; ################## Calculate word 8 - xor ecx,ecx - ; mul a[7]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR 24[esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[6]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[5]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 16[edi] - adc ecx,0 - ; mul a[4]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR 12[esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[3]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 24[edi] - adc ecx,0 - ; mul a[2]*b[6] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 28[edi] - adc ecx,0 - ; mul a[1]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - mov DWORD PTR 32[eax],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[8] - ; ################## Calculate word 9 - xor ebp,ebp - ; mul a[7]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR 24[esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[6]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 16[edi] - adc ebp,0 - ; mul a[5]*b[4] - mul edx - add ebx,eax - mov eax,DWORD PTR 16[esi] - adc ecx,edx - mov edx,DWORD PTR 20[edi] - adc ebp,0 - ; mul a[4]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR 12[esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[3]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 28[edi] - adc ebp,0 - ; mul a[2]*b[7] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - mov DWORD PTR 36[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[9] - ; ################## Calculate word 10 - xor ebx,ebx - ; mul a[7]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[6]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esi] - adc ebp,edx - mov edx,DWORD PTR 20[edi] - adc ebx,0 - ; mul a[5]*b[5] - mul edx - add ecx,eax - mov eax,DWORD PTR 16[esi] - adc ebp,edx - mov edx,DWORD PTR 24[edi] - adc ebx,0 - ; mul a[4]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[3]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - mov DWORD PTR 40[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[10] - ; ################## Calculate word 11 - xor ecx,ecx - ; mul a[7]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR 24[esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[6]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esi] - adc ebx,edx - mov edx,DWORD PTR 24[edi] - adc ecx,0 - ; mul a[5]*b[6] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 28[edi] - adc ecx,0 - ; mul a[4]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - mov DWORD PTR 44[eax],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[11] - ; ################## Calculate word 12 - xor ebp,ebp - ; mul a[7]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR 24[esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[6]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 28[edi] - adc ebp,0 - ; mul a[5]*b[7] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - mov DWORD PTR 48[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[12] - ; ################## Calculate word 13 - xor ebx,ebx - ; mul a[7]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[6]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - mov DWORD PTR 52[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[13] - ; ################## Calculate word 14 - xor ecx,ecx - ; mul a[7]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - adc ecx,0 - mov DWORD PTR 56[eax],ebp - ; saved r[14] - ; save r[15] - mov DWORD PTR 60[eax],ebx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_mul_comba8 ENDP -ALIGN 16 -_bn_mul_comba4 PROC PUBLIC -$L_bn_mul_comba4_begin:: - push esi - mov esi,DWORD PTR 12[esp] - push edi - mov edi,DWORD PTR 20[esp] - push ebp - push ebx - xor ebx,ebx - mov eax,DWORD PTR [esi] - xor ecx,ecx - mov edx,DWORD PTR [edi] - ; ################## Calculate word 0 - xor ebp,ebp - ; mul a[0]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR [eax],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ################## Calculate word 1 - xor ebx,ebx - ; mul a[1]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[0]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 4[eax],ecx - mov eax,DWORD PTR 8[esi] - ; saved r[1] - ; ################## Calculate word 2 - xor ecx,ecx - ; mul a[2]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[1]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[0]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 8[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ################## Calculate word 3 - xor ebp,ebp - ; mul a[3]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[2]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[1]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[0]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - mov DWORD PTR 12[eax],ebx - mov eax,DWORD PTR 12[esi] - ; saved r[3] - ; ################## Calculate word 4 - xor ebx,ebx - ; mul a[3]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[2]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[1]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - mov DWORD PTR 16[eax],ecx - mov eax,DWORD PTR 12[esi] - ; saved r[4] - ; ################## Calculate word 5 - xor ecx,ecx - ; mul a[3]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[2]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - mov DWORD PTR 20[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[5] - ; ################## Calculate word 6 - xor ebp,ebp - ; mul a[3]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - adc ebp,0 - mov DWORD PTR 24[eax],ebx - ; saved r[6] - ; save r[7] - mov DWORD PTR 28[eax],ecx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_mul_comba4 ENDP -ALIGN 16 -_bn_sqr_comba8 PROC PUBLIC -$L_bn_sqr_comba8_begin:: - push esi - push edi - push ebp - push ebx - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - xor ebx,ebx - xor ecx,ecx - mov eax,DWORD PTR [esi] - ; ############### Calculate word 0 - xor ebp,ebp - ; sqr a[0]*a[0] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR [edi],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ############### Calculate word 1 - xor ebx,ebx - ; sqr a[1]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 4[edi],ecx - mov edx,DWORD PTR [esi] - ; saved r[1] - ; ############### Calculate word 2 - xor ecx,ecx - ; sqr a[2]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 4[esi] - adc ecx,0 - ; sqr a[1]*a[1] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR [esi] - adc ecx,0 - mov DWORD PTR 8[edi],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ############### Calculate word 3 - xor ebp,ebp - ; sqr a[3]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 8[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[2]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 16[esi] - adc ebp,0 - mov DWORD PTR 12[edi],ebx - mov edx,DWORD PTR [esi] - ; saved r[3] - ; ############### Calculate word 4 - xor ebx,ebx - ; sqr a[4]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 12[esi] - adc ebx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[3]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - ; sqr a[2]*a[2] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR [esi] - adc ebx,0 - mov DWORD PTR 16[edi],ecx - mov eax,DWORD PTR 20[esi] - ; saved r[4] - ; ############### Calculate word 5 - xor ecx,ecx - ; sqr a[5]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 16[esi] - adc ecx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[4]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 12[esi] - adc ecx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[3]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov DWORD PTR 20[edi],ebp - mov edx,DWORD PTR [esi] - ; saved r[5] - ; ############### Calculate word 6 - xor ebp,ebp - ; sqr a[6]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 20[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[5]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 16[esi] - adc ebp,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[4]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 12[esi] - adc ebp,0 - ; sqr a[3]*a[3] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR 24[edi],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[6] - ; ############### Calculate word 7 - xor ebx,ebx - ; sqr a[7]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 24[esi] - adc ebx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[6]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 20[esi] - adc ebx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[5]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 16[esi] - adc ebx,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[4]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 28[esi] - adc ebx,0 - mov DWORD PTR 28[edi],ecx - mov edx,DWORD PTR 4[esi] - ; saved r[7] - ; ############### Calculate word 8 - xor ecx,ecx - ; sqr a[7]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[6]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 20[esi] - adc ecx,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[5]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 16[esi] - adc ecx,0 - ; sqr a[4]*a[4] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR 8[esi] - adc ecx,0 - mov DWORD PTR 32[edi],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[8] - ; ############### Calculate word 9 - xor ebp,ebp - ; sqr a[7]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 24[esi] - adc ebp,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[6]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 20[esi] - adc ebp,0 - mov edx,DWORD PTR 16[esi] - ; sqr a[5]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 28[esi] - adc ebp,0 - mov DWORD PTR 36[edi],ebx - mov edx,DWORD PTR 12[esi] - ; saved r[9] - ; ############### Calculate word 10 - xor ebx,ebx - ; sqr a[7]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 24[esi] - adc ebx,0 - mov edx,DWORD PTR 16[esi] - ; sqr a[6]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 20[esi] - adc ebx,0 - ; sqr a[5]*a[5] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR 16[esi] - adc ebx,0 - mov DWORD PTR 40[edi],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[10] - ; ############### Calculate word 11 - xor ecx,ecx - ; sqr a[7]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov edx,DWORD PTR 20[esi] - ; sqr a[6]*a[5] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 28[esi] - adc ecx,0 - mov DWORD PTR 44[edi],ebp - mov edx,DWORD PTR 20[esi] - ; saved r[11] - ; ############### Calculate word 12 - xor ebp,ebp - ; sqr a[7]*a[5] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 24[esi] - adc ebp,0 - ; sqr a[6]*a[6] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR 24[esi] - adc ebp,0 - mov DWORD PTR 48[edi],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[12] - ; ############### Calculate word 13 - xor ebx,ebx - ; sqr a[7]*a[6] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 28[esi] - adc ebx,0 - mov DWORD PTR 52[edi],ecx - ; saved r[13] - ; ############### Calculate word 14 - xor ecx,ecx - ; sqr a[7]*a[7] - mul eax - add ebp,eax - adc ebx,edx - adc ecx,0 - mov DWORD PTR 56[edi],ebp - ; saved r[14] - mov DWORD PTR 60[edi],ebx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_sqr_comba8 ENDP -ALIGN 16 -_bn_sqr_comba4 PROC PUBLIC -$L_bn_sqr_comba4_begin:: - push esi - push edi - push ebp - push ebx - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - xor ebx,ebx - xor ecx,ecx - mov eax,DWORD PTR [esi] - ; ############### Calculate word 0 - xor ebp,ebp - ; sqr a[0]*a[0] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR [edi],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ############### Calculate word 1 - xor ebx,ebx - ; sqr a[1]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 4[edi],ecx - mov edx,DWORD PTR [esi] - ; saved r[1] - ; ############### Calculate word 2 - xor ecx,ecx - ; sqr a[2]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 4[esi] - adc ecx,0 - ; sqr a[1]*a[1] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR [esi] - adc ecx,0 - mov DWORD PTR 8[edi],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ############### Calculate word 3 - xor ebp,ebp - ; sqr a[3]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 8[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[2]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 12[esi] - adc ebp,0 - mov DWORD PTR 12[edi],ebx - mov edx,DWORD PTR 4[esi] - ; saved r[3] - ; ############### Calculate word 4 - xor ebx,ebx - ; sqr a[3]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - ; sqr a[2]*a[2] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 16[edi],ecx - mov eax,DWORD PTR 12[esi] - ; saved r[4] - ; ############### Calculate word 5 - xor ecx,ecx - ; sqr a[3]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 12[esi] - adc ecx,0 - mov DWORD PTR 20[edi],ebp - ; saved r[5] - ; ############### Calculate word 6 - xor ebp,ebp - ; sqr a[3]*a[3] - mul eax - add ebx,eax - adc ecx,edx - adc ebp,0 - mov DWORD PTR 24[edi],ebx - ; saved r[6] - mov DWORD PTR 28[edi],ecx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_sqr_comba4 ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/bn/x86-gf2m.asm b/deps/openssl/asm/x86-win32-masm/bn/x86-gf2m.asm deleted file mode 100644 index 57adf3ace49e1f..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/bn/x86-gf2m.asm +++ /dev/null @@ -1,361 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/x86-gf2m.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -__mul_1x1_mmx PROC PRIVATE - sub esp,36 - mov ecx,eax - lea edx,DWORD PTR [eax*1+eax] - and ecx,1073741823 - lea ebp,DWORD PTR [edx*1+edx] - mov DWORD PTR [esp],0 - and edx,2147483647 - movd mm2,eax - movd mm3,ebx - mov DWORD PTR 4[esp],ecx - xor ecx,edx - pxor mm5,mm5 - pxor mm4,mm4 - mov DWORD PTR 8[esp],edx - xor edx,ebp - mov DWORD PTR 12[esp],ecx - pcmpgtd mm5,mm2 - paddd mm2,mm2 - xor ecx,edx - mov DWORD PTR 16[esp],ebp - xor ebp,edx - pand mm5,mm3 - pcmpgtd mm4,mm2 - mov DWORD PTR 20[esp],ecx - xor ebp,ecx - psllq mm5,31 - pand mm4,mm3 - mov DWORD PTR 24[esp],edx - mov esi,7 - mov DWORD PTR 28[esp],ebp - mov ebp,esi - and esi,ebx - shr ebx,3 - mov edi,ebp - psllq mm4,30 - and edi,ebx - shr ebx,3 - movd mm0,DWORD PTR [esi*4+esp] - mov esi,ebp - and esi,ebx - shr ebx,3 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,3 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,6 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,9 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,12 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,15 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,18 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,21 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,24 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - pxor mm0,mm4 - psllq mm2,27 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - pxor mm0,mm5 - psllq mm1,30 - add esp,36 - pxor mm0,mm1 - ret -__mul_1x1_mmx ENDP -ALIGN 16 -__mul_1x1_ialu PROC PRIVATE - sub esp,36 - mov ecx,eax - lea edx,DWORD PTR [eax*1+eax] - lea ebp,DWORD PTR [eax*4] - and ecx,1073741823 - lea edi,DWORD PTR [eax*1+eax] - sar eax,31 - mov DWORD PTR [esp],0 - and edx,2147483647 - mov DWORD PTR 4[esp],ecx - xor ecx,edx - mov DWORD PTR 8[esp],edx - xor edx,ebp - mov DWORD PTR 12[esp],ecx - xor ecx,edx - mov DWORD PTR 16[esp],ebp - xor ebp,edx - mov DWORD PTR 20[esp],ecx - xor ebp,ecx - sar edi,31 - and eax,ebx - mov DWORD PTR 24[esp],edx - and edi,ebx - mov DWORD PTR 28[esp],ebp - mov edx,eax - shl eax,31 - mov ecx,edi - shr edx,1 - mov esi,7 - shl edi,30 - and esi,ebx - shr ecx,2 - xor eax,edi - shr ebx,3 - mov edi,7 - and edi,ebx - shr ebx,3 - xor edx,ecx - xor eax,DWORD PTR [esi*4+esp] - mov esi,7 - and esi,ebx - shr ebx,3 - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,3 - and edi,ebx - shr ecx,29 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,6 - and esi,ebx - shr ebp,26 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,9 - and edi,ebx - shr ecx,23 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,12 - and esi,ebx - shr ebp,20 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,15 - and edi,ebx - shr ecx,17 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,18 - and esi,ebx - shr ebp,14 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,21 - and edi,ebx - shr ecx,11 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,24 - and esi,ebx - shr ebp,8 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov ecx,ebp - shl ebp,27 - mov edi,DWORD PTR [esi*4+esp] - shr ecx,5 - mov esi,edi - xor eax,ebp - shl edi,30 - xor edx,ecx - shr esi,2 - xor eax,edi - xor edx,esi - add esp,36 - ret -__mul_1x1_ialu ENDP -ALIGN 16 -_bn_GF2m_mul_2x2 PROC PUBLIC -$L_bn_GF2m_mul_2x2_begin:: - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov eax,DWORD PTR [edx] - mov edx,DWORD PTR 4[edx] - test eax,8388608 - jz $L000ialu - test eax,16777216 - jz $L001mmx - test edx,2 - jz $L001mmx - movups xmm0,XMMWORD PTR 8[esp] - shufps xmm0,xmm0,177 -DB 102,15,58,68,192,1 - mov eax,DWORD PTR 4[esp] - movups XMMWORD PTR [eax],xmm0 - ret -ALIGN 16 -$L001mmx: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 32[esp] - call __mul_1x1_mmx - movq mm7,mm0 - mov eax,DWORD PTR 28[esp] - mov ebx,DWORD PTR 36[esp] - call __mul_1x1_mmx - movq mm6,mm0 - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 32[esp] - xor eax,DWORD PTR 28[esp] - xor ebx,DWORD PTR 36[esp] - call __mul_1x1_mmx - pxor mm0,mm7 - mov eax,DWORD PTR 20[esp] - pxor mm0,mm6 - movq mm2,mm0 - psllq mm0,32 - pop edi - psrlq mm2,32 - pop esi - pxor mm0,mm6 - pop ebx - pxor mm2,mm7 - movq QWORD PTR [eax],mm0 - pop ebp - movq QWORD PTR 8[eax],mm2 - emms - ret -ALIGN 16 -$L000ialu: - push ebp - push ebx - push esi - push edi - sub esp,20 - mov eax,DWORD PTR 44[esp] - mov ebx,DWORD PTR 52[esp] - call __mul_1x1_ialu - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],edx - mov eax,DWORD PTR 48[esp] - mov ebx,DWORD PTR 56[esp] - call __mul_1x1_ialu - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],edx - mov eax,DWORD PTR 44[esp] - mov ebx,DWORD PTR 52[esp] - xor eax,DWORD PTR 48[esp] - xor ebx,DWORD PTR 56[esp] - call __mul_1x1_ialu - mov ebp,DWORD PTR 40[esp] - mov ebx,DWORD PTR [esp] - mov ecx,DWORD PTR 4[esp] - mov edi,DWORD PTR 8[esp] - mov esi,DWORD PTR 12[esp] - xor eax,edx - xor edx,ecx - xor eax,ebx - mov DWORD PTR [ebp],ebx - xor edx,edi - mov DWORD PTR 12[ebp],esi - xor eax,esi - add esp,20 - xor edx,esi - pop edi - xor eax,edx - pop esi - mov DWORD PTR 8[ebp],edx - pop ebx - mov DWORD PTR 4[ebp],eax - pop ebp - ret -_bn_GF2m_mul_2x2 ENDP -DB 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -DB 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm b/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm deleted file mode 100644 index f026dae738fb4b..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm +++ /dev/null @@ -1,491 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/x86-mont.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_bn_mul_mont PROC PUBLIC -$L_bn_mul_mont_begin:: - push ebp - push ebx - push esi - push edi - xor eax,eax - mov edi,DWORD PTR 40[esp] - cmp edi,4 - jl $L000just_leave - lea esi,DWORD PTR 20[esp] - lea edx,DWORD PTR 24[esp] - add edi,2 - neg edi - lea ebp,DWORD PTR [edi*4+esp-32] - neg edi - mov eax,ebp - sub eax,edx - and eax,2047 - sub ebp,eax - xor edx,ebp - and edx,2048 - xor edx,2048 - sub ebp,edx - and ebp,-64 - mov eax,esp - sub eax,ebp - and eax,-4096 - mov edx,esp - lea esp,DWORD PTR [eax*1+ebp] - mov eax,DWORD PTR [esp] - cmp esp,ebp - ja $L001page_walk - jmp $L002page_walk_done -ALIGN 16 -$L001page_walk: - lea esp,DWORD PTR [esp-4096] - mov eax,DWORD PTR [esp] - cmp esp,ebp - ja $L001page_walk -$L002page_walk_done: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov ebp,DWORD PTR 12[esi] - mov esi,DWORD PTR 16[esi] - mov esi,DWORD PTR [esi] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],ebp - mov DWORD PTR 20[esp],esi - lea ebx,DWORD PTR [edi-3] - mov DWORD PTR 24[esp],edx - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L003non_sse2 - mov eax,-1 - movd mm7,eax - mov esi,DWORD PTR 8[esp] - mov edi,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - xor edx,edx - xor ecx,ecx - movd mm4,DWORD PTR [edi] - movd mm5,DWORD PTR [esi] - movd mm3,DWORD PTR [ebp] - pmuludq mm5,mm4 - movq mm2,mm5 - movq mm0,mm5 - pand mm0,mm7 - pmuludq mm5,QWORD PTR 20[esp] - pmuludq mm3,mm5 - paddq mm3,mm0 - movd mm1,DWORD PTR 4[ebp] - movd mm0,DWORD PTR 4[esi] - psrlq mm2,32 - psrlq mm3,32 - inc ecx -ALIGN 16 -$L0041st: - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - movd mm1,DWORD PTR 4[ecx*4+ebp] - paddq mm3,mm0 - movd mm0,DWORD PTR 4[ecx*4+esi] - psrlq mm2,32 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm3,32 - lea ecx,DWORD PTR 1[ecx] - cmp ecx,ebx - jl $L0041st - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - paddq mm3,mm0 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm2,32 - psrlq mm3,32 - paddq mm3,mm2 - movq QWORD PTR 32[ebx*4+esp],mm3 - inc edx -$L005outer: - xor ecx,ecx - movd mm4,DWORD PTR [edx*4+edi] - movd mm5,DWORD PTR [esi] - movd mm6,DWORD PTR 32[esp] - movd mm3,DWORD PTR [ebp] - pmuludq mm5,mm4 - paddq mm5,mm6 - movq mm0,mm5 - movq mm2,mm5 - pand mm0,mm7 - pmuludq mm5,QWORD PTR 20[esp] - pmuludq mm3,mm5 - paddq mm3,mm0 - movd mm6,DWORD PTR 36[esp] - movd mm1,DWORD PTR 4[ebp] - movd mm0,DWORD PTR 4[esi] - psrlq mm2,32 - psrlq mm3,32 - paddq mm2,mm6 - inc ecx - dec ebx -$L006inner: - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - movd mm6,DWORD PTR 36[ecx*4+esp] - pand mm0,mm7 - movd mm1,DWORD PTR 4[ecx*4+ebp] - paddq mm3,mm0 - movd mm0,DWORD PTR 4[ecx*4+esi] - psrlq mm2,32 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm3,32 - paddq mm2,mm6 - dec ebx - lea ecx,DWORD PTR 1[ecx] - jnz $L006inner - mov ebx,ecx - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - paddq mm3,mm0 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm2,32 - psrlq mm3,32 - movd mm6,DWORD PTR 36[ebx*4+esp] - paddq mm3,mm2 - paddq mm3,mm6 - movq QWORD PTR 32[ebx*4+esp],mm3 - lea edx,DWORD PTR 1[edx] - cmp edx,ebx - jle $L005outer - emms - jmp $L007common_tail -ALIGN 16 -$L003non_sse2: - mov esi,DWORD PTR 8[esp] - lea ebp,DWORD PTR 1[ebx] - mov edi,DWORD PTR 12[esp] - xor ecx,ecx - mov edx,esi - and ebp,1 - sub edx,edi - lea eax,DWORD PTR 4[ebx*4+edi] - or ebp,edx - mov edi,DWORD PTR [edi] - jz $L008bn_sqr_mont - mov DWORD PTR 28[esp],eax - mov eax,DWORD PTR [esi] - xor edx,edx -ALIGN 16 -$L009mull: - mov ebp,edx - mul edi - add ebp,eax - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - mov eax,DWORD PTR [ecx*4+esi] - cmp ecx,ebx - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L009mull - mov ebp,edx - mul edi - mov edi,DWORD PTR 20[esp] - add eax,ebp - mov esi,DWORD PTR 16[esp] - adc edx,0 - imul edi,DWORD PTR 32[esp] - mov DWORD PTR 32[ebx*4+esp],eax - xor ecx,ecx - mov DWORD PTR 36[ebx*4+esp],edx - mov DWORD PTR 40[ebx*4+esp],ecx - mov eax,DWORD PTR [esi] - mul edi - add eax,DWORD PTR 32[esp] - mov eax,DWORD PTR 4[esi] - adc edx,0 - inc ecx - jmp $L0102ndmadd -ALIGN 16 -$L0111stmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L0111stmadd - mov ebp,edx - mul edi - add eax,DWORD PTR 32[ebx*4+esp] - mov edi,DWORD PTR 20[esp] - adc edx,0 - mov esi,DWORD PTR 16[esp] - add ebp,eax - adc edx,0 - imul edi,DWORD PTR 32[esp] - xor ecx,ecx - add edx,DWORD PTR 36[ebx*4+esp] - mov DWORD PTR 32[ebx*4+esp],ebp - adc ecx,0 - mov eax,DWORD PTR [esi] - mov DWORD PTR 36[ebx*4+esp],edx - mov DWORD PTR 40[ebx*4+esp],ecx - mul edi - add eax,DWORD PTR 32[esp] - mov eax,DWORD PTR 4[esi] - adc edx,0 - mov ecx,1 -ALIGN 16 -$L0102ndmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 24[ecx*4+esp],ebp - jl $L0102ndmadd - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ebx*4+esp] - adc edx,0 - add ebp,eax - adc edx,0 - mov DWORD PTR 28[ebx*4+esp],ebp - xor eax,eax - mov ecx,DWORD PTR 12[esp] - add edx,DWORD PTR 36[ebx*4+esp] - adc eax,DWORD PTR 40[ebx*4+esp] - lea ecx,DWORD PTR 4[ecx] - mov DWORD PTR 32[ebx*4+esp],edx - cmp ecx,DWORD PTR 28[esp] - mov DWORD PTR 36[ebx*4+esp],eax - je $L007common_tail - mov edi,DWORD PTR [ecx] - mov esi,DWORD PTR 8[esp] - mov DWORD PTR 12[esp],ecx - xor ecx,ecx - xor edx,edx - mov eax,DWORD PTR [esi] - jmp $L0111stmadd -ALIGN 16 -$L008bn_sqr_mont: - mov DWORD PTR [esp],ebx - mov DWORD PTR 12[esp],ecx - mov eax,edi - mul edi - mov DWORD PTR 32[esp],eax - mov ebx,edx - shr edx,1 - and ebx,1 - inc ecx -ALIGN 16 -$L012sqr: - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - lea ebp,DWORD PTR [eax*2+ebx] - shr eax,31 - cmp ecx,DWORD PTR [esp] - mov ebx,eax - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L012sqr - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - mov edi,DWORD PTR 20[esp] - adc edx,0 - mov esi,DWORD PTR 16[esp] - lea ebp,DWORD PTR [eax*2+ebx] - imul edi,DWORD PTR 32[esp] - shr eax,31 - mov DWORD PTR 32[ecx*4+esp],ebp - lea ebp,DWORD PTR [edx*2+eax] - mov eax,DWORD PTR [esi] - shr edx,31 - mov DWORD PTR 36[ecx*4+esp],ebp - mov DWORD PTR 40[ecx*4+esp],edx - mul edi - add eax,DWORD PTR 32[esp] - mov ebx,ecx - adc edx,0 - mov eax,DWORD PTR 4[esi] - mov ecx,1 -ALIGN 16 -$L0133rdmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR 4[ecx*4+esi] - adc edx,0 - mov DWORD PTR 28[ecx*4+esp],ebp - mov ebp,edx - mul edi - add ebp,DWORD PTR 36[ecx*4+esp] - lea ecx,DWORD PTR 2[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 24[ecx*4+esp],ebp - jl $L0133rdmadd - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ebx*4+esp] - adc edx,0 - add ebp,eax - adc edx,0 - mov DWORD PTR 28[ebx*4+esp],ebp - mov ecx,DWORD PTR 12[esp] - xor eax,eax - mov esi,DWORD PTR 8[esp] - add edx,DWORD PTR 36[ebx*4+esp] - adc eax,DWORD PTR 40[ebx*4+esp] - mov DWORD PTR 32[ebx*4+esp],edx - cmp ecx,ebx - mov DWORD PTR 36[ebx*4+esp],eax - je $L007common_tail - mov edi,DWORD PTR 4[ecx*4+esi] - lea ecx,DWORD PTR 1[ecx] - mov eax,edi - mov DWORD PTR 12[esp],ecx - mul edi - add eax,DWORD PTR 32[ecx*4+esp] - adc edx,0 - mov DWORD PTR 32[ecx*4+esp],eax - xor ebp,ebp - cmp ecx,ebx - lea ecx,DWORD PTR 1[ecx] - je $L014sqrlast - mov ebx,edx - shr edx,1 - and ebx,1 -ALIGN 16 -$L015sqradd: - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - lea ebp,DWORD PTR [eax*1+eax] - adc edx,0 - shr eax,31 - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc eax,0 - add ebp,ebx - adc eax,0 - cmp ecx,DWORD PTR [esp] - mov DWORD PTR 28[ecx*4+esp],ebp - mov ebx,eax - jle $L015sqradd - mov ebp,edx - add edx,edx - shr ebp,31 - add edx,ebx - adc ebp,0 -$L014sqrlast: - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 16[esp] - imul edi,DWORD PTR 32[esp] - add edx,DWORD PTR 32[ecx*4+esp] - mov eax,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR 32[ecx*4+esp],edx - mov DWORD PTR 36[ecx*4+esp],ebp - mul edi - add eax,DWORD PTR 32[esp] - lea ebx,DWORD PTR [ecx-1] - adc edx,0 - mov ecx,1 - mov eax,DWORD PTR 4[esi] - jmp $L0133rdmadd -ALIGN 16 -$L007common_tail: - mov ebp,DWORD PTR 16[esp] - mov edi,DWORD PTR 4[esp] - lea esi,DWORD PTR 32[esp] - mov eax,DWORD PTR [esi] - mov ecx,ebx - xor edx,edx -ALIGN 16 -$L016sub: - sbb eax,DWORD PTR [edx*4+ebp] - mov DWORD PTR [edx*4+edi],eax - dec ecx - mov eax,DWORD PTR 4[edx*4+esi] - lea edx,DWORD PTR 1[edx] - jge $L016sub - sbb eax,0 - and esi,eax - not eax - mov ebp,edi - and ebp,eax - or esi,ebp -ALIGN 16 -$L017copy: - mov eax,DWORD PTR [ebx*4+esi] - mov DWORD PTR [ebx*4+edi],eax - mov DWORD PTR 32[ebx*4+esp],ecx - dec ebx - jge $L017copy - mov esp,DWORD PTR 24[esp] - mov eax,1 -$L000just_leave: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_mont ENDP -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -DB 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm b/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm deleted file mode 100644 index 6aac94e4906752..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm +++ /dev/null @@ -1,2370 +0,0 @@ -TITLE cmll-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_Camellia_EncryptBlock_Rounds PROC PUBLIC -$L_Camellia_EncryptBlock_Rounds_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - lea eax,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 16[esp],eax - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L000pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 32[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_EncryptBlock_Rounds ENDP -ALIGN 16 -_Camellia_EncryptBlock PROC PUBLIC -$L_Camellia_EncryptBlock_begin:: - mov eax,128 - sub eax,DWORD PTR 4[esp] - mov eax,3 - adc eax,0 - mov DWORD PTR 4[esp],eax - jmp $L_Camellia_EncryptBlock_Rounds_begin -_Camellia_EncryptBlock ENDP -ALIGN 16 -_Camellia_encrypt PROC PUBLIC -$L_Camellia_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - mov eax,DWORD PTR 272[edi] - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - lea eax,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 16[esp],eax - call $L001pic_point -$L001pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L001pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 24[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_encrypt ENDP -ALIGN 16 -__x86_Camellia_encrypt PROC PRIVATE - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 16[edi] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edx -ALIGN 16 -$L002loop: - xor eax,esi - xor ebx,DWORD PTR 20[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 24[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 28[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 32[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR 36[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 40[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 44[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 48[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR 52[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 56[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 60[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 64[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - add edi,64 - cmp edi,DWORD PTR 20[esp] - je $L003done - and esi,eax - mov edx,DWORD PTR 16[esp] - rol esi,1 - mov ecx,edx - xor ebx,esi - or ecx,DWORD PTR 12[edi] - mov DWORD PTR 8[esp],ebx - xor ecx,DWORD PTR 12[esp] - mov esi,DWORD PTR 4[edi] - mov DWORD PTR 12[esp],ecx - or esi,ebx - and ecx,DWORD PTR 8[edi] - xor eax,esi - rol ecx,1 - mov DWORD PTR 4[esp],eax - xor edx,ecx - mov esi,DWORD PTR 16[edi] - mov DWORD PTR 16[esp],edx - jmp $L002loop -ALIGN 8 -$L003done: - mov ecx,eax - mov edx,ebx - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - xor eax,esi - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -__x86_Camellia_encrypt ENDP -ALIGN 16 -_Camellia_DecryptBlock_Rounds PROC PUBLIC -$L_Camellia_DecryptBlock_Rounds_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - mov DWORD PTR 16[esp],edi - lea edi,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - call $L004pic_point -$L004pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L004pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 32[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_DecryptBlock_Rounds ENDP -ALIGN 16 -_Camellia_DecryptBlock PROC PUBLIC -$L_Camellia_DecryptBlock_begin:: - mov eax,128 - sub eax,DWORD PTR 4[esp] - mov eax,3 - adc eax,0 - mov DWORD PTR 4[esp],eax - jmp $L_Camellia_DecryptBlock_Rounds_begin -_Camellia_DecryptBlock ENDP -ALIGN 16 -_Camellia_decrypt PROC PUBLIC -$L_Camellia_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - mov eax,DWORD PTR 272[edi] - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - mov DWORD PTR 16[esp],edi - lea edi,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - call $L005pic_point -$L005pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L005pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 24[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_decrypt ENDP -ALIGN 16 -__x86_Camellia_decrypt PROC PRIVATE - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR [edi-8] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edx -ALIGN 16 -$L006loop: - xor eax,esi - xor ebx,DWORD PTR [edi-4] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-16] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-12] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-24] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR [edi-20] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-32] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-28] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-40] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR [edi-36] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-48] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-44] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-56] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - sub edi,64 - cmp edi,DWORD PTR 20[esp] - je $L007done - and esi,eax - mov edx,DWORD PTR 16[esp] - rol esi,1 - mov ecx,edx - xor ebx,esi - or ecx,DWORD PTR 4[edi] - mov DWORD PTR 8[esp],ebx - xor ecx,DWORD PTR 12[esp] - mov esi,DWORD PTR 12[edi] - mov DWORD PTR 12[esp],ecx - or esi,ebx - and ecx,DWORD PTR [edi] - xor eax,esi - rol ecx,1 - mov DWORD PTR 4[esp],eax - xor edx,ecx - mov esi,DWORD PTR [edi-8] - mov DWORD PTR 16[esp],edx - jmp $L006loop -ALIGN 8 -$L007done: - mov ecx,eax - mov edx,ebx - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - xor ecx,esi - xor edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - ret -__x86_Camellia_decrypt ENDP -ALIGN 16 -_Camellia_Ekeygen PROC PUBLIC -$L_Camellia_Ekeygen_begin:: - push ebp - push ebx - push esi - push edi - sub esp,16 - mov ebp,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov edi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - cmp ebp,128 - je $L0081st128 - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - cmp ebp,192 - je $L0091st192 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - jmp $L0101st256 -ALIGN 4 -$L0091st192: - mov ecx,eax - mov edx,ebx - not ecx - not edx -ALIGN 4 -$L0101st256: - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 32[edi],eax - mov DWORD PTR 36[edi],ebx - mov DWORD PTR 40[edi],ecx - mov DWORD PTR 44[edi],edx - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] -ALIGN 4 -$L0081st128: - call $L011pic_point -$L011pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L011pic_point)[ebp] - lea edi,DWORD PTR ($LCamellia_SIGMA-$LCamellia_SBOX)[ebp] - mov esi,DWORD PTR [edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 4[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 8[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 12[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 16[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 44[esp] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov esi,DWORD PTR 16[edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 20[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 24[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 28[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 32[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 36[esp] - cmp esi,128 - jne $L0122nd256 - mov edi,DWORD PTR 44[esp] - lea edi,DWORD PTR 128[edi] - mov DWORD PTR [edi-112],eax - mov DWORD PTR [edi-108],ebx - mov DWORD PTR [edi-104],ecx - mov DWORD PTR [edi-100],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-80],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-76],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-72],ecx - mov DWORD PTR [edi-68],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-64],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-60],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-56],ecx - mov DWORD PTR [edi-52],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-32],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-28],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-16],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-12],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-8],ecx - mov DWORD PTR [edi-4],edx - mov ebp,ebx - shl ebx,2 - mov esi,ecx - shr esi,30 - shl ecx,2 - or ebx,esi - mov esi,edx - shl edx,2 - mov DWORD PTR 32[edi],ebx - shr esi,30 - or ecx,esi - shr ebp,30 - mov esi,eax - shr esi,30 - mov DWORD PTR 36[edi],ecx - shl eax,2 - or edx,esi - or eax,ebp - mov DWORD PTR 40[edi],edx - mov DWORD PTR 44[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 64[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 68[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 72[edi],edx - mov DWORD PTR 76[edi],eax - mov ebx,DWORD PTR [edi-128] - mov ecx,DWORD PTR [edi-124] - mov edx,DWORD PTR [edi-120] - mov eax,DWORD PTR [edi-116] - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-96],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-92],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-88],edx - mov DWORD PTR [edi-84],eax - mov ebp,ebx - shl ebx,30 - mov esi,ecx - shr esi,2 - shl ecx,30 - or ebx,esi - mov esi,edx - shl edx,30 - mov DWORD PTR [edi-48],ebx - shr esi,2 - or ecx,esi - shr ebp,2 - mov esi,eax - shr esi,2 - mov DWORD PTR [edi-44],ecx - shl eax,30 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-40],edx - mov DWORD PTR [edi-36],eax - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-24],edx - mov DWORD PTR [edi-20],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR [edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 4[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 8[edi],edx - mov DWORD PTR 12[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 16[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 20[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 24[edi],edx - mov DWORD PTR 28[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 48[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 52[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 56[edi],edx - mov DWORD PTR 60[edi],eax - mov eax,3 - jmp $L013done -ALIGN 16 -$L0122nd256: - mov esi,DWORD PTR 44[esp] - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],ebx - mov DWORD PTR 56[esi],ecx - mov DWORD PTR 60[esi],edx - xor eax,DWORD PTR 32[esi] - xor ebx,DWORD PTR 36[esi] - xor ecx,DWORD PTR 40[esi] - xor edx,DWORD PTR 44[esi] - mov esi,DWORD PTR 32[edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 36[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 40[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 44[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 48[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov edi,DWORD PTR 44[esp] - lea edi,DWORD PTR 128[edi] - mov DWORD PTR [edi-112],eax - mov DWORD PTR [edi-108],ebx - mov DWORD PTR [edi-104],ecx - mov DWORD PTR [edi-100],edx - mov ebp,eax - shl eax,30 - mov esi,ebx - shr esi,2 - shl ebx,30 - or eax,esi - mov esi,ecx - shl ecx,30 - mov DWORD PTR [edi-48],eax - shr esi,2 - or ebx,esi - shr ebp,2 - mov esi,edx - shr esi,2 - mov DWORD PTR [edi-44],ebx - shl edx,30 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-40],ecx - mov DWORD PTR [edi-36],edx - mov ebp,eax - shl eax,30 - mov esi,ebx - shr esi,2 - shl ebx,30 - or eax,esi - mov esi,ecx - shl ecx,30 - mov DWORD PTR 32[edi],eax - shr esi,2 - or ebx,esi - shr ebp,2 - mov esi,edx - shr esi,2 - mov DWORD PTR 36[edi],ebx - shl edx,30 - or ecx,esi - or edx,ebp - mov DWORD PTR 40[edi],ecx - mov DWORD PTR 44[edi],edx - mov ebp,ebx - shl ebx,19 - mov esi,ecx - shr esi,13 - shl ecx,19 - or ebx,esi - mov esi,edx - shl edx,19 - mov DWORD PTR 128[edi],ebx - shr esi,13 - or ecx,esi - shr ebp,13 - mov esi,eax - shr esi,13 - mov DWORD PTR 132[edi],ecx - shl eax,19 - or edx,esi - or eax,ebp - mov DWORD PTR 136[edi],edx - mov DWORD PTR 140[edi],eax - mov ebx,DWORD PTR [edi-96] - mov ecx,DWORD PTR [edi-92] - mov edx,DWORD PTR [edi-88] - mov eax,DWORD PTR [edi-84] - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-96],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-92],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-88],edx - mov DWORD PTR [edi-84],eax - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-64],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-60],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-56],edx - mov DWORD PTR [edi-52],eax - mov ebp,ebx - shl ebx,30 - mov esi,ecx - shr esi,2 - shl ecx,30 - or ebx,esi - mov esi,edx - shl edx,30 - mov DWORD PTR 16[edi],ebx - shr esi,2 - or ecx,esi - shr ebp,2 - mov esi,eax - shr esi,2 - mov DWORD PTR 20[edi],ecx - shl eax,30 - or edx,esi - or eax,ebp - mov DWORD PTR 24[edi],edx - mov DWORD PTR 28[edi],eax - mov ebp,ecx - shl ecx,2 - mov esi,edx - shr esi,30 - shl edx,2 - or ecx,esi - mov esi,eax - shl eax,2 - mov DWORD PTR 80[edi],ecx - shr esi,30 - or edx,esi - shr ebp,30 - mov esi,ebx - shr esi,30 - mov DWORD PTR 84[edi],edx - shl ebx,2 - or eax,esi - or ebx,ebp - mov DWORD PTR 88[edi],eax - mov DWORD PTR 92[edi],ebx - mov ecx,DWORD PTR [edi-80] - mov edx,DWORD PTR [edi-76] - mov eax,DWORD PTR [edi-72] - mov ebx,DWORD PTR [edi-68] - mov ebp,ecx - shl ecx,15 - mov esi,edx - shr esi,17 - shl edx,15 - or ecx,esi - mov esi,eax - shl eax,15 - mov DWORD PTR [edi-80],ecx - shr esi,17 - or edx,esi - shr ebp,17 - mov esi,ebx - shr esi,17 - mov DWORD PTR [edi-76],edx - shl ebx,15 - or eax,esi - or ebx,ebp - mov DWORD PTR [edi-72],eax - mov DWORD PTR [edi-68],ebx - mov ebp,ecx - shl ecx,30 - mov esi,edx - shr esi,2 - shl edx,30 - or ecx,esi - mov esi,eax - shl eax,30 - mov DWORD PTR [edi-16],ecx - shr esi,2 - or edx,esi - shr ebp,2 - mov esi,ebx - shr esi,2 - mov DWORD PTR [edi-12],edx - shl ebx,30 - or eax,esi - or ebx,ebp - mov DWORD PTR [edi-8],eax - mov DWORD PTR [edi-4],ebx - mov DWORD PTR 64[edi],edx - mov DWORD PTR 68[edi],eax - mov DWORD PTR 72[edi],ebx - mov DWORD PTR 76[edi],ecx - mov ebp,edx - shl edx,17 - mov esi,eax - shr esi,15 - shl eax,17 - or edx,esi - mov esi,ebx - shl ebx,17 - mov DWORD PTR 96[edi],edx - shr esi,15 - or eax,esi - shr ebp,15 - mov esi,ecx - shr esi,15 - mov DWORD PTR 100[edi],eax - shl ecx,17 - or ebx,esi - or ecx,ebp - mov DWORD PTR 104[edi],ebx - mov DWORD PTR 108[edi],ecx - mov edx,DWORD PTR [edi-128] - mov eax,DWORD PTR [edi-124] - mov ebx,DWORD PTR [edi-120] - mov ecx,DWORD PTR [edi-116] - mov ebp,eax - shl eax,13 - mov esi,ebx - shr esi,19 - shl ebx,13 - or eax,esi - mov esi,ecx - shl ecx,13 - mov DWORD PTR [edi-32],eax - shr esi,19 - or ebx,esi - shr ebp,19 - mov esi,edx - shr esi,19 - mov DWORD PTR [edi-28],ebx - shl edx,13 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-24],ecx - mov DWORD PTR [edi-20],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR 4[edi],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ebp,eax - shl eax,17 - mov esi,ebx - shr esi,15 - shl ebx,17 - or eax,esi - mov esi,ecx - shl ecx,17 - mov DWORD PTR 48[edi],eax - shr esi,15 - or ebx,esi - shr ebp,15 - mov esi,edx - shr esi,15 - mov DWORD PTR 52[edi],ebx - shl edx,17 - or ecx,esi - or edx,ebp - mov DWORD PTR 56[edi],ecx - mov DWORD PTR 60[edi],edx - mov ebp,ebx - shl ebx,2 - mov esi,ecx - shr esi,30 - shl ecx,2 - or ebx,esi - mov esi,edx - shl edx,2 - mov DWORD PTR 112[edi],ebx - shr esi,30 - or ecx,esi - shr ebp,30 - mov esi,eax - shr esi,30 - mov DWORD PTR 116[edi],ecx - shl eax,2 - or edx,esi - or eax,ebp - mov DWORD PTR 120[edi],edx - mov DWORD PTR 124[edi],eax - mov eax,4 -$L013done: - lea edx,DWORD PTR 144[edi] - add esp,16 - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_Ekeygen ENDP -ALIGN 16 -_private_Camellia_set_key PROC PUBLIC -$L_private_Camellia_set_key_begin:: - push ebx - mov ecx,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - mov edx,DWORD PTR 16[esp] - mov eax,-1 - test ecx,ecx - jz $L014done - test edx,edx - jz $L014done - mov eax,-2 - cmp ebx,256 - je $L015arg_ok - cmp ebx,192 - je $L015arg_ok - cmp ebx,128 - jne $L014done -ALIGN 4 -$L015arg_ok: - push edx - push ecx - push ebx - call $L_Camellia_Ekeygen_begin - add esp,12 - mov DWORD PTR [edx],eax - xor eax,eax -ALIGN 4 -$L014done: - pop ebx - ret -_private_Camellia_set_key ENDP -ALIGN 64 -$LCamellia_SIGMA:: -DD 2694735487,1003262091,3061508184,1286239154 -DD 3337565999,3914302142,1426019237,4057165596 -DD 283453434,3731369245,2958461122,3018244605 -DD 0,0,0,0 -ALIGN 64 -$LCamellia_SBOX:: -DD 1886416896,1886388336 -DD 2189591040,741081132 -DD 741092352,3014852787 -DD 3974949888,3233808576 -DD 3014898432,3840147684 -DD 656877312,1465319511 -DD 3233857536,3941204202 -DD 3857048832,2930639022 -DD 3840205824,589496355 -DD 2240120064,1802174571 -DD 1465341696,1162149957 -DD 892679424,2779054245 -DD 3941263872,3991732461 -DD 202116096,1330577487 -DD 2930683392,488439837 -DD 1094795520,2459041938 -DD 589505280,2256928902 -DD 4025478912,2947481775 -DD 1802201856,2088501372 -DD 2475922176,522125343 -DD 1162167552,1044250686 -DD 421075200,3705405660 -DD 2779096320,1583218782 -DD 555819264,185270283 -DD 3991792896,2795896998 -DD 235802112,960036921 -DD 1330597632,3587506389 -DD 1313754624,1566376029 -DD 488447232,3654877401 -DD 1701143808,1515847770 -DD 2459079168,1364262993 -DD 3183328512,1819017324 -DD 2256963072,2341142667 -DD 3099113472,2593783962 -DD 2947526400,4227531003 -DD 2408550144,2964324528 -DD 2088532992,1953759348 -DD 3958106880,724238379 -DD 522133248,4042260720 -DD 3469659648,2223243396 -DD 1044266496,3755933919 -DD 808464384,3419078859 -DD 3705461760,875823156 -DD 1600085760,1987444854 -DD 1583242752,1835860077 -DD 3318072576,2846425257 -DD 185273088,3520135377 -DD 437918208,67371012 -DD 2795939328,336855060 -DD 3789676800,976879674 -DD 960051456,3739091166 -DD 3402287616,286326801 -DD 3587560704,842137650 -DD 1195853568,2627469468 -DD 1566399744,1397948499 -DD 1027423488,4075946226 -DD 3654932736,4278059262 -DD 16843008,3486449871 -DD 1515870720,3284336835 -DD 3604403712,2054815866 -DD 1364283648,606339108 -DD 1448498688,3907518696 -DD 1819044864,1616904288 -DD 1296911616,1768489065 -DD 2341178112,2863268010 -DD 218959104,2694840480 -DD 2593823232,2711683233 -DD 1717986816,1650589794 -DD 4227595008,1414791252 -DD 3435973632,505282590 -DD 2964369408,3772776672 -DD 757935360,1684275300 -DD 1953788928,269484048 -DD 303174144,0 -DD 724249344,2745368739 -DD 538976256,1970602101 -DD 4042321920,2324299914 -DD 2981212416,3873833190 -DD 2223277056,151584777 -DD 2576980224,3722248413 -DD 3755990784,2273771655 -DD 1280068608,2206400643 -DD 3419130624,3452764365 -DD 3267543552,2425356432 -DD 875836416,1936916595 -DD 2122219008,4143317238 -DD 1987474944,2644312221 -DD 84215040,3216965823 -DD 1835887872,1381105746 -DD 3082270464,3638034648 -DD 2846468352,3368550600 -DD 825307392,3334865094 -DD 3520188672,2172715137 -DD 387389184,1869545583 -DD 67372032,320012307 -DD 3621246720,1667432547 -DD 336860160,3924361449 -DD 1482184704,2812739751 -DD 976894464,2677997727 -DD 1633771776,3166437564 -DD 3739147776,690552873 -DD 454761216,4193845497 -DD 286331136,791609391 -DD 471604224,3031695540 -DD 842150400,2021130360 -DD 252645120,101056518 -DD 2627509248,3890675943 -DD 370546176,1903231089 -DD 1397969664,3570663636 -DD 404232192,2880110763 -DD 4076007936,2290614408 -DD 572662272,2374828173 -DD 4278124032,1920073842 -DD 1145324544,3115909305 -DD 3486502656,4177002744 -DD 2998055424,2896953516 -DD 3284386560,909508662 -DD 3048584448,707395626 -DD 2054846976,1010565180 -DD 2442236160,4059103473 -DD 606348288,1077936192 -DD 134744064,3553820883 -DD 3907577856,3149594811 -DD 2829625344,1128464451 -DD 1616928768,353697813 -DD 4244438016,2913796269 -DD 1768515840,2004287607 -DD 1347440640,2155872384 -DD 2863311360,2189557890 -DD 3503345664,3974889708 -DD 2694881280,656867367 -DD 2105376000,3856990437 -DD 2711724288,2240086149 -DD 2307492096,892665909 -DD 1650614784,202113036 -DD 2543294208,1094778945 -DD 1414812672,4025417967 -DD 1532713728,2475884691 -DD 505290240,421068825 -DD 2509608192,555810849 -DD 3772833792,235798542 -DD 4294967040,1313734734 -DD 1684300800,1701118053 -DD 3537031680,3183280317 -DD 269488128,3099066552 -DD 3301229568,2408513679 -DD 0,3958046955 -DD 1212696576,3469607118 -DD 2745410304,808452144 -DD 4160222976,1600061535 -DD 1970631936,3318022341 -DD 3688618752,437911578 -DD 2324335104,3789619425 -DD 50529024,3402236106 -DD 3873891840,1195835463 -DD 3671775744,1027407933 -DD 151587072,16842753 -DD 1061109504,3604349142 -DD 3722304768,1448476758 -DD 2492765184,1296891981 -DD 2273806080,218955789 -DD 1549556736,1717960806 -DD 2206434048,3435921612 -DD 33686016,757923885 -DD 3452816640,303169554 -DD 1246382592,538968096 -DD 2425393152,2981167281 -DD 858993408,2576941209 -DD 1936945920,1280049228 -DD 1734829824,3267494082 -DD 4143379968,2122186878 -DD 4092850944,84213765 -DD 2644352256,3082223799 -DD 2139062016,825294897 -DD 3217014528,387383319 -DD 3806519808,3621191895 -DD 1381126656,1482162264 -DD 2610666240,1633747041 -DD 3638089728,454754331 -DD 640034304,471597084 -DD 3368601600,252641295 -DD 926365440,370540566 -DD 3334915584,404226072 -DD 993737472,572653602 -DD 2172748032,1145307204 -DD 2526451200,2998010034 -DD 1869573888,3048538293 -DD 1263225600,2442199185 -DD 320017152,134742024 -DD 3200171520,2829582504 -DD 1667457792,4244373756 -DD 774778368,1347420240 -DD 3924420864,3503292624 -DD 2038003968,2105344125 -DD 2812782336,2307457161 -DD 2358021120,2543255703 -DD 2678038272,1532690523 -DD 1852730880,2509570197 -DD 3166485504,4294902015 -DD 2391707136,3536978130 -DD 690563328,3301179588 -DD 4126536960,1212678216 -DD 4193908992,4160159991 -DD 3065427456,3688562907 -DD 791621376,50528259 -DD 4261281024,3671720154 -DD 3031741440,1061093439 -DD 1499027712,2492727444 -DD 2021160960,1549533276 -DD 2560137216,33685506 -DD 101058048,1246363722 -DD 1785358848,858980403 -DD 3890734848,1734803559 -DD 1179010560,4092788979 -DD 1903259904,2139029631 -DD 3132799488,3806462178 -DD 3570717696,2610626715 -DD 623191296,640024614 -DD 2880154368,926351415 -DD 1111638528,993722427 -DD 2290649088,2526412950 -DD 2728567296,1263206475 -DD 2374864128,3200123070 -DD 4210752000,774766638 -DD 1920102912,2037973113 -DD 117901056,2357985420 -DD 3115956480,1852702830 -DD 1431655680,2391670926 -DD 4177065984,4126474485 -DD 4008635904,3065381046 -DD 2896997376,4261216509 -DD 168430080,1499005017 -DD 909522432,2560098456 -DD 1229539584,1785331818 -DD 707406336,1178992710 -DD 1751672832,3132752058 -DD 1010580480,623181861 -DD 943208448,1111621698 -DD 4059164928,2728525986 -DD 2762253312,4210688250 -DD 1077952512,117899271 -DD 673720320,1431634005 -DD 3553874688,4008575214 -DD 2071689984,168427530 -DD 3149642496,1229520969 -DD 3385444608,1751646312 -DD 1128481536,943194168 -DD 3250700544,2762211492 -DD 353703168,673710120 -DD 3823362816,2071658619 -DD 2913840384,3385393353 -DD 4109693952,3250651329 -DD 2004317952,3823304931 -DD 3351758592,4109631732 -DD 2155905024,3351707847 -DD 2661195264,2661154974 -DD 14737632,939538488 -DD 328965,1090535745 -DD 5789784,369104406 -DD 14277081,1979741814 -DD 6776679,3640711641 -DD 5131854,2466288531 -DD 8487297,1610637408 -DD 13355979,4060148466 -DD 13224393,1912631922 -DD 723723,3254829762 -DD 11447982,2868947883 -DD 6974058,2583730842 -DD 14013909,1962964341 -DD 1579032,100664838 -DD 6118749,1459640151 -DD 8553090,2684395680 -DD 4605510,2432733585 -DD 14671839,4144035831 -DD 14079702,3036722613 -DD 2565927,3372272073 -DD 9079434,2717950626 -DD 3289650,2348846220 -DD 4934475,3523269330 -DD 4342338,2415956112 -DD 14408667,4127258358 -DD 1842204,117442311 -DD 10395294,2801837991 -DD 10263708,654321447 -DD 3815994,2382401166 -DD 13290186,2986390194 -DD 2434341,1224755529 -DD 8092539,3724599006 -DD 855309,1124090691 -DD 7434609,1543527516 -DD 6250335,3607156695 -DD 2039583,3338717127 -DD 16316664,1040203326 -DD 14145495,4110480885 -DD 4079166,2399178639 -DD 10329501,1728079719 -DD 8158332,520101663 -DD 6316128,402659352 -DD 12171705,1845522030 -DD 12500670,2936057775 -DD 12369084,788541231 -DD 9145227,3791708898 -DD 1447446,2231403909 -DD 3421236,218107149 -DD 5066061,1392530259 -DD 12829635,4026593520 -DD 7500402,2617285788 -DD 9803157,1694524773 -DD 11250603,3925928682 -DD 9342606,2734728099 -DD 12237498,2919280302 -DD 8026746,2650840734 -DD 11776947,3959483628 -DD 131586,2147516544 -DD 11842740,754986285 -DD 11382189,1795189611 -DD 10658466,2818615464 -DD 11316396,721431339 -DD 14211288,905983542 -DD 10132122,2785060518 -DD 1513239,3305162181 -DD 1710618,2248181382 -DD 3487029,1291865421 -DD 13421772,855651123 -DD 16250871,4244700669 -DD 10066329,1711302246 -DD 6381921,1476417624 -DD 5921370,2516620950 -DD 15263976,973093434 -DD 2368548,150997257 -DD 5658198,2499843477 -DD 4210752,268439568 -DD 14803425,2013296760 -DD 6513507,3623934168 -DD 592137,1107313218 -DD 3355443,3422604492 -DD 12566463,4009816047 -DD 10000536,637543974 -DD 9934743,3842041317 -DD 8750469,1627414881 -DD 6842472,436214298 -DD 16579836,1056980799 -DD 15527148,989870907 -DD 657930,2181071490 -DD 14342874,3053500086 -DD 7303023,3674266587 -DD 5460819,3556824276 -DD 6447714,2550175896 -DD 10724259,3892373736 -DD 3026478,2332068747 -DD 526344,33554946 -DD 11513775,3942706155 -DD 2631720,167774730 -DD 11579568,738208812 -DD 7631988,486546717 -DD 12763842,2952835248 -DD 12434877,1862299503 -DD 3552822,2365623693 -DD 2236962,2281736328 -DD 3684408,234884622 -DD 6579300,419436825 -DD 1973790,2264958855 -DD 3750201,1308642894 -DD 2894892,184552203 -DD 10921638,2835392937 -DD 3158064,201329676 -DD 15066597,2030074233 -DD 4473924,285217041 -DD 16645629,2130739071 -DD 8947848,570434082 -DD 10461087,3875596263 -DD 6645093,1493195097 -DD 8882055,3774931425 -DD 7039851,3657489114 -DD 16053492,1023425853 -DD 2302755,3355494600 -DD 4737096,301994514 -DD 1052688,67109892 -DD 13750737,1946186868 -DD 5329233,1409307732 -DD 12632256,805318704 -DD 16382457,2113961598 -DD 13816530,3019945140 -DD 10526880,671098920 -DD 5592405,1426085205 -DD 10592673,1744857192 -DD 4276545,1342197840 -DD 16448250,3187719870 -DD 4408131,3489714384 -DD 1250067,3288384708 -DD 12895428,822096177 -DD 3092271,3405827019 -DD 11053224,704653866 -DD 11974326,2902502829 -DD 3947580,251662095 -DD 2829099,3389049546 -DD 12698049,1879076976 -DD 16777215,4278255615 -DD 13158600,838873650 -DD 10855845,1761634665 -DD 2105376,134219784 -DD 9013641,1644192354 -DD 0,0 -DD 9474192,603989028 -DD 4671303,3506491857 -DD 15724527,4211145723 -DD 15395562,3120609978 -DD 12040119,3976261101 -DD 1381653,1157645637 -DD 394758,2164294017 -DD 13487565,1929409395 -DD 11908533,1828744557 -DD 1184274,2214626436 -DD 8289918,2667618207 -DD 12303291,3993038574 -DD 2697513,1241533002 -DD 986895,3271607235 -DD 12105912,771763758 -DD 460551,3238052289 -DD 263172,16777473 -DD 10197915,3858818790 -DD 9737364,620766501 -DD 2171169,1207978056 -DD 6710886,2566953369 -DD 15132390,3103832505 -DD 13553358,3003167667 -DD 15592941,2063629179 -DD 15198183,4177590777 -DD 3881787,3456159438 -DD 16711422,3204497343 -DD 8355711,3741376479 -DD 12961221,1895854449 -DD 10790052,687876393 -DD 3618615,3439381965 -DD 11645361,1811967084 -DD 5000268,318771987 -DD 9539985,1677747300 -DD 7237230,2600508315 -DD 9276813,1660969827 -DD 7763574,2634063261 -DD 197379,3221274816 -DD 2960685,1258310475 -DD 14606046,3070277559 -DD 9868950,2768283045 -DD 2500134,2298513801 -DD 8224125,1593859935 -DD 13027014,2969612721 -DD 6052956,385881879 -DD 13882323,4093703412 -DD 15921906,3154164924 -DD 5197647,3540046803 -DD 1644825,1174423110 -DD 4144959,3472936911 -DD 14474460,922761015 -DD 7960953,1577082462 -DD 1907997,1191200583 -DD 5395026,2483066004 -DD 15461355,4194368250 -DD 15987699,4227923196 -DD 7171437,1526750043 -DD 6184542,2533398423 -DD 16514043,4261478142 -DD 6908265,1509972570 -DD 11711154,2885725356 -DD 15790320,1006648380 -DD 3223857,1275087948 -DD 789516,50332419 -DD 13948116,889206069 -DD 13619151,4076925939 -DD 9211020,587211555 -DD 14869218,3087055032 -DD 7697781,1560304989 -DD 11119017,1778412138 -DD 4868682,2449511058 -DD 5723991,3573601749 -DD 8684676,553656609 -DD 1118481,1140868164 -DD 4539717,1358975313 -DD 1776411,3321939654 -DD 16119285,2097184125 -DD 15000804,956315961 -DD 921102,2197848963 -DD 7566195,3691044060 -DD 11184810,2852170410 -DD 15856113,2080406652 -DD 14540253,1996519287 -DD 5855577,1442862678 -DD 1315860,83887365 -DD 7105644,452991771 -DD 9605778,2751505572 -DD 5526612,352326933 -DD 13684944,872428596 -DD 7895160,503324190 -DD 7368816,469769244 -DD 14935011,4160813304 -DD 4802889,1375752786 -DD 8421504,536879136 -DD 5263440,335549460 -DD 10987431,3909151209 -DD 16185078,3170942397 -DD 7829367,3707821533 -DD 9671571,3825263844 -DD 8816262,2701173153 -DD 8618883,3758153952 -DD 2763306,2315291274 -DD 13092807,4043370993 -DD 5987163,3590379222 -DD 15329769,2046851706 -DD 15658734,3137387451 -DD 9408399,3808486371 -DD 65793,1073758272 -DD 4013373,1325420367 -ALIGN 16 -_Camellia_cbc_encrypt PROC PUBLIC -$L_Camellia_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ecx,DWORD PTR 28[esp] - cmp ecx,0 - je $L016enc_out - pushfd - cld - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - mov edx,DWORD PTR 36[esp] - mov ebp,DWORD PTR 40[esp] - lea esi,DWORD PTR [esp-64] - and esi,-64 - lea edi,DWORD PTR [edx-127] - sub edi,esi - neg edi - and edi,960 - sub esi,edi - mov edi,DWORD PTR 44[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 20[esp],esi - mov DWORD PTR 24[esp],eax - mov DWORD PTR 28[esp],ebx - mov DWORD PTR 32[esp],ecx - mov DWORD PTR 36[esp],edx - mov DWORD PTR 40[esp],ebp - call $L017pic_point -$L017pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L017pic_point)[ebp] - mov esi,32 -ALIGN 4 -$L018prefetch_sbox: - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] - lea ebp,DWORD PTR 128[ebp] - dec esi - jnz $L018prefetch_sbox - mov eax,DWORD PTR 36[esp] - sub ebp,4096 - mov esi,DWORD PTR 24[esp] - mov edx,DWORD PTR 272[eax] - cmp edi,0 - je $L019DECRYPT - mov ecx,DWORD PTR 32[esp] - mov edi,DWORD PTR 40[esp] - shl edx,6 - lea edx,DWORD PTR [edx*1+eax] - mov DWORD PTR 16[esp],edx - test ecx,4294967280 - jz $L020enc_tail - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 4 -$L021enc_loop: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - bswap eax - xor edx,DWORD PTR 12[esi] - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - bswap eax - bswap ebx - bswap ecx - mov DWORD PTR [edi],eax - bswap edx - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 32[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 28[esp],edx - sub ecx,16 - test ecx,4294967280 - mov DWORD PTR 32[esp],ecx - jnz $L021enc_loop - test ecx,15 - jnz $L020enc_tail - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esp,DWORD PTR 20[esp] - popfd -$L016enc_out: - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 4 -$L020enc_tail: - mov eax,edi - mov edi,DWORD PTR 28[esp] - push eax - mov ebx,16 - sub ebx,ecx - cmp edi,esi - je $L022enc_in_place -ALIGN 4 -DD 2767451785 - jmp $L023enc_skip_in_place -$L022enc_in_place: - lea edi,DWORD PTR [ecx*1+edi] -$L023enc_skip_in_place: - mov ecx,ebx - xor eax,eax -ALIGN 4 -DD 2868115081 - pop edi - mov esi,DWORD PTR 28[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov DWORD PTR 32[esp],16 - jmp $L021enc_loop -ALIGN 16 -$L019DECRYPT: - shl edx,6 - lea edx,DWORD PTR [edx*1+eax] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 36[esp],edx - cmp esi,DWORD PTR 28[esp] - je $L024dec_in_place - mov edi,DWORD PTR 40[esp] - mov DWORD PTR 44[esp],edi -ALIGN 4 -$L025dec_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov edi,DWORD PTR 44[esp] - mov esi,DWORD PTR 32[esp] - bswap eax - bswap ebx - bswap ecx - xor eax,DWORD PTR [edi] - bswap edx - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - sub esi,16 - jc $L026dec_partial - mov DWORD PTR 32[esp],esi - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov DWORD PTR 44[esp],esi - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - lea edi,DWORD PTR 16[edi] - mov DWORD PTR 28[esp],edi - jnz $L025dec_loop - mov edi,DWORD PTR 44[esp] -$L027dec_end: - mov esi,DWORD PTR 40[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - jmp $L028dec_out -ALIGN 4 -$L026dec_partial: - lea edi,DWORD PTR 44[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - lea ecx,DWORD PTR 16[esi] - mov esi,edi - mov edi,DWORD PTR 28[esp] -DD 2767451785 - mov edi,DWORD PTR 24[esp] - jmp $L027dec_end -ALIGN 4 -$L024dec_in_place: -$L029dec_in_place_loop: - lea edi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - bswap eax - mov DWORD PTR 12[edi],edx - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov edi,DWORD PTR 40[esp] - mov esi,DWORD PTR 28[esp] - bswap eax - bswap ebx - bswap ecx - xor eax,DWORD PTR [edi] - bswap edx - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 28[esp],esi - lea esi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 24[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - mov ecx,DWORD PTR 32[esp] - sub ecx,16 - jc $L030dec_in_place_partial - mov DWORD PTR 32[esp],ecx - jnz $L029dec_in_place_loop - jmp $L028dec_out -ALIGN 4 -$L030dec_in_place_partial: - mov edi,DWORD PTR 28[esp] - lea esi,DWORD PTR 44[esp] - lea edi,DWORD PTR [ecx*1+edi] - lea esi,DWORD PTR 16[ecx*1+esi] - neg ecx -DD 2767451785 -ALIGN 4 -$L028dec_out: - mov esp,DWORD PTR 20[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_cbc_encrypt ENDP -DB 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm b/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm deleted file mode 100644 index 0801d204e20353..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm +++ /dev/null @@ -1,947 +0,0 @@ -TITLE cast-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -EXTERN _CAST_S_table0:NEAR -EXTERN _CAST_S_table1:NEAR -EXTERN _CAST_S_table2:NEAR -EXTERN _CAST_S_table3:NEAR -ALIGN 16 -_CAST_encrypt PROC PUBLIC -$L_CAST_encrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; Get short key flag - mov eax,DWORD PTR 128[ebp] - push eax - xor eax,eax - ; round 0 - mov edx,DWORD PTR [ebp] - mov ecx,DWORD PTR 4[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 1 - mov edx,DWORD PTR 8[ebp] - mov ecx,DWORD PTR 12[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 2 - mov edx,DWORD PTR 16[ebp] - mov ecx,DWORD PTR 20[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 3 - mov edx,DWORD PTR 24[ebp] - mov ecx,DWORD PTR 28[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 4 - mov edx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 36[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 5 - mov edx,DWORD PTR 40[ebp] - mov ecx,DWORD PTR 44[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 6 - mov edx,DWORD PTR 48[ebp] - mov ecx,DWORD PTR 52[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 7 - mov edx,DWORD PTR 56[ebp] - mov ecx,DWORD PTR 60[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 8 - mov edx,DWORD PTR 64[ebp] - mov ecx,DWORD PTR 68[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 9 - mov edx,DWORD PTR 72[ebp] - mov ecx,DWORD PTR 76[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 10 - mov edx,DWORD PTR 80[ebp] - mov ecx,DWORD PTR 84[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 11 - mov edx,DWORD PTR 88[ebp] - mov ecx,DWORD PTR 92[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; test short key flag - pop edx - or edx,edx - jnz $L000cast_enc_done - ; round 12 - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 100[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 13 - mov edx,DWORD PTR 104[ebp] - mov ecx,DWORD PTR 108[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 14 - mov edx,DWORD PTR 112[ebp] - mov ecx,DWORD PTR 116[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 15 - mov edx,DWORD PTR 120[ebp] - mov ecx,DWORD PTR 124[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx -$L000cast_enc_done: - nop - mov eax,DWORD PTR 20[esp] - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_CAST_encrypt ENDP -EXTERN _CAST_S_table0:NEAR -EXTERN _CAST_S_table1:NEAR -EXTERN _CAST_S_table2:NEAR -EXTERN _CAST_S_table3:NEAR -ALIGN 16 -_CAST_decrypt PROC PUBLIC -$L_CAST_decrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; Get short key flag - mov eax,DWORD PTR 128[ebp] - or eax,eax - jnz $L001cast_dec_skip - xor eax,eax - ; round 15 - mov edx,DWORD PTR 120[ebp] - mov ecx,DWORD PTR 124[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 14 - mov edx,DWORD PTR 112[ebp] - mov ecx,DWORD PTR 116[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 13 - mov edx,DWORD PTR 104[ebp] - mov ecx,DWORD PTR 108[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 12 - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 100[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx -$L001cast_dec_skip: - ; round 11 - mov edx,DWORD PTR 88[ebp] - mov ecx,DWORD PTR 92[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 10 - mov edx,DWORD PTR 80[ebp] - mov ecx,DWORD PTR 84[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 9 - mov edx,DWORD PTR 72[ebp] - mov ecx,DWORD PTR 76[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 8 - mov edx,DWORD PTR 64[ebp] - mov ecx,DWORD PTR 68[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 7 - mov edx,DWORD PTR 56[ebp] - mov ecx,DWORD PTR 60[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 6 - mov edx,DWORD PTR 48[ebp] - mov ecx,DWORD PTR 52[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 5 - mov edx,DWORD PTR 40[ebp] - mov ecx,DWORD PTR 44[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 4 - mov edx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 36[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 3 - mov edx,DWORD PTR 24[ebp] - mov ecx,DWORD PTR 28[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 2 - mov edx,DWORD PTR 16[ebp] - mov ecx,DWORD PTR 20[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 1 - mov edx,DWORD PTR 8[ebp] - mov ecx,DWORD PTR 12[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 0 - mov edx,DWORD PTR [ebp] - mov ecx,DWORD PTR 4[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - nop - mov eax,DWORD PTR 20[esp] - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_CAST_decrypt ENDP -ALIGN 16 -_CAST_cbc_encrypt PROC PUBLIC -$L_CAST_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 3 - mov eax,DWORD PTR 48[esp] - push eax - push ebx - cmp ecx,0 - jz $L002decrypt - and ebp,4294967288 - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - jz $L003encrypt_finish -$L004encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L004encrypt_loop -$L003encrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L005finish - call $L006PIC_point -$L006PIC_point: - pop edx - lea ecx,DWORD PTR ($L007cbc_enc_jmp_table-$L006PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L008ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L009ej6: - mov dh,BYTE PTR 5[esi] -$L010ej5: - mov dl,BYTE PTR 4[esi] -$L011ej4: - mov ecx,DWORD PTR [esi] - jmp $L012ejend -$L013ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L014ej2: - mov ch,BYTE PTR 1[esi] -$L015ej1: - mov cl,BYTE PTR [esi] -$L012ejend: - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L005finish -$L002decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L016decrypt_finish -$L017decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L017decrypt_loop -$L016decrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L005finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L018dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L019dj6: - mov BYTE PTR 5[edi],dh -$L020dj5: - mov BYTE PTR 4[edi],dl -$L021dj4: - mov DWORD PTR [edi],ecx - jmp $L022djend -$L023dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L024dj2: - mov BYTE PTR 1[esi],ch -$L025dj1: - mov BYTE PTR [esi],cl -$L022djend: - jmp $L005finish -$L005finish: - mov ecx,DWORD PTR 60[esp] - add esp,24 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L007cbc_enc_jmp_table: -DD 0 -DD $L015ej1-$L006PIC_point -DD $L014ej2-$L006PIC_point -DD $L013ej3-$L006PIC_point -DD $L011ej4-$L006PIC_point -DD $L010ej5-$L006PIC_point -DD $L009ej6-$L006PIC_point -DD $L008ej7-$L006PIC_point -ALIGN 64 -_CAST_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/des/crypt586.asm b/deps/openssl/asm/x86-win32-masm/des/crypt586.asm deleted file mode 100644 index 6ca04c3afbdb1b..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/des/crypt586.asm +++ /dev/null @@ -1,886 +0,0 @@ -TITLE crypt586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -EXTERN _DES_SPtrans:NEAR -ALIGN 16 -_fcrypt_body PROC PUBLIC -$L_fcrypt_body_begin:: - push ebp - push ebx - push esi - push edi - ; - ; Load the 2 words - xor edi,edi - xor esi,esi - lea edx,DWORD PTR _DES_SPtrans - push edx - mov ebp,DWORD PTR 28[esp] - push 25 -$L000start: - ; - ; Round 0 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR [ebp] - xor eax,ebx - mov ecx,DWORD PTR 4[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 1 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 8[ebp] - xor eax,ebx - mov ecx,DWORD PTR 12[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 2 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 16[ebp] - xor eax,ebx - mov ecx,DWORD PTR 20[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 3 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 24[ebp] - xor eax,ebx - mov ecx,DWORD PTR 28[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 4 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 32[ebp] - xor eax,ebx - mov ecx,DWORD PTR 36[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 5 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 40[ebp] - xor eax,ebx - mov ecx,DWORD PTR 44[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 6 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 48[ebp] - xor eax,ebx - mov ecx,DWORD PTR 52[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 7 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 56[ebp] - xor eax,ebx - mov ecx,DWORD PTR 60[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 8 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 64[ebp] - xor eax,ebx - mov ecx,DWORD PTR 68[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 9 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 72[ebp] - xor eax,ebx - mov ecx,DWORD PTR 76[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 10 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 80[ebp] - xor eax,ebx - mov ecx,DWORD PTR 84[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 11 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 88[ebp] - xor eax,ebx - mov ecx,DWORD PTR 92[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 12 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 96[ebp] - xor eax,ebx - mov ecx,DWORD PTR 100[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 13 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 104[ebp] - xor eax,ebx - mov ecx,DWORD PTR 108[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 14 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 112[ebp] - xor eax,ebx - mov ecx,DWORD PTR 116[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 15 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 120[ebp] - xor eax,ebx - mov ecx,DWORD PTR 124[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - mov ebx,DWORD PTR [esp] - mov eax,edi - dec ebx - mov edi,esi - mov esi,eax - mov DWORD PTR [esp],ebx - jnz $L000start - ; - ; FP - mov edx,DWORD PTR 28[esp] - ror edi,1 - mov eax,esi - xor esi,edi - and esi,0aaaaaaaah - xor eax,esi - xor edi,esi - ; - rol eax,23 - mov esi,eax - xor eax,edi - and eax,003fc03fch - xor esi,eax - xor edi,eax - ; - rol esi,10 - mov eax,esi - xor esi,edi - and esi,033333333h - xor eax,esi - xor edi,esi - ; - rol edi,18 - mov esi,edi - xor edi,eax - and edi,0fff0000fh - xor esi,edi - xor eax,edi - ; - rol esi,12 - mov edi,esi - xor esi,eax - and esi,0f0f0f0f0h - xor edi,esi - xor eax,esi - ; - ror eax,4 - mov DWORD PTR [edx],eax - mov DWORD PTR 4[edx],edi - add esp,8 - pop edi - pop esi - pop ebx - pop ebp - ret -_fcrypt_body ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/des/des-586.asm b/deps/openssl/asm/x86-win32-masm/des/des-586.asm deleted file mode 100644 index ecae90ec7cbe5b..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/des/des-586.asm +++ /dev/null @@ -1,1836 +0,0 @@ -TITLE des-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -PUBLIC _DES_SPtrans -ALIGN 16 -__x86_DES_encrypt PROC PRIVATE - push ecx - ; Round 0 - mov eax,DWORD PTR [ecx] - xor ebx,ebx - mov edx,DWORD PTR 4[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 1 - mov eax,DWORD PTR 8[ecx] - xor ebx,ebx - mov edx,DWORD PTR 12[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 2 - mov eax,DWORD PTR 16[ecx] - xor ebx,ebx - mov edx,DWORD PTR 20[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 3 - mov eax,DWORD PTR 24[ecx] - xor ebx,ebx - mov edx,DWORD PTR 28[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 4 - mov eax,DWORD PTR 32[ecx] - xor ebx,ebx - mov edx,DWORD PTR 36[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 5 - mov eax,DWORD PTR 40[ecx] - xor ebx,ebx - mov edx,DWORD PTR 44[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 6 - mov eax,DWORD PTR 48[ecx] - xor ebx,ebx - mov edx,DWORD PTR 52[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 7 - mov eax,DWORD PTR 56[ecx] - xor ebx,ebx - mov edx,DWORD PTR 60[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 8 - mov eax,DWORD PTR 64[ecx] - xor ebx,ebx - mov edx,DWORD PTR 68[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 9 - mov eax,DWORD PTR 72[ecx] - xor ebx,ebx - mov edx,DWORD PTR 76[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 10 - mov eax,DWORD PTR 80[ecx] - xor ebx,ebx - mov edx,DWORD PTR 84[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 11 - mov eax,DWORD PTR 88[ecx] - xor ebx,ebx - mov edx,DWORD PTR 92[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 12 - mov eax,DWORD PTR 96[ecx] - xor ebx,ebx - mov edx,DWORD PTR 100[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 13 - mov eax,DWORD PTR 104[ecx] - xor ebx,ebx - mov edx,DWORD PTR 108[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 14 - mov eax,DWORD PTR 112[ecx] - xor ebx,ebx - mov edx,DWORD PTR 116[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 15 - mov eax,DWORD PTR 120[ecx] - xor ebx,ebx - mov edx,DWORD PTR 124[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - add esp,4 - ret -__x86_DES_encrypt ENDP -ALIGN 16 -__x86_DES_decrypt PROC PRIVATE - push ecx - ; Round 15 - mov eax,DWORD PTR 120[ecx] - xor ebx,ebx - mov edx,DWORD PTR 124[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 14 - mov eax,DWORD PTR 112[ecx] - xor ebx,ebx - mov edx,DWORD PTR 116[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 13 - mov eax,DWORD PTR 104[ecx] - xor ebx,ebx - mov edx,DWORD PTR 108[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 12 - mov eax,DWORD PTR 96[ecx] - xor ebx,ebx - mov edx,DWORD PTR 100[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 11 - mov eax,DWORD PTR 88[ecx] - xor ebx,ebx - mov edx,DWORD PTR 92[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 10 - mov eax,DWORD PTR 80[ecx] - xor ebx,ebx - mov edx,DWORD PTR 84[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 9 - mov eax,DWORD PTR 72[ecx] - xor ebx,ebx - mov edx,DWORD PTR 76[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 8 - mov eax,DWORD PTR 64[ecx] - xor ebx,ebx - mov edx,DWORD PTR 68[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 7 - mov eax,DWORD PTR 56[ecx] - xor ebx,ebx - mov edx,DWORD PTR 60[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 6 - mov eax,DWORD PTR 48[ecx] - xor ebx,ebx - mov edx,DWORD PTR 52[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 5 - mov eax,DWORD PTR 40[ecx] - xor ebx,ebx - mov edx,DWORD PTR 44[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 4 - mov eax,DWORD PTR 32[ecx] - xor ebx,ebx - mov edx,DWORD PTR 36[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 3 - mov eax,DWORD PTR 24[ecx] - xor ebx,ebx - mov edx,DWORD PTR 28[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 2 - mov eax,DWORD PTR 16[ecx] - xor ebx,ebx - mov edx,DWORD PTR 20[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 1 - mov eax,DWORD PTR 8[ecx] - xor ebx,ebx - mov edx,DWORD PTR 12[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 0 - mov eax,DWORD PTR [ecx] - xor ebx,ebx - mov edx,DWORD PTR 4[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - add esp,4 - ret -__x86_DES_decrypt ENDP -ALIGN 16 -_DES_encrypt1 PROC PUBLIC -$L_DES_encrypt1_begin:: - push esi - push edi - ; - ; Load the 2 words - mov esi,DWORD PTR 12[esp] - xor ecx,ecx - push ebx - push ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 28[esp] - mov edi,DWORD PTR 4[esi] - ; - ; IP - rol eax,4 - mov esi,eax - xor eax,edi - and eax,0f0f0f0f0h - xor esi,eax - xor edi,eax - ; - rol edi,20 - mov eax,edi - xor edi,esi - and edi,0fff0000fh - xor eax,edi - xor esi,edi - ; - rol eax,14 - mov edi,eax - xor eax,esi - and eax,033333333h - xor edi,eax - xor esi,eax - ; - rol esi,22 - mov eax,esi - xor esi,edi - and esi,003fc03fch - xor eax,esi - xor edi,esi - ; - rol eax,9 - mov esi,eax - xor eax,edi - and eax,0aaaaaaaah - xor esi,eax - xor edi,eax - ; - rol edi,1 - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($Ldes_sptrans-$L000pic_point)[ebp] - mov ecx,DWORD PTR 24[esp] - cmp ebx,0 - je $L001decrypt - call __x86_DES_encrypt - jmp $L002done -$L001decrypt: - call __x86_DES_decrypt -$L002done: - ; - ; FP - mov edx,DWORD PTR 20[esp] - ror esi,1 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [edx],eax - mov DWORD PTR 4[edx],esi - pop ebp - pop ebx - pop edi - pop esi - ret -_DES_encrypt1 ENDP -ALIGN 16 -_DES_encrypt2 PROC PUBLIC -$L_DES_encrypt2_begin:: - push esi - push edi - ; - ; Load the 2 words - mov eax,DWORD PTR 12[esp] - xor ecx,ecx - push ebx - push ebp - mov esi,DWORD PTR [eax] - mov ebx,DWORD PTR 28[esp] - rol esi,3 - mov edi,DWORD PTR 4[eax] - rol edi,3 - call $L003pic_point -$L003pic_point: - pop ebp - lea ebp,DWORD PTR ($Ldes_sptrans-$L003pic_point)[ebp] - mov ecx,DWORD PTR 24[esp] - cmp ebx,0 - je $L004decrypt - call __x86_DES_encrypt - jmp $L005done -$L004decrypt: - call __x86_DES_decrypt -$L005done: - ; - ; Fixup - ror edi,3 - mov eax,DWORD PTR 20[esp] - ror esi,3 - mov DWORD PTR [eax],edi - mov DWORD PTR 4[eax],esi - pop ebp - pop ebx - pop edi - pop esi - ret -_DES_encrypt2 ENDP -ALIGN 16 -_DES_encrypt3 PROC PUBLIC -$L_DES_encrypt3_begin:: - push ebx - mov ebx,DWORD PTR 8[esp] - push ebp - push esi - push edi - ; - ; Load the data words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - sub esp,12 - ; - ; IP - rol edi,4 - mov edx,edi - xor edi,esi - and edi,0f0f0f0f0h - xor edx,edi - xor esi,edi - ; - rol esi,20 - mov edi,esi - xor esi,edx - and esi,0fff0000fh - xor edi,esi - xor edx,esi - ; - rol edi,14 - mov esi,edi - xor edi,edx - and edi,033333333h - xor esi,edi - xor edx,edi - ; - rol edx,22 - mov edi,edx - xor edx,esi - and edx,003fc03fch - xor edi,edx - xor esi,edx - ; - rol edi,9 - mov edx,edi - xor edi,esi - and edi,0aaaaaaaah - xor edx,edi - xor esi,edi - ; - ror edx,3 - ror esi,2 - mov DWORD PTR 4[ebx],esi - mov eax,DWORD PTR 36[esp] - mov DWORD PTR [ebx],edx - mov edi,DWORD PTR 40[esp] - mov esi,DWORD PTR 44[esp] - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],eax - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],edi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],esi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - add esp,12 - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; - ; FP - rol esi,2 - rol edi,3 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [ebx],eax - mov DWORD PTR 4[ebx],esi - pop edi - pop esi - pop ebp - pop ebx - ret -_DES_encrypt3 ENDP -ALIGN 16 -_DES_decrypt3 PROC PUBLIC -$L_DES_decrypt3_begin:: - push ebx - mov ebx,DWORD PTR 8[esp] - push ebp - push esi - push edi - ; - ; Load the data words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - sub esp,12 - ; - ; IP - rol edi,4 - mov edx,edi - xor edi,esi - and edi,0f0f0f0f0h - xor edx,edi - xor esi,edi - ; - rol esi,20 - mov edi,esi - xor esi,edx - and esi,0fff0000fh - xor edi,esi - xor edx,esi - ; - rol edi,14 - mov esi,edi - xor edi,edx - and edi,033333333h - xor esi,edi - xor edx,edi - ; - rol edx,22 - mov edi,edx - xor edx,esi - and edx,003fc03fch - xor edi,edx - xor esi,edx - ; - rol edi,9 - mov edx,edi - xor edi,esi - and edi,0aaaaaaaah - xor edx,edi - xor esi,edi - ; - ror edx,3 - ror esi,2 - mov DWORD PTR 4[ebx],esi - mov esi,DWORD PTR 36[esp] - mov DWORD PTR [ebx],edx - mov edi,DWORD PTR 40[esp] - mov eax,DWORD PTR 44[esp] - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],eax - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],edi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],esi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - add esp,12 - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; - ; FP - rol esi,2 - rol edi,3 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [ebx],eax - mov DWORD PTR 4[ebx],esi - pop edi - pop esi - pop ebp - pop ebx - ret -_DES_decrypt3 ENDP -ALIGN 16 -_DES_ncbc_encrypt PROC PUBLIC -$L_DES_ncbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 5 - push ecx - ; get and push parameter 3 - mov eax,DWORD PTR 52[esp] - push eax - push ebx - cmp ecx,0 - jz $L006decrypt - and ebp,4294967288 - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - jz $L007encrypt_finish -$L008encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L008encrypt_loop -$L007encrypt_finish: - mov ebp,DWORD PTR 56[esp] - and ebp,7 - jz $L009finish - call $L010PIC_point -$L010PIC_point: - pop edx - lea ecx,DWORD PTR ($L011cbc_enc_jmp_table-$L010PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L012ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L013ej6: - mov dh,BYTE PTR 5[esi] -$L014ej5: - mov dl,BYTE PTR 4[esi] -$L015ej4: - mov ecx,DWORD PTR [esi] - jmp $L016ejend -$L017ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L018ej2: - mov ch,BYTE PTR 1[esi] -$L019ej1: - mov cl,BYTE PTR [esi] -$L016ejend: - xor eax,ecx - xor ebx,edx - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L009finish -$L006decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - jz $L020decrypt_finish -$L021decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 20[esp],eax - mov DWORD PTR 24[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L021decrypt_loop -$L020decrypt_finish: - mov ebp,DWORD PTR 56[esp] - and ebp,7 - jz $L009finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L022dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L023dj6: - mov BYTE PTR 5[edi],dh -$L024dj5: - mov BYTE PTR 4[edi],dl -$L025dj4: - mov DWORD PTR [edi],ecx - jmp $L026djend -$L027dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L028dj2: - mov BYTE PTR 1[esi],ch -$L029dj1: - mov BYTE PTR [esi],cl -$L026djend: - jmp $L009finish -$L009finish: - mov ecx,DWORD PTR 64[esp] - add esp,28 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L011cbc_enc_jmp_table: -DD 0 -DD $L019ej1-$L010PIC_point -DD $L018ej2-$L010PIC_point -DD $L017ej3-$L010PIC_point -DD $L015ej4-$L010PIC_point -DD $L014ej5-$L010PIC_point -DD $L013ej6-$L010PIC_point -DD $L012ej7-$L010PIC_point -ALIGN 64 -_DES_ncbc_encrypt ENDP -ALIGN 16 -_DES_ede3_cbc_encrypt PROC PUBLIC -$L_DES_ede3_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 6 - mov ebx,DWORD PTR 44[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 7 - mov ecx,DWORD PTR 64[esp] - ; get and push parameter 5 - mov eax,DWORD PTR 56[esp] - push eax - ; get and push parameter 4 - mov eax,DWORD PTR 56[esp] - push eax - ; get and push parameter 3 - mov eax,DWORD PTR 56[esp] - push eax - push ebx - cmp ecx,0 - jz $L030decrypt - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L031encrypt_finish -$L032encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_encrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L032encrypt_loop -$L031encrypt_finish: - mov ebp,DWORD PTR 60[esp] - and ebp,7 - jz $L033finish - call $L034PIC_point -$L034PIC_point: - pop edx - lea ecx,DWORD PTR ($L035cbc_enc_jmp_table-$L034PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L036ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L037ej6: - mov dh,BYTE PTR 5[esi] -$L038ej5: - mov dl,BYTE PTR 4[esi] -$L039ej4: - mov ecx,DWORD PTR [esi] - jmp $L040ejend -$L041ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L042ej2: - mov ch,BYTE PTR 1[esi] -$L043ej1: - mov cl,BYTE PTR [esi] -$L040ejend: - xor eax,ecx - xor ebx,edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_encrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L033finish -$L030decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - jz $L044decrypt_finish -$L045decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_decrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 24[esp],eax - mov DWORD PTR 28[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L045decrypt_loop -$L044decrypt_finish: - mov ebp,DWORD PTR 60[esp] - and ebp,7 - jz $L033finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_decrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L046dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L047dj6: - mov BYTE PTR 5[edi],dh -$L048dj5: - mov BYTE PTR 4[edi],dl -$L049dj4: - mov DWORD PTR [edi],ecx - jmp $L050djend -$L051dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L052dj2: - mov BYTE PTR 1[esi],ch -$L053dj1: - mov BYTE PTR [esi],cl -$L050djend: - jmp $L033finish -$L033finish: - mov ecx,DWORD PTR 76[esp] - add esp,32 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L035cbc_enc_jmp_table: -DD 0 -DD $L043ej1-$L034PIC_point -DD $L042ej2-$L034PIC_point -DD $L041ej3-$L034PIC_point -DD $L039ej4-$L034PIC_point -DD $L038ej5-$L034PIC_point -DD $L037ej6-$L034PIC_point -DD $L036ej7-$L034PIC_point -ALIGN 64 -_DES_ede3_cbc_encrypt ENDP -ALIGN 64 -_DES_SPtrans:: -$Ldes_sptrans:: -DD 34080768,524288,33554434,34080770 -DD 33554432,526338,524290,33554434 -DD 526338,34080768,34078720,2050 -DD 33556482,33554432,0,524290 -DD 524288,2,33556480,526336 -DD 34080770,34078720,2050,33556480 -DD 2,2048,526336,34078722 -DD 2048,33556482,34078722,0 -DD 0,34080770,33556480,524290 -DD 34080768,524288,2050,33556480 -DD 34078722,2048,526336,33554434 -DD 526338,2,33554434,34078720 -DD 34080770,526336,34078720,33556482 -DD 33554432,2050,524290,0 -DD 524288,33554432,33556482,34080768 -DD 2,34078722,2048,526338 -DD 1074823184,0,1081344,1074790400 -DD 1073741840,32784,1073774592,1081344 -DD 32768,1074790416,16,1073774592 -DD 1048592,1074823168,1074790400,16 -DD 1048576,1073774608,1074790416,32768 -DD 1081360,1073741824,0,1048592 -DD 1073774608,1081360,1074823168,1073741840 -DD 1073741824,1048576,32784,1074823184 -DD 1048592,1074823168,1073774592,1081360 -DD 1074823184,1048592,1073741840,0 -DD 1073741824,32784,1048576,1074790416 -DD 32768,1073741824,1081360,1073774608 -DD 1074823168,32768,0,1073741840 -DD 16,1074823184,1081344,1074790400 -DD 1074790416,1048576,32784,1073774592 -DD 1073774608,16,1074790400,1081344 -DD 67108865,67371264,256,67109121 -DD 262145,67108864,67109121,262400 -DD 67109120,262144,67371008,1 -DD 67371265,257,1,67371009 -DD 0,262145,67371264,256 -DD 257,67371265,262144,67108865 -DD 67371009,67109120,262401,67371008 -DD 262400,0,67108864,262401 -DD 67371264,256,1,262144 -DD 257,262145,67371008,67109121 -DD 0,67371264,262400,67371009 -DD 262145,67108864,67371265,1 -DD 262401,67108865,67108864,67371265 -DD 262144,67109120,67109121,262400 -DD 67109120,0,67371009,257 -DD 67108865,262401,256,67371008 -DD 4198408,268439552,8,272633864 -DD 0,272629760,268439560,4194312 -DD 272633856,268435464,268435456,4104 -DD 268435464,4198408,4194304,268435456 -DD 272629768,4198400,4096,8 -DD 4198400,268439560,272629760,4096 -DD 4104,0,4194312,272633856 -DD 268439552,272629768,272633864,4194304 -DD 272629768,4104,4194304,268435464 -DD 4198400,268439552,8,272629760 -DD 268439560,0,4096,4194312 -DD 0,272629768,272633856,4096 -DD 268435456,272633864,4198408,4194304 -DD 272633864,8,268439552,4198408 -DD 4194312,4198400,272629760,268439560 -DD 4104,268435456,268435464,272633856 -DD 134217728,65536,1024,134284320 -DD 134283296,134218752,66592,134283264 -DD 65536,32,134217760,66560 -DD 134218784,134283296,134284288,0 -DD 66560,134217728,65568,1056 -DD 134218752,66592,0,134217760 -DD 32,134218784,134284320,65568 -DD 134283264,1024,1056,134284288 -DD 134284288,134218784,65568,134283264 -DD 65536,32,134217760,134218752 -DD 134217728,66560,134284320,0 -DD 66592,134217728,1024,65568 -DD 134218784,1024,0,134284320 -DD 134283296,134284288,1056,65536 -DD 66560,134283296,134218752,1056 -DD 32,66592,134283264,134217760 -DD 2147483712,2097216,0,2149588992 -DD 2097216,8192,2147491904,2097152 -DD 8256,2149589056,2105344,2147483648 -DD 2147491840,2147483712,2149580800,2105408 -DD 2097152,2147491904,2149580864,0 -DD 8192,64,2149588992,2149580864 -DD 2149589056,2149580800,2147483648,8256 -DD 64,2105344,2105408,2147491840 -DD 8256,2147483648,2147491840,2105408 -DD 2149588992,2097216,0,2147491840 -DD 2147483648,8192,2149580864,2097152 -DD 2097216,2149589056,2105344,64 -DD 2149589056,2105344,2097152,2147491904 -DD 2147483712,2149580800,2105408,0 -DD 8192,2147483712,2147491904,2149588992 -DD 2149580800,8256,64,2149580864 -DD 16384,512,16777728,16777220 -DD 16794116,16388,16896,0 -DD 16777216,16777732,516,16793600 -DD 4,16794112,16793600,516 -DD 16777732,16384,16388,16794116 -DD 0,16777728,16777220,16896 -DD 16793604,16900,16794112,4 -DD 16900,16793604,512,16777216 -DD 16900,16793600,16793604,516 -DD 16384,512,16777216,16793604 -DD 16777732,16900,16896,0 -DD 512,16777220,4,16777728 -DD 0,16777732,16777728,16896 -DD 516,16384,16794116,16777216 -DD 16794112,4,16388,16794116 -DD 16777220,16794112,16793600,16388 -DD 545259648,545390592,131200,0 -DD 537001984,8388736,545259520,545390720 -DD 128,536870912,8519680,131200 -DD 8519808,537002112,536871040,545259520 -DD 131072,8519808,8388736,537001984 -DD 545390720,536871040,0,8519680 -DD 536870912,8388608,537002112,545259648 -DD 8388608,131072,545390592,128 -DD 8388608,131072,536871040,545390720 -DD 131200,536870912,0,8519680 -DD 545259648,537002112,537001984,8388736 -DD 545390592,128,8388736,537001984 -DD 545390720,8388608,545259520,536871040 -DD 8519680,131200,537002112,545259520 -DD 128,545390592,8519808,0 -DD 536870912,545259648,131072,8519808 -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm b/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm deleted file mode 100644 index ae47efcb7a9af4..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm +++ /dev/null @@ -1,689 +0,0 @@ -TITLE ../openssl/crypto/md5/asm/md5-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_md5_block_asm_data_order PROC PUBLIC -$L_md5_block_asm_data_order_begin:: - push esi - push edi - mov edi,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - push ebp - shl ecx,6 - push ebx - add ecx,esi - sub ecx,64 - mov eax,DWORD PTR [edi] - push ecx - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] -$L000start: - ; - ; R0 section - mov edi,ecx - mov ebp,DWORD PTR [esi] - ; R0 0 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 3614090360[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 4[esi] - add eax,ebx - ; R0 1 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 3905402710[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 8[esi] - add edx,eax - ; R0 2 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 606105819[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 12[esi] - add ecx,edx - ; R0 3 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 3250441966[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 16[esi] - add ebx,ecx - ; R0 4 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 4118548399[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 20[esi] - add eax,ebx - ; R0 5 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 1200080426[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 24[esi] - add edx,eax - ; R0 6 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 2821735955[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 28[esi] - add ecx,edx - ; R0 7 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 4249261313[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 32[esi] - add ebx,ecx - ; R0 8 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 1770035416[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 36[esi] - add eax,ebx - ; R0 9 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 2336552879[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 40[esi] - add edx,eax - ; R0 10 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 4294925233[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 44[esi] - add ecx,edx - ; R0 11 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 2304563134[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 48[esi] - add ebx,ecx - ; R0 12 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 1804603682[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 52[esi] - add eax,ebx - ; R0 13 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 4254626195[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 56[esi] - add edx,eax - ; R0 14 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 2792965006[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 60[esi] - add ecx,edx - ; R0 15 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 1236535329[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 4[esi] - add ebx,ecx - ; - ; R1 section - ; R1 16 - lea eax,DWORD PTR 4129170786[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 24[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 17 - lea edx,DWORD PTR 3225465664[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 44[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 18 - lea ecx,DWORD PTR 643717713[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR [esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 19 - lea ebx,DWORD PTR 3921069994[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 20[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 20 - lea eax,DWORD PTR 3593408605[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 40[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 21 - lea edx,DWORD PTR 38016083[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 60[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 22 - lea ecx,DWORD PTR 3634488961[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 16[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 23 - lea ebx,DWORD PTR 3889429448[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 36[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 24 - lea eax,DWORD PTR 568446438[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 56[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 25 - lea edx,DWORD PTR 3275163606[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 12[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 26 - lea ecx,DWORD PTR 4107603335[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 32[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 27 - lea ebx,DWORD PTR 1163531501[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 52[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 28 - lea eax,DWORD PTR 2850285829[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 8[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 29 - lea edx,DWORD PTR 4243563512[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 28[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 30 - lea ecx,DWORD PTR 1735328473[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 48[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 31 - lea ebx,DWORD PTR 2368359562[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 20[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; - ; R2 section - ; R2 32 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 4294588738[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 32[esi] - mov edi,ebx - ; R2 33 - lea edx,DWORD PTR 2272392833[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 44[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 34 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 1839030562[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 56[esi] - mov edi,edx - ; R2 35 - lea ebx,DWORD PTR 4259657740[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 4[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 36 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 2763975236[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 16[esi] - mov edi,ebx - ; R2 37 - lea edx,DWORD PTR 1272893353[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 28[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 38 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 4139469664[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 40[esi] - mov edi,edx - ; R2 39 - lea ebx,DWORD PTR 3200236656[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 52[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 40 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 681279174[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR [esi] - mov edi,ebx - ; R2 41 - lea edx,DWORD PTR 3936430074[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 12[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 42 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 3572445317[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 24[esi] - mov edi,edx - ; R2 43 - lea ebx,DWORD PTR 76029189[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 36[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 44 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 3654602809[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 48[esi] - mov edi,ebx - ; R2 45 - lea edx,DWORD PTR 3873151461[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 60[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 46 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 530742520[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 8[esi] - mov edi,edx - ; R2 47 - lea ebx,DWORD PTR 3299628645[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR [esi] - add ebx,edi - mov edi,-1 - rol ebx,23 - add ebx,ecx - ; - ; R3 section - ; R3 48 - xor edi,edx - or edi,ebx - lea eax,DWORD PTR 4096336452[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 28[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 49 - or edi,eax - lea edx,DWORD PTR 1126891415[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 56[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 50 - or edi,edx - lea ecx,DWORD PTR 2878612391[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 20[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 51 - or edi,ecx - lea ebx,DWORD PTR 4237533241[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 48[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 52 - or edi,ebx - lea eax,DWORD PTR 1700485571[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 12[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 53 - or edi,eax - lea edx,DWORD PTR 2399980690[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 40[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 54 - or edi,edx - lea ecx,DWORD PTR 4293915773[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 4[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 55 - or edi,ecx - lea ebx,DWORD PTR 2240044497[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 32[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 56 - or edi,ebx - lea eax,DWORD PTR 1873313359[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 60[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 57 - or edi,eax - lea edx,DWORD PTR 4264355552[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 24[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 58 - or edi,edx - lea ecx,DWORD PTR 2734768916[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 52[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 59 - or edi,ecx - lea ebx,DWORD PTR 1309151649[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 16[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 60 - or edi,ebx - lea eax,DWORD PTR 4149444226[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 44[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 61 - or edi,eax - lea edx,DWORD PTR 3174756917[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 8[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 62 - or edi,edx - lea ecx,DWORD PTR 718787259[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 36[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 63 - or edi,ecx - lea ebx,DWORD PTR 3951481745[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 24[esp] - add ebx,edi - add esi,64 - rol ebx,21 - mov edi,DWORD PTR [ebp] - add ebx,ecx - add eax,edi - mov edi,DWORD PTR 4[ebp] - add ebx,edi - mov edi,DWORD PTR 8[ebp] - add ecx,edi - mov edi,DWORD PTR 12[ebp] - add edx,edi - mov DWORD PTR [ebp],eax - mov DWORD PTR 4[ebp],ebx - mov edi,DWORD PTR [esp] - mov DWORD PTR 8[ebp],ecx - mov DWORD PTR 12[ebp],edx - cmp edi,esi - jae $L000start - pop eax - pop ebx - pop ebp - pop edi - pop esi - ret -_md5_block_asm_data_order ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/modes/ghash-x86.asm b/deps/openssl/asm/x86-win32-masm/modes/ghash-x86.asm deleted file mode 100644 index d18bb128c591d7..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/modes/ghash-x86.asm +++ /dev/null @@ -1,1274 +0,0 @@ -TITLE ghash-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_gcm_gmult_4bit_x86 PROC PUBLIC -$L_gcm_gmult_4bit_x86_begin:: - push ebp - push ebx - push esi - push edi - sub esp,84 - mov edi,DWORD PTR 104[esp] - mov esi,DWORD PTR 108[esp] - mov ebp,DWORD PTR [edi] - mov edx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov ebx,DWORD PTR 12[edi] - mov DWORD PTR 16[esp],0 - mov DWORD PTR 20[esp],471859200 - mov DWORD PTR 24[esp],943718400 - mov DWORD PTR 28[esp],610271232 - mov DWORD PTR 32[esp],1887436800 - mov DWORD PTR 36[esp],1822425088 - mov DWORD PTR 40[esp],1220542464 - mov DWORD PTR 44[esp],1423966208 - mov DWORD PTR 48[esp],3774873600 - mov DWORD PTR 52[esp],4246732800 - mov DWORD PTR 56[esp],3644850176 - mov DWORD PTR 60[esp],3311403008 - mov DWORD PTR 64[esp],2441084928 - mov DWORD PTR 68[esp],2376073216 - mov DWORD PTR 72[esp],2847932416 - mov DWORD PTR 76[esp],3051356160 - mov DWORD PTR [esp],ebp - mov DWORD PTR 4[esp],edx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],ebx - shr ebx,20 - and ebx,240 - mov ebp,DWORD PTR 4[ebx*1+esi] - mov edx,DWORD PTR [ebx*1+esi] - mov ecx,DWORD PTR 12[ebx*1+esi] - mov ebx,DWORD PTR 8[ebx*1+esi] - xor eax,eax - mov edi,15 - jmp $L000x86_loop -ALIGN 16 -$L000x86_loop: - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - and al,240 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - dec edi - js $L001x86_break - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - shl al,4 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - jmp $L000x86_loop -ALIGN 16 -$L001x86_break: - bswap ebx - bswap ecx - bswap edx - bswap ebp - mov edi,DWORD PTR 104[esp] - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR [edi],ebp - add esp,84 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_gmult_4bit_x86 ENDP -ALIGN 16 -_gcm_ghash_4bit_x86 PROC PUBLIC -$L_gcm_ghash_4bit_x86_begin:: - push ebp - push ebx - push esi - push edi - sub esp,84 - mov ebx,DWORD PTR 104[esp] - mov esi,DWORD PTR 108[esp] - mov edi,DWORD PTR 112[esp] - mov ecx,DWORD PTR 116[esp] - add ecx,edi - mov DWORD PTR 116[esp],ecx - mov ebp,DWORD PTR [ebx] - mov edx,DWORD PTR 4[ebx] - mov ecx,DWORD PTR 8[ebx] - mov ebx,DWORD PTR 12[ebx] - mov DWORD PTR 16[esp],0 - mov DWORD PTR 20[esp],471859200 - mov DWORD PTR 24[esp],943718400 - mov DWORD PTR 28[esp],610271232 - mov DWORD PTR 32[esp],1887436800 - mov DWORD PTR 36[esp],1822425088 - mov DWORD PTR 40[esp],1220542464 - mov DWORD PTR 44[esp],1423966208 - mov DWORD PTR 48[esp],3774873600 - mov DWORD PTR 52[esp],4246732800 - mov DWORD PTR 56[esp],3644850176 - mov DWORD PTR 60[esp],3311403008 - mov DWORD PTR 64[esp],2441084928 - mov DWORD PTR 68[esp],2376073216 - mov DWORD PTR 72[esp],2847932416 - mov DWORD PTR 76[esp],3051356160 -ALIGN 16 -$L002x86_outer_loop: - xor ebx,DWORD PTR 12[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 4[edi] - xor ebp,DWORD PTR [edi] - mov DWORD PTR 12[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 4[esp],edx - mov DWORD PTR [esp],ebp - shr ebx,20 - and ebx,240 - mov ebp,DWORD PTR 4[ebx*1+esi] - mov edx,DWORD PTR [ebx*1+esi] - mov ecx,DWORD PTR 12[ebx*1+esi] - mov ebx,DWORD PTR 8[ebx*1+esi] - xor eax,eax - mov edi,15 - jmp $L003x86_loop -ALIGN 16 -$L003x86_loop: - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - and al,240 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - dec edi - js $L004x86_break - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - shl al,4 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - jmp $L003x86_loop -ALIGN 16 -$L004x86_break: - bswap ebx - bswap ecx - bswap edx - bswap ebp - mov edi,DWORD PTR 112[esp] - lea edi,DWORD PTR 16[edi] - cmp edi,DWORD PTR 116[esp] - mov DWORD PTR 112[esp],edi - jb $L002x86_outer_loop - mov edi,DWORD PTR 104[esp] - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR [edi],ebp - add esp,84 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_4bit_x86 ENDP -ALIGN 16 -_gcm_gmult_4bit_mmx PROC PUBLIC -$L_gcm_gmult_4bit_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - call $L005pic_point -$L005pic_point: - pop eax - lea eax,DWORD PTR ($Lrem_4bit-$L005pic_point)[eax] - movzx ebx,BYTE PTR 15[edi] - xor ecx,ecx - mov edx,ebx - mov cl,dl - mov ebp,14 - shl cl,4 - and edx,240 - movq mm0,QWORD PTR 8[ecx*1+esi] - movq mm1,QWORD PTR [ecx*1+esi] - movd ebx,mm0 - jmp $L006mmx_loop -ALIGN 16 -$L006mmx_loop: - psrlq mm0,4 - and ebx,15 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[edx*1+esi] - mov cl,BYTE PTR [ebp*1+edi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - dec ebp - movd ebx,mm0 - pxor mm1,QWORD PTR [edx*1+esi] - mov edx,ecx - pxor mm0,mm2 - js $L007mmx_break - shl cl,4 - and ebx,15 - psrlq mm0,4 - and edx,240 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[ecx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [ecx*1+esi] - pxor mm0,mm2 - jmp $L006mmx_loop -ALIGN 16 -$L007mmx_break: - shl cl,4 - and ebx,15 - psrlq mm0,4 - and edx,240 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[ecx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [ecx*1+esi] - pxor mm0,mm2 - psrlq mm0,4 - and ebx,15 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[edx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [edx*1+esi] - pxor mm0,mm2 - psrlq mm0,32 - movd edx,mm1 - psrlq mm1,32 - movd ecx,mm0 - movd ebp,mm1 - bswap ebx - bswap edx - bswap ecx - bswap ebp - emms - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR [edi],ebp - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_gmult_4bit_mmx ENDP -ALIGN 16 -_gcm_ghash_4bit_mmx PROC PUBLIC -$L_gcm_ghash_4bit_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - call $L008pic_point -$L008pic_point: - pop esi - lea esi,DWORD PTR ($Lrem_8bit-$L008pic_point)[esi] - sub esp,544 - and esp,-64 - sub esp,16 - add edx,ecx - mov DWORD PTR 544[esp],eax - mov DWORD PTR 552[esp],edx - mov DWORD PTR 556[esp],ebp - add ebx,128 - lea edi,DWORD PTR 144[esp] - lea ebp,DWORD PTR 400[esp] - mov edx,DWORD PTR [ebx-120] - movq mm0,QWORD PTR [ebx-120] - movq mm3,QWORD PTR [ebx-128] - shl edx,4 - mov BYTE PTR [esp],dl - mov edx,DWORD PTR [ebx-104] - movq mm2,QWORD PTR [ebx-104] - movq mm5,QWORD PTR [ebx-112] - movq QWORD PTR [edi-128],mm0 - psrlq mm0,4 - movq QWORD PTR [edi],mm3 - movq mm7,mm3 - psrlq mm3,4 - shl edx,4 - mov BYTE PTR 1[esp],dl - mov edx,DWORD PTR [ebx-88] - movq mm1,QWORD PTR [ebx-88] - psllq mm7,60 - movq mm4,QWORD PTR [ebx-96] - por mm0,mm7 - movq QWORD PTR [edi-120],mm2 - psrlq mm2,4 - movq QWORD PTR 8[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-128],mm0 - psrlq mm5,4 - movq QWORD PTR [ebp],mm3 - shl edx,4 - mov BYTE PTR 2[esp],dl - mov edx,DWORD PTR [ebx-72] - movq mm0,QWORD PTR [ebx-72] - psllq mm6,60 - movq mm3,QWORD PTR [ebx-80] - por mm2,mm6 - movq QWORD PTR [edi-112],mm1 - psrlq mm1,4 - movq QWORD PTR 16[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-120],mm2 - psrlq mm4,4 - movq QWORD PTR 8[ebp],mm5 - shl edx,4 - mov BYTE PTR 3[esp],dl - mov edx,DWORD PTR [ebx-56] - movq mm2,QWORD PTR [ebx-56] - psllq mm7,60 - movq mm5,QWORD PTR [ebx-64] - por mm1,mm7 - movq QWORD PTR [edi-104],mm0 - psrlq mm0,4 - movq QWORD PTR 24[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-112],mm1 - psrlq mm3,4 - movq QWORD PTR 16[ebp],mm4 - shl edx,4 - mov BYTE PTR 4[esp],dl - mov edx,DWORD PTR [ebx-40] - movq mm1,QWORD PTR [ebx-40] - psllq mm6,60 - movq mm4,QWORD PTR [ebx-48] - por mm0,mm6 - movq QWORD PTR [edi-96],mm2 - psrlq mm2,4 - movq QWORD PTR 32[edi],mm5 - movq mm7,mm5 - movq QWORD PTR [ebp-104],mm0 - psrlq mm5,4 - movq QWORD PTR 24[ebp],mm3 - shl edx,4 - mov BYTE PTR 5[esp],dl - mov edx,DWORD PTR [ebx-24] - movq mm0,QWORD PTR [ebx-24] - psllq mm7,60 - movq mm3,QWORD PTR [ebx-32] - por mm2,mm7 - movq QWORD PTR [edi-88],mm1 - psrlq mm1,4 - movq QWORD PTR 40[edi],mm4 - movq mm6,mm4 - movq QWORD PTR [ebp-96],mm2 - psrlq mm4,4 - movq QWORD PTR 32[ebp],mm5 - shl edx,4 - mov BYTE PTR 6[esp],dl - mov edx,DWORD PTR [ebx-8] - movq mm2,QWORD PTR [ebx-8] - psllq mm6,60 - movq mm5,QWORD PTR [ebx-16] - por mm1,mm6 - movq QWORD PTR [edi-80],mm0 - psrlq mm0,4 - movq QWORD PTR 48[edi],mm3 - movq mm7,mm3 - movq QWORD PTR [ebp-88],mm1 - psrlq mm3,4 - movq QWORD PTR 40[ebp],mm4 - shl edx,4 - mov BYTE PTR 7[esp],dl - mov edx,DWORD PTR 8[ebx] - movq mm1,QWORD PTR 8[ebx] - psllq mm7,60 - movq mm4,QWORD PTR [ebx] - por mm0,mm7 - movq QWORD PTR [edi-72],mm2 - psrlq mm2,4 - movq QWORD PTR 56[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-80],mm0 - psrlq mm5,4 - movq QWORD PTR 48[ebp],mm3 - shl edx,4 - mov BYTE PTR 8[esp],dl - mov edx,DWORD PTR 24[ebx] - movq mm0,QWORD PTR 24[ebx] - psllq mm6,60 - movq mm3,QWORD PTR 16[ebx] - por mm2,mm6 - movq QWORD PTR [edi-64],mm1 - psrlq mm1,4 - movq QWORD PTR 64[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-72],mm2 - psrlq mm4,4 - movq QWORD PTR 56[ebp],mm5 - shl edx,4 - mov BYTE PTR 9[esp],dl - mov edx,DWORD PTR 40[ebx] - movq mm2,QWORD PTR 40[ebx] - psllq mm7,60 - movq mm5,QWORD PTR 32[ebx] - por mm1,mm7 - movq QWORD PTR [edi-56],mm0 - psrlq mm0,4 - movq QWORD PTR 72[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-64],mm1 - psrlq mm3,4 - movq QWORD PTR 64[ebp],mm4 - shl edx,4 - mov BYTE PTR 10[esp],dl - mov edx,DWORD PTR 56[ebx] - movq mm1,QWORD PTR 56[ebx] - psllq mm6,60 - movq mm4,QWORD PTR 48[ebx] - por mm0,mm6 - movq QWORD PTR [edi-48],mm2 - psrlq mm2,4 - movq QWORD PTR 80[edi],mm5 - movq mm7,mm5 - movq QWORD PTR [ebp-56],mm0 - psrlq mm5,4 - movq QWORD PTR 72[ebp],mm3 - shl edx,4 - mov BYTE PTR 11[esp],dl - mov edx,DWORD PTR 72[ebx] - movq mm0,QWORD PTR 72[ebx] - psllq mm7,60 - movq mm3,QWORD PTR 64[ebx] - por mm2,mm7 - movq QWORD PTR [edi-40],mm1 - psrlq mm1,4 - movq QWORD PTR 88[edi],mm4 - movq mm6,mm4 - movq QWORD PTR [ebp-48],mm2 - psrlq mm4,4 - movq QWORD PTR 80[ebp],mm5 - shl edx,4 - mov BYTE PTR 12[esp],dl - mov edx,DWORD PTR 88[ebx] - movq mm2,QWORD PTR 88[ebx] - psllq mm6,60 - movq mm5,QWORD PTR 80[ebx] - por mm1,mm6 - movq QWORD PTR [edi-32],mm0 - psrlq mm0,4 - movq QWORD PTR 96[edi],mm3 - movq mm7,mm3 - movq QWORD PTR [ebp-40],mm1 - psrlq mm3,4 - movq QWORD PTR 88[ebp],mm4 - shl edx,4 - mov BYTE PTR 13[esp],dl - mov edx,DWORD PTR 104[ebx] - movq mm1,QWORD PTR 104[ebx] - psllq mm7,60 - movq mm4,QWORD PTR 96[ebx] - por mm0,mm7 - movq QWORD PTR [edi-24],mm2 - psrlq mm2,4 - movq QWORD PTR 104[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-32],mm0 - psrlq mm5,4 - movq QWORD PTR 96[ebp],mm3 - shl edx,4 - mov BYTE PTR 14[esp],dl - mov edx,DWORD PTR 120[ebx] - movq mm0,QWORD PTR 120[ebx] - psllq mm6,60 - movq mm3,QWORD PTR 112[ebx] - por mm2,mm6 - movq QWORD PTR [edi-16],mm1 - psrlq mm1,4 - movq QWORD PTR 112[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-24],mm2 - psrlq mm4,4 - movq QWORD PTR 104[ebp],mm5 - shl edx,4 - mov BYTE PTR 15[esp],dl - psllq mm7,60 - por mm1,mm7 - movq QWORD PTR [edi-8],mm0 - psrlq mm0,4 - movq QWORD PTR 120[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-16],mm1 - psrlq mm3,4 - movq QWORD PTR 112[ebp],mm4 - psllq mm6,60 - por mm0,mm6 - movq QWORD PTR [ebp-8],mm0 - movq QWORD PTR 120[ebp],mm3 - movq mm6,QWORD PTR [eax] - mov ebx,DWORD PTR 8[eax] - mov edx,DWORD PTR 12[eax] -ALIGN 16 -$L009outer: - xor edx,DWORD PTR 12[ecx] - xor ebx,DWORD PTR 8[ecx] - pxor mm6,QWORD PTR [ecx] - lea ecx,DWORD PTR 16[ecx] - mov DWORD PTR 536[esp],ebx - movq QWORD PTR 528[esp],mm6 - mov DWORD PTR 548[esp],ecx - xor eax,eax - rol edx,8 - mov al,dl - mov ebp,eax - and al,15 - shr ebp,4 - pxor mm0,mm0 - rol edx,8 - pxor mm1,mm1 - pxor mm2,mm2 - movq mm7,QWORD PTR 16[eax*8+esp] - movq mm6,QWORD PTR 144[eax*8+esp] - mov al,dl - movd ebx,mm7 - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - shr edi,4 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 536[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr ebp,4 - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr edi,4 - pinsrw mm2,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr ebp,4 - pinsrw mm1,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 532[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr edi,4 - pinsrw mm0,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr ebp,4 - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 528[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr edi,4 - pinsrw mm2,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr ebp,4 - pinsrw mm1,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr edi,4 - pinsrw mm0,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 524[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - pxor mm6,QWORD PTR 144[eax*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - movzx ebx,bl - pxor mm2,mm2 - psllq mm1,4 - movd ecx,mm7 - psrlq mm7,4 - movq mm3,mm6 - psrlq mm6,4 - shl ecx,4 - pxor mm7,QWORD PTR 16[edi*8+esp] - psllq mm3,60 - movzx ecx,cl - pxor mm7,mm3 - pxor mm6,QWORD PTR 144[edi*8+esp] - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm6,mm1 - movd edx,mm7 - pinsrw mm2,WORD PTR [ecx*2+esi],3 - psllq mm0,12 - pxor mm6,mm0 - psrlq mm7,32 - pxor mm6,mm2 - mov ecx,DWORD PTR 548[esp] - movd ebx,mm7 - movq mm3,mm6 - psllw mm6,8 - psrlw mm3,8 - por mm6,mm3 - bswap edx - pshufw mm6,mm6,27 - bswap ebx - cmp ecx,DWORD PTR 552[esp] - jne $L009outer - mov eax,DWORD PTR 544[esp] - mov DWORD PTR 12[eax],edx - mov DWORD PTR 8[eax],ebx - movq QWORD PTR [eax],mm6 - mov esp,DWORD PTR 556[esp] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_4bit_mmx ENDP -ALIGN 16 -_gcm_init_clmul PROC PUBLIC -$L_gcm_init_clmul_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - call $L010pic -$L010pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L010pic)[ecx] - movdqu xmm2,XMMWORD PTR [eax] - pshufd xmm2,xmm2,78 - pshufd xmm4,xmm2,255 - movdqa xmm3,xmm2 - psllq xmm2,1 - pxor xmm5,xmm5 - psrlq xmm3,63 - pcmpgtd xmm5,xmm4 - pslldq xmm3,8 - por xmm2,xmm3 - pand xmm5,XMMWORD PTR 16[ecx] - pxor xmm2,xmm5 - movdqa xmm0,xmm2 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pshufd xmm4,xmm2,78 - pxor xmm3,xmm0 - pxor xmm4,xmm2 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm2,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm2 - movdqu XMMWORD PTR [edx],xmm2 - pxor xmm4,xmm0 - movdqu XMMWORD PTR 16[edx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR 32[edx],xmm4 - ret -_gcm_init_clmul ENDP -ALIGN 16 -_gcm_gmult_clmul PROC PUBLIC -$L_gcm_gmult_clmul_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - call $L011pic -$L011pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L011pic)[ecx] - movdqu xmm0,XMMWORD PTR [eax] - movdqa xmm5,XMMWORD PTR [ecx] - movups xmm2,XMMWORD PTR [edx] -DB 102,15,56,0,197 - movups xmm4,XMMWORD PTR 32[edx] - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,56,0,197 - movdqu XMMWORD PTR [eax],xmm0 - ret -_gcm_gmult_clmul ENDP -ALIGN 16 -_gcm_ghash_clmul PROC PUBLIC -$L_gcm_ghash_clmul_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - mov ebx,DWORD PTR 32[esp] - call $L012pic -$L012pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L012pic)[ecx] - movdqu xmm0,XMMWORD PTR [eax] - movdqa xmm5,XMMWORD PTR [ecx] - movdqu xmm2,XMMWORD PTR [edx] -DB 102,15,56,0,197 - sub ebx,16 - jz $L013odd_tail - movdqu xmm3,XMMWORD PTR [esi] - movdqu xmm6,XMMWORD PTR 16[esi] -DB 102,15,56,0,221 -DB 102,15,56,0,245 - movdqu xmm5,XMMWORD PTR 32[edx] - pxor xmm0,xmm3 - pshufd xmm3,xmm6,78 - movdqa xmm7,xmm6 - pxor xmm3,xmm6 - lea esi,DWORD PTR 32[esi] -DB 102,15,58,68,242,0 -DB 102,15,58,68,250,17 -DB 102,15,58,68,221,0 - movups xmm2,XMMWORD PTR 16[edx] - nop - sub ebx,32 - jbe $L014even_tail - jmp $L015mod_loop -ALIGN 32 -$L015mod_loop: - pshufd xmm4,xmm0,78 - movdqa xmm1,xmm0 - pxor xmm4,xmm0 - nop -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,229,16 - movups xmm2,XMMWORD PTR [edx] - xorps xmm0,xmm6 - movdqa xmm5,XMMWORD PTR [ecx] - xorps xmm1,xmm7 - movdqu xmm7,XMMWORD PTR [esi] - pxor xmm3,xmm0 - movdqu xmm6,XMMWORD PTR 16[esi] - pxor xmm3,xmm1 -DB 102,15,56,0,253 - pxor xmm4,xmm3 - movdqa xmm3,xmm4 - psrldq xmm4,8 - pslldq xmm3,8 - pxor xmm1,xmm4 - pxor xmm0,xmm3 -DB 102,15,56,0,245 - pxor xmm1,xmm7 - movdqa xmm7,xmm6 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 -DB 102,15,58,68,242,0 - movups xmm5,XMMWORD PTR 32[edx] - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - pshufd xmm3,xmm7,78 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm3,xmm7 - pxor xmm1,xmm4 -DB 102,15,58,68,250,17 - movups xmm2,XMMWORD PTR 16[edx] - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,58,68,221,0 - lea esi,DWORD PTR 32[esi] - sub ebx,32 - ja $L015mod_loop -$L014even_tail: - pshufd xmm4,xmm0,78 - movdqa xmm1,xmm0 - pxor xmm4,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,229,16 - movdqa xmm5,XMMWORD PTR [ecx] - xorps xmm0,xmm6 - xorps xmm1,xmm7 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - pxor xmm4,xmm3 - movdqa xmm3,xmm4 - psrldq xmm4,8 - pslldq xmm3,8 - pxor xmm1,xmm4 - pxor xmm0,xmm3 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - test ebx,ebx - jnz $L016done - movups xmm2,XMMWORD PTR [edx] -$L013odd_tail: - movdqu xmm3,XMMWORD PTR [esi] -DB 102,15,56,0,221 - pxor xmm0,xmm3 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pshufd xmm4,xmm2,78 - pxor xmm3,xmm0 - pxor xmm4,xmm2 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -$L016done: -DB 102,15,56,0,197 - movdqu XMMWORD PTR [eax],xmm0 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_clmul ENDP -ALIGN 64 -$Lbswap:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -ALIGN 64 -$Lrem_8bit:: -DW 0,450,900,582,1800,1738,1164,1358 -DW 3600,4050,3476,3158,2328,2266,2716,2910 -DW 7200,7650,8100,7782,6952,6890,6316,6510 -DW 4656,5106,4532,4214,5432,5370,5820,6014 -DW 14400,14722,15300,14854,16200,16010,15564,15630 -DW 13904,14226,13780,13334,12632,12442,13020,13086 -DW 9312,9634,10212,9766,9064,8874,8428,8494 -DW 10864,11186,10740,10294,11640,11450,12028,12094 -DW 28800,28994,29444,29382,30600,30282,29708,30158 -DW 32400,32594,32020,31958,31128,30810,31260,31710 -DW 27808,28002,28452,28390,27560,27242,26668,27118 -DW 25264,25458,24884,24822,26040,25722,26172,26622 -DW 18624,18690,19268,19078,20424,19978,19532,19854 -DW 18128,18194,17748,17558,16856,16410,16988,17310 -DW 21728,21794,22372,22182,21480,21034,20588,20910 -DW 23280,23346,22900,22710,24056,23610,24188,24510 -DW 57600,57538,57988,58182,58888,59338,58764,58446 -DW 61200,61138,60564,60758,59416,59866,60316,59998 -DW 64800,64738,65188,65382,64040,64490,63916,63598 -DW 62256,62194,61620,61814,62520,62970,63420,63102 -DW 55616,55426,56004,56070,56904,57226,56780,56334 -DW 55120,54930,54484,54550,53336,53658,54236,53790 -DW 50528,50338,50916,50982,49768,50090,49644,49198 -DW 52080,51890,51444,51510,52344,52666,53244,52798 -DW 37248,36930,37380,37830,38536,38730,38156,38094 -DW 40848,40530,39956,40406,39064,39258,39708,39646 -DW 36256,35938,36388,36838,35496,35690,35116,35054 -DW 33712,33394,32820,33270,33976,34170,34620,34558 -DW 43456,43010,43588,43910,44744,44810,44364,44174 -DW 42960,42514,42068,42390,41176,41242,41820,41630 -DW 46560,46114,46692,47014,45800,45866,45420,45230 -DW 48112,47666,47220,47542,48376,48442,49020,48830 -ALIGN 64 -$Lrem_4bit:: -DD 0,0,0,471859200 -DD 0,943718400,0,610271232 -DD 0,1887436800,0,1822425088 -DD 0,1220542464,0,1423966208 -DD 0,3774873600,0,4246732800 -DD 0,3644850176,0,3311403008 -DD 0,2441084928,0,2376073216 -DD 0,2847932416,0,3051356160 -DB 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -DB 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -DB 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -DB 0 -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm b/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm deleted file mode 100644 index 90ab38ab8a1f0a..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm +++ /dev/null @@ -1,388 +0,0 @@ -TITLE rc4-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_RC4 PROC PUBLIC -$L_RC4_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - xor ebx,ebx - cmp edx,0 - je $L000abort - mov al,BYTE PTR [edi] - mov bl,BYTE PTR 4[edi] - add edi,8 - lea ecx,DWORD PTR [edx*1+esi] - sub ebp,esi - mov DWORD PTR 24[esp],ecx - inc al - cmp DWORD PTR 256[edi],-1 - je $L001RC4_CHAR - mov ecx,DWORD PTR [eax*4+edi] - and edx,-4 - jz $L002loop1 - mov DWORD PTR 32[esp],ebp - test edx,-8 - jz $L003go4loop4 - lea ebp,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ebp],26 - jnc $L003go4loop4 - mov ebp,DWORD PTR 32[esp] - and edx,-8 - lea edx,DWORD PTR [edx*1+esi-8] - mov DWORD PTR [edi-4],edx - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - movq mm0,QWORD PTR [esi] - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] - jmp $L004loop_mmx_enter -ALIGN 16 -$L005loop_mmx: - add bl,cl - psllq mm1,56 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - movq mm0,QWORD PTR [esi] - movq QWORD PTR [esi*1+ebp-8],mm2 - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] -$L004loop_mmx_enter: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm0 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,8 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,16 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,24 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,32 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,40 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,48 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - mov edx,ebx - xor ebx,ebx - mov bl,dl - cmp esi,DWORD PTR [edi-4] - lea esi,DWORD PTR 8[esi] - jb $L005loop_mmx - psllq mm1,56 - pxor mm2,mm1 - movq QWORD PTR [esi*1+ebp-8],mm2 - emms - cmp esi,DWORD PTR 24[esp] - je $L006done - jmp $L002loop1 -ALIGN 16 -$L003go4loop4: - lea edx,DWORD PTR [edx*1+esi-4] - mov DWORD PTR 28[esp],edx -$L007loop4: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - mov ecx,DWORD PTR [eax*4+edi] - mov ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR [eax*4+edi] - or ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR [eax*4+edi] - or ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR 32[esp] - or ebp,DWORD PTR [edx*4+edi] - ror ebp,8 - xor ebp,DWORD PTR [esi] - cmp esi,DWORD PTR 28[esp] - mov DWORD PTR [esi*1+ecx],ebp - lea esi,DWORD PTR 4[esi] - mov ecx,DWORD PTR [eax*4+edi] - jb $L007loop4 - cmp esi,DWORD PTR 24[esp] - je $L006done - mov ebp,DWORD PTR 32[esp] -ALIGN 16 -$L002loop1: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - mov edx,DWORD PTR [edx*4+edi] - xor dl,BYTE PTR [esi] - lea esi,DWORD PTR 1[esi] - mov ecx,DWORD PTR [eax*4+edi] - cmp esi,DWORD PTR 24[esp] - mov BYTE PTR [esi*1+ebp-1],dl - jb $L002loop1 - jmp $L006done -ALIGN 16 -$L001RC4_CHAR: - movzx ecx,BYTE PTR [eax*1+edi] -$L008cloop1: - add bl,cl - movzx edx,BYTE PTR [ebx*1+edi] - mov BYTE PTR [ebx*1+edi],cl - mov BYTE PTR [eax*1+edi],dl - add dl,cl - movzx edx,BYTE PTR [edx*1+edi] - add al,1 - xor dl,BYTE PTR [esi] - lea esi,DWORD PTR 1[esi] - movzx ecx,BYTE PTR [eax*1+edi] - cmp esi,DWORD PTR 24[esp] - mov BYTE PTR [esi*1+ebp-1],dl - jb $L008cloop1 -$L006done: - dec al - mov DWORD PTR [edi-4],ebx - mov BYTE PTR [edi-8],al -$L000abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_RC4 ENDP -ALIGN 16 -_private_RC4_set_key PROC PUBLIC -$L_private_RC4_set_key_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - lea edx,DWORD PTR _OPENSSL_ia32cap_P - lea edi,DWORD PTR 8[edi] - lea esi,DWORD PTR [ebp*1+esi] - neg ebp - xor eax,eax - mov DWORD PTR [edi-4],ebp - bt DWORD PTR [edx],20 - jc $L009c1stloop -ALIGN 16 -$L010w1stloop: - mov DWORD PTR [eax*4+edi],eax - add al,1 - jnc $L010w1stloop - xor ecx,ecx - xor edx,edx -ALIGN 16 -$L011w2ndloop: - mov eax,DWORD PTR [ecx*4+edi] - add dl,BYTE PTR [ebp*1+esi] - add dl,al - add ebp,1 - mov ebx,DWORD PTR [edx*4+edi] - jnz $L012wnowrap - mov ebp,DWORD PTR [edi-4] -$L012wnowrap: - mov DWORD PTR [edx*4+edi],eax - mov DWORD PTR [ecx*4+edi],ebx - add cl,1 - jnc $L011w2ndloop - jmp $L013exit -ALIGN 16 -$L009c1stloop: - mov BYTE PTR [eax*1+edi],al - add al,1 - jnc $L009c1stloop - xor ecx,ecx - xor edx,edx - xor ebx,ebx -ALIGN 16 -$L014c2ndloop: - mov al,BYTE PTR [ecx*1+edi] - add dl,BYTE PTR [ebp*1+esi] - add dl,al - add ebp,1 - mov bl,BYTE PTR [edx*1+edi] - jnz $L015cnowrap - mov ebp,DWORD PTR [edi-4] -$L015cnowrap: - mov BYTE PTR [edx*1+edi],al - mov BYTE PTR [ecx*1+edi],bl - add cl,1 - jnc $L014c2ndloop - mov DWORD PTR 256[edi],-1 -$L013exit: - xor eax,eax - mov DWORD PTR [edi-8],eax - mov DWORD PTR [edi-4],eax - pop edi - pop esi - pop ebx - pop ebp - ret -_private_RC4_set_key ENDP -ALIGN 16 -_RC4_options PROC PUBLIC -$L_RC4_options_begin:: - call $L016pic_point -$L016pic_point: - pop eax - lea eax,DWORD PTR ($L017opts-$L016pic_point)[eax] - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov edx,DWORD PTR [edx] - bt edx,20 - jc $L0181xchar - bt edx,26 - jnc $L019ret - add eax,25 - ret -$L0181xchar: - add eax,12 -$L019ret: - ret -ALIGN 64 -$L017opts: -DB 114,99,52,40,52,120,44,105,110,116,41,0 -DB 114,99,52,40,49,120,44,99,104,97,114,41,0 -DB 114,99,52,40,56,120,44,109,109,120,41,0 -DB 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -ALIGN 64 -_RC4_options ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm b/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm deleted file mode 100644 index 9bcd60a0b9120c..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm +++ /dev/null @@ -1,1975 +0,0 @@ -TITLE ../openssl/crypto/ripemd/asm/rmd-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_ripemd160_block_asm_data_order PROC PUBLIC -$L_ripemd160_block_asm_data_order_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - push esi - mov ecx,DWORD PTR [edx] - push edi - mov esi,DWORD PTR 4[edx] - push ebp - mov edi,DWORD PTR 8[edx] - push ebx - sub esp,108 -$L000start: - ; - mov ebx,DWORD PTR [eax] - mov ebp,DWORD PTR 4[eax] - mov DWORD PTR [esp],ebx - mov DWORD PTR 4[esp],ebp - mov ebx,DWORD PTR 8[eax] - mov ebp,DWORD PTR 12[eax] - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ebp - mov ebx,DWORD PTR 16[eax] - mov ebp,DWORD PTR 20[eax] - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov ebx,DWORD PTR 24[eax] - mov ebp,DWORD PTR 28[eax] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ebp - mov ebx,DWORD PTR 32[eax] - mov ebp,DWORD PTR 36[eax] - mov DWORD PTR 32[esp],ebx - mov DWORD PTR 36[esp],ebp - mov ebx,DWORD PTR 40[eax] - mov ebp,DWORD PTR 44[eax] - mov DWORD PTR 40[esp],ebx - mov DWORD PTR 44[esp],ebp - mov ebx,DWORD PTR 48[eax] - mov ebp,DWORD PTR 52[eax] - mov DWORD PTR 48[esp],ebx - mov DWORD PTR 52[esp],ebp - mov ebx,DWORD PTR 56[eax] - mov ebp,DWORD PTR 60[eax] - mov DWORD PTR 56[esp],ebx - mov DWORD PTR 60[esp],ebp - mov eax,edi - mov ebx,DWORD PTR 12[edx] - mov ebp,DWORD PTR 16[edx] - ; 0 - xor eax,ebx - mov edx,DWORD PTR [esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,11 - add ecx,ebp - ; 1 - xor eax,edi - mov edx,DWORD PTR 4[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,14 - add ebp,ebx - ; 2 - mov edx,DWORD PTR 8[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,15 - add ebx,edi - ; 3 - xor eax,ecx - mov edx,DWORD PTR 12[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,12 - add edi,esi - ; 4 - mov edx,DWORD PTR 16[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,5 - add esi,ecx - ; 5 - xor eax,ebx - mov edx,DWORD PTR 20[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,8 - add ecx,ebp - ; 6 - mov edx,DWORD PTR 24[esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,7 - add ebp,ebx - ; 7 - xor eax,esi - mov edx,DWORD PTR 28[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,9 - add ebx,edi - ; 8 - mov edx,DWORD PTR 32[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,11 - add edi,esi - ; 9 - xor eax,ebp - mov edx,DWORD PTR 36[esp] - xor eax,edi - add esi,eax - mov eax,edi - rol ebx,10 - add esi,edx - xor eax,ebx - rol esi,13 - add esi,ecx - ; 10 - mov edx,DWORD PTR 40[esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,14 - add ecx,ebp - ; 11 - xor eax,edi - mov edx,DWORD PTR 44[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,15 - add ebp,ebx - ; 12 - mov edx,DWORD PTR 48[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,6 - add ebx,edi - ; 13 - xor eax,ecx - mov edx,DWORD PTR 52[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,7 - add edi,esi - ; 14 - mov edx,DWORD PTR 56[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,9 - add esi,ecx - ; 15 - xor eax,ebx - mov edx,DWORD PTR 60[esp] - xor eax,esi - add ecx,eax - mov eax,-1 - rol edi,10 - add ecx,edx - mov edx,DWORD PTR 28[esp] - rol ecx,8 - add ecx,ebp - ; 16 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 16[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - mov edx,-1 - rol ebp,7 - add ebp,ebx - ; 17 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 52[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,-1 - rol ebx,6 - add ebx,edi - ; 18 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 4[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,-1 - rol edi,8 - add edi,esi - ; 19 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 40[esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[eax*1+esi] - mov eax,-1 - rol esi,13 - add esi,ecx - ; 20 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[edx*1+ecx] - mov edx,-1 - rol ecx,11 - add ecx,ebp - ; 21 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 60[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - mov eax,-1 - rol ebp,9 - add ebp,ebx - ; 22 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[edx*1+ebx] - mov edx,-1 - rol ebx,7 - add ebx,edi - ; 23 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or eax,edx - mov edx,DWORD PTR 48[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[eax*1+edi] - mov eax,-1 - rol edi,15 - add edi,esi - ; 24 - add esi,edx - mov edx,ebx - sub eax,edi - and edx,edi - and eax,ebp - or edx,eax - mov eax,DWORD PTR [esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[edx*1+esi] - mov edx,-1 - rol esi,7 - add esi,ecx - ; 25 - add ecx,eax - mov eax,edi - sub edx,esi - and eax,esi - and edx,ebx - or eax,edx - mov edx,DWORD PTR 36[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[eax*1+ecx] - mov eax,-1 - rol ecx,12 - add ecx,ebp - ; 26 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 20[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - mov edx,-1 - rol ebp,15 - add ebp,ebx - ; 27 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 8[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,-1 - rol ebx,9 - add ebx,edi - ; 28 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,-1 - rol edi,11 - add edi,esi - ; 29 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 44[esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[eax*1+esi] - mov eax,-1 - rol esi,7 - add esi,ecx - ; 30 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 32[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[edx*1+ecx] - mov edx,-1 - rol ecx,13 - add ecx,ebp - ; 31 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - sub edx,ecx - rol ebp,12 - add ebp,ebx - ; 32 - mov eax,DWORD PTR 12[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[edx*1+ebx] - sub eax,ebp - rol ebx,11 - add ebx,edi - ; 33 - mov edx,DWORD PTR 40[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[eax*1+edi] - sub edx,ebx - rol edi,13 - add edi,esi - ; 34 - mov eax,DWORD PTR 56[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[edx*1+esi] - sub eax,edi - rol esi,6 - add esi,ecx - ; 35 - mov edx,DWORD PTR 16[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[eax*1+ecx] - sub edx,esi - rol ecx,7 - add ecx,ebp - ; 36 - mov eax,DWORD PTR 36[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[edx*1+ebp] - sub eax,ecx - rol ebp,14 - add ebp,ebx - ; 37 - mov edx,DWORD PTR 60[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - sub edx,ebp - rol ebx,9 - add ebx,edi - ; 38 - mov eax,DWORD PTR 32[esp] - or edx,ebx - add edi,eax - xor edx,ecx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[edx*1+edi] - sub eax,ebx - rol edi,13 - add edi,esi - ; 39 - mov edx,DWORD PTR 4[esp] - or eax,edi - add esi,edx - xor eax,ebp - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[eax*1+esi] - sub edx,edi - rol esi,15 - add esi,ecx - ; 40 - mov eax,DWORD PTR 8[esp] - or edx,esi - add ecx,eax - xor edx,ebx - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[edx*1+ecx] - sub eax,esi - rol ecx,14 - add ecx,ebp - ; 41 - mov edx,DWORD PTR 28[esp] - or eax,ecx - add ebp,edx - xor eax,edi - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[eax*1+ebp] - sub edx,ecx - rol ebp,8 - add ebp,ebx - ; 42 - mov eax,DWORD PTR [esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[edx*1+ebx] - sub eax,ebp - rol ebx,13 - add ebx,edi - ; 43 - mov edx,DWORD PTR 24[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[eax*1+edi] - sub edx,ebx - rol edi,6 - add edi,esi - ; 44 - mov eax,DWORD PTR 52[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[edx*1+esi] - sub eax,edi - rol esi,5 - add esi,ecx - ; 45 - mov edx,DWORD PTR 44[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[eax*1+ecx] - sub edx,esi - rol ecx,12 - add ecx,ebp - ; 46 - mov eax,DWORD PTR 20[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[edx*1+ebp] - sub eax,ecx - rol ebp,7 - add ebp,ebx - ; 47 - mov edx,DWORD PTR 48[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,ecx - rol ebx,5 - add ebx,edi - ; 48 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 4[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,11 - add edi,esi - ; 49 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,12 - add esi,ecx - ; 50 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 44[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,14 - add ecx,ebp - ; 51 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 40[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,15 - add ebp,ebx - ; 52 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR [esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,14 - add ebx,edi - ; 53 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 32[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,15 - add edi,esi - ; 54 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 48[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,9 - add esi,ecx - ; 55 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 16[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,8 - add ecx,ebp - ; 56 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 52[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,9 - add ebp,ebx - ; 57 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,14 - add ebx,edi - ; 58 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 28[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,5 - add edi,esi - ; 59 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 60[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,6 - add esi,ecx - ; 60 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 56[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,8 - add ecx,ebp - ; 61 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 20[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,6 - add ebp,ebx - ; 62 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,5 - add ebx,edi - ; 63 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 8[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - sub edx,ebp - rol edi,12 - add edi,esi - ; 64 - mov eax,DWORD PTR 16[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[edx*1+esi] - sub eax,ebx - rol esi,9 - add esi,ecx - ; 65 - mov edx,DWORD PTR [esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[eax*1+ecx] - sub edx,edi - rol ecx,15 - add ecx,ebp - ; 66 - mov eax,DWORD PTR 20[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[edx*1+ebp] - sub eax,esi - rol ebp,5 - add ebp,ebx - ; 67 - mov edx,DWORD PTR 36[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[eax*1+ebx] - sub edx,ecx - rol ebx,11 - add ebx,edi - ; 68 - mov eax,DWORD PTR 28[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[edx*1+edi] - sub eax,ebp - rol edi,6 - add edi,esi - ; 69 - mov edx,DWORD PTR 48[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[eax*1+esi] - sub edx,ebx - rol esi,8 - add esi,ecx - ; 70 - mov eax,DWORD PTR 8[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[edx*1+ecx] - sub eax,edi - rol ecx,13 - add ecx,ebp - ; 71 - mov edx,DWORD PTR 40[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[eax*1+ebp] - sub edx,esi - rol ebp,12 - add ebp,ebx - ; 72 - mov eax,DWORD PTR 56[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[edx*1+ebx] - sub eax,ecx - rol ebx,5 - add ebx,edi - ; 73 - mov edx,DWORD PTR 4[esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[eax*1+edi] - sub edx,ebp - rol edi,12 - add edi,esi - ; 74 - mov eax,DWORD PTR 12[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[edx*1+esi] - sub eax,ebx - rol esi,13 - add esi,ecx - ; 75 - mov edx,DWORD PTR 32[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[eax*1+ecx] - sub edx,edi - rol ecx,14 - add ecx,ebp - ; 76 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[edx*1+ebp] - sub eax,esi - rol ebp,11 - add ebp,ebx - ; 77 - mov edx,DWORD PTR 24[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[eax*1+ebx] - sub edx,ecx - rol ebx,8 - add ebx,edi - ; 78 - mov eax,DWORD PTR 60[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[edx*1+edi] - sub eax,ebp - rol edi,5 - add edi,esi - ; 79 - mov edx,DWORD PTR 52[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,DWORD PTR 128[esp] - rol ebx,10 - lea esi,DWORD PTR 2840853838[eax*1+esi] - mov DWORD PTR 64[esp],ecx - rol esi,6 - add esi,ecx - mov ecx,DWORD PTR [edx] - mov DWORD PTR 68[esp],esi - mov DWORD PTR 72[esp],edi - mov esi,DWORD PTR 4[edx] - mov DWORD PTR 76[esp],ebx - mov edi,DWORD PTR 8[edx] - mov DWORD PTR 80[esp],ebp - mov ebx,DWORD PTR 12[edx] - mov ebp,DWORD PTR 16[edx] - ; 80 - mov edx,-1 - sub edx,ebx - mov eax,DWORD PTR 20[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[edx*1+ecx] - sub eax,edi - rol ecx,8 - add ecx,ebp - ; 81 - mov edx,DWORD PTR 56[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[eax*1+ebp] - sub edx,esi - rol ebp,9 - add ebp,ebx - ; 82 - mov eax,DWORD PTR 28[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[edx*1+ebx] - sub eax,ecx - rol ebx,9 - add ebx,edi - ; 83 - mov edx,DWORD PTR [esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[eax*1+edi] - sub edx,ebp - rol edi,11 - add edi,esi - ; 84 - mov eax,DWORD PTR 36[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[edx*1+esi] - sub eax,ebx - rol esi,13 - add esi,ecx - ; 85 - mov edx,DWORD PTR 8[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[eax*1+ecx] - sub edx,edi - rol ecx,15 - add ecx,ebp - ; 86 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[edx*1+ebp] - sub eax,esi - rol ebp,15 - add ebp,ebx - ; 87 - mov edx,DWORD PTR 16[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[eax*1+ebx] - sub edx,ecx - rol ebx,5 - add ebx,edi - ; 88 - mov eax,DWORD PTR 52[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[edx*1+edi] - sub eax,ebp - rol edi,7 - add edi,esi - ; 89 - mov edx,DWORD PTR 24[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[eax*1+esi] - sub edx,ebx - rol esi,7 - add esi,ecx - ; 90 - mov eax,DWORD PTR 60[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[edx*1+ecx] - sub eax,edi - rol ecx,8 - add ecx,ebp - ; 91 - mov edx,DWORD PTR 32[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[eax*1+ebp] - sub edx,esi - rol ebp,11 - add ebp,ebx - ; 92 - mov eax,DWORD PTR 4[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[edx*1+ebx] - sub eax,ecx - rol ebx,14 - add ebx,edi - ; 93 - mov edx,DWORD PTR 40[esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[eax*1+edi] - sub edx,ebp - rol edi,14 - add edi,esi - ; 94 - mov eax,DWORD PTR 12[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[edx*1+esi] - sub eax,ebx - rol esi,12 - add esi,ecx - ; 95 - mov edx,DWORD PTR 48[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[eax*1+ecx] - mov eax,edi - rol ecx,6 - add ecx,ebp - ; 96 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 24[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,9 - add ebp,ebx - ; 97 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 44[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,13 - add ebx,edi - ; 98 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,15 - add edi,esi - ; 99 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 28[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,7 - add esi,ecx - ; 100 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR [esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,12 - add ecx,ebp - ; 101 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 52[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,8 - add ebp,ebx - ; 102 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 20[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,9 - add ebx,edi - ; 103 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 40[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,11 - add edi,esi - ; 104 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,7 - add esi,ecx - ; 105 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 60[esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,7 - add ecx,ebp - ; 106 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 32[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,12 - add ebp,ebx - ; 107 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 48[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,7 - add ebx,edi - ; 108 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 16[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,6 - add edi,esi - ; 109 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,15 - add esi,ecx - ; 110 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 4[esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,13 - add ecx,ebp - ; 111 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 8[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - sub edx,ecx - rol ebp,11 - add ebp,ebx - ; 112 - mov eax,DWORD PTR 60[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[edx*1+ebx] - sub eax,ebp - rol ebx,9 - add ebx,edi - ; 113 - mov edx,DWORD PTR 20[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[eax*1+edi] - sub edx,ebx - rol edi,7 - add edi,esi - ; 114 - mov eax,DWORD PTR 4[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[edx*1+esi] - sub eax,edi - rol esi,15 - add esi,ecx - ; 115 - mov edx,DWORD PTR 12[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[eax*1+ecx] - sub edx,esi - rol ecx,11 - add ecx,ebp - ; 116 - mov eax,DWORD PTR 28[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[edx*1+ebp] - sub eax,ecx - rol ebp,8 - add ebp,ebx - ; 117 - mov edx,DWORD PTR 56[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[eax*1+ebx] - sub edx,ebp - rol ebx,6 - add ebx,edi - ; 118 - mov eax,DWORD PTR 24[esp] - or edx,ebx - add edi,eax - xor edx,ecx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[edx*1+edi] - sub eax,ebx - rol edi,6 - add edi,esi - ; 119 - mov edx,DWORD PTR 36[esp] - or eax,edi - add esi,edx - xor eax,ebp - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[eax*1+esi] - sub edx,edi - rol esi,14 - add esi,ecx - ; 120 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ecx,eax - xor edx,ebx - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[edx*1+ecx] - sub eax,esi - rol ecx,12 - add ecx,ebp - ; 121 - mov edx,DWORD PTR 32[esp] - or eax,ecx - add ebp,edx - xor eax,edi - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[eax*1+ebp] - sub edx,ecx - rol ebp,13 - add ebp,ebx - ; 122 - mov eax,DWORD PTR 48[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[edx*1+ebx] - sub eax,ebp - rol ebx,5 - add ebx,edi - ; 123 - mov edx,DWORD PTR 8[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[eax*1+edi] - sub edx,ebx - rol edi,14 - add edi,esi - ; 124 - mov eax,DWORD PTR 40[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[edx*1+esi] - sub eax,edi - rol esi,13 - add esi,ecx - ; 125 - mov edx,DWORD PTR [esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[eax*1+ecx] - sub edx,esi - rol ecx,13 - add ecx,ebp - ; 126 - mov eax,DWORD PTR 16[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[edx*1+ebp] - sub eax,ecx - rol ebp,7 - add ebp,ebx - ; 127 - mov edx,DWORD PTR 52[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,DWORD PTR 32[esp] - rol ecx,10 - lea ebx,DWORD PTR 1836072691[eax*1+ebx] - mov eax,-1 - rol ebx,5 - add ebx,edi - ; 128 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - mov edx,-1 - rol edi,15 - add edi,esi - ; 129 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 16[esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[eax*1+esi] - mov eax,-1 - rol esi,5 - add esi,ecx - ; 130 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 4[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[edx*1+ecx] - mov edx,-1 - rol ecx,8 - add ecx,ebp - ; 131 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 12[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[eax*1+ebp] - mov eax,-1 - rol ebp,11 - add ebp,ebx - ; 132 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 44[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[edx*1+ebx] - mov edx,-1 - rol ebx,14 - add ebx,edi - ; 133 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or eax,edx - mov edx,DWORD PTR 60[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[eax*1+edi] - mov eax,-1 - rol edi,14 - add edi,esi - ; 134 - add esi,edx - mov edx,ebx - sub eax,edi - and edx,edi - and eax,ebp - or edx,eax - mov eax,DWORD PTR [esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[edx*1+esi] - mov edx,-1 - rol esi,6 - add esi,ecx - ; 135 - add ecx,eax - mov eax,edi - sub edx,esi - and eax,esi - and edx,ebx - or eax,edx - mov edx,DWORD PTR 20[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[eax*1+ecx] - mov eax,-1 - rol ecx,14 - add ecx,ebp - ; 136 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 48[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[edx*1+ebp] - mov edx,-1 - rol ebp,6 - add ebp,ebx - ; 137 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 8[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[eax*1+ebx] - mov eax,-1 - rol ebx,9 - add ebx,edi - ; 138 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 52[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - mov edx,-1 - rol edi,12 - add edi,esi - ; 139 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[eax*1+esi] - mov eax,-1 - rol esi,9 - add esi,ecx - ; 140 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 28[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[edx*1+ecx] - mov edx,-1 - rol ecx,12 - add ecx,ebp - ; 141 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 40[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[eax*1+ebp] - mov eax,-1 - rol ebp,5 - add ebp,ebx - ; 142 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[edx*1+ebx] - mov edx,-1 - rol ebx,15 - add ebx,edi - ; 143 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or edx,eax - mov eax,ebx - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - xor eax,ebp - rol edi,8 - add edi,esi - ; 144 - mov edx,DWORD PTR 48[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,8 - add esi,ecx - ; 145 - xor eax,ebx - mov edx,DWORD PTR 60[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,5 - add ecx,ebp - ; 146 - mov edx,DWORD PTR 40[esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,12 - add ebp,ebx - ; 147 - xor eax,esi - mov edx,DWORD PTR 16[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,9 - add ebx,edi - ; 148 - mov edx,DWORD PTR 4[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,12 - add edi,esi - ; 149 - xor eax,ebp - mov edx,DWORD PTR 20[esp] - xor eax,edi - add esi,eax - mov eax,edi - rol ebx,10 - add esi,edx - xor eax,ebx - rol esi,5 - add esi,ecx - ; 150 - mov edx,DWORD PTR 32[esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,14 - add ecx,ebp - ; 151 - xor eax,edi - mov edx,DWORD PTR 28[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,6 - add ebp,ebx - ; 152 - mov edx,DWORD PTR 24[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,8 - add ebx,edi - ; 153 - xor eax,ecx - mov edx,DWORD PTR 8[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,13 - add edi,esi - ; 154 - mov edx,DWORD PTR 52[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,6 - add esi,ecx - ; 155 - xor eax,ebx - mov edx,DWORD PTR 56[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,5 - add ecx,ebp - ; 156 - mov edx,DWORD PTR [esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,15 - add ebp,ebx - ; 157 - xor eax,esi - mov edx,DWORD PTR 12[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,13 - add ebx,edi - ; 158 - mov edx,DWORD PTR 36[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,11 - add edi,esi - ; 159 - xor eax,ebp - mov edx,DWORD PTR 44[esp] - xor eax,edi - add esi,eax - rol ebx,10 - add esi,edx - mov edx,DWORD PTR 128[esp] - rol esi,11 - add esi,ecx - mov eax,DWORD PTR 4[edx] - add ebx,eax - mov eax,DWORD PTR 72[esp] - add ebx,eax - mov eax,DWORD PTR 8[edx] - add ebp,eax - mov eax,DWORD PTR 76[esp] - add ebp,eax - mov eax,DWORD PTR 12[edx] - add ecx,eax - mov eax,DWORD PTR 80[esp] - add ecx,eax - mov eax,DWORD PTR 16[edx] - add esi,eax - mov eax,DWORD PTR 64[esp] - add esi,eax - mov eax,DWORD PTR [edx] - add edi,eax - mov eax,DWORD PTR 68[esp] - add edi,eax - mov eax,DWORD PTR 136[esp] - mov DWORD PTR [edx],ebx - mov DWORD PTR 4[edx],ebp - mov DWORD PTR 8[edx],ecx - sub eax,1 - mov DWORD PTR 12[edx],esi - mov DWORD PTR 16[edx],edi - jle $L001get_out - mov DWORD PTR 136[esp],eax - mov edi,ecx - mov eax,DWORD PTR 132[esp] - mov ecx,ebx - add eax,64 - mov esi,ebp - mov DWORD PTR 132[esp],eax - jmp $L000start -$L001get_out: - add esp,108 - pop ebx - pop ebp - pop edi - pop esi - ret -_ripemd160_block_asm_data_order ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm deleted file mode 100644 index 4607eda762a75a..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm +++ /dev/null @@ -1,3987 +0,0 @@ -TITLE sha1-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha1_block_data_order PROC PUBLIC -$L_sha1_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - call $L000pic_point -$L000pic_point: - pop ebp - lea esi,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LK_XX_XX-$L000pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - test edx,512 - jz $L001x86 - mov ecx,DWORD PTR 8[esi] - test eax,16777216 - jz $L001x86 - test ecx,536870912 - jnz $Lshaext_shortcut - and edx,268435456 - and eax,1073741824 - or eax,edx - cmp eax,1342177280 - je $Lavx_shortcut - jmp $Lssse3_shortcut -ALIGN 16 -$L001x86: - mov ebp,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - sub esp,76 - shl eax,6 - add eax,esi - mov DWORD PTR 104[esp],eax - mov edi,DWORD PTR 16[ebp] - jmp $L002loop -ALIGN 16 -$L002loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],edx - mov eax,DWORD PTR 32[esi] - mov ebx,DWORD PTR 36[esi] - mov ecx,DWORD PTR 40[esi] - mov edx,DWORD PTR 44[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edx - mov eax,DWORD PTR 48[esi] - mov ebx,DWORD PTR 52[esi] - mov ecx,DWORD PTR 56[esi] - mov edx,DWORD PTR 60[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 48[esp],eax - mov DWORD PTR 52[esp],ebx - mov DWORD PTR 56[esp],ecx - mov DWORD PTR 60[esp],edx - mov DWORD PTR 100[esp],esi - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 4[ebp] - mov ecx,DWORD PTR 8[ebp] - mov edx,DWORD PTR 12[ebp] - ; 00_15 0 - mov esi,ecx - mov ebp,eax - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR [esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 1 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 4[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 2 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 8[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 3 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 12[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - add ebp,ecx - ; 00_15 4 - mov ebx,edi - mov ecx,ebp - rol ebp,5 - xor ebx,esi - add ebp,eax - mov eax,DWORD PTR 16[esp] - and ebx,edx - ror edx,2 - xor ebx,esi - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - add ebp,ebx - ; 00_15 5 - mov eax,edx - mov ebx,ebp - rol ebp,5 - xor eax,edi - add ebp,esi - mov esi,DWORD PTR 20[esp] - and eax,ecx - ror ecx,2 - xor eax,edi - lea ebp,DWORD PTR 1518500249[esi*1+ebp] - add ebp,eax - ; 00_15 6 - mov esi,ecx - mov eax,ebp - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR 24[esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 7 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 28[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 8 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 32[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 9 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 36[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - add ebp,ecx - ; 00_15 10 - mov ebx,edi - mov ecx,ebp - rol ebp,5 - xor ebx,esi - add ebp,eax - mov eax,DWORD PTR 40[esp] - and ebx,edx - ror edx,2 - xor ebx,esi - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - add ebp,ebx - ; 00_15 11 - mov eax,edx - mov ebx,ebp - rol ebp,5 - xor eax,edi - add ebp,esi - mov esi,DWORD PTR 44[esp] - and eax,ecx - ror ecx,2 - xor eax,edi - lea ebp,DWORD PTR 1518500249[esi*1+ebp] - add ebp,eax - ; 00_15 12 - mov esi,ecx - mov eax,ebp - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR 48[esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 13 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 52[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 14 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 56[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 15 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 60[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - mov ebx,DWORD PTR [esp] - add ecx,ebp - ; 16_19 16 - mov ebp,edi - xor ebx,DWORD PTR 8[esp] - xor ebp,esi - xor ebx,DWORD PTR 32[esp] - and ebp,edx - xor ebx,DWORD PTR 52[esp] - rol ebx,1 - xor ebp,esi - add eax,ebp - mov ebp,ecx - ror edx,2 - mov DWORD PTR [esp],ebx - rol ebp,5 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,DWORD PTR 4[esp] - add ebx,ebp - ; 16_19 17 - mov ebp,edx - xor eax,DWORD PTR 12[esp] - xor ebp,edi - xor eax,DWORD PTR 36[esp] - and ebp,ecx - xor eax,DWORD PTR 56[esp] - rol eax,1 - xor ebp,edi - add esi,ebp - mov ebp,ebx - ror ecx,2 - mov DWORD PTR 4[esp],eax - rol ebp,5 - lea eax,DWORD PTR 1518500249[esi*1+eax] - mov esi,DWORD PTR 8[esp] - add eax,ebp - ; 16_19 18 - mov ebp,ecx - xor esi,DWORD PTR 16[esp] - xor ebp,edx - xor esi,DWORD PTR 40[esp] - and ebp,ebx - xor esi,DWORD PTR 60[esp] - rol esi,1 - xor ebp,edx - add edi,ebp - mov ebp,eax - ror ebx,2 - mov DWORD PTR 8[esp],esi - rol ebp,5 - lea esi,DWORD PTR 1518500249[edi*1+esi] - mov edi,DWORD PTR 12[esp] - add esi,ebp - ; 16_19 19 - mov ebp,ebx - xor edi,DWORD PTR 20[esp] - xor ebp,ecx - xor edi,DWORD PTR 44[esp] - and ebp,eax - xor edi,DWORD PTR [esp] - rol edi,1 - xor ebp,ecx - add edx,ebp - mov ebp,esi - ror eax,2 - mov DWORD PTR 12[esp],edi - rol ebp,5 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,DWORD PTR 16[esp] - add edi,ebp - ; 20_39 20 - mov ebp,esi - xor edx,DWORD PTR 24[esp] - xor ebp,eax - xor edx,DWORD PTR 48[esp] - xor ebp,ebx - xor edx,DWORD PTR 4[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp - ; 20_39 21 - mov ebp,edi - xor ecx,DWORD PTR 28[esp] - xor ebp,esi - xor ecx,DWORD PTR 52[esp] - xor ebp,eax - xor ecx,DWORD PTR 8[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp - ; 20_39 22 - mov ebp,edx - xor ebx,DWORD PTR 32[esp] - xor ebp,edi - xor ebx,DWORD PTR 56[esp] - xor ebp,esi - xor ebx,DWORD PTR 12[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp - ; 20_39 23 - mov ebp,ecx - xor eax,DWORD PTR 36[esp] - xor ebp,edx - xor eax,DWORD PTR 60[esp] - xor ebp,edi - xor eax,DWORD PTR 16[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp - ; 20_39 24 - mov ebp,ebx - xor esi,DWORD PTR 40[esp] - xor ebp,ecx - xor esi,DWORD PTR [esp] - xor ebp,edx - xor esi,DWORD PTR 20[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp - ; 20_39 25 - mov ebp,eax - xor edi,DWORD PTR 44[esp] - xor ebp,ebx - xor edi,DWORD PTR 4[esp] - xor ebp,ecx - xor edi,DWORD PTR 24[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp - ; 20_39 26 - mov ebp,esi - xor edx,DWORD PTR 48[esp] - xor ebp,eax - xor edx,DWORD PTR 8[esp] - xor ebp,ebx - xor edx,DWORD PTR 28[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp - ; 20_39 27 - mov ebp,edi - xor ecx,DWORD PTR 52[esp] - xor ebp,esi - xor ecx,DWORD PTR 12[esp] - xor ebp,eax - xor ecx,DWORD PTR 32[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp - ; 20_39 28 - mov ebp,edx - xor ebx,DWORD PTR 56[esp] - xor ebp,edi - xor ebx,DWORD PTR 16[esp] - xor ebp,esi - xor ebx,DWORD PTR 36[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp - ; 20_39 29 - mov ebp,ecx - xor eax,DWORD PTR 60[esp] - xor ebp,edx - xor eax,DWORD PTR 20[esp] - xor ebp,edi - xor eax,DWORD PTR 40[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 52[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp - ; 20_39 30 - mov ebp,ebx - xor esi,DWORD PTR [esp] - xor ebp,ecx - xor esi,DWORD PTR 24[esp] - xor ebp,edx - xor esi,DWORD PTR 44[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 56[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp - ; 20_39 31 - mov ebp,eax - xor edi,DWORD PTR 4[esp] - xor ebp,ebx - xor edi,DWORD PTR 28[esp] - xor ebp,ecx - xor edi,DWORD PTR 48[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 60[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR [esp] - add edi,ebp - ; 20_39 32 - mov ebp,esi - xor edx,DWORD PTR 8[esp] - xor ebp,eax - xor edx,DWORD PTR 32[esp] - xor ebp,ebx - xor edx,DWORD PTR 52[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR [esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 4[esp] - add edx,ebp - ; 20_39 33 - mov ebp,edi - xor ecx,DWORD PTR 12[esp] - xor ebp,esi - xor ecx,DWORD PTR 36[esp] - xor ebp,eax - xor ecx,DWORD PTR 56[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 4[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 8[esp] - add ecx,ebp - ; 20_39 34 - mov ebp,edx - xor ebx,DWORD PTR 16[esp] - xor ebp,edi - xor ebx,DWORD PTR 40[esp] - xor ebp,esi - xor ebx,DWORD PTR 60[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 8[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 12[esp] - add ebx,ebp - ; 20_39 35 - mov ebp,ecx - xor eax,DWORD PTR 20[esp] - xor ebp,edx - xor eax,DWORD PTR 44[esp] - xor ebp,edi - xor eax,DWORD PTR [esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 12[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 16[esp] - add eax,ebp - ; 20_39 36 - mov ebp,ebx - xor esi,DWORD PTR 24[esp] - xor ebp,ecx - xor esi,DWORD PTR 48[esp] - xor ebp,edx - xor esi,DWORD PTR 4[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 16[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 20[esp] - add esi,ebp - ; 20_39 37 - mov ebp,eax - xor edi,DWORD PTR 28[esp] - xor ebp,ebx - xor edi,DWORD PTR 52[esp] - xor ebp,ecx - xor edi,DWORD PTR 8[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 20[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 24[esp] - add edi,ebp - ; 20_39 38 - mov ebp,esi - xor edx,DWORD PTR 32[esp] - xor ebp,eax - xor edx,DWORD PTR 56[esp] - xor ebp,ebx - xor edx,DWORD PTR 12[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 24[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 28[esp] - add edx,ebp - ; 20_39 39 - mov ebp,edi - xor ecx,DWORD PTR 36[esp] - xor ebp,esi - xor ecx,DWORD PTR 60[esp] - xor ebp,eax - xor ecx,DWORD PTR 16[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 28[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 32[esp] - add ecx,ebp - ; 40_59 40 - mov ebp,edi - xor ebx,DWORD PTR 40[esp] - xor ebp,esi - xor ebx,DWORD PTR [esp] - and ebp,edx - xor ebx,DWORD PTR 20[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 32[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 36[esp] - add ebx,ebp - ; 40_59 41 - mov ebp,edx - xor eax,DWORD PTR 44[esp] - xor ebp,edi - xor eax,DWORD PTR 4[esp] - and ebp,ecx - xor eax,DWORD PTR 24[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 36[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 40[esp] - add eax,ebp - ; 40_59 42 - mov ebp,ecx - xor esi,DWORD PTR 48[esp] - xor ebp,edx - xor esi,DWORD PTR 8[esp] - and ebp,ebx - xor esi,DWORD PTR 28[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR 40[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 44[esp] - add esi,ebp - ; 40_59 43 - mov ebp,ebx - xor edi,DWORD PTR 52[esp] - xor ebp,ecx - xor edi,DWORD PTR 12[esp] - and ebp,eax - xor edi,DWORD PTR 32[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 44[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 48[esp] - add edi,ebp - ; 40_59 44 - mov ebp,eax - xor edx,DWORD PTR 56[esp] - xor ebp,ebx - xor edx,DWORD PTR 16[esp] - and ebp,esi - xor edx,DWORD PTR 36[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 48[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 52[esp] - add edx,ebp - ; 40_59 45 - mov ebp,esi - xor ecx,DWORD PTR 60[esp] - xor ebp,eax - xor ecx,DWORD PTR 20[esp] - and ebp,edi - xor ecx,DWORD PTR 40[esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 52[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 56[esp] - add ecx,ebp - ; 40_59 46 - mov ebp,edi - xor ebx,DWORD PTR [esp] - xor ebp,esi - xor ebx,DWORD PTR 24[esp] - and ebp,edx - xor ebx,DWORD PTR 44[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 56[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 60[esp] - add ebx,ebp - ; 40_59 47 - mov ebp,edx - xor eax,DWORD PTR 4[esp] - xor ebp,edi - xor eax,DWORD PTR 28[esp] - and ebp,ecx - xor eax,DWORD PTR 48[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 60[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR [esp] - add eax,ebp - ; 40_59 48 - mov ebp,ecx - xor esi,DWORD PTR 8[esp] - xor ebp,edx - xor esi,DWORD PTR 32[esp] - and ebp,ebx - xor esi,DWORD PTR 52[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR [esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 4[esp] - add esi,ebp - ; 40_59 49 - mov ebp,ebx - xor edi,DWORD PTR 12[esp] - xor ebp,ecx - xor edi,DWORD PTR 36[esp] - and ebp,eax - xor edi,DWORD PTR 56[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 4[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 8[esp] - add edi,ebp - ; 40_59 50 - mov ebp,eax - xor edx,DWORD PTR 16[esp] - xor ebp,ebx - xor edx,DWORD PTR 40[esp] - and ebp,esi - xor edx,DWORD PTR 60[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 8[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 12[esp] - add edx,ebp - ; 40_59 51 - mov ebp,esi - xor ecx,DWORD PTR 20[esp] - xor ebp,eax - xor ecx,DWORD PTR 44[esp] - and ebp,edi - xor ecx,DWORD PTR [esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 12[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 16[esp] - add ecx,ebp - ; 40_59 52 - mov ebp,edi - xor ebx,DWORD PTR 24[esp] - xor ebp,esi - xor ebx,DWORD PTR 48[esp] - and ebp,edx - xor ebx,DWORD PTR 4[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 16[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 20[esp] - add ebx,ebp - ; 40_59 53 - mov ebp,edx - xor eax,DWORD PTR 28[esp] - xor ebp,edi - xor eax,DWORD PTR 52[esp] - and ebp,ecx - xor eax,DWORD PTR 8[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 20[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 24[esp] - add eax,ebp - ; 40_59 54 - mov ebp,ecx - xor esi,DWORD PTR 32[esp] - xor ebp,edx - xor esi,DWORD PTR 56[esp] - and ebp,ebx - xor esi,DWORD PTR 12[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR 24[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 28[esp] - add esi,ebp - ; 40_59 55 - mov ebp,ebx - xor edi,DWORD PTR 36[esp] - xor ebp,ecx - xor edi,DWORD PTR 60[esp] - and ebp,eax - xor edi,DWORD PTR 16[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 28[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 32[esp] - add edi,ebp - ; 40_59 56 - mov ebp,eax - xor edx,DWORD PTR 40[esp] - xor ebp,ebx - xor edx,DWORD PTR [esp] - and ebp,esi - xor edx,DWORD PTR 20[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 32[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 36[esp] - add edx,ebp - ; 40_59 57 - mov ebp,esi - xor ecx,DWORD PTR 44[esp] - xor ebp,eax - xor ecx,DWORD PTR 4[esp] - and ebp,edi - xor ecx,DWORD PTR 24[esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 36[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 40[esp] - add ecx,ebp - ; 40_59 58 - mov ebp,edi - xor ebx,DWORD PTR 48[esp] - xor ebp,esi - xor ebx,DWORD PTR 8[esp] - and ebp,edx - xor ebx,DWORD PTR 28[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 40[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 44[esp] - add ebx,ebp - ; 40_59 59 - mov ebp,edx - xor eax,DWORD PTR 52[esp] - xor ebp,edi - xor eax,DWORD PTR 12[esp] - and ebp,ecx - xor eax,DWORD PTR 32[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 44[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 48[esp] - add eax,ebp - ; 20_39 60 - mov ebp,ebx - xor esi,DWORD PTR 56[esp] - xor ebp,ecx - xor esi,DWORD PTR 16[esp] - xor ebp,edx - xor esi,DWORD PTR 36[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 48[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 52[esp] - add esi,ebp - ; 20_39 61 - mov ebp,eax - xor edi,DWORD PTR 60[esp] - xor ebp,ebx - xor edi,DWORD PTR 20[esp] - xor ebp,ecx - xor edi,DWORD PTR 40[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 52[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 56[esp] - add edi,ebp - ; 20_39 62 - mov ebp,esi - xor edx,DWORD PTR [esp] - xor ebp,eax - xor edx,DWORD PTR 24[esp] - xor ebp,ebx - xor edx,DWORD PTR 44[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 56[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 60[esp] - add edx,ebp - ; 20_39 63 - mov ebp,edi - xor ecx,DWORD PTR 4[esp] - xor ebp,esi - xor ecx,DWORD PTR 28[esp] - xor ebp,eax - xor ecx,DWORD PTR 48[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 60[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR [esp] - add ecx,ebp - ; 20_39 64 - mov ebp,edx - xor ebx,DWORD PTR 8[esp] - xor ebp,edi - xor ebx,DWORD PTR 32[esp] - xor ebp,esi - xor ebx,DWORD PTR 52[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR [esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 4[esp] - add ebx,ebp - ; 20_39 65 - mov ebp,ecx - xor eax,DWORD PTR 12[esp] - xor ebp,edx - xor eax,DWORD PTR 36[esp] - xor ebp,edi - xor eax,DWORD PTR 56[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 4[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 8[esp] - add eax,ebp - ; 20_39 66 - mov ebp,ebx - xor esi,DWORD PTR 16[esp] - xor ebp,ecx - xor esi,DWORD PTR 40[esp] - xor ebp,edx - xor esi,DWORD PTR 60[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 8[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 12[esp] - add esi,ebp - ; 20_39 67 - mov ebp,eax - xor edi,DWORD PTR 20[esp] - xor ebp,ebx - xor edi,DWORD PTR 44[esp] - xor ebp,ecx - xor edi,DWORD PTR [esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 12[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 16[esp] - add edi,ebp - ; 20_39 68 - mov ebp,esi - xor edx,DWORD PTR 24[esp] - xor ebp,eax - xor edx,DWORD PTR 48[esp] - xor ebp,ebx - xor edx,DWORD PTR 4[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp - ; 20_39 69 - mov ebp,edi - xor ecx,DWORD PTR 28[esp] - xor ebp,esi - xor ecx,DWORD PTR 52[esp] - xor ebp,eax - xor ecx,DWORD PTR 8[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp - ; 20_39 70 - mov ebp,edx - xor ebx,DWORD PTR 32[esp] - xor ebp,edi - xor ebx,DWORD PTR 56[esp] - xor ebp,esi - xor ebx,DWORD PTR 12[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp - ; 20_39 71 - mov ebp,ecx - xor eax,DWORD PTR 36[esp] - xor ebp,edx - xor eax,DWORD PTR 60[esp] - xor ebp,edi - xor eax,DWORD PTR 16[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp - ; 20_39 72 - mov ebp,ebx - xor esi,DWORD PTR 40[esp] - xor ebp,ecx - xor esi,DWORD PTR [esp] - xor ebp,edx - xor esi,DWORD PTR 20[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp - ; 20_39 73 - mov ebp,eax - xor edi,DWORD PTR 44[esp] - xor ebp,ebx - xor edi,DWORD PTR 4[esp] - xor ebp,ecx - xor edi,DWORD PTR 24[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp - ; 20_39 74 - mov ebp,esi - xor edx,DWORD PTR 48[esp] - xor ebp,eax - xor edx,DWORD PTR 8[esp] - xor ebp,ebx - xor edx,DWORD PTR 28[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp - ; 20_39 75 - mov ebp,edi - xor ecx,DWORD PTR 52[esp] - xor ebp,esi - xor ecx,DWORD PTR 12[esp] - xor ebp,eax - xor ecx,DWORD PTR 32[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp - ; 20_39 76 - mov ebp,edx - xor ebx,DWORD PTR 56[esp] - xor ebp,edi - xor ebx,DWORD PTR 16[esp] - xor ebp,esi - xor ebx,DWORD PTR 36[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp - ; 20_39 77 - mov ebp,ecx - xor eax,DWORD PTR 60[esp] - xor ebp,edx - xor eax,DWORD PTR 20[esp] - xor ebp,edi - xor eax,DWORD PTR 40[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp - ; 20_39 78 - mov ebp,ebx - xor esi,DWORD PTR [esp] - xor ebp,ecx - xor esi,DWORD PTR 24[esp] - xor ebp,edx - xor esi,DWORD PTR 44[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp - ; 20_39 79 - mov ebp,eax - xor edi,DWORD PTR 4[esp] - xor ebp,ebx - xor edi,DWORD PTR 28[esp] - xor ebp,ecx - xor edi,DWORD PTR 48[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - lea edi,DWORD PTR 3395469782[edx*1+edi] - add edi,ebp - mov ebp,DWORD PTR 96[esp] - mov edx,DWORD PTR 100[esp] - add edi,DWORD PTR [ebp] - add esi,DWORD PTR 4[ebp] - add eax,DWORD PTR 8[ebp] - add ebx,DWORD PTR 12[ebp] - add ecx,DWORD PTR 16[ebp] - mov DWORD PTR [ebp],edi - add edx,64 - mov DWORD PTR 4[ebp],esi - cmp edx,DWORD PTR 104[esp] - mov DWORD PTR 8[ebp],eax - mov edi,ecx - mov DWORD PTR 12[ebp],ebx - mov esi,edx - mov DWORD PTR 16[ebp],ecx - jb $L002loop - add esp,76 - pop edi - pop esi - pop ebx - pop ebp - ret -_sha1_block_data_order ENDP -ALIGN 16 -__sha1_block_data_order_shaext PROC PRIVATE - push ebp - push ebx - push esi - push edi - call $L003pic_point -$L003pic_point: - pop ebp - lea ebp,DWORD PTR ($LK_XX_XX-$L003pic_point)[ebp] -$Lshaext_shortcut:: - mov edi,DWORD PTR 20[esp] - mov ebx,esp - mov esi,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - sub esp,32 - movdqu xmm0,XMMWORD PTR [edi] - movd xmm1,DWORD PTR 16[edi] - and esp,-32 - movdqa xmm3,XMMWORD PTR 80[ebp] - movdqu xmm4,XMMWORD PTR [esi] - pshufd xmm0,xmm0,27 - movdqu xmm5,XMMWORD PTR 16[esi] - pshufd xmm1,xmm1,27 - movdqu xmm6,XMMWORD PTR 32[esi] -DB 102,15,56,0,227 - movdqu xmm7,XMMWORD PTR 48[esi] -DB 102,15,56,0,235 -DB 102,15,56,0,243 -DB 102,15,56,0,251 - jmp $L004loop_shaext -ALIGN 16 -$L004loop_shaext: - dec ecx - lea eax,DWORD PTR 64[esi] - movdqa XMMWORD PTR [esp],xmm1 - paddd xmm1,xmm4 - cmovne esi,eax - movdqa XMMWORD PTR 16[esp],xmm0 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 - movdqu xmm4,XMMWORD PTR [esi] - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,213 - movdqu xmm5,XMMWORD PTR 16[esi] -DB 102,15,56,0,227 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,206 - movdqu xmm6,XMMWORD PTR 32[esi] -DB 102,15,56,0,235 - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,215 - movdqu xmm7,XMMWORD PTR 48[esi] -DB 102,15,56,0,243 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 - movdqa xmm2,XMMWORD PTR [esp] -DB 102,15,56,0,251 -DB 15,56,200,202 - paddd xmm0,XMMWORD PTR 16[esp] - jnz $L004loop_shaext - pshufd xmm0,xmm0,27 - pshufd xmm1,xmm1,27 - movdqu XMMWORD PTR [edi],xmm0 - movd DWORD PTR 16[edi],xmm1 - mov esp,ebx - pop edi - pop esi - pop ebx - pop ebp - ret -__sha1_block_data_order_shaext ENDP -ALIGN 16 -__sha1_block_data_order_ssse3 PROC PRIVATE - push ebp - push ebx - push esi - push edi - call $L005pic_point -$L005pic_point: - pop ebp - lea ebp,DWORD PTR ($LK_XX_XX-$L005pic_point)[ebp] -$Lssse3_shortcut:: - movdqa xmm7,XMMWORD PTR [ebp] - movdqa xmm0,XMMWORD PTR 16[ebp] - movdqa xmm1,XMMWORD PTR 32[ebp] - movdqa xmm2,XMMWORD PTR 48[ebp] - movdqa xmm6,XMMWORD PTR 64[ebp] - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - mov esi,esp - sub esp,208 - and esp,-64 - movdqa XMMWORD PTR 112[esp],xmm0 - movdqa XMMWORD PTR 128[esp],xmm1 - movdqa XMMWORD PTR 144[esp],xmm2 - shl edx,6 - movdqa XMMWORD PTR 160[esp],xmm7 - add edx,ebp - movdqa XMMWORD PTR 176[esp],xmm6 - add ebp,64 - mov DWORD PTR 192[esp],edi - mov DWORD PTR 196[esp],ebp - mov DWORD PTR 200[esp],edx - mov DWORD PTR 204[esp],esi - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov edi,DWORD PTR 16[edi] - mov esi,ebx - movdqu xmm0,XMMWORD PTR [ebp-64] - movdqu xmm1,XMMWORD PTR [ebp-48] - movdqu xmm2,XMMWORD PTR [ebp-32] - movdqu xmm3,XMMWORD PTR [ebp-16] -DB 102,15,56,0,198 -DB 102,15,56,0,206 -DB 102,15,56,0,214 - movdqa XMMWORD PTR 96[esp],xmm7 -DB 102,15,56,0,222 - paddd xmm0,xmm7 - paddd xmm1,xmm7 - paddd xmm2,xmm7 - movdqa XMMWORD PTR [esp],xmm0 - psubd xmm0,xmm7 - movdqa XMMWORD PTR 16[esp],xmm1 - psubd xmm1,xmm7 - movdqa XMMWORD PTR 32[esp],xmm2 - mov ebp,ecx - psubd xmm2,xmm7 - xor ebp,edx - pshufd xmm4,xmm0,238 - and esi,ebp - jmp $L006loop -ALIGN 16 -$L006loop: - ror ebx,2 - xor esi,edx - mov ebp,eax - punpcklqdq xmm4,xmm1 - movdqa xmm6,xmm3 - add edi,DWORD PTR [esp] - xor ebx,ecx - paddd xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm0 - rol eax,5 - add edi,esi - psrldq xmm6,4 - and ebp,ebx - xor ebx,ecx - pxor xmm4,xmm0 - add edi,eax - ror eax,7 - pxor xmm6,xmm2 - xor ebp,ecx - mov esi,edi - add edx,DWORD PTR 4[esp] - pxor xmm4,xmm6 - xor eax,ebx - rol edi,5 - movdqa XMMWORD PTR 48[esp],xmm7 - add edx,ebp - and esi,eax - movdqa xmm0,xmm4 - xor eax,ebx - add edx,edi - ror edi,7 - movdqa xmm6,xmm4 - xor esi,ebx - pslldq xmm0,12 - paddd xmm4,xmm4 - mov ebp,edx - add ecx,DWORD PTR 8[esp] - psrld xmm6,31 - xor edi,eax - rol edx,5 - movdqa xmm7,xmm0 - add ecx,esi - and ebp,edi - xor edi,eax - psrld xmm0,30 - add ecx,edx - ror edx,7 - por xmm4,xmm6 - xor ebp,eax - mov esi,ecx - add ebx,DWORD PTR 12[esp] - pslld xmm7,2 - xor edx,edi - rol ecx,5 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR 96[esp] - add ebx,ebp - and esi,edx - pxor xmm4,xmm7 - pshufd xmm5,xmm1,238 - xor edx,edi - add ebx,ecx - ror ecx,7 - xor esi,edi - mov ebp,ebx - punpcklqdq xmm5,xmm2 - movdqa xmm7,xmm4 - add eax,DWORD PTR 16[esp] - xor ecx,edx - paddd xmm0,xmm4 - movdqa XMMWORD PTR 80[esp],xmm1 - rol ebx,5 - add eax,esi - psrldq xmm7,4 - and ebp,ecx - xor ecx,edx - pxor xmm5,xmm1 - add eax,ebx - ror ebx,7 - pxor xmm7,xmm3 - xor ebp,edx - mov esi,eax - add edi,DWORD PTR 20[esp] - pxor xmm5,xmm7 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR [esp],xmm0 - add edi,ebp - and esi,ebx - movdqa xmm1,xmm5 - xor ebx,ecx - add edi,eax - ror eax,7 - movdqa xmm7,xmm5 - xor esi,ecx - pslldq xmm1,12 - paddd xmm5,xmm5 - mov ebp,edi - add edx,DWORD PTR 24[esp] - psrld xmm7,31 - xor eax,ebx - rol edi,5 - movdqa xmm0,xmm1 - add edx,esi - and ebp,eax - xor eax,ebx - psrld xmm1,30 - add edx,edi - ror edi,7 - por xmm5,xmm7 - xor ebp,ebx - mov esi,edx - add ecx,DWORD PTR 28[esp] - pslld xmm0,2 - xor edi,eax - rol edx,5 - pxor xmm5,xmm1 - movdqa xmm1,XMMWORD PTR 112[esp] - add ecx,ebp - and esi,edi - pxor xmm5,xmm0 - pshufd xmm6,xmm2,238 - xor edi,eax - add ecx,edx - ror edx,7 - xor esi,eax - mov ebp,ecx - punpcklqdq xmm6,xmm3 - movdqa xmm0,xmm5 - add ebx,DWORD PTR 32[esp] - xor edx,edi - paddd xmm1,xmm5 - movdqa XMMWORD PTR 96[esp],xmm2 - rol ecx,5 - add ebx,esi - psrldq xmm0,4 - and ebp,edx - xor edx,edi - pxor xmm6,xmm2 - add ebx,ecx - ror ecx,7 - pxor xmm0,xmm4 - xor ebp,edi - mov esi,ebx - add eax,DWORD PTR 36[esp] - pxor xmm6,xmm0 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR 16[esp],xmm1 - add eax,ebp - and esi,ecx - movdqa xmm2,xmm6 - xor ecx,edx - add eax,ebx - ror ebx,7 - movdqa xmm0,xmm6 - xor esi,edx - pslldq xmm2,12 - paddd xmm6,xmm6 - mov ebp,eax - add edi,DWORD PTR 40[esp] - psrld xmm0,31 - xor ebx,ecx - rol eax,5 - movdqa xmm1,xmm2 - add edi,esi - and ebp,ebx - xor ebx,ecx - psrld xmm2,30 - add edi,eax - ror eax,7 - por xmm6,xmm0 - xor ebp,ecx - movdqa xmm0,XMMWORD PTR 64[esp] - mov esi,edi - add edx,DWORD PTR 44[esp] - pslld xmm1,2 - xor eax,ebx - rol edi,5 - pxor xmm6,xmm2 - movdqa xmm2,XMMWORD PTR 112[esp] - add edx,ebp - and esi,eax - pxor xmm6,xmm1 - pshufd xmm7,xmm3,238 - xor eax,ebx - add edx,edi - ror edi,7 - xor esi,ebx - mov ebp,edx - punpcklqdq xmm7,xmm4 - movdqa xmm1,xmm6 - add ecx,DWORD PTR 48[esp] - xor edi,eax - paddd xmm2,xmm6 - movdqa XMMWORD PTR 64[esp],xmm3 - rol edx,5 - add ecx,esi - psrldq xmm1,4 - and ebp,edi - xor edi,eax - pxor xmm7,xmm3 - add ecx,edx - ror edx,7 - pxor xmm1,xmm5 - xor ebp,eax - mov esi,ecx - add ebx,DWORD PTR 52[esp] - pxor xmm7,xmm1 - xor edx,edi - rol ecx,5 - movdqa XMMWORD PTR 32[esp],xmm2 - add ebx,ebp - and esi,edx - movdqa xmm3,xmm7 - xor edx,edi - add ebx,ecx - ror ecx,7 - movdqa xmm1,xmm7 - xor esi,edi - pslldq xmm3,12 - paddd xmm7,xmm7 - mov ebp,ebx - add eax,DWORD PTR 56[esp] - psrld xmm1,31 - xor ecx,edx - rol ebx,5 - movdqa xmm2,xmm3 - add eax,esi - and ebp,ecx - xor ecx,edx - psrld xmm3,30 - add eax,ebx - ror ebx,7 - por xmm7,xmm1 - xor ebp,edx - movdqa xmm1,XMMWORD PTR 80[esp] - mov esi,eax - add edi,DWORD PTR 60[esp] - pslld xmm2,2 - xor ebx,ecx - rol eax,5 - pxor xmm7,xmm3 - movdqa xmm3,XMMWORD PTR 112[esp] - add edi,ebp - and esi,ebx - pxor xmm7,xmm2 - pshufd xmm2,xmm6,238 - xor ebx,ecx - add edi,eax - ror eax,7 - pxor xmm0,xmm4 - punpcklqdq xmm2,xmm7 - xor esi,ecx - mov ebp,edi - add edx,DWORD PTR [esp] - pxor xmm0,xmm1 - movdqa XMMWORD PTR 80[esp],xmm4 - xor eax,ebx - rol edi,5 - movdqa xmm4,xmm3 - add edx,esi - paddd xmm3,xmm7 - and ebp,eax - pxor xmm0,xmm2 - xor eax,ebx - add edx,edi - ror edi,7 - xor ebp,ebx - movdqa xmm2,xmm0 - movdqa XMMWORD PTR 48[esp],xmm3 - mov esi,edx - add ecx,DWORD PTR 4[esp] - xor edi,eax - rol edx,5 - pslld xmm0,2 - add ecx,ebp - and esi,edi - psrld xmm2,30 - xor edi,eax - add ecx,edx - ror edx,7 - xor esi,eax - mov ebp,ecx - add ebx,DWORD PTR 8[esp] - xor edx,edi - rol ecx,5 - por xmm0,xmm2 - add ebx,esi - and ebp,edx - movdqa xmm2,XMMWORD PTR 96[esp] - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 12[esp] - xor ebp,edi - mov esi,ebx - pshufd xmm3,xmm7,238 - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 16[esp] - pxor xmm1,xmm5 - punpcklqdq xmm3,xmm0 - xor esi,ecx - mov ebp,eax - rol eax,5 - pxor xmm1,xmm2 - movdqa XMMWORD PTR 96[esp],xmm5 - add edi,esi - xor ebp,ecx - movdqa xmm5,xmm4 - ror ebx,7 - paddd xmm4,xmm0 - add edi,eax - pxor xmm1,xmm3 - add edx,DWORD PTR 20[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - movdqa xmm3,xmm1 - movdqa XMMWORD PTR [esp],xmm4 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - pslld xmm1,2 - add ecx,DWORD PTR 24[esp] - xor esi,eax - psrld xmm3,30 - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - por xmm1,xmm3 - add ebx,DWORD PTR 28[esp] - xor ebp,edi - movdqa xmm3,XMMWORD PTR 64[esp] - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - pshufd xmm4,xmm0,238 - add ebx,ecx - add eax,DWORD PTR 32[esp] - pxor xmm2,xmm6 - punpcklqdq xmm4,xmm1 - xor esi,edx - mov ebp,ebx - rol ebx,5 - pxor xmm2,xmm3 - movdqa XMMWORD PTR 64[esp],xmm6 - add eax,esi - xor ebp,edx - movdqa xmm6,XMMWORD PTR 128[esp] - ror ecx,7 - paddd xmm5,xmm1 - add eax,ebx - pxor xmm2,xmm4 - add edi,DWORD PTR 36[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - movdqa xmm4,xmm2 - movdqa XMMWORD PTR 16[esp],xmm5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - pslld xmm2,2 - add edx,DWORD PTR 40[esp] - xor esi,ebx - psrld xmm4,30 - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - por xmm2,xmm4 - add ecx,DWORD PTR 44[esp] - xor ebp,eax - movdqa xmm4,XMMWORD PTR 80[esp] - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - pshufd xmm5,xmm1,238 - add ecx,edx - add ebx,DWORD PTR 48[esp] - pxor xmm3,xmm7 - punpcklqdq xmm5,xmm2 - xor esi,edi - mov ebp,ecx - rol ecx,5 - pxor xmm3,xmm4 - movdqa XMMWORD PTR 80[esp],xmm7 - add ebx,esi - xor ebp,edi - movdqa xmm7,xmm6 - ror edx,7 - paddd xmm6,xmm2 - add ebx,ecx - pxor xmm3,xmm5 - add eax,DWORD PTR 52[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - movdqa xmm5,xmm3 - movdqa XMMWORD PTR 32[esp],xmm6 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - pslld xmm3,2 - add edi,DWORD PTR 56[esp] - xor esi,ecx - psrld xmm5,30 - mov ebp,eax - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - por xmm3,xmm5 - add edx,DWORD PTR 60[esp] - xor ebp,ebx - movdqa xmm5,XMMWORD PTR 96[esp] - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - pshufd xmm6,xmm2,238 - add edx,edi - add ecx,DWORD PTR [esp] - pxor xmm4,xmm0 - punpcklqdq xmm6,xmm3 - xor esi,eax - mov ebp,edx - rol edx,5 - pxor xmm4,xmm5 - movdqa XMMWORD PTR 96[esp],xmm0 - add ecx,esi - xor ebp,eax - movdqa xmm0,xmm7 - ror edi,7 - paddd xmm7,xmm3 - add ecx,edx - pxor xmm4,xmm6 - add ebx,DWORD PTR 4[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - movdqa xmm6,xmm4 - movdqa XMMWORD PTR 48[esp],xmm7 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - pslld xmm4,2 - add eax,DWORD PTR 8[esp] - xor esi,edx - psrld xmm6,30 - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - por xmm4,xmm6 - add edi,DWORD PTR 12[esp] - xor ebp,ecx - movdqa xmm6,XMMWORD PTR 64[esp] - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - pshufd xmm7,xmm3,238 - add edi,eax - add edx,DWORD PTR 16[esp] - pxor xmm5,xmm1 - punpcklqdq xmm7,xmm4 - xor esi,ebx - mov ebp,edi - rol edi,5 - pxor xmm5,xmm6 - movdqa XMMWORD PTR 64[esp],xmm1 - add edx,esi - xor ebp,ebx - movdqa xmm1,xmm0 - ror eax,7 - paddd xmm0,xmm4 - add edx,edi - pxor xmm5,xmm7 - add ecx,DWORD PTR 20[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - movdqa xmm7,xmm5 - movdqa XMMWORD PTR [esp],xmm0 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - pslld xmm5,2 - add ebx,DWORD PTR 24[esp] - xor esi,edi - psrld xmm7,30 - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - por xmm5,xmm7 - add eax,DWORD PTR 28[esp] - movdqa xmm7,XMMWORD PTR 80[esp] - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - pshufd xmm0,xmm4,238 - add eax,ebp - xor esi,ecx - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 32[esp] - pxor xmm6,xmm2 - punpcklqdq xmm0,xmm5 - and esi,ecx - xor ecx,edx - ror ebx,7 - pxor xmm6,xmm7 - movdqa XMMWORD PTR 80[esp],xmm2 - mov ebp,eax - xor esi,ecx - rol eax,5 - movdqa xmm2,xmm1 - add edi,esi - paddd xmm1,xmm5 - xor ebp,ebx - pxor xmm6,xmm0 - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 36[esp] - and ebp,ebx - movdqa xmm0,xmm6 - movdqa XMMWORD PTR 16[esp],xmm1 - xor ebx,ecx - ror eax,7 - mov esi,edi - xor ebp,ebx - rol edi,5 - pslld xmm6,2 - add edx,ebp - xor esi,eax - psrld xmm0,30 - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 40[esp] - and esi,eax - xor eax,ebx - ror edi,7 - por xmm6,xmm0 - mov ebp,edx - xor esi,eax - movdqa xmm0,XMMWORD PTR 96[esp] - rol edx,5 - add ecx,esi - xor ebp,edi - xor edi,eax - add ecx,edx - pshufd xmm1,xmm5,238 - add ebx,DWORD PTR 44[esp] - and ebp,edi - xor edi,eax - ror edx,7 - mov esi,ecx - xor ebp,edi - rol ecx,5 - add ebx,ebp - xor esi,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 48[esp] - pxor xmm7,xmm3 - punpcklqdq xmm1,xmm6 - and esi,edx - xor edx,edi - ror ecx,7 - pxor xmm7,xmm0 - movdqa XMMWORD PTR 96[esp],xmm3 - mov ebp,ebx - xor esi,edx - rol ebx,5 - movdqa xmm3,XMMWORD PTR 144[esp] - add eax,esi - paddd xmm2,xmm6 - xor ebp,ecx - pxor xmm7,xmm1 - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 52[esp] - and ebp,ecx - movdqa xmm1,xmm7 - movdqa XMMWORD PTR 32[esp],xmm2 - xor ecx,edx - ror ebx,7 - mov esi,eax - xor ebp,ecx - rol eax,5 - pslld xmm7,2 - add edi,ebp - xor esi,ebx - psrld xmm1,30 - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 56[esp] - and esi,ebx - xor ebx,ecx - ror eax,7 - por xmm7,xmm1 - mov ebp,edi - xor esi,ebx - movdqa xmm1,XMMWORD PTR 64[esp] - rol edi,5 - add edx,esi - xor ebp,eax - xor eax,ebx - add edx,edi - pshufd xmm2,xmm6,238 - add ecx,DWORD PTR 60[esp] - and ebp,eax - xor eax,ebx - ror edi,7 - mov esi,edx - xor ebp,eax - rol edx,5 - add ecx,ebp - xor esi,edi - xor edi,eax - add ecx,edx - add ebx,DWORD PTR [esp] - pxor xmm0,xmm4 - punpcklqdq xmm2,xmm7 - and esi,edi - xor edi,eax - ror edx,7 - pxor xmm0,xmm1 - movdqa XMMWORD PTR 64[esp],xmm4 - mov ebp,ecx - xor esi,edi - rol ecx,5 - movdqa xmm4,xmm3 - add ebx,esi - paddd xmm3,xmm7 - xor ebp,edx - pxor xmm0,xmm2 - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 4[esp] - and ebp,edx - movdqa xmm2,xmm0 - movdqa XMMWORD PTR 48[esp],xmm3 - xor edx,edi - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - pslld xmm0,2 - add eax,ebp - xor esi,ecx - psrld xmm2,30 - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 8[esp] - and esi,ecx - xor ecx,edx - ror ebx,7 - por xmm0,xmm2 - mov ebp,eax - xor esi,ecx - movdqa xmm2,XMMWORD PTR 80[esp] - rol eax,5 - add edi,esi - xor ebp,ebx - xor ebx,ecx - add edi,eax - pshufd xmm3,xmm7,238 - add edx,DWORD PTR 12[esp] - and ebp,ebx - xor ebx,ecx - ror eax,7 - mov esi,edi - xor ebp,ebx - rol edi,5 - add edx,ebp - xor esi,eax - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 16[esp] - pxor xmm1,xmm5 - punpcklqdq xmm3,xmm0 - and esi,eax - xor eax,ebx - ror edi,7 - pxor xmm1,xmm2 - movdqa XMMWORD PTR 80[esp],xmm5 - mov ebp,edx - xor esi,eax - rol edx,5 - movdqa xmm5,xmm4 - add ecx,esi - paddd xmm4,xmm0 - xor ebp,edi - pxor xmm1,xmm3 - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 20[esp] - and ebp,edi - movdqa xmm3,xmm1 - movdqa XMMWORD PTR [esp],xmm4 - xor edi,eax - ror edx,7 - mov esi,ecx - xor ebp,edi - rol ecx,5 - pslld xmm1,2 - add ebx,ebp - xor esi,edx - psrld xmm3,30 - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 24[esp] - and esi,edx - xor edx,edi - ror ecx,7 - por xmm1,xmm3 - mov ebp,ebx - xor esi,edx - movdqa xmm3,XMMWORD PTR 96[esp] - rol ebx,5 - add eax,esi - xor ebp,ecx - xor ecx,edx - add eax,ebx - pshufd xmm4,xmm0,238 - add edi,DWORD PTR 28[esp] - and ebp,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor ebp,ecx - rol eax,5 - add edi,ebp - xor esi,ebx - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 32[esp] - pxor xmm2,xmm6 - punpcklqdq xmm4,xmm1 - and esi,ebx - xor ebx,ecx - ror eax,7 - pxor xmm2,xmm3 - movdqa XMMWORD PTR 96[esp],xmm6 - mov ebp,edi - xor esi,ebx - rol edi,5 - movdqa xmm6,xmm5 - add edx,esi - paddd xmm5,xmm1 - xor ebp,eax - pxor xmm2,xmm4 - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 36[esp] - and ebp,eax - movdqa xmm4,xmm2 - movdqa XMMWORD PTR 16[esp],xmm5 - xor eax,ebx - ror edi,7 - mov esi,edx - xor ebp,eax - rol edx,5 - pslld xmm2,2 - add ecx,ebp - xor esi,edi - psrld xmm4,30 - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 40[esp] - and esi,edi - xor edi,eax - ror edx,7 - por xmm2,xmm4 - mov ebp,ecx - xor esi,edi - movdqa xmm4,XMMWORD PTR 64[esp] - rol ecx,5 - add ebx,esi - xor ebp,edx - xor edx,edi - add ebx,ecx - pshufd xmm5,xmm1,238 - add eax,DWORD PTR 44[esp] - and ebp,edx - xor edx,edi - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - add eax,ebp - xor esi,edx - add eax,ebx - add edi,DWORD PTR 48[esp] - pxor xmm3,xmm7 - punpcklqdq xmm5,xmm2 - xor esi,ecx - mov ebp,eax - rol eax,5 - pxor xmm3,xmm4 - movdqa XMMWORD PTR 64[esp],xmm7 - add edi,esi - xor ebp,ecx - movdqa xmm7,xmm6 - ror ebx,7 - paddd xmm6,xmm2 - add edi,eax - pxor xmm3,xmm5 - add edx,DWORD PTR 52[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - movdqa xmm5,xmm3 - movdqa XMMWORD PTR 32[esp],xmm6 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - pslld xmm3,2 - add ecx,DWORD PTR 56[esp] - xor esi,eax - psrld xmm5,30 - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - por xmm3,xmm5 - add ebx,DWORD PTR 60[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR [esp] - xor esi,edx - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - paddd xmm7,xmm3 - add eax,ebx - add edi,DWORD PTR 4[esp] - xor ebp,ecx - mov esi,eax - movdqa XMMWORD PTR 48[esp],xmm7 - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 8[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 12[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - mov ebp,DWORD PTR 196[esp] - cmp ebp,DWORD PTR 200[esp] - je $L007done - movdqa xmm7,XMMWORD PTR 160[esp] - movdqa xmm6,XMMWORD PTR 176[esp] - movdqu xmm0,XMMWORD PTR [ebp] - movdqu xmm1,XMMWORD PTR 16[ebp] - movdqu xmm2,XMMWORD PTR 32[ebp] - movdqu xmm3,XMMWORD PTR 48[ebp] - add ebp,64 -DB 102,15,56,0,198 - mov DWORD PTR 196[esp],ebp - movdqa XMMWORD PTR 96[esp],xmm7 - add ebx,DWORD PTR 16[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 -DB 102,15,56,0,206 - add ebx,ecx - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - paddd xmm0,xmm7 - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - movdqa XMMWORD PTR [esp],xmm0 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - psubd xmm0,xmm7 - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 -DB 102,15,56,0,214 - add ecx,edx - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - paddd xmm1,xmm7 - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - movdqa XMMWORD PTR 16[esp],xmm1 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - psubd xmm1,xmm7 - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 -DB 102,15,56,0,222 - add edx,edi - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - paddd xmm2,xmm7 - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - movdqa XMMWORD PTR 32[esp],xmm2 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - psubd xmm2,xmm7 - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - ror ecx,7 - add eax,ebx - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov DWORD PTR 8[ebp],ecx - mov ebx,ecx - mov DWORD PTR 12[ebp],edx - xor ebx,edx - mov DWORD PTR 16[ebp],edi - mov ebp,esi - pshufd xmm4,xmm0,238 - and esi,ebx - mov ebx,ebp - jmp $L006loop -ALIGN 16 -$L007done: - add ebx,DWORD PTR 16[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - ror ecx,7 - add eax,ebx - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - mov esp,DWORD PTR 204[esp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov DWORD PTR 8[ebp],ecx - mov DWORD PTR 12[ebp],edx - mov DWORD PTR 16[ebp],edi - pop edi - pop esi - pop ebx - pop ebp - ret -__sha1_block_data_order_ssse3 ENDP -ALIGN 16 -__sha1_block_data_order_avx PROC PRIVATE - push ebp - push ebx - push esi - push edi - call $L008pic_point -$L008pic_point: - pop ebp - lea ebp,DWORD PTR ($LK_XX_XX-$L008pic_point)[ebp] -$Lavx_shortcut:: - vzeroall - vmovdqa xmm7,XMMWORD PTR [ebp] - vmovdqa xmm0,XMMWORD PTR 16[ebp] - vmovdqa xmm1,XMMWORD PTR 32[ebp] - vmovdqa xmm2,XMMWORD PTR 48[ebp] - vmovdqa xmm6,XMMWORD PTR 64[ebp] - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - mov esi,esp - sub esp,208 - and esp,-64 - vmovdqa XMMWORD PTR 112[esp],xmm0 - vmovdqa XMMWORD PTR 128[esp],xmm1 - vmovdqa XMMWORD PTR 144[esp],xmm2 - shl edx,6 - vmovdqa XMMWORD PTR 160[esp],xmm7 - add edx,ebp - vmovdqa XMMWORD PTR 176[esp],xmm6 - add ebp,64 - mov DWORD PTR 192[esp],edi - mov DWORD PTR 196[esp],ebp - mov DWORD PTR 200[esp],edx - mov DWORD PTR 204[esp],esi - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov edi,DWORD PTR 16[edi] - mov esi,ebx - vmovdqu xmm0,XMMWORD PTR [ebp-64] - vmovdqu xmm1,XMMWORD PTR [ebp-48] - vmovdqu xmm2,XMMWORD PTR [ebp-32] - vmovdqu xmm3,XMMWORD PTR [ebp-16] - vpshufb xmm0,xmm0,xmm6 - vpshufb xmm1,xmm1,xmm6 - vpshufb xmm2,xmm2,xmm6 - vmovdqa XMMWORD PTR 96[esp],xmm7 - vpshufb xmm3,xmm3,xmm6 - vpaddd xmm4,xmm0,xmm7 - vpaddd xmm5,xmm1,xmm7 - vpaddd xmm6,xmm2,xmm7 - vmovdqa XMMWORD PTR [esp],xmm4 - mov ebp,ecx - vmovdqa XMMWORD PTR 16[esp],xmm5 - xor ebp,edx - vmovdqa XMMWORD PTR 32[esp],xmm6 - and esi,ebp - jmp $L009loop -ALIGN 16 -$L009loop: - shrd ebx,ebx,2 - xor esi,edx - vpalignr xmm4,xmm1,xmm0,8 - mov ebp,eax - add edi,DWORD PTR [esp] - vpaddd xmm7,xmm7,xmm3 - vmovdqa XMMWORD PTR 64[esp],xmm0 - xor ebx,ecx - shld eax,eax,5 - vpsrldq xmm6,xmm3,4 - add edi,esi - and ebp,ebx - vpxor xmm4,xmm4,xmm0 - xor ebx,ecx - add edi,eax - vpxor xmm6,xmm6,xmm2 - shrd eax,eax,7 - xor ebp,ecx - vmovdqa XMMWORD PTR 48[esp],xmm7 - mov esi,edi - add edx,DWORD PTR 4[esp] - vpxor xmm4,xmm4,xmm6 - xor eax,ebx - shld edi,edi,5 - add edx,ebp - and esi,eax - vpsrld xmm6,xmm4,31 - xor eax,ebx - add edx,edi - shrd edi,edi,7 - xor esi,ebx - vpslldq xmm0,xmm4,12 - vpaddd xmm4,xmm4,xmm4 - mov ebp,edx - add ecx,DWORD PTR 8[esp] - xor edi,eax - shld edx,edx,5 - vpsrld xmm7,xmm0,30 - vpor xmm4,xmm4,xmm6 - add ecx,esi - and ebp,edi - xor edi,eax - add ecx,edx - vpslld xmm0,xmm0,2 - shrd edx,edx,7 - xor ebp,eax - vpxor xmm4,xmm4,xmm7 - mov esi,ecx - add ebx,DWORD PTR 12[esp] - xor edx,edi - shld ecx,ecx,5 - vpxor xmm4,xmm4,xmm0 - add ebx,ebp - and esi,edx - vmovdqa xmm0,XMMWORD PTR 96[esp] - xor edx,edi - add ebx,ecx - shrd ecx,ecx,7 - xor esi,edi - vpalignr xmm5,xmm2,xmm1,8 - mov ebp,ebx - add eax,DWORD PTR 16[esp] - vpaddd xmm0,xmm0,xmm4 - vmovdqa XMMWORD PTR 80[esp],xmm1 - xor ecx,edx - shld ebx,ebx,5 - vpsrldq xmm7,xmm4,4 - add eax,esi - and ebp,ecx - vpxor xmm5,xmm5,xmm1 - xor ecx,edx - add eax,ebx - vpxor xmm7,xmm7,xmm3 - shrd ebx,ebx,7 - xor ebp,edx - vmovdqa XMMWORD PTR [esp],xmm0 - mov esi,eax - add edi,DWORD PTR 20[esp] - vpxor xmm5,xmm5,xmm7 - xor ebx,ecx - shld eax,eax,5 - add edi,ebp - and esi,ebx - vpsrld xmm7,xmm5,31 - xor ebx,ecx - add edi,eax - shrd eax,eax,7 - xor esi,ecx - vpslldq xmm1,xmm5,12 - vpaddd xmm5,xmm5,xmm5 - mov ebp,edi - add edx,DWORD PTR 24[esp] - xor eax,ebx - shld edi,edi,5 - vpsrld xmm0,xmm1,30 - vpor xmm5,xmm5,xmm7 - add edx,esi - and ebp,eax - xor eax,ebx - add edx,edi - vpslld xmm1,xmm1,2 - shrd edi,edi,7 - xor ebp,ebx - vpxor xmm5,xmm5,xmm0 - mov esi,edx - add ecx,DWORD PTR 28[esp] - xor edi,eax - shld edx,edx,5 - vpxor xmm5,xmm5,xmm1 - add ecx,ebp - and esi,edi - vmovdqa xmm1,XMMWORD PTR 112[esp] - xor edi,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - vpalignr xmm6,xmm3,xmm2,8 - mov ebp,ecx - add ebx,DWORD PTR 32[esp] - vpaddd xmm1,xmm1,xmm5 - vmovdqa XMMWORD PTR 96[esp],xmm2 - xor edx,edi - shld ecx,ecx,5 - vpsrldq xmm0,xmm5,4 - add ebx,esi - and ebp,edx - vpxor xmm6,xmm6,xmm2 - xor edx,edi - add ebx,ecx - vpxor xmm0,xmm0,xmm4 - shrd ecx,ecx,7 - xor ebp,edi - vmovdqa XMMWORD PTR 16[esp],xmm1 - mov esi,ebx - add eax,DWORD PTR 36[esp] - vpxor xmm6,xmm6,xmm0 - xor ecx,edx - shld ebx,ebx,5 - add eax,ebp - and esi,ecx - vpsrld xmm0,xmm6,31 - xor ecx,edx - add eax,ebx - shrd ebx,ebx,7 - xor esi,edx - vpslldq xmm2,xmm6,12 - vpaddd xmm6,xmm6,xmm6 - mov ebp,eax - add edi,DWORD PTR 40[esp] - xor ebx,ecx - shld eax,eax,5 - vpsrld xmm1,xmm2,30 - vpor xmm6,xmm6,xmm0 - add edi,esi - and ebp,ebx - xor ebx,ecx - add edi,eax - vpslld xmm2,xmm2,2 - vmovdqa xmm0,XMMWORD PTR 64[esp] - shrd eax,eax,7 - xor ebp,ecx - vpxor xmm6,xmm6,xmm1 - mov esi,edi - add edx,DWORD PTR 44[esp] - xor eax,ebx - shld edi,edi,5 - vpxor xmm6,xmm6,xmm2 - add edx,ebp - and esi,eax - vmovdqa xmm2,XMMWORD PTR 112[esp] - xor eax,ebx - add edx,edi - shrd edi,edi,7 - xor esi,ebx - vpalignr xmm7,xmm4,xmm3,8 - mov ebp,edx - add ecx,DWORD PTR 48[esp] - vpaddd xmm2,xmm2,xmm6 - vmovdqa XMMWORD PTR 64[esp],xmm3 - xor edi,eax - shld edx,edx,5 - vpsrldq xmm1,xmm6,4 - add ecx,esi - and ebp,edi - vpxor xmm7,xmm7,xmm3 - xor edi,eax - add ecx,edx - vpxor xmm1,xmm1,xmm5 - shrd edx,edx,7 - xor ebp,eax - vmovdqa XMMWORD PTR 32[esp],xmm2 - mov esi,ecx - add ebx,DWORD PTR 52[esp] - vpxor xmm7,xmm7,xmm1 - xor edx,edi - shld ecx,ecx,5 - add ebx,ebp - and esi,edx - vpsrld xmm1,xmm7,31 - xor edx,edi - add ebx,ecx - shrd ecx,ecx,7 - xor esi,edi - vpslldq xmm3,xmm7,12 - vpaddd xmm7,xmm7,xmm7 - mov ebp,ebx - add eax,DWORD PTR 56[esp] - xor ecx,edx - shld ebx,ebx,5 - vpsrld xmm2,xmm3,30 - vpor xmm7,xmm7,xmm1 - add eax,esi - and ebp,ecx - xor ecx,edx - add eax,ebx - vpslld xmm3,xmm3,2 - vmovdqa xmm1,XMMWORD PTR 80[esp] - shrd ebx,ebx,7 - xor ebp,edx - vpxor xmm7,xmm7,xmm2 - mov esi,eax - add edi,DWORD PTR 60[esp] - xor ebx,ecx - shld eax,eax,5 - vpxor xmm7,xmm7,xmm3 - add edi,ebp - and esi,ebx - vmovdqa xmm3,XMMWORD PTR 112[esp] - xor ebx,ecx - add edi,eax - vpalignr xmm2,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - shrd eax,eax,7 - xor esi,ecx - mov ebp,edi - add edx,DWORD PTR [esp] - vpxor xmm0,xmm0,xmm1 - vmovdqa XMMWORD PTR 80[esp],xmm4 - xor eax,ebx - shld edi,edi,5 - vmovdqa xmm4,xmm3 - vpaddd xmm3,xmm3,xmm7 - add edx,esi - and ebp,eax - vpxor xmm0,xmm0,xmm2 - xor eax,ebx - add edx,edi - shrd edi,edi,7 - xor ebp,ebx - vpsrld xmm2,xmm0,30 - vmovdqa XMMWORD PTR 48[esp],xmm3 - mov esi,edx - add ecx,DWORD PTR 4[esp] - xor edi,eax - shld edx,edx,5 - vpslld xmm0,xmm0,2 - add ecx,ebp - and esi,edi - xor edi,eax - add ecx,edx - shrd edx,edx,7 - xor esi,eax - mov ebp,ecx - add ebx,DWORD PTR 8[esp] - vpor xmm0,xmm0,xmm2 - xor edx,edi - shld ecx,ecx,5 - vmovdqa xmm2,XMMWORD PTR 96[esp] - add ebx,esi - and ebp,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 12[esp] - xor ebp,edi - mov esi,ebx - shld ebx,ebx,5 - add eax,ebp - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpalignr xmm3,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add edi,DWORD PTR 16[esp] - xor esi,ecx - mov ebp,eax - shld eax,eax,5 - vpxor xmm1,xmm1,xmm2 - vmovdqa XMMWORD PTR 96[esp],xmm5 - add edi,esi - xor ebp,ecx - vmovdqa xmm5,xmm4 - vpaddd xmm4,xmm4,xmm0 - shrd ebx,ebx,7 - add edi,eax - vpxor xmm1,xmm1,xmm3 - add edx,DWORD PTR 20[esp] - xor ebp,ebx - mov esi,edi - shld edi,edi,5 - vpsrld xmm3,xmm1,30 - vmovdqa XMMWORD PTR [esp],xmm4 - add edx,ebp - xor esi,ebx - shrd eax,eax,7 - add edx,edi - vpslld xmm1,xmm1,2 - add ecx,DWORD PTR 24[esp] - xor esi,eax - mov ebp,edx - shld edx,edx,5 - add ecx,esi - xor ebp,eax - shrd edi,edi,7 - add ecx,edx - vpor xmm1,xmm1,xmm3 - add ebx,DWORD PTR 28[esp] - xor ebp,edi - vmovdqa xmm3,XMMWORD PTR 64[esp] - mov esi,ecx - shld ecx,ecx,5 - add ebx,ebp - xor esi,edi - shrd edx,edx,7 - add ebx,ecx - vpalignr xmm4,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add eax,DWORD PTR 32[esp] - xor esi,edx - mov ebp,ebx - shld ebx,ebx,5 - vpxor xmm2,xmm2,xmm3 - vmovdqa XMMWORD PTR 64[esp],xmm6 - add eax,esi - xor ebp,edx - vmovdqa xmm6,XMMWORD PTR 128[esp] - vpaddd xmm5,xmm5,xmm1 - shrd ecx,ecx,7 - add eax,ebx - vpxor xmm2,xmm2,xmm4 - add edi,DWORD PTR 36[esp] - xor ebp,ecx - mov esi,eax - shld eax,eax,5 - vpsrld xmm4,xmm2,30 - vmovdqa XMMWORD PTR 16[esp],xmm5 - add edi,ebp - xor esi,ecx - shrd ebx,ebx,7 - add edi,eax - vpslld xmm2,xmm2,2 - add edx,DWORD PTR 40[esp] - xor esi,ebx - mov ebp,edi - shld edi,edi,5 - add edx,esi - xor ebp,ebx - shrd eax,eax,7 - add edx,edi - vpor xmm2,xmm2,xmm4 - add ecx,DWORD PTR 44[esp] - xor ebp,eax - vmovdqa xmm4,XMMWORD PTR 80[esp] - mov esi,edx - shld edx,edx,5 - add ecx,ebp - xor esi,eax - shrd edi,edi,7 - add ecx,edx - vpalignr xmm5,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add ebx,DWORD PTR 48[esp] - xor esi,edi - mov ebp,ecx - shld ecx,ecx,5 - vpxor xmm3,xmm3,xmm4 - vmovdqa XMMWORD PTR 80[esp],xmm7 - add ebx,esi - xor ebp,edi - vmovdqa xmm7,xmm6 - vpaddd xmm6,xmm6,xmm2 - shrd edx,edx,7 - add ebx,ecx - vpxor xmm3,xmm3,xmm5 - add eax,DWORD PTR 52[esp] - xor ebp,edx - mov esi,ebx - shld ebx,ebx,5 - vpsrld xmm5,xmm3,30 - vmovdqa XMMWORD PTR 32[esp],xmm6 - add eax,ebp - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - vpslld xmm3,xmm3,2 - add edi,DWORD PTR 56[esp] - xor esi,ecx - mov ebp,eax - shld eax,eax,5 - add edi,esi - xor ebp,ecx - shrd ebx,ebx,7 - add edi,eax - vpor xmm3,xmm3,xmm5 - add edx,DWORD PTR 60[esp] - xor ebp,ebx - vmovdqa xmm5,XMMWORD PTR 96[esp] - mov esi,edi - shld edi,edi,5 - add edx,ebp - xor esi,ebx - shrd eax,eax,7 - add edx,edi - vpalignr xmm6,xmm3,xmm2,8 - vpxor xmm4,xmm4,xmm0 - add ecx,DWORD PTR [esp] - xor esi,eax - mov ebp,edx - shld edx,edx,5 - vpxor xmm4,xmm4,xmm5 - vmovdqa XMMWORD PTR 96[esp],xmm0 - add ecx,esi - xor ebp,eax - vmovdqa xmm0,xmm7 - vpaddd xmm7,xmm7,xmm3 - shrd edi,edi,7 - add ecx,edx - vpxor xmm4,xmm4,xmm6 - add ebx,DWORD PTR 4[esp] - xor ebp,edi - mov esi,ecx - shld ecx,ecx,5 - vpsrld xmm6,xmm4,30 - vmovdqa XMMWORD PTR 48[esp],xmm7 - add ebx,ebp - xor esi,edi - shrd edx,edx,7 - add ebx,ecx - vpslld xmm4,xmm4,2 - add eax,DWORD PTR 8[esp] - xor esi,edx - mov ebp,ebx - shld ebx,ebx,5 - add eax,esi - xor ebp,edx - shrd ecx,ecx,7 - add eax,ebx - vpor xmm4,xmm4,xmm6 - add edi,DWORD PTR 12[esp] - xor ebp,ecx - vmovdqa xmm6,XMMWORD PTR 64[esp] - mov esi,eax - shld eax,eax,5 - add edi,ebp - xor esi,ecx - shrd ebx,ebx,7 - add edi,eax - vpalignr xmm7,xmm4,xmm3,8 - vpxor xmm5,xmm5,xmm1 - add edx,DWORD PTR 16[esp] - xor esi,ebx - mov ebp,edi - shld edi,edi,5 - vpxor xmm5,xmm5,xmm6 - vmovdqa XMMWORD PTR 64[esp],xmm1 - add edx,esi - xor ebp,ebx - vmovdqa xmm1,xmm0 - vpaddd xmm0,xmm0,xmm4 - shrd eax,eax,7 - add edx,edi - vpxor xmm5,xmm5,xmm7 - add ecx,DWORD PTR 20[esp] - xor ebp,eax - mov esi,edx - shld edx,edx,5 - vpsrld xmm7,xmm5,30 - vmovdqa XMMWORD PTR [esp],xmm0 - add ecx,ebp - xor esi,eax - shrd edi,edi,7 - add ecx,edx - vpslld xmm5,xmm5,2 - add ebx,DWORD PTR 24[esp] - xor esi,edi - mov ebp,ecx - shld ecx,ecx,5 - add ebx,esi - xor ebp,edi - shrd edx,edx,7 - add ebx,ecx - vpor xmm5,xmm5,xmm7 - add eax,DWORD PTR 28[esp] - vmovdqa xmm7,XMMWORD PTR 80[esp] - shrd ecx,ecx,7 - mov esi,ebx - xor ebp,edx - shld ebx,ebx,5 - add eax,ebp - xor esi,ecx - xor ecx,edx - add eax,ebx - vpalignr xmm0,xmm5,xmm4,8 - vpxor xmm6,xmm6,xmm2 - add edi,DWORD PTR 32[esp] - and esi,ecx - xor ecx,edx - shrd ebx,ebx,7 - vpxor xmm6,xmm6,xmm7 - vmovdqa XMMWORD PTR 80[esp],xmm2 - mov ebp,eax - xor esi,ecx - vmovdqa xmm2,xmm1 - vpaddd xmm1,xmm1,xmm5 - shld eax,eax,5 - add edi,esi - vpxor xmm6,xmm6,xmm0 - xor ebp,ebx - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 36[esp] - vpsrld xmm0,xmm6,30 - vmovdqa XMMWORD PTR 16[esp],xmm1 - and ebp,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,edi - vpslld xmm6,xmm6,2 - xor ebp,ebx - shld edi,edi,5 - add edx,ebp - xor esi,eax - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 40[esp] - and esi,eax - vpor xmm6,xmm6,xmm0 - xor eax,ebx - shrd edi,edi,7 - vmovdqa xmm0,XMMWORD PTR 96[esp] - mov ebp,edx - xor esi,eax - shld edx,edx,5 - add ecx,esi - xor ebp,edi - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 44[esp] - and ebp,edi - xor edi,eax - shrd edx,edx,7 - mov esi,ecx - xor ebp,edi - shld ecx,ecx,5 - add ebx,ebp - xor esi,edx - xor edx,edi - add ebx,ecx - vpalignr xmm1,xmm6,xmm5,8 - vpxor xmm7,xmm7,xmm3 - add eax,DWORD PTR 48[esp] - and esi,edx - xor edx,edi - shrd ecx,ecx,7 - vpxor xmm7,xmm7,xmm0 - vmovdqa XMMWORD PTR 96[esp],xmm3 - mov ebp,ebx - xor esi,edx - vmovdqa xmm3,XMMWORD PTR 144[esp] - vpaddd xmm2,xmm2,xmm6 - shld ebx,ebx,5 - add eax,esi - vpxor xmm7,xmm7,xmm1 - xor ebp,ecx - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 52[esp] - vpsrld xmm1,xmm7,30 - vmovdqa XMMWORD PTR 32[esp],xmm2 - and ebp,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - vpslld xmm7,xmm7,2 - xor ebp,ecx - shld eax,eax,5 - add edi,ebp - xor esi,ebx - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 56[esp] - and esi,ebx - vpor xmm7,xmm7,xmm1 - xor ebx,ecx - shrd eax,eax,7 - vmovdqa xmm1,XMMWORD PTR 64[esp] - mov ebp,edi - xor esi,ebx - shld edi,edi,5 - add edx,esi - xor ebp,eax - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 60[esp] - and ebp,eax - xor eax,ebx - shrd edi,edi,7 - mov esi,edx - xor ebp,eax - shld edx,edx,5 - add ecx,ebp - xor esi,edi - xor edi,eax - add ecx,edx - vpalignr xmm2,xmm7,xmm6,8 - vpxor xmm0,xmm0,xmm4 - add ebx,DWORD PTR [esp] - and esi,edi - xor edi,eax - shrd edx,edx,7 - vpxor xmm0,xmm0,xmm1 - vmovdqa XMMWORD PTR 64[esp],xmm4 - mov ebp,ecx - xor esi,edi - vmovdqa xmm4,xmm3 - vpaddd xmm3,xmm3,xmm7 - shld ecx,ecx,5 - add ebx,esi - vpxor xmm0,xmm0,xmm2 - xor ebp,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 4[esp] - vpsrld xmm2,xmm0,30 - vmovdqa XMMWORD PTR 48[esp],xmm3 - and ebp,edx - xor edx,edi - shrd ecx,ecx,7 - mov esi,ebx - vpslld xmm0,xmm0,2 - xor ebp,edx - shld ebx,ebx,5 - add eax,ebp - xor esi,ecx - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 8[esp] - and esi,ecx - vpor xmm0,xmm0,xmm2 - xor ecx,edx - shrd ebx,ebx,7 - vmovdqa xmm2,XMMWORD PTR 80[esp] - mov ebp,eax - xor esi,ecx - shld eax,eax,5 - add edi,esi - xor ebp,ebx - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 12[esp] - and ebp,ebx - xor ebx,ecx - shrd eax,eax,7 - mov esi,edi - xor ebp,ebx - shld edi,edi,5 - add edx,ebp - xor esi,eax - xor eax,ebx - add edx,edi - vpalignr xmm3,xmm0,xmm7,8 - vpxor xmm1,xmm1,xmm5 - add ecx,DWORD PTR 16[esp] - and esi,eax - xor eax,ebx - shrd edi,edi,7 - vpxor xmm1,xmm1,xmm2 - vmovdqa XMMWORD PTR 80[esp],xmm5 - mov ebp,edx - xor esi,eax - vmovdqa xmm5,xmm4 - vpaddd xmm4,xmm4,xmm0 - shld edx,edx,5 - add ecx,esi - vpxor xmm1,xmm1,xmm3 - xor ebp,edi - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 20[esp] - vpsrld xmm3,xmm1,30 - vmovdqa XMMWORD PTR [esp],xmm4 - and ebp,edi - xor edi,eax - shrd edx,edx,7 - mov esi,ecx - vpslld xmm1,xmm1,2 - xor ebp,edi - shld ecx,ecx,5 - add ebx,ebp - xor esi,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 24[esp] - and esi,edx - vpor xmm1,xmm1,xmm3 - xor edx,edi - shrd ecx,ecx,7 - vmovdqa xmm3,XMMWORD PTR 96[esp] - mov ebp,ebx - xor esi,edx - shld ebx,ebx,5 - add eax,esi - xor ebp,ecx - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 28[esp] - and ebp,ecx - xor ecx,edx - shrd ebx,ebx,7 - mov esi,eax - xor ebp,ecx - shld eax,eax,5 - add edi,ebp - xor esi,ebx - xor ebx,ecx - add edi,eax - vpalignr xmm4,xmm1,xmm0,8 - vpxor xmm2,xmm2,xmm6 - add edx,DWORD PTR 32[esp] - and esi,ebx - xor ebx,ecx - shrd eax,eax,7 - vpxor xmm2,xmm2,xmm3 - vmovdqa XMMWORD PTR 96[esp],xmm6 - mov ebp,edi - xor esi,ebx - vmovdqa xmm6,xmm5 - vpaddd xmm5,xmm5,xmm1 - shld edi,edi,5 - add edx,esi - vpxor xmm2,xmm2,xmm4 - xor ebp,eax - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 36[esp] - vpsrld xmm4,xmm2,30 - vmovdqa XMMWORD PTR 16[esp],xmm5 - and ebp,eax - xor eax,ebx - shrd edi,edi,7 - mov esi,edx - vpslld xmm2,xmm2,2 - xor ebp,eax - shld edx,edx,5 - add ecx,ebp - xor esi,edi - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 40[esp] - and esi,edi - vpor xmm2,xmm2,xmm4 - xor edi,eax - shrd edx,edx,7 - vmovdqa xmm4,XMMWORD PTR 64[esp] - mov ebp,ecx - xor esi,edi - shld ecx,ecx,5 - add ebx,esi - xor ebp,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 44[esp] - and ebp,edx - xor edx,edi - shrd ecx,ecx,7 - mov esi,ebx - xor ebp,edx - shld ebx,ebx,5 - add eax,ebp - xor esi,edx - add eax,ebx - vpalignr xmm5,xmm2,xmm1,8 - vpxor xmm3,xmm3,xmm7 - add edi,DWORD PTR 48[esp] - xor esi,ecx - mov ebp,eax - shld eax,eax,5 - vpxor xmm3,xmm3,xmm4 - vmovdqa XMMWORD PTR 64[esp],xmm7 - add edi,esi - xor ebp,ecx - vmovdqa xmm7,xmm6 - vpaddd xmm6,xmm6,xmm2 - shrd ebx,ebx,7 - add edi,eax - vpxor xmm3,xmm3,xmm5 - add edx,DWORD PTR 52[esp] - xor ebp,ebx - mov esi,edi - shld edi,edi,5 - vpsrld xmm5,xmm3,30 - vmovdqa XMMWORD PTR 32[esp],xmm6 - add edx,ebp - xor esi,ebx - shrd eax,eax,7 - add edx,edi - vpslld xmm3,xmm3,2 - add ecx,DWORD PTR 56[esp] - xor esi,eax - mov ebp,edx - shld edx,edx,5 - add ecx,esi - xor ebp,eax - shrd edi,edi,7 - add ecx,edx - vpor xmm3,xmm3,xmm5 - add ebx,DWORD PTR 60[esp] - xor ebp,edi - mov esi,ecx - shld ecx,ecx,5 - add ebx,ebp - xor esi,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR [esp] - vpaddd xmm7,xmm7,xmm3 - xor esi,edx - mov ebp,ebx - shld ebx,ebx,5 - add eax,esi - vmovdqa XMMWORD PTR 48[esp],xmm7 - xor ebp,edx - shrd ecx,ecx,7 - add eax,ebx - add edi,DWORD PTR 4[esp] - xor ebp,ecx - mov esi,eax - shld eax,eax,5 - add edi,ebp - xor esi,ecx - shrd ebx,ebx,7 - add edi,eax - add edx,DWORD PTR 8[esp] - xor esi,ebx - mov ebp,edi - shld edi,edi,5 - add edx,esi - xor ebp,ebx - shrd eax,eax,7 - add edx,edi - add ecx,DWORD PTR 12[esp] - xor ebp,eax - mov esi,edx - shld edx,edx,5 - add ecx,ebp - xor esi,eax - shrd edi,edi,7 - add ecx,edx - mov ebp,DWORD PTR 196[esp] - cmp ebp,DWORD PTR 200[esp] - je $L010done - vmovdqa xmm7,XMMWORD PTR 160[esp] - vmovdqa xmm6,XMMWORD PTR 176[esp] - vmovdqu xmm0,XMMWORD PTR [ebp] - vmovdqu xmm1,XMMWORD PTR 16[ebp] - vmovdqu xmm2,XMMWORD PTR 32[ebp] - vmovdqu xmm3,XMMWORD PTR 48[ebp] - add ebp,64 - vpshufb xmm0,xmm0,xmm6 - mov DWORD PTR 196[esp],ebp - vmovdqa XMMWORD PTR 96[esp],xmm7 - add ebx,DWORD PTR 16[esp] - xor esi,edi - vpshufb xmm1,xmm1,xmm6 - mov ebp,ecx - shld ecx,ecx,5 - vpaddd xmm4,xmm0,xmm7 - add ebx,esi - xor ebp,edi - shrd edx,edx,7 - add ebx,ecx - vmovdqa XMMWORD PTR [esp],xmm4 - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,ebp - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - shld eax,eax,5 - add edi,esi - xor ebp,ecx - shrd ebx,ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - shld edi,edi,5 - add edx,ebp - xor esi,ebx - shrd eax,eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - vpshufb xmm2,xmm2,xmm6 - mov ebp,edx - shld edx,edx,5 - vpaddd xmm5,xmm1,xmm7 - add ecx,esi - xor ebp,eax - shrd edi,edi,7 - add ecx,edx - vmovdqa XMMWORD PTR 16[esp],xmm5 - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - shld ecx,ecx,5 - add ebx,ebp - xor esi,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - shld ebx,ebx,5 - add eax,esi - xor ebp,edx - shrd ecx,ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - shld eax,eax,5 - add edi,ebp - xor esi,ecx - shrd ebx,ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - vpshufb xmm3,xmm3,xmm6 - mov ebp,edi - shld edi,edi,5 - vpaddd xmm6,xmm2,xmm7 - add edx,esi - xor ebp,ebx - shrd eax,eax,7 - add edx,edi - vmovdqa XMMWORD PTR 32[esp],xmm6 - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - shld edx,edx,5 - add ecx,ebp - xor esi,eax - shrd edi,edi,7 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - shld ecx,ecx,5 - add ebx,esi - xor ebp,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,ebp - shrd ecx,ecx,7 - add eax,ebx - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov ebx,ecx - mov DWORD PTR 8[ebp],ecx - xor ebx,edx - mov DWORD PTR 12[ebp],edx - mov DWORD PTR 16[ebp],edi - mov ebp,esi - and esi,ebx - mov ebx,ebp - jmp $L009loop -ALIGN 16 -$L010done: - add ebx,DWORD PTR 16[esp] - xor esi,edi - mov ebp,ecx - shld ecx,ecx,5 - add ebx,esi - xor ebp,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,ebp - xor esi,edx - shrd ecx,ecx,7 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - shld eax,eax,5 - add edi,esi - xor ebp,ecx - shrd ebx,ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - shld edi,edi,5 - add edx,ebp - xor esi,ebx - shrd eax,eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - mov ebp,edx - shld edx,edx,5 - add ecx,esi - xor ebp,eax - shrd edi,edi,7 - add ecx,edx - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - shld ecx,ecx,5 - add ebx,ebp - xor esi,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - shld ebx,ebx,5 - add eax,esi - xor ebp,edx - shrd ecx,ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - shld eax,eax,5 - add edi,ebp - xor esi,ecx - shrd ebx,ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - mov ebp,edi - shld edi,edi,5 - add edx,esi - xor ebp,ebx - shrd eax,eax,7 - add edx,edi - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - shld edx,edx,5 - add ecx,ebp - xor esi,eax - shrd edi,edi,7 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - shld ecx,ecx,5 - add ebx,esi - xor ebp,edi - shrd edx,edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - shld ebx,ebx,5 - add eax,ebp - shrd ecx,ecx,7 - add eax,ebx - vzeroall - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - mov esp,DWORD PTR 204[esp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov DWORD PTR 8[ebp],ecx - mov DWORD PTR 12[ebp],edx - mov DWORD PTR 16[ebp],edi - pop edi - pop esi - pop ebx - pop ebp - ret -__sha1_block_data_order_avx ENDP -ALIGN 64 -$LK_XX_XX:: -DD 1518500249,1518500249,1518500249,1518500249 -DD 1859775393,1859775393,1859775393,1859775393 -DD 2400959708,2400959708,2400959708,2400959708 -DD 3395469782,3395469782,3395469782,3395469782 -DD 66051,67438087,134810123,202182159 -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -DB 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -DB 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -DB 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm deleted file mode 100644 index d184877bb717a2..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm +++ /dev/null @@ -1,6818 +0,0 @@ -TITLE sha512-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha256_block_data_order PROC PUBLIC -$L_sha256_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov ebx,esp - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001K256-$L000pic_point)[ebp] - sub esp,16 - and esp,-64 - shl eax,6 - add eax,edi - mov DWORD PTR [esp],esi - mov DWORD PTR 4[esp],edi - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - test ecx,1048576 - jnz $L002loop - mov edx,DWORD PTR 8[edx] - test ecx,16777216 - jz $L003no_xmm - and ecx,1073741824 - and ebx,268435968 - test edx,536870912 - jnz $L004shaext - or ecx,ebx - and ecx,1342177280 - cmp ecx,1342177280 - je $L005AVX - test ebx,512 - jnz $L006SSSE3 -$L003no_xmm: - sub eax,edi - cmp eax,256 - jae $L007unrolled - jmp $L002loop -ALIGN 16 -$L002loop: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - bswap eax - mov edx,DWORD PTR 12[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 16[edi] - mov ebx,DWORD PTR 20[edi] - mov ecx,DWORD PTR 24[edi] - bswap eax - mov edx,DWORD PTR 28[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 32[edi] - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - bswap eax - mov edx,DWORD PTR 44[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 48[edi] - mov ebx,DWORD PTR 52[edi] - mov ecx,DWORD PTR 56[edi] - bswap eax - mov edx,DWORD PTR 60[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - add edi,64 - lea esp,DWORD PTR [esp-36] - mov DWORD PTR 104[esp],edi - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 8[esp],ebx - xor ebx,ecx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edi - mov DWORD PTR [esp],ebx - mov edx,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ecx - mov DWORD PTR 32[esp],edi -ALIGN 16 -$L00800_15: - mov ecx,edx - mov esi,DWORD PTR 24[esp] - ror ecx,14 - mov edi,DWORD PTR 28[esp] - xor ecx,edx - xor esi,edi - mov ebx,DWORD PTR 96[esp] - ror ecx,5 - and esi,edx - mov DWORD PTR 20[esp],edx - xor edx,ecx - add ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,6 - mov ecx,eax - add ebx,esi - ror ecx,9 - add ebx,edx - mov edi,DWORD PTR 8[esp] - xor ecx,eax - mov DWORD PTR 4[esp],eax - lea esp,DWORD PTR [esp-4] - ror ecx,11 - mov esi,DWORD PTR [ebp] - xor ecx,eax - mov edx,DWORD PTR 20[esp] - xor eax,edi - ror ecx,2 - add ebx,esi - mov DWORD PTR [esp],eax - add edx,ebx - and eax,DWORD PTR 4[esp] - add ebx,ecx - xor eax,edi - add ebp,4 - add eax,ebx - cmp esi,3248222580 - jne $L00800_15 - mov ecx,DWORD PTR 156[esp] - jmp $L00916_63 -ALIGN 16 -$L00916_63: - mov ebx,ecx - mov esi,DWORD PTR 104[esp] - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 160[esp] - shr edi,10 - add ebx,DWORD PTR 124[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 24[esp] - ror ecx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor ecx,edx - xor esi,edi - mov DWORD PTR 96[esp],ebx - ror ecx,5 - and esi,edx - mov DWORD PTR 20[esp],edx - xor edx,ecx - add ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,6 - mov ecx,eax - add ebx,esi - ror ecx,9 - add ebx,edx - mov edi,DWORD PTR 8[esp] - xor ecx,eax - mov DWORD PTR 4[esp],eax - lea esp,DWORD PTR [esp-4] - ror ecx,11 - mov esi,DWORD PTR [ebp] - xor ecx,eax - mov edx,DWORD PTR 20[esp] - xor eax,edi - ror ecx,2 - add ebx,esi - mov DWORD PTR [esp],eax - add edx,ebx - and eax,DWORD PTR 4[esp] - add ebx,ecx - xor eax,edi - mov ecx,DWORD PTR 156[esp] - add ebp,4 - add eax,ebx - cmp esi,3329325298 - jne $L00916_63 - mov esi,DWORD PTR 356[esp] - mov ebx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 16[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - mov ecx,DWORD PTR 32[esp] - mov edi,DWORD PTR 360[esp] - add edx,DWORD PTR 16[esi] - add eax,DWORD PTR 20[esi] - add ebx,DWORD PTR 24[esi] - add ecx,DWORD PTR 28[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],eax - mov DWORD PTR 24[esi],ebx - mov DWORD PTR 28[esi],ecx - lea esp,DWORD PTR 356[esp] - sub ebp,256 - cmp edi,DWORD PTR 8[esp] - jb $L002loop - mov esp,DWORD PTR 12[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001K256: -DD 1116352408,1899447441,3049323471,3921009573 -DD 961987163,1508970993,2453635748,2870763221 -DD 3624381080,310598401,607225278,1426881987 -DD 1925078388,2162078206,2614888103,3248222580 -DD 3835390401,4022224774,264347078,604807628 -DD 770255983,1249150122,1555081692,1996064986 -DD 2554220882,2821834349,2952996808,3210313671 -DD 3336571891,3584528711,113926993,338241895 -DD 666307205,773529912,1294757372,1396182291 -DD 1695183700,1986661051,2177026350,2456956037 -DD 2730485921,2820302411,3259730800,3345764771 -DD 3516065817,3600352804,4094571909,275423344 -DD 430227734,506948616,659060556,883997877 -DD 958139571,1322822218,1537002063,1747873779 -DD 1955562222,2024104815,2227730452,2361852424 -DD 2428436474,2756734187,3204031479,3329325298 -DD 66051,67438087,134810123,202182159 -DB 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 16 -$L007unrolled: - lea esp,DWORD PTR [esp-96] - mov eax,DWORD PTR [esi] - mov ebp,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov ebx,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebp - xor ebp,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],ebx - mov edx,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - jmp $L010grand_loop -ALIGN 16 -$L010grand_loop: - mov ebx,DWORD PTR [edi] - mov ecx,DWORD PTR 4[edi] - bswap ebx - mov esi,DWORD PTR 8[edi] - bswap ecx - mov DWORD PTR 32[esp],ebx - bswap esi - mov DWORD PTR 36[esp],ecx - mov DWORD PTR 40[esp],esi - mov ebx,DWORD PTR 12[edi] - mov ecx,DWORD PTR 16[edi] - bswap ebx - mov esi,DWORD PTR 20[edi] - bswap ecx - mov DWORD PTR 44[esp],ebx - bswap esi - mov DWORD PTR 48[esp],ecx - mov DWORD PTR 52[esp],esi - mov ebx,DWORD PTR 24[edi] - mov ecx,DWORD PTR 28[edi] - bswap ebx - mov esi,DWORD PTR 32[edi] - bswap ecx - mov DWORD PTR 56[esp],ebx - bswap esi - mov DWORD PTR 60[esp],ecx - mov DWORD PTR 64[esp],esi - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - bswap ebx - mov esi,DWORD PTR 44[edi] - bswap ecx - mov DWORD PTR 68[esp],ebx - bswap esi - mov DWORD PTR 72[esp],ecx - mov DWORD PTR 76[esp],esi - mov ebx,DWORD PTR 48[edi] - mov ecx,DWORD PTR 52[edi] - bswap ebx - mov esi,DWORD PTR 56[edi] - bswap ecx - mov DWORD PTR 80[esp],ebx - bswap esi - mov DWORD PTR 84[esp],ecx - mov DWORD PTR 88[esp],esi - mov ebx,DWORD PTR 60[edi] - add edi,64 - bswap ebx - mov DWORD PTR 100[esp],edi - mov DWORD PTR 92[esp],ebx - mov ecx,edx - mov esi,DWORD PTR 20[esp] - ror edx,14 - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1116352408[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov ebx,DWORD PTR 36[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1899447441[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 12[esp] - ror edx,14 - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov ebx,DWORD PTR 40[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3049323471[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov ebx,DWORD PTR 44[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3921009573[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 4[esp] - ror edx,14 - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov ebx,DWORD PTR 48[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 961987163[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR [esp] - ror edx,14 - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov ebx,DWORD PTR 52[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1508970993[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 28[esp] - ror edx,14 - mov edi,DWORD PTR [esp] - xor edx,ecx - mov ebx,DWORD PTR 56[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2453635748[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov ebx,DWORD PTR 60[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2870763221[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 20[esp] - ror edx,14 - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov ebx,DWORD PTR 64[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3624381080[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov ebx,DWORD PTR 68[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 310598401[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 12[esp] - ror edx,14 - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov ebx,DWORD PTR 72[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 607225278[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov ebx,DWORD PTR 76[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1426881987[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 4[esp] - ror edx,14 - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov ebx,DWORD PTR 80[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1925078388[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR [esp] - ror edx,14 - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov ebx,DWORD PTR 84[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2162078206[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 28[esp] - ror edx,14 - mov edi,DWORD PTR [esp] - xor edx,ecx - mov ebx,DWORD PTR 88[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2614888103[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov ebx,DWORD PTR 92[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3248222580[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3835390401[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 4022224774[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 264347078[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 604807628[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 770255983[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1249150122[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1555081692[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1996064986[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2554220882[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2821834349[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2952996808[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3210313671[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3336571891[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3584528711[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 88[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 113926993[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 92[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 338241895[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 666307205[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 773529912[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1294757372[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1396182291[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1695183700[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1986661051[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2177026350[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2456956037[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2730485921[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2820302411[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3259730800[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3345764771[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3516065817[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3600352804[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 88[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 4094571909[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 92[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 275423344[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 430227734[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 506948616[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 659060556[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 883997877[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 958139571[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1322822218[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1537002063[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1747873779[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1955562222[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2024104815[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2227730452[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2361852424[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2428436474[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2756734187[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3204031479[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3329325298[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 96[esp] - xor ebp,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebp,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebp - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebp - xor ebp,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ebx,DWORD PTR 24[esi] - add ecx,DWORD PTR 28[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 24[esi],ebx - mov DWORD PTR 28[esi],ecx - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ecx - cmp edi,DWORD PTR 104[esp] - jb $L010grand_loop - mov esp,DWORD PTR 108[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L004shaext: - sub esp,32 - movdqu xmm1,XMMWORD PTR [esi] - lea ebp,DWORD PTR 128[ebp] - movdqu xmm2,XMMWORD PTR 16[esi] - movdqa xmm7,XMMWORD PTR 128[ebp] - pshufd xmm0,xmm1,27 - pshufd xmm1,xmm1,177 - pshufd xmm2,xmm2,27 -DB 102,15,58,15,202,8 - punpcklqdq xmm2,xmm0 - jmp $L011loop_shaext -ALIGN 16 -$L011loop_shaext: - movdqu xmm3,XMMWORD PTR [edi] - movdqu xmm4,XMMWORD PTR 16[edi] - movdqu xmm5,XMMWORD PTR 32[edi] -DB 102,15,56,0,223 - movdqu xmm6,XMMWORD PTR 48[edi] - movdqa XMMWORD PTR 16[esp],xmm2 - movdqa xmm0,XMMWORD PTR [ebp-128] - paddd xmm0,xmm3 -DB 102,15,56,0,231 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - nop - movdqa XMMWORD PTR [esp],xmm1 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-112] - paddd xmm0,xmm4 -DB 102,15,56,0,239 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - lea edi,DWORD PTR 64[edi] -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-96] - paddd xmm0,xmm5 -DB 102,15,56,0,247 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-80] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-64] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-48] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-32] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-16] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 16[ebp] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 32[ebp] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 48[ebp] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 64[ebp] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 80[ebp] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 -DB 15,56,203,202 - paddd xmm6,xmm7 - movdqa xmm0,XMMWORD PTR 96[ebp] - paddd xmm0,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 -DB 15,56,205,245 - movdqa xmm7,XMMWORD PTR 128[ebp] -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 112[ebp] - paddd xmm0,xmm6 - nop -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - cmp eax,edi - nop -DB 15,56,203,202 - paddd xmm2,XMMWORD PTR 16[esp] - paddd xmm1,XMMWORD PTR [esp] - jnz $L011loop_shaext - pshufd xmm2,xmm2,177 - pshufd xmm7,xmm1,27 - pshufd xmm1,xmm1,177 - punpckhqdq xmm1,xmm2 -DB 102,15,58,15,215,8 - mov esp,DWORD PTR 44[esp] - movdqu XMMWORD PTR [esi],xmm1 - movdqu XMMWORD PTR 16[esi],xmm2 - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L006SSSE3: - lea esp,DWORD PTR [esp-96] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebx - xor ebx,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edi - mov edx,DWORD PTR 16[esi] - mov edi,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - movdqa xmm7,XMMWORD PTR 256[ebp] - jmp $L012grand_ssse3 -ALIGN 16 -$L012grand_ssse3: - movdqu xmm0,XMMWORD PTR [edi] - movdqu xmm1,XMMWORD PTR 16[edi] - movdqu xmm2,XMMWORD PTR 32[edi] - movdqu xmm3,XMMWORD PTR 48[edi] - add edi,64 -DB 102,15,56,0,199 - mov DWORD PTR 100[esp],edi -DB 102,15,56,0,207 - movdqa xmm4,XMMWORD PTR [ebp] -DB 102,15,56,0,215 - movdqa xmm5,XMMWORD PTR 16[ebp] - paddd xmm4,xmm0 -DB 102,15,56,0,223 - movdqa xmm6,XMMWORD PTR 32[ebp] - paddd xmm5,xmm1 - movdqa xmm7,XMMWORD PTR 48[ebp] - movdqa XMMWORD PTR 32[esp],xmm4 - paddd xmm6,xmm2 - movdqa XMMWORD PTR 48[esp],xmm5 - paddd xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm6 - movdqa XMMWORD PTR 80[esp],xmm7 - jmp $L013ssse3_00_47 -ALIGN 16 -$L013ssse3_00_47: - add ebp,64 - mov ecx,edx - movdqa xmm4,xmm1 - ror edx,14 - mov esi,DWORD PTR 20[esp] - movdqa xmm7,xmm3 - xor edx,ecx - mov edi,DWORD PTR 24[esp] -DB 102,15,58,15,224,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,250,4 - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 4[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm0,xmm7 - mov DWORD PTR [esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm3,250 - xor ecx,esi - add edx,DWORD PTR 32[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 12[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 12[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - paddd xmm0,xmm4 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 36[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 8[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm0,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - pshufd xmm7,xmm0,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 40[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 4[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR [ebp] - and esi,ecx - mov DWORD PTR 4[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - paddd xmm0,xmm7 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - paddd xmm6,xmm0 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - movdqa XMMWORD PTR 32[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm2 - ror edx,14 - mov esi,DWORD PTR 4[esp] - movdqa xmm7,xmm0 - xor edx,ecx - mov edi,DWORD PTR 8[esp] -DB 102,15,58,15,225,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,251,4 - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 20[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm1,xmm7 - mov DWORD PTR 16[esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm0,250 - xor ecx,esi - add edx,DWORD PTR 48[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 28[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR [esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 28[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - paddd xmm1,xmm4 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 52[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 24[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm1,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - pshufd xmm7,xmm1,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 56[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 20[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 16[ebp] - and esi,ecx - mov DWORD PTR 20[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - paddd xmm1,xmm7 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - paddd xmm6,xmm1 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - movdqa XMMWORD PTR 48[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm3 - ror edx,14 - mov esi,DWORD PTR 20[esp] - movdqa xmm7,xmm1 - xor edx,ecx - mov edi,DWORD PTR 24[esp] -DB 102,15,58,15,226,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,248,4 - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 4[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm2,xmm7 - mov DWORD PTR [esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm1,250 - xor ecx,esi - add edx,DWORD PTR 64[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 12[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 12[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - paddd xmm2,xmm4 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 68[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 8[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm2,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - pshufd xmm7,xmm2,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 72[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 4[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 32[ebp] - and esi,ecx - mov DWORD PTR 4[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - paddd xmm2,xmm7 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - paddd xmm6,xmm2 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - movdqa XMMWORD PTR 64[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm0 - ror edx,14 - mov esi,DWORD PTR 4[esp] - movdqa xmm7,xmm2 - xor edx,ecx - mov edi,DWORD PTR 8[esp] -DB 102,15,58,15,227,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,249,4 - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 20[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm3,xmm7 - mov DWORD PTR 16[esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm2,250 - xor ecx,esi - add edx,DWORD PTR 80[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 28[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR [esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 28[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - paddd xmm3,xmm4 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 84[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 24[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm3,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - pshufd xmm7,xmm3,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 88[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 20[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 48[ebp] - and esi,ecx - mov DWORD PTR 20[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - paddd xmm3,xmm7 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - paddd xmm6,xmm3 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - movdqa XMMWORD PTR 80[esp],xmm6 - cmp DWORD PTR 64[ebp],66051 - jne $L013ssse3_00_47 - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 32[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 36[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 40[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 48[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 52[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 56[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 64[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 68[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 72[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 80[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 84[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 88[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov esi,DWORD PTR 96[esp] - xor ebx,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebx - xor ebx,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ecx,DWORD PTR 24[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 28[esp] - mov DWORD PTR 24[esi],ecx - add edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esi],edi - mov DWORD PTR 28[esp],edi - mov edi,DWORD PTR 100[esp] - movdqa xmm7,XMMWORD PTR 64[ebp] - sub ebp,192 - cmp edi,DWORD PTR 104[esp] - jb $L012grand_ssse3 - mov esp,DWORD PTR 108[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L005AVX: - and edx,264 - cmp edx,264 - je $L014AVX_BMI - lea esp,DWORD PTR [esp-96] - vzeroall - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebx - xor ebx,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edi - mov edx,DWORD PTR 16[esi] - mov edi,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - vmovdqa xmm7,XMMWORD PTR 256[ebp] - jmp $L015grand_avx -ALIGN 32 -$L015grand_avx: - vmovdqu xmm0,XMMWORD PTR [edi] - vmovdqu xmm1,XMMWORD PTR 16[edi] - vmovdqu xmm2,XMMWORD PTR 32[edi] - vmovdqu xmm3,XMMWORD PTR 48[edi] - add edi,64 - vpshufb xmm0,xmm0,xmm7 - mov DWORD PTR 100[esp],edi - vpshufb xmm1,xmm1,xmm7 - vpshufb xmm2,xmm2,xmm7 - vpaddd xmm4,xmm0,XMMWORD PTR [ebp] - vpshufb xmm3,xmm3,xmm7 - vpaddd xmm5,xmm1,XMMWORD PTR 16[ebp] - vpaddd xmm6,xmm2,XMMWORD PTR 32[ebp] - vpaddd xmm7,xmm3,XMMWORD PTR 48[ebp] - vmovdqa XMMWORD PTR 32[esp],xmm4 - vmovdqa XMMWORD PTR 48[esp],xmm5 - vmovdqa XMMWORD PTR 64[esp],xmm6 - vmovdqa XMMWORD PTR 80[esp],xmm7 - jmp $L016avx_00_47 -ALIGN 16 -$L016avx_00_47: - add ebp,64 - vpalignr xmm4,xmm1,xmm0,4 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 20[esp] - vpalignr xmm7,xmm3,xmm2,4 - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - vpsrld xmm6,xmm4,7 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - vpaddd xmm0,xmm0,xmm7 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrld xmm7,xmm4,3 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - vpslld xmm5,xmm4,14 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR [esp],eax - vpxor xmm4,xmm7,xmm6 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - vpshufd xmm7,xmm3,250 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpsrld xmm6,xmm6,11 - add edx,DWORD PTR 32[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpxor xmm4,xmm4,xmm5 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - vpslld xmm5,xmm5,11 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 16[esp] - vpxor xmm4,xmm4,xmm6 - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - vpsrld xmm6,xmm7,10 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - vpxor xmm4,xmm4,xmm5 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - vpaddd xmm0,xmm0,xmm4 - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 28[esp],ebx - vpxor xmm6,xmm6,xmm5 - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - vpsrlq xmm7,xmm7,19 - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - add edx,DWORD PTR 36[esp] - xor eax,edi - shrd ecx,ecx,2 - vpshufd xmm7,xmm6,132 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - vpsrldq xmm7,xmm7,8 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 12[esp] - vpaddd xmm0,xmm0,xmm7 - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - vpshufd xmm7,xmm0,80 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - vpsrld xmm6,xmm7,10 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - vpxor xmm6,xmm6,xmm5 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 24[esp],eax - vpsrlq xmm7,xmm7,19 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - vpxor xmm6,xmm6,xmm7 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpshufd xmm7,xmm6,232 - add edx,DWORD PTR 40[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpslldq xmm7,xmm7,8 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - vpaddd xmm0,xmm0,xmm7 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 8[esp] - vpaddd xmm6,xmm0,XMMWORD PTR [ebp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - vmovdqa XMMWORD PTR 32[esp],xmm6 - vpalignr xmm4,xmm2,xmm1,4 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 4[esp] - vpalignr xmm7,xmm0,xmm3,4 - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - vpsrld xmm6,xmm4,7 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - vpaddd xmm1,xmm1,xmm7 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrld xmm7,xmm4,3 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - vpslld xmm5,xmm4,14 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 16[esp],eax - vpxor xmm4,xmm7,xmm6 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - vpshufd xmm7,xmm0,250 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpsrld xmm6,xmm6,11 - add edx,DWORD PTR 48[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpxor xmm4,xmm4,xmm5 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - vpslld xmm5,xmm5,11 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR [esp] - vpxor xmm4,xmm4,xmm6 - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - vpsrld xmm6,xmm7,10 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - vpxor xmm4,xmm4,xmm5 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - vpaddd xmm1,xmm1,xmm4 - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 12[esp],ebx - vpxor xmm6,xmm6,xmm5 - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - vpsrlq xmm7,xmm7,19 - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - add edx,DWORD PTR 52[esp] - xor eax,edi - shrd ecx,ecx,2 - vpshufd xmm7,xmm6,132 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - vpsrldq xmm7,xmm7,8 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 28[esp] - vpaddd xmm1,xmm1,xmm7 - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - vpshufd xmm7,xmm1,80 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - vpsrld xmm6,xmm7,10 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - vpxor xmm6,xmm6,xmm5 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 8[esp],eax - vpsrlq xmm7,xmm7,19 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - vpxor xmm6,xmm6,xmm7 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpshufd xmm7,xmm6,232 - add edx,DWORD PTR 56[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpslldq xmm7,xmm7,8 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - vpaddd xmm1,xmm1,xmm7 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 24[esp] - vpaddd xmm6,xmm1,XMMWORD PTR 16[ebp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - vmovdqa XMMWORD PTR 48[esp],xmm6 - vpalignr xmm4,xmm3,xmm2,4 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 20[esp] - vpalignr xmm7,xmm1,xmm0,4 - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - vpsrld xmm6,xmm4,7 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - vpaddd xmm2,xmm2,xmm7 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrld xmm7,xmm4,3 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - vpslld xmm5,xmm4,14 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR [esp],eax - vpxor xmm4,xmm7,xmm6 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - vpshufd xmm7,xmm1,250 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpsrld xmm6,xmm6,11 - add edx,DWORD PTR 64[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpxor xmm4,xmm4,xmm5 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - vpslld xmm5,xmm5,11 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 16[esp] - vpxor xmm4,xmm4,xmm6 - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - vpsrld xmm6,xmm7,10 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - vpxor xmm4,xmm4,xmm5 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - vpaddd xmm2,xmm2,xmm4 - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 28[esp],ebx - vpxor xmm6,xmm6,xmm5 - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - vpsrlq xmm7,xmm7,19 - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - add edx,DWORD PTR 68[esp] - xor eax,edi - shrd ecx,ecx,2 - vpshufd xmm7,xmm6,132 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - vpsrldq xmm7,xmm7,8 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 12[esp] - vpaddd xmm2,xmm2,xmm7 - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - vpshufd xmm7,xmm2,80 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - vpsrld xmm6,xmm7,10 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - vpxor xmm6,xmm6,xmm5 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 24[esp],eax - vpsrlq xmm7,xmm7,19 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - vpxor xmm6,xmm6,xmm7 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpshufd xmm7,xmm6,232 - add edx,DWORD PTR 72[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpslldq xmm7,xmm7,8 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - vpaddd xmm2,xmm2,xmm7 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 8[esp] - vpaddd xmm6,xmm2,XMMWORD PTR 32[ebp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - vmovdqa XMMWORD PTR 64[esp],xmm6 - vpalignr xmm4,xmm0,xmm3,4 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 4[esp] - vpalignr xmm7,xmm2,xmm1,4 - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - vpsrld xmm6,xmm4,7 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - vpaddd xmm3,xmm3,xmm7 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrld xmm7,xmm4,3 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - vpslld xmm5,xmm4,14 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 16[esp],eax - vpxor xmm4,xmm7,xmm6 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - vpshufd xmm7,xmm2,250 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpsrld xmm6,xmm6,11 - add edx,DWORD PTR 80[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpxor xmm4,xmm4,xmm5 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - vpslld xmm5,xmm5,11 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR [esp] - vpxor xmm4,xmm4,xmm6 - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - vpsrld xmm6,xmm7,10 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - vpxor xmm4,xmm4,xmm5 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - vpaddd xmm3,xmm3,xmm4 - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 12[esp],ebx - vpxor xmm6,xmm6,xmm5 - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - vpsrlq xmm7,xmm7,19 - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - add edx,DWORD PTR 84[esp] - xor eax,edi - shrd ecx,ecx,2 - vpshufd xmm7,xmm6,132 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - vpsrldq xmm7,xmm7,8 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 28[esp] - vpaddd xmm3,xmm3,xmm7 - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - vpshufd xmm7,xmm3,80 - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - vpsrld xmm6,xmm7,10 - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - vpsrlq xmm5,xmm7,17 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - vpxor xmm6,xmm6,xmm5 - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 8[esp],eax - vpsrlq xmm7,xmm7,19 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - vpxor xmm6,xmm6,xmm7 - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - vpshufd xmm7,xmm6,232 - add edx,DWORD PTR 88[esp] - xor ebx,edi - shrd ecx,ecx,2 - vpslldq xmm7,xmm7,8 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - vpaddd xmm3,xmm3,xmm7 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 24[esp] - vpaddd xmm6,xmm3,XMMWORD PTR 48[ebp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - vmovdqa XMMWORD PTR 80[esp],xmm6 - cmp DWORD PTR 64[ebp],66051 - jne $L016avx_00_47 - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 32[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 36[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 40[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 48[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 52[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 56[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 64[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 68[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 72[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 80[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 84[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - shrd ecx,ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - shrd ecx,ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 88[esp] - xor ebx,edi - shrd ecx,ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - shrd edx,edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - shrd edx,edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - shrd edx,edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - shrd ecx,ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - shrd ecx,ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - shrd ecx,ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov esi,DWORD PTR 96[esp] - xor ebx,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebx - xor ebx,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ecx,DWORD PTR 24[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 28[esp] - mov DWORD PTR 24[esi],ecx - add edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esi],edi - mov DWORD PTR 28[esp],edi - mov edi,DWORD PTR 100[esp] - vmovdqa xmm7,XMMWORD PTR 64[ebp] - sub ebp,192 - cmp edi,DWORD PTR 104[esp] - jb $L015grand_avx - mov esp,DWORD PTR 108[esp] - vzeroall - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L014AVX_BMI: - lea esp,DWORD PTR [esp-96] - vzeroall - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebx - xor ebx,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edi - mov edx,DWORD PTR 16[esi] - mov edi,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - vmovdqa xmm7,XMMWORD PTR 256[ebp] - jmp $L017grand_avx_bmi -ALIGN 32 -$L017grand_avx_bmi: - vmovdqu xmm0,XMMWORD PTR [edi] - vmovdqu xmm1,XMMWORD PTR 16[edi] - vmovdqu xmm2,XMMWORD PTR 32[edi] - vmovdqu xmm3,XMMWORD PTR 48[edi] - add edi,64 - vpshufb xmm0,xmm0,xmm7 - mov DWORD PTR 100[esp],edi - vpshufb xmm1,xmm1,xmm7 - vpshufb xmm2,xmm2,xmm7 - vpaddd xmm4,xmm0,XMMWORD PTR [ebp] - vpshufb xmm3,xmm3,xmm7 - vpaddd xmm5,xmm1,XMMWORD PTR 16[ebp] - vpaddd xmm6,xmm2,XMMWORD PTR 32[ebp] - vpaddd xmm7,xmm3,XMMWORD PTR 48[ebp] - vmovdqa XMMWORD PTR 32[esp],xmm4 - vmovdqa XMMWORD PTR 48[esp],xmm5 - vmovdqa XMMWORD PTR 64[esp],xmm6 - vmovdqa XMMWORD PTR 80[esp],xmm7 - jmp $L018avx_bmi_00_47 -ALIGN 16 -$L018avx_bmi_00_47: - add ebp,64 - vpalignr xmm4,xmm1,xmm0,4 - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 16[esp],edx - vpalignr xmm7,xmm3,xmm2,4 - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 24[esp] - vpsrld xmm6,xmm4,7 - xor ecx,edi - and edx,DWORD PTR 20[esp] - mov DWORD PTR [esp],eax - vpaddd xmm0,xmm0,xmm7 - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrld xmm7,xmm4,3 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpslld xmm5,xmm4,14 - mov edi,DWORD PTR 4[esp] - xor ecx,esi - xor eax,edi - vpxor xmm4,xmm7,xmm6 - add edx,DWORD PTR 28[esp] - and ebx,eax - add edx,DWORD PTR 32[esp] - vpshufd xmm7,xmm3,250 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 12[esp] - vpsrld xmm6,xmm6,11 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm4,xmm4,xmm5 - mov DWORD PTR 12[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpslld xmm5,xmm5,11 - andn esi,edx,DWORD PTR 20[esp] - xor ecx,edi - and edx,DWORD PTR 16[esp] - vpxor xmm4,xmm4,xmm6 - mov DWORD PTR 28[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpsrld xmm6,xmm7,10 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpxor xmm4,xmm4,xmm5 - mov edi,DWORD PTR [esp] - xor ecx,esi - xor ebx,edi - vpsrlq xmm5,xmm7,17 - add edx,DWORD PTR 24[esp] - and eax,ebx - add edx,DWORD PTR 36[esp] - vpaddd xmm0,xmm0,xmm4 - xor eax,edi - add ecx,edx - add edx,DWORD PTR 8[esp] - vpxor xmm6,xmm6,xmm5 - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - vpsrlq xmm7,xmm7,19 - mov DWORD PTR 8[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - andn esi,edx,DWORD PTR 16[esp] - xor ecx,edi - and edx,DWORD PTR 12[esp] - vpshufd xmm7,xmm6,132 - mov DWORD PTR 24[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrldq xmm7,xmm7,8 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpaddd xmm0,xmm0,xmm7 - mov edi,DWORD PTR 28[esp] - xor ecx,esi - xor eax,edi - vpshufd xmm7,xmm0,80 - add edx,DWORD PTR 20[esp] - and ebx,eax - add edx,DWORD PTR 40[esp] - vpsrld xmm6,xmm7,10 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 4[esp] - vpsrlq xmm5,xmm7,17 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm6,xmm6,xmm5 - mov DWORD PTR 4[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpsrlq xmm7,xmm7,19 - andn esi,edx,DWORD PTR 12[esp] - xor ecx,edi - and edx,DWORD PTR 8[esp] - vpxor xmm6,xmm6,xmm7 - mov DWORD PTR 20[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpshufd xmm7,xmm6,232 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpslldq xmm7,xmm7,8 - mov edi,DWORD PTR 24[esp] - xor ecx,esi - xor ebx,edi - vpaddd xmm0,xmm0,xmm7 - add edx,DWORD PTR 16[esp] - and eax,ebx - add edx,DWORD PTR 44[esp] - vpaddd xmm6,xmm0,XMMWORD PTR [ebp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR [esp] - lea eax,DWORD PTR [ecx*1+eax] - vmovdqa XMMWORD PTR 32[esp],xmm6 - vpalignr xmm4,xmm2,xmm1,4 - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR [esp],edx - vpalignr xmm7,xmm0,xmm3,4 - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 8[esp] - vpsrld xmm6,xmm4,7 - xor ecx,edi - and edx,DWORD PTR 4[esp] - mov DWORD PTR 16[esp],eax - vpaddd xmm1,xmm1,xmm7 - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrld xmm7,xmm4,3 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpslld xmm5,xmm4,14 - mov edi,DWORD PTR 20[esp] - xor ecx,esi - xor eax,edi - vpxor xmm4,xmm7,xmm6 - add edx,DWORD PTR 12[esp] - and ebx,eax - add edx,DWORD PTR 48[esp] - vpshufd xmm7,xmm0,250 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 28[esp] - vpsrld xmm6,xmm6,11 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm4,xmm4,xmm5 - mov DWORD PTR 28[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpslld xmm5,xmm5,11 - andn esi,edx,DWORD PTR 4[esp] - xor ecx,edi - and edx,DWORD PTR [esp] - vpxor xmm4,xmm4,xmm6 - mov DWORD PTR 12[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpsrld xmm6,xmm7,10 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpxor xmm4,xmm4,xmm5 - mov edi,DWORD PTR 16[esp] - xor ecx,esi - xor ebx,edi - vpsrlq xmm5,xmm7,17 - add edx,DWORD PTR 8[esp] - and eax,ebx - add edx,DWORD PTR 52[esp] - vpaddd xmm1,xmm1,xmm4 - xor eax,edi - add ecx,edx - add edx,DWORD PTR 24[esp] - vpxor xmm6,xmm6,xmm5 - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - vpsrlq xmm7,xmm7,19 - mov DWORD PTR 24[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - andn esi,edx,DWORD PTR [esp] - xor ecx,edi - and edx,DWORD PTR 28[esp] - vpshufd xmm7,xmm6,132 - mov DWORD PTR 8[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrldq xmm7,xmm7,8 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpaddd xmm1,xmm1,xmm7 - mov edi,DWORD PTR 12[esp] - xor ecx,esi - xor eax,edi - vpshufd xmm7,xmm1,80 - add edx,DWORD PTR 4[esp] - and ebx,eax - add edx,DWORD PTR 56[esp] - vpsrld xmm6,xmm7,10 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 20[esp] - vpsrlq xmm5,xmm7,17 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm6,xmm6,xmm5 - mov DWORD PTR 20[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpsrlq xmm7,xmm7,19 - andn esi,edx,DWORD PTR 28[esp] - xor ecx,edi - and edx,DWORD PTR 24[esp] - vpxor xmm6,xmm6,xmm7 - mov DWORD PTR 4[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpshufd xmm7,xmm6,232 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpslldq xmm7,xmm7,8 - mov edi,DWORD PTR 8[esp] - xor ecx,esi - xor ebx,edi - vpaddd xmm1,xmm1,xmm7 - add edx,DWORD PTR [esp] - and eax,ebx - add edx,DWORD PTR 60[esp] - vpaddd xmm6,xmm1,XMMWORD PTR 16[ebp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 16[esp] - lea eax,DWORD PTR [ecx*1+eax] - vmovdqa XMMWORD PTR 48[esp],xmm6 - vpalignr xmm4,xmm3,xmm2,4 - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 16[esp],edx - vpalignr xmm7,xmm1,xmm0,4 - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 24[esp] - vpsrld xmm6,xmm4,7 - xor ecx,edi - and edx,DWORD PTR 20[esp] - mov DWORD PTR [esp],eax - vpaddd xmm2,xmm2,xmm7 - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrld xmm7,xmm4,3 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpslld xmm5,xmm4,14 - mov edi,DWORD PTR 4[esp] - xor ecx,esi - xor eax,edi - vpxor xmm4,xmm7,xmm6 - add edx,DWORD PTR 28[esp] - and ebx,eax - add edx,DWORD PTR 64[esp] - vpshufd xmm7,xmm1,250 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 12[esp] - vpsrld xmm6,xmm6,11 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm4,xmm4,xmm5 - mov DWORD PTR 12[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpslld xmm5,xmm5,11 - andn esi,edx,DWORD PTR 20[esp] - xor ecx,edi - and edx,DWORD PTR 16[esp] - vpxor xmm4,xmm4,xmm6 - mov DWORD PTR 28[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpsrld xmm6,xmm7,10 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpxor xmm4,xmm4,xmm5 - mov edi,DWORD PTR [esp] - xor ecx,esi - xor ebx,edi - vpsrlq xmm5,xmm7,17 - add edx,DWORD PTR 24[esp] - and eax,ebx - add edx,DWORD PTR 68[esp] - vpaddd xmm2,xmm2,xmm4 - xor eax,edi - add ecx,edx - add edx,DWORD PTR 8[esp] - vpxor xmm6,xmm6,xmm5 - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - vpsrlq xmm7,xmm7,19 - mov DWORD PTR 8[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - andn esi,edx,DWORD PTR 16[esp] - xor ecx,edi - and edx,DWORD PTR 12[esp] - vpshufd xmm7,xmm6,132 - mov DWORD PTR 24[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrldq xmm7,xmm7,8 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpaddd xmm2,xmm2,xmm7 - mov edi,DWORD PTR 28[esp] - xor ecx,esi - xor eax,edi - vpshufd xmm7,xmm2,80 - add edx,DWORD PTR 20[esp] - and ebx,eax - add edx,DWORD PTR 72[esp] - vpsrld xmm6,xmm7,10 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 4[esp] - vpsrlq xmm5,xmm7,17 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm6,xmm6,xmm5 - mov DWORD PTR 4[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpsrlq xmm7,xmm7,19 - andn esi,edx,DWORD PTR 12[esp] - xor ecx,edi - and edx,DWORD PTR 8[esp] - vpxor xmm6,xmm6,xmm7 - mov DWORD PTR 20[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpshufd xmm7,xmm6,232 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpslldq xmm7,xmm7,8 - mov edi,DWORD PTR 24[esp] - xor ecx,esi - xor ebx,edi - vpaddd xmm2,xmm2,xmm7 - add edx,DWORD PTR 16[esp] - and eax,ebx - add edx,DWORD PTR 76[esp] - vpaddd xmm6,xmm2,XMMWORD PTR 32[ebp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR [esp] - lea eax,DWORD PTR [ecx*1+eax] - vmovdqa XMMWORD PTR 64[esp],xmm6 - vpalignr xmm4,xmm0,xmm3,4 - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR [esp],edx - vpalignr xmm7,xmm2,xmm1,4 - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 8[esp] - vpsrld xmm6,xmm4,7 - xor ecx,edi - and edx,DWORD PTR 4[esp] - mov DWORD PTR 16[esp],eax - vpaddd xmm3,xmm3,xmm7 - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrld xmm7,xmm4,3 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpslld xmm5,xmm4,14 - mov edi,DWORD PTR 20[esp] - xor ecx,esi - xor eax,edi - vpxor xmm4,xmm7,xmm6 - add edx,DWORD PTR 12[esp] - and ebx,eax - add edx,DWORD PTR 80[esp] - vpshufd xmm7,xmm2,250 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 28[esp] - vpsrld xmm6,xmm6,11 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm4,xmm4,xmm5 - mov DWORD PTR 28[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpslld xmm5,xmm5,11 - andn esi,edx,DWORD PTR 4[esp] - xor ecx,edi - and edx,DWORD PTR [esp] - vpxor xmm4,xmm4,xmm6 - mov DWORD PTR 12[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpsrld xmm6,xmm7,10 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpxor xmm4,xmm4,xmm5 - mov edi,DWORD PTR 16[esp] - xor ecx,esi - xor ebx,edi - vpsrlq xmm5,xmm7,17 - add edx,DWORD PTR 8[esp] - and eax,ebx - add edx,DWORD PTR 84[esp] - vpaddd xmm3,xmm3,xmm4 - xor eax,edi - add ecx,edx - add edx,DWORD PTR 24[esp] - vpxor xmm6,xmm6,xmm5 - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - vpsrlq xmm7,xmm7,19 - mov DWORD PTR 24[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpxor xmm6,xmm6,xmm7 - andn esi,edx,DWORD PTR [esp] - xor ecx,edi - and edx,DWORD PTR 28[esp] - vpshufd xmm7,xmm6,132 - mov DWORD PTR 8[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - vpsrldq xmm7,xmm7,8 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - vpaddd xmm3,xmm3,xmm7 - mov edi,DWORD PTR 12[esp] - xor ecx,esi - xor eax,edi - vpshufd xmm7,xmm3,80 - add edx,DWORD PTR 4[esp] - and ebx,eax - add edx,DWORD PTR 88[esp] - vpsrld xmm6,xmm7,10 - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 20[esp] - vpsrlq xmm5,xmm7,17 - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - vpxor xmm6,xmm6,xmm5 - mov DWORD PTR 20[esp],edx - rorx edi,edx,25 - xor ecx,esi - vpsrlq xmm7,xmm7,19 - andn esi,edx,DWORD PTR 28[esp] - xor ecx,edi - and edx,DWORD PTR 24[esp] - vpxor xmm6,xmm6,xmm7 - mov DWORD PTR 4[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - vpshufd xmm7,xmm6,232 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - vpslldq xmm7,xmm7,8 - mov edi,DWORD PTR 8[esp] - xor ecx,esi - xor ebx,edi - vpaddd xmm3,xmm3,xmm7 - add edx,DWORD PTR [esp] - and eax,ebx - add edx,DWORD PTR 92[esp] - vpaddd xmm6,xmm3,XMMWORD PTR 48[ebp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 16[esp] - lea eax,DWORD PTR [ecx*1+eax] - vmovdqa XMMWORD PTR 80[esp],xmm6 - cmp DWORD PTR 64[ebp],66051 - jne $L018avx_bmi_00_47 - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 16[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 24[esp] - xor ecx,edi - and edx,DWORD PTR 20[esp] - mov DWORD PTR [esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 4[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 28[esp] - and ebx,eax - add edx,DWORD PTR 32[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 12[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 12[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 20[esp] - xor ecx,edi - and edx,DWORD PTR 16[esp] - mov DWORD PTR 28[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR [esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 24[esp] - and eax,ebx - add edx,DWORD PTR 36[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 8[esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 8[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 16[esp] - xor ecx,edi - and edx,DWORD PTR 12[esp] - mov DWORD PTR 24[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 28[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 20[esp] - and ebx,eax - add edx,DWORD PTR 40[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 4[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 4[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 12[esp] - xor ecx,edi - and edx,DWORD PTR 8[esp] - mov DWORD PTR 20[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 24[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 16[esp] - and eax,ebx - add edx,DWORD PTR 44[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR [esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR [esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 8[esp] - xor ecx,edi - and edx,DWORD PTR 4[esp] - mov DWORD PTR 16[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 20[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 12[esp] - and ebx,eax - add edx,DWORD PTR 48[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 28[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 28[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 4[esp] - xor ecx,edi - and edx,DWORD PTR [esp] - mov DWORD PTR 12[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 16[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 8[esp] - and eax,ebx - add edx,DWORD PTR 52[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 24[esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 24[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR [esp] - xor ecx,edi - and edx,DWORD PTR 28[esp] - mov DWORD PTR 8[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 12[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 4[esp] - and ebx,eax - add edx,DWORD PTR 56[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 20[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 20[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 28[esp] - xor ecx,edi - and edx,DWORD PTR 24[esp] - mov DWORD PTR 4[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 8[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR [esp] - and eax,ebx - add edx,DWORD PTR 60[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 16[esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 16[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 24[esp] - xor ecx,edi - and edx,DWORD PTR 20[esp] - mov DWORD PTR [esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 4[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 28[esp] - and ebx,eax - add edx,DWORD PTR 64[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 12[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 12[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 20[esp] - xor ecx,edi - and edx,DWORD PTR 16[esp] - mov DWORD PTR 28[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR [esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 24[esp] - and eax,ebx - add edx,DWORD PTR 68[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 8[esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 8[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 16[esp] - xor ecx,edi - and edx,DWORD PTR 12[esp] - mov DWORD PTR 24[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 28[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 20[esp] - and ebx,eax - add edx,DWORD PTR 72[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 4[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 4[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 12[esp] - xor ecx,edi - and edx,DWORD PTR 8[esp] - mov DWORD PTR 20[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 24[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 16[esp] - and eax,ebx - add edx,DWORD PTR 76[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR [esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR [esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 8[esp] - xor ecx,edi - and edx,DWORD PTR 4[esp] - mov DWORD PTR 16[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 20[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 12[esp] - and ebx,eax - add edx,DWORD PTR 80[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 28[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 28[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 4[esp] - xor ecx,edi - and edx,DWORD PTR [esp] - mov DWORD PTR 12[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 16[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR 8[esp] - and eax,ebx - add edx,DWORD PTR 84[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 24[esp] - lea eax,DWORD PTR [ecx*1+eax] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 24[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR [esp] - xor ecx,edi - and edx,DWORD PTR 28[esp] - mov DWORD PTR 8[esp],eax - or edx,esi - rorx edi,eax,2 - rorx esi,eax,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,eax,22 - xor esi,edi - mov edi,DWORD PTR 12[esp] - xor ecx,esi - xor eax,edi - add edx,DWORD PTR 4[esp] - and ebx,eax - add edx,DWORD PTR 88[esp] - xor ebx,edi - add ecx,edx - add edx,DWORD PTR 20[esp] - lea ebx,DWORD PTR [ecx*1+ebx] - rorx ecx,edx,6 - rorx esi,edx,11 - mov DWORD PTR 20[esp],edx - rorx edi,edx,25 - xor ecx,esi - andn esi,edx,DWORD PTR 28[esp] - xor ecx,edi - and edx,DWORD PTR 24[esp] - mov DWORD PTR 4[esp],ebx - or edx,esi - rorx edi,ebx,2 - rorx esi,ebx,13 - lea edx,DWORD PTR [ecx*1+edx] - rorx ecx,ebx,22 - xor esi,edi - mov edi,DWORD PTR 8[esp] - xor ecx,esi - xor ebx,edi - add edx,DWORD PTR [esp] - and eax,ebx - add edx,DWORD PTR 92[esp] - xor eax,edi - add ecx,edx - add edx,DWORD PTR 16[esp] - lea eax,DWORD PTR [ecx*1+eax] - mov esi,DWORD PTR 96[esp] - xor ebx,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebx - xor ebx,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ecx,DWORD PTR 24[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 28[esp] - mov DWORD PTR 24[esi],ecx - add edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esi],edi - mov DWORD PTR 28[esp],edi - mov edi,DWORD PTR 100[esp] - vmovdqa xmm7,XMMWORD PTR 64[ebp] - sub ebp,192 - cmp edi,DWORD PTR 104[esp] - jb $L017grand_avx_bmi - mov esp,DWORD PTR 108[esp] - vzeroall - pop edi - pop esi - pop ebx - pop ebp - ret -_sha256_block_data_order ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm deleted file mode 100644 index 9a57e5af84be78..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm +++ /dev/null @@ -1,2849 +0,0 @@ -TITLE sha512-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha512_block_data_order PROC PUBLIC -$L_sha512_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov ebx,esp - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001K512-$L000pic_point)[ebp] - sub esp,16 - and esp,-64 - shl eax,7 - add eax,edi - mov DWORD PTR [esp],esi - mov DWORD PTR 4[esp],edi - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [edx] - test ecx,67108864 - jz $L002loop_x86 - mov edx,DWORD PTR 4[edx] - movq mm0,QWORD PTR [esi] - and ecx,16777216 - movq mm1,QWORD PTR 8[esi] - and edx,512 - movq mm2,QWORD PTR 16[esi] - or ecx,edx - movq mm3,QWORD PTR 24[esi] - movq mm4,QWORD PTR 32[esi] - movq mm5,QWORD PTR 40[esi] - movq mm6,QWORD PTR 48[esi] - movq mm7,QWORD PTR 56[esi] - cmp ecx,16777728 - je $L003SSSE3 - sub esp,80 - jmp $L004loop_sse2 -ALIGN 16 -$L004loop_sse2: - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - pxor mm2,mm1 - movq QWORD PTR 56[esp],mm7 - movq mm3,mm0 - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - add edi,8 - mov edx,15 - bswap eax - bswap ebx - jmp $L00500_14_sse2 -ALIGN 16 -$L00500_14_sse2: - movd mm1,eax - mov eax,DWORD PTR [edi] - movd mm7,ebx - mov ebx,DWORD PTR 4[edi] - add edi,8 - bswap eax - bswap ebx - punpckldq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq mm0,mm3 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm3,mm2 - movq mm2,mm0 - add ebp,8 - paddq mm3,mm6 - movq mm6,QWORD PTR 48[esp] - dec edx - jnz $L00500_14_sse2 - movd mm1,eax - movd mm7,ebx - punpckldq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq mm0,mm3 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm3,mm2 - movq mm2,mm0 - add ebp,8 - paddq mm3,mm6 - pxor mm0,mm0 - mov edx,32 - jmp $L00616_79_sse2 -ALIGN 16 -$L00616_79_sse2: - movq mm5,QWORD PTR 88[esp] - movq mm1,mm7 - psrlq mm7,1 - movq mm6,mm5 - psrlq mm5,6 - psllq mm1,56 - paddq mm0,mm3 - movq mm3,mm7 - psrlq mm7,6 - pxor mm3,mm1 - psllq mm1,7 - pxor mm3,mm7 - psrlq mm7,1 - pxor mm3,mm1 - movq mm1,mm5 - psrlq mm5,13 - pxor mm7,mm3 - psllq mm6,3 - pxor mm1,mm5 - paddq mm7,QWORD PTR 200[esp] - pxor mm1,mm6 - psrlq mm5,42 - paddq mm7,QWORD PTR 128[esp] - pxor mm1,mm5 - psllq mm6,42 - movq mm5,QWORD PTR 40[esp] - pxor mm1,mm6 - movq mm6,QWORD PTR 48[esp] - paddq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm2,mm6 - add ebp,8 - movq mm5,QWORD PTR 88[esp] - movq mm1,mm7 - psrlq mm7,1 - movq mm6,mm5 - psrlq mm5,6 - psllq mm1,56 - paddq mm2,mm3 - movq mm3,mm7 - psrlq mm7,6 - pxor mm3,mm1 - psllq mm1,7 - pxor mm3,mm7 - psrlq mm7,1 - pxor mm3,mm1 - movq mm1,mm5 - psrlq mm5,13 - pxor mm7,mm3 - psllq mm6,3 - pxor mm1,mm5 - paddq mm7,QWORD PTR 200[esp] - pxor mm1,mm6 - psrlq mm5,42 - paddq mm7,QWORD PTR 128[esp] - pxor mm1,mm5 - psllq mm6,42 - movq mm5,QWORD PTR 40[esp] - pxor mm1,mm6 - movq mm6,QWORD PTR 48[esp] - paddq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm0,mm6 - add ebp,8 - dec edx - jnz $L00616_79_sse2 - paddq mm0,mm3 - movq mm1,QWORD PTR 8[esp] - movq mm3,QWORD PTR 24[esp] - movq mm5,QWORD PTR 40[esp] - movq mm6,QWORD PTR 48[esp] - movq mm7,QWORD PTR 56[esp] - pxor mm2,mm1 - paddq mm0,QWORD PTR [esi] - paddq mm1,QWORD PTR 8[esi] - paddq mm2,QWORD PTR 16[esi] - paddq mm3,QWORD PTR 24[esi] - paddq mm4,QWORD PTR 32[esi] - paddq mm5,QWORD PTR 40[esi] - paddq mm6,QWORD PTR 48[esi] - paddq mm7,QWORD PTR 56[esi] - mov eax,640 - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - lea esp,DWORD PTR [eax*1+esp] - sub ebp,eax - cmp edi,DWORD PTR 88[esp] - jb $L004loop_sse2 - mov esp,DWORD PTR 92[esp] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L003SSSE3: - lea edx,DWORD PTR [esp-64] - sub esp,256 - movdqa xmm1,XMMWORD PTR 640[ebp] - movdqu xmm0,XMMWORD PTR [edi] -DB 102,15,56,0,193 - movdqa xmm3,XMMWORD PTR [ebp] - movdqa xmm2,xmm1 - movdqu xmm1,XMMWORD PTR 16[edi] - paddq xmm3,xmm0 -DB 102,15,56,0,202 - movdqa XMMWORD PTR [edx-128],xmm3 - movdqa xmm4,XMMWORD PTR 16[ebp] - movdqa xmm3,xmm2 - movdqu xmm2,XMMWORD PTR 32[edi] - paddq xmm4,xmm1 -DB 102,15,56,0,211 - movdqa XMMWORD PTR [edx-112],xmm4 - movdqa xmm5,XMMWORD PTR 32[ebp] - movdqa xmm4,xmm3 - movdqu xmm3,XMMWORD PTR 48[edi] - paddq xmm5,xmm2 -DB 102,15,56,0,220 - movdqa XMMWORD PTR [edx-96],xmm5 - movdqa xmm6,XMMWORD PTR 48[ebp] - movdqa xmm5,xmm4 - movdqu xmm4,XMMWORD PTR 64[edi] - paddq xmm6,xmm3 -DB 102,15,56,0,229 - movdqa XMMWORD PTR [edx-80],xmm6 - movdqa xmm7,XMMWORD PTR 64[ebp] - movdqa xmm6,xmm5 - movdqu xmm5,XMMWORD PTR 80[edi] - paddq xmm7,xmm4 -DB 102,15,56,0,238 - movdqa XMMWORD PTR [edx-64],xmm7 - movdqa XMMWORD PTR [edx],xmm0 - movdqa xmm0,XMMWORD PTR 80[ebp] - movdqa xmm7,xmm6 - movdqu xmm6,XMMWORD PTR 96[edi] - paddq xmm0,xmm5 -DB 102,15,56,0,247 - movdqa XMMWORD PTR [edx-48],xmm0 - movdqa XMMWORD PTR 16[edx],xmm1 - movdqa xmm1,XMMWORD PTR 96[ebp] - movdqa xmm0,xmm7 - movdqu xmm7,XMMWORD PTR 112[edi] - paddq xmm1,xmm6 -DB 102,15,56,0,248 - movdqa XMMWORD PTR [edx-32],xmm1 - movdqa XMMWORD PTR 32[edx],xmm2 - movdqa xmm2,XMMWORD PTR 112[ebp] - movdqa xmm0,XMMWORD PTR [edx] - paddq xmm2,xmm7 - movdqa XMMWORD PTR [edx-16],xmm2 - nop -ALIGN 32 -$L007loop_ssse3: - movdqa xmm2,XMMWORD PTR 16[edx] - movdqa XMMWORD PTR 48[edx],xmm3 - lea ebp,DWORD PTR 128[ebp] - movq QWORD PTR 8[esp],mm1 - mov ebx,edi - movq QWORD PTR 16[esp],mm2 - lea edi,DWORD PTR 128[edi] - movq QWORD PTR 24[esp],mm3 - cmp edi,eax - movq QWORD PTR 40[esp],mm5 - cmovb ebx,edi - movq QWORD PTR 48[esp],mm6 - mov ecx,4 - pxor mm2,mm1 - movq QWORD PTR 56[esp],mm7 - pxor mm3,mm3 - jmp $L00800_47_ssse3 -ALIGN 32 -$L00800_47_ssse3: - movdqa xmm3,xmm5 - movdqa xmm1,xmm2 -DB 102,15,58,15,208,8 - movdqa XMMWORD PTR [edx],xmm4 -DB 102,15,58,15,220,8 - movdqa xmm4,xmm2 - psrlq xmm2,7 - paddq xmm0,xmm3 - movdqa xmm3,xmm4 - psrlq xmm4,1 - psllq xmm3,56 - pxor xmm2,xmm4 - psrlq xmm4,7 - pxor xmm2,xmm3 - psllq xmm3,7 - pxor xmm2,xmm4 - movdqa xmm4,xmm7 - pxor xmm2,xmm3 - movdqa xmm3,xmm7 - psrlq xmm4,6 - paddq xmm0,xmm2 - movdqa xmm2,xmm7 - psrlq xmm3,19 - psllq xmm2,3 - pxor xmm4,xmm3 - psrlq xmm3,42 - pxor xmm4,xmm2 - psllq xmm2,42 - pxor xmm4,xmm3 - movdqa xmm3,XMMWORD PTR 32[edx] - pxor xmm4,xmm2 - movdqa xmm2,XMMWORD PTR [ebp] - movq mm1,mm4 - paddq xmm0,xmm4 - movq mm7,QWORD PTR [edx-128] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - paddq xmm2,xmm0 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-120] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-128],xmm2 - movdqa xmm4,xmm6 - movdqa xmm2,xmm3 -DB 102,15,58,15,217,8 - movdqa XMMWORD PTR 16[edx],xmm5 -DB 102,15,58,15,229,8 - movdqa xmm5,xmm3 - psrlq xmm3,7 - paddq xmm1,xmm4 - movdqa xmm4,xmm5 - psrlq xmm5,1 - psllq xmm4,56 - pxor xmm3,xmm5 - psrlq xmm5,7 - pxor xmm3,xmm4 - psllq xmm4,7 - pxor xmm3,xmm5 - movdqa xmm5,xmm0 - pxor xmm3,xmm4 - movdqa xmm4,xmm0 - psrlq xmm5,6 - paddq xmm1,xmm3 - movdqa xmm3,xmm0 - psrlq xmm4,19 - psllq xmm3,3 - pxor xmm5,xmm4 - psrlq xmm4,42 - pxor xmm5,xmm3 - psllq xmm3,42 - pxor xmm5,xmm4 - movdqa xmm4,XMMWORD PTR 48[edx] - pxor xmm5,xmm3 - movdqa xmm3,XMMWORD PTR 16[ebp] - movq mm1,mm4 - paddq xmm1,xmm5 - movq mm7,QWORD PTR [edx-112] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - paddq xmm3,xmm1 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-104] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-112],xmm3 - movdqa xmm5,xmm7 - movdqa xmm3,xmm4 -DB 102,15,58,15,226,8 - movdqa XMMWORD PTR 32[edx],xmm6 -DB 102,15,58,15,238,8 - movdqa xmm6,xmm4 - psrlq xmm4,7 - paddq xmm2,xmm5 - movdqa xmm5,xmm6 - psrlq xmm6,1 - psllq xmm5,56 - pxor xmm4,xmm6 - psrlq xmm6,7 - pxor xmm4,xmm5 - psllq xmm5,7 - pxor xmm4,xmm6 - movdqa xmm6,xmm1 - pxor xmm4,xmm5 - movdqa xmm5,xmm1 - psrlq xmm6,6 - paddq xmm2,xmm4 - movdqa xmm4,xmm1 - psrlq xmm5,19 - psllq xmm4,3 - pxor xmm6,xmm5 - psrlq xmm5,42 - pxor xmm6,xmm4 - psllq xmm4,42 - pxor xmm6,xmm5 - movdqa xmm5,XMMWORD PTR [edx] - pxor xmm6,xmm4 - movdqa xmm4,XMMWORD PTR 32[ebp] - movq mm1,mm4 - paddq xmm2,xmm6 - movq mm7,QWORD PTR [edx-96] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - paddq xmm4,xmm2 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-88] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-96],xmm4 - movdqa xmm6,xmm0 - movdqa xmm4,xmm5 -DB 102,15,58,15,235,8 - movdqa XMMWORD PTR 48[edx],xmm7 -DB 102,15,58,15,247,8 - movdqa xmm7,xmm5 - psrlq xmm5,7 - paddq xmm3,xmm6 - movdqa xmm6,xmm7 - psrlq xmm7,1 - psllq xmm6,56 - pxor xmm5,xmm7 - psrlq xmm7,7 - pxor xmm5,xmm6 - psllq xmm6,7 - pxor xmm5,xmm7 - movdqa xmm7,xmm2 - pxor xmm5,xmm6 - movdqa xmm6,xmm2 - psrlq xmm7,6 - paddq xmm3,xmm5 - movdqa xmm5,xmm2 - psrlq xmm6,19 - psllq xmm5,3 - pxor xmm7,xmm6 - psrlq xmm6,42 - pxor xmm7,xmm5 - psllq xmm5,42 - pxor xmm7,xmm6 - movdqa xmm6,XMMWORD PTR 16[edx] - pxor xmm7,xmm5 - movdqa xmm5,XMMWORD PTR 48[ebp] - movq mm1,mm4 - paddq xmm3,xmm7 - movq mm7,QWORD PTR [edx-80] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - paddq xmm5,xmm3 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-72] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-80],xmm5 - movdqa xmm7,xmm1 - movdqa xmm5,xmm6 -DB 102,15,58,15,244,8 - movdqa XMMWORD PTR [edx],xmm0 -DB 102,15,58,15,248,8 - movdqa xmm0,xmm6 - psrlq xmm6,7 - paddq xmm4,xmm7 - movdqa xmm7,xmm0 - psrlq xmm0,1 - psllq xmm7,56 - pxor xmm6,xmm0 - psrlq xmm0,7 - pxor xmm6,xmm7 - psllq xmm7,7 - pxor xmm6,xmm0 - movdqa xmm0,xmm3 - pxor xmm6,xmm7 - movdqa xmm7,xmm3 - psrlq xmm0,6 - paddq xmm4,xmm6 - movdqa xmm6,xmm3 - psrlq xmm7,19 - psllq xmm6,3 - pxor xmm0,xmm7 - psrlq xmm7,42 - pxor xmm0,xmm6 - psllq xmm6,42 - pxor xmm0,xmm7 - movdqa xmm7,XMMWORD PTR 32[edx] - pxor xmm0,xmm6 - movdqa xmm6,XMMWORD PTR 64[ebp] - movq mm1,mm4 - paddq xmm4,xmm0 - movq mm7,QWORD PTR [edx-64] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - paddq xmm6,xmm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-56] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-64],xmm6 - movdqa xmm0,xmm2 - movdqa xmm6,xmm7 -DB 102,15,58,15,253,8 - movdqa XMMWORD PTR 16[edx],xmm1 -DB 102,15,58,15,193,8 - movdqa xmm1,xmm7 - psrlq xmm7,7 - paddq xmm5,xmm0 - movdqa xmm0,xmm1 - psrlq xmm1,1 - psllq xmm0,56 - pxor xmm7,xmm1 - psrlq xmm1,7 - pxor xmm7,xmm0 - psllq xmm0,7 - pxor xmm7,xmm1 - movdqa xmm1,xmm4 - pxor xmm7,xmm0 - movdqa xmm0,xmm4 - psrlq xmm1,6 - paddq xmm5,xmm7 - movdqa xmm7,xmm4 - psrlq xmm0,19 - psllq xmm7,3 - pxor xmm1,xmm0 - psrlq xmm0,42 - pxor xmm1,xmm7 - psllq xmm7,42 - pxor xmm1,xmm0 - movdqa xmm0,XMMWORD PTR 48[edx] - pxor xmm1,xmm7 - movdqa xmm7,XMMWORD PTR 80[ebp] - movq mm1,mm4 - paddq xmm5,xmm1 - movq mm7,QWORD PTR [edx-48] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - paddq xmm7,xmm5 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-40] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-48],xmm7 - movdqa xmm1,xmm3 - movdqa xmm7,xmm0 -DB 102,15,58,15,198,8 - movdqa XMMWORD PTR 32[edx],xmm2 -DB 102,15,58,15,202,8 - movdqa xmm2,xmm0 - psrlq xmm0,7 - paddq xmm6,xmm1 - movdqa xmm1,xmm2 - psrlq xmm2,1 - psllq xmm1,56 - pxor xmm0,xmm2 - psrlq xmm2,7 - pxor xmm0,xmm1 - psllq xmm1,7 - pxor xmm0,xmm2 - movdqa xmm2,xmm5 - pxor xmm0,xmm1 - movdqa xmm1,xmm5 - psrlq xmm2,6 - paddq xmm6,xmm0 - movdqa xmm0,xmm5 - psrlq xmm1,19 - psllq xmm0,3 - pxor xmm2,xmm1 - psrlq xmm1,42 - pxor xmm2,xmm0 - psllq xmm0,42 - pxor xmm2,xmm1 - movdqa xmm1,XMMWORD PTR [edx] - pxor xmm2,xmm0 - movdqa xmm0,XMMWORD PTR 96[ebp] - movq mm1,mm4 - paddq xmm6,xmm2 - movq mm7,QWORD PTR [edx-32] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - paddq xmm0,xmm6 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-24] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-32],xmm0 - movdqa xmm2,xmm4 - movdqa xmm0,xmm1 -DB 102,15,58,15,207,8 - movdqa XMMWORD PTR 48[edx],xmm3 -DB 102,15,58,15,211,8 - movdqa xmm3,xmm1 - psrlq xmm1,7 - paddq xmm7,xmm2 - movdqa xmm2,xmm3 - psrlq xmm3,1 - psllq xmm2,56 - pxor xmm1,xmm3 - psrlq xmm3,7 - pxor xmm1,xmm2 - psllq xmm2,7 - pxor xmm1,xmm3 - movdqa xmm3,xmm6 - pxor xmm1,xmm2 - movdqa xmm2,xmm6 - psrlq xmm3,6 - paddq xmm7,xmm1 - movdqa xmm1,xmm6 - psrlq xmm2,19 - psllq xmm1,3 - pxor xmm3,xmm2 - psrlq xmm2,42 - pxor xmm3,xmm1 - psllq xmm1,42 - pxor xmm3,xmm2 - movdqa xmm2,XMMWORD PTR 16[edx] - pxor xmm3,xmm1 - movdqa xmm1,XMMWORD PTR 112[ebp] - movq mm1,mm4 - paddq xmm7,xmm3 - movq mm7,QWORD PTR [edx-16] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - paddq xmm1,xmm7 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-8] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-16],xmm1 - lea ebp,DWORD PTR 128[ebp] - dec ecx - jnz $L00800_47_ssse3 - movdqa xmm1,XMMWORD PTR [ebp] - lea ebp,DWORD PTR [ebp-640] - movdqu xmm0,XMMWORD PTR [ebx] -DB 102,15,56,0,193 - movdqa xmm3,XMMWORD PTR [ebp] - movdqa xmm2,xmm1 - movdqu xmm1,XMMWORD PTR 16[ebx] - paddq xmm3,xmm0 -DB 102,15,56,0,202 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-128] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-120] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-128],xmm3 - movdqa xmm4,XMMWORD PTR 16[ebp] - movdqa xmm3,xmm2 - movdqu xmm2,XMMWORD PTR 32[ebx] - paddq xmm4,xmm1 -DB 102,15,56,0,211 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-112] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-104] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-112],xmm4 - movdqa xmm5,XMMWORD PTR 32[ebp] - movdqa xmm4,xmm3 - movdqu xmm3,XMMWORD PTR 48[ebx] - paddq xmm5,xmm2 -DB 102,15,56,0,220 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-96] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-88] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-96],xmm5 - movdqa xmm6,XMMWORD PTR 48[ebp] - movdqa xmm5,xmm4 - movdqu xmm4,XMMWORD PTR 64[ebx] - paddq xmm6,xmm3 -DB 102,15,56,0,229 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-80] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-72] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-80],xmm6 - movdqa xmm7,XMMWORD PTR 64[ebp] - movdqa xmm6,xmm5 - movdqu xmm5,XMMWORD PTR 80[ebx] - paddq xmm7,xmm4 -DB 102,15,56,0,238 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-64] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-56] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-64],xmm7 - movdqa XMMWORD PTR [edx],xmm0 - movdqa xmm0,XMMWORD PTR 80[ebp] - movdqa xmm7,xmm6 - movdqu xmm6,XMMWORD PTR 96[ebx] - paddq xmm0,xmm5 -DB 102,15,56,0,247 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-48] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-40] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-48],xmm0 - movdqa XMMWORD PTR 16[edx],xmm1 - movdqa xmm1,XMMWORD PTR 96[ebp] - movdqa xmm0,xmm7 - movdqu xmm7,XMMWORD PTR 112[ebx] - paddq xmm1,xmm6 -DB 102,15,56,0,248 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-32] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-24] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-32],xmm1 - movdqa XMMWORD PTR 32[edx],xmm2 - movdqa xmm2,XMMWORD PTR 112[ebp] - movdqa xmm0,XMMWORD PTR [edx] - paddq xmm2,xmm7 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-16] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-8] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-16],xmm2 - movq mm1,QWORD PTR 8[esp] - paddq mm0,mm3 - movq mm3,QWORD PTR 24[esp] - movq mm7,QWORD PTR 56[esp] - pxor mm2,mm1 - paddq mm0,QWORD PTR [esi] - paddq mm1,QWORD PTR 8[esi] - paddq mm2,QWORD PTR 16[esi] - paddq mm3,QWORD PTR 24[esi] - paddq mm4,QWORD PTR 32[esi] - paddq mm5,QWORD PTR 40[esi] - paddq mm6,QWORD PTR 48[esi] - paddq mm7,QWORD PTR 56[esi] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - cmp edi,eax - jb $L007loop_ssse3 - mov esp,DWORD PTR 76[edx] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L002loop_x86: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 16[edi] - mov ebx,DWORD PTR 20[edi] - mov ecx,DWORD PTR 24[edi] - mov edx,DWORD PTR 28[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 32[edi] - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - mov edx,DWORD PTR 44[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 48[edi] - mov ebx,DWORD PTR 52[edi] - mov ecx,DWORD PTR 56[edi] - mov edx,DWORD PTR 60[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 64[edi] - mov ebx,DWORD PTR 68[edi] - mov ecx,DWORD PTR 72[edi] - mov edx,DWORD PTR 76[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 80[edi] - mov ebx,DWORD PTR 84[edi] - mov ecx,DWORD PTR 88[edi] - mov edx,DWORD PTR 92[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 96[edi] - mov ebx,DWORD PTR 100[edi] - mov ecx,DWORD PTR 104[edi] - mov edx,DWORD PTR 108[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 112[edi] - mov ebx,DWORD PTR 116[edi] - mov ecx,DWORD PTR 120[edi] - mov edx,DWORD PTR 124[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - add edi,128 - sub esp,72 - mov DWORD PTR 204[esp],edi - lea edi,DWORD PTR 8[esp] - mov ecx,16 -DD 2784229001 -ALIGN 16 -$L00900_15_x86: - mov ecx,DWORD PTR 40[esp] - mov edx,DWORD PTR 44[esp] - mov esi,ecx - shr ecx,9 - mov edi,edx - shr edx,9 - mov ebx,ecx - shl esi,14 - mov eax,edx - shl edi,14 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor eax,ecx - shl esi,4 - xor ebx,edx - shl edi,4 - xor ebx,esi - shr ecx,4 - xor eax,edi - shr edx,4 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 48[esp] - mov edx,DWORD PTR 52[esp] - mov esi,DWORD PTR 56[esp] - mov edi,DWORD PTR 60[esp] - add eax,DWORD PTR 64[esp] - adc ebx,DWORD PTR 68[esp] - xor ecx,esi - xor edx,edi - and ecx,DWORD PTR 40[esp] - and edx,DWORD PTR 44[esp] - add eax,DWORD PTR 192[esp] - adc ebx,DWORD PTR 196[esp] - xor ecx,esi - xor edx,edi - mov esi,DWORD PTR [ebp] - mov edi,DWORD PTR 4[ebp] - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 32[esp] - mov edx,DWORD PTR 36[esp] - add eax,esi - adc ebx,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov esi,ecx - shr ecx,2 - mov edi,edx - shr edx,2 - mov ebx,ecx - shl esi,4 - mov eax,edx - shl edi,4 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor ebx,ecx - shl esi,21 - xor eax,edx - shl edi,21 - xor eax,esi - shr ecx,21 - xor ebx,edi - shr edx,21 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - or ecx,esi - or edx,edi - and ecx,DWORD PTR 24[esp] - and edx,DWORD PTR 28[esp] - and esi,DWORD PTR 8[esp] - and edi,DWORD PTR 12[esp] - or ecx,esi - or edx,edi - add eax,ecx - adc ebx,edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov dl,BYTE PTR [ebp] - sub esp,8 - lea ebp,DWORD PTR 8[ebp] - cmp dl,148 - jne $L00900_15_x86 -ALIGN 16 -$L01016_79_x86: - mov ecx,DWORD PTR 312[esp] - mov edx,DWORD PTR 316[esp] - mov esi,ecx - shr ecx,1 - mov edi,edx - shr edx,1 - mov eax,ecx - shl esi,24 - mov ebx,edx - shl edi,24 - xor ebx,esi - shr ecx,6 - xor eax,edi - shr edx,6 - xor eax,ecx - shl esi,7 - xor ebx,edx - shl edi,1 - xor ebx,esi - shr ecx,1 - xor eax,edi - shr edx,1 - xor eax,ecx - shl edi,6 - xor ebx,edx - xor eax,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov ecx,DWORD PTR 208[esp] - mov edx,DWORD PTR 212[esp] - mov esi,ecx - shr ecx,6 - mov edi,edx - shr edx,6 - mov eax,ecx - shl esi,3 - mov ebx,edx - shl edi,3 - xor eax,esi - shr ecx,13 - xor ebx,edi - shr edx,13 - xor eax,ecx - shl esi,10 - xor ebx,edx - shl edi,10 - xor ebx,esi - shr ecx,10 - xor eax,edi - shr edx,10 - xor ebx,ecx - shl edi,13 - xor eax,edx - xor eax,edi - mov ecx,DWORD PTR 320[esp] - mov edx,DWORD PTR 324[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - mov esi,DWORD PTR 248[esp] - mov edi,DWORD PTR 252[esp] - add eax,ecx - adc ebx,edx - add eax,esi - adc ebx,edi - mov DWORD PTR 192[esp],eax - mov DWORD PTR 196[esp],ebx - mov ecx,DWORD PTR 40[esp] - mov edx,DWORD PTR 44[esp] - mov esi,ecx - shr ecx,9 - mov edi,edx - shr edx,9 - mov ebx,ecx - shl esi,14 - mov eax,edx - shl edi,14 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor eax,ecx - shl esi,4 - xor ebx,edx - shl edi,4 - xor ebx,esi - shr ecx,4 - xor eax,edi - shr edx,4 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 48[esp] - mov edx,DWORD PTR 52[esp] - mov esi,DWORD PTR 56[esp] - mov edi,DWORD PTR 60[esp] - add eax,DWORD PTR 64[esp] - adc ebx,DWORD PTR 68[esp] - xor ecx,esi - xor edx,edi - and ecx,DWORD PTR 40[esp] - and edx,DWORD PTR 44[esp] - add eax,DWORD PTR 192[esp] - adc ebx,DWORD PTR 196[esp] - xor ecx,esi - xor edx,edi - mov esi,DWORD PTR [ebp] - mov edi,DWORD PTR 4[ebp] - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 32[esp] - mov edx,DWORD PTR 36[esp] - add eax,esi - adc ebx,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov esi,ecx - shr ecx,2 - mov edi,edx - shr edx,2 - mov ebx,ecx - shl esi,4 - mov eax,edx - shl edi,4 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor ebx,ecx - shl esi,21 - xor eax,edx - shl edi,21 - xor eax,esi - shr ecx,21 - xor ebx,edi - shr edx,21 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - or ecx,esi - or edx,edi - and ecx,DWORD PTR 24[esp] - and edx,DWORD PTR 28[esp] - and esi,DWORD PTR 8[esp] - and edi,DWORD PTR 12[esp] - or ecx,esi - or edx,edi - add eax,ecx - adc ebx,edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov dl,BYTE PTR [ebp] - sub esp,8 - lea ebp,DWORD PTR 8[ebp] - cmp dl,23 - jne $L01016_79_x86 - mov esi,DWORD PTR 840[esp] - mov edi,DWORD PTR 844[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - add eax,DWORD PTR 8[esp] - adc ebx,DWORD PTR 12[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - add ecx,DWORD PTR 16[esp] - adc edx,DWORD PTR 20[esp] - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - add eax,DWORD PTR 24[esp] - adc ebx,DWORD PTR 28[esp] - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],ebx - add ecx,DWORD PTR 32[esp] - adc edx,DWORD PTR 36[esp] - mov DWORD PTR 24[esi],ecx - mov DWORD PTR 28[esi],edx - mov eax,DWORD PTR 32[esi] - mov ebx,DWORD PTR 36[esi] - mov ecx,DWORD PTR 40[esi] - mov edx,DWORD PTR 44[esi] - add eax,DWORD PTR 40[esp] - adc ebx,DWORD PTR 44[esp] - mov DWORD PTR 32[esi],eax - mov DWORD PTR 36[esi],ebx - add ecx,DWORD PTR 48[esp] - adc edx,DWORD PTR 52[esp] - mov DWORD PTR 40[esi],ecx - mov DWORD PTR 44[esi],edx - mov eax,DWORD PTR 48[esi] - mov ebx,DWORD PTR 52[esi] - mov ecx,DWORD PTR 56[esi] - mov edx,DWORD PTR 60[esi] - add eax,DWORD PTR 56[esp] - adc ebx,DWORD PTR 60[esp] - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],ebx - add ecx,DWORD PTR 64[esp] - adc edx,DWORD PTR 68[esp] - mov DWORD PTR 56[esi],ecx - mov DWORD PTR 60[esi],edx - add esp,840 - sub ebp,640 - cmp edi,DWORD PTR 8[esp] - jb $L002loop_x86 - mov esp,DWORD PTR 12[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001K512: -DD 3609767458,1116352408 -DD 602891725,1899447441 -DD 3964484399,3049323471 -DD 2173295548,3921009573 -DD 4081628472,961987163 -DD 3053834265,1508970993 -DD 2937671579,2453635748 -DD 3664609560,2870763221 -DD 2734883394,3624381080 -DD 1164996542,310598401 -DD 1323610764,607225278 -DD 3590304994,1426881987 -DD 4068182383,1925078388 -DD 991336113,2162078206 -DD 633803317,2614888103 -DD 3479774868,3248222580 -DD 2666613458,3835390401 -DD 944711139,4022224774 -DD 2341262773,264347078 -DD 2007800933,604807628 -DD 1495990901,770255983 -DD 1856431235,1249150122 -DD 3175218132,1555081692 -DD 2198950837,1996064986 -DD 3999719339,2554220882 -DD 766784016,2821834349 -DD 2566594879,2952996808 -DD 3203337956,3210313671 -DD 1034457026,3336571891 -DD 2466948901,3584528711 -DD 3758326383,113926993 -DD 168717936,338241895 -DD 1188179964,666307205 -DD 1546045734,773529912 -DD 1522805485,1294757372 -DD 2643833823,1396182291 -DD 2343527390,1695183700 -DD 1014477480,1986661051 -DD 1206759142,2177026350 -DD 344077627,2456956037 -DD 1290863460,2730485921 -DD 3158454273,2820302411 -DD 3505952657,3259730800 -DD 106217008,3345764771 -DD 3606008344,3516065817 -DD 1432725776,3600352804 -DD 1467031594,4094571909 -DD 851169720,275423344 -DD 3100823752,430227734 -DD 1363258195,506948616 -DD 3750685593,659060556 -DD 3785050280,883997877 -DD 3318307427,958139571 -DD 3812723403,1322822218 -DD 2003034995,1537002063 -DD 3602036899,1747873779 -DD 1575990012,1955562222 -DD 1125592928,2024104815 -DD 2716904306,2227730452 -DD 442776044,2361852424 -DD 593698344,2428436474 -DD 3733110249,2756734187 -DD 2999351573,3204031479 -DD 3815920427,3329325298 -DD 3928383900,3391569614 -DD 566280711,3515267271 -DD 3454069534,3940187606 -DD 4000239992,4118630271 -DD 1914138554,116418474 -DD 2731055270,174292421 -DD 3203993006,289380356 -DD 320620315,460393269 -DD 587496836,685471733 -DD 1086792851,852142971 -DD 365543100,1017036298 -DD 2618297676,1126000580 -DD 3409855158,1288033470 -DD 4234509866,1501505948 -DD 987167468,1607167915 -DD 1246189591,1816402316 -DD 67438087,66051 -DD 202182159,134810123 -_sha512_block_data_order ENDP -DB 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/whrlpool/wp-mmx.asm b/deps/openssl/asm/x86-win32-masm/whrlpool/wp-mmx.asm deleted file mode 100644 index 22a17d3510940c..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/whrlpool/wp-mmx.asm +++ /dev/null @@ -1,1124 +0,0 @@ -TITLE wp-mmx.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_whirlpool_block_mmx PROC PUBLIC -$L_whirlpool_block_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov ebp,DWORD PTR 28[esp] - mov eax,esp - sub esp,148 - and esp,-64 - lea ebx,DWORD PTR 128[esp] - mov DWORD PTR [ebx],esi - mov DWORD PTR 4[ebx],edi - mov DWORD PTR 8[ebx],ebp - mov DWORD PTR 16[ebx],eax - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001table-$L000pic_point)[ebp] - xor ecx,ecx - xor edx,edx - movq mm0,QWORD PTR [esi] - movq mm1,QWORD PTR 8[esi] - movq mm2,QWORD PTR 16[esi] - movq mm3,QWORD PTR 24[esi] - movq mm4,QWORD PTR 32[esi] - movq mm5,QWORD PTR 40[esi] - movq mm6,QWORD PTR 48[esi] - movq mm7,QWORD PTR 56[esi] -$L002outerloop: - movq QWORD PTR [esp],mm0 - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 32[esp],mm4 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - movq QWORD PTR 56[esp],mm7 - pxor mm0,QWORD PTR [edi] - pxor mm1,QWORD PTR 8[edi] - pxor mm2,QWORD PTR 16[edi] - pxor mm3,QWORD PTR 24[edi] - pxor mm4,QWORD PTR 32[edi] - pxor mm5,QWORD PTR 40[edi] - pxor mm6,QWORD PTR 48[edi] - pxor mm7,QWORD PTR 56[edi] - movq QWORD PTR 64[esp],mm0 - movq QWORD PTR 72[esp],mm1 - movq QWORD PTR 80[esp],mm2 - movq QWORD PTR 88[esp],mm3 - movq QWORD PTR 96[esp],mm4 - movq QWORD PTR 104[esp],mm5 - movq QWORD PTR 112[esp],mm6 - movq QWORD PTR 120[esp],mm7 - xor esi,esi - mov DWORD PTR 12[ebx],esi -ALIGN 16 -$L003round: - movq mm0,QWORD PTR 4096[esi*8+ebp] - mov eax,DWORD PTR [esp] - mov ebx,DWORD PTR 4[esp] - movzx ecx,al - movzx edx,ah - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR [esi*8+ebp] - movq mm1,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 8[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - movq mm2,QWORD PTR 6[esi*8+ebp] - movq mm3,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - movq mm4,QWORD PTR 4[esi*8+ebp] - movq mm5,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 12[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - movq mm6,QWORD PTR 2[esi*8+ebp] - movq mm7,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR [esi*8+ebp] - pxor mm2,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 16[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 6[esi*8+ebp] - pxor mm4,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 4[esi*8+ebp] - pxor mm6,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 20[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR 2[esi*8+ebp] - pxor mm0,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR [esi*8+ebp] - pxor mm3,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 24[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 6[esi*8+ebp] - pxor mm5,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 4[esi*8+ebp] - pxor mm7,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 28[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR 2[esi*8+ebp] - pxor mm1,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR [esi*8+ebp] - pxor mm4,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 32[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 6[esi*8+ebp] - pxor mm6,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 4[esi*8+ebp] - pxor mm0,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 36[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR 2[esi*8+ebp] - pxor mm2,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR [esi*8+ebp] - pxor mm5,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 40[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 6[esi*8+ebp] - pxor mm7,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 4[esi*8+ebp] - pxor mm1,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 44[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR 2[esi*8+ebp] - pxor mm3,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR [esi*8+ebp] - pxor mm6,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 48[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 6[esi*8+ebp] - pxor mm0,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 4[esi*8+ebp] - pxor mm2,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 52[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR 2[esi*8+ebp] - pxor mm4,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR [esi*8+ebp] - pxor mm7,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 56[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 6[esi*8+ebp] - pxor mm1,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 4[esi*8+ebp] - pxor mm3,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 60[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR 2[esi*8+ebp] - pxor mm5,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR [esi*8+ebp] - pxor mm0,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 64[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 6[esi*8+ebp] - pxor mm2,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 4[esi*8+ebp] - pxor mm4,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 68[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR 2[esi*8+ebp] - pxor mm6,QWORD PTR 1[edi*8+ebp] - movq QWORD PTR [esp],mm0 - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 32[esp],mm4 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - movq QWORD PTR 56[esp],mm7 - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR [esi*8+ebp] - pxor mm1,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 72[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 6[esi*8+ebp] - pxor mm3,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 4[esi*8+ebp] - pxor mm5,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 76[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR 2[esi*8+ebp] - pxor mm7,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR [esi*8+ebp] - pxor mm2,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 80[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 6[esi*8+ebp] - pxor mm4,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 4[esi*8+ebp] - pxor mm6,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 84[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR 2[esi*8+ebp] - pxor mm0,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR [esi*8+ebp] - pxor mm3,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 88[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 6[esi*8+ebp] - pxor mm5,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 4[esi*8+ebp] - pxor mm7,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 92[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR 2[esi*8+ebp] - pxor mm1,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR [esi*8+ebp] - pxor mm4,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 96[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 6[esi*8+ebp] - pxor mm6,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 4[esi*8+ebp] - pxor mm0,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 100[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR 2[esi*8+ebp] - pxor mm2,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR [esi*8+ebp] - pxor mm5,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 104[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 6[esi*8+ebp] - pxor mm7,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 4[esi*8+ebp] - pxor mm1,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 108[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR 2[esi*8+ebp] - pxor mm3,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR [esi*8+ebp] - pxor mm6,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 112[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 6[esi*8+ebp] - pxor mm0,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 4[esi*8+ebp] - pxor mm2,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 116[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR 2[esi*8+ebp] - pxor mm4,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR [esi*8+ebp] - pxor mm7,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 120[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 6[esi*8+ebp] - pxor mm1,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 4[esi*8+ebp] - pxor mm3,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 124[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR 2[esi*8+ebp] - pxor mm5,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR [esi*8+ebp] - pxor mm0,QWORD PTR 7[edi*8+ebp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 6[esi*8+ebp] - pxor mm2,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 4[esi*8+ebp] - pxor mm4,QWORD PTR 3[edi*8+ebp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR 2[esi*8+ebp] - pxor mm6,QWORD PTR 1[edi*8+ebp] - lea ebx,DWORD PTR 128[esp] - mov esi,DWORD PTR 12[ebx] - add esi,1 - cmp esi,10 - je $L004roundsdone - mov DWORD PTR 12[ebx],esi - movq QWORD PTR 64[esp],mm0 - movq QWORD PTR 72[esp],mm1 - movq QWORD PTR 80[esp],mm2 - movq QWORD PTR 88[esp],mm3 - movq QWORD PTR 96[esp],mm4 - movq QWORD PTR 104[esp],mm5 - movq QWORD PTR 112[esp],mm6 - movq QWORD PTR 120[esp],mm7 - jmp $L003round -ALIGN 16 -$L004roundsdone: - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - mov eax,DWORD PTR 8[ebx] - pxor mm0,QWORD PTR [edi] - pxor mm1,QWORD PTR 8[edi] - pxor mm2,QWORD PTR 16[edi] - pxor mm3,QWORD PTR 24[edi] - pxor mm4,QWORD PTR 32[edi] - pxor mm5,QWORD PTR 40[edi] - pxor mm6,QWORD PTR 48[edi] - pxor mm7,QWORD PTR 56[edi] - pxor mm0,QWORD PTR [esi] - pxor mm1,QWORD PTR 8[esi] - pxor mm2,QWORD PTR 16[esi] - pxor mm3,QWORD PTR 24[esi] - pxor mm4,QWORD PTR 32[esi] - pxor mm5,QWORD PTR 40[esi] - pxor mm6,QWORD PTR 48[esi] - pxor mm7,QWORD PTR 56[esi] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - lea edi,DWORD PTR 64[edi] - sub eax,1 - jz $L005alldone - mov DWORD PTR 4[ebx],edi - mov DWORD PTR 8[ebx],eax - jmp $L002outerloop -$L005alldone: - emms - mov esp,DWORD PTR 16[ebx] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001table: -DB 24,24,96,24,192,120,48,216 -DB 24,24,96,24,192,120,48,216 -DB 35,35,140,35,5,175,70,38 -DB 35,35,140,35,5,175,70,38 -DB 198,198,63,198,126,249,145,184 -DB 198,198,63,198,126,249,145,184 -DB 232,232,135,232,19,111,205,251 -DB 232,232,135,232,19,111,205,251 -DB 135,135,38,135,76,161,19,203 -DB 135,135,38,135,76,161,19,203 -DB 184,184,218,184,169,98,109,17 -DB 184,184,218,184,169,98,109,17 -DB 1,1,4,1,8,5,2,9 -DB 1,1,4,1,8,5,2,9 -DB 79,79,33,79,66,110,158,13 -DB 79,79,33,79,66,110,158,13 -DB 54,54,216,54,173,238,108,155 -DB 54,54,216,54,173,238,108,155 -DB 166,166,162,166,89,4,81,255 -DB 166,166,162,166,89,4,81,255 -DB 210,210,111,210,222,189,185,12 -DB 210,210,111,210,222,189,185,12 -DB 245,245,243,245,251,6,247,14 -DB 245,245,243,245,251,6,247,14 -DB 121,121,249,121,239,128,242,150 -DB 121,121,249,121,239,128,242,150 -DB 111,111,161,111,95,206,222,48 -DB 111,111,161,111,95,206,222,48 -DB 145,145,126,145,252,239,63,109 -DB 145,145,126,145,252,239,63,109 -DB 82,82,85,82,170,7,164,248 -DB 82,82,85,82,170,7,164,248 -DB 96,96,157,96,39,253,192,71 -DB 96,96,157,96,39,253,192,71 -DB 188,188,202,188,137,118,101,53 -DB 188,188,202,188,137,118,101,53 -DB 155,155,86,155,172,205,43,55 -DB 155,155,86,155,172,205,43,55 -DB 142,142,2,142,4,140,1,138 -DB 142,142,2,142,4,140,1,138 -DB 163,163,182,163,113,21,91,210 -DB 163,163,182,163,113,21,91,210 -DB 12,12,48,12,96,60,24,108 -DB 12,12,48,12,96,60,24,108 -DB 123,123,241,123,255,138,246,132 -DB 123,123,241,123,255,138,246,132 -DB 53,53,212,53,181,225,106,128 -DB 53,53,212,53,181,225,106,128 -DB 29,29,116,29,232,105,58,245 -DB 29,29,116,29,232,105,58,245 -DB 224,224,167,224,83,71,221,179 -DB 224,224,167,224,83,71,221,179 -DB 215,215,123,215,246,172,179,33 -DB 215,215,123,215,246,172,179,33 -DB 194,194,47,194,94,237,153,156 -DB 194,194,47,194,94,237,153,156 -DB 46,46,184,46,109,150,92,67 -DB 46,46,184,46,109,150,92,67 -DB 75,75,49,75,98,122,150,41 -DB 75,75,49,75,98,122,150,41 -DB 254,254,223,254,163,33,225,93 -DB 254,254,223,254,163,33,225,93 -DB 87,87,65,87,130,22,174,213 -DB 87,87,65,87,130,22,174,213 -DB 21,21,84,21,168,65,42,189 -DB 21,21,84,21,168,65,42,189 -DB 119,119,193,119,159,182,238,232 -DB 119,119,193,119,159,182,238,232 -DB 55,55,220,55,165,235,110,146 -DB 55,55,220,55,165,235,110,146 -DB 229,229,179,229,123,86,215,158 -DB 229,229,179,229,123,86,215,158 -DB 159,159,70,159,140,217,35,19 -DB 159,159,70,159,140,217,35,19 -DB 240,240,231,240,211,23,253,35 -DB 240,240,231,240,211,23,253,35 -DB 74,74,53,74,106,127,148,32 -DB 74,74,53,74,106,127,148,32 -DB 218,218,79,218,158,149,169,68 -DB 218,218,79,218,158,149,169,68 -DB 88,88,125,88,250,37,176,162 -DB 88,88,125,88,250,37,176,162 -DB 201,201,3,201,6,202,143,207 -DB 201,201,3,201,6,202,143,207 -DB 41,41,164,41,85,141,82,124 -DB 41,41,164,41,85,141,82,124 -DB 10,10,40,10,80,34,20,90 -DB 10,10,40,10,80,34,20,90 -DB 177,177,254,177,225,79,127,80 -DB 177,177,254,177,225,79,127,80 -DB 160,160,186,160,105,26,93,201 -DB 160,160,186,160,105,26,93,201 -DB 107,107,177,107,127,218,214,20 -DB 107,107,177,107,127,218,214,20 -DB 133,133,46,133,92,171,23,217 -DB 133,133,46,133,92,171,23,217 -DB 189,189,206,189,129,115,103,60 -DB 189,189,206,189,129,115,103,60 -DB 93,93,105,93,210,52,186,143 -DB 93,93,105,93,210,52,186,143 -DB 16,16,64,16,128,80,32,144 -DB 16,16,64,16,128,80,32,144 -DB 244,244,247,244,243,3,245,7 -DB 244,244,247,244,243,3,245,7 -DB 203,203,11,203,22,192,139,221 -DB 203,203,11,203,22,192,139,221 -DB 62,62,248,62,237,198,124,211 -DB 62,62,248,62,237,198,124,211 -DB 5,5,20,5,40,17,10,45 -DB 5,5,20,5,40,17,10,45 -DB 103,103,129,103,31,230,206,120 -DB 103,103,129,103,31,230,206,120 -DB 228,228,183,228,115,83,213,151 -DB 228,228,183,228,115,83,213,151 -DB 39,39,156,39,37,187,78,2 -DB 39,39,156,39,37,187,78,2 -DB 65,65,25,65,50,88,130,115 -DB 65,65,25,65,50,88,130,115 -DB 139,139,22,139,44,157,11,167 -DB 139,139,22,139,44,157,11,167 -DB 167,167,166,167,81,1,83,246 -DB 167,167,166,167,81,1,83,246 -DB 125,125,233,125,207,148,250,178 -DB 125,125,233,125,207,148,250,178 -DB 149,149,110,149,220,251,55,73 -DB 149,149,110,149,220,251,55,73 -DB 216,216,71,216,142,159,173,86 -DB 216,216,71,216,142,159,173,86 -DB 251,251,203,251,139,48,235,112 -DB 251,251,203,251,139,48,235,112 -DB 238,238,159,238,35,113,193,205 -DB 238,238,159,238,35,113,193,205 -DB 124,124,237,124,199,145,248,187 -DB 124,124,237,124,199,145,248,187 -DB 102,102,133,102,23,227,204,113 -DB 102,102,133,102,23,227,204,113 -DB 221,221,83,221,166,142,167,123 -DB 221,221,83,221,166,142,167,123 -DB 23,23,92,23,184,75,46,175 -DB 23,23,92,23,184,75,46,175 -DB 71,71,1,71,2,70,142,69 -DB 71,71,1,71,2,70,142,69 -DB 158,158,66,158,132,220,33,26 -DB 158,158,66,158,132,220,33,26 -DB 202,202,15,202,30,197,137,212 -DB 202,202,15,202,30,197,137,212 -DB 45,45,180,45,117,153,90,88 -DB 45,45,180,45,117,153,90,88 -DB 191,191,198,191,145,121,99,46 -DB 191,191,198,191,145,121,99,46 -DB 7,7,28,7,56,27,14,63 -DB 7,7,28,7,56,27,14,63 -DB 173,173,142,173,1,35,71,172 -DB 173,173,142,173,1,35,71,172 -DB 90,90,117,90,234,47,180,176 -DB 90,90,117,90,234,47,180,176 -DB 131,131,54,131,108,181,27,239 -DB 131,131,54,131,108,181,27,239 -DB 51,51,204,51,133,255,102,182 -DB 51,51,204,51,133,255,102,182 -DB 99,99,145,99,63,242,198,92 -DB 99,99,145,99,63,242,198,92 -DB 2,2,8,2,16,10,4,18 -DB 2,2,8,2,16,10,4,18 -DB 170,170,146,170,57,56,73,147 -DB 170,170,146,170,57,56,73,147 -DB 113,113,217,113,175,168,226,222 -DB 113,113,217,113,175,168,226,222 -DB 200,200,7,200,14,207,141,198 -DB 200,200,7,200,14,207,141,198 -DB 25,25,100,25,200,125,50,209 -DB 25,25,100,25,200,125,50,209 -DB 73,73,57,73,114,112,146,59 -DB 73,73,57,73,114,112,146,59 -DB 217,217,67,217,134,154,175,95 -DB 217,217,67,217,134,154,175,95 -DB 242,242,239,242,195,29,249,49 -DB 242,242,239,242,195,29,249,49 -DB 227,227,171,227,75,72,219,168 -DB 227,227,171,227,75,72,219,168 -DB 91,91,113,91,226,42,182,185 -DB 91,91,113,91,226,42,182,185 -DB 136,136,26,136,52,146,13,188 -DB 136,136,26,136,52,146,13,188 -DB 154,154,82,154,164,200,41,62 -DB 154,154,82,154,164,200,41,62 -DB 38,38,152,38,45,190,76,11 -DB 38,38,152,38,45,190,76,11 -DB 50,50,200,50,141,250,100,191 -DB 50,50,200,50,141,250,100,191 -DB 176,176,250,176,233,74,125,89 -DB 176,176,250,176,233,74,125,89 -DB 233,233,131,233,27,106,207,242 -DB 233,233,131,233,27,106,207,242 -DB 15,15,60,15,120,51,30,119 -DB 15,15,60,15,120,51,30,119 -DB 213,213,115,213,230,166,183,51 -DB 213,213,115,213,230,166,183,51 -DB 128,128,58,128,116,186,29,244 -DB 128,128,58,128,116,186,29,244 -DB 190,190,194,190,153,124,97,39 -DB 190,190,194,190,153,124,97,39 -DB 205,205,19,205,38,222,135,235 -DB 205,205,19,205,38,222,135,235 -DB 52,52,208,52,189,228,104,137 -DB 52,52,208,52,189,228,104,137 -DB 72,72,61,72,122,117,144,50 -DB 72,72,61,72,122,117,144,50 -DB 255,255,219,255,171,36,227,84 -DB 255,255,219,255,171,36,227,84 -DB 122,122,245,122,247,143,244,141 -DB 122,122,245,122,247,143,244,141 -DB 144,144,122,144,244,234,61,100 -DB 144,144,122,144,244,234,61,100 -DB 95,95,97,95,194,62,190,157 -DB 95,95,97,95,194,62,190,157 -DB 32,32,128,32,29,160,64,61 -DB 32,32,128,32,29,160,64,61 -DB 104,104,189,104,103,213,208,15 -DB 104,104,189,104,103,213,208,15 -DB 26,26,104,26,208,114,52,202 -DB 26,26,104,26,208,114,52,202 -DB 174,174,130,174,25,44,65,183 -DB 174,174,130,174,25,44,65,183 -DB 180,180,234,180,201,94,117,125 -DB 180,180,234,180,201,94,117,125 -DB 84,84,77,84,154,25,168,206 -DB 84,84,77,84,154,25,168,206 -DB 147,147,118,147,236,229,59,127 -DB 147,147,118,147,236,229,59,127 -DB 34,34,136,34,13,170,68,47 -DB 34,34,136,34,13,170,68,47 -DB 100,100,141,100,7,233,200,99 -DB 100,100,141,100,7,233,200,99 -DB 241,241,227,241,219,18,255,42 -DB 241,241,227,241,219,18,255,42 -DB 115,115,209,115,191,162,230,204 -DB 115,115,209,115,191,162,230,204 -DB 18,18,72,18,144,90,36,130 -DB 18,18,72,18,144,90,36,130 -DB 64,64,29,64,58,93,128,122 -DB 64,64,29,64,58,93,128,122 -DB 8,8,32,8,64,40,16,72 -DB 8,8,32,8,64,40,16,72 -DB 195,195,43,195,86,232,155,149 -DB 195,195,43,195,86,232,155,149 -DB 236,236,151,236,51,123,197,223 -DB 236,236,151,236,51,123,197,223 -DB 219,219,75,219,150,144,171,77 -DB 219,219,75,219,150,144,171,77 -DB 161,161,190,161,97,31,95,192 -DB 161,161,190,161,97,31,95,192 -DB 141,141,14,141,28,131,7,145 -DB 141,141,14,141,28,131,7,145 -DB 61,61,244,61,245,201,122,200 -DB 61,61,244,61,245,201,122,200 -DB 151,151,102,151,204,241,51,91 -DB 151,151,102,151,204,241,51,91 -DB 0,0,0,0,0,0,0,0 -DB 0,0,0,0,0,0,0,0 -DB 207,207,27,207,54,212,131,249 -DB 207,207,27,207,54,212,131,249 -DB 43,43,172,43,69,135,86,110 -DB 43,43,172,43,69,135,86,110 -DB 118,118,197,118,151,179,236,225 -DB 118,118,197,118,151,179,236,225 -DB 130,130,50,130,100,176,25,230 -DB 130,130,50,130,100,176,25,230 -DB 214,214,127,214,254,169,177,40 -DB 214,214,127,214,254,169,177,40 -DB 27,27,108,27,216,119,54,195 -DB 27,27,108,27,216,119,54,195 -DB 181,181,238,181,193,91,119,116 -DB 181,181,238,181,193,91,119,116 -DB 175,175,134,175,17,41,67,190 -DB 175,175,134,175,17,41,67,190 -DB 106,106,181,106,119,223,212,29 -DB 106,106,181,106,119,223,212,29 -DB 80,80,93,80,186,13,160,234 -DB 80,80,93,80,186,13,160,234 -DB 69,69,9,69,18,76,138,87 -DB 69,69,9,69,18,76,138,87 -DB 243,243,235,243,203,24,251,56 -DB 243,243,235,243,203,24,251,56 -DB 48,48,192,48,157,240,96,173 -DB 48,48,192,48,157,240,96,173 -DB 239,239,155,239,43,116,195,196 -DB 239,239,155,239,43,116,195,196 -DB 63,63,252,63,229,195,126,218 -DB 63,63,252,63,229,195,126,218 -DB 85,85,73,85,146,28,170,199 -DB 85,85,73,85,146,28,170,199 -DB 162,162,178,162,121,16,89,219 -DB 162,162,178,162,121,16,89,219 -DB 234,234,143,234,3,101,201,233 -DB 234,234,143,234,3,101,201,233 -DB 101,101,137,101,15,236,202,106 -DB 101,101,137,101,15,236,202,106 -DB 186,186,210,186,185,104,105,3 -DB 186,186,210,186,185,104,105,3 -DB 47,47,188,47,101,147,94,74 -DB 47,47,188,47,101,147,94,74 -DB 192,192,39,192,78,231,157,142 -DB 192,192,39,192,78,231,157,142 -DB 222,222,95,222,190,129,161,96 -DB 222,222,95,222,190,129,161,96 -DB 28,28,112,28,224,108,56,252 -DB 28,28,112,28,224,108,56,252 -DB 253,253,211,253,187,46,231,70 -DB 253,253,211,253,187,46,231,70 -DB 77,77,41,77,82,100,154,31 -DB 77,77,41,77,82,100,154,31 -DB 146,146,114,146,228,224,57,118 -DB 146,146,114,146,228,224,57,118 -DB 117,117,201,117,143,188,234,250 -DB 117,117,201,117,143,188,234,250 -DB 6,6,24,6,48,30,12,54 -DB 6,6,24,6,48,30,12,54 -DB 138,138,18,138,36,152,9,174 -DB 138,138,18,138,36,152,9,174 -DB 178,178,242,178,249,64,121,75 -DB 178,178,242,178,249,64,121,75 -DB 230,230,191,230,99,89,209,133 -DB 230,230,191,230,99,89,209,133 -DB 14,14,56,14,112,54,28,126 -DB 14,14,56,14,112,54,28,126 -DB 31,31,124,31,248,99,62,231 -DB 31,31,124,31,248,99,62,231 -DB 98,98,149,98,55,247,196,85 -DB 98,98,149,98,55,247,196,85 -DB 212,212,119,212,238,163,181,58 -DB 212,212,119,212,238,163,181,58 -DB 168,168,154,168,41,50,77,129 -DB 168,168,154,168,41,50,77,129 -DB 150,150,98,150,196,244,49,82 -DB 150,150,98,150,196,244,49,82 -DB 249,249,195,249,155,58,239,98 -DB 249,249,195,249,155,58,239,98 -DB 197,197,51,197,102,246,151,163 -DB 197,197,51,197,102,246,151,163 -DB 37,37,148,37,53,177,74,16 -DB 37,37,148,37,53,177,74,16 -DB 89,89,121,89,242,32,178,171 -DB 89,89,121,89,242,32,178,171 -DB 132,132,42,132,84,174,21,208 -DB 132,132,42,132,84,174,21,208 -DB 114,114,213,114,183,167,228,197 -DB 114,114,213,114,183,167,228,197 -DB 57,57,228,57,213,221,114,236 -DB 57,57,228,57,213,221,114,236 -DB 76,76,45,76,90,97,152,22 -DB 76,76,45,76,90,97,152,22 -DB 94,94,101,94,202,59,188,148 -DB 94,94,101,94,202,59,188,148 -DB 120,120,253,120,231,133,240,159 -DB 120,120,253,120,231,133,240,159 -DB 56,56,224,56,221,216,112,229 -DB 56,56,224,56,221,216,112,229 -DB 140,140,10,140,20,134,5,152 -DB 140,140,10,140,20,134,5,152 -DB 209,209,99,209,198,178,191,23 -DB 209,209,99,209,198,178,191,23 -DB 165,165,174,165,65,11,87,228 -DB 165,165,174,165,65,11,87,228 -DB 226,226,175,226,67,77,217,161 -DB 226,226,175,226,67,77,217,161 -DB 97,97,153,97,47,248,194,78 -DB 97,97,153,97,47,248,194,78 -DB 179,179,246,179,241,69,123,66 -DB 179,179,246,179,241,69,123,66 -DB 33,33,132,33,21,165,66,52 -DB 33,33,132,33,21,165,66,52 -DB 156,156,74,156,148,214,37,8 -DB 156,156,74,156,148,214,37,8 -DB 30,30,120,30,240,102,60,238 -DB 30,30,120,30,240,102,60,238 -DB 67,67,17,67,34,82,134,97 -DB 67,67,17,67,34,82,134,97 -DB 199,199,59,199,118,252,147,177 -DB 199,199,59,199,118,252,147,177 -DB 252,252,215,252,179,43,229,79 -DB 252,252,215,252,179,43,229,79 -DB 4,4,16,4,32,20,8,36 -DB 4,4,16,4,32,20,8,36 -DB 81,81,89,81,178,8,162,227 -DB 81,81,89,81,178,8,162,227 -DB 153,153,94,153,188,199,47,37 -DB 153,153,94,153,188,199,47,37 -DB 109,109,169,109,79,196,218,34 -DB 109,109,169,109,79,196,218,34 -DB 13,13,52,13,104,57,26,101 -DB 13,13,52,13,104,57,26,101 -DB 250,250,207,250,131,53,233,121 -DB 250,250,207,250,131,53,233,121 -DB 223,223,91,223,182,132,163,105 -DB 223,223,91,223,182,132,163,105 -DB 126,126,229,126,215,155,252,169 -DB 126,126,229,126,215,155,252,169 -DB 36,36,144,36,61,180,72,25 -DB 36,36,144,36,61,180,72,25 -DB 59,59,236,59,197,215,118,254 -DB 59,59,236,59,197,215,118,254 -DB 171,171,150,171,49,61,75,154 -DB 171,171,150,171,49,61,75,154 -DB 206,206,31,206,62,209,129,240 -DB 206,206,31,206,62,209,129,240 -DB 17,17,68,17,136,85,34,153 -DB 17,17,68,17,136,85,34,153 -DB 143,143,6,143,12,137,3,131 -DB 143,143,6,143,12,137,3,131 -DB 78,78,37,78,74,107,156,4 -DB 78,78,37,78,74,107,156,4 -DB 183,183,230,183,209,81,115,102 -DB 183,183,230,183,209,81,115,102 -DB 235,235,139,235,11,96,203,224 -DB 235,235,139,235,11,96,203,224 -DB 60,60,240,60,253,204,120,193 -DB 60,60,240,60,253,204,120,193 -DB 129,129,62,129,124,191,31,253 -DB 129,129,62,129,124,191,31,253 -DB 148,148,106,148,212,254,53,64 -DB 148,148,106,148,212,254,53,64 -DB 247,247,251,247,235,12,243,28 -DB 247,247,251,247,235,12,243,28 -DB 185,185,222,185,161,103,111,24 -DB 185,185,222,185,161,103,111,24 -DB 19,19,76,19,152,95,38,139 -DB 19,19,76,19,152,95,38,139 -DB 44,44,176,44,125,156,88,81 -DB 44,44,176,44,125,156,88,81 -DB 211,211,107,211,214,184,187,5 -DB 211,211,107,211,214,184,187,5 -DB 231,231,187,231,107,92,211,140 -DB 231,231,187,231,107,92,211,140 -DB 110,110,165,110,87,203,220,57 -DB 110,110,165,110,87,203,220,57 -DB 196,196,55,196,110,243,149,170 -DB 196,196,55,196,110,243,149,170 -DB 3,3,12,3,24,15,6,27 -DB 3,3,12,3,24,15,6,27 -DB 86,86,69,86,138,19,172,220 -DB 86,86,69,86,138,19,172,220 -DB 68,68,13,68,26,73,136,94 -DB 68,68,13,68,26,73,136,94 -DB 127,127,225,127,223,158,254,160 -DB 127,127,225,127,223,158,254,160 -DB 169,169,158,169,33,55,79,136 -DB 169,169,158,169,33,55,79,136 -DB 42,42,168,42,77,130,84,103 -DB 42,42,168,42,77,130,84,103 -DB 187,187,214,187,177,109,107,10 -DB 187,187,214,187,177,109,107,10 -DB 193,193,35,193,70,226,159,135 -DB 193,193,35,193,70,226,159,135 -DB 83,83,81,83,162,2,166,241 -DB 83,83,81,83,162,2,166,241 -DB 220,220,87,220,174,139,165,114 -DB 220,220,87,220,174,139,165,114 -DB 11,11,44,11,88,39,22,83 -DB 11,11,44,11,88,39,22,83 -DB 157,157,78,157,156,211,39,1 -DB 157,157,78,157,156,211,39,1 -DB 108,108,173,108,71,193,216,43 -DB 108,108,173,108,71,193,216,43 -DB 49,49,196,49,149,245,98,164 -DB 49,49,196,49,149,245,98,164 -DB 116,116,205,116,135,185,232,243 -DB 116,116,205,116,135,185,232,243 -DB 246,246,255,246,227,9,241,21 -DB 246,246,255,246,227,9,241,21 -DB 70,70,5,70,10,67,140,76 -DB 70,70,5,70,10,67,140,76 -DB 172,172,138,172,9,38,69,165 -DB 172,172,138,172,9,38,69,165 -DB 137,137,30,137,60,151,15,181 -DB 137,137,30,137,60,151,15,181 -DB 20,20,80,20,160,68,40,180 -DB 20,20,80,20,160,68,40,180 -DB 225,225,163,225,91,66,223,186 -DB 225,225,163,225,91,66,223,186 -DB 22,22,88,22,176,78,44,166 -DB 22,22,88,22,176,78,44,166 -DB 58,58,232,58,205,210,116,247 -DB 58,58,232,58,205,210,116,247 -DB 105,105,185,105,111,208,210,6 -DB 105,105,185,105,111,208,210,6 -DB 9,9,36,9,72,45,18,65 -DB 9,9,36,9,72,45,18,65 -DB 112,112,221,112,167,173,224,215 -DB 112,112,221,112,167,173,224,215 -DB 182,182,226,182,217,84,113,111 -DB 182,182,226,182,217,84,113,111 -DB 208,208,103,208,206,183,189,30 -DB 208,208,103,208,206,183,189,30 -DB 237,237,147,237,59,126,199,214 -DB 237,237,147,237,59,126,199,214 -DB 204,204,23,204,46,219,133,226 -DB 204,204,23,204,46,219,133,226 -DB 66,66,21,66,42,87,132,104 -DB 66,66,21,66,42,87,132,104 -DB 152,152,90,152,180,194,45,44 -DB 152,152,90,152,180,194,45,44 -DB 164,164,170,164,73,14,85,237 -DB 164,164,170,164,73,14,85,237 -DB 40,40,160,40,93,136,80,117 -DB 40,40,160,40,93,136,80,117 -DB 92,92,109,92,218,49,184,134 -DB 92,92,109,92,218,49,184,134 -DB 248,248,199,248,147,63,237,107 -DB 248,248,199,248,147,63,237,107 -DB 134,134,34,134,68,164,17,194 -DB 134,134,34,134,68,164,17,194 -DB 24,35,198,232,135,184,1,79 -DB 54,166,210,245,121,111,145,82 -DB 96,188,155,142,163,12,123,53 -DB 29,224,215,194,46,75,254,87 -DB 21,119,55,229,159,240,74,218 -DB 88,201,41,10,177,160,107,133 -DB 189,93,16,244,203,62,5,103 -DB 228,39,65,139,167,125,149,216 -DB 251,238,124,102,221,23,71,158 -DB 202,45,191,7,173,90,131,51 -_whirlpool_block_mmx ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm/x86-win32-masm/x86cpuid.asm b/deps/openssl/asm/x86-win32-masm/x86cpuid.asm deleted file mode 100644 index d53b6a44d895a3..00000000000000 --- a/deps/openssl/asm/x86-win32-masm/x86cpuid.asm +++ /dev/null @@ -1,365 +0,0 @@ -TITLE x86cpuid.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_OPENSSL_ia32_cpuid PROC PUBLIC -$L_OPENSSL_ia32_cpuid_begin:: - push ebp - push ebx - push esi - push edi - xor edx,edx - pushfd - pop eax - mov ecx,eax - xor eax,2097152 - push eax - popfd - pushfd - pop eax - xor ecx,eax - xor eax,eax - mov esi,DWORD PTR 20[esp] - mov DWORD PTR 8[esi],eax - bt ecx,21 - jnc $L000nocpuid - cpuid - mov edi,eax - xor eax,eax - cmp ebx,1970169159 - setne al - mov ebp,eax - cmp edx,1231384169 - setne al - or ebp,eax - cmp ecx,1818588270 - setne al - or ebp,eax - jz $L001intel - cmp ebx,1752462657 - setne al - mov esi,eax - cmp edx,1769238117 - setne al - or esi,eax - cmp ecx,1145913699 - setne al - or esi,eax - jnz $L001intel - mov eax,2147483648 - cpuid - cmp eax,2147483649 - jb $L001intel - mov esi,eax - mov eax,2147483649 - cpuid - or ebp,ecx - and ebp,2049 - cmp esi,2147483656 - jb $L001intel - mov eax,2147483656 - cpuid - movzx esi,cl - inc esi - mov eax,1 - xor ecx,ecx - cpuid - bt edx,28 - jnc $L002generic - shr ebx,16 - and ebx,255 - cmp ebx,esi - ja $L002generic - and edx,4026531839 - jmp $L002generic -$L001intel: - cmp edi,4 - mov esi,-1 - jb $L003nocacheinfo - mov eax,4 - mov ecx,0 - cpuid - mov esi,eax - shr esi,14 - and esi,4095 -$L003nocacheinfo: - mov eax,1 - xor ecx,ecx - cpuid - and edx,3220176895 - cmp ebp,0 - jne $L004notintel - or edx,1073741824 - and ah,15 - cmp ah,15 - jne $L004notintel - or edx,1048576 -$L004notintel: - bt edx,28 - jnc $L002generic - and edx,4026531839 - cmp esi,0 - je $L002generic - or edx,268435456 - shr ebx,16 - cmp bl,1 - ja $L002generic - and edx,4026531839 -$L002generic: - and ebp,2048 - and ecx,4294965247 - mov esi,edx - or ebp,ecx - cmp edi,7 - mov edi,DWORD PTR 20[esp] - jb $L005no_extended_info - mov eax,7 - xor ecx,ecx - cpuid - mov DWORD PTR 8[edi],ebx -$L005no_extended_info: - bt ebp,27 - jnc $L006clear_avx - xor ecx,ecx -DB 15,1,208 - and eax,6 - cmp eax,6 - je $L007done - cmp eax,2 - je $L006clear_avx -$L008clear_xmm: - and ebp,4261412861 - and esi,4278190079 -$L006clear_avx: - and ebp,4026525695 - and DWORD PTR 8[edi],4294967263 -$L007done: - mov eax,esi - mov edx,ebp -$L000nocpuid: - pop edi - pop esi - pop ebx - pop ebp - ret -_OPENSSL_ia32_cpuid ENDP -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_OPENSSL_rdtsc PROC PUBLIC -$L_OPENSSL_rdtsc_begin:: - xor eax,eax - xor edx,edx - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ecx],4 - jnc $L009notsc - rdtsc -$L009notsc: - ret -_OPENSSL_rdtsc ENDP -ALIGN 16 -_OPENSSL_instrument_halt PROC PUBLIC -$L_OPENSSL_instrument_halt_begin:: - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ecx],4 - jnc $L010nohalt -DD 2421723150 - and eax,3 - jnz $L010nohalt - pushfd - pop eax - bt eax,9 - jnc $L010nohalt - rdtsc - push edx - push eax - hlt - rdtsc - sub eax,DWORD PTR [esp] - sbb edx,DWORD PTR 4[esp] - add esp,8 - ret -$L010nohalt: - xor eax,eax - xor edx,edx - ret -_OPENSSL_instrument_halt ENDP -ALIGN 16 -_OPENSSL_far_spin PROC PUBLIC -$L_OPENSSL_far_spin_begin:: - pushfd - pop eax - bt eax,9 - jnc $L011nospin - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] -DD 2430111262 - xor eax,eax - mov edx,DWORD PTR [ecx] - jmp $L012spin -ALIGN 16 -$L012spin: - inc eax - cmp edx,DWORD PTR [ecx] - je $L012spin -DD 529567888 - ret -$L011nospin: - xor eax,eax - xor edx,edx - ret -_OPENSSL_far_spin ENDP -ALIGN 16 -_OPENSSL_wipe_cpu PROC PUBLIC -$L_OPENSSL_wipe_cpu_begin:: - xor eax,eax - xor edx,edx - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [ecx] - bt DWORD PTR [ecx],1 - jnc $L013no_x87 - and ecx,83886080 - cmp ecx,83886080 - jne $L014no_sse2 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 -$L014no_sse2: -DD 4007259865,4007259865,4007259865,4007259865 -DD 2430851995 -$L013no_x87: - lea eax,DWORD PTR 4[esp] - ret -_OPENSSL_wipe_cpu ENDP -ALIGN 16 -_OPENSSL_atomic_add PROC PUBLIC -$L_OPENSSL_atomic_add_begin:: - mov edx,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - push ebx - nop - mov eax,DWORD PTR [edx] -$L015spin: - lea ebx,DWORD PTR [ecx*1+eax] - nop -DD 447811568 - jne $L015spin - mov eax,ebx - pop ebx - ret -_OPENSSL_atomic_add ENDP -ALIGN 16 -_OPENSSL_indirect_call PROC PUBLIC -$L_OPENSSL_indirect_call_begin:: - push ebp - mov ebp,esp - sub esp,28 - mov ecx,DWORD PTR 12[ebp] - mov DWORD PTR [esp],ecx - mov edx,DWORD PTR 16[ebp] - mov DWORD PTR 4[esp],edx - mov eax,DWORD PTR 20[ebp] - mov DWORD PTR 8[esp],eax - mov eax,DWORD PTR 24[ebp] - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR 28[ebp] - mov DWORD PTR 16[esp],eax - mov eax,DWORD PTR 32[ebp] - mov DWORD PTR 20[esp],eax - mov eax,DWORD PTR 36[ebp] - mov DWORD PTR 24[esp],eax - call DWORD PTR 8[ebp] - mov esp,ebp - pop ebp - ret -_OPENSSL_indirect_call ENDP -ALIGN 16 -_OPENSSL_cleanse PROC PUBLIC -$L_OPENSSL_cleanse_begin:: - mov edx,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - xor eax,eax - cmp ecx,7 - jae $L016lot - cmp ecx,0 - je $L017ret -$L018little: - mov BYTE PTR [edx],al - sub ecx,1 - lea edx,DWORD PTR 1[edx] - jnz $L018little -$L017ret: - ret -ALIGN 16 -$L016lot: - test edx,3 - jz $L019aligned - mov BYTE PTR [edx],al - lea ecx,DWORD PTR [ecx-1] - lea edx,DWORD PTR 1[edx] - jmp $L016lot -$L019aligned: - mov DWORD PTR [edx],eax - lea ecx,DWORD PTR [ecx-4] - test ecx,-4 - lea edx,DWORD PTR 4[edx] - jnz $L019aligned - cmp ecx,0 - jne $L018little - ret -_OPENSSL_cleanse ENDP -ALIGN 16 -_OPENSSL_ia32_rdrand PROC PUBLIC -$L_OPENSSL_ia32_rdrand_begin:: - mov ecx,8 -$L020loop: -DB 15,199,240 - jc $L021break - loop $L020loop -$L021break: - cmp eax,0 - cmove eax,ecx - ret -_OPENSSL_ia32_rdrand ENDP -ALIGN 16 -_OPENSSL_ia32_rdseed PROC PUBLIC -$L_OPENSSL_ia32_rdseed_begin:: - mov ecx,8 -$L022loop: -DB 15,199,248 - jc $L023break - loop $L022loop -$L023break: - cmp eax,0 - cmove eax,ecx - ret -_OPENSSL_ia32_rdseed ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -.CRT$XCU SEGMENT DWORD PUBLIC 'DATA' -EXTERN _OPENSSL_cpuid_setup:NEAR -DD _OPENSSL_cpuid_setup -.CRT$XCU ENDS -END diff --git a/deps/openssl/asm_obsolete/Makefile b/deps/openssl/asm_obsolete/Makefile deleted file mode 100644 index c3ccfa43ce40aa..00000000000000 --- a/deps/openssl/asm_obsolete/Makefile +++ /dev/null @@ -1,376 +0,0 @@ -PERL ?= perl -PERL += -I../openssl/crypto/perlasm -I../openssl/crypto/bn/asm - -# OPENSSL_IA32_SSE2 flag is needed for checking the sse2 feature on ia32 -# see https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-586.pl#L56 -SSE2 = -DOPENSSL_IA32_SSE2 - -# CC and ASM enviroments are not needed for generating obsoluted asm files -CC = '' -ASM = '' - -OUTPUTS = \ - x86-elf-gas/aes/aes-586.s \ - x86-elf-gas/aes/aesni-x86.s \ - x86-elf-gas/aes/vpaes-x86.s \ - x86-elf-gas/bf/bf-586.s \ - x86-elf-gas/bn/bn-586.s \ - x86-elf-gas/bn/co-586.s \ - x86-elf-gas/bn/x86-mont.s \ - x86-elf-gas/bn/x86-gf2m.s \ - x86-elf-gas/camellia/cmll-x86.s \ - x86-elf-gas/cast/cast-586.s \ - x86-elf-gas/des/crypt586.s \ - x86-elf-gas/des/des-586.s \ - x86-elf-gas/md5/md5-586.s \ - x86-elf-gas/rc4/rc4-586.s \ - x86-elf-gas/ripemd/rmd-586.s \ - x86-elf-gas/sha/sha1-586.s \ - x86-elf-gas/sha/sha256-586.s \ - x86-elf-gas/sha/sha512-586.s \ - x86-elf-gas/whrlpool/wp-mmx.s \ - x86-elf-gas/modes/ghash-x86.s \ - x86-elf-gas/x86cpuid.s \ - x64-elf-gas/aes/aes-x86_64.s \ - x64-elf-gas/aes/aesni-mb-x86_64.s \ - x64-elf-gas/aes/aesni-sha256-x86_64.s \ - x64-elf-gas/aes/aesni-x86_64.s \ - x64-elf-gas/aes/vpaes-x86_64.s \ - x64-elf-gas/aes/bsaes-x86_64.s \ - x64-elf-gas/aes/aesni-sha1-x86_64.s \ - x64-elf-gas/bn/rsaz-avx2.s \ - x64-elf-gas/bn/rsaz-x86_64.s \ - x64-elf-gas/bn/x86_64-mont.s \ - x64-elf-gas/bn/x86_64-mont5.s \ - x64-elf-gas/bn/x86_64-gf2m.s \ - x64-elf-gas/camellia/cmll-x86_64.s \ - x64-elf-gas/ec/ecp_nistz256-x86_64.s \ - x64-elf-gas/md5/md5-x86_64.s \ - x64-elf-gas/rc4/rc4-x86_64.s \ - x64-elf-gas/rc4/rc4-md5-x86_64.s \ - x64-elf-gas/sha/sha1-mb-x86_64.s \ - x64-elf-gas/sha/sha1-x86_64.s \ - x64-elf-gas/sha/sha256-mb-x86_64.s \ - x64-elf-gas/sha/sha256-x86_64.s \ - x64-elf-gas/sha/sha512-x86_64.s \ - x64-elf-gas/whrlpool/wp-x86_64.s \ - x64-elf-gas/modes/aesni-gcm-x86_64.s \ - x64-elf-gas/modes/ghash-x86_64.s \ - x64-elf-gas/x86_64cpuid.s \ - arm-void-gas/aes/aes-armv4.S \ - arm-void-gas/aes/bsaes-armv7.S \ - arm-void-gas/aes/aesv8-armx.S \ - arm-void-gas/bn/armv4-mont.S \ - arm-void-gas/bn/armv4-gf2m.S \ - arm-void-gas/sha/sha1-armv4-large.S \ - arm-void-gas/sha/sha256-armv4.S \ - arm-void-gas/sha/sha512-armv4.S \ - arm-void-gas/modes/ghash-armv4.S \ - arm-void-gas/modes/ghashv8-armx.S \ - arm64-linux64-gas/aes/aesv8-armx.S \ - arm64-linux64-gas/modes/ghashv8-armx.S \ - arm64-linux64-gas/sha/sha1-armv8.S \ - arm64-linux64-gas/sha/sha256-armv8.S \ - arm64-linux64-gas/sha/sha512-armv8.S \ - x86-macosx-gas/aes/aes-586.s \ - x86-macosx-gas/aes/aesni-x86.s \ - x86-macosx-gas/aes/vpaes-x86.s \ - x86-macosx-gas/bf/bf-586.s \ - x86-macosx-gas/bn/bn-586.s \ - x86-macosx-gas/bn/co-586.s \ - x86-macosx-gas/bn/x86-mont.s \ - x86-macosx-gas/bn/x86-gf2m.s \ - x86-macosx-gas/camellia/cmll-x86.s \ - x86-macosx-gas/cast/cast-586.s \ - x86-macosx-gas/des/crypt586.s \ - x86-macosx-gas/des/des-586.s \ - x86-macosx-gas/md5/md5-586.s \ - x86-macosx-gas/rc4/rc4-586.s \ - x86-macosx-gas/ripemd/rmd-586.s \ - x86-macosx-gas/sha/sha1-586.s \ - x86-macosx-gas/sha/sha256-586.s \ - x86-macosx-gas/sha/sha512-586.s \ - x86-macosx-gas/whrlpool/wp-mmx.s \ - x86-macosx-gas/modes/ghash-x86.s \ - x86-macosx-gas/x86cpuid.s \ - x64-macosx-gas/aes/aes-x86_64.s \ - x64-macosx-gas/aes/aesni-x86_64.s \ - x64-macosx-gas/aes/vpaes-x86_64.s \ - x64-macosx-gas/aes/aesni-mb-x86_64.s \ - x64-macosx-gas/aes/aesni-sha256-x86_64.s \ - x64-macosx-gas/aes/bsaes-x86_64.s \ - x64-macosx-gas/aes/aesni-sha1-x86_64.s \ - x64-macosx-gas/bn/rsaz-avx2.s \ - x64-macosx-gas/bn/rsaz-x86_64.s \ - x64-macosx-gas/bn/x86_64-mont.s \ - x64-macosx-gas/bn/x86_64-mont5.s \ - x64-macosx-gas/bn/x86_64-gf2m.s \ - x64-macosx-gas/camellia/cmll-x86_64.s \ - x64-macosx-gas/ec/ecp_nistz256-x86_64.s \ - x64-macosx-gas/md5/md5-x86_64.s \ - x64-macosx-gas/sha/sha1-mb-x86_64.s \ - x64-macosx-gas/sha/sha1-x86_64.s \ - x64-macosx-gas/sha/sha256-mb-x86_64.s \ - x64-macosx-gas/sha/sha256-x86_64.s \ - x64-macosx-gas/sha/sha512-x86_64.s \ - x64-macosx-gas/whrlpool/wp-x86_64.s \ - x64-macosx-gas/modes/aesni-gcm-x86_64.s \ - x64-macosx-gas/modes/ghash-x86_64.s \ - x64-macosx-gas/x86_64cpuid.s \ - x86-win32-masm/aes/aes-586.asm \ - x86-win32-masm/aes/aesni-x86.asm \ - x86-win32-masm/aes/vpaes-x86.asm \ - x86-win32-masm/bf/bf-586.asm \ - x86-win32-masm/bn/bn-586.asm \ - x86-win32-masm/bn/co-586.asm \ - x86-win32-masm/bn/x86-mont.asm \ - x86-win32-masm/bn/x86-gf2m.asm \ - x86-win32-masm/camellia/cmll-x86.asm \ - x86-win32-masm/cast/cast-586.asm \ - x86-win32-masm/des/crypt586.asm \ - x86-win32-masm/des/des-586.asm \ - x86-win32-masm/md5/md5-586.asm \ - x86-win32-masm/rc4/rc4-586.asm \ - x86-win32-masm/ripemd/rmd-586.asm \ - x86-win32-masm/sha/sha1-586.asm \ - x86-win32-masm/sha/sha256-586.asm \ - x86-win32-masm/sha/sha512-586.asm \ - x86-win32-masm/whrlpool/wp-mmx.asm \ - x86-win32-masm/modes/ghash-x86.asm \ - x86-win32-masm/x86cpuid.asm \ - x64-win32-masm/aes/aes-x86_64.asm \ - x64-win32-masm/aes/aesni-mb-x86_64.asm \ - x64-win32-masm/aes/aesni-sha256-x86_64.asm \ - x64-win32-masm/aes/aesni-x86_64.asm \ - x64-win32-masm/aes/vpaes-x86_64.asm \ - x64-win32-masm/aes/bsaes-x86_64.asm \ - x64-win32-masm/aes/aesni-sha1-x86_64.asm \ - x64-win32-masm/bn/rsaz-avx2.asm \ - x64-win32-masm/bn/rsaz-x86_64.asm \ - x64-win32-masm/bn/x86_64-mont.asm \ - x64-win32-masm/bn/x86_64-mont5.asm \ - x64-win32-masm/bn/x86_64-gf2m.asm \ - x64-win32-masm/camellia/cmll-x86_64.asm \ - x64-win32-masm/ec/ecp_nistz256-x86_64.asm \ - x64-win32-masm/md5/md5-x86_64.asm \ - x64-win32-masm/rc4/rc4-x86_64.asm \ - x64-win32-masm/rc4/rc4-md5-x86_64.asm \ - x64-win32-masm/sha/sha1-mb-x86_64.asm \ - x64-win32-masm/sha/sha1-x86_64.asm \ - x64-win32-masm/sha/sha256-mb-x86_64.asm \ - x64-win32-masm/sha/sha256-x86_64.asm \ - x64-win32-masm/sha/sha512-x86_64.asm \ - x64-win32-masm/whrlpool/wp-x86_64.asm \ - x64-win32-masm/modes/aesni-gcm-x86_64.asm \ - x64-win32-masm/modes/ghash-x86_64.asm \ - x64-win32-masm/x86_64cpuid.asm \ - -# sha512 asm files for x86_64 need 512 in the filenames for outputs -# so that we add new rules to generate sha512 asm files with -# specifying its filename in the second argument. See -# https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-x86_64.pl#L137-L149 - -x64-elf-gas/sha/sha512-%.s: - $(PERL) $< elf $@ - -x64-elf-gas/%.s: - $(PERL) $< elf > $@ - -arm-void-gas/%.S: - $(PERL) $< void > $@ - -arm64-linux64-gas/sha/sha512-%.S: - $(PERL) $< linux64 $@ - -arm64-linux64-gas/%.S: - $(PERL) $< linux64 > $@ - -x64-macosx-gas/sha/sha512-%.s: - $(PERL) $< macosx $@ - -x64-macosx-gas/%.s: - $(PERL) $< macosx > $@ - -x64-win32-masm/sha/sha512-%.asm: - $(PERL) $< masm $@ - -x64-win32-masm/%.asm: - $(PERL) $< masm > $@ - -x86-elf-gas/%.s: - $(PERL) $< elf $(SSE2) > $@ - -x86-macosx-gas/%.s: - $(PERL) $< macosx $(SSE2) > $@ - -x86-win32-masm/%.asm: - $(PERL) $< win32 $(SSE2) > $@ - -.PHONY: all clean - -all: $(OUTPUTS) - # strip trailing whitespace and final blank newline - $(PERL) -pi -e 's/\s+$$/\n/; s/^\n$$// if eof' $^ - -clean: - find . -iname '*.asm' -exec rm "{}" \; - find . -iname '*.s' -exec rm "{}" \; - find . -iname '*.S' -exec rm "{}" \; - - -x64-elf-gas/aes/aes-x86_64.s: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-elf-gas/aes/aesni-x86_64.s: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-elf-gas/aes/aesni-mb-x86_64.s: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-elf-gas/aes/aesni-sha256-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-elf-gas/aes/vpaes-x86_64.s: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-elf-gas/aes/bsaes-x86_64.s: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-elf-gas/aes/aesni-sha1-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-elf-gas/bn/rsaz-avx2.s: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-elf-gas/bn/rsaz-x86_64.s: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-elf-gas/bn/x86_64-mont.s: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-elf-gas/bn/x86_64-mont5.s: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-elf-gas/bn/x86_64-gf2m.s: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-elf-gas/camellia/cmll-x86_64.s: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-elf-gas/ec/ecp_nistz256-x86_64.s: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-elf-gas/md5/md5-x86_64.s: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-elf-gas/rc4/rc4-x86_64.s: ../openssl/crypto/rc4/asm/rc4-x86_64.pl -x64-elf-gas/rc4/rc4-md5-x86_64.s: ../openssl/crypto/rc4/asm/rc4-md5-x86_64.pl -x64-elf-gas/sha/sha1-mb-x86_64.s: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-elf-gas/sha/sha1-x86_64.s: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-elf-gas/sha/sha512-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-elf-gas/sha/sha256-mb-x86_64.s: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-elf-gas/sha/sha256-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-elf-gas/whrlpool/wp-x86_64.s: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-elf-gas/modes/aesni-gcm-x86_64.s: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-elf-gas/modes/ghash-x86_64.s: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-elf-gas/x86_64cpuid.s: ../openssl/crypto/x86_64cpuid.pl -x64-macosx-gas/aes/aes-x86_64.s: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-macosx-gas/aes/aesni-x86_64.s: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-macosx-gas/aes/vpaes-x86_64.s: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-macosx-gas/aes/aesni-mb-x86_64.s: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-macosx-gas/aes/aesni-sha256-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-macosx-gas/aes/bsaes-x86_64.s: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-macosx-gas/aes/aesni-sha1-x86_64.s: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-macosx-gas/bn/rsaz-avx2.s: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-macosx-gas/bn/rsaz-x86_64.s: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-macosx-gas/bn/x86_64-mont.s: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-macosx-gas/bn/x86_64-mont5.s: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-macosx-gas/bn/x86_64-gf2m.s: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-macosx-gas/camellia/cmll-x86_64.s: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-macosx-gas/ec/ecp_nistz256-x86_64.s: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-macosx-gas/md5/md5-x86_64.s: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-macosx-gas/sha/sha1-x86_64.s: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-macosx-gas/sha/sha1-mb-x86_64.s: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-macosx-gas/sha/sha256-mb-x86_64.s: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-macosx-gas/sha/sha256-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-macosx-gas/sha/sha512-x86_64.s: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-macosx-gas/whrlpool/wp-x86_64.s: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-macosx-gas/modes/aesni-gcm-x86_64.s: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-macosx-gas/modes/ghash-x86_64.s: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-macosx-gas/x86_64cpuid.s: ../openssl/crypto/x86_64cpuid.pl -x64-win32-masm/aes/aes-x86_64.asm: ../openssl/crypto/aes/asm/aes-x86_64.pl -x64-win32-masm/aes/aesni-x86_64.asm: ../openssl/crypto/aes/asm/aesni-x86_64.pl -x64-win32-masm/aes/aesni-mb-x86_64.asm: ../openssl/crypto/aes/asm/aesni-mb-x86_64.pl -x64-win32-masm/aes/aesni-sha256-x86_64.asm: ../openssl/crypto/aes/asm/aesni-sha256-x86_64.pl -x64-win32-masm/aes/vpaes-x86_64.asm: ../openssl/crypto/aes/asm/vpaes-x86_64.pl -x64-win32-masm/aes/bsaes-x86_64.asm: ../openssl/crypto/aes/asm/bsaes-x86_64.pl -x64-win32-masm/aes/aesni-sha1-x86_64.asm: ../openssl/crypto/aes/asm/aesni-sha1-x86_64.pl -x64-win32-masm/bn/rsaz-avx2.asm: ../openssl/crypto/bn/asm/rsaz-avx2.pl -x64-win32-masm/bn/rsaz-x86_64.asm: ../openssl/crypto/bn/asm/rsaz-x86_64.pl -x64-win32-masm/bn/x86_64-mont.asm: ../openssl/crypto/bn/asm/x86_64-mont.pl -x64-win32-masm/bn/x86_64-mont5.asm: ../openssl/crypto/bn/asm/x86_64-mont5.pl -x64-win32-masm/bn/x86_64-gf2m.asm: ../openssl/crypto/bn/asm/x86_64-gf2m.pl -x64-win32-masm/camellia/cmll-x86_64.asm: ../openssl/crypto/camellia/asm/cmll-x86_64.pl -x64-win32-masm/ec/ecp_nistz256-x86_64.asm: ../openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl -x64-win32-masm/md5/md5-x86_64.asm: ../openssl/crypto/md5/asm/md5-x86_64.pl -x64-win32-masm/rc4/rc4-x86_64.asm: ../openssl/crypto/rc4/asm/rc4-x86_64.pl -x64-win32-masm/rc4/rc4-md5-x86_64.asm: ../openssl/crypto/rc4/asm/rc4-md5-x86_64.pl -x64-win32-masm/sha/sha1-mb-x86_64.asm: ../openssl/crypto/sha/asm/sha1-mb-x86_64.pl -x64-win32-masm/sha/sha1-x86_64.asm: ../openssl/crypto/sha/asm/sha1-x86_64.pl -x64-win32-masm/sha/sha256-mb-x86_64.asm: ../openssl/crypto/sha/asm/sha256-mb-x86_64.pl -x64-win32-masm/sha/sha256-x86_64.asm: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-win32-masm/sha/sha512-x86_64.asm: ../openssl/crypto/sha/asm/sha512-x86_64.pl -x64-win32-masm/whrlpool/wp-x86_64.asm: ../openssl/crypto/whrlpool/asm/wp-x86_64.pl -x64-win32-masm/modes/aesni-gcm-x86_64.asm: ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl -x64-win32-masm/modes/ghash-x86_64.asm: ../openssl/crypto/modes/asm/ghash-x86_64.pl -x64-win32-masm/x86_64cpuid.asm: ../openssl/crypto/x86_64cpuid.pl -x86-elf-gas/aes/aes-586.s: ../openssl/crypto/aes/asm/aes-586.pl -x86-elf-gas/aes/aesni-x86.s: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-elf-gas/aes/vpaes-x86.s: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-elf-gas/bf/bf-586.s: ../openssl/crypto/bf/asm/bf-586.pl -x86-elf-gas/bn/bn-586.s: ../openssl/crypto/bn/asm/bn-586.pl -x86-elf-gas/bn/co-586.s: ../openssl/crypto/bn/asm/co-586.pl -x86-elf-gas/bn/x86-mont.s: ../openssl/crypto/bn/asm/x86-mont.pl -x86-elf-gas/bn/x86-gf2m.s: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-elf-gas/camellia/cmll-x86.s: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-elf-gas/cast/cast-586.s: ../openssl/crypto/cast/asm/cast-586.pl -x86-elf-gas/des/crypt586.s: ../openssl/crypto/des/asm/crypt586.pl -x86-elf-gas/des/des-586.s: ../openssl/crypto/des/asm/des-586.pl -x86-elf-gas/md5/md5-586.s: ../openssl/crypto/md5/asm/md5-586.pl -x86-elf-gas/rc4/rc4-586.s: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-elf-gas/rc5/rc5-586.s: ../openssl/crypto/rc5/asm/rc5-586.pl -x86-elf-gas/ripemd/rmd-586.s: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-elf-gas/sha/sha1-586.s: ../openssl/crypto/sha/asm/sha1-586.pl -x86-elf-gas/sha/sha256-586.s: ../openssl/crypto/sha/asm/sha256-586.pl -x86-elf-gas/sha/sha512-586.s: ../openssl/crypto/sha/asm/sha512-586.pl -x86-elf-gas/whrlpool/wp-mmx.s: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-elf-gas/modes/ghash-x86.s: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-elf-gas/x86cpuid.s: ../openssl/crypto/x86cpuid.pl -x86-macosx-gas/aes/aes-586.s: ../openssl/crypto/aes/asm/aes-586.pl -x86-macosx-gas/aes/aesni-x86.s: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-macosx-gas/aes/vpaes-x86.s: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-macosx-gas/bf/bf-586.s: ../openssl/crypto/bf/asm/bf-686.pl -x86-macosx-gas/bn/bn-586.s: ../openssl/crypto/bn/asm/bn-586.pl -x86-macosx-gas/bn/co-586.s: ../openssl/crypto/bn/asm/co-586.pl -x86-macosx-gas/bn/x86-mont.s: ../openssl/crypto/bn/asm/x86-mont.pl -x86-macosx-gas/bn/x86-gf2m.s: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-macosx-gas/camellia/cmll-x86.s: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-macosx-gas/cast/cast-586.s: ../openssl/crypto/cast/asm/cast-586.pl -x86-macosx-gas/des/crypt586.s: ../openssl/crypto/des/asm/crypt586.pl -x86-macosx-gas/des/des-586.s: ../openssl/crypto/des/asm/des-586.pl -x86-macosx-gas/md5/md5-586.s: ../openssl/crypto/md5/asm/md5-586.pl -x86-macosx-gas/rc4/rc4-586.s: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-macosx-gas/rc5/rc5-586.s: ../openssl/crypto/rc5/asm/rc5-586.pl -x86-macosx-gas/ripemd/rmd-586.s: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-macosx-gas/sha/sha1-586.s: ../openssl/crypto/sha/asm/sha1-586.pl -x86-macosx-gas/sha/sha256-586.s: ../openssl/crypto/sha/asm/sha256-586.pl -x86-macosx-gas/sha/sha512-586.s: ../openssl/crypto/sha/asm/sha512-586.pl -x86-macosx-gas/whrlpool/wp-mmx.s: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-macosx-gas/modes/ghash-x86.s: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-macosx-gas/x86cpuid.s: ../openssl/crypto/x86cpuid.pl -x86-win32-masm/aes/aes-586.asm: ../openssl/crypto/aes/asm/aes-586.pl -x86-win32-masm/aes/aesni-x86.asm: ../openssl/crypto/aes/asm/aesni-x86.pl -x86-win32-masm/aes/vpaes-x86.asm: ../openssl/crypto/aes/asm/vpaes-x86.pl -x86-win32-masm/bf/bf-586.asm: ../openssl/crypto/bf/asm/bf-586.pl -x86-win32-masm/bn/bn-586.asm: ../openssl/crypto/bn/asm/bn-586.pl -x86-win32-masm/bn/co-586.asm: ../openssl/crypto/bn/asm/co-586.pl -x86-win32-masm/bn/x86-gf2m.asm: ../openssl/crypto/bn/asm/x86-gf2m.pl -x86-win32-masm/bn/x86-mont.asm: ../openssl/crypto/bn/asm/x86-mont.pl -x86-win32-masm/camellia/cmll-x86.asm: ../openssl/crypto/camellia/asm/cmll-x86.pl -x86-win32-masm/cast/cast-586.asm: ../openssl/crypto/cast/asm/cast-586.pl -x86-win32-masm/des/crypt586.asm: ../openssl/crypto/des/asm/crypt586.pl -x86-win32-masm/des/des-586.asm: ../openssl/crypto/des/asm/des-586.pl -x86-win32-masm/md5/md5-586.asm: ../openssl/crypto/md5/asm/md5-586.pl -x86-win32-masm/rc4/rc4-586.asm: ../openssl/crypto/rc4/asm/rc4-586.pl -x86-win32-masm/ripemd/rmd-586.asm: ../openssl/crypto/ripemd/asm/rmd-586.pl -x86-win32-masm/sha/sha1-586.asm: ../openssl/crypto/sha/asm/sha1-586.pl -x86-win32-masm/sha/sha256-586.asm: ../openssl/crypto/sha/asm/sha256-586.pl -x86-win32-masm/sha/sha512-586.asm: ../openssl/crypto/sha/asm/sha512-586.pl -x86-win32-masm/whrlpool/wp-mmx.asm: ../openssl/crypto/whrlpool/asm/wp-mmx.pl -x86-win32-masm/modes/ghash-x86.asm: ../openssl/crypto/modes/asm/ghash-x86.pl -x86-win32-masm/x86cpuid.asm: ../openssl/crypto/x86cpuid.pl -arm-void-gas/aes/aes-armv4.S: ../openssl/crypto/aes/asm/aes-armv4.pl -arm-void-gas/aes/bsaes-armv7.S: ../openssl/crypto/aes/asm/bsaes-armv7.pl -arm-void-gas/aes/aesv8-armx.S: ../openssl/crypto/aes/asm/aesv8-armx.pl -arm-void-gas/bn/armv4-mont.S: ../openssl/crypto/bn/asm/armv4-mont.pl -arm-void-gas/bn/armv4-gf2m.S: ../openssl/crypto/bn/asm/armv4-gf2m.pl -arm-void-gas/sha/sha1-armv4-large.S: ../openssl/crypto/sha/asm/sha1-armv4-large.pl -arm-void-gas/sha/sha512-armv4.S: ../openssl/crypto/sha/asm/sha512-armv4.pl -arm-void-gas/sha/sha256-armv4.S: ../openssl/crypto/sha/asm/sha256-armv4.pl -arm-void-gas/modes/ghash-armv4.S: ../openssl/crypto/modes/asm/ghash-armv4.pl -arm-void-gas/modes/ghashv8-armx.S: ../openssl/crypto/modes/asm/ghashv8-armx.pl -arm64-linux64-gas/aes/aesv8-armx.S: ../openssl/crypto/aes/asm/aesv8-armx.pl -arm64-linux64-gas/modes/ghashv8-armx.S: ../openssl/crypto/modes/asm/ghashv8-armx.pl -arm64-linux64-gas/sha/sha1-armv8.S: ../openssl/crypto/sha/asm/sha1-armv8.pl -arm64-linux64-gas/sha/sha256-armv8.S: ../openssl/crypto/sha/asm/sha512-armv8.pl -arm64-linux64-gas/sha/sha512-armv8.S: ../openssl/crypto/sha/asm/sha512-armv8.pl diff --git a/deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S b/deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S deleted file mode 100644 index bd01abddce1d55..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S +++ /dev/null @@ -1,1177 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ ==================================================================== - -@ AES for ARMv4 - -@ January 2007. -@ -@ Code uses single 1K S-box and is >2 times faster than code generated -@ by gcc-3.4.1. This is thanks to unique feature of ARMv4 ISA, which -@ allows to merge logical or arithmetic operation with shift or rotate -@ in one instruction and emit combined result every cycle. The module -@ is endian-neutral. The performance is ~42 cycles/byte for 128-bit -@ key [on single-issue Xscale PXA250 core]. - -@ May 2007. -@ -@ AES_set_[en|de]crypt_key is added. - -@ July 2010. -@ -@ Rescheduling for dual-issue pipeline resulted in 12% improvement on -@ Cortex A8 core and ~25 cycles per byte processed with 128-bit key. - -@ February 2011. -@ -@ Profiler-assisted and platform-specific optimization resulted in 16% -@ improvement on Cortex A8 core and ~21.5 cycles per byte. - -#ifndef __KERNEL__ -# include "arm_arch.h" -#else -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -#endif - -.text -#if __ARM_ARCH__<7 -.code 32 -#else -.syntax unified -# ifdef __thumb2__ -.thumb -# else -.code 32 -# endif -#endif - -.type AES_Te,%object -.align 5 -AES_Te: -.word 0xc66363a5, 0xf87c7c84, 0xee777799, 0xf67b7b8d -.word 0xfff2f20d, 0xd66b6bbd, 0xde6f6fb1, 0x91c5c554 -.word 0x60303050, 0x02010103, 0xce6767a9, 0x562b2b7d -.word 0xe7fefe19, 0xb5d7d762, 0x4dababe6, 0xec76769a -.word 0x8fcaca45, 0x1f82829d, 0x89c9c940, 0xfa7d7d87 -.word 0xeffafa15, 0xb25959eb, 0x8e4747c9, 0xfbf0f00b -.word 0x41adadec, 0xb3d4d467, 0x5fa2a2fd, 0x45afafea -.word 0x239c9cbf, 0x53a4a4f7, 0xe4727296, 0x9bc0c05b -.word 0x75b7b7c2, 0xe1fdfd1c, 0x3d9393ae, 0x4c26266a -.word 0x6c36365a, 0x7e3f3f41, 0xf5f7f702, 0x83cccc4f -.word 0x6834345c, 0x51a5a5f4, 0xd1e5e534, 0xf9f1f108 -.word 0xe2717193, 0xabd8d873, 0x62313153, 0x2a15153f -.word 0x0804040c, 0x95c7c752, 0x46232365, 0x9dc3c35e -.word 0x30181828, 0x379696a1, 0x0a05050f, 0x2f9a9ab5 -.word 0x0e070709, 0x24121236, 0x1b80809b, 0xdfe2e23d -.word 0xcdebeb26, 0x4e272769, 0x7fb2b2cd, 0xea75759f -.word 0x1209091b, 0x1d83839e, 0x582c2c74, 0x341a1a2e -.word 0x361b1b2d, 0xdc6e6eb2, 0xb45a5aee, 0x5ba0a0fb -.word 0xa45252f6, 0x763b3b4d, 0xb7d6d661, 0x7db3b3ce -.word 0x5229297b, 0xdde3e33e, 0x5e2f2f71, 0x13848497 -.word 0xa65353f5, 0xb9d1d168, 0x00000000, 0xc1eded2c -.word 0x40202060, 0xe3fcfc1f, 0x79b1b1c8, 0xb65b5bed -.word 0xd46a6abe, 0x8dcbcb46, 0x67bebed9, 0x7239394b -.word 0x944a4ade, 0x984c4cd4, 0xb05858e8, 0x85cfcf4a -.word 0xbbd0d06b, 0xc5efef2a, 0x4faaaae5, 0xedfbfb16 -.word 0x864343c5, 0x9a4d4dd7, 0x66333355, 0x11858594 -.word 0x8a4545cf, 0xe9f9f910, 0x04020206, 0xfe7f7f81 -.word 0xa05050f0, 0x783c3c44, 0x259f9fba, 0x4ba8a8e3 -.word 0xa25151f3, 0x5da3a3fe, 0x804040c0, 0x058f8f8a -.word 0x3f9292ad, 0x219d9dbc, 0x70383848, 0xf1f5f504 -.word 0x63bcbcdf, 0x77b6b6c1, 0xafdada75, 0x42212163 -.word 0x20101030, 0xe5ffff1a, 0xfdf3f30e, 0xbfd2d26d -.word 0x81cdcd4c, 0x180c0c14, 0x26131335, 0xc3ecec2f -.word 0xbe5f5fe1, 0x359797a2, 0x884444cc, 0x2e171739 -.word 0x93c4c457, 0x55a7a7f2, 0xfc7e7e82, 0x7a3d3d47 -.word 0xc86464ac, 0xba5d5de7, 0x3219192b, 0xe6737395 -.word 0xc06060a0, 0x19818198, 0x9e4f4fd1, 0xa3dcdc7f -.word 0x44222266, 0x542a2a7e, 0x3b9090ab, 0x0b888883 -.word 0x8c4646ca, 0xc7eeee29, 0x6bb8b8d3, 0x2814143c -.word 0xa7dede79, 0xbc5e5ee2, 0x160b0b1d, 0xaddbdb76 -.word 0xdbe0e03b, 0x64323256, 0x743a3a4e, 0x140a0a1e -.word 0x924949db, 0x0c06060a, 0x4824246c, 0xb85c5ce4 -.word 0x9fc2c25d, 0xbdd3d36e, 0x43acacef, 0xc46262a6 -.word 0x399191a8, 0x319595a4, 0xd3e4e437, 0xf279798b -.word 0xd5e7e732, 0x8bc8c843, 0x6e373759, 0xda6d6db7 -.word 0x018d8d8c, 0xb1d5d564, 0x9c4e4ed2, 0x49a9a9e0 -.word 0xd86c6cb4, 0xac5656fa, 0xf3f4f407, 0xcfeaea25 -.word 0xca6565af, 0xf47a7a8e, 0x47aeaee9, 0x10080818 -.word 0x6fbabad5, 0xf0787888, 0x4a25256f, 0x5c2e2e72 -.word 0x381c1c24, 0x57a6a6f1, 0x73b4b4c7, 0x97c6c651 -.word 0xcbe8e823, 0xa1dddd7c, 0xe874749c, 0x3e1f1f21 -.word 0x964b4bdd, 0x61bdbddc, 0x0d8b8b86, 0x0f8a8a85 -.word 0xe0707090, 0x7c3e3e42, 0x71b5b5c4, 0xcc6666aa -.word 0x904848d8, 0x06030305, 0xf7f6f601, 0x1c0e0e12 -.word 0xc26161a3, 0x6a35355f, 0xae5757f9, 0x69b9b9d0 -.word 0x17868691, 0x99c1c158, 0x3a1d1d27, 0x279e9eb9 -.word 0xd9e1e138, 0xebf8f813, 0x2b9898b3, 0x22111133 -.word 0xd26969bb, 0xa9d9d970, 0x078e8e89, 0x339494a7 -.word 0x2d9b9bb6, 0x3c1e1e22, 0x15878792, 0xc9e9e920 -.word 0x87cece49, 0xaa5555ff, 0x50282878, 0xa5dfdf7a -.word 0x038c8c8f, 0x59a1a1f8, 0x09898980, 0x1a0d0d17 -.word 0x65bfbfda, 0xd7e6e631, 0x844242c6, 0xd06868b8 -.word 0x824141c3, 0x299999b0, 0x5a2d2d77, 0x1e0f0f11 -.word 0x7bb0b0cb, 0xa85454fc, 0x6dbbbbd6, 0x2c16163a -@ Te4[256] -.byte 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5 -.byte 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76 -.byte 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0 -.byte 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0 -.byte 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc -.byte 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15 -.byte 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a -.byte 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75 -.byte 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0 -.byte 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84 -.byte 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b -.byte 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf -.byte 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85 -.byte 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8 -.byte 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5 -.byte 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2 -.byte 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17 -.byte 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73 -.byte 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88 -.byte 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb -.byte 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c -.byte 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79 -.byte 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9 -.byte 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08 -.byte 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6 -.byte 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a -.byte 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e -.byte 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e -.byte 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94 -.byte 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf -.byte 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68 -.byte 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16 -@ rcon[] -.word 0x01000000, 0x02000000, 0x04000000, 0x08000000 -.word 0x10000000, 0x20000000, 0x40000000, 0x80000000 -.word 0x1B000000, 0x36000000, 0, 0, 0, 0, 0, 0 -.size AES_Te,.-AES_Te - -@ void AES_encrypt(const unsigned char *in, unsigned char *out, -@ const AES_KEY *key) { -.global AES_encrypt -.type AES_encrypt,%function -.align 5 -AES_encrypt: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_encrypt -#else - adr r3,. -#endif - stmdb sp!,{r1,r4-r12,lr} - mov r12,r0 @ inp - mov r11,r2 - sub r10,r3,#AES_encrypt-AES_Te @ Te -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - orr r3,r3,r5,lsl#16 - orr r3,r3,r6,lsl#24 -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif -#endif - bl _armv4_AES_encrypt - - ldr r12,[sp],#4 @ pop out -#if __ARM_ARCH__>=7 -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r12,#0] - str r1,[r12,#4] - str r2,[r12,#8] - str r3,[r12,#12] -#else - mov r4,r0,lsr#24 @ write output in endian-neutral - mov r5,r0,lsr#16 @ manner... - mov r6,r0,lsr#8 - strb r4,[r12,#0] - strb r5,[r12,#1] - mov r4,r1,lsr#24 - strb r6,[r12,#2] - mov r5,r1,lsr#16 - strb r0,[r12,#3] - mov r6,r1,lsr#8 - strb r4,[r12,#4] - strb r5,[r12,#5] - mov r4,r2,lsr#24 - strb r6,[r12,#6] - mov r5,r2,lsr#16 - strb r1,[r12,#7] - mov r6,r2,lsr#8 - strb r4,[r12,#8] - strb r5,[r12,#9] - mov r4,r3,lsr#24 - strb r6,[r12,#10] - mov r5,r3,lsr#16 - strb r2,[r12,#11] - mov r6,r3,lsr#8 - strb r4,[r12,#12] - strb r5,[r12,#13] - strb r6,[r12,#14] - strb r3,[r12,#15] -#endif -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_encrypt,.-AES_encrypt - -.type _armv4_AES_encrypt,%function -.align 2 -_armv4_AES_encrypt: - str lr,[sp,#-4]! @ push lr - ldmia r11!,{r4-r7} - eor r0,r0,r4 - ldr r12,[r11,#240-16] - eor r1,r1,r5 - eor r2,r2,r6 - eor r3,r3,r7 - sub r12,r12,#1 - mov lr,#255 - - and r7,lr,r0 - and r8,lr,r0,lsr#8 - and r9,lr,r0,lsr#16 - mov r0,r0,lsr#24 -.Lenc_loop: - ldr r4,[r10,r7,lsl#2] @ Te3[s0>>0] - and r7,lr,r1,lsr#16 @ i0 - ldr r5,[r10,r8,lsl#2] @ Te2[s0>>8] - and r8,lr,r1 - ldr r6,[r10,r9,lsl#2] @ Te1[s0>>16] - and r9,lr,r1,lsr#8 - ldr r0,[r10,r0,lsl#2] @ Te0[s0>>24] - mov r1,r1,lsr#24 - - ldr r7,[r10,r7,lsl#2] @ Te1[s1>>16] - ldr r8,[r10,r8,lsl#2] @ Te3[s1>>0] - ldr r9,[r10,r9,lsl#2] @ Te2[s1>>8] - eor r0,r0,r7,ror#8 - ldr r1,[r10,r1,lsl#2] @ Te0[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r5,r8,ror#8 - and r8,lr,r2,lsr#16 @ i1 - eor r6,r6,r9,ror#8 - and r9,lr,r2 - ldr r7,[r10,r7,lsl#2] @ Te2[s2>>8] - eor r1,r1,r4,ror#24 - ldr r8,[r10,r8,lsl#2] @ Te1[s2>>16] - mov r2,r2,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Te3[s2>>0] - eor r0,r0,r7,ror#16 - ldr r2,[r10,r2,lsl#2] @ Te0[s2>>24] - and r7,lr,r3 @ i0 - eor r1,r1,r8,ror#8 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r6,r9,ror#16 - and r9,lr,r3,lsr#16 @ i2 - ldr r7,[r10,r7,lsl#2] @ Te3[s3>>0] - eor r2,r2,r5,ror#16 - ldr r8,[r10,r8,lsl#2] @ Te2[s3>>8] - mov r3,r3,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Te1[s3>>16] - eor r0,r0,r7,ror#24 - ldr r7,[r11],#16 - eor r1,r1,r8,ror#16 - ldr r3,[r10,r3,lsl#2] @ Te0[s3>>24] - eor r2,r2,r9,ror#8 - ldr r4,[r11,#-12] - eor r3,r3,r6,ror#8 - - ldr r5,[r11,#-8] - eor r0,r0,r7 - ldr r6,[r11,#-4] - and r7,lr,r0 - eor r1,r1,r4 - and r8,lr,r0,lsr#8 - eor r2,r2,r5 - and r9,lr,r0,lsr#16 - eor r3,r3,r6 - mov r0,r0,lsr#24 - - subs r12,r12,#1 - bne .Lenc_loop - - add r10,r10,#2 - - ldrb r4,[r10,r7,lsl#2] @ Te4[s0>>0] - and r7,lr,r1,lsr#16 @ i0 - ldrb r5,[r10,r8,lsl#2] @ Te4[s0>>8] - and r8,lr,r1 - ldrb r6,[r10,r9,lsl#2] @ Te4[s0>>16] - and r9,lr,r1,lsr#8 - ldrb r0,[r10,r0,lsl#2] @ Te4[s0>>24] - mov r1,r1,lsr#24 - - ldrb r7,[r10,r7,lsl#2] @ Te4[s1>>16] - ldrb r8,[r10,r8,lsl#2] @ Te4[s1>>0] - ldrb r9,[r10,r9,lsl#2] @ Te4[s1>>8] - eor r0,r7,r0,lsl#8 - ldrb r1,[r10,r1,lsl#2] @ Te4[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r8,r5,lsl#8 - and r8,lr,r2,lsr#16 @ i1 - eor r6,r9,r6,lsl#8 - and r9,lr,r2 - ldrb r7,[r10,r7,lsl#2] @ Te4[s2>>8] - eor r1,r4,r1,lsl#24 - ldrb r8,[r10,r8,lsl#2] @ Te4[s2>>16] - mov r2,r2,lsr#24 - - ldrb r9,[r10,r9,lsl#2] @ Te4[s2>>0] - eor r0,r7,r0,lsl#8 - ldrb r2,[r10,r2,lsl#2] @ Te4[s2>>24] - and r7,lr,r3 @ i0 - eor r1,r1,r8,lsl#16 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r9,r6,lsl#8 - and r9,lr,r3,lsr#16 @ i2 - ldrb r7,[r10,r7,lsl#2] @ Te4[s3>>0] - eor r2,r5,r2,lsl#24 - ldrb r8,[r10,r8,lsl#2] @ Te4[s3>>8] - mov r3,r3,lsr#24 - - ldrb r9,[r10,r9,lsl#2] @ Te4[s3>>16] - eor r0,r7,r0,lsl#8 - ldr r7,[r11,#0] - ldrb r3,[r10,r3,lsl#2] @ Te4[s3>>24] - eor r1,r1,r8,lsl#8 - ldr r4,[r11,#4] - eor r2,r2,r9,lsl#16 - ldr r5,[r11,#8] - eor r3,r6,r3,lsl#24 - ldr r6,[r11,#12] - - eor r0,r0,r7 - eor r1,r1,r4 - eor r2,r2,r5 - eor r3,r3,r6 - - sub r10,r10,#2 - ldr pc,[sp],#4 @ pop and return -.size _armv4_AES_encrypt,.-_armv4_AES_encrypt - -.global private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,%function -.align 5 -private_AES_set_encrypt_key: -_armv4_AES_set_encrypt_key: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_set_encrypt_key -#else - adr r3,. -#endif - teq r0,#0 -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - moveq r0,#-1 - beq .Labrt - teq r2,#0 -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - moveq r0,#-1 - beq .Labrt - - teq r1,#128 - beq .Lok - teq r1,#192 - beq .Lok - teq r1,#256 -#if __ARM_ARCH__>=7 - itt ne @ Thumb2 thing, sanity check in ARM -#endif - movne r0,#-1 - bne .Labrt - -.Lok: stmdb sp!,{r4-r12,lr} - sub r10,r3,#_armv4_AES_set_encrypt_key-AES_Te-1024 @ Te4 - - mov r12,r0 @ inp - mov lr,r1 @ bits - mov r11,r2 @ key - -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - str r0,[r11],#16 - orr r3,r3,r5,lsl#16 - str r1,[r11,#-12] - orr r3,r3,r6,lsl#24 - str r2,[r11,#-8] - str r3,[r11,#-4] -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r11],#16 - str r1,[r11,#-12] - str r2,[r11,#-8] - str r3,[r11,#-4] -#endif - - teq lr,#128 - bne .Lnot128 - mov r12,#10 - str r12,[r11,#240-16] - add r6,r10,#256 @ rcon - mov lr,#255 - -.L128_loop: - and r5,lr,r3,lsr#24 - and r7,lr,r3,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r3,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r3 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r5,r5,r4 - eor r0,r0,r5 @ rk[4]=rk[0]^... - eor r1,r1,r0 @ rk[5]=rk[1]^rk[4] - str r0,[r11],#16 - eor r2,r2,r1 @ rk[6]=rk[2]^rk[5] - str r1,[r11,#-12] - eor r3,r3,r2 @ rk[7]=rk[3]^rk[6] - str r2,[r11,#-8] - subs r12,r12,#1 - str r3,[r11,#-4] - bne .L128_loop - sub r2,r11,#176 - b .Ldone - -.Lnot128: -#if __ARM_ARCH__<7 - ldrb r8,[r12,#19] - ldrb r4,[r12,#18] - ldrb r5,[r12,#17] - ldrb r6,[r12,#16] - orr r8,r8,r4,lsl#8 - ldrb r9,[r12,#23] - orr r8,r8,r5,lsl#16 - ldrb r4,[r12,#22] - orr r8,r8,r6,lsl#24 - ldrb r5,[r12,#21] - ldrb r6,[r12,#20] - orr r9,r9,r4,lsl#8 - orr r9,r9,r5,lsl#16 - str r8,[r11],#8 - orr r9,r9,r6,lsl#24 - str r9,[r11,#-4] -#else - ldr r8,[r12,#16] - ldr r9,[r12,#20] -#ifdef __ARMEL__ - rev r8,r8 - rev r9,r9 -#endif - str r8,[r11],#8 - str r9,[r11,#-4] -#endif - - teq lr,#192 - bne .Lnot192 - mov r12,#12 - str r12,[r11,#240-24] - add r6,r10,#256 @ rcon - mov lr,#255 - mov r12,#8 - -.L192_loop: - and r5,lr,r9,lsr#24 - and r7,lr,r9,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r9,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r9 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r9,r5,r4 - eor r0,r0,r9 @ rk[6]=rk[0]^... - eor r1,r1,r0 @ rk[7]=rk[1]^rk[6] - str r0,[r11],#24 - eor r2,r2,r1 @ rk[8]=rk[2]^rk[7] - str r1,[r11,#-20] - eor r3,r3,r2 @ rk[9]=rk[3]^rk[8] - str r2,[r11,#-16] - subs r12,r12,#1 - str r3,[r11,#-12] -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - subeq r2,r11,#216 - beq .Ldone - - ldr r7,[r11,#-32] - ldr r8,[r11,#-28] - eor r7,r7,r3 @ rk[10]=rk[4]^rk[9] - eor r9,r8,r7 @ rk[11]=rk[5]^rk[10] - str r7,[r11,#-8] - str r9,[r11,#-4] - b .L192_loop - -.Lnot192: -#if __ARM_ARCH__<7 - ldrb r8,[r12,#27] - ldrb r4,[r12,#26] - ldrb r5,[r12,#25] - ldrb r6,[r12,#24] - orr r8,r8,r4,lsl#8 - ldrb r9,[r12,#31] - orr r8,r8,r5,lsl#16 - ldrb r4,[r12,#30] - orr r8,r8,r6,lsl#24 - ldrb r5,[r12,#29] - ldrb r6,[r12,#28] - orr r9,r9,r4,lsl#8 - orr r9,r9,r5,lsl#16 - str r8,[r11],#8 - orr r9,r9,r6,lsl#24 - str r9,[r11,#-4] -#else - ldr r8,[r12,#24] - ldr r9,[r12,#28] -#ifdef __ARMEL__ - rev r8,r8 - rev r9,r9 -#endif - str r8,[r11],#8 - str r9,[r11,#-4] -#endif - - mov r12,#14 - str r12,[r11,#240-32] - add r6,r10,#256 @ rcon - mov lr,#255 - mov r12,#7 - -.L256_loop: - and r5,lr,r9,lsr#24 - and r7,lr,r9,lsr#16 - ldrb r5,[r10,r5] - and r8,lr,r9,lsr#8 - ldrb r7,[r10,r7] - and r9,lr,r9 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#24 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r6],#4 @ rcon[i++] - orr r5,r5,r9,lsl#8 - eor r9,r5,r4 - eor r0,r0,r9 @ rk[8]=rk[0]^... - eor r1,r1,r0 @ rk[9]=rk[1]^rk[8] - str r0,[r11],#32 - eor r2,r2,r1 @ rk[10]=rk[2]^rk[9] - str r1,[r11,#-28] - eor r3,r3,r2 @ rk[11]=rk[3]^rk[10] - str r2,[r11,#-24] - subs r12,r12,#1 - str r3,[r11,#-20] -#if __ARM_ARCH__>=7 - itt eq @ Thumb2 thing, sanity check in ARM -#endif - subeq r2,r11,#256 - beq .Ldone - - and r5,lr,r3 - and r7,lr,r3,lsr#8 - ldrb r5,[r10,r5] - and r8,lr,r3,lsr#16 - ldrb r7,[r10,r7] - and r9,lr,r3,lsr#24 - ldrb r8,[r10,r8] - orr r5,r5,r7,lsl#8 - ldrb r9,[r10,r9] - orr r5,r5,r8,lsl#16 - ldr r4,[r11,#-48] - orr r5,r5,r9,lsl#24 - - ldr r7,[r11,#-44] - ldr r8,[r11,#-40] - eor r4,r4,r5 @ rk[12]=rk[4]^... - ldr r9,[r11,#-36] - eor r7,r7,r4 @ rk[13]=rk[5]^rk[12] - str r4,[r11,#-16] - eor r8,r8,r7 @ rk[14]=rk[6]^rk[13] - str r7,[r11,#-12] - eor r9,r9,r8 @ rk[15]=rk[7]^rk[14] - str r8,[r11,#-8] - str r9,[r11,#-4] - b .L256_loop - -.align 2 -.Ldone: mov r0,#0 - ldmia sp!,{r4-r12,lr} -.Labrt: -#if __ARM_ARCH__>=5 - bx lr @ .word 0xe12fff1e -#else - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size private_AES_set_encrypt_key,.-private_AES_set_encrypt_key - -.global private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,%function -.align 5 -private_AES_set_decrypt_key: - str lr,[sp,#-4]! @ push lr - bl _armv4_AES_set_encrypt_key - teq r0,#0 - ldr lr,[sp],#4 @ pop lr - bne .Labrt - - mov r0,r2 @ AES_set_encrypt_key preserves r2, - mov r1,r2 @ which is AES_KEY *key - b _armv4_AES_set_enc2dec_key -.size private_AES_set_decrypt_key,.-private_AES_set_decrypt_key - -@ void AES_set_enc2dec_key(const AES_KEY *inp,AES_KEY *out) -.global AES_set_enc2dec_key -.type AES_set_enc2dec_key,%function -.align 5 -AES_set_enc2dec_key: -_armv4_AES_set_enc2dec_key: - stmdb sp!,{r4-r12,lr} - - ldr r12,[r0,#240] - mov r7,r0 @ input - add r8,r0,r12,lsl#4 - mov r11,r1 @ ouput - add r10,r1,r12,lsl#4 - str r12,[r1,#240] - -.Linv: ldr r0,[r7],#16 - ldr r1,[r7,#-12] - ldr r2,[r7,#-8] - ldr r3,[r7,#-4] - ldr r4,[r8],#-16 - ldr r5,[r8,#16+4] - ldr r6,[r8,#16+8] - ldr r9,[r8,#16+12] - str r0,[r10],#-16 - str r1,[r10,#16+4] - str r2,[r10,#16+8] - str r3,[r10,#16+12] - str r4,[r11],#16 - str r5,[r11,#-12] - str r6,[r11,#-8] - str r9,[r11,#-4] - teq r7,r8 - bne .Linv - - ldr r0,[r7] - ldr r1,[r7,#4] - ldr r2,[r7,#8] - ldr r3,[r7,#12] - str r0,[r11] - str r1,[r11,#4] - str r2,[r11,#8] - str r3,[r11,#12] - sub r11,r11,r12,lsl#3 - ldr r0,[r11,#16]! @ prefetch tp1 - mov r7,#0x80 - mov r8,#0x1b - orr r7,r7,#0x8000 - orr r8,r8,#0x1b00 - orr r7,r7,r7,lsl#16 - orr r8,r8,r8,lsl#16 - sub r12,r12,#1 - mvn r9,r7 - mov r12,r12,lsl#2 @ (rounds-1)*4 - -.Lmix: and r4,r0,r7 - and r1,r0,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r1,r4,r1,lsl#1 @ tp2 - - and r4,r1,r7 - and r2,r1,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r2,r4,r2,lsl#1 @ tp4 - - and r4,r2,r7 - and r3,r2,r9 - sub r4,r4,r4,lsr#7 - and r4,r4,r8 - eor r3,r4,r3,lsl#1 @ tp8 - - eor r4,r1,r2 - eor r5,r0,r3 @ tp9 - eor r4,r4,r3 @ tpe - eor r4,r4,r1,ror#24 - eor r4,r4,r5,ror#24 @ ^= ROTATE(tpb=tp9^tp2,8) - eor r4,r4,r2,ror#16 - eor r4,r4,r5,ror#16 @ ^= ROTATE(tpd=tp9^tp4,16) - eor r4,r4,r5,ror#8 @ ^= ROTATE(tp9,24) - - ldr r0,[r11,#4] @ prefetch tp1 - str r4,[r11],#4 - subs r12,r12,#1 - bne .Lmix - - mov r0,#0 -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_set_enc2dec_key,.-AES_set_enc2dec_key - -.type AES_Td,%object -.align 5 -AES_Td: -.word 0x51f4a750, 0x7e416553, 0x1a17a4c3, 0x3a275e96 -.word 0x3bab6bcb, 0x1f9d45f1, 0xacfa58ab, 0x4be30393 -.word 0x2030fa55, 0xad766df6, 0x88cc7691, 0xf5024c25 -.word 0x4fe5d7fc, 0xc52acbd7, 0x26354480, 0xb562a38f -.word 0xdeb15a49, 0x25ba1b67, 0x45ea0e98, 0x5dfec0e1 -.word 0xc32f7502, 0x814cf012, 0x8d4697a3, 0x6bd3f9c6 -.word 0x038f5fe7, 0x15929c95, 0xbf6d7aeb, 0x955259da -.word 0xd4be832d, 0x587421d3, 0x49e06929, 0x8ec9c844 -.word 0x75c2896a, 0xf48e7978, 0x99583e6b, 0x27b971dd -.word 0xbee14fb6, 0xf088ad17, 0xc920ac66, 0x7dce3ab4 -.word 0x63df4a18, 0xe51a3182, 0x97513360, 0x62537f45 -.word 0xb16477e0, 0xbb6bae84, 0xfe81a01c, 0xf9082b94 -.word 0x70486858, 0x8f45fd19, 0x94de6c87, 0x527bf8b7 -.word 0xab73d323, 0x724b02e2, 0xe31f8f57, 0x6655ab2a -.word 0xb2eb2807, 0x2fb5c203, 0x86c57b9a, 0xd33708a5 -.word 0x302887f2, 0x23bfa5b2, 0x02036aba, 0xed16825c -.word 0x8acf1c2b, 0xa779b492, 0xf307f2f0, 0x4e69e2a1 -.word 0x65daf4cd, 0x0605bed5, 0xd134621f, 0xc4a6fe8a -.word 0x342e539d, 0xa2f355a0, 0x058ae132, 0xa4f6eb75 -.word 0x0b83ec39, 0x4060efaa, 0x5e719f06, 0xbd6e1051 -.word 0x3e218af9, 0x96dd063d, 0xdd3e05ae, 0x4de6bd46 -.word 0x91548db5, 0x71c45d05, 0x0406d46f, 0x605015ff -.word 0x1998fb24, 0xd6bde997, 0x894043cc, 0x67d99e77 -.word 0xb0e842bd, 0x07898b88, 0xe7195b38, 0x79c8eedb -.word 0xa17c0a47, 0x7c420fe9, 0xf8841ec9, 0x00000000 -.word 0x09808683, 0x322bed48, 0x1e1170ac, 0x6c5a724e -.word 0xfd0efffb, 0x0f853856, 0x3daed51e, 0x362d3927 -.word 0x0a0fd964, 0x685ca621, 0x9b5b54d1, 0x24362e3a -.word 0x0c0a67b1, 0x9357e70f, 0xb4ee96d2, 0x1b9b919e -.word 0x80c0c54f, 0x61dc20a2, 0x5a774b69, 0x1c121a16 -.word 0xe293ba0a, 0xc0a02ae5, 0x3c22e043, 0x121b171d -.word 0x0e090d0b, 0xf28bc7ad, 0x2db6a8b9, 0x141ea9c8 -.word 0x57f11985, 0xaf75074c, 0xee99ddbb, 0xa37f60fd -.word 0xf701269f, 0x5c72f5bc, 0x44663bc5, 0x5bfb7e34 -.word 0x8b432976, 0xcb23c6dc, 0xb6edfc68, 0xb8e4f163 -.word 0xd731dcca, 0x42638510, 0x13972240, 0x84c61120 -.word 0x854a247d, 0xd2bb3df8, 0xaef93211, 0xc729a16d -.word 0x1d9e2f4b, 0xdcb230f3, 0x0d8652ec, 0x77c1e3d0 -.word 0x2bb3166c, 0xa970b999, 0x119448fa, 0x47e96422 -.word 0xa8fc8cc4, 0xa0f03f1a, 0x567d2cd8, 0x223390ef -.word 0x87494ec7, 0xd938d1c1, 0x8ccaa2fe, 0x98d40b36 -.word 0xa6f581cf, 0xa57ade28, 0xdab78e26, 0x3fadbfa4 -.word 0x2c3a9de4, 0x5078920d, 0x6a5fcc9b, 0x547e4662 -.word 0xf68d13c2, 0x90d8b8e8, 0x2e39f75e, 0x82c3aff5 -.word 0x9f5d80be, 0x69d0937c, 0x6fd52da9, 0xcf2512b3 -.word 0xc8ac993b, 0x10187da7, 0xe89c636e, 0xdb3bbb7b -.word 0xcd267809, 0x6e5918f4, 0xec9ab701, 0x834f9aa8 -.word 0xe6956e65, 0xaaffe67e, 0x21bccf08, 0xef15e8e6 -.word 0xbae79bd9, 0x4a6f36ce, 0xea9f09d4, 0x29b07cd6 -.word 0x31a4b2af, 0x2a3f2331, 0xc6a59430, 0x35a266c0 -.word 0x744ebc37, 0xfc82caa6, 0xe090d0b0, 0x33a7d815 -.word 0xf104984a, 0x41ecdaf7, 0x7fcd500e, 0x1791f62f -.word 0x764dd68d, 0x43efb04d, 0xccaa4d54, 0xe49604df -.word 0x9ed1b5e3, 0x4c6a881b, 0xc12c1fb8, 0x4665517f -.word 0x9d5eea04, 0x018c355d, 0xfa877473, 0xfb0b412e -.word 0xb3671d5a, 0x92dbd252, 0xe9105633, 0x6dd64713 -.word 0x9ad7618c, 0x37a10c7a, 0x59f8148e, 0xeb133c89 -.word 0xcea927ee, 0xb761c935, 0xe11ce5ed, 0x7a47b13c -.word 0x9cd2df59, 0x55f2733f, 0x1814ce79, 0x73c737bf -.word 0x53f7cdea, 0x5ffdaa5b, 0xdf3d6f14, 0x7844db86 -.word 0xcaaff381, 0xb968c43e, 0x3824342c, 0xc2a3405f -.word 0x161dc372, 0xbce2250c, 0x283c498b, 0xff0d9541 -.word 0x39a80171, 0x080cb3de, 0xd8b4e49c, 0x6456c190 -.word 0x7bcb8461, 0xd532b670, 0x486c5c74, 0xd0b85742 -@ Td4[256] -.byte 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38 -.byte 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb -.byte 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87 -.byte 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb -.byte 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d -.byte 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e -.byte 0x08, 0x2e, 0xa1, 0x66, 0x28, 0xd9, 0x24, 0xb2 -.byte 0x76, 0x5b, 0xa2, 0x49, 0x6d, 0x8b, 0xd1, 0x25 -.byte 0x72, 0xf8, 0xf6, 0x64, 0x86, 0x68, 0x98, 0x16 -.byte 0xd4, 0xa4, 0x5c, 0xcc, 0x5d, 0x65, 0xb6, 0x92 -.byte 0x6c, 0x70, 0x48, 0x50, 0xfd, 0xed, 0xb9, 0xda -.byte 0x5e, 0x15, 0x46, 0x57, 0xa7, 0x8d, 0x9d, 0x84 -.byte 0x90, 0xd8, 0xab, 0x00, 0x8c, 0xbc, 0xd3, 0x0a -.byte 0xf7, 0xe4, 0x58, 0x05, 0xb8, 0xb3, 0x45, 0x06 -.byte 0xd0, 0x2c, 0x1e, 0x8f, 0xca, 0x3f, 0x0f, 0x02 -.byte 0xc1, 0xaf, 0xbd, 0x03, 0x01, 0x13, 0x8a, 0x6b -.byte 0x3a, 0x91, 0x11, 0x41, 0x4f, 0x67, 0xdc, 0xea -.byte 0x97, 0xf2, 0xcf, 0xce, 0xf0, 0xb4, 0xe6, 0x73 -.byte 0x96, 0xac, 0x74, 0x22, 0xe7, 0xad, 0x35, 0x85 -.byte 0xe2, 0xf9, 0x37, 0xe8, 0x1c, 0x75, 0xdf, 0x6e -.byte 0x47, 0xf1, 0x1a, 0x71, 0x1d, 0x29, 0xc5, 0x89 -.byte 0x6f, 0xb7, 0x62, 0x0e, 0xaa, 0x18, 0xbe, 0x1b -.byte 0xfc, 0x56, 0x3e, 0x4b, 0xc6, 0xd2, 0x79, 0x20 -.byte 0x9a, 0xdb, 0xc0, 0xfe, 0x78, 0xcd, 0x5a, 0xf4 -.byte 0x1f, 0xdd, 0xa8, 0x33, 0x88, 0x07, 0xc7, 0x31 -.byte 0xb1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xec, 0x5f -.byte 0x60, 0x51, 0x7f, 0xa9, 0x19, 0xb5, 0x4a, 0x0d -.byte 0x2d, 0xe5, 0x7a, 0x9f, 0x93, 0xc9, 0x9c, 0xef -.byte 0xa0, 0xe0, 0x3b, 0x4d, 0xae, 0x2a, 0xf5, 0xb0 -.byte 0xc8, 0xeb, 0xbb, 0x3c, 0x83, 0x53, 0x99, 0x61 -.byte 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26 -.byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d -.size AES_Td,.-AES_Td - -@ void AES_decrypt(const unsigned char *in, unsigned char *out, -@ const AES_KEY *key) { -.global AES_decrypt -.type AES_decrypt,%function -.align 5 -AES_decrypt: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ AES_decrypt -#else - adr r3,. -#endif - stmdb sp!,{r1,r4-r12,lr} - mov r12,r0 @ inp - mov r11,r2 - sub r10,r3,#AES_decrypt-AES_Td @ Td -#if __ARM_ARCH__<7 - ldrb r0,[r12,#3] @ load input data in endian-neutral - ldrb r4,[r12,#2] @ manner... - ldrb r5,[r12,#1] - ldrb r6,[r12,#0] - orr r0,r0,r4,lsl#8 - ldrb r1,[r12,#7] - orr r0,r0,r5,lsl#16 - ldrb r4,[r12,#6] - orr r0,r0,r6,lsl#24 - ldrb r5,[r12,#5] - ldrb r6,[r12,#4] - orr r1,r1,r4,lsl#8 - ldrb r2,[r12,#11] - orr r1,r1,r5,lsl#16 - ldrb r4,[r12,#10] - orr r1,r1,r6,lsl#24 - ldrb r5,[r12,#9] - ldrb r6,[r12,#8] - orr r2,r2,r4,lsl#8 - ldrb r3,[r12,#15] - orr r2,r2,r5,lsl#16 - ldrb r4,[r12,#14] - orr r2,r2,r6,lsl#24 - ldrb r5,[r12,#13] - ldrb r6,[r12,#12] - orr r3,r3,r4,lsl#8 - orr r3,r3,r5,lsl#16 - orr r3,r3,r6,lsl#24 -#else - ldr r0,[r12,#0] - ldr r1,[r12,#4] - ldr r2,[r12,#8] - ldr r3,[r12,#12] -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif -#endif - bl _armv4_AES_decrypt - - ldr r12,[sp],#4 @ pop out -#if __ARM_ARCH__>=7 -#ifdef __ARMEL__ - rev r0,r0 - rev r1,r1 - rev r2,r2 - rev r3,r3 -#endif - str r0,[r12,#0] - str r1,[r12,#4] - str r2,[r12,#8] - str r3,[r12,#12] -#else - mov r4,r0,lsr#24 @ write output in endian-neutral - mov r5,r0,lsr#16 @ manner... - mov r6,r0,lsr#8 - strb r4,[r12,#0] - strb r5,[r12,#1] - mov r4,r1,lsr#24 - strb r6,[r12,#2] - mov r5,r1,lsr#16 - strb r0,[r12,#3] - mov r6,r1,lsr#8 - strb r4,[r12,#4] - strb r5,[r12,#5] - mov r4,r2,lsr#24 - strb r6,[r12,#6] - mov r5,r2,lsr#16 - strb r1,[r12,#7] - mov r6,r2,lsr#8 - strb r4,[r12,#8] - strb r5,[r12,#9] - mov r4,r3,lsr#24 - strb r6,[r12,#10] - mov r5,r3,lsr#16 - strb r2,[r12,#11] - mov r6,r3,lsr#8 - strb r4,[r12,#12] - strb r5,[r12,#13] - strb r6,[r12,#14] - strb r3,[r12,#15] -#endif -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size AES_decrypt,.-AES_decrypt - -.type _armv4_AES_decrypt,%function -.align 2 -_armv4_AES_decrypt: - str lr,[sp,#-4]! @ push lr - ldmia r11!,{r4-r7} - eor r0,r0,r4 - ldr r12,[r11,#240-16] - eor r1,r1,r5 - eor r2,r2,r6 - eor r3,r3,r7 - sub r12,r12,#1 - mov lr,#255 - - and r7,lr,r0,lsr#16 - and r8,lr,r0,lsr#8 - and r9,lr,r0 - mov r0,r0,lsr#24 -.Ldec_loop: - ldr r4,[r10,r7,lsl#2] @ Td1[s0>>16] - and r7,lr,r1 @ i0 - ldr r5,[r10,r8,lsl#2] @ Td2[s0>>8] - and r8,lr,r1,lsr#16 - ldr r6,[r10,r9,lsl#2] @ Td3[s0>>0] - and r9,lr,r1,lsr#8 - ldr r0,[r10,r0,lsl#2] @ Td0[s0>>24] - mov r1,r1,lsr#24 - - ldr r7,[r10,r7,lsl#2] @ Td3[s1>>0] - ldr r8,[r10,r8,lsl#2] @ Td1[s1>>16] - ldr r9,[r10,r9,lsl#2] @ Td2[s1>>8] - eor r0,r0,r7,ror#24 - ldr r1,[r10,r1,lsl#2] @ Td0[s1>>24] - and r7,lr,r2,lsr#8 @ i0 - eor r5,r8,r5,ror#8 - and r8,lr,r2 @ i1 - eor r6,r9,r6,ror#8 - and r9,lr,r2,lsr#16 - ldr r7,[r10,r7,lsl#2] @ Td2[s2>>8] - eor r1,r1,r4,ror#8 - ldr r8,[r10,r8,lsl#2] @ Td3[s2>>0] - mov r2,r2,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Td1[s2>>16] - eor r0,r0,r7,ror#16 - ldr r2,[r10,r2,lsl#2] @ Td0[s2>>24] - and r7,lr,r3,lsr#16 @ i0 - eor r1,r1,r8,ror#24 - and r8,lr,r3,lsr#8 @ i1 - eor r6,r9,r6,ror#8 - and r9,lr,r3 @ i2 - ldr r7,[r10,r7,lsl#2] @ Td1[s3>>16] - eor r2,r2,r5,ror#8 - ldr r8,[r10,r8,lsl#2] @ Td2[s3>>8] - mov r3,r3,lsr#24 - - ldr r9,[r10,r9,lsl#2] @ Td3[s3>>0] - eor r0,r0,r7,ror#8 - ldr r7,[r11],#16 - eor r1,r1,r8,ror#16 - ldr r3,[r10,r3,lsl#2] @ Td0[s3>>24] - eor r2,r2,r9,ror#24 - - ldr r4,[r11,#-12] - eor r0,r0,r7 - ldr r5,[r11,#-8] - eor r3,r3,r6,ror#8 - ldr r6,[r11,#-4] - and r7,lr,r0,lsr#16 - eor r1,r1,r4 - and r8,lr,r0,lsr#8 - eor r2,r2,r5 - and r9,lr,r0 - eor r3,r3,r6 - mov r0,r0,lsr#24 - - subs r12,r12,#1 - bne .Ldec_loop - - add r10,r10,#1024 - - ldr r5,[r10,#0] @ prefetch Td4 - ldr r6,[r10,#32] - ldr r4,[r10,#64] - ldr r5,[r10,#96] - ldr r6,[r10,#128] - ldr r4,[r10,#160] - ldr r5,[r10,#192] - ldr r6,[r10,#224] - - ldrb r0,[r10,r0] @ Td4[s0>>24] - ldrb r4,[r10,r7] @ Td4[s0>>16] - and r7,lr,r1 @ i0 - ldrb r5,[r10,r8] @ Td4[s0>>8] - and r8,lr,r1,lsr#16 - ldrb r6,[r10,r9] @ Td4[s0>>0] - and r9,lr,r1,lsr#8 - - add r1,r10,r1,lsr#24 - ldrb r7,[r10,r7] @ Td4[s1>>0] - ldrb r1,[r1] @ Td4[s1>>24] - ldrb r8,[r10,r8] @ Td4[s1>>16] - eor r0,r7,r0,lsl#24 - ldrb r9,[r10,r9] @ Td4[s1>>8] - eor r1,r4,r1,lsl#8 - and r7,lr,r2,lsr#8 @ i0 - eor r5,r5,r8,lsl#8 - and r8,lr,r2 @ i1 - ldrb r7,[r10,r7] @ Td4[s2>>8] - eor r6,r6,r9,lsl#8 - ldrb r8,[r10,r8] @ Td4[s2>>0] - and r9,lr,r2,lsr#16 - - add r2,r10,r2,lsr#24 - ldrb r2,[r2] @ Td4[s2>>24] - eor r0,r0,r7,lsl#8 - ldrb r9,[r10,r9] @ Td4[s2>>16] - eor r1,r8,r1,lsl#16 - and r7,lr,r3,lsr#16 @ i0 - eor r2,r5,r2,lsl#16 - and r8,lr,r3,lsr#8 @ i1 - ldrb r7,[r10,r7] @ Td4[s3>>16] - eor r6,r6,r9,lsl#16 - ldrb r8,[r10,r8] @ Td4[s3>>8] - and r9,lr,r3 @ i2 - - add r3,r10,r3,lsr#24 - ldrb r9,[r10,r9] @ Td4[s3>>0] - ldrb r3,[r3] @ Td4[s3>>24] - eor r0,r0,r7,lsl#16 - ldr r7,[r11,#0] - eor r1,r1,r8,lsl#8 - ldr r4,[r11,#4] - eor r2,r9,r2,lsl#8 - ldr r5,[r11,#8] - eor r3,r6,r3,lsl#24 - ldr r6,[r11,#12] - - eor r0,r0,r7 - eor r1,r1,r4 - eor r2,r2,r5 - eor r3,r3,r6 - - sub r10,r10,#1024 - ldr pc,[sp],#4 @ pop and return -.size _armv4_AES_decrypt,.-_armv4_AES_decrypt -.asciz "AES for ARMv4, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm_obsolete/arm-void-gas/aes/aesv8-armx.S b/deps/openssl/asm_obsolete/arm-void-gas/aes/aesv8-armx.S deleted file mode 100644 index fd979d078f46ba..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/aes/aesv8-armx.S +++ /dev/null @@ -1,754 +0,0 @@ -#include "arm_arch.h" - -#if __ARM_MAX_ARCH__>=7 -.text -.arch armv7-a -.fpu neon -.code 32 -.align 5 -rcon: -.long 0x01,0x01,0x01,0x01 -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d @ rotate-n-splat -.long 0x1b,0x1b,0x1b,0x1b - -.globl aes_v8_set_encrypt_key -.type aes_v8_set_encrypt_key,%function -.align 5 -aes_v8_set_encrypt_key: -.Lenc_key: - mov r3,#-1 - cmp r0,#0 - beq .Lenc_key_abort - cmp r2,#0 - beq .Lenc_key_abort - mov r3,#-2 - cmp r1,#128 - blt .Lenc_key_abort - cmp r1,#256 - bgt .Lenc_key_abort - tst r1,#0x3f - bne .Lenc_key_abort - - adr r3,rcon - cmp r1,#192 - - veor q0,q0,q0 - vld1.8 {q3},[r0]! - mov r1,#8 @ reuse r1 - vld1.32 {q1,q2},[r3]! - - blt .Loop128 - beq .L192 - b .L256 - -.align 4 -.Loop128: - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - bne .Loop128 - - vld1.32 {q1},[r3] - - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - - vtbl.8 d20,{q3},d4 - vtbl.8 d21,{q3},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q3},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - veor q3,q3,q10 - vst1.32 {q3},[r2] - add r2,r2,#0x50 - - mov r12,#10 - b .Ldone - -.align 4 -.L192: - vld1.8 {d16},[r0]! - vmov.i8 q10,#8 @ borrow q10 - vst1.32 {q3},[r2]! - vsub.i8 q2,q2,q10 @ adjust the mask - -.Loop192: - vtbl.8 d20,{q8},d4 - vtbl.8 d21,{q8},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {d16},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - - vdup.32 q9,d7[1] - veor q9,q9,q8 - veor q10,q10,q1 - vext.8 q8,q0,q8,#12 - vshl.u8 q1,q1,#1 - veor q8,q8,q9 - veor q3,q3,q10 - veor q8,q8,q10 - vst1.32 {q3},[r2]! - bne .Loop192 - - mov r12,#12 - add r2,r2,#0x20 - b .Ldone - -.align 4 -.L256: - vld1.8 {q8},[r0] - mov r1,#7 - mov r12,#14 - vst1.32 {q3},[r2]! - -.Loop256: - vtbl.8 d20,{q8},d4 - vtbl.8 d21,{q8},d5 - vext.8 q9,q0,q3,#12 - vst1.32 {q8},[r2]! - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - subs r1,r1,#1 - - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q3,q3,q9 - vext.8 q9,q0,q9,#12 - veor q10,q10,q1 - veor q3,q3,q9 - vshl.u8 q1,q1,#1 - veor q3,q3,q10 - vst1.32 {q3},[r2]! - beq .Ldone - - vdup.32 q10,d7[1] - vext.8 q9,q0,q8,#12 - .byte 0x00,0x43,0xf0,0xf3 @ aese q10,q0 - - veor q8,q8,q9 - vext.8 q9,q0,q9,#12 - veor q8,q8,q9 - vext.8 q9,q0,q9,#12 - veor q8,q8,q9 - - veor q8,q8,q10 - b .Loop256 - -.Ldone: - str r12,[r2] - mov r3,#0 - -.Lenc_key_abort: - mov r0,r3 @ return value - - bx lr -.size aes_v8_set_encrypt_key,.-aes_v8_set_encrypt_key - -.globl aes_v8_set_decrypt_key -.type aes_v8_set_decrypt_key,%function -.align 5 -aes_v8_set_decrypt_key: - stmdb sp!,{r4,lr} - bl .Lenc_key - - cmp r0,#0 - bne .Ldec_key_abort - - sub r2,r2,#240 @ restore original r2 - mov r4,#-16 - add r0,r2,r12,lsl#4 @ end of key schedule - - vld1.32 {q0},[r2] - vld1.32 {q1},[r0] - vst1.32 {q0},[r0],r4 - vst1.32 {q1},[r2]! - -.Loop_imc: - vld1.32 {q0},[r2] - vld1.32 {q1},[r0] - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - vst1.32 {q0},[r0],r4 - vst1.32 {q1},[r2]! - cmp r0,r2 - bhi .Loop_imc - - vld1.32 {q0},[r2] - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - vst1.32 {q0},[r0] - - eor r0,r0,r0 @ return value -.Ldec_key_abort: - ldmia sp!,{r4,pc} -.size aes_v8_set_decrypt_key,.-aes_v8_set_decrypt_key -.globl aes_v8_encrypt -.type aes_v8_encrypt,%function -.align 5 -aes_v8_encrypt: - ldr r3,[r2,#240] - vld1.32 {q0},[r2]! - vld1.8 {q2},[r0] - sub r3,r3,#2 - vld1.32 {q1},[r2]! - -.Loop_enc: - .byte 0x00,0x43,0xb0,0xf3 @ aese q2,q0 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q0},[r2]! - subs r3,r3,#2 - .byte 0x02,0x43,0xb0,0xf3 @ aese q2,q1 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q1},[r2]! - bgt .Loop_enc - - .byte 0x00,0x43,0xb0,0xf3 @ aese q2,q0 - .byte 0x84,0x43,0xb0,0xf3 @ aesmc q2,q2 - vld1.32 {q0},[r2] - .byte 0x02,0x43,0xb0,0xf3 @ aese q2,q1 - veor q2,q2,q0 - - vst1.8 {q2},[r1] - bx lr -.size aes_v8_encrypt,.-aes_v8_encrypt -.globl aes_v8_decrypt -.type aes_v8_decrypt,%function -.align 5 -aes_v8_decrypt: - ldr r3,[r2,#240] - vld1.32 {q0},[r2]! - vld1.8 {q2},[r0] - sub r3,r3,#2 - vld1.32 {q1},[r2]! - -.Loop_dec: - .byte 0x40,0x43,0xb0,0xf3 @ aesd q2,q0 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q0},[r2]! - subs r3,r3,#2 - .byte 0x42,0x43,0xb0,0xf3 @ aesd q2,q1 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q1},[r2]! - bgt .Loop_dec - - .byte 0x40,0x43,0xb0,0xf3 @ aesd q2,q0 - .byte 0xc4,0x43,0xb0,0xf3 @ aesimc q2,q2 - vld1.32 {q0},[r2] - .byte 0x42,0x43,0xb0,0xf3 @ aesd q2,q1 - veor q2,q2,q0 - - vst1.8 {q2},[r1] - bx lr -.size aes_v8_decrypt,.-aes_v8_decrypt -.globl aes_v8_cbc_encrypt -.type aes_v8_cbc_encrypt,%function -.align 5 -aes_v8_cbc_encrypt: - mov ip,sp - stmdb sp!,{r4-r8,lr} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldmia ip,{r4-r5} @ load remaining args - subs r2,r2,#16 - mov r8,#16 - blo .Lcbc_abort - moveq r8,#0 - - cmp r5,#0 @ en- or decrypting? - ldr r5,[r3,#240] - and r2,r2,#-16 - vld1.8 {q6},[r4] - vld1.8 {q0},[r0],r8 - - vld1.32 {q8-q9},[r3] @ load key schedule... - sub r5,r5,#6 - add r7,r3,r5,lsl#4 @ pointer to last 7 round keys - sub r5,r5,#2 - vld1.32 {q10-q11},[r7]! - vld1.32 {q12-q13},[r7]! - vld1.32 {q14-q15},[r7]! - vld1.32 {q7},[r7] - - add r7,r3,#32 - mov r6,r5 - beq .Lcbc_dec - - cmp r5,#2 - veor q0,q0,q6 - veor q5,q8,q7 - beq .Lcbc_enc128 - - vld1.32 {q2-q3},[r7] - add r7,r3,#16 - add r6,r3,#16*4 - add r12,r3,#16*5 - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - add r14,r3,#16*6 - add r3,r3,#16*7 - b .Lenter_cbc_enc - -.align 4 -.Loop_cbc_enc: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vst1.8 {q6},[r1]! -.Lenter_cbc_enc: - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x04,0x03,0xb0,0xf3 @ aese q0,q2 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q8},[r6] - cmp r5,#4 - .byte 0x06,0x03,0xb0,0xf3 @ aese q0,q3 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r12] - beq .Lcbc_enc192 - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q8},[r14] - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r3] - nop - -.Lcbc_enc192: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - subs r2,r2,#16 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - moveq r8,#0 - .byte 0x24,0x03,0xb0,0xf3 @ aese q0,q10 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x26,0x03,0xb0,0xf3 @ aese q0,q11 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.8 {q8},[r0],r8 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - veor q8,q8,q5 - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.32 {q9},[r7] @ re-pre-load rndkey[1] - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - veor q6,q0,q7 - bhs .Loop_cbc_enc - - vst1.8 {q6},[r1]! - b .Lcbc_done - -.align 5 -.Lcbc_enc128: - vld1.32 {q2-q3},[r7] - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - b .Lenter_cbc_enc128 -.Loop_cbc_enc128: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vst1.8 {q6},[r1]! -.Lenter_cbc_enc128: - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - subs r2,r2,#16 - .byte 0x04,0x03,0xb0,0xf3 @ aese q0,q2 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - moveq r8,#0 - .byte 0x06,0x03,0xb0,0xf3 @ aese q0,q3 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x24,0x03,0xb0,0xf3 @ aese q0,q10 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x26,0x03,0xb0,0xf3 @ aese q0,q11 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - vld1.8 {q8},[r0],r8 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - veor q8,q8,q5 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - veor q6,q0,q7 - bhs .Loop_cbc_enc128 - - vst1.8 {q6},[r1]! - b .Lcbc_done -.align 5 -.Lcbc_dec: - vld1.8 {q10},[r0]! - subs r2,r2,#32 @ bias - add r6,r5,#2 - vorr q3,q0,q0 - vorr q1,q0,q0 - vorr q11,q10,q10 - blo .Lcbc_dec_tail - - vorr q1,q10,q10 - vld1.8 {q10},[r0]! - vorr q2,q0,q0 - vorr q3,q1,q1 - vorr q11,q10,q10 - -.Loop3x_cbc_dec: - .byte 0x60,0x03,0xb0,0xf3 @ aesd q0,q8 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x62,0x03,0xb0,0xf3 @ aesd q0,q9 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q9},[r7]! - bgt .Loop3x_cbc_dec - - .byte 0x60,0x03,0xb0,0xf3 @ aesd q0,q8 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q4,q6,q7 - subs r2,r2,#0x30 - veor q5,q2,q7 - movlo r6,r2 @ r6, r6, is zero at this point - .byte 0x62,0x03,0xb0,0xf3 @ aesd q0,q9 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q9,q3,q7 - add r0,r0,r6 @ r0 is adjusted in such way that - @ at exit from the loop q1-q10 - @ are loaded with last "words" - vorr q6,q11,q11 - mov r7,r3 - .byte 0x68,0x03,0xb0,0xf3 @ aesd q0,q12 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x68,0x23,0xb0,0xf3 @ aesd q1,q12 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x68,0x43,0xf0,0xf3 @ aesd q10,q12 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q2},[r0]! - .byte 0x6a,0x03,0xb0,0xf3 @ aesd q0,q13 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x6a,0x23,0xb0,0xf3 @ aesd q1,q13 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6a,0x43,0xf0,0xf3 @ aesd q10,q13 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q3},[r0]! - .byte 0x6c,0x03,0xb0,0xf3 @ aesd q0,q14 - .byte 0xc0,0x03,0xb0,0xf3 @ aesimc q0,q0 - .byte 0x6c,0x23,0xb0,0xf3 @ aesd q1,q14 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6c,0x43,0xf0,0xf3 @ aesd q10,q14 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.8 {q11},[r0]! - .byte 0x6e,0x03,0xb0,0xf3 @ aesd q0,q15 - .byte 0x6e,0x23,0xb0,0xf3 @ aesd q1,q15 - .byte 0x6e,0x43,0xf0,0xf3 @ aesd q10,q15 - vld1.32 {q8},[r7]! @ re-pre-load rndkey[0] - add r6,r5,#2 - veor q4,q4,q0 - veor q5,q5,q1 - veor q10,q10,q9 - vld1.32 {q9},[r7]! @ re-pre-load rndkey[1] - vst1.8 {q4},[r1]! - vorr q0,q2,q2 - vst1.8 {q5},[r1]! - vorr q1,q3,q3 - vst1.8 {q10},[r1]! - vorr q10,q11,q11 - bhs .Loop3x_cbc_dec - - cmn r2,#0x30 - beq .Lcbc_done - nop - -.Lcbc_dec_tail: - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - vld1.32 {q9},[r7]! - bgt .Lcbc_dec_tail - - .byte 0x60,0x23,0xb0,0xf3 @ aesd q1,q8 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x60,0x43,0xf0,0xf3 @ aesd q10,q8 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - .byte 0x62,0x23,0xb0,0xf3 @ aesd q1,q9 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x62,0x43,0xf0,0xf3 @ aesd q10,q9 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - .byte 0x68,0x23,0xb0,0xf3 @ aesd q1,q12 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x68,0x43,0xf0,0xf3 @ aesd q10,q12 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - cmn r2,#0x20 - .byte 0x6a,0x23,0xb0,0xf3 @ aesd q1,q13 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6a,0x43,0xf0,0xf3 @ aesd q10,q13 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q5,q6,q7 - .byte 0x6c,0x23,0xb0,0xf3 @ aesd q1,q14 - .byte 0xc2,0x23,0xb0,0xf3 @ aesimc q1,q1 - .byte 0x6c,0x43,0xf0,0xf3 @ aesd q10,q14 - .byte 0xe4,0x43,0xf0,0xf3 @ aesimc q10,q10 - veor q9,q3,q7 - .byte 0x6e,0x23,0xb0,0xf3 @ aesd q1,q15 - .byte 0x6e,0x43,0xf0,0xf3 @ aesd q10,q15 - beq .Lcbc_dec_one - veor q5,q5,q1 - veor q9,q9,q10 - vorr q6,q11,q11 - vst1.8 {q5},[r1]! - vst1.8 {q9},[r1]! - b .Lcbc_done - -.Lcbc_dec_one: - veor q5,q5,q10 - vorr q6,q11,q11 - vst1.8 {q5},[r1]! - -.Lcbc_done: - vst1.8 {q6},[r4] -.Lcbc_abort: - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r8,pc} -.size aes_v8_cbc_encrypt,.-aes_v8_cbc_encrypt -.globl aes_v8_ctr32_encrypt_blocks -.type aes_v8_ctr32_encrypt_blocks,%function -.align 5 -aes_v8_ctr32_encrypt_blocks: - mov ip,sp - stmdb sp!,{r4-r10,lr} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldr r4, [ip] @ load remaining arg - ldr r5,[r3,#240] - - ldr r8, [r4, #12] - vld1.32 {q0},[r4] - - vld1.32 {q8-q9},[r3] @ load key schedule... - sub r5,r5,#4 - mov r12,#16 - cmp r2,#2 - add r7,r3,r5,lsl#4 @ pointer to last 5 round keys - sub r5,r5,#2 - vld1.32 {q12-q13},[r7]! - vld1.32 {q14-q15},[r7]! - vld1.32 {q7},[r7] - add r7,r3,#32 - mov r6,r5 - movlo r12,#0 -#ifndef __ARMEB__ - rev r8, r8 -#endif - vorr q1,q0,q0 - add r10, r8, #1 - vorr q10,q0,q0 - add r8, r8, #2 - vorr q6,q0,q0 - rev r10, r10 - vmov.32 d3[1],r10 - bls .Lctr32_tail - rev r12, r8 - sub r2,r2,#3 @ bias - vmov.32 d21[1],r12 - b .Loop3x_ctr32 - -.align 4 -.Loop3x_ctr32: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x20,0x43,0xf0,0xf3 @ aese q10,q8 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x22,0x43,0xf0,0xf3 @ aese q10,q9 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.32 {q9},[r7]! - bgt .Loop3x_ctr32 - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x83,0xb0,0xf3 @ aesmc q4,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0xa3,0xb0,0xf3 @ aesmc q5,q1 - vld1.8 {q2},[r0]! - vorr q0,q6,q6 - .byte 0x20,0x43,0xf0,0xf3 @ aese q10,q8 - .byte 0xa4,0x43,0xf0,0xf3 @ aesmc q10,q10 - vld1.8 {q3},[r0]! - vorr q1,q6,q6 - .byte 0x22,0x83,0xb0,0xf3 @ aese q4,q9 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x22,0xa3,0xb0,0xf3 @ aese q5,q9 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - vld1.8 {q11},[r0]! - mov r7,r3 - .byte 0x22,0x43,0xf0,0xf3 @ aese q10,q9 - .byte 0xa4,0x23,0xf0,0xf3 @ aesmc q9,q10 - vorr q10,q6,q6 - add r9,r8,#1 - .byte 0x28,0x83,0xb0,0xf3 @ aese q4,q12 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x28,0xa3,0xb0,0xf3 @ aese q5,q12 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - veor q2,q2,q7 - add r10,r8,#2 - .byte 0x28,0x23,0xf0,0xf3 @ aese q9,q12 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - veor q3,q3,q7 - add r8,r8,#3 - .byte 0x2a,0x83,0xb0,0xf3 @ aese q4,q13 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x2a,0xa3,0xb0,0xf3 @ aese q5,q13 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - veor q11,q11,q7 - rev r9,r9 - .byte 0x2a,0x23,0xf0,0xf3 @ aese q9,q13 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - vmov.32 d1[1], r9 - rev r10,r10 - .byte 0x2c,0x83,0xb0,0xf3 @ aese q4,q14 - .byte 0x88,0x83,0xb0,0xf3 @ aesmc q4,q4 - .byte 0x2c,0xa3,0xb0,0xf3 @ aese q5,q14 - .byte 0x8a,0xa3,0xb0,0xf3 @ aesmc q5,q5 - vmov.32 d3[1], r10 - rev r12,r8 - .byte 0x2c,0x23,0xf0,0xf3 @ aese q9,q14 - .byte 0xa2,0x23,0xf0,0xf3 @ aesmc q9,q9 - vmov.32 d21[1], r12 - subs r2,r2,#3 - .byte 0x2e,0x83,0xb0,0xf3 @ aese q4,q15 - .byte 0x2e,0xa3,0xb0,0xf3 @ aese q5,q15 - .byte 0x2e,0x23,0xf0,0xf3 @ aese q9,q15 - - veor q2,q2,q4 - vld1.32 {q8},[r7]! @ re-pre-load rndkey[0] - vst1.8 {q2},[r1]! - veor q3,q3,q5 - mov r6,r5 - vst1.8 {q3},[r1]! - veor q11,q11,q9 - vld1.32 {q9},[r7]! @ re-pre-load rndkey[1] - vst1.8 {q11},[r1]! - bhs .Loop3x_ctr32 - - adds r2,r2,#3 - beq .Lctr32_done - cmp r2,#1 - mov r12,#16 - moveq r12,#0 - -.Lctr32_tail: - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.32 {q8},[r7]! - subs r6,r6,#2 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.32 {q9},[r7]! - bgt .Lctr32_tail - - .byte 0x20,0x03,0xb0,0xf3 @ aese q0,q8 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x20,0x23,0xb0,0xf3 @ aese q1,q8 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - .byte 0x22,0x03,0xb0,0xf3 @ aese q0,q9 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x22,0x23,0xb0,0xf3 @ aese q1,q9 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.8 {q2},[r0],r12 - .byte 0x28,0x03,0xb0,0xf3 @ aese q0,q12 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x28,0x23,0xb0,0xf3 @ aese q1,q12 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - vld1.8 {q3},[r0] - .byte 0x2a,0x03,0xb0,0xf3 @ aese q0,q13 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2a,0x23,0xb0,0xf3 @ aese q1,q13 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - veor q2,q2,q7 - .byte 0x2c,0x03,0xb0,0xf3 @ aese q0,q14 - .byte 0x80,0x03,0xb0,0xf3 @ aesmc q0,q0 - .byte 0x2c,0x23,0xb0,0xf3 @ aese q1,q14 - .byte 0x82,0x23,0xb0,0xf3 @ aesmc q1,q1 - veor q3,q3,q7 - .byte 0x2e,0x03,0xb0,0xf3 @ aese q0,q15 - .byte 0x2e,0x23,0xb0,0xf3 @ aese q1,q15 - - cmp r2,#1 - veor q2,q2,q0 - veor q3,q3,q1 - vst1.8 {q2},[r1]! - beq .Lctr32_done - vst1.8 {q3},[r1] - -.Lctr32_done: - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r10,pc} -.size aes_v8_ctr32_encrypt_blocks,.-aes_v8_ctr32_encrypt_blocks -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S b/deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S deleted file mode 100644 index aa15709abb403a..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S +++ /dev/null @@ -1,2528 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ -@ Specific modes and adaptation for Linux kernel by Ard Biesheuvel -@ . Permission to use under GPL terms is -@ granted. -@ ==================================================================== - -@ Bit-sliced AES for ARM NEON -@ -@ February 2012. -@ -@ This implementation is direct adaptation of bsaes-x86_64 module for -@ ARM NEON. Except that this module is endian-neutral [in sense that -@ it can be compiled for either endianness] by courtesy of vld1.8's -@ neutrality. Initial version doesn't implement interface to OpenSSL, -@ only low-level primitives and unsupported entry points, just enough -@ to collect performance results, which for Cortex-A8 core are: -@ -@ encrypt 19.5 cycles per byte processed with 128-bit key -@ decrypt 22.1 cycles per byte processed with 128-bit key -@ key conv. 440 cycles per 128-bit key/0.18 of 8x block -@ -@ Snapdragon S4 encrypts byte in 17.6 cycles and decrypts in 19.7, -@ which is [much] worse than anticipated (for further details see -@ http://www.openssl.org/~appro/Snapdragon-S4.html). -@ -@ Cortex-A15 manages in 14.2/16.1 cycles [when integer-only code -@ manages in 20.0 cycles]. -@ -@ When comparing to x86_64 results keep in mind that NEON unit is -@ [mostly] single-issue and thus can't [fully] benefit from -@ instruction-level parallelism. And when comparing to aes-armv4 -@ results keep in mind key schedule conversion overhead (see -@ bsaes-x86_64.pl for further details)... -@ -@ - -@ April-August 2013 -@ -@ Add CBC, CTR and XTS subroutines, adapt for kernel use. -@ -@ - -#ifndef __KERNEL__ -# include "arm_arch.h" - -# define VFP_ABI_PUSH vstmdb sp!,{d8-d15} -# define VFP_ABI_POP vldmia sp!,{d8-d15} -# define VFP_ABI_FRAME 0x40 -#else -# define VFP_ABI_PUSH -# define VFP_ABI_POP -# define VFP_ABI_FRAME 0 -# define BSAES_ASM_EXTENDED_KEY -# define XTS_CHAIN_TWEAK -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -# define __ARM_MAX_ARCH__ __LINUX_ARM_ARCH__ -#endif - -#ifdef __thumb__ -# define adrl adr -#endif - -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.text -.syntax unified @ ARMv7-capable assembler is expected to handle this -#ifdef __thumb2__ -.thumb -#else -.code 32 -#endif - -.type _bsaes_decrypt8,%function -.align 4 -_bsaes_decrypt8: - adr r6,. - vldmia r4!, {q9} @ round 0 key - add r6,r6,#.LM0ISR-_bsaes_decrypt8 - - vldmia r6!, {q8} @ .LM0ISR - veor q10, q0, q9 @ xor with round0 key - veor q11, q1, q9 - vtbl.8 d0, {q10}, d16 - vtbl.8 d1, {q10}, d17 - veor q12, q2, q9 - vtbl.8 d2, {q11}, d16 - vtbl.8 d3, {q11}, d17 - veor q13, q3, q9 - vtbl.8 d4, {q12}, d16 - vtbl.8 d5, {q12}, d17 - veor q14, q4, q9 - vtbl.8 d6, {q13}, d16 - vtbl.8 d7, {q13}, d17 - veor q15, q5, q9 - vtbl.8 d8, {q14}, d16 - vtbl.8 d9, {q14}, d17 - veor q10, q6, q9 - vtbl.8 d10, {q15}, d16 - vtbl.8 d11, {q15}, d17 - veor q11, q7, q9 - vtbl.8 d12, {q10}, d16 - vtbl.8 d13, {q10}, d17 - vtbl.8 d14, {q11}, d16 - vtbl.8 d15, {q11}, d17 - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q4, #1 - veor q10, q10, q7 - veor q11, q11, q5 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #1 - veor q5, q5, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q3 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q3, q3, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q5, #2 - vshr.u64 q11, q4, #2 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q7, q7, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q5, q5, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q3 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q3, q3, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q3, #4 - vshr.u64 q11, q2, #4 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q6, q6, q11 - vshl.u64 q11, q11, #4 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q5 - veor q11, q11, q4 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q4, q4, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - sub r5,r5,#1 - b .Ldec_sbox -.align 4 -.Ldec_loop: - vldmia r4!, {q8-q11} - veor q8, q8, q0 - veor q9, q9, q1 - vtbl.8 d0, {q8}, d24 - vtbl.8 d1, {q8}, d25 - vldmia r4!, {q8} - veor q10, q10, q2 - vtbl.8 d2, {q9}, d24 - vtbl.8 d3, {q9}, d25 - vldmia r4!, {q9} - veor q11, q11, q3 - vtbl.8 d4, {q10}, d24 - vtbl.8 d5, {q10}, d25 - vldmia r4!, {q10} - vtbl.8 d6, {q11}, d24 - vtbl.8 d7, {q11}, d25 - vldmia r4!, {q11} - veor q8, q8, q4 - veor q9, q9, q5 - vtbl.8 d8, {q8}, d24 - vtbl.8 d9, {q8}, d25 - veor q10, q10, q6 - vtbl.8 d10, {q9}, d24 - vtbl.8 d11, {q9}, d25 - veor q11, q11, q7 - vtbl.8 d12, {q10}, d24 - vtbl.8 d13, {q10}, d25 - vtbl.8 d14, {q11}, d24 - vtbl.8 d15, {q11}, d25 -.Ldec_sbox: - veor q1, q1, q4 - veor q3, q3, q4 - - veor q4, q4, q7 - veor q1, q1, q6 - veor q2, q2, q7 - veor q6, q6, q4 - - veor q0, q0, q1 - veor q2, q2, q5 - veor q7, q7, q6 - veor q3, q3, q0 - veor q5, q5, q0 - veor q1, q1, q3 - veor q11, q3, q0 - veor q10, q7, q4 - veor q9, q1, q6 - veor q13, q4, q0 - vmov q8, q10 - veor q12, q5, q2 - - vorr q10, q10, q9 - veor q15, q11, q8 - vand q14, q11, q12 - vorr q11, q11, q12 - veor q12, q12, q9 - vand q8, q8, q9 - veor q9, q6, q2 - vand q15, q15, q12 - vand q13, q13, q9 - veor q9, q3, q7 - veor q12, q1, q5 - veor q11, q11, q13 - veor q10, q10, q13 - vand q13, q9, q12 - vorr q9, q9, q12 - veor q11, q11, q15 - veor q8, q8, q13 - veor q10, q10, q14 - veor q9, q9, q15 - veor q8, q8, q14 - vand q12, q4, q6 - veor q9, q9, q14 - vand q13, q0, q2 - vand q14, q7, q1 - vorr q15, q3, q5 - veor q11, q11, q12 - veor q9, q9, q14 - veor q8, q8, q15 - veor q10, q10, q13 - - @ Inv_GF16 0, 1, 2, 3, s0, s1, s2, s3 - - @ new smaller inversion - - vand q14, q11, q9 - vmov q12, q8 - - veor q13, q10, q14 - veor q15, q8, q14 - veor q14, q8, q14 @ q14=q15 - - vbsl q13, q9, q8 - vbsl q15, q11, q10 - veor q11, q11, q10 - - vbsl q12, q13, q14 - vbsl q8, q14, q13 - - vand q14, q12, q15 - veor q9, q9, q8 - - veor q14, q14, q11 - veor q12, q5, q2 - veor q8, q1, q6 - veor q10, q15, q14 - vand q10, q10, q5 - veor q5, q5, q1 - vand q11, q1, q15 - vand q5, q5, q14 - veor q1, q11, q10 - veor q5, q5, q11 - veor q15, q15, q13 - veor q14, q14, q9 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q2 - veor q12, q12, q8 - veor q2, q2, q6 - vand q8, q8, q15 - vand q6, q6, q13 - vand q12, q12, q14 - vand q2, q2, q9 - veor q8, q8, q12 - veor q2, q2, q6 - veor q12, q12, q11 - veor q6, q6, q10 - veor q5, q5, q12 - veor q2, q2, q12 - veor q1, q1, q8 - veor q6, q6, q8 - - veor q12, q3, q0 - veor q8, q7, q4 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q0 - veor q12, q12, q8 - veor q0, q0, q4 - vand q8, q8, q15 - vand q4, q4, q13 - vand q12, q12, q14 - vand q0, q0, q9 - veor q8, q8, q12 - veor q0, q0, q4 - veor q12, q12, q11 - veor q4, q4, q10 - veor q15, q15, q13 - veor q14, q14, q9 - veor q10, q15, q14 - vand q10, q10, q3 - veor q3, q3, q7 - vand q11, q7, q15 - vand q3, q3, q14 - veor q7, q11, q10 - veor q3, q3, q11 - veor q3, q3, q12 - veor q0, q0, q12 - veor q7, q7, q8 - veor q4, q4, q8 - veor q1, q1, q7 - veor q6, q6, q5 - - veor q4, q4, q1 - veor q2, q2, q7 - veor q5, q5, q7 - veor q4, q4, q2 - veor q7, q7, q0 - veor q4, q4, q5 - veor q3, q3, q6 - veor q6, q6, q1 - veor q3, q3, q4 - - veor q4, q4, q0 - veor q7, q7, q3 - subs r5,r5,#1 - bcc .Ldec_done - @ multiplication by 0x05-0x00-0x04-0x00 - vext.8 q8, q0, q0, #8 - vext.8 q14, q3, q3, #8 - vext.8 q15, q5, q5, #8 - veor q8, q8, q0 - vext.8 q9, q1, q1, #8 - veor q14, q14, q3 - vext.8 q10, q6, q6, #8 - veor q15, q15, q5 - vext.8 q11, q4, q4, #8 - veor q9, q9, q1 - vext.8 q12, q2, q2, #8 - veor q10, q10, q6 - vext.8 q13, q7, q7, #8 - veor q11, q11, q4 - veor q12, q12, q2 - veor q13, q13, q7 - - veor q0, q0, q14 - veor q1, q1, q14 - veor q6, q6, q8 - veor q2, q2, q10 - veor q4, q4, q9 - veor q1, q1, q15 - veor q6, q6, q15 - veor q2, q2, q14 - veor q7, q7, q11 - veor q4, q4, q14 - veor q3, q3, q12 - veor q2, q2, q15 - veor q7, q7, q15 - veor q5, q5, q13 - vext.8 q8, q0, q0, #12 @ x0 <<< 32 - vext.8 q9, q1, q1, #12 - veor q0, q0, q8 @ x0 ^ (x0 <<< 32) - vext.8 q10, q6, q6, #12 - veor q1, q1, q9 - vext.8 q11, q4, q4, #12 - veor q6, q6, q10 - vext.8 q12, q2, q2, #12 - veor q4, q4, q11 - vext.8 q13, q7, q7, #12 - veor q2, q2, q12 - vext.8 q14, q3, q3, #12 - veor q7, q7, q13 - vext.8 q15, q5, q5, #12 - veor q3, q3, q14 - - veor q9, q9, q0 - veor q5, q5, q15 - vext.8 q0, q0, q0, #8 @ (x0 ^ (x0 <<< 32)) <<< 64) - veor q10, q10, q1 - veor q8, q8, q5 - veor q9, q9, q5 - vext.8 q1, q1, q1, #8 - veor q13, q13, q2 - veor q0, q0, q8 - veor q14, q14, q7 - veor q1, q1, q9 - vext.8 q8, q2, q2, #8 - veor q12, q12, q4 - vext.8 q9, q7, q7, #8 - veor q15, q15, q3 - vext.8 q2, q4, q4, #8 - veor q11, q11, q6 - vext.8 q7, q5, q5, #8 - veor q12, q12, q5 - vext.8 q4, q3, q3, #8 - veor q11, q11, q5 - vext.8 q3, q6, q6, #8 - veor q5, q9, q13 - veor q11, q11, q2 - veor q7, q7, q15 - veor q6, q4, q14 - veor q4, q8, q12 - veor q2, q3, q10 - vmov q3, q11 - @ vmov q5, q9 - vldmia r6, {q12} @ .LISR - ite eq @ Thumb2 thing, sanity check in ARM - addeq r6,r6,#0x10 - bne .Ldec_loop - vldmia r6, {q12} @ .LISRM0 - b .Ldec_loop -.align 4 -.Ldec_done: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q3, #1 - vshr.u64 q11, q2, #1 - veor q10, q10, q5 - veor q11, q11, q7 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #1 - veor q7, q7, q11 - vshl.u64 q11, q11, #1 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q4 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q4, q4, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q7, #2 - vshr.u64 q11, q2, #2 - veor q10, q10, q5 - veor q11, q11, q3 - vand q10, q10, q9 - vand q11, q11, q9 - veor q5, q5, q10 - vshl.u64 q10, q10, #2 - veor q3, q3, q11 - vshl.u64 q11, q11, #2 - veor q7, q7, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q4 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q4, q4, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q4, #4 - vshr.u64 q11, q6, #4 - veor q10, q10, q5 - veor q11, q11, q3 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q3, q3, q11 - vshl.u64 q11, q11, #4 - veor q4, q4, q10 - veor q6, q6, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q7 - veor q11, q11, q2 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q2, q2, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - vldmia r4, {q8} @ last round key - veor q6, q6, q8 - veor q4, q4, q8 - veor q2, q2, q8 - veor q7, q7, q8 - veor q3, q3, q8 - veor q5, q5, q8 - veor q0, q0, q8 - veor q1, q1, q8 - bx lr -.size _bsaes_decrypt8,.-_bsaes_decrypt8 - -.type _bsaes_const,%object -.align 6 -_bsaes_const: -.LM0ISR: @ InvShiftRows constants - .quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -.LISR: - .quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -.LISRM0: - .quad 0x01040b0e0205080f, 0x0306090c00070a0d -.LM0SR: @ ShiftRows constants - .quad 0x0a0e02060f03070b, 0x0004080c05090d01 -.LSR: - .quad 0x0504070600030201, 0x0f0e0d0c0a09080b -.LSRM0: - .quad 0x0304090e00050a0f, 0x01060b0c0207080d -.LM0: - .quad 0x02060a0e03070b0f, 0x0004080c0105090d -.LREVM0SR: - .quad 0x090d01050c000408, 0x03070b0f060a0e02 -.asciz "Bit-sliced AES for NEON, CRYPTOGAMS by " -.align 6 -.size _bsaes_const,.-_bsaes_const - -.type _bsaes_encrypt8,%function -.align 4 -_bsaes_encrypt8: - adr r6,. - vldmia r4!, {q9} @ round 0 key - sub r6,r6,#_bsaes_encrypt8-.LM0SR - - vldmia r6!, {q8} @ .LM0SR -_bsaes_encrypt8_alt: - veor q10, q0, q9 @ xor with round0 key - veor q11, q1, q9 - vtbl.8 d0, {q10}, d16 - vtbl.8 d1, {q10}, d17 - veor q12, q2, q9 - vtbl.8 d2, {q11}, d16 - vtbl.8 d3, {q11}, d17 - veor q13, q3, q9 - vtbl.8 d4, {q12}, d16 - vtbl.8 d5, {q12}, d17 - veor q14, q4, q9 - vtbl.8 d6, {q13}, d16 - vtbl.8 d7, {q13}, d17 - veor q15, q5, q9 - vtbl.8 d8, {q14}, d16 - vtbl.8 d9, {q14}, d17 - veor q10, q6, q9 - vtbl.8 d10, {q15}, d16 - vtbl.8 d11, {q15}, d17 - veor q11, q7, q9 - vtbl.8 d12, {q10}, d16 - vtbl.8 d13, {q10}, d17 - vtbl.8 d14, {q11}, d16 - vtbl.8 d15, {q11}, d17 -_bsaes_encrypt8_bitslice: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q6, #1 - vshr.u64 q11, q4, #1 - veor q10, q10, q7 - veor q11, q11, q5 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #1 - veor q5, q5, q11 - vshl.u64 q11, q11, #1 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q3 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q3, q3, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q5, #2 - vshr.u64 q11, q4, #2 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q9 - vand q11, q11, q9 - veor q7, q7, q10 - vshl.u64 q10, q10, #2 - veor q6, q6, q11 - vshl.u64 q11, q11, #2 - veor q5, q5, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q3 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q3, q3, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q3, #4 - vshr.u64 q11, q2, #4 - veor q10, q10, q7 - veor q11, q11, q6 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q6, q6, q11 - vshl.u64 q11, q11, #4 - veor q3, q3, q10 - veor q2, q2, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q5 - veor q11, q11, q4 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q4, q4, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - sub r5,r5,#1 - b .Lenc_sbox -.align 4 -.Lenc_loop: - vldmia r4!, {q8-q11} - veor q8, q8, q0 - veor q9, q9, q1 - vtbl.8 d0, {q8}, d24 - vtbl.8 d1, {q8}, d25 - vldmia r4!, {q8} - veor q10, q10, q2 - vtbl.8 d2, {q9}, d24 - vtbl.8 d3, {q9}, d25 - vldmia r4!, {q9} - veor q11, q11, q3 - vtbl.8 d4, {q10}, d24 - vtbl.8 d5, {q10}, d25 - vldmia r4!, {q10} - vtbl.8 d6, {q11}, d24 - vtbl.8 d7, {q11}, d25 - vldmia r4!, {q11} - veor q8, q8, q4 - veor q9, q9, q5 - vtbl.8 d8, {q8}, d24 - vtbl.8 d9, {q8}, d25 - veor q10, q10, q6 - vtbl.8 d10, {q9}, d24 - vtbl.8 d11, {q9}, d25 - veor q11, q11, q7 - vtbl.8 d12, {q10}, d24 - vtbl.8 d13, {q10}, d25 - vtbl.8 d14, {q11}, d24 - vtbl.8 d15, {q11}, d25 -.Lenc_sbox: - veor q2, q2, q1 - veor q5, q5, q6 - veor q3, q3, q0 - veor q6, q6, q2 - veor q5, q5, q0 - - veor q6, q6, q3 - veor q3, q3, q7 - veor q7, q7, q5 - veor q3, q3, q4 - veor q4, q4, q5 - - veor q2, q2, q7 - veor q3, q3, q1 - veor q1, q1, q5 - veor q11, q7, q4 - veor q10, q1, q2 - veor q9, q5, q3 - veor q13, q2, q4 - vmov q8, q10 - veor q12, q6, q0 - - vorr q10, q10, q9 - veor q15, q11, q8 - vand q14, q11, q12 - vorr q11, q11, q12 - veor q12, q12, q9 - vand q8, q8, q9 - veor q9, q3, q0 - vand q15, q15, q12 - vand q13, q13, q9 - veor q9, q7, q1 - veor q12, q5, q6 - veor q11, q11, q13 - veor q10, q10, q13 - vand q13, q9, q12 - vorr q9, q9, q12 - veor q11, q11, q15 - veor q8, q8, q13 - veor q10, q10, q14 - veor q9, q9, q15 - veor q8, q8, q14 - vand q12, q2, q3 - veor q9, q9, q14 - vand q13, q4, q0 - vand q14, q1, q5 - vorr q15, q7, q6 - veor q11, q11, q12 - veor q9, q9, q14 - veor q8, q8, q15 - veor q10, q10, q13 - - @ Inv_GF16 0, 1, 2, 3, s0, s1, s2, s3 - - @ new smaller inversion - - vand q14, q11, q9 - vmov q12, q8 - - veor q13, q10, q14 - veor q15, q8, q14 - veor q14, q8, q14 @ q14=q15 - - vbsl q13, q9, q8 - vbsl q15, q11, q10 - veor q11, q11, q10 - - vbsl q12, q13, q14 - vbsl q8, q14, q13 - - vand q14, q12, q15 - veor q9, q9, q8 - - veor q14, q14, q11 - veor q12, q6, q0 - veor q8, q5, q3 - veor q10, q15, q14 - vand q10, q10, q6 - veor q6, q6, q5 - vand q11, q5, q15 - vand q6, q6, q14 - veor q5, q11, q10 - veor q6, q6, q11 - veor q15, q15, q13 - veor q14, q14, q9 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q0 - veor q12, q12, q8 - veor q0, q0, q3 - vand q8, q8, q15 - vand q3, q3, q13 - vand q12, q12, q14 - vand q0, q0, q9 - veor q8, q8, q12 - veor q0, q0, q3 - veor q12, q12, q11 - veor q3, q3, q10 - veor q6, q6, q12 - veor q0, q0, q12 - veor q5, q5, q8 - veor q3, q3, q8 - - veor q12, q7, q4 - veor q8, q1, q2 - veor q11, q15, q14 - veor q10, q13, q9 - vand q11, q11, q12 - vand q10, q10, q4 - veor q12, q12, q8 - veor q4, q4, q2 - vand q8, q8, q15 - vand q2, q2, q13 - vand q12, q12, q14 - vand q4, q4, q9 - veor q8, q8, q12 - veor q4, q4, q2 - veor q12, q12, q11 - veor q2, q2, q10 - veor q15, q15, q13 - veor q14, q14, q9 - veor q10, q15, q14 - vand q10, q10, q7 - veor q7, q7, q1 - vand q11, q1, q15 - vand q7, q7, q14 - veor q1, q11, q10 - veor q7, q7, q11 - veor q7, q7, q12 - veor q4, q4, q12 - veor q1, q1, q8 - veor q2, q2, q8 - veor q7, q7, q0 - veor q1, q1, q6 - veor q6, q6, q0 - veor q4, q4, q7 - veor q0, q0, q1 - - veor q1, q1, q5 - veor q5, q5, q2 - veor q2, q2, q3 - veor q3, q3, q5 - veor q4, q4, q5 - - veor q6, q6, q3 - subs r5,r5,#1 - bcc .Lenc_done - vext.8 q8, q0, q0, #12 @ x0 <<< 32 - vext.8 q9, q1, q1, #12 - veor q0, q0, q8 @ x0 ^ (x0 <<< 32) - vext.8 q10, q4, q4, #12 - veor q1, q1, q9 - vext.8 q11, q6, q6, #12 - veor q4, q4, q10 - vext.8 q12, q3, q3, #12 - veor q6, q6, q11 - vext.8 q13, q7, q7, #12 - veor q3, q3, q12 - vext.8 q14, q2, q2, #12 - veor q7, q7, q13 - vext.8 q15, q5, q5, #12 - veor q2, q2, q14 - - veor q9, q9, q0 - veor q5, q5, q15 - vext.8 q0, q0, q0, #8 @ (x0 ^ (x0 <<< 32)) <<< 64) - veor q10, q10, q1 - veor q8, q8, q5 - veor q9, q9, q5 - vext.8 q1, q1, q1, #8 - veor q13, q13, q3 - veor q0, q0, q8 - veor q14, q14, q7 - veor q1, q1, q9 - vext.8 q8, q3, q3, #8 - veor q12, q12, q6 - vext.8 q9, q7, q7, #8 - veor q15, q15, q2 - vext.8 q3, q6, q6, #8 - veor q11, q11, q4 - vext.8 q7, q5, q5, #8 - veor q12, q12, q5 - vext.8 q6, q2, q2, #8 - veor q11, q11, q5 - vext.8 q2, q4, q4, #8 - veor q5, q9, q13 - veor q4, q8, q12 - veor q3, q3, q11 - veor q7, q7, q15 - veor q6, q6, q14 - @ vmov q4, q8 - veor q2, q2, q10 - @ vmov q5, q9 - vldmia r6, {q12} @ .LSR - ite eq @ Thumb2 thing, samity check in ARM - addeq r6,r6,#0x10 - bne .Lenc_loop - vldmia r6, {q12} @ .LSRM0 - b .Lenc_loop -.align 4 -.Lenc_done: - vmov.i8 q8,#0x55 @ compose .LBS0 - vmov.i8 q9,#0x33 @ compose .LBS1 - vshr.u64 q10, q2, #1 - vshr.u64 q11, q3, #1 - veor q10, q10, q5 - veor q11, q11, q7 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #1 - veor q7, q7, q11 - vshl.u64 q11, q11, #1 - veor q2, q2, q10 - veor q3, q3, q11 - vshr.u64 q10, q4, #1 - vshr.u64 q11, q0, #1 - veor q10, q10, q6 - veor q11, q11, q1 - vand q10, q10, q8 - vand q11, q11, q8 - veor q6, q6, q10 - vshl.u64 q10, q10, #1 - veor q1, q1, q11 - vshl.u64 q11, q11, #1 - veor q4, q4, q10 - veor q0, q0, q11 - vmov.i8 q8,#0x0f @ compose .LBS2 - vshr.u64 q10, q7, #2 - vshr.u64 q11, q3, #2 - veor q10, q10, q5 - veor q11, q11, q2 - vand q10, q10, q9 - vand q11, q11, q9 - veor q5, q5, q10 - vshl.u64 q10, q10, #2 - veor q2, q2, q11 - vshl.u64 q11, q11, #2 - veor q7, q7, q10 - veor q3, q3, q11 - vshr.u64 q10, q1, #2 - vshr.u64 q11, q0, #2 - veor q10, q10, q6 - veor q11, q11, q4 - vand q10, q10, q9 - vand q11, q11, q9 - veor q6, q6, q10 - vshl.u64 q10, q10, #2 - veor q4, q4, q11 - vshl.u64 q11, q11, #2 - veor q1, q1, q10 - veor q0, q0, q11 - vshr.u64 q10, q6, #4 - vshr.u64 q11, q4, #4 - veor q10, q10, q5 - veor q11, q11, q2 - vand q10, q10, q8 - vand q11, q11, q8 - veor q5, q5, q10 - vshl.u64 q10, q10, #4 - veor q2, q2, q11 - vshl.u64 q11, q11, #4 - veor q6, q6, q10 - veor q4, q4, q11 - vshr.u64 q10, q1, #4 - vshr.u64 q11, q0, #4 - veor q10, q10, q7 - veor q11, q11, q3 - vand q10, q10, q8 - vand q11, q11, q8 - veor q7, q7, q10 - vshl.u64 q10, q10, #4 - veor q3, q3, q11 - vshl.u64 q11, q11, #4 - veor q1, q1, q10 - veor q0, q0, q11 - vldmia r4, {q8} @ last round key - veor q4, q4, q8 - veor q6, q6, q8 - veor q3, q3, q8 - veor q7, q7, q8 - veor q2, q2, q8 - veor q5, q5, q8 - veor q0, q0, q8 - veor q1, q1, q8 - bx lr -.size _bsaes_encrypt8,.-_bsaes_encrypt8 -.type _bsaes_key_convert,%function -.align 4 -_bsaes_key_convert: - adr r6,. - vld1.8 {q7}, [r4]! @ load round 0 key - sub r6,r6,#_bsaes_key_convert-.LM0 - vld1.8 {q15}, [r4]! @ load round 1 key - - vmov.i8 q8, #0x01 @ bit masks - vmov.i8 q9, #0x02 - vmov.i8 q10, #0x04 - vmov.i8 q11, #0x08 - vmov.i8 q12, #0x10 - vmov.i8 q13, #0x20 - vldmia r6, {q14} @ .LM0 - -#ifdef __ARMEL__ - vrev32.8 q7, q7 - vrev32.8 q15, q15 -#endif - sub r5,r5,#1 - vstmia r12!, {q7} @ save round 0 key - b .Lkey_loop - -.align 4 -.Lkey_loop: - vtbl.8 d14,{q15},d28 - vtbl.8 d15,{q15},d29 - vmov.i8 q6, #0x40 - vmov.i8 q15, #0x80 - - vtst.8 q0, q7, q8 - vtst.8 q1, q7, q9 - vtst.8 q2, q7, q10 - vtst.8 q3, q7, q11 - vtst.8 q4, q7, q12 - vtst.8 q5, q7, q13 - vtst.8 q6, q7, q6 - vtst.8 q7, q7, q15 - vld1.8 {q15}, [r4]! @ load next round key - vmvn q0, q0 @ "pnot" - vmvn q1, q1 - vmvn q5, q5 - vmvn q6, q6 -#ifdef __ARMEL__ - vrev32.8 q15, q15 -#endif - subs r5,r5,#1 - vstmia r12!,{q0-q7} @ write bit-sliced round key - bne .Lkey_loop - - vmov.i8 q7,#0x63 @ compose .L63 - @ don't save last round key - bx lr -.size _bsaes_key_convert,.-_bsaes_key_convert -.extern AES_cbc_encrypt -.extern AES_decrypt - -.global bsaes_cbc_encrypt -.type bsaes_cbc_encrypt,%function -.align 5 -bsaes_cbc_encrypt: -#ifndef __KERNEL__ - cmp r2, #128 -#ifndef __thumb__ - blo AES_cbc_encrypt -#else - bhs 1f - b AES_cbc_encrypt -1: -#endif -#endif - - @ it is up to the caller to make sure we are called with enc == 0 - - mov ip, sp - stmdb sp!, {r4-r10, lr} - VFP_ABI_PUSH - ldr r8, [ip] @ IV is 1st arg on the stack - mov r2, r2, lsr#4 @ len in 16 byte blocks - sub sp, #0x10 @ scratch space to carry over the IV - mov r9, sp @ save sp - - ldr r10, [r3, #240] @ get # of rounds -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r10, lsl#7 @ 128 bytes per inner round key - add r12, #96 @ sifze of bit-slices key schedule - - @ populate the key schedule - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - mov sp, r12 @ sp is sp - bl _bsaes_key_convert - vldmia sp, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia sp, {q7} -#else - ldr r12, [r3, #244] - eors r12, #1 - beq 0f - - @ populate the key schedule - str r12, [r3, #244] - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - add r12, r3, #248 @ pass key schedule - bl _bsaes_key_convert - add r4, r3, #248 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} - -.align 2 -0: -#endif - - vld1.8 {q15}, [r8] @ load IV - b .Lcbc_dec_loop - -.align 4 -.Lcbc_dec_loop: - subs r2, r2, #0x8 - bmi .Lcbc_dec_loop_finish - - vld1.8 {q0-q1}, [r0]! @ load input - vld1.8 {q2-q3}, [r0]! -#ifndef BSAES_ASM_EXTENDED_KEY - mov r4, sp @ pass the key -#else - add r4, r3, #248 -#endif - vld1.8 {q4-q5}, [r0]! - mov r5, r10 - vld1.8 {q6-q7}, [r0] - sub r0, r0, #0x60 - vstmia r9, {q15} @ put aside IV - - bl _bsaes_decrypt8 - - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q14-q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q3, q3, q13 - vst1.8 {q6}, [r1]! - veor q5, q5, q14 - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - vst1.8 {q3}, [r1]! - vst1.8 {q5}, [r1]! - - b .Lcbc_dec_loop - -.Lcbc_dec_loop_finish: - adds r2, r2, #8 - beq .Lcbc_dec_done - - vld1.8 {q0}, [r0]! @ load input - cmp r2, #2 - blo .Lcbc_dec_one - vld1.8 {q1}, [r0]! -#ifndef BSAES_ASM_EXTENDED_KEY - mov r4, sp @ pass the key -#else - add r4, r3, #248 -#endif - mov r5, r10 - vstmia r9, {q15} @ put aside IV - beq .Lcbc_dec_two - vld1.8 {q2}, [r0]! - cmp r2, #4 - blo .Lcbc_dec_three - vld1.8 {q3}, [r0]! - beq .Lcbc_dec_four - vld1.8 {q4}, [r0]! - cmp r2, #6 - blo .Lcbc_dec_five - vld1.8 {q5}, [r0]! - beq .Lcbc_dec_six - vld1.8 {q6}, [r0]! - sub r0, r0, #0x70 - - bl _bsaes_decrypt8 - - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q3, q3, q13 - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - vst1.8 {q3}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_six: - sub r0, r0, #0x60 - bl _bsaes_decrypt8 - vldmia r9,{q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q12}, [r0]! - veor q4, q4, q10 - veor q2, q2, q11 - vld1.8 {q15}, [r0]! - veor q7, q7, q12 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - vst1.8 {q7}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_five: - sub r0, r0, #0x50 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10-q11}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q15}, [r0]! - veor q4, q4, q10 - vst1.8 {q0-q1}, [r1]! @ write output - veor q2, q2, q11 - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - vst1.8 {q2}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_four: - sub r0, r0, #0x40 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q10}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vld1.8 {q15}, [r0]! - veor q4, q4, q10 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - vst1.8 {q4}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_three: - sub r0, r0, #0x30 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8-q9}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q15}, [r0]! - veor q1, q1, q8 - veor q6, q6, q9 - vst1.8 {q0-q1}, [r1]! @ write output - vst1.8 {q6}, [r1]! - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_two: - sub r0, r0, #0x20 - bl _bsaes_decrypt8 - vldmia r9, {q14} @ reload IV - vld1.8 {q8}, [r0]! @ reload input - veor q0, q0, q14 @ ^= IV - vld1.8 {q15}, [r0]! @ reload input - veor q1, q1, q8 - vst1.8 {q0-q1}, [r1]! @ write output - b .Lcbc_dec_done -.align 4 -.Lcbc_dec_one: - sub r0, r0, #0x10 - mov r10, r1 @ save original out pointer - mov r1, r9 @ use the iv scratch space as out buffer - mov r2, r3 - vmov q4,q15 @ just in case ensure that IV - vmov q5,q0 @ and input are preserved - bl AES_decrypt - vld1.8 {q0}, [r9] @ load result - veor q0, q0, q4 @ ^= IV - vmov q15, q5 @ q5 holds input - vst1.8 {q0}, [r10] @ write output - -.Lcbc_dec_done: -#ifndef BSAES_ASM_EXTENDED_KEY - vmov.i32 q0, #0 - vmov.i32 q1, #0 -.Lcbc_dec_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r9 - bne .Lcbc_dec_bzero -#endif - - mov sp, r9 - add sp, #0x10 @ add sp,r9,#0x10 is no good for thumb - vst1.8 {q15}, [r8] @ return IV - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} -.size bsaes_cbc_encrypt,.-bsaes_cbc_encrypt -.extern AES_encrypt -.global bsaes_ctr32_encrypt_blocks -.type bsaes_ctr32_encrypt_blocks,%function -.align 5 -bsaes_ctr32_encrypt_blocks: - cmp r2, #8 @ use plain AES for - blo .Lctr_enc_short @ small sizes - - mov ip, sp - stmdb sp!, {r4-r10, lr} - VFP_ABI_PUSH - ldr r8, [ip] @ ctr is 1st arg on the stack - sub sp, sp, #0x10 @ scratch space to carry over the ctr - mov r9, sp @ save sp - - ldr r10, [r3, #240] @ get # of rounds -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r10, lsl#7 @ 128 bytes per inner round key - add r12, #96 @ size of bit-sliced key schedule - - @ populate the key schedule - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - mov sp, r12 @ sp is sp - bl _bsaes_key_convert - veor q7,q7,q15 @ fix up last round key - vstmia r12, {q7} @ save last round key - - vld1.8 {q0}, [r8] @ load counter - add r8, r6, #.LREVM0SR-.LM0 @ borrow r8 - vldmia sp, {q4} @ load round0 key -#else - ldr r12, [r3, #244] - eors r12, #1 - beq 0f - - @ populate the key schedule - str r12, [r3, #244] - mov r4, r3 @ pass key - mov r5, r10 @ pass # of rounds - add r12, r3, #248 @ pass key schedule - bl _bsaes_key_convert - veor q7,q7,q15 @ fix up last round key - vstmia r12, {q7} @ save last round key - -.align 2 -0: add r12, r3, #248 - vld1.8 {q0}, [r8] @ load counter - adrl r8, .LREVM0SR @ borrow r8 - vldmia r12, {q4} @ load round0 key - sub sp, #0x10 @ place for adjusted round0 key -#endif - - vmov.i32 q8,#1 @ compose 1<<96 - veor q9,q9,q9 - vrev32.8 q0,q0 - vext.8 q8,q9,q8,#4 - vrev32.8 q4,q4 - vadd.u32 q9,q8,q8 @ compose 2<<96 - vstmia sp, {q4} @ save adjusted round0 key - b .Lctr_enc_loop - -.align 4 -.Lctr_enc_loop: - vadd.u32 q10, q8, q9 @ compose 3<<96 - vadd.u32 q1, q0, q8 @ +1 - vadd.u32 q2, q0, q9 @ +2 - vadd.u32 q3, q0, q10 @ +3 - vadd.u32 q4, q1, q10 - vadd.u32 q5, q2, q10 - vadd.u32 q6, q3, q10 - vadd.u32 q7, q4, q10 - vadd.u32 q10, q5, q10 @ next counter - - @ Borrow prologue from _bsaes_encrypt8 to use the opportunity - @ to flip byte order in 32-bit counter - - vldmia sp, {q9} @ load round0 key -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x10 @ pass next round key -#else - add r4, r3, #264 -#endif - vldmia r8, {q8} @ .LREVM0SR - mov r5, r10 @ pass rounds - vstmia r9, {q10} @ save next counter - sub r6, r8, #.LREVM0SR-.LSR @ pass constants - - bl _bsaes_encrypt8_alt - - subs r2, r2, #8 - blo .Lctr_enc_loop_done - - vld1.8 {q8-q9}, [r0]! @ load input - vld1.8 {q10-q11}, [r0]! - veor q0, q8 - veor q1, q9 - vld1.8 {q12-q13}, [r0]! - veor q4, q10 - veor q6, q11 - vld1.8 {q14-q15}, [r0]! - veor q3, q12 - vst1.8 {q0-q1}, [r1]! @ write output - veor q7, q13 - veor q2, q14 - vst1.8 {q4}, [r1]! - veor q5, q15 - vst1.8 {q6}, [r1]! - vmov.i32 q8, #1 @ compose 1<<96 - vst1.8 {q3}, [r1]! - veor q9, q9, q9 - vst1.8 {q7}, [r1]! - vext.8 q8, q9, q8, #4 - vst1.8 {q2}, [r1]! - vadd.u32 q9,q8,q8 @ compose 2<<96 - vst1.8 {q5}, [r1]! - vldmia r9, {q0} @ load counter - - bne .Lctr_enc_loop - b .Lctr_enc_done - -.align 4 -.Lctr_enc_loop_done: - add r2, r2, #8 - vld1.8 {q8}, [r0]! @ load input - veor q0, q8 - vst1.8 {q0}, [r1]! @ write output - cmp r2, #2 - blo .Lctr_enc_done - vld1.8 {q9}, [r0]! - veor q1, q9 - vst1.8 {q1}, [r1]! - beq .Lctr_enc_done - vld1.8 {q10}, [r0]! - veor q4, q10 - vst1.8 {q4}, [r1]! - cmp r2, #4 - blo .Lctr_enc_done - vld1.8 {q11}, [r0]! - veor q6, q11 - vst1.8 {q6}, [r1]! - beq .Lctr_enc_done - vld1.8 {q12}, [r0]! - veor q3, q12 - vst1.8 {q3}, [r1]! - cmp r2, #6 - blo .Lctr_enc_done - vld1.8 {q13}, [r0]! - veor q7, q13 - vst1.8 {q7}, [r1]! - beq .Lctr_enc_done - vld1.8 {q14}, [r0] - veor q2, q14 - vst1.8 {q2}, [r1]! - -.Lctr_enc_done: - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifndef BSAES_ASM_EXTENDED_KEY -.Lctr_enc_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r9 - bne .Lctr_enc_bzero -#else - vstmia sp, {q0-q1} -#endif - - mov sp, r9 - add sp, #0x10 @ add sp,r9,#0x10 is no good for thumb - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.align 4 -.Lctr_enc_short: - ldr ip, [sp] @ ctr pointer is passed on stack - stmdb sp!, {r4-r8, lr} - - mov r4, r0 @ copy arguments - mov r5, r1 - mov r6, r2 - mov r7, r3 - ldr r8, [ip, #12] @ load counter LSW - vld1.8 {q1}, [ip] @ load whole counter value -#ifdef __ARMEL__ - rev r8, r8 -#endif - sub sp, sp, #0x10 - vst1.8 {q1}, [sp,:64] @ copy counter value - sub sp, sp, #0x10 - -.Lctr_enc_short_loop: - add r0, sp, #0x10 @ input counter value - mov r1, sp @ output on the stack - mov r2, r7 @ key - - bl AES_encrypt - - vld1.8 {q0}, [r4]! @ load input - vld1.8 {q1}, [sp,:64] @ load encrypted counter - add r8, r8, #1 -#ifdef __ARMEL__ - rev r0, r8 - str r0, [sp, #0x1c] @ next counter value -#else - str r8, [sp, #0x1c] @ next counter value -#endif - veor q0,q0,q1 - vst1.8 {q0}, [r5]! @ store output - subs r6, r6, #1 - bne .Lctr_enc_short_loop - - vmov.i32 q0, #0 - vmov.i32 q1, #0 - vstmia sp!, {q0-q1} - - ldmia sp!, {r4-r8, pc} -.size bsaes_ctr32_encrypt_blocks,.-bsaes_ctr32_encrypt_blocks -.globl bsaes_xts_encrypt -.type bsaes_xts_encrypt,%function -.align 4 -bsaes_xts_encrypt: - mov ip, sp - stmdb sp!, {r4-r10, lr} @ 0x20 - VFP_ABI_PUSH - mov r6, sp @ future r3 - - mov r7, r0 - mov r8, r1 - mov r9, r2 - mov r10, r3 - - sub r0, sp, #0x10 @ 0x10 - bic r0, #0xf @ align at 16 bytes - mov sp, r0 - -#ifdef XTS_CHAIN_TWEAK - ldr r0, [ip] @ pointer to input tweak -#else - @ generate initial tweak - ldr r0, [ip, #4] @ iv[] - mov r1, sp - ldr r2, [ip, #0] @ key2 - bl AES_encrypt - mov r0,sp @ pointer to initial tweak -#endif - - ldr r1, [r10, #240] @ get # of rounds - mov r3, r6 -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r1, lsl#7 @ 128 bytes per inner round key - @ add r12, #96 @ size of bit-sliced key schedule - sub r12, #48 @ place for tweak[9] - - @ populate the key schedule - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - mov sp, r12 - add r12, #0x90 @ pass key schedule - bl _bsaes_key_convert - veor q7, q7, q15 @ fix up last round key - vstmia r12, {q7} @ save last round key -#else - ldr r12, [r10, #244] - eors r12, #1 - beq 0f - - str r12, [r10, #244] - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - add r12, r10, #248 @ pass key schedule - bl _bsaes_key_convert - veor q7, q7, q15 @ fix up last round key - vstmia r12, {q7} - -.align 2 -0: sub sp, #0x90 @ place for tweak[9] -#endif - - vld1.8 {q8}, [r0] @ initial tweak - adr r2, .Lxts_magic - - subs r9, #0x80 - blo .Lxts_enc_short - b .Lxts_enc_loop - -.align 4 -.Lxts_enc_loop: - vldmia r2, {q5} @ load XTS magic - vshr.s64 q6, q8, #63 - mov r0, sp - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q9, #63 - veor q9, q9, q6 - vand q7, q7, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q10, #63 - veor q10, q10, q7 - vand q6, q6, q5 - vld1.8 {q0}, [r7]! - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q11, #63 - veor q11, q11, q6 - vand q7, q7, q5 - vld1.8 {q1}, [r7]! - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q12, #63 - veor q12, q12, q7 - vand q6, q6, q5 - vld1.8 {q2}, [r7]! - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q13, #63 - veor q13, q13, q6 - vand q7, q7, q5 - vld1.8 {q3}, [r7]! - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q14, #63 - veor q14, q14, q7 - vand q6, q6, q5 - vld1.8 {q4}, [r7]! - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q15, #63 - veor q15, q15, q6 - vand q7, q7, q5 - vld1.8 {q5}, [r7]! - veor q4, q4, q12 - vadd.u64 q8, q15, q15 - vst1.64 {q15}, [r0,:128]! - vswp d15,d14 - veor q8, q8, q7 - vst1.64 {q8}, [r0,:128] @ next round tweak - - vld1.8 {q6-q7}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - veor q7, q7, q15 - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vld1.64 {q14-q15}, [r0,:128]! - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q2, q14 - vst1.8 {q10-q11}, [r8]! - veor q13, q5, q15 - vst1.8 {q12-q13}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - - subs r9, #0x80 - bpl .Lxts_enc_loop - -.Lxts_enc_short: - adds r9, #0x70 - bmi .Lxts_enc_done - - vldmia r2, {q5} @ load XTS magic - vshr.s64 q7, q8, #63 - mov r0, sp - vand q7, q7, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q9, #63 - veor q9, q9, q7 - vand q6, q6, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q10, #63 - veor q10, q10, q6 - vand q7, q7, q5 - vld1.8 {q0}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_1 - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q11, #63 - veor q11, q11, q7 - vand q6, q6, q5 - vld1.8 {q1}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_2 - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q12, #63 - veor q12, q12, q6 - vand q7, q7, q5 - vld1.8 {q2}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_3 - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q13, #63 - veor q13, q13, q7 - vand q6, q6, q5 - vld1.8 {q3}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_4 - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q14, #63 - veor q14, q14, q6 - vand q7, q7, q5 - vld1.8 {q4}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_5 - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q15, #63 - veor q15, q15, q7 - vand q6, q6, q5 - vld1.8 {q5}, [r7]! - subs r9, #0x10 - bmi .Lxts_enc_6 - veor q4, q4, q12 - sub r9, #0x10 - vst1.64 {q15}, [r0,:128] @ next round tweak - - vld1.8 {q6}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vld1.64 {q14}, [r0,:128]! - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q2, q14 - vst1.8 {q10-q11}, [r8]! - vst1.8 {q12}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_6: - veor q4, q4, q12 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q5, q5, q13 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - vst1.8 {q10-q11}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done - -@ put this in range for both ARM and Thumb mode adr instructions -.align 5 -.Lxts_magic: - .quad 1, 0x87 - -.align 5 -.Lxts_enc_5: - veor q3, q3, q11 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q4, q4, q12 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12}, [r0,:128]! - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - veor q10, q3, q12 - vst1.8 {q8-q9}, [r8]! - vst1.8 {q10}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_4: - veor q2, q2, q10 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q3, q3, q11 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q6, q11 - vst1.8 {q8-q9}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_3: - veor q1, q1, q9 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q2, q2, q10 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q4, q10 - vst1.8 {q0-q1}, [r8]! - vst1.8 {q8}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_2: - veor q0, q0, q8 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q1, q1, q9 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_encrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - vst1.8 {q0-q1}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_enc_done -.align 4 -.Lxts_enc_1: - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_encrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r8]! - mov r3, r4 - - vmov q8, q9 @ next round tweak - -.Lxts_enc_done: -#ifndef XTS_CHAIN_TWEAK - adds r9, #0x10 - beq .Lxts_enc_ret - sub r6, r8, #0x10 - -.Lxts_enc_steal: - ldrb r0, [r7], #1 - ldrb r1, [r8, #-0x10] - strb r0, [r8, #-0x10] - strb r1, [r8], #1 - - subs r9, #1 - bhi .Lxts_enc_steal - - vld1.8 {q0}, [r6] - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_encrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r6] - mov r3, r4 -#endif - -.Lxts_enc_ret: - bic r0, r3, #0xf - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifdef XTS_CHAIN_TWEAK - ldr r1, [r3, #0x20+VFP_ABI_FRAME] @ chain tweak -#endif -.Lxts_enc_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r0 - bne .Lxts_enc_bzero - - mov sp, r3 -#ifdef XTS_CHAIN_TWEAK - vst1.8 {q8}, [r1] -#endif - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.size bsaes_xts_encrypt,.-bsaes_xts_encrypt - -.globl bsaes_xts_decrypt -.type bsaes_xts_decrypt,%function -.align 4 -bsaes_xts_decrypt: - mov ip, sp - stmdb sp!, {r4-r10, lr} @ 0x20 - VFP_ABI_PUSH - mov r6, sp @ future r3 - - mov r7, r0 - mov r8, r1 - mov r9, r2 - mov r10, r3 - - sub r0, sp, #0x10 @ 0x10 - bic r0, #0xf @ align at 16 bytes - mov sp, r0 - -#ifdef XTS_CHAIN_TWEAK - ldr r0, [ip] @ pointer to input tweak -#else - @ generate initial tweak - ldr r0, [ip, #4] @ iv[] - mov r1, sp - ldr r2, [ip, #0] @ key2 - bl AES_encrypt - mov r0, sp @ pointer to initial tweak -#endif - - ldr r1, [r10, #240] @ get # of rounds - mov r3, r6 -#ifndef BSAES_ASM_EXTENDED_KEY - @ allocate the key schedule on the stack - sub r12, sp, r1, lsl#7 @ 128 bytes per inner round key - @ add r12, #96 @ size of bit-sliced key schedule - sub r12, #48 @ place for tweak[9] - - @ populate the key schedule - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - mov sp, r12 - add r12, #0x90 @ pass key schedule - bl _bsaes_key_convert - add r4, sp, #0x90 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} -#else - ldr r12, [r10, #244] - eors r12, #1 - beq 0f - - str r12, [r10, #244] - mov r4, r10 @ pass key - mov r5, r1 @ pass # of rounds - add r12, r10, #248 @ pass key schedule - bl _bsaes_key_convert - add r4, r10, #248 - vldmia r4, {q6} - vstmia r12, {q15} @ save last round key - veor q7, q7, q6 @ fix up round 0 key - vstmia r4, {q7} - -.align 2 -0: sub sp, #0x90 @ place for tweak[9] -#endif - vld1.8 {q8}, [r0] @ initial tweak - adr r2, .Lxts_magic - - tst r9, #0xf @ if not multiple of 16 - it ne @ Thumb2 thing, sanity check in ARM - subne r9, #0x10 @ subtract another 16 bytes - subs r9, #0x80 - - blo .Lxts_dec_short - b .Lxts_dec_loop - -.align 4 -.Lxts_dec_loop: - vldmia r2, {q5} @ load XTS magic - vshr.s64 q6, q8, #63 - mov r0, sp - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q9, #63 - veor q9, q9, q6 - vand q7, q7, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q10, #63 - veor q10, q10, q7 - vand q6, q6, q5 - vld1.8 {q0}, [r7]! - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q11, #63 - veor q11, q11, q6 - vand q7, q7, q5 - vld1.8 {q1}, [r7]! - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q12, #63 - veor q12, q12, q7 - vand q6, q6, q5 - vld1.8 {q2}, [r7]! - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q13, #63 - veor q13, q13, q6 - vand q7, q7, q5 - vld1.8 {q3}, [r7]! - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q14, #63 - veor q14, q14, q7 - vand q6, q6, q5 - vld1.8 {q4}, [r7]! - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q15, #63 - veor q15, q15, q6 - vand q7, q7, q5 - vld1.8 {q5}, [r7]! - veor q4, q4, q12 - vadd.u64 q8, q15, q15 - vst1.64 {q15}, [r0,:128]! - vswp d15,d14 - veor q8, q8, q7 - vst1.64 {q8}, [r0,:128] @ next round tweak - - vld1.8 {q6-q7}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - veor q7, q7, q15 - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vld1.64 {q14-q15}, [r0,:128]! - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q3, q14 - vst1.8 {q10-q11}, [r8]! - veor q13, q5, q15 - vst1.8 {q12-q13}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - - subs r9, #0x80 - bpl .Lxts_dec_loop - -.Lxts_dec_short: - adds r9, #0x70 - bmi .Lxts_dec_done - - vldmia r2, {q5} @ load XTS magic - vshr.s64 q7, q8, #63 - mov r0, sp - vand q7, q7, q5 - vadd.u64 q9, q8, q8 - vst1.64 {q8}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q9, #63 - veor q9, q9, q7 - vand q6, q6, q5 - vadd.u64 q10, q9, q9 - vst1.64 {q9}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q10, #63 - veor q10, q10, q6 - vand q7, q7, q5 - vld1.8 {q0}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_1 - vadd.u64 q11, q10, q10 - vst1.64 {q10}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q11, #63 - veor q11, q11, q7 - vand q6, q6, q5 - vld1.8 {q1}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_2 - veor q0, q0, q8 - vadd.u64 q12, q11, q11 - vst1.64 {q11}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q12, #63 - veor q12, q12, q6 - vand q7, q7, q5 - vld1.8 {q2}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_3 - veor q1, q1, q9 - vadd.u64 q13, q12, q12 - vst1.64 {q12}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q13, #63 - veor q13, q13, q7 - vand q6, q6, q5 - vld1.8 {q3}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_4 - veor q2, q2, q10 - vadd.u64 q14, q13, q13 - vst1.64 {q13}, [r0,:128]! - vswp d13,d12 - vshr.s64 q7, q14, #63 - veor q14, q14, q6 - vand q7, q7, q5 - vld1.8 {q4}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_5 - veor q3, q3, q11 - vadd.u64 q15, q14, q14 - vst1.64 {q14}, [r0,:128]! - vswp d15,d14 - vshr.s64 q6, q15, #63 - veor q15, q15, q7 - vand q6, q6, q5 - vld1.8 {q5}, [r7]! - subs r9, #0x10 - bmi .Lxts_dec_6 - veor q4, q4, q12 - sub r9, #0x10 - vst1.64 {q15}, [r0,:128] @ next round tweak - - vld1.8 {q6}, [r7]! - veor q5, q5, q13 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q6, q6, q14 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vld1.64 {q14}, [r0,:128]! - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - veor q12, q3, q14 - vst1.8 {q10-q11}, [r8]! - vst1.8 {q12}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_6: - vst1.64 {q14}, [r0,:128] @ next round tweak - - veor q4, q4, q12 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q5, q5, q13 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12-q13}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - veor q11, q7, q13 - vst1.8 {q10-q11}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_5: - veor q3, q3, q11 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q4, q4, q12 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - vld1.64 {q12}, [r0,:128]! - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - veor q10, q2, q12 - vst1.8 {q8-q9}, [r8]! - vst1.8 {q10}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_4: - veor q2, q2, q10 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q3, q3, q11 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10-q11}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - veor q9, q4, q11 - vst1.8 {q8-q9}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_3: - veor q1, q1, q9 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q2, q2, q10 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - vld1.64 {q10}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - veor q8, q6, q10 - vst1.8 {q0-q1}, [r8]! - vst1.8 {q8}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_2: - veor q0, q0, q8 -#ifndef BSAES_ASM_EXTENDED_KEY - add r4, sp, #0x90 @ pass key schedule -#else - add r4, r10, #248 @ pass key schedule -#endif - veor q1, q1, q9 - mov r5, r1 @ pass rounds - mov r0, sp - - bl _bsaes_decrypt8 - - vld1.64 {q8-q9}, [r0,:128]! - veor q0, q0, q8 - veor q1, q1, q9 - vst1.8 {q0-q1}, [r8]! - - vld1.64 {q8}, [r0,:128] @ next round tweak - b .Lxts_dec_done -.align 4 -.Lxts_dec_1: - mov r0, sp - veor q0, q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r5, r2 @ preserve magic - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r8]! - mov r3, r4 - mov r2, r5 - - vmov q8, q9 @ next round tweak - -.Lxts_dec_done: -#ifndef XTS_CHAIN_TWEAK - adds r9, #0x10 - beq .Lxts_dec_ret - - @ calculate one round of extra tweak for the stolen ciphertext - vldmia r2, {q5} - vshr.s64 q6, q8, #63 - vand q6, q6, q5 - vadd.u64 q9, q8, q8 - vswp d13,d12 - veor q9, q9, q6 - - @ perform the final decryption with the last tweak value - vld1.8 {q0}, [r7]! - mov r0, sp - veor q0, q0, q9 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - mov r4, r3 @ preserve fp - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q9 - vst1.8 {q0}, [r8] - - mov r6, r8 -.Lxts_dec_steal: - ldrb r1, [r8] - ldrb r0, [r7], #1 - strb r1, [r8, #0x10] - strb r0, [r8], #1 - - subs r9, #1 - bhi .Lxts_dec_steal - - vld1.8 {q0}, [r6] - mov r0, sp - veor q0, q8 - mov r1, sp - vst1.8 {q0}, [sp,:128] - mov r2, r10 - - bl AES_decrypt - - vld1.8 {q0}, [sp,:128] - veor q0, q0, q8 - vst1.8 {q0}, [r6] - mov r3, r4 -#endif - -.Lxts_dec_ret: - bic r0, r3, #0xf - vmov.i32 q0, #0 - vmov.i32 q1, #0 -#ifdef XTS_CHAIN_TWEAK - ldr r1, [r3, #0x20+VFP_ABI_FRAME] @ chain tweak -#endif -.Lxts_dec_bzero: @ wipe key schedule [if any] - vstmia sp!, {q0-q1} - cmp sp, r0 - bne .Lxts_dec_bzero - - mov sp, r3 -#ifdef XTS_CHAIN_TWEAK - vst1.8 {q8}, [r1] -#endif - VFP_ABI_POP - ldmia sp!, {r4-r10, pc} @ return - -.size bsaes_xts_decrypt,.-bsaes_xts_decrypt -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-gf2m.S b/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-gf2m.S deleted file mode 100644 index ad71aa0b667d94..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-gf2m.S +++ /dev/null @@ -1,203 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 -.type mul_1x1_ialu,%function -.align 5 -mul_1x1_ialu: - mov r4,#0 - bic r5,r1,#3<<30 @ a1=a&0x3fffffff - str r4,[sp,#0] @ tab[0]=0 - add r6,r5,r5 @ a2=a1<<1 - str r5,[sp,#4] @ tab[1]=a1 - eor r7,r5,r6 @ a1^a2 - str r6,[sp,#8] @ tab[2]=a2 - mov r8,r5,lsl#2 @ a4=a1<<2 - str r7,[sp,#12] @ tab[3]=a1^a2 - eor r9,r5,r8 @ a1^a4 - str r8,[sp,#16] @ tab[4]=a4 - eor r4,r6,r8 @ a2^a4 - str r9,[sp,#20] @ tab[5]=a1^a4 - eor r7,r7,r8 @ a1^a2^a4 - str r4,[sp,#24] @ tab[6]=a2^a4 - and r8,r12,r0,lsl#2 - str r7,[sp,#28] @ tab[7]=a1^a2^a4 - - and r9,r12,r0,lsr#1 - ldr r5,[sp,r8] @ tab[b & 0x7] - and r8,r12,r0,lsr#4 - ldr r7,[sp,r9] @ tab[b >> 3 & 0x7] - and r9,r12,r0,lsr#7 - ldr r6,[sp,r8] @ tab[b >> 6 & 0x7] - eor r5,r5,r7,lsl#3 @ stall - mov r4,r7,lsr#29 - ldr r7,[sp,r9] @ tab[b >> 9 & 0x7] - - and r8,r12,r0,lsr#10 - eor r5,r5,r6,lsl#6 - eor r4,r4,r6,lsr#26 - ldr r6,[sp,r8] @ tab[b >> 12 & 0x7] - - and r9,r12,r0,lsr#13 - eor r5,r5,r7,lsl#9 - eor r4,r4,r7,lsr#23 - ldr r7,[sp,r9] @ tab[b >> 15 & 0x7] - - and r8,r12,r0,lsr#16 - eor r5,r5,r6,lsl#12 - eor r4,r4,r6,lsr#20 - ldr r6,[sp,r8] @ tab[b >> 18 & 0x7] - - and r9,r12,r0,lsr#19 - eor r5,r5,r7,lsl#15 - eor r4,r4,r7,lsr#17 - ldr r7,[sp,r9] @ tab[b >> 21 & 0x7] - - and r8,r12,r0,lsr#22 - eor r5,r5,r6,lsl#18 - eor r4,r4,r6,lsr#14 - ldr r6,[sp,r8] @ tab[b >> 24 & 0x7] - - and r9,r12,r0,lsr#25 - eor r5,r5,r7,lsl#21 - eor r4,r4,r7,lsr#11 - ldr r7,[sp,r9] @ tab[b >> 27 & 0x7] - - tst r1,#1<<30 - and r8,r12,r0,lsr#28 - eor r5,r5,r6,lsl#24 - eor r4,r4,r6,lsr#8 - ldr r6,[sp,r8] @ tab[b >> 30 ] - - eorne r5,r5,r0,lsl#30 - eorne r4,r4,r0,lsr#2 - tst r1,#1<<31 - eor r5,r5,r7,lsl#27 - eor r4,r4,r7,lsr#5 - eorne r5,r5,r0,lsl#31 - eorne r4,r4,r0,lsr#1 - eor r5,r5,r6,lsl#30 - eor r4,r4,r6,lsr#2 - - mov pc,lr -.size mul_1x1_ialu,.-mul_1x1_ialu -.global bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,%function -.align 5 -bn_GF2m_mul_2x2: -#if __ARM_MAX_ARCH__>=7 - ldr r12,.LOPENSSL_armcap -.Lpic: ldr r12,[pc,r12] - tst r12,#1 - bne .LNEON -#endif - stmdb sp!,{r4-r10,lr} - mov r10,r0 @ reassign 1st argument - mov r0,r3 @ r0=b1 - ldr r3,[sp,#32] @ load b0 - mov r12,#7<<2 - sub sp,sp,#32 @ allocate tab[8] - - bl mul_1x1_ialu @ a1·b1 - str r5,[r10,#8] - str r4,[r10,#12] - - eor r0,r0,r3 @ flip b0 and b1 - eor r1,r1,r2 @ flip a0 and a1 - eor r3,r3,r0 - eor r2,r2,r1 - eor r0,r0,r3 - eor r1,r1,r2 - bl mul_1x1_ialu @ a0·b0 - str r5,[r10] - str r4,[r10,#4] - - eor r1,r1,r2 - eor r0,r0,r3 - bl mul_1x1_ialu @ (a1+a0)·(b1+b0) - ldmia r10,{r6-r9} - eor r5,r5,r4 - eor r4,r4,r7 - eor r5,r5,r6 - eor r4,r4,r8 - eor r5,r5,r9 - eor r4,r4,r9 - str r4,[r10,#8] - eor r5,r5,r4 - add sp,sp,#32 @ destroy tab[8] - str r5,[r10,#4] - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r10,pc} -#else - ldmia sp!,{r4-r10,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.align 5 -.LNEON: - ldr r12, [sp] @ 5th argument - vmov.32 d26, r2, r1 - vmov.32 d27, r12, r3 - vmov.i64 d28, #0x0000ffffffffffff - vmov.i64 d29, #0x00000000ffffffff - vmov.i64 d30, #0x000000000000ffff - - vext.8 d2, d26, d26, #1 @ A1 - vmull.p8 q1, d2, d27 @ F = A1*B - vext.8 d0, d27, d27, #1 @ B1 - vmull.p8 q0, d26, d0 @ E = A*B1 - vext.8 d4, d26, d26, #2 @ A2 - vmull.p8 q2, d4, d27 @ H = A2*B - vext.8 d16, d27, d27, #2 @ B2 - vmull.p8 q8, d26, d16 @ G = A*B2 - vext.8 d6, d26, d26, #3 @ A3 - veor q1, q1, q0 @ L = E + F - vmull.p8 q3, d6, d27 @ J = A3*B - vext.8 d0, d27, d27, #3 @ B3 - veor q2, q2, q8 @ M = G + H - vmull.p8 q0, d26, d0 @ I = A*B3 - veor d2, d2, d3 @ t0 = (L) (P0 + P1) << 8 - vand d3, d3, d28 - vext.8 d16, d27, d27, #4 @ B4 - veor d4, d4, d5 @ t1 = (M) (P2 + P3) << 16 - vand d5, d5, d29 - vmull.p8 q8, d26, d16 @ K = A*B4 - veor q3, q3, q0 @ N = I + J - veor d2, d2, d3 - veor d4, d4, d5 - veor d6, d6, d7 @ t2 = (N) (P4 + P5) << 24 - vand d7, d7, d30 - vext.8 q1, q1, q1, #15 - veor d16, d16, d17 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d17, #0 - vext.8 q2, q2, q2, #14 - veor d6, d6, d7 - vmull.p8 q0, d26, d27 @ D = A*B - vext.8 q8, q8, q8, #12 - vext.8 q3, q3, q3, #13 - veor q1, q1, q2 - veor q3, q3, q8 - veor q0, q0, q1 - veor q0, q0, q3 - - vst1.32 {q0}, [r0] - bx lr @ bx lr -#endif -.size bn_GF2m_mul_2x2,.-bn_GF2m_mul_2x2 -#if __ARM_MAX_ARCH__>=7 -.align 5 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-(.Lpic+8) -#endif -.asciz "GF(2^m) Multiplication for ARMv4/NEON, CRYPTOGAMS by " -.align 5 - -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-mont.S b/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-mont.S deleted file mode 100644 index 71fc296fcab181..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-mont.S +++ /dev/null @@ -1,580 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -#if __ARM_MAX_ARCH__>=7 -.align 5 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-bn_mul_mont -#endif - -.global bn_mul_mont -.type bn_mul_mont,%function - -.align 5 -bn_mul_mont: - ldr ip,[sp,#4] @ load num - stmdb sp!,{r0,r2} @ sp points at argument block -#if __ARM_MAX_ARCH__>=7 - tst ip,#7 - bne .Lialu - adr r0,bn_mul_mont - ldr r2,.LOPENSSL_armcap - ldr r0,[r0,r2] - tst r0,#1 @ NEON available? - ldmia sp, {r0,r2} - beq .Lialu - add sp,sp,#8 - b bn_mul8x_mont_neon -.align 4 -.Lialu: -#endif - cmp ip,#2 - mov r0,ip @ load num - movlt r0,#0 - addlt sp,sp,#2*4 - blt .Labrt - - stmdb sp!,{r4-r12,lr} @ save 10 registers - - mov r0,r0,lsl#2 @ rescale r0 for byte count - sub sp,sp,r0 @ alloca(4*num) - sub sp,sp,#4 @ +extra dword - sub r0,r0,#4 @ "num=num-1" - add r4,r2,r0 @ &bp[num-1] - - add r0,sp,r0 @ r0 to point at &tp[num-1] - ldr r8,[r0,#14*4] @ &n0 - ldr r2,[r2] @ bp[0] - ldr r5,[r1],#4 @ ap[0],ap++ - ldr r6,[r3],#4 @ np[0],np++ - ldr r8,[r8] @ *n0 - str r4,[r0,#15*4] @ save &bp[num] - - umull r10,r11,r5,r2 @ ap[0]*bp[0] - str r8,[r0,#14*4] @ save n0 value - mul r8,r10,r8 @ "tp[0]"*n0 - mov r12,#0 - umlal r10,r12,r6,r8 @ np[0]*n0+"t[0]" - mov r4,sp - -.L1st: - ldr r5,[r1],#4 @ ap[j],ap++ - mov r10,r11 - ldr r6,[r3],#4 @ np[j],np++ - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[j]*bp[0] - mov r14,#0 - umlal r12,r14,r6,r8 @ np[j]*n0 - adds r12,r12,r10 - str r12,[r4],#4 @ tp[j-1]=,tp++ - adc r12,r14,#0 - cmp r4,r0 - bne .L1st - - adds r12,r12,r11 - ldr r4,[r0,#13*4] @ restore bp - mov r14,#0 - ldr r8,[r0,#14*4] @ restore n0 - adc r14,r14,#0 - str r12,[r0] @ tp[num-1]= - str r14,[r0,#4] @ tp[num]= - -.Louter: - sub r7,r0,sp @ "original" r0-1 value - sub r1,r1,r7 @ "rewind" ap to &ap[1] - ldr r2,[r4,#4]! @ *(++bp) - sub r3,r3,r7 @ "rewind" np to &np[1] - ldr r5,[r1,#-4] @ ap[0] - ldr r10,[sp] @ tp[0] - ldr r6,[r3,#-4] @ np[0] - ldr r7,[sp,#4] @ tp[1] - - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[0]*bp[i]+tp[0] - str r4,[r0,#13*4] @ save bp - mul r8,r10,r8 - mov r12,#0 - umlal r10,r12,r6,r8 @ np[0]*n0+"tp[0]" - mov r4,sp - -.Linner: - ldr r5,[r1],#4 @ ap[j],ap++ - adds r10,r11,r7 @ +=tp[j] - ldr r6,[r3],#4 @ np[j],np++ - mov r11,#0 - umlal r10,r11,r5,r2 @ ap[j]*bp[i] - mov r14,#0 - umlal r12,r14,r6,r8 @ np[j]*n0 - adc r11,r11,#0 - ldr r7,[r4,#8] @ tp[j+1] - adds r12,r12,r10 - str r12,[r4],#4 @ tp[j-1]=,tp++ - adc r12,r14,#0 - cmp r4,r0 - bne .Linner - - adds r12,r12,r11 - mov r14,#0 - ldr r4,[r0,#13*4] @ restore bp - adc r14,r14,#0 - ldr r8,[r0,#14*4] @ restore n0 - adds r12,r12,r7 - ldr r7,[r0,#15*4] @ restore &bp[num] - adc r14,r14,#0 - str r12,[r0] @ tp[num-1]= - str r14,[r0,#4] @ tp[num]= - - cmp r4,r7 - bne .Louter - - ldr r2,[r0,#12*4] @ pull rp - add r0,r0,#4 @ r0 to point at &tp[num] - sub r5,r0,sp @ "original" num value - mov r4,sp @ "rewind" r4 - mov r1,r4 @ "borrow" r1 - sub r3,r3,r5 @ "rewind" r3 to &np[0] - - subs r7,r7,r7 @ "clear" carry flag -.Lsub: ldr r7,[r4],#4 - ldr r6,[r3],#4 - sbcs r7,r7,r6 @ tp[j]-np[j] - str r7,[r2],#4 @ rp[j]= - teq r4,r0 @ preserve carry - bne .Lsub - sbcs r14,r14,#0 @ upmost carry - mov r4,sp @ "rewind" r4 - sub r2,r2,r5 @ "rewind" r2 - - and r1,r4,r14 - bic r3,r2,r14 - orr r1,r1,r3 @ ap=borrow?tp:rp - -.Lcopy: ldr r7,[r1],#4 @ copy or in-place refresh - str sp,[r4],#4 @ zap tp - str r7,[r2],#4 - cmp r4,r0 - bne .Lcopy - - add sp,r0,#4 @ skip over tp[num+1] - ldmia sp!,{r4-r12,lr} @ restore registers - add sp,sp,#2*4 @ skip over {r0,r2} - mov r0,#1 -.Labrt: -#if __ARM_ARCH__>=5 - bx lr @ .word 0xe12fff1e -#else - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size bn_mul_mont,.-bn_mul_mont -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.type bn_mul8x_mont_neon,%function -.align 5 -bn_mul8x_mont_neon: - mov ip,sp - stmdb sp!,{r4-r11} - vstmdb sp!,{d8-d15} @ ABI specification says so - ldmia ip,{r4-r5} @ load rest of parameter block - - sub r7,sp,#16 - vld1.32 {d28[0]}, [r2,:32]! - sub r7,r7,r5,lsl#4 - vld1.32 {d0-d3}, [r1]! @ can't specify :32 :-( - and r7,r7,#-64 - vld1.32 {d30[0]}, [r4,:32] - mov sp,r7 @ alloca - veor d8,d8,d8 - subs r8,r5,#8 - vzip.16 d28,d8 - - vmull.u32 q6,d28,d0[0] - vmull.u32 q7,d28,d0[1] - vmull.u32 q8,d28,d1[0] - vshl.i64 d10,d13,#16 - vmull.u32 q9,d28,d1[1] - - vadd.u64 d10,d10,d12 - veor d8,d8,d8 - vmul.u32 d29,d10,d30 - - vmull.u32 q10,d28,d2[0] - vld1.32 {d4-d7}, [r3]! - vmull.u32 q11,d28,d2[1] - vmull.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmull.u32 q13,d28,d3[1] - - bne .LNEON_1st - - @ special case for num=8, everything is in register bank... - - vmlal.u32 q6,d29,d4[0] - sub r9,r5,#1 - vmlal.u32 q7,d29,d4[1] - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vmov q5,q6 - vmlal.u32 q11,d29,d6[1] - vmov q6,q7 - vmlal.u32 q12,d29,d7[0] - vmov q7,q8 - vmlal.u32 q13,d29,d7[1] - vmov q8,q9 - vmov q9,q10 - vshr.u64 d10,d10,#16 - vmov q10,q11 - vmov q11,q12 - vadd.u64 d10,d10,d11 - vmov q12,q13 - veor q13,q13 - vshr.u64 d10,d10,#16 - - b .LNEON_outer8 - -.align 4 -.LNEON_outer8: - vld1.32 {d28[0]}, [r2,:32]! - veor d8,d8,d8 - vzip.16 d28,d8 - vadd.u64 d12,d12,d10 - - vmlal.u32 q6,d28,d0[0] - vmlal.u32 q7,d28,d0[1] - vmlal.u32 q8,d28,d1[0] - vshl.i64 d10,d13,#16 - vmlal.u32 q9,d28,d1[1] - - vadd.u64 d10,d10,d12 - veor d8,d8,d8 - subs r9,r9,#1 - vmul.u32 d29,d10,d30 - - vmlal.u32 q10,d28,d2[0] - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmlal.u32 q13,d28,d3[1] - - vmlal.u32 q6,d29,d4[0] - vmlal.u32 q7,d29,d4[1] - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vmov q5,q6 - vmlal.u32 q11,d29,d6[1] - vmov q6,q7 - vmlal.u32 q12,d29,d7[0] - vmov q7,q8 - vmlal.u32 q13,d29,d7[1] - vmov q8,q9 - vmov q9,q10 - vshr.u64 d10,d10,#16 - vmov q10,q11 - vmov q11,q12 - vadd.u64 d10,d10,d11 - vmov q12,q13 - veor q13,q13 - vshr.u64 d10,d10,#16 - - bne .LNEON_outer8 - - vadd.u64 d12,d12,d10 - mov r7,sp - vshr.u64 d10,d12,#16 - mov r8,r5 - vadd.u64 d13,d13,d10 - add r6,sp,#16 - vshr.u64 d10,d13,#16 - vzip.16 d12,d13 - - b .LNEON_tail2 - -.align 4 -.LNEON_1st: - vmlal.u32 q6,d29,d4[0] - vld1.32 {d0-d3}, [r1]! - vmlal.u32 q7,d29,d4[1] - subs r8,r8,#8 - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - - vmlal.u32 q10,d29,d6[0] - vld1.32 {d4-d5}, [r3]! - vmlal.u32 q11,d29,d6[1] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vmlal.u32 q13,d29,d7[1] - vst1.64 {q8-q9}, [r7,:256]! - - vmull.u32 q6,d28,d0[0] - vld1.32 {d6-d7}, [r3]! - vmull.u32 q7,d28,d0[1] - vst1.64 {q10-q11}, [r7,:256]! - vmull.u32 q8,d28,d1[0] - vmull.u32 q9,d28,d1[1] - vst1.64 {q12-q13}, [r7,:256]! - - vmull.u32 q10,d28,d2[0] - vmull.u32 q11,d28,d2[1] - vmull.u32 q12,d28,d3[0] - vmull.u32 q13,d28,d3[1] - - bne .LNEON_1st - - vmlal.u32 q6,d29,d4[0] - add r6,sp,#16 - vmlal.u32 q7,d29,d4[1] - sub r1,r1,r5,lsl#2 @ rewind r1 - vmlal.u32 q8,d29,d5[0] - vld1.64 {q5}, [sp,:128] - vmlal.u32 q9,d29,d5[1] - sub r9,r5,#1 - - vmlal.u32 q10,d29,d6[0] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q11,d29,d6[1] - vshr.u64 d10,d10,#16 - vld1.64 {q6}, [r6, :128]! - vmlal.u32 q12,d29,d7[0] - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q13,d29,d7[1] - - vst1.64 {q10-q11}, [r7,:256]! - vadd.u64 d10,d10,d11 - veor q4,q4,q4 - vst1.64 {q12-q13}, [r7,:256]! - vld1.64 {q7-q8}, [r6, :256]! - vst1.64 {q4}, [r7,:128] - vshr.u64 d10,d10,#16 - - b .LNEON_outer - -.align 4 -.LNEON_outer: - vld1.32 {d28[0]}, [r2,:32]! - sub r3,r3,r5,lsl#2 @ rewind r3 - vld1.32 {d0-d3}, [r1]! - veor d8,d8,d8 - mov r7,sp - vzip.16 d28,d8 - sub r8,r5,#8 - vadd.u64 d12,d12,d10 - - vmlal.u32 q6,d28,d0[0] - vld1.64 {q9-q10},[r6,:256]! - vmlal.u32 q7,d28,d0[1] - vmlal.u32 q8,d28,d1[0] - vld1.64 {q11-q12},[r6,:256]! - vmlal.u32 q9,d28,d1[1] - - vshl.i64 d10,d13,#16 - veor d8,d8,d8 - vadd.u64 d10,d10,d12 - vld1.64 {q13},[r6,:128]! - vmul.u32 d29,d10,d30 - - vmlal.u32 q10,d28,d2[0] - vld1.32 {d4-d7}, [r3]! - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vzip.16 d29,d8 - vmlal.u32 q13,d28,d3[1] - -.LNEON_inner: - vmlal.u32 q6,d29,d4[0] - vld1.32 {d0-d3}, [r1]! - vmlal.u32 q7,d29,d4[1] - subs r8,r8,#8 - vmlal.u32 q8,d29,d5[0] - vmlal.u32 q9,d29,d5[1] - vst1.64 {q6-q7}, [r7,:256]! - - vmlal.u32 q10,d29,d6[0] - vld1.64 {q6}, [r6, :128]! - vmlal.u32 q11,d29,d6[1] - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vld1.64 {q7-q8}, [r6, :256]! - vmlal.u32 q13,d29,d7[1] - vst1.64 {q10-q11}, [r7,:256]! - - vmlal.u32 q6,d28,d0[0] - vld1.64 {q9-q10}, [r6, :256]! - vmlal.u32 q7,d28,d0[1] - vst1.64 {q12-q13}, [r7,:256]! - vmlal.u32 q8,d28,d1[0] - vld1.64 {q11-q12}, [r6, :256]! - vmlal.u32 q9,d28,d1[1] - vld1.32 {d4-d7}, [r3]! - - vmlal.u32 q10,d28,d2[0] - vld1.64 {q13}, [r6, :128]! - vmlal.u32 q11,d28,d2[1] - vmlal.u32 q12,d28,d3[0] - vmlal.u32 q13,d28,d3[1] - - bne .LNEON_inner - - vmlal.u32 q6,d29,d4[0] - add r6,sp,#16 - vmlal.u32 q7,d29,d4[1] - sub r1,r1,r5,lsl#2 @ rewind r1 - vmlal.u32 q8,d29,d5[0] - vld1.64 {q5}, [sp,:128] - vmlal.u32 q9,d29,d5[1] - subs r9,r9,#1 - - vmlal.u32 q10,d29,d6[0] - vst1.64 {q6-q7}, [r7,:256]! - vmlal.u32 q11,d29,d6[1] - vld1.64 {q6}, [r6, :128]! - vshr.u64 d10,d10,#16 - vst1.64 {q8-q9}, [r7,:256]! - vmlal.u32 q12,d29,d7[0] - vld1.64 {q7-q8}, [r6, :256]! - vmlal.u32 q13,d29,d7[1] - - vst1.64 {q10-q11}, [r7,:256]! - vadd.u64 d10,d10,d11 - vst1.64 {q12-q13}, [r7,:256]! - vshr.u64 d10,d10,#16 - - bne .LNEON_outer - - mov r7,sp - mov r8,r5 - -.LNEON_tail: - vadd.u64 d12,d12,d10 - vld1.64 {q9-q10}, [r6, :256]! - vshr.u64 d10,d12,#16 - vadd.u64 d13,d13,d10 - vld1.64 {q11-q12}, [r6, :256]! - vshr.u64 d10,d13,#16 - vld1.64 {q13}, [r6, :128]! - vzip.16 d12,d13 - -.LNEON_tail2: - vadd.u64 d14,d14,d10 - vst1.32 {d12[0]}, [r7, :32]! - vshr.u64 d10,d14,#16 - vadd.u64 d15,d15,d10 - vshr.u64 d10,d15,#16 - vzip.16 d14,d15 - - vadd.u64 d16,d16,d10 - vst1.32 {d14[0]}, [r7, :32]! - vshr.u64 d10,d16,#16 - vadd.u64 d17,d17,d10 - vshr.u64 d10,d17,#16 - vzip.16 d16,d17 - - vadd.u64 d18,d18,d10 - vst1.32 {d16[0]}, [r7, :32]! - vshr.u64 d10,d18,#16 - vadd.u64 d19,d19,d10 - vshr.u64 d10,d19,#16 - vzip.16 d18,d19 - - vadd.u64 d20,d20,d10 - vst1.32 {d18[0]}, [r7, :32]! - vshr.u64 d10,d20,#16 - vadd.u64 d21,d21,d10 - vshr.u64 d10,d21,#16 - vzip.16 d20,d21 - - vadd.u64 d22,d22,d10 - vst1.32 {d20[0]}, [r7, :32]! - vshr.u64 d10,d22,#16 - vadd.u64 d23,d23,d10 - vshr.u64 d10,d23,#16 - vzip.16 d22,d23 - - vadd.u64 d24,d24,d10 - vst1.32 {d22[0]}, [r7, :32]! - vshr.u64 d10,d24,#16 - vadd.u64 d25,d25,d10 - vld1.64 {q6}, [r6, :128]! - vshr.u64 d10,d25,#16 - vzip.16 d24,d25 - - vadd.u64 d26,d26,d10 - vst1.32 {d24[0]}, [r7, :32]! - vshr.u64 d10,d26,#16 - vadd.u64 d27,d27,d10 - vld1.64 {q7-q8}, [r6, :256]! - vshr.u64 d10,d27,#16 - vzip.16 d26,d27 - subs r8,r8,#8 - vst1.32 {d26[0]}, [r7, :32]! - - bne .LNEON_tail - - vst1.32 {d10[0]}, [r7, :32] @ top-most bit - sub r3,r3,r5,lsl#2 @ rewind r3 - subs r1,sp,#0 @ clear carry flag - add r2,sp,r5,lsl#2 - -.LNEON_sub: - ldmia r1!, {r4-r7} - ldmia r3!, {r8-r11} - sbcs r8, r4,r8 - sbcs r9, r5,r9 - sbcs r10,r6,r10 - sbcs r11,r7,r11 - teq r1,r2 @ preserves carry - stmia r0!, {r8-r11} - bne .LNEON_sub - - ldr r10, [r1] @ load top-most bit - veor q0,q0,q0 - sub r11,r2,sp @ this is num*4 - veor q1,q1,q1 - mov r1,sp - sub r0,r0,r11 @ rewind r0 - mov r3,r2 @ second 3/4th of frame - sbcs r10,r10,#0 @ result is carry flag - -.LNEON_copy_n_zap: - ldmia r1!, {r4-r7} - ldmia r0, {r8-r11} - movcc r8, r4 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r9, r5 - movcc r10,r6 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r11,r7 - ldmia r1, {r4-r7} - stmia r0!, {r8-r11} - sub r1,r1,#16 - ldmia r0, {r8-r11} - movcc r8, r4 - vst1.64 {q0-q1}, [r1,:256]! @ wipe - movcc r9, r5 - movcc r10,r6 - vst1.64 {q0-q1}, [r3,:256]! @ wipe - movcc r11,r7 - teq r1,r2 @ preserves carry - stmia r0!, {r8-r11} - bne .LNEON_copy_n_zap - - sub sp,ip,#96 - vldmia sp!,{d8-d15} - ldmia sp!,{r4-r11} - bx lr @ .word 0xe12fff1e -.size bn_mul8x_mont_neon,.-bn_mul8x_mont_neon -#endif -.asciz "Montgomery multiplication for ARMv4/NEON, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/modes/ghash-armv4.S b/deps/openssl/asm_obsolete/arm-void-gas/modes/ghash-armv4.S deleted file mode 100644 index 6f699dbd870818..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/modes/ghash-armv4.S +++ /dev/null @@ -1,528 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -#ifdef __clang__ -#define ldrplb ldrbpl -#define ldrneb ldrbne -#endif - -.type rem_4bit,%object -.align 5 -rem_4bit: -.short 0x0000,0x1C20,0x3840,0x2460 -.short 0x7080,0x6CA0,0x48C0,0x54E0 -.short 0xE100,0xFD20,0xD940,0xC560 -.short 0x9180,0x8DA0,0xA9C0,0xB5E0 -.size rem_4bit,.-rem_4bit - -.type rem_4bit_get,%function -rem_4bit_get: - sub r2,pc,#8 - sub r2,r2,#32 @ &rem_4bit - b .Lrem_4bit_got - nop -.size rem_4bit_get,.-rem_4bit_get - -.global gcm_ghash_4bit -.type gcm_ghash_4bit,%function -gcm_ghash_4bit: - sub r12,pc,#8 - add r3,r2,r3 @ r3 to point at the end - stmdb sp!,{r3-r11,lr} @ save r3/end too - sub r12,r12,#48 @ &rem_4bit - - ldmia r12,{r4-r11} @ copy rem_4bit ... - stmdb sp!,{r4-r11} @ ... to stack - - ldrb r12,[r2,#15] - ldrb r14,[r0,#15] -.Louter: - eor r12,r12,r14 - and r14,r12,#0xf0 - and r12,r12,#0x0f - mov r3,#14 - - add r7,r1,r12,lsl#4 - ldmia r7,{r4-r7} @ load Htbl[nlo] - add r11,r1,r14 - ldrb r12,[r2,#14] - - and r14,r4,#0xf @ rem - ldmia r11,{r8-r11} @ load Htbl[nhi] - add r14,r14,r14 - eor r4,r8,r4,lsr#4 - ldrh r8,[sp,r14] @ rem_4bit[rem] - eor r4,r4,r5,lsl#28 - ldrb r14,[r0,#14] - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - eor r12,r12,r14 - and r14,r12,#0xf0 - and r12,r12,#0x0f - eor r7,r7,r8,lsl#16 - -.Linner: - add r11,r1,r12,lsl#4 - and r12,r4,#0xf @ rem - subs r3,r3,#1 - add r12,r12,r12 - ldmia r11,{r8-r11} @ load Htbl[nlo] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - ldrh r8,[sp,r12] @ rem_4bit[rem] - eor r6,r10,r6,lsr#4 - ldrplb r12,[r2,r3] - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - - add r11,r1,r14 - and r14,r4,#0xf @ rem - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - add r14,r14,r14 - ldmia r11,{r8-r11} @ load Htbl[nhi] - eor r4,r8,r4,lsr#4 - ldrplb r8,[r0,r3] - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - ldrh r9,[sp,r14] - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eorpl r12,r12,r8 - eor r7,r11,r7,lsr#4 - andpl r14,r12,#0xf0 - andpl r12,r12,#0x0f - eor r7,r7,r9,lsl#16 @ ^= rem_4bit[rem] - bpl .Linner - - ldr r3,[sp,#32] @ re-load r3/end - add r2,r2,#16 - mov r14,r4 -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r4,r4 - str r4,[r0,#12] -#elif defined(__ARMEB__) - str r4,[r0,#12] -#else - mov r9,r4,lsr#8 - strb r4,[r0,#12+3] - mov r10,r4,lsr#16 - strb r9,[r0,#12+2] - mov r11,r4,lsr#24 - strb r10,[r0,#12+1] - strb r11,[r0,#12] -#endif - cmp r2,r3 -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r5,r5 - str r5,[r0,#8] -#elif defined(__ARMEB__) - str r5,[r0,#8] -#else - mov r9,r5,lsr#8 - strb r5,[r0,#8+3] - mov r10,r5,lsr#16 - strb r9,[r0,#8+2] - mov r11,r5,lsr#24 - strb r10,[r0,#8+1] - strb r11,[r0,#8] -#endif - ldrneb r12,[r2,#15] -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r6,r6 - str r6,[r0,#4] -#elif defined(__ARMEB__) - str r6,[r0,#4] -#else - mov r9,r6,lsr#8 - strb r6,[r0,#4+3] - mov r10,r6,lsr#16 - strb r9,[r0,#4+2] - mov r11,r6,lsr#24 - strb r10,[r0,#4+1] - strb r11,[r0,#4] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r7,r7 - str r7,[r0,#0] -#elif defined(__ARMEB__) - str r7,[r0,#0] -#else - mov r9,r7,lsr#8 - strb r7,[r0,#0+3] - mov r10,r7,lsr#16 - strb r9,[r0,#0+2] - mov r11,r7,lsr#24 - strb r10,[r0,#0+1] - strb r11,[r0,#0] -#endif - - bne .Louter - - add sp,sp,#36 -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size gcm_ghash_4bit,.-gcm_ghash_4bit - -.global gcm_gmult_4bit -.type gcm_gmult_4bit,%function -gcm_gmult_4bit: - stmdb sp!,{r4-r11,lr} - ldrb r12,[r0,#15] - b rem_4bit_get -.Lrem_4bit_got: - and r14,r12,#0xf0 - and r12,r12,#0x0f - mov r3,#14 - - add r7,r1,r12,lsl#4 - ldmia r7,{r4-r7} @ load Htbl[nlo] - ldrb r12,[r0,#14] - - add r11,r1,r14 - and r14,r4,#0xf @ rem - ldmia r11,{r8-r11} @ load Htbl[nhi] - add r14,r14,r14 - eor r4,r8,r4,lsr#4 - ldrh r8,[r2,r14] @ rem_4bit[rem] - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - and r14,r12,#0xf0 - eor r7,r7,r8,lsl#16 - and r12,r12,#0x0f - -.Loop: - add r11,r1,r12,lsl#4 - and r12,r4,#0xf @ rem - subs r3,r3,#1 - add r12,r12,r12 - ldmia r11,{r8-r11} @ load Htbl[nlo] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - eor r5,r5,r6,lsl#28 - ldrh r8,[r2,r12] @ rem_4bit[rem] - eor r6,r10,r6,lsr#4 - ldrplb r12,[r0,r3] - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - - add r11,r1,r14 - and r14,r4,#0xf @ rem - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - add r14,r14,r14 - ldmia r11,{r8-r11} @ load Htbl[nhi] - eor r4,r8,r4,lsr#4 - eor r4,r4,r5,lsl#28 - eor r5,r9,r5,lsr#4 - ldrh r8,[r2,r14] @ rem_4bit[rem] - eor r5,r5,r6,lsl#28 - eor r6,r10,r6,lsr#4 - eor r6,r6,r7,lsl#28 - eor r7,r11,r7,lsr#4 - andpl r14,r12,#0xf0 - andpl r12,r12,#0x0f - eor r7,r7,r8,lsl#16 @ ^= rem_4bit[rem] - bpl .Loop -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r4,r4 - str r4,[r0,#12] -#elif defined(__ARMEB__) - str r4,[r0,#12] -#else - mov r9,r4,lsr#8 - strb r4,[r0,#12+3] - mov r10,r4,lsr#16 - strb r9,[r0,#12+2] - mov r11,r4,lsr#24 - strb r10,[r0,#12+1] - strb r11,[r0,#12] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r5,r5 - str r5,[r0,#8] -#elif defined(__ARMEB__) - str r5,[r0,#8] -#else - mov r9,r5,lsr#8 - strb r5,[r0,#8+3] - mov r10,r5,lsr#16 - strb r9,[r0,#8+2] - mov r11,r5,lsr#24 - strb r10,[r0,#8+1] - strb r11,[r0,#8] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r6,r6 - str r6,[r0,#4] -#elif defined(__ARMEB__) - str r6,[r0,#4] -#else - mov r9,r6,lsr#8 - strb r6,[r0,#4+3] - mov r10,r6,lsr#16 - strb r9,[r0,#4+2] - mov r11,r6,lsr#24 - strb r10,[r0,#4+1] - strb r11,[r0,#4] -#endif - -#if __ARM_ARCH__>=7 && defined(__ARMEL__) - rev r7,r7 - str r7,[r0,#0] -#elif defined(__ARMEB__) - str r7,[r0,#0] -#else - mov r9,r7,lsr#8 - strb r7,[r0,#0+3] - mov r10,r7,lsr#16 - strb r9,[r0,#0+2] - mov r11,r7,lsr#24 - strb r10,[r0,#0+1] - strb r11,[r0,#0] -#endif - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size gcm_gmult_4bit,.-gcm_gmult_4bit -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.global gcm_init_neon -.type gcm_init_neon,%function -.align 4 -gcm_init_neon: - vld1.64 d7,[r1,:64]! @ load H - vmov.i8 q8,#0xe1 - vld1.64 d6,[r1,:64] - vshl.i64 d17,#57 - vshr.u64 d16,#63 @ t0=0xc2....01 - vdup.8 q9,d7[7] - vshr.u64 d26,d6,#63 - vshr.s8 q9,#7 @ broadcast carry bit - vshl.i64 q3,q3,#1 - vand q8,q8,q9 - vorr d7,d26 @ H<<<=1 - veor q3,q3,q8 @ twisted H - vstmia r0,{q3} - - bx lr @ bx lr -.size gcm_init_neon,.-gcm_init_neon - -.global gcm_gmult_neon -.type gcm_gmult_neon,%function -.align 4 -gcm_gmult_neon: - vld1.64 d7,[r0,:64]! @ load Xi - vld1.64 d6,[r0,:64]! - vmov.i64 d29,#0x0000ffffffffffff - vldmia r1,{d26-d27} @ load twisted H - vmov.i64 d30,#0x00000000ffffffff -#ifdef __ARMEL__ - vrev64.8 q3,q3 -#endif - vmov.i64 d31,#0x000000000000ffff - veor d28,d26,d27 @ Karatsuba pre-processing - mov r3,#16 - b .Lgmult_neon -.size gcm_gmult_neon,.-gcm_gmult_neon - -.global gcm_ghash_neon -.type gcm_ghash_neon,%function -.align 4 -gcm_ghash_neon: - vld1.64 d1,[r0,:64]! @ load Xi - vld1.64 d0,[r0,:64]! - vmov.i64 d29,#0x0000ffffffffffff - vldmia r1,{d26-d27} @ load twisted H - vmov.i64 d30,#0x00000000ffffffff -#ifdef __ARMEL__ - vrev64.8 q0,q0 -#endif - vmov.i64 d31,#0x000000000000ffff - veor d28,d26,d27 @ Karatsuba pre-processing - -.Loop_neon: - vld1.64 d7,[r2]! @ load inp - vld1.64 d6,[r2]! -#ifdef __ARMEL__ - vrev64.8 q3,q3 -#endif - veor q3,q0 @ inp^=Xi -.Lgmult_neon: - vext.8 d16, d26, d26, #1 @ A1 - vmull.p8 q8, d16, d6 @ F = A1*B - vext.8 d0, d6, d6, #1 @ B1 - vmull.p8 q0, d26, d0 @ E = A*B1 - vext.8 d18, d26, d26, #2 @ A2 - vmull.p8 q9, d18, d6 @ H = A2*B - vext.8 d22, d6, d6, #2 @ B2 - vmull.p8 q11, d26, d22 @ G = A*B2 - vext.8 d20, d26, d26, #3 @ A3 - veor q8, q8, q0 @ L = E + F - vmull.p8 q10, d20, d6 @ J = A3*B - vext.8 d0, d6, d6, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q0, d26, d0 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d6, d6, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d26, d22 @ K = A*B4 - veor q10, q10, q0 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q0, d26, d6 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q0, q0, q8 - veor q0, q0, q10 - veor d6,d6,d7 @ Karatsuba pre-processing - vext.8 d16, d28, d28, #1 @ A1 - vmull.p8 q8, d16, d6 @ F = A1*B - vext.8 d2, d6, d6, #1 @ B1 - vmull.p8 q1, d28, d2 @ E = A*B1 - vext.8 d18, d28, d28, #2 @ A2 - vmull.p8 q9, d18, d6 @ H = A2*B - vext.8 d22, d6, d6, #2 @ B2 - vmull.p8 q11, d28, d22 @ G = A*B2 - vext.8 d20, d28, d28, #3 @ A3 - veor q8, q8, q1 @ L = E + F - vmull.p8 q10, d20, d6 @ J = A3*B - vext.8 d2, d6, d6, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q1, d28, d2 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d6, d6, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d28, d22 @ K = A*B4 - veor q10, q10, q1 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q1, d28, d6 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q1, q1, q8 - veor q1, q1, q10 - vext.8 d16, d27, d27, #1 @ A1 - vmull.p8 q8, d16, d7 @ F = A1*B - vext.8 d4, d7, d7, #1 @ B1 - vmull.p8 q2, d27, d4 @ E = A*B1 - vext.8 d18, d27, d27, #2 @ A2 - vmull.p8 q9, d18, d7 @ H = A2*B - vext.8 d22, d7, d7, #2 @ B2 - vmull.p8 q11, d27, d22 @ G = A*B2 - vext.8 d20, d27, d27, #3 @ A3 - veor q8, q8, q2 @ L = E + F - vmull.p8 q10, d20, d7 @ J = A3*B - vext.8 d4, d7, d7, #3 @ B3 - veor q9, q9, q11 @ M = G + H - vmull.p8 q2, d27, d4 @ I = A*B3 - veor d16, d16, d17 @ t0 = (L) (P0 + P1) << 8 - vand d17, d17, d29 - vext.8 d22, d7, d7, #4 @ B4 - veor d18, d18, d19 @ t1 = (M) (P2 + P3) << 16 - vand d19, d19, d30 - vmull.p8 q11, d27, d22 @ K = A*B4 - veor q10, q10, q2 @ N = I + J - veor d16, d16, d17 - veor d18, d18, d19 - veor d20, d20, d21 @ t2 = (N) (P4 + P5) << 24 - vand d21, d21, d31 - vext.8 q8, q8, q8, #15 - veor d22, d22, d23 @ t3 = (K) (P6 + P7) << 32 - vmov.i64 d23, #0 - vext.8 q9, q9, q9, #14 - veor d20, d20, d21 - vmull.p8 q2, d27, d7 @ D = A*B - vext.8 q11, q11, q11, #12 - vext.8 q10, q10, q10, #13 - veor q8, q8, q9 - veor q10, q10, q11 - veor q2, q2, q8 - veor q2, q2, q10 - veor q1,q1,q0 @ Karatsuba post-processing - veor q1,q1,q2 - veor d1,d1,d2 - veor d4,d4,d3 @ Xh|Xl - 256-bit result - - @ equivalent of reduction_avx from ghash-x86_64.pl - vshl.i64 q9,q0,#57 @ 1st phase - vshl.i64 q10,q0,#62 - veor q10,q10,q9 @ - vshl.i64 q9,q0,#63 - veor q10, q10, q9 @ - veor d1,d1,d20 @ - veor d4,d4,d21 - - vshr.u64 q10,q0,#1 @ 2nd phase - veor q2,q2,q0 - veor q0,q0,q10 @ - vshr.u64 q10,q10,#6 - vshr.u64 q0,q0,#1 @ - veor q0,q0,q2 @ - veor q0,q0,q10 @ - - subs r3,#16 - bne .Loop_neon - -#ifdef __ARMEL__ - vrev64.8 q0,q0 -#endif - sub r0,#16 - vst1.64 d1,[r0,:64]! @ write out Xi - vst1.64 d0,[r0,:64] - - bx lr @ bx lr -.size gcm_ghash_neon,.-gcm_ghash_neon -#endif -.asciz "GHASH for ARMv4/NEON, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm_obsolete/arm-void-gas/modes/ghashv8-armx.S b/deps/openssl/asm_obsolete/arm-void-gas/modes/ghashv8-armx.S deleted file mode 100644 index 9aaea13f9197db..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/modes/ghashv8-armx.S +++ /dev/null @@ -1,230 +0,0 @@ -#include "arm_arch.h" - -.text -.fpu neon -.code 32 -.global gcm_init_v8 -.type gcm_init_v8,%function -.align 4 -gcm_init_v8: - vld1.64 {q9},[r1] @ load input H - vmov.i8 q11,#0xe1 - vshl.i64 q11,q11,#57 @ 0xc2.0 - vext.8 q3,q9,q9,#8 - vshr.u64 q10,q11,#63 - vdup.32 q9,d18[1] - vext.8 q8,q10,q11,#8 @ t0=0xc2....01 - vshr.u64 q10,q3,#63 - vshr.s32 q9,q9,#31 @ broadcast carry bit - vand q10,q10,q8 - vshl.i64 q3,q3,#1 - vext.8 q10,q10,q10,#8 - vand q8,q8,q9 - vorr q3,q3,q10 @ H<<<=1 - veor q12,q3,q8 @ twisted H - vst1.64 {q12},[r0]! @ store Htable[0] - - @ calculate H^2 - vext.8 q8,q12,q12,#8 @ Karatsuba pre-processing - .byte 0xa8,0x0e,0xa8,0xf2 @ pmull q0,q12,q12 - veor q8,q8,q12 - .byte 0xa9,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q12 - .byte 0xa0,0x2e,0xa0,0xf2 @ pmull q1,q8,q8 - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q14,q0,q10 - - vext.8 q9,q14,q14,#8 @ Karatsuba pre-processing - veor q9,q9,q14 - vext.8 q13,q8,q9,#8 @ pack Karatsuba pre-processed - vst1.64 {q13-q14},[r0] @ store Htable[1..2] - - bx lr -.size gcm_init_v8,.-gcm_init_v8 -.global gcm_gmult_v8 -.type gcm_gmult_v8,%function -.align 4 -gcm_gmult_v8: - vld1.64 {q9},[r0] @ load Xi - vmov.i8 q11,#0xe1 - vld1.64 {q12-q13},[r1] @ load twisted H, ... - vshl.u64 q11,q11,#57 -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vext.8 q3,q9,q9,#8 - - .byte 0x86,0x0e,0xa8,0xf2 @ pmull q0,q12,q3 @ H.lo·Xi.lo - veor q9,q9,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q3 @ H.hi·Xi.hi - .byte 0xa2,0x2e,0xaa,0xf2 @ pmull q1,q13,q9 @ (H.lo+H.hi)·(Xi.lo+Xi.hi) - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q0,q0,q10 - -#ifndef __ARMEB__ - vrev64.8 q0,q0 -#endif - vext.8 q0,q0,q0,#8 - vst1.64 {q0},[r0] @ write out Xi - - bx lr -.size gcm_gmult_v8,.-gcm_gmult_v8 -.global gcm_ghash_v8 -.type gcm_ghash_v8,%function -.align 4 -gcm_ghash_v8: - vstmdb sp!,{d8-d15} @ 32-bit ABI says so - vld1.64 {q0},[r0] @ load [rotated] Xi - @ "[rotated]" means that - @ loaded value would have - @ to be rotated in order to - @ make it appear as in - @ alorithm specification - subs r3,r3,#32 @ see if r3 is 32 or larger - mov r12,#16 @ r12 is used as post- - @ increment for input pointer; - @ as loop is modulo-scheduled - @ r12 is zeroed just in time - @ to preclude oversteping - @ inp[len], which means that - @ last block[s] are actually - @ loaded twice, but last - @ copy is not processed - vld1.64 {q12-q13},[r1]! @ load twisted H, ..., H^2 - vmov.i8 q11,#0xe1 - vld1.64 {q14},[r1] - moveq r12,#0 @ is it time to zero r12? - vext.8 q0,q0,q0,#8 @ rotate Xi - vld1.64 {q8},[r2]! @ load [rotated] I[0] - vshl.u64 q11,q11,#57 @ compose 0xc2.0 constant -#ifndef __ARMEB__ - vrev64.8 q8,q8 - vrev64.8 q0,q0 -#endif - vext.8 q3,q8,q8,#8 @ rotate I[0] - blo .Lodd_tail_v8 @ r3 was less than 32 - vld1.64 {q9},[r2],r12 @ load [rotated] I[1] -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vext.8 q7,q9,q9,#8 - veor q3,q3,q0 @ I[i]^=Xi - .byte 0x8e,0x8e,0xa8,0xf2 @ pmull q4,q12,q7 @ H·Ii+1 - veor q9,q9,q7 @ Karatsuba pre-processing - .byte 0x8f,0xce,0xa9,0xf2 @ pmull2 q6,q12,q7 - b .Loop_mod2x_v8 - -.align 4 -.Loop_mod2x_v8: - vext.8 q10,q3,q3,#8 - subs r3,r3,#32 @ is there more data? - .byte 0x86,0x0e,0xac,0xf2 @ pmull q0,q14,q3 @ H^2.lo·Xi.lo - movlo r12,#0 @ is it time to zero r12? - - .byte 0xa2,0xae,0xaa,0xf2 @ pmull q5,q13,q9 - veor q10,q10,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xad,0xf2 @ pmull2 q2,q14,q3 @ H^2.hi·Xi.hi - veor q0,q0,q4 @ accumulate - .byte 0xa5,0x2e,0xab,0xf2 @ pmull2 q1,q13,q10 @ (H^2.lo+H^2.hi)·(Xi.lo+Xi.hi) - vld1.64 {q8},[r2],r12 @ load [rotated] I[i+2] - - veor q2,q2,q6 - moveq r12,#0 @ is it time to zero r12? - veor q1,q1,q5 - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - vld1.64 {q9},[r2],r12 @ load [rotated] I[i+3] -#ifndef __ARMEB__ - vrev64.8 q8,q8 -#endif - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - -#ifndef __ARMEB__ - vrev64.8 q9,q9 -#endif - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - vext.8 q7,q9,q9,#8 - vext.8 q3,q8,q8,#8 - veor q0,q1,q10 - .byte 0x8e,0x8e,0xa8,0xf2 @ pmull q4,q12,q7 @ H·Ii+1 - veor q3,q3,q2 @ accumulate q3 early - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q3,q3,q10 - veor q9,q9,q7 @ Karatsuba pre-processing - veor q3,q3,q0 - .byte 0x8f,0xce,0xa9,0xf2 @ pmull2 q6,q12,q7 - bhs .Loop_mod2x_v8 @ there was at least 32 more bytes - - veor q2,q2,q10 - vext.8 q3,q8,q8,#8 @ re-construct q3 - adds r3,r3,#32 @ re-construct r3 - veor q0,q0,q2 @ re-construct q0 - beq .Ldone_v8 @ is r3 zero? -.Lodd_tail_v8: - vext.8 q10,q0,q0,#8 - veor q3,q3,q0 @ inp^=Xi - veor q9,q8,q10 @ q9 is rotated inp^Xi - - .byte 0x86,0x0e,0xa8,0xf2 @ pmull q0,q12,q3 @ H.lo·Xi.lo - veor q9,q9,q3 @ Karatsuba pre-processing - .byte 0x87,0x4e,0xa9,0xf2 @ pmull2 q2,q12,q3 @ H.hi·Xi.hi - .byte 0xa2,0x2e,0xaa,0xf2 @ pmull q1,q13,q9 @ (H.lo+H.hi)·(Xi.lo+Xi.hi) - - vext.8 q9,q0,q2,#8 @ Karatsuba post-processing - veor q10,q0,q2 - veor q1,q1,q9 - veor q1,q1,q10 - .byte 0x26,0x4e,0xe0,0xf2 @ pmull q10,q0,q11 @ 1st phase of reduction - - vmov d4,d3 @ Xh|Xm - 256-bit result - vmov d3,d0 @ Xm is rotated Xl - veor q0,q1,q10 - - vext.8 q10,q0,q0,#8 @ 2nd phase of reduction - .byte 0x26,0x0e,0xa0,0xf2 @ pmull q0,q0,q11 - veor q10,q10,q2 - veor q0,q0,q10 - -.Ldone_v8: -#ifndef __ARMEB__ - vrev64.8 q0,q0 -#endif - vext.8 q0,q0,q0,#8 - vst1.64 {q0},[r0] @ write out Xi - - vldmia sp!,{d8-d15} @ 32-bit ABI says so - bx lr -.size gcm_ghash_v8,.-gcm_ghash_v8 -.asciz "GHASH for ARMv8, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha1-armv4-large.S b/deps/openssl/asm_obsolete/arm-void-gas/sha/sha1-armv4-large.S deleted file mode 100644 index b0893359cac772..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha1-armv4-large.S +++ /dev/null @@ -1,1455 +0,0 @@ -#include "arm_arch.h" - -.text -.code 32 - -.global sha1_block_data_order -.type sha1_block_data_order,%function - -.align 5 -sha1_block_data_order: -#if __ARM_MAX_ARCH__>=7 - sub r3,pc,#8 @ sha1_block_data_order - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#ARMV8_SHA1 - bne .LARMv8 - tst r12,#ARMV7_NEON - bne .LNEON -#endif - stmdb sp!,{r4-r12,lr} - add r2,r1,r2,lsl#6 @ r2 to point at the end of r1 - ldmia r0,{r3,r4,r5,r6,r7} -.Lloop: - ldr r8,.LK_00_19 - mov r14,sp - sub sp,sp,#15*4 - mov r5,r5,ror#30 - mov r6,r6,ror#30 - mov r7,r7,ror#30 @ [6] -.L_00_15: -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r7,r8,r7,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r5,r6 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r7,r8,r7,ror#2 @ E+=K_00_19 - eor r10,r5,r6 @ F_xx_xx - add r7,r7,r3,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r4,r10,ror#2 - add r7,r7,r9 @ E+=X[i] - eor r10,r10,r6,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r7,r7,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r6,r8,r6,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r4,r5 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r6,r8,r6,ror#2 @ E+=K_00_19 - eor r10,r4,r5 @ F_xx_xx - add r6,r6,r7,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r3,r10,ror#2 - add r6,r6,r9 @ E+=X[i] - eor r10,r10,r5,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r6,r6,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r5,r8,r5,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r3,r4 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r5,r8,r5,ror#2 @ E+=K_00_19 - eor r10,r3,r4 @ F_xx_xx - add r5,r5,r6,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r7,r10,ror#2 - add r5,r5,r9 @ E+=X[i] - eor r10,r10,r4,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r5,r5,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r4,r8,r4,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r7,r3 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r4,r8,r4,ror#2 @ E+=K_00_19 - eor r10,r7,r3 @ F_xx_xx - add r4,r4,r5,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r6,r10,ror#2 - add r4,r4,r9 @ E+=X[i] - eor r10,r10,r3,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r4,r4,r10 @ E+=F_00_19(B,C,D) -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r3,r8,r3,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r6,r7 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r3,r8,r3,ror#2 @ E+=K_00_19 - eor r10,r6,r7 @ F_xx_xx - add r3,r3,r4,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r5,r10,ror#2 - add r3,r3,r9 @ E+=X[i] - eor r10,r10,r7,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r3,r3,r10 @ E+=F_00_19(B,C,D) - teq r14,sp - bne .L_00_15 @ [((11+4)*5+2)*3] - sub sp,sp,#25*4 -#if __ARM_ARCH__<7 - ldrb r10,[r1,#2] - ldrb r9,[r1,#3] - ldrb r11,[r1,#1] - add r7,r8,r7,ror#2 @ E+=K_00_19 - ldrb r12,[r1],#4 - orr r9,r9,r10,lsl#8 - eor r10,r5,r6 @ F_xx_xx - orr r9,r9,r11,lsl#16 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - orr r9,r9,r12,lsl#24 -#else - ldr r9,[r1],#4 @ handles unaligned - add r7,r8,r7,ror#2 @ E+=K_00_19 - eor r10,r5,r6 @ F_xx_xx - add r7,r7,r3,ror#27 @ E+=ROR(A,27) -#ifdef __ARMEL__ - rev r9,r9 @ byte swap -#endif -#endif - and r10,r4,r10,ror#2 - add r7,r7,r9 @ E+=X[i] - eor r10,r10,r6,ror#2 @ F_00_19(B,C,D) - str r9,[r14,#-4]! - add r7,r7,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r3,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - eor r10,r10,r5,ror#2 @ F_00_19(B,C,D) - add r6,r6,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r7,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - eor r10,r10,r4,ror#2 @ F_00_19(B,C,D) - add r5,r5,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r6,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - eor r10,r10,r3,ror#2 @ F_00_19(B,C,D) - add r4,r4,r10 @ E+=F_00_19(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r5,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - eor r10,r10,r7,ror#2 @ F_00_19(B,C,D) - add r3,r3,r10 @ E+=F_00_19(B,C,D) - - ldr r8,.LK_20_39 @ [+15+16*4] - cmn sp,#0 @ [+3], clear carry to denote 20_39 -.L_20_39_or_60_79: - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r7,r8,r7,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r5,r6 @ F_xx_xx - mov r9,r9,ror#31 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r4,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r7,r7,r9 @ E+=X[i] - add r7,r7,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r3,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - add r6,r6,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r7,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - add r5,r5,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r6,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - add r4,r4,r10 @ E+=F_20_39(B,C,D) - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - eor r10,r5,r10,ror#2 @ F_xx_xx - @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - add r3,r3,r10 @ E+=F_20_39(B,C,D) - teq r14,sp @ preserve carry - bne .L_20_39_or_60_79 @ [+((12+3)*5+2)*4] - bcs .L_done @ [+((12+3)*5+2)*4], spare 300 bytes - - ldr r8,.LK_40_59 - sub sp,sp,#20*4 @ [+2] -.L_40_59: - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r7,r8,r7,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r5,r6 @ F_xx_xx - mov r9,r9,ror#31 - add r7,r7,r3,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r4,r10,ror#2 @ F_xx_xx - and r11,r5,r6 @ F_xx_xx - add r7,r7,r9 @ E+=X[i] - add r7,r7,r10 @ E+=F_40_59(B,C,D) - add r7,r7,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r6,r8,r6,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r4,r5 @ F_xx_xx - mov r9,r9,ror#31 - add r6,r6,r7,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r3,r10,ror#2 @ F_xx_xx - and r11,r4,r5 @ F_xx_xx - add r6,r6,r9 @ E+=X[i] - add r6,r6,r10 @ E+=F_40_59(B,C,D) - add r6,r6,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r5,r8,r5,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r3,r4 @ F_xx_xx - mov r9,r9,ror#31 - add r5,r5,r6,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r7,r10,ror#2 @ F_xx_xx - and r11,r3,r4 @ F_xx_xx - add r5,r5,r9 @ E+=X[i] - add r5,r5,r10 @ E+=F_40_59(B,C,D) - add r5,r5,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r4,r8,r4,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r7,r3 @ F_xx_xx - mov r9,r9,ror#31 - add r4,r4,r5,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r6,r10,ror#2 @ F_xx_xx - and r11,r7,r3 @ F_xx_xx - add r4,r4,r9 @ E+=X[i] - add r4,r4,r10 @ E+=F_40_59(B,C,D) - add r4,r4,r11,ror#2 - ldr r9,[r14,#15*4] - ldr r10,[r14,#13*4] - ldr r11,[r14,#7*4] - add r3,r8,r3,ror#2 @ E+=K_xx_xx - ldr r12,[r14,#2*4] - eor r9,r9,r10 - eor r11,r11,r12 @ 1 cycle stall - eor r10,r6,r7 @ F_xx_xx - mov r9,r9,ror#31 - add r3,r3,r4,ror#27 @ E+=ROR(A,27) - eor r9,r9,r11,ror#31 - str r9,[r14,#-4]! - and r10,r5,r10,ror#2 @ F_xx_xx - and r11,r6,r7 @ F_xx_xx - add r3,r3,r9 @ E+=X[i] - add r3,r3,r10 @ E+=F_40_59(B,C,D) - add r3,r3,r11,ror#2 - teq r14,sp - bne .L_40_59 @ [+((12+5)*5+2)*4] - - ldr r8,.LK_60_79 - sub sp,sp,#20*4 - cmp sp,#0 @ set carry to denote 60_79 - b .L_20_39_or_60_79 @ [+4], spare 300 bytes -.L_done: - add sp,sp,#80*4 @ "deallocate" stack frame - ldmia r0,{r8,r9,r10,r11,r12} - add r3,r8,r3 - add r4,r9,r4 - add r5,r10,r5,ror#2 - add r6,r11,r6,ror#2 - add r7,r12,r7,ror#2 - stmia r0,{r3,r4,r5,r6,r7} - teq r1,r2 - bne .Lloop @ [+18], total 1307 - -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size sha1_block_data_order,.-sha1_block_data_order - -.align 5 -.LK_00_19: .word 0x5a827999 -.LK_20_39: .word 0x6ed9eba1 -.LK_40_59: .word 0x8f1bbcdc -.LK_60_79: .word 0xca62c1d6 -#if __ARM_MAX_ARCH__>=7 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha1_block_data_order -#endif -.asciz "SHA1 block transform for ARMv4/NEON/ARMv8, CRYPTOGAMS by " -.align 5 -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.type sha1_block_data_order_neon,%function -.align 4 -sha1_block_data_order_neon: -.LNEON: - stmdb sp!,{r4-r12,lr} - add r2,r1,r2,lsl#6 @ r2 to point at the end of r1 - @ dmb @ errata #451034 on early Cortex A8 - @ vstmdb sp!,{d8-d15} @ ABI specification says so - mov r14,sp - sub sp,sp,#64 @ alloca - adr r8,.LK_00_19 - bic sp,sp,#15 @ align for 128-bit stores - - ldmia r0,{r3,r4,r5,r6,r7} @ load context - mov r12,sp - - vld1.8 {q0-q1},[r1]! @ handles unaligned - veor q15,q15,q15 - vld1.8 {q2-q3},[r1]! - vld1.32 {d28[],d29[]},[r8,:32]! @ load K_00_19 - vrev32.8 q0,q0 @ yes, even on - vrev32.8 q1,q1 @ big-endian... - vrev32.8 q2,q2 - vadd.i32 q8,q0,q14 - vrev32.8 q3,q3 - vadd.i32 q9,q1,q14 - vst1.32 {q8},[r12,:128]! - vadd.i32 q10,q2,q14 - vst1.32 {q9},[r12,:128]! - vst1.32 {q10},[r12,:128]! - ldr r9,[sp] @ big RAW stall - -.Loop_neon: - vext.8 q8,q0,q1,#8 - bic r10,r6,r4 - add r7,r7,r9 - and r11,r5,r4 - vadd.i32 q13,q3,q14 - ldr r9,[sp,#4] - add r7,r7,r3,ror#27 - vext.8 q12,q3,q15,#4 - eor r11,r11,r10 - mov r4,r4,ror#2 - add r7,r7,r11 - veor q8,q8,q0 - bic r10,r5,r3 - add r6,r6,r9 - veor q12,q12,q2 - and r11,r4,r3 - ldr r9,[sp,#8] - veor q12,q12,q8 - add r6,r6,r7,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q13,q15,q12,#4 - bic r10,r4,r7 - add r5,r5,r9 - vadd.i32 q8,q12,q12 - and r11,r3,r7 - ldr r9,[sp,#12] - vsri.32 q8,q12,#31 - add r5,r5,r6,ror#27 - eor r11,r11,r10 - mov r7,r7,ror#2 - vshr.u32 q12,q13,#30 - add r5,r5,r11 - bic r10,r3,r6 - vshl.u32 q13,q13,#2 - add r4,r4,r9 - and r11,r7,r6 - veor q8,q8,q12 - ldr r9,[sp,#16] - add r4,r4,r5,ror#27 - veor q8,q8,q13 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q9,q1,q2,#8 - bic r10,r7,r5 - add r3,r3,r9 - and r11,r6,r5 - vadd.i32 q13,q8,q14 - ldr r9,[sp,#20] - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r4,ror#27 - vext.8 q12,q8,q15,#4 - eor r11,r11,r10 - mov r5,r5,ror#2 - add r3,r3,r11 - veor q9,q9,q1 - bic r10,r6,r4 - add r7,r7,r9 - veor q12,q12,q3 - and r11,r5,r4 - ldr r9,[sp,#24] - veor q12,q12,q9 - add r7,r7,r3,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q13,q15,q12,#4 - bic r10,r5,r3 - add r6,r6,r9 - vadd.i32 q9,q12,q12 - and r11,r4,r3 - ldr r9,[sp,#28] - vsri.32 q9,q12,#31 - add r6,r6,r7,ror#27 - eor r11,r11,r10 - mov r3,r3,ror#2 - vshr.u32 q12,q13,#30 - add r6,r6,r11 - bic r10,r4,r7 - vshl.u32 q13,q13,#2 - add r5,r5,r9 - and r11,r3,r7 - veor q9,q9,q12 - ldr r9,[sp,#32] - add r5,r5,r6,ror#27 - veor q9,q9,q13 - eor r11,r11,r10 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q10,q2,q3,#8 - bic r10,r3,r6 - add r4,r4,r9 - and r11,r7,r6 - vadd.i32 q13,q9,q14 - ldr r9,[sp,#36] - add r4,r4,r5,ror#27 - vext.8 q12,q9,q15,#4 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - veor q10,q10,q2 - bic r10,r7,r5 - add r3,r3,r9 - veor q12,q12,q8 - and r11,r6,r5 - ldr r9,[sp,#40] - veor q12,q12,q10 - add r3,r3,r4,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q13,q15,q12,#4 - bic r10,r6,r4 - add r7,r7,r9 - vadd.i32 q10,q12,q12 - and r11,r5,r4 - ldr r9,[sp,#44] - vsri.32 q10,q12,#31 - add r7,r7,r3,ror#27 - eor r11,r11,r10 - mov r4,r4,ror#2 - vshr.u32 q12,q13,#30 - add r7,r7,r11 - bic r10,r5,r3 - vshl.u32 q13,q13,#2 - add r6,r6,r9 - and r11,r4,r3 - veor q10,q10,q12 - ldr r9,[sp,#48] - add r6,r6,r7,ror#27 - veor q10,q10,q13 - eor r11,r11,r10 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q11,q3,q8,#8 - bic r10,r4,r7 - add r5,r5,r9 - and r11,r3,r7 - vadd.i32 q13,q10,q14 - ldr r9,[sp,#52] - add r5,r5,r6,ror#27 - vext.8 q12,q10,q15,#4 - eor r11,r11,r10 - mov r7,r7,ror#2 - add r5,r5,r11 - veor q11,q11,q3 - bic r10,r3,r6 - add r4,r4,r9 - veor q12,q12,q9 - and r11,r7,r6 - ldr r9,[sp,#56] - veor q12,q12,q11 - add r4,r4,r5,ror#27 - eor r11,r11,r10 - vst1.32 {q13},[r12,:128]! - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q13,q15,q12,#4 - bic r10,r7,r5 - add r3,r3,r9 - vadd.i32 q11,q12,q12 - and r11,r6,r5 - ldr r9,[sp,#60] - vsri.32 q11,q12,#31 - add r3,r3,r4,ror#27 - eor r11,r11,r10 - mov r5,r5,ror#2 - vshr.u32 q12,q13,#30 - add r3,r3,r11 - bic r10,r6,r4 - vshl.u32 q13,q13,#2 - add r7,r7,r9 - and r11,r5,r4 - veor q11,q11,q12 - ldr r9,[sp,#0] - add r7,r7,r3,ror#27 - veor q11,q11,q13 - eor r11,r11,r10 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q10,q11,#8 - bic r10,r5,r3 - add r6,r6,r9 - and r11,r4,r3 - veor q0,q0,q8 - ldr r9,[sp,#4] - add r6,r6,r7,ror#27 - veor q0,q0,q1 - eor r11,r11,r10 - mov r3,r3,ror#2 - vadd.i32 q13,q11,q14 - add r6,r6,r11 - bic r10,r4,r7 - veor q12,q12,q0 - add r5,r5,r9 - and r11,r3,r7 - vshr.u32 q0,q12,#30 - ldr r9,[sp,#8] - add r5,r5,r6,ror#27 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - eor r11,r11,r10 - mov r7,r7,ror#2 - vsli.32 q0,q12,#2 - add r5,r5,r11 - bic r10,r3,r6 - add r4,r4,r9 - and r11,r7,r6 - ldr r9,[sp,#12] - add r4,r4,r5,ror#27 - eor r11,r11,r10 - mov r6,r6,ror#2 - add r4,r4,r11 - bic r10,r7,r5 - add r3,r3,r9 - and r11,r6,r5 - ldr r9,[sp,#16] - add r3,r3,r4,ror#27 - eor r11,r11,r10 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q11,q0,#8 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#20] - veor q1,q1,q9 - eor r11,r10,r5 - add r7,r7,r3,ror#27 - veor q1,q1,q2 - mov r4,r4,ror#2 - add r7,r7,r11 - vadd.i32 q13,q0,q14 - eor r10,r3,r5 - add r6,r6,r9 - veor q12,q12,q1 - ldr r9,[sp,#24] - eor r11,r10,r4 - vshr.u32 q1,q12,#30 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - vst1.32 {q13},[r12,:128]! - add r6,r6,r11 - eor r10,r7,r4 - vsli.32 q1,q12,#2 - add r5,r5,r9 - ldr r9,[sp,#28] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#32] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q12,q0,q1,#8 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#36] - veor q2,q2,q10 - eor r11,r10,r6 - add r3,r3,r4,ror#27 - veor q2,q2,q3 - mov r5,r5,ror#2 - add r3,r3,r11 - vadd.i32 q13,q1,q14 - eor r10,r4,r6 - vld1.32 {d28[],d29[]},[r8,:32]! - add r7,r7,r9 - veor q12,q12,q2 - ldr r9,[sp,#40] - eor r11,r10,r5 - vshr.u32 q2,q12,#30 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - vst1.32 {q13},[r12,:128]! - add r7,r7,r11 - eor r10,r3,r5 - vsli.32 q2,q12,#2 - add r6,r6,r9 - ldr r9,[sp,#44] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#48] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q12,q1,q2,#8 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#52] - veor q3,q3,q11 - eor r11,r10,r7 - add r4,r4,r5,ror#27 - veor q3,q3,q8 - mov r6,r6,ror#2 - add r4,r4,r11 - vadd.i32 q13,q2,q14 - eor r10,r5,r7 - add r3,r3,r9 - veor q12,q12,q3 - ldr r9,[sp,#56] - eor r11,r10,r6 - vshr.u32 q3,q12,#30 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - vst1.32 {q13},[r12,:128]! - add r3,r3,r11 - eor r10,r4,r6 - vsli.32 q3,q12,#2 - add r7,r7,r9 - ldr r9,[sp,#60] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#0] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q12,q2,q3,#8 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#4] - veor q8,q8,q0 - eor r11,r10,r3 - add r5,r5,r6,ror#27 - veor q8,q8,q9 - mov r7,r7,ror#2 - add r5,r5,r11 - vadd.i32 q13,q3,q14 - eor r10,r6,r3 - add r4,r4,r9 - veor q12,q12,q8 - ldr r9,[sp,#8] - eor r11,r10,r7 - vshr.u32 q8,q12,#30 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - add r4,r4,r11 - eor r10,r5,r7 - vsli.32 q8,q12,#2 - add r3,r3,r9 - ldr r9,[sp,#12] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#16] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q3,q8,#8 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#20] - veor q9,q9,q1 - eor r11,r10,r4 - add r6,r6,r7,ror#27 - veor q9,q9,q10 - mov r3,r3,ror#2 - add r6,r6,r11 - vadd.i32 q13,q8,q14 - eor r10,r7,r4 - add r5,r5,r9 - veor q12,q12,q9 - ldr r9,[sp,#24] - eor r11,r10,r3 - vshr.u32 q9,q12,#30 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - vst1.32 {q13},[r12,:128]! - add r5,r5,r11 - eor r10,r6,r3 - vsli.32 q9,q12,#2 - add r4,r4,r9 - ldr r9,[sp,#28] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#32] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q8,q9,#8 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#36] - veor q10,q10,q2 - add r7,r7,r3,ror#27 - eor r11,r5,r6 - veor q10,q10,q11 - add r7,r7,r10 - and r11,r11,r4 - vadd.i32 q13,q9,q14 - mov r4,r4,ror#2 - add r7,r7,r11 - veor q12,q12,q10 - add r6,r6,r9 - and r10,r4,r5 - vshr.u32 q10,q12,#30 - ldr r9,[sp,#40] - add r6,r6,r7,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r4,r5 - add r6,r6,r10 - vsli.32 q10,q12,#2 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#44] - add r5,r5,r6,ror#27 - eor r11,r3,r4 - add r5,r5,r10 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#48] - add r4,r4,r5,ror#27 - eor r11,r7,r3 - add r4,r4,r10 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - vext.8 q12,q9,q10,#8 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#52] - veor q11,q11,q3 - add r3,r3,r4,ror#27 - eor r11,r6,r7 - veor q11,q11,q0 - add r3,r3,r10 - and r11,r11,r5 - vadd.i32 q13,q10,q14 - mov r5,r5,ror#2 - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r11 - veor q12,q12,q11 - add r7,r7,r9 - and r10,r5,r6 - vshr.u32 q11,q12,#30 - ldr r9,[sp,#56] - add r7,r7,r3,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r5,r6 - add r7,r7,r10 - vsli.32 q11,q12,#2 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#60] - add r6,r6,r7,ror#27 - eor r11,r4,r5 - add r6,r6,r10 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#0] - add r5,r5,r6,ror#27 - eor r11,r3,r4 - add r5,r5,r10 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - vext.8 q12,q10,q11,#8 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#4] - veor q0,q0,q8 - add r4,r4,r5,ror#27 - eor r11,r7,r3 - veor q0,q0,q1 - add r4,r4,r10 - and r11,r11,r6 - vadd.i32 q13,q11,q14 - mov r6,r6,ror#2 - add r4,r4,r11 - veor q12,q12,q0 - add r3,r3,r9 - and r10,r6,r7 - vshr.u32 q0,q12,#30 - ldr r9,[sp,#8] - add r3,r3,r4,ror#27 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - eor r11,r6,r7 - add r3,r3,r10 - vsli.32 q0,q12,#2 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#12] - add r7,r7,r3,ror#27 - eor r11,r5,r6 - add r7,r7,r10 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#16] - add r6,r6,r7,ror#27 - eor r11,r4,r5 - add r6,r6,r10 - and r11,r11,r3 - mov r3,r3,ror#2 - add r6,r6,r11 - vext.8 q12,q11,q0,#8 - add r5,r5,r9 - and r10,r3,r4 - ldr r9,[sp,#20] - veor q1,q1,q9 - add r5,r5,r6,ror#27 - eor r11,r3,r4 - veor q1,q1,q2 - add r5,r5,r10 - and r11,r11,r7 - vadd.i32 q13,q0,q14 - mov r7,r7,ror#2 - add r5,r5,r11 - veor q12,q12,q1 - add r4,r4,r9 - and r10,r7,r3 - vshr.u32 q1,q12,#30 - ldr r9,[sp,#24] - add r4,r4,r5,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r7,r3 - add r4,r4,r10 - vsli.32 q1,q12,#2 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#28] - add r3,r3,r4,ror#27 - eor r11,r6,r7 - add r3,r3,r10 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - add r7,r7,r9 - and r10,r5,r6 - ldr r9,[sp,#32] - add r7,r7,r3,ror#27 - eor r11,r5,r6 - add r7,r7,r10 - and r11,r11,r4 - mov r4,r4,ror#2 - add r7,r7,r11 - vext.8 q12,q0,q1,#8 - add r6,r6,r9 - and r10,r4,r5 - ldr r9,[sp,#36] - veor q2,q2,q10 - add r6,r6,r7,ror#27 - eor r11,r4,r5 - veor q2,q2,q3 - add r6,r6,r10 - and r11,r11,r3 - vadd.i32 q13,q1,q14 - mov r3,r3,ror#2 - add r6,r6,r11 - veor q12,q12,q2 - add r5,r5,r9 - and r10,r3,r4 - vshr.u32 q2,q12,#30 - ldr r9,[sp,#40] - add r5,r5,r6,ror#27 - vst1.32 {q13},[r12,:128]! - eor r11,r3,r4 - add r5,r5,r10 - vsli.32 q2,q12,#2 - and r11,r11,r7 - mov r7,r7,ror#2 - add r5,r5,r11 - add r4,r4,r9 - and r10,r7,r3 - ldr r9,[sp,#44] - add r4,r4,r5,ror#27 - eor r11,r7,r3 - add r4,r4,r10 - and r11,r11,r6 - mov r6,r6,ror#2 - add r4,r4,r11 - add r3,r3,r9 - and r10,r6,r7 - ldr r9,[sp,#48] - add r3,r3,r4,ror#27 - eor r11,r6,r7 - add r3,r3,r10 - and r11,r11,r5 - mov r5,r5,ror#2 - add r3,r3,r11 - vext.8 q12,q1,q2,#8 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#52] - veor q3,q3,q11 - eor r11,r10,r5 - add r7,r7,r3,ror#27 - veor q3,q3,q8 - mov r4,r4,ror#2 - add r7,r7,r11 - vadd.i32 q13,q2,q14 - eor r10,r3,r5 - add r6,r6,r9 - veor q12,q12,q3 - ldr r9,[sp,#56] - eor r11,r10,r4 - vshr.u32 q3,q12,#30 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - vst1.32 {q13},[r12,:128]! - add r6,r6,r11 - eor r10,r7,r4 - vsli.32 q3,q12,#2 - add r5,r5,r9 - ldr r9,[sp,#60] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#0] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - vadd.i32 q13,q3,q14 - eor r10,r5,r7 - add r3,r3,r9 - vst1.32 {q13},[r12,:128]! - sub r12,r12,#64 - teq r1,r2 - sub r8,r8,#16 - subeq r1,r1,#64 - vld1.8 {q0-q1},[r1]! - ldr r9,[sp,#4] - eor r11,r10,r6 - vld1.8 {q2-q3},[r1]! - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - vld1.32 {d28[],d29[]},[r8,:32]! - add r3,r3,r11 - eor r10,r4,r6 - vrev32.8 q0,q0 - add r7,r7,r9 - ldr r9,[sp,#8] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#12] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#16] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - vrev32.8 q1,q1 - eor r10,r6,r3 - add r4,r4,r9 - vadd.i32 q8,q0,q14 - ldr r9,[sp,#20] - eor r11,r10,r7 - vst1.32 {q8},[r12,:128]! - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#24] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#28] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - eor r10,r3,r5 - add r6,r6,r9 - ldr r9,[sp,#32] - eor r11,r10,r4 - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - vrev32.8 q2,q2 - eor r10,r7,r4 - add r5,r5,r9 - vadd.i32 q9,q1,q14 - ldr r9,[sp,#36] - eor r11,r10,r3 - vst1.32 {q9},[r12,:128]! - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#40] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - ldr r9,[sp,#44] - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - eor r10,r4,r6 - add r7,r7,r9 - ldr r9,[sp,#48] - eor r11,r10,r5 - add r7,r7,r3,ror#27 - mov r4,r4,ror#2 - add r7,r7,r11 - vrev32.8 q3,q3 - eor r10,r3,r5 - add r6,r6,r9 - vadd.i32 q10,q2,q14 - ldr r9,[sp,#52] - eor r11,r10,r4 - vst1.32 {q10},[r12,:128]! - add r6,r6,r7,ror#27 - mov r3,r3,ror#2 - add r6,r6,r11 - eor r10,r7,r4 - add r5,r5,r9 - ldr r9,[sp,#56] - eor r11,r10,r3 - add r5,r5,r6,ror#27 - mov r7,r7,ror#2 - add r5,r5,r11 - eor r10,r6,r3 - add r4,r4,r9 - ldr r9,[sp,#60] - eor r11,r10,r7 - add r4,r4,r5,ror#27 - mov r6,r6,ror#2 - add r4,r4,r11 - eor r10,r5,r7 - add r3,r3,r9 - eor r11,r10,r6 - add r3,r3,r4,ror#27 - mov r5,r5,ror#2 - add r3,r3,r11 - ldmia r0,{r9,r10,r11,r12} @ accumulate context - add r3,r3,r9 - ldr r9,[r0,#16] - add r4,r4,r10 - add r5,r5,r11 - add r6,r6,r12 - moveq sp,r14 - add r7,r7,r9 - ldrne r9,[sp] - stmia r0,{r3,r4,r5,r6,r7} - addne r12,sp,#3*16 - bne .Loop_neon - - @ vldmia sp!,{d8-d15} - ldmia sp!,{r4-r12,pc} -.size sha1_block_data_order_neon,.-sha1_block_data_order_neon -#endif -#if __ARM_MAX_ARCH__>=7 -.type sha1_block_data_order_armv8,%function -.align 5 -sha1_block_data_order_armv8: -.LARMv8: - vstmdb sp!,{d8-d15} @ ABI specification says so - - veor q1,q1,q1 - adr r3,.LK_00_19 - vld1.32 {q0},[r0]! - vld1.32 {d2[0]},[r0] - sub r0,r0,#16 - vld1.32 {d16[],d17[]},[r3,:32]! - vld1.32 {d18[],d19[]},[r3,:32]! - vld1.32 {d20[],d21[]},[r3,:32]! - vld1.32 {d22[],d23[]},[r3,:32] - -.Loop_v8: - vld1.8 {q4-q5},[r1]! - vld1.8 {q6-q7},[r1]! - vrev32.8 q4,q4 - vrev32.8 q5,q5 - - vadd.i32 q12,q8,q4 - vrev32.8 q6,q6 - vmov q14,q0 @ offload - subs r2,r2,#1 - - vadd.i32 q13,q8,q5 - vrev32.8 q7,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 0 - .byte 0x68,0x0c,0x02,0xf2 @ sha1c q0,q1,q12 - vadd.i32 q12,q8,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 1 - .byte 0x6a,0x0c,0x06,0xf2 @ sha1c q0,q3,q13 - vadd.i32 q13,q8,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 2 - .byte 0x68,0x0c,0x04,0xf2 @ sha1c q0,q2,q12 - vadd.i32 q12,q8,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 3 - .byte 0x6a,0x0c,0x06,0xf2 @ sha1c q0,q3,q13 - vadd.i32 q13,q9,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 4 - .byte 0x68,0x0c,0x04,0xf2 @ sha1c q0,q2,q12 - vadd.i32 q12,q9,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 5 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q9,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 6 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q9,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 7 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q9,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 8 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q10,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 9 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q10,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 10 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q10,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 11 - .byte 0x6a,0x0c,0x26,0xf2 @ sha1m q0,q3,q13 - vadd.i32 q13,q10,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 12 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q10,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0x4c,0x8c,0x3a,0xf2 @ sha1su0 q4,q5,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 13 - .byte 0x6a,0x0c,0x26,0xf2 @ sha1m q0,q3,q13 - vadd.i32 q13,q11,q7 - .byte 0x8e,0x83,0xba,0xf3 @ sha1su1 q4,q7 - .byte 0x4e,0xac,0x3c,0xf2 @ sha1su0 q5,q6,q7 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 14 - .byte 0x68,0x0c,0x24,0xf2 @ sha1m q0,q2,q12 - vadd.i32 q12,q11,q4 - .byte 0x88,0xa3,0xba,0xf3 @ sha1su1 q5,q4 - .byte 0x48,0xcc,0x3e,0xf2 @ sha1su0 q6,q7,q4 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 15 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q11,q5 - .byte 0x8a,0xc3,0xba,0xf3 @ sha1su1 q6,q5 - .byte 0x4a,0xec,0x38,0xf2 @ sha1su0 q7,q4,q5 - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 16 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - vadd.i32 q12,q11,q6 - .byte 0x8c,0xe3,0xba,0xf3 @ sha1su1 q7,q6 - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 17 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - vadd.i32 q13,q11,q7 - - .byte 0xc0,0x62,0xb9,0xf3 @ sha1h q3,q0 @ 18 - .byte 0x68,0x0c,0x14,0xf2 @ sha1p q0,q2,q12 - - .byte 0xc0,0x42,0xb9,0xf3 @ sha1h q2,q0 @ 19 - .byte 0x6a,0x0c,0x16,0xf2 @ sha1p q0,q3,q13 - - vadd.i32 q1,q1,q2 - vadd.i32 q0,q0,q14 - bne .Loop_v8 - - vst1.32 {q0},[r0]! - vst1.32 {d2[0]},[r0] - - vldmia sp!,{d8-d15} - bx lr @ bx lr -.size sha1_block_data_order_armv8,.-sha1_block_data_order_armv8 -#endif -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S b/deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S deleted file mode 100644 index 4e1f0226e84bc0..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S +++ /dev/null @@ -1,2775 +0,0 @@ - -@ ==================================================================== -@ Written by Andy Polyakov for the OpenSSL -@ project. The module is, however, dual licensed under OpenSSL and -@ CRYPTOGAMS licenses depending on where you obtain it. For further -@ details see http://www.openssl.org/~appro/cryptogams/. -@ -@ Permission to use under GPL terms is granted. -@ ==================================================================== - -@ SHA256 block procedure for ARMv4. May 2007. - -@ Performance is ~2x better than gcc 3.4 generated code and in "abso- -@ lute" terms is ~2250 cycles per 64-byte block or ~35 cycles per -@ byte [on single-issue Xscale PXA250 core]. - -@ July 2010. -@ -@ Rescheduling for dual-issue pipeline resulted in 22% improvement on -@ Cortex A8 core and ~20 cycles per processed byte. - -@ February 2011. -@ -@ Profiler-assisted and platform-specific optimization resulted in 16% -@ improvement on Cortex A8 core and ~15.4 cycles per processed byte. - -@ September 2013. -@ -@ Add NEON implementation. On Cortex A8 it was measured to process one -@ byte in 12.5 cycles or 23% faster than integer-only code. Snapdragon -@ S4 does it in 12.5 cycles too, but it's 50% faster than integer-only -@ code (meaning that latter performs sub-optimally, nothing was done -@ about it). - -@ May 2014. -@ -@ Add ARMv8 code path performing at 2.0 cpb on Apple A7. - -#ifndef __KERNEL__ -# include "arm_arch.h" -#else -# define __ARM_ARCH__ __LINUX_ARM_ARCH__ -# define __ARM_MAX_ARCH__ 7 -#endif - -.text -#if __ARM_ARCH__<7 -.code 32 -#else -.syntax unified -# ifdef __thumb2__ -.thumb -# else -.code 32 -# endif -#endif - -.type K256,%object -.align 5 -K256: -.word 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.word 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.word 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.word 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.word 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.word 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.word 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.word 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.word 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.word 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.word 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.word 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.word 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.word 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.word 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.word 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.size K256,.-K256 -.word 0 @ terminator -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha256_block_data_order -#endif -.align 5 - -.global sha256_block_data_order -.type sha256_block_data_order,%function -sha256_block_data_order: -#if __ARM_ARCH__<7 - sub r3,pc,#8 @ sha256_block_data_order -#else - adr r3,. -#endif -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#ARMV8_SHA256 - bne .LARMv8 - tst r12,#ARMV7_NEON - bne .LNEON -#endif - add r2,r1,r2,lsl#6 @ len to point at the end of inp - stmdb sp!,{r0,r1,r2,r4-r11,lr} - ldmia r0,{r4,r5,r6,r7,r8,r9,r10,r11} - sub r14,r3,#256+32 @ K256 - sub sp,sp,#16*4 @ alloca(X[16]) -.Loop: -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ magic - eor r12,r12,r12 -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 0 -# if 0==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r8,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 0 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 0==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r8,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#0*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 0==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 0<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#2*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#15*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 1 -# if 1==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r7,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 1 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 1==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r7,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#1*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 1==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 1<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#3*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#0*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 2 -# if 2==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r6,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 2 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 2==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r6,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#2*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 2==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 2<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#4*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#1*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 3 -# if 3==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r5,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 3 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 3==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r5,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#3*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 3==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 3<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#5*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#2*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 4 -# if 4==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r4,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 4 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 4==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r4,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#4*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 4==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 4<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#6*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#3*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 5 -# if 5==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r11,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 5==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r11,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#5*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 5==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 5<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#7*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#4*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 6 -# if 6==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r10,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 6 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 6==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r10,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#6*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 6==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 6<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#8*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#5*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 7 -# if 7==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r9,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 7==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r9,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#7*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 7==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 7<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#9*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#6*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 8 -# if 8==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r8,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 8 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 8==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r8,r8,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r8,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#8*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 8==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 8<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#10*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#7*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 9 -# if 9==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r7,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 9 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 9==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r7,r7,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r7,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#9*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 9==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 9<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#11*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#8*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 10 -# if 10==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r6,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 10 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 10==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r6,r6,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r6,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#10*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 10==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 10<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#12*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#9*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 11 -# if 11==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r5,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 11 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 11==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r5,r5,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r5,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#11*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 11==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 11<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#13*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#10*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 12 -# if 12==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r4,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 12 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 12==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r4,r4,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r4,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#12*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 12==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 12<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#14*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#11*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 13 -# if 13==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r11,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 13 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 13==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r11,r11,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r11,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#13*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 13==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 13<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#15*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#12*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 14 -# if 14==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - eor r0,r0,r10,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 14 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - ldrb r12,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r12,lsl#8 - ldrb r12,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 14==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r10,r10,ror#5 - orr r2,r2,r12,lsl#24 - eor r0,r0,r10,ror#19 @ Sigma1(e) -#endif - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#14*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 14==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 14<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#0*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#13*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - @ ldr r2,[r1],#4 @ 15 -# if 15==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - eor r0,r0,r9,ror#19 @ Sigma1(e) - rev r2,r2 -#else - @ ldrb r2,[r1,#3] @ 15 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - ldrb r3,[r1,#2] - ldrb r0,[r1,#1] - orr r2,r2,r3,lsl#8 - ldrb r3,[r1],#4 - orr r2,r2,r0,lsl#16 -# if 15==15 - str r1,[sp,#17*4] @ make room for r1 -# endif - eor r0,r9,r9,ror#5 - orr r2,r2,r3,lsl#24 - eor r0,r0,r9,ror#19 @ Sigma1(e) -#endif - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#15*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 15==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 15<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#1*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#14*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -.Lrounds_16_xx: - @ ldr r2,[sp,#1*4] @ 16 - @ ldr r1,[sp,#14*4] - mov r0,r2,ror#7 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#0*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#9*4] - - add r12,r12,r0 - eor r0,r8,r8,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r8,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#0*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 16==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 16<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#2*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#15*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#2*4] @ 17 - @ ldr r1,[sp,#15*4] - mov r0,r2,ror#7 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#1*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#10*4] - - add r3,r3,r0 - eor r0,r7,r7,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r7,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#1*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 17==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 17<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#3*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#0*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#3*4] @ 18 - @ ldr r1,[sp,#0*4] - mov r0,r2,ror#7 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#2*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#11*4] - - add r12,r12,r0 - eor r0,r6,r6,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r6,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#2*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 18==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 18<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#4*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#1*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#4*4] @ 19 - @ ldr r1,[sp,#1*4] - mov r0,r2,ror#7 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#3*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#12*4] - - add r3,r3,r0 - eor r0,r5,r5,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r5,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#3*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 19==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 19<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#5*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#2*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#5*4] @ 20 - @ ldr r1,[sp,#2*4] - mov r0,r2,ror#7 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#4*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#13*4] - - add r12,r12,r0 - eor r0,r4,r4,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r4,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#4*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 20==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 20<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#6*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#3*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#6*4] @ 21 - @ ldr r1,[sp,#3*4] - mov r0,r2,ror#7 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#5*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#14*4] - - add r3,r3,r0 - eor r0,r11,r11,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r11,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#5*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 21==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 21<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#7*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#4*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#7*4] @ 22 - @ ldr r1,[sp,#4*4] - mov r0,r2,ror#7 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#6*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#15*4] - - add r12,r12,r0 - eor r0,r10,r10,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r10,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#6*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 22==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 22<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#8*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#5*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#8*4] @ 23 - @ ldr r1,[sp,#5*4] - mov r0,r2,ror#7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#7*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#0*4] - - add r3,r3,r0 - eor r0,r9,r9,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r9,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#7*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 23==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 23<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#9*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#6*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#9*4] @ 24 - @ ldr r1,[sp,#6*4] - mov r0,r2,ror#7 - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#8*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#1*4] - - add r12,r12,r0 - eor r0,r8,r8,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r8,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r11,r11,r2 @ h+=X[i] - str r2,[sp,#8*4] - eor r2,r9,r10 - add r11,r11,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r8 - add r11,r11,r12 @ h+=K256[i] - eor r2,r2,r10 @ Ch(e,f,g) - eor r0,r4,r4,ror#11 - add r11,r11,r2 @ h+=Ch(e,f,g) -#if 24==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 24<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r4,r5 @ a^b, b^c in next round -#else - ldr r2,[sp,#10*4] @ from future BODY_16_xx - eor r12,r4,r5 @ a^b, b^c in next round - ldr r1,[sp,#7*4] @ from future BODY_16_xx -#endif - eor r0,r0,r4,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r7,r7,r11 @ d+=h - eor r3,r3,r5 @ Maj(a,b,c) - add r11,r11,r0,ror#2 @ h+=Sigma0(a) - @ add r11,r11,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#10*4] @ 25 - @ ldr r1,[sp,#7*4] - mov r0,r2,ror#7 - add r11,r11,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#9*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#2*4] - - add r3,r3,r0 - eor r0,r7,r7,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r7,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r10,r10,r2 @ h+=X[i] - str r2,[sp,#9*4] - eor r2,r8,r9 - add r10,r10,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r7 - add r10,r10,r3 @ h+=K256[i] - eor r2,r2,r9 @ Ch(e,f,g) - eor r0,r11,r11,ror#11 - add r10,r10,r2 @ h+=Ch(e,f,g) -#if 25==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 25<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r11,r4 @ a^b, b^c in next round -#else - ldr r2,[sp,#11*4] @ from future BODY_16_xx - eor r3,r11,r4 @ a^b, b^c in next round - ldr r1,[sp,#8*4] @ from future BODY_16_xx -#endif - eor r0,r0,r11,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r6,r6,r10 @ d+=h - eor r12,r12,r4 @ Maj(a,b,c) - add r10,r10,r0,ror#2 @ h+=Sigma0(a) - @ add r10,r10,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#11*4] @ 26 - @ ldr r1,[sp,#8*4] - mov r0,r2,ror#7 - add r10,r10,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#10*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#3*4] - - add r12,r12,r0 - eor r0,r6,r6,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r6,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r9,r9,r2 @ h+=X[i] - str r2,[sp,#10*4] - eor r2,r7,r8 - add r9,r9,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r6 - add r9,r9,r12 @ h+=K256[i] - eor r2,r2,r8 @ Ch(e,f,g) - eor r0,r10,r10,ror#11 - add r9,r9,r2 @ h+=Ch(e,f,g) -#if 26==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 26<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r10,r11 @ a^b, b^c in next round -#else - ldr r2,[sp,#12*4] @ from future BODY_16_xx - eor r12,r10,r11 @ a^b, b^c in next round - ldr r1,[sp,#9*4] @ from future BODY_16_xx -#endif - eor r0,r0,r10,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r5,r5,r9 @ d+=h - eor r3,r3,r11 @ Maj(a,b,c) - add r9,r9,r0,ror#2 @ h+=Sigma0(a) - @ add r9,r9,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#12*4] @ 27 - @ ldr r1,[sp,#9*4] - mov r0,r2,ror#7 - add r9,r9,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#11*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#4*4] - - add r3,r3,r0 - eor r0,r5,r5,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r5,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r8,r8,r2 @ h+=X[i] - str r2,[sp,#11*4] - eor r2,r6,r7 - add r8,r8,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r5 - add r8,r8,r3 @ h+=K256[i] - eor r2,r2,r7 @ Ch(e,f,g) - eor r0,r9,r9,ror#11 - add r8,r8,r2 @ h+=Ch(e,f,g) -#if 27==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 27<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r9,r10 @ a^b, b^c in next round -#else - ldr r2,[sp,#13*4] @ from future BODY_16_xx - eor r3,r9,r10 @ a^b, b^c in next round - ldr r1,[sp,#10*4] @ from future BODY_16_xx -#endif - eor r0,r0,r9,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r4,r4,r8 @ d+=h - eor r12,r12,r10 @ Maj(a,b,c) - add r8,r8,r0,ror#2 @ h+=Sigma0(a) - @ add r8,r8,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#13*4] @ 28 - @ ldr r1,[sp,#10*4] - mov r0,r2,ror#7 - add r8,r8,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#12*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#5*4] - - add r12,r12,r0 - eor r0,r4,r4,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r4,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r7,r7,r2 @ h+=X[i] - str r2,[sp,#12*4] - eor r2,r5,r6 - add r7,r7,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r4 - add r7,r7,r12 @ h+=K256[i] - eor r2,r2,r6 @ Ch(e,f,g) - eor r0,r8,r8,ror#11 - add r7,r7,r2 @ h+=Ch(e,f,g) -#if 28==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 28<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r8,r9 @ a^b, b^c in next round -#else - ldr r2,[sp,#14*4] @ from future BODY_16_xx - eor r12,r8,r9 @ a^b, b^c in next round - ldr r1,[sp,#11*4] @ from future BODY_16_xx -#endif - eor r0,r0,r8,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r11,r11,r7 @ d+=h - eor r3,r3,r9 @ Maj(a,b,c) - add r7,r7,r0,ror#2 @ h+=Sigma0(a) - @ add r7,r7,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#14*4] @ 29 - @ ldr r1,[sp,#11*4] - mov r0,r2,ror#7 - add r7,r7,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#13*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#6*4] - - add r3,r3,r0 - eor r0,r11,r11,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r11,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r6,r6,r2 @ h+=X[i] - str r2,[sp,#13*4] - eor r2,r4,r5 - add r6,r6,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r11 - add r6,r6,r3 @ h+=K256[i] - eor r2,r2,r5 @ Ch(e,f,g) - eor r0,r7,r7,ror#11 - add r6,r6,r2 @ h+=Ch(e,f,g) -#if 29==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 29<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r7,r8 @ a^b, b^c in next round -#else - ldr r2,[sp,#15*4] @ from future BODY_16_xx - eor r3,r7,r8 @ a^b, b^c in next round - ldr r1,[sp,#12*4] @ from future BODY_16_xx -#endif - eor r0,r0,r7,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r10,r10,r6 @ d+=h - eor r12,r12,r8 @ Maj(a,b,c) - add r6,r6,r0,ror#2 @ h+=Sigma0(a) - @ add r6,r6,r12 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#15*4] @ 30 - @ ldr r1,[sp,#12*4] - mov r0,r2,ror#7 - add r6,r6,r12 @ h+=Maj(a,b,c) from the past - mov r12,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r12,r12,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#14*4] - eor r12,r12,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#7*4] - - add r12,r12,r0 - eor r0,r10,r10,ror#5 @ from BODY_00_15 - add r2,r2,r12 - eor r0,r0,r10,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r12,[r14],#4 @ *K256++ - add r5,r5,r2 @ h+=X[i] - str r2,[sp,#14*4] - eor r2,r11,r4 - add r5,r5,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r10 - add r5,r5,r12 @ h+=K256[i] - eor r2,r2,r4 @ Ch(e,f,g) - eor r0,r6,r6,ror#11 - add r5,r5,r2 @ h+=Ch(e,f,g) -#if 30==31 - and r12,r12,#0xff - cmp r12,#0xf2 @ done? -#endif -#if 30<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r12,r6,r7 @ a^b, b^c in next round -#else - ldr r2,[sp,#0*4] @ from future BODY_16_xx - eor r12,r6,r7 @ a^b, b^c in next round - ldr r1,[sp,#13*4] @ from future BODY_16_xx -#endif - eor r0,r0,r6,ror#20 @ Sigma0(a) - and r3,r3,r12 @ (b^c)&=(a^b) - add r9,r9,r5 @ d+=h - eor r3,r3,r7 @ Maj(a,b,c) - add r5,r5,r0,ror#2 @ h+=Sigma0(a) - @ add r5,r5,r3 @ h+=Maj(a,b,c) - @ ldr r2,[sp,#0*4] @ 31 - @ ldr r1,[sp,#13*4] - mov r0,r2,ror#7 - add r5,r5,r3 @ h+=Maj(a,b,c) from the past - mov r3,r1,ror#17 - eor r0,r0,r2,ror#18 - eor r3,r3,r1,ror#19 - eor r0,r0,r2,lsr#3 @ sigma0(X[i+1]) - ldr r2,[sp,#15*4] - eor r3,r3,r1,lsr#10 @ sigma1(X[i+14]) - ldr r1,[sp,#8*4] - - add r3,r3,r0 - eor r0,r9,r9,ror#5 @ from BODY_00_15 - add r2,r2,r3 - eor r0,r0,r9,ror#19 @ Sigma1(e) - add r2,r2,r1 @ X[i] - ldr r3,[r14],#4 @ *K256++ - add r4,r4,r2 @ h+=X[i] - str r2,[sp,#15*4] - eor r2,r10,r11 - add r4,r4,r0,ror#6 @ h+=Sigma1(e) - and r2,r2,r9 - add r4,r4,r3 @ h+=K256[i] - eor r2,r2,r11 @ Ch(e,f,g) - eor r0,r5,r5,ror#11 - add r4,r4,r2 @ h+=Ch(e,f,g) -#if 31==31 - and r3,r3,#0xff - cmp r3,#0xf2 @ done? -#endif -#if 31<15 -# if __ARM_ARCH__>=7 - ldr r2,[r1],#4 @ prefetch -# else - ldrb r2,[r1,#3] -# endif - eor r3,r5,r6 @ a^b, b^c in next round -#else - ldr r2,[sp,#1*4] @ from future BODY_16_xx - eor r3,r5,r6 @ a^b, b^c in next round - ldr r1,[sp,#14*4] @ from future BODY_16_xx -#endif - eor r0,r0,r5,ror#20 @ Sigma0(a) - and r12,r12,r3 @ (b^c)&=(a^b) - add r8,r8,r4 @ d+=h - eor r12,r12,r6 @ Maj(a,b,c) - add r4,r4,r0,ror#2 @ h+=Sigma0(a) - @ add r4,r4,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 - ite eq @ Thumb2 thing, sanity check in ARM -#endif - ldreq r3,[sp,#16*4] @ pull ctx - bne .Lrounds_16_xx - - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldr r0,[r3,#0] - ldr r2,[r3,#4] - ldr r12,[r3,#8] - add r4,r4,r0 - ldr r0,[r3,#12] - add r5,r5,r2 - ldr r2,[r3,#16] - add r6,r6,r12 - ldr r12,[r3,#20] - add r7,r7,r0 - ldr r0,[r3,#24] - add r8,r8,r2 - ldr r2,[r3,#28] - add r9,r9,r12 - ldr r1,[sp,#17*4] @ pull inp - ldr r12,[sp,#18*4] @ pull inp+len - add r10,r10,r0 - add r11,r11,r2 - stmia r3,{r4,r5,r6,r7,r8,r9,r10,r11} - cmp r1,r12 - sub r14,r14,#256 @ rewind Ktbl - bne .Loop - - add sp,sp,#19*4 @ destroy frame -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r11,pc} -#else - ldmia sp!,{r4-r11,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -.size sha256_block_data_order,.-sha256_block_data_order -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.global sha256_block_data_order_neon -.type sha256_block_data_order_neon,%function -.align 4 -sha256_block_data_order_neon: -.LNEON: - stmdb sp!,{r4-r12,lr} - - sub r11,sp,#16*4+16 - adr r14,K256 - bic r11,r11,#15 @ align for 128-bit stores - mov r12,sp - mov sp,r11 @ alloca - add r2,r1,r2,lsl#6 @ len to point at the end of inp - - vld1.8 {q0},[r1]! - vld1.8 {q1},[r1]! - vld1.8 {q2},[r1]! - vld1.8 {q3},[r1]! - vld1.32 {q8},[r14,:128]! - vld1.32 {q9},[r14,:128]! - vld1.32 {q10},[r14,:128]! - vld1.32 {q11},[r14,:128]! - vrev32.8 q0,q0 @ yes, even on - str r0,[sp,#64] - vrev32.8 q1,q1 @ big-endian - str r1,[sp,#68] - mov r1,sp - vrev32.8 q2,q2 - str r2,[sp,#72] - vrev32.8 q3,q3 - str r12,[sp,#76] @ save original sp - vadd.i32 q8,q8,q0 - vadd.i32 q9,q9,q1 - vst1.32 {q8},[r1,:128]! - vadd.i32 q10,q10,q2 - vst1.32 {q9},[r1,:128]! - vadd.i32 q11,q11,q3 - vst1.32 {q10},[r1,:128]! - vst1.32 {q11},[r1,:128]! - - ldmia r0,{r4-r11} - sub r1,r1,#64 - ldr r2,[sp,#0] - eor r12,r12,r12 - eor r3,r5,r6 - b .L_00_48 - -.align 4 -.L_00_48: - vext.8 q8,q0,q1,#4 - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - vext.8 q9,q2,q3,#4 - add r4,r4,r12 - and r2,r2,r8 - eor r12,r0,r8,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vadd.i32 q0,q0,q9 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - vshr.u32 q9,q8,#3 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#4] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - veor q9,q9,q10 - add r10,r10,r2 - vsli.32 q11,q8,#14 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - vshr.u32 d24,d7,#17 - add r11,r11,r3 - and r2,r2,r7 - veor q9,q9,q11 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - vsli.32 d24,d7,#15 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - vshr.u32 d25,d7,#10 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - vadd.i32 q0,q0,q9 - add r10,r10,r2 - ldr r2,[sp,#8] - veor d25,d25,d24 - and r12,r12,r3 - add r6,r6,r10 - vshr.u32 d24,d7,#19 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - vsli.32 d24,d7,#13 - add r9,r9,r2 - eor r2,r7,r8 - veor d25,d25,d24 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - vadd.i32 d0,d0,d25 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - vshr.u32 d24,d0,#17 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - vsli.32 d24,d0,#15 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - vshr.u32 d25,d0,#10 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - veor d25,d25,d24 - ldr r2,[sp,#12] - and r3,r3,r12 - vshr.u32 d24,d0,#19 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - vld1.32 {q8},[r14,:128]! - add r8,r8,r2 - vsli.32 d24,d0,#13 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - veor d25,d25,d24 - add r9,r9,r3 - and r2,r2,r5 - vadd.i32 d1,d1,d25 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - vadd.i32 q8,q8,q0 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#16] - and r12,r12,r3 - add r4,r4,r8 - vst1.32 {q8},[r1,:128]! - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vext.8 q8,q1,q2,#4 - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - vext.8 q9,q3,q0,#4 - add r8,r8,r12 - and r2,r2,r4 - eor r12,r0,r4,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vadd.i32 q1,q1,q9 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - vshr.u32 q9,q8,#3 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#20] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - veor q9,q9,q10 - add r6,r6,r2 - vsli.32 q11,q8,#14 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - vshr.u32 d24,d1,#17 - add r7,r7,r3 - and r2,r2,r11 - veor q9,q9,q11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - vsli.32 d24,d1,#15 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - vshr.u32 d25,d1,#10 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - vadd.i32 q1,q1,q9 - add r6,r6,r2 - ldr r2,[sp,#24] - veor d25,d25,d24 - and r12,r12,r3 - add r10,r10,r6 - vshr.u32 d24,d1,#19 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - vsli.32 d24,d1,#13 - add r5,r5,r2 - eor r2,r11,r4 - veor d25,d25,d24 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - vadd.i32 d2,d2,d25 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - vshr.u32 d24,d2,#17 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - vsli.32 d24,d2,#15 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - vshr.u32 d25,d2,#10 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - veor d25,d25,d24 - ldr r2,[sp,#28] - and r3,r3,r12 - vshr.u32 d24,d2,#19 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - vld1.32 {q8},[r14,:128]! - add r4,r4,r2 - vsli.32 d24,d2,#13 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - veor d25,d25,d24 - add r5,r5,r3 - and r2,r2,r9 - vadd.i32 d3,d3,d25 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - vadd.i32 q8,q8,q1 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#32] - and r12,r12,r3 - add r8,r8,r4 - vst1.32 {q8},[r1,:128]! - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vext.8 q8,q2,q3,#4 - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - vext.8 q9,q0,q1,#4 - add r4,r4,r12 - and r2,r2,r8 - eor r12,r0,r8,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vadd.i32 q2,q2,q9 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - vshr.u32 q9,q8,#3 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#36] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - veor q9,q9,q10 - add r10,r10,r2 - vsli.32 q11,q8,#14 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - vshr.u32 d24,d3,#17 - add r11,r11,r3 - and r2,r2,r7 - veor q9,q9,q11 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - vsli.32 d24,d3,#15 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - vshr.u32 d25,d3,#10 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - vadd.i32 q2,q2,q9 - add r10,r10,r2 - ldr r2,[sp,#40] - veor d25,d25,d24 - and r12,r12,r3 - add r6,r6,r10 - vshr.u32 d24,d3,#19 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - vsli.32 d24,d3,#13 - add r9,r9,r2 - eor r2,r7,r8 - veor d25,d25,d24 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - vadd.i32 d4,d4,d25 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - vshr.u32 d24,d4,#17 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - vsli.32 d24,d4,#15 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - vshr.u32 d25,d4,#10 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - veor d25,d25,d24 - ldr r2,[sp,#44] - and r3,r3,r12 - vshr.u32 d24,d4,#19 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - vld1.32 {q8},[r14,:128]! - add r8,r8,r2 - vsli.32 d24,d4,#13 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - veor d25,d25,d24 - add r9,r9,r3 - and r2,r2,r5 - vadd.i32 d5,d5,d25 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - vadd.i32 q8,q8,q2 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#48] - and r12,r12,r3 - add r4,r4,r8 - vst1.32 {q8},[r1,:128]! - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vext.8 q8,q3,q0,#4 - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - vext.8 q9,q1,q2,#4 - add r8,r8,r12 - and r2,r2,r4 - eor r12,r0,r4,ror#19 - vshr.u32 q10,q8,#7 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vadd.i32 q3,q3,q9 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - vshr.u32 q9,q8,#3 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vsli.32 q10,q8,#25 - ldr r2,[sp,#52] - and r3,r3,r12 - vshr.u32 q11,q8,#18 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - veor q9,q9,q10 - add r6,r6,r2 - vsli.32 q11,q8,#14 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - vshr.u32 d24,d5,#17 - add r7,r7,r3 - and r2,r2,r11 - veor q9,q9,q11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - vsli.32 d24,d5,#15 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - vshr.u32 d25,d5,#10 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - vadd.i32 q3,q3,q9 - add r6,r6,r2 - ldr r2,[sp,#56] - veor d25,d25,d24 - and r12,r12,r3 - add r10,r10,r6 - vshr.u32 d24,d5,#19 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - vsli.32 d24,d5,#13 - add r5,r5,r2 - eor r2,r11,r4 - veor d25,d25,d24 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - vadd.i32 d6,d6,d25 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - vshr.u32 d24,d6,#17 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - vsli.32 d24,d6,#15 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - vshr.u32 d25,d6,#10 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - veor d25,d25,d24 - ldr r2,[sp,#60] - and r3,r3,r12 - vshr.u32 d24,d6,#19 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - vld1.32 {q8},[r14,:128]! - add r4,r4,r2 - vsli.32 d24,d6,#13 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - veor d25,d25,d24 - add r5,r5,r3 - and r2,r2,r9 - vadd.i32 d7,d7,d25 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - vadd.i32 q8,q8,q3 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[r14] - and r12,r12,r3 - add r8,r8,r4 - vst1.32 {q8},[r1,:128]! - add r4,r4,r0,ror#2 - eor r12,r12,r6 - teq r2,#0 @ check for K256 terminator - ldr r2,[sp,#0] - sub r1,r1,#64 - bne .L_00_48 - - ldr r1,[sp,#68] - ldr r0,[sp,#72] - sub r14,r14,#256 @ rewind r14 - teq r1,r0 - it eq - subeq r1,r1,#64 @ avoid SEGV - vld1.8 {q0},[r1]! @ load next input block - vld1.8 {q1},[r1]! - vld1.8 {q2},[r1]! - vld1.8 {q3},[r1]! - it ne - strne r1,[sp,#68] - mov r1,sp - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - add r4,r4,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r8 - eor r12,r0,r8,ror#19 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vrev32.8 q0,q0 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vadd.i32 q8,q8,q0 - ldr r2,[sp,#4] - and r3,r3,r12 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - add r10,r10,r2 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - add r11,r11,r3 - and r2,r2,r7 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - add r10,r10,r2 - ldr r2,[sp,#8] - and r12,r12,r3 - add r6,r6,r10 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - add r9,r9,r2 - eor r2,r7,r8 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - ldr r2,[sp,#12] - and r3,r3,r12 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - add r8,r8,r2 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - add r9,r9,r3 - and r2,r2,r5 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#16] - and r12,r12,r3 - add r4,r4,r8 - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vst1.32 {q8},[r1,:128]! - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - add r8,r8,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r4 - eor r12,r0,r4,ror#19 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vrev32.8 q1,q1 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vadd.i32 q8,q8,q1 - ldr r2,[sp,#20] - and r3,r3,r12 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - add r6,r6,r2 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - add r7,r7,r3 - and r2,r2,r11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - add r6,r6,r2 - ldr r2,[sp,#24] - and r12,r12,r3 - add r10,r10,r6 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - add r5,r5,r2 - eor r2,r11,r4 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - ldr r2,[sp,#28] - and r3,r3,r12 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - add r4,r4,r2 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - add r5,r5,r3 - and r2,r2,r9 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#32] - and r12,r12,r3 - add r8,r8,r4 - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vst1.32 {q8},[r1,:128]! - add r11,r11,r2 - eor r2,r9,r10 - eor r0,r8,r8,ror#5 - add r4,r4,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r8 - eor r12,r0,r8,ror#19 - eor r0,r4,r4,ror#11 - eor r2,r2,r10 - vrev32.8 q2,q2 - add r11,r11,r12,ror#6 - eor r12,r4,r5 - eor r0,r0,r4,ror#20 - add r11,r11,r2 - vadd.i32 q8,q8,q2 - ldr r2,[sp,#36] - and r3,r3,r12 - add r7,r7,r11 - add r11,r11,r0,ror#2 - eor r3,r3,r5 - add r10,r10,r2 - eor r2,r8,r9 - eor r0,r7,r7,ror#5 - add r11,r11,r3 - and r2,r2,r7 - eor r3,r0,r7,ror#19 - eor r0,r11,r11,ror#11 - eor r2,r2,r9 - add r10,r10,r3,ror#6 - eor r3,r11,r4 - eor r0,r0,r11,ror#20 - add r10,r10,r2 - ldr r2,[sp,#40] - and r12,r12,r3 - add r6,r6,r10 - add r10,r10,r0,ror#2 - eor r12,r12,r4 - add r9,r9,r2 - eor r2,r7,r8 - eor r0,r6,r6,ror#5 - add r10,r10,r12 - and r2,r2,r6 - eor r12,r0,r6,ror#19 - eor r0,r10,r10,ror#11 - eor r2,r2,r8 - add r9,r9,r12,ror#6 - eor r12,r10,r11 - eor r0,r0,r10,ror#20 - add r9,r9,r2 - ldr r2,[sp,#44] - and r3,r3,r12 - add r5,r5,r9 - add r9,r9,r0,ror#2 - eor r3,r3,r11 - add r8,r8,r2 - eor r2,r6,r7 - eor r0,r5,r5,ror#5 - add r9,r9,r3 - and r2,r2,r5 - eor r3,r0,r5,ror#19 - eor r0,r9,r9,ror#11 - eor r2,r2,r7 - add r8,r8,r3,ror#6 - eor r3,r9,r10 - eor r0,r0,r9,ror#20 - add r8,r8,r2 - ldr r2,[sp,#48] - and r12,r12,r3 - add r4,r4,r8 - add r8,r8,r0,ror#2 - eor r12,r12,r10 - vst1.32 {q8},[r1,:128]! - add r7,r7,r2 - eor r2,r5,r6 - eor r0,r4,r4,ror#5 - add r8,r8,r12 - vld1.32 {q8},[r14,:128]! - and r2,r2,r4 - eor r12,r0,r4,ror#19 - eor r0,r8,r8,ror#11 - eor r2,r2,r6 - vrev32.8 q3,q3 - add r7,r7,r12,ror#6 - eor r12,r8,r9 - eor r0,r0,r8,ror#20 - add r7,r7,r2 - vadd.i32 q8,q8,q3 - ldr r2,[sp,#52] - and r3,r3,r12 - add r11,r11,r7 - add r7,r7,r0,ror#2 - eor r3,r3,r9 - add r6,r6,r2 - eor r2,r4,r5 - eor r0,r11,r11,ror#5 - add r7,r7,r3 - and r2,r2,r11 - eor r3,r0,r11,ror#19 - eor r0,r7,r7,ror#11 - eor r2,r2,r5 - add r6,r6,r3,ror#6 - eor r3,r7,r8 - eor r0,r0,r7,ror#20 - add r6,r6,r2 - ldr r2,[sp,#56] - and r12,r12,r3 - add r10,r10,r6 - add r6,r6,r0,ror#2 - eor r12,r12,r8 - add r5,r5,r2 - eor r2,r11,r4 - eor r0,r10,r10,ror#5 - add r6,r6,r12 - and r2,r2,r10 - eor r12,r0,r10,ror#19 - eor r0,r6,r6,ror#11 - eor r2,r2,r4 - add r5,r5,r12,ror#6 - eor r12,r6,r7 - eor r0,r0,r6,ror#20 - add r5,r5,r2 - ldr r2,[sp,#60] - and r3,r3,r12 - add r9,r9,r5 - add r5,r5,r0,ror#2 - eor r3,r3,r7 - add r4,r4,r2 - eor r2,r10,r11 - eor r0,r9,r9,ror#5 - add r5,r5,r3 - and r2,r2,r9 - eor r3,r0,r9,ror#19 - eor r0,r5,r5,ror#11 - eor r2,r2,r11 - add r4,r4,r3,ror#6 - eor r3,r5,r6 - eor r0,r0,r5,ror#20 - add r4,r4,r2 - ldr r2,[sp,#64] - and r12,r12,r3 - add r8,r8,r4 - add r4,r4,r0,ror#2 - eor r12,r12,r6 - vst1.32 {q8},[r1,:128]! - ldr r0,[r2,#0] - add r4,r4,r12 @ h+=Maj(a,b,c) from the past - ldr r12,[r2,#4] - ldr r3,[r2,#8] - ldr r1,[r2,#12] - add r4,r4,r0 @ accumulate - ldr r0,[r2,#16] - add r5,r5,r12 - ldr r12,[r2,#20] - add r6,r6,r3 - ldr r3,[r2,#24] - add r7,r7,r1 - ldr r1,[r2,#28] - add r8,r8,r0 - str r4,[r2],#4 - add r9,r9,r12 - str r5,[r2],#4 - add r10,r10,r3 - str r6,[r2],#4 - add r11,r11,r1 - str r7,[r2],#4 - stmia r2,{r8-r11} - - ittte ne - movne r1,sp - ldrne r2,[sp,#0] - eorne r12,r12,r12 - ldreq sp,[sp,#76] @ restore original sp - itt ne - eorne r3,r5,r6 - bne .L_00_48 - - ldmia sp!,{r4-r12,pc} -.size sha256_block_data_order_neon,.-sha256_block_data_order_neon -#endif -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) - -# ifdef __thumb2__ -# define INST(a,b,c,d) .byte c,d|0xc,a,b -# else -# define INST(a,b,c,d) .byte a,b,c,d -# endif - -.type sha256_block_data_order_armv8,%function -.align 5 -sha256_block_data_order_armv8: -.LARMv8: - vld1.32 {q0,q1},[r0] -# ifdef __thumb2__ - adr r3,.LARMv8 - sub r3,r3,#.LARMv8-K256 -# else - adrl r3,K256 -# endif - add r2,r1,r2,lsl#6 @ len to point at the end of inp - -.Loop_v8: - vld1.8 {q8-q9},[r1]! - vld1.8 {q10-q11},[r1]! - vld1.32 {q12},[r3]! - vrev32.8 q8,q8 - vrev32.8 q9,q9 - vrev32.8 q10,q10 - vrev32.8 q11,q11 - vmov q14,q0 @ offload - vmov q15,q1 - teq r1,r2 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - INST(0xe2,0x03,0xfa,0xf3) @ sha256su0 q8,q9 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe6,0x0c,0x64,0xf3) @ sha256su1 q8,q10,q11 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - INST(0xe4,0x23,0xfa,0xf3) @ sha256su0 q9,q10 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe0,0x2c,0x66,0xf3) @ sha256su1 q9,q11,q8 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q10 - INST(0xe6,0x43,0xfa,0xf3) @ sha256su0 q10,q11 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - INST(0xe2,0x4c,0x60,0xf3) @ sha256su1 q10,q8,q9 - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q11 - INST(0xe0,0x63,0xfa,0xf3) @ sha256su0 q11,q8 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - INST(0xe4,0x6c,0x62,0xf3) @ sha256su1 q11,q9,q10 - vld1.32 {q13},[r3]! - vadd.i32 q12,q12,q8 - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - - vld1.32 {q12},[r3]! - vadd.i32 q13,q13,q9 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - - vld1.32 {q13},[r3] - vadd.i32 q12,q12,q10 - sub r3,r3,#256-16 @ rewind - vmov q2,q0 - INST(0x68,0x0c,0x02,0xf3) @ sha256h q0,q1,q12 - INST(0x68,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q12 - - vadd.i32 q13,q13,q11 - vmov q2,q0 - INST(0x6a,0x0c,0x02,0xf3) @ sha256h q0,q1,q13 - INST(0x6a,0x2c,0x14,0xf3) @ sha256h2 q1,q2,q13 - - vadd.i32 q0,q0,q14 - vadd.i32 q1,q1,q15 - it ne - bne .Loop_v8 - - vst1.32 {q0,q1},[r0] - - bx lr @ bx lr -.size sha256_block_data_order_armv8,.-sha256_block_data_order_armv8 -#endif -.asciz "SHA256 block transform for ARMv4/NEON/ARMv8, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha512-armv4.S b/deps/openssl/asm_obsolete/arm-void-gas/sha/sha512-armv4.S deleted file mode 100644 index 1889fc701ac094..00000000000000 --- a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha512-armv4.S +++ /dev/null @@ -1,1775 +0,0 @@ -#include "arm_arch.h" -#ifdef __ARMEL__ -# define LO 0 -# define HI 4 -# define WORD64(hi0,lo0,hi1,lo1) .word lo0,hi0, lo1,hi1 -#else -# define HI 0 -# define LO 4 -# define WORD64(hi0,lo0,hi1,lo1) .word hi0,lo0, hi1,lo1 -#endif - -.text -.code 32 -.type K512,%object -.align 5 -K512: -WORD64(0x428a2f98,0xd728ae22, 0x71374491,0x23ef65cd) -WORD64(0xb5c0fbcf,0xec4d3b2f, 0xe9b5dba5,0x8189dbbc) -WORD64(0x3956c25b,0xf348b538, 0x59f111f1,0xb605d019) -WORD64(0x923f82a4,0xaf194f9b, 0xab1c5ed5,0xda6d8118) -WORD64(0xd807aa98,0xa3030242, 0x12835b01,0x45706fbe) -WORD64(0x243185be,0x4ee4b28c, 0x550c7dc3,0xd5ffb4e2) -WORD64(0x72be5d74,0xf27b896f, 0x80deb1fe,0x3b1696b1) -WORD64(0x9bdc06a7,0x25c71235, 0xc19bf174,0xcf692694) -WORD64(0xe49b69c1,0x9ef14ad2, 0xefbe4786,0x384f25e3) -WORD64(0x0fc19dc6,0x8b8cd5b5, 0x240ca1cc,0x77ac9c65) -WORD64(0x2de92c6f,0x592b0275, 0x4a7484aa,0x6ea6e483) -WORD64(0x5cb0a9dc,0xbd41fbd4, 0x76f988da,0x831153b5) -WORD64(0x983e5152,0xee66dfab, 0xa831c66d,0x2db43210) -WORD64(0xb00327c8,0x98fb213f, 0xbf597fc7,0xbeef0ee4) -WORD64(0xc6e00bf3,0x3da88fc2, 0xd5a79147,0x930aa725) -WORD64(0x06ca6351,0xe003826f, 0x14292967,0x0a0e6e70) -WORD64(0x27b70a85,0x46d22ffc, 0x2e1b2138,0x5c26c926) -WORD64(0x4d2c6dfc,0x5ac42aed, 0x53380d13,0x9d95b3df) -WORD64(0x650a7354,0x8baf63de, 0x766a0abb,0x3c77b2a8) -WORD64(0x81c2c92e,0x47edaee6, 0x92722c85,0x1482353b) -WORD64(0xa2bfe8a1,0x4cf10364, 0xa81a664b,0xbc423001) -WORD64(0xc24b8b70,0xd0f89791, 0xc76c51a3,0x0654be30) -WORD64(0xd192e819,0xd6ef5218, 0xd6990624,0x5565a910) -WORD64(0xf40e3585,0x5771202a, 0x106aa070,0x32bbd1b8) -WORD64(0x19a4c116,0xb8d2d0c8, 0x1e376c08,0x5141ab53) -WORD64(0x2748774c,0xdf8eeb99, 0x34b0bcb5,0xe19b48a8) -WORD64(0x391c0cb3,0xc5c95a63, 0x4ed8aa4a,0xe3418acb) -WORD64(0x5b9cca4f,0x7763e373, 0x682e6ff3,0xd6b2b8a3) -WORD64(0x748f82ee,0x5defb2fc, 0x78a5636f,0x43172f60) -WORD64(0x84c87814,0xa1f0ab72, 0x8cc70208,0x1a6439ec) -WORD64(0x90befffa,0x23631e28, 0xa4506ceb,0xde82bde9) -WORD64(0xbef9a3f7,0xb2c67915, 0xc67178f2,0xe372532b) -WORD64(0xca273ece,0xea26619c, 0xd186b8c7,0x21c0c207) -WORD64(0xeada7dd6,0xcde0eb1e, 0xf57d4f7f,0xee6ed178) -WORD64(0x06f067aa,0x72176fba, 0x0a637dc5,0xa2c898a6) -WORD64(0x113f9804,0xbef90dae, 0x1b710b35,0x131c471b) -WORD64(0x28db77f5,0x23047d84, 0x32caab7b,0x40c72493) -WORD64(0x3c9ebe0a,0x15c9bebc, 0x431d67c4,0x9c100d4c) -WORD64(0x4cc5d4be,0xcb3e42b6, 0x597f299c,0xfc657e2a) -WORD64(0x5fcb6fab,0x3ad6faec, 0x6c44198c,0x4a475817) -.size K512,.-K512 -#if __ARM_MAX_ARCH__>=7 -.LOPENSSL_armcap: -.word OPENSSL_armcap_P-sha512_block_data_order -.skip 32-4 -#else -.skip 32 -#endif - -.global sha512_block_data_order -.type sha512_block_data_order,%function -sha512_block_data_order: - sub r3,pc,#8 @ sha512_block_data_order - add r2,r1,r2,lsl#7 @ len to point at the end of inp -#if __ARM_MAX_ARCH__>=7 - ldr r12,.LOPENSSL_armcap - ldr r12,[r3,r12] @ OPENSSL_armcap_P - tst r12,#1 - bne .LNEON -#endif - stmdb sp!,{r4-r12,lr} - sub r14,r3,#672 @ K512 - sub sp,sp,#9*8 - - ldr r7,[r0,#32+LO] - ldr r8,[r0,#32+HI] - ldr r9, [r0,#48+LO] - ldr r10, [r0,#48+HI] - ldr r11, [r0,#56+LO] - ldr r12, [r0,#56+HI] -.Loop: - str r9, [sp,#48+0] - str r10, [sp,#48+4] - str r11, [sp,#56+0] - str r12, [sp,#56+4] - ldr r5,[r0,#0+LO] - ldr r6,[r0,#0+HI] - ldr r3,[r0,#8+LO] - ldr r4,[r0,#8+HI] - ldr r9, [r0,#16+LO] - ldr r10, [r0,#16+HI] - ldr r11, [r0,#24+LO] - ldr r12, [r0,#24+HI] - str r3,[sp,#8+0] - str r4,[sp,#8+4] - str r9, [sp,#16+0] - str r10, [sp,#16+4] - str r11, [sp,#24+0] - str r12, [sp,#24+4] - ldr r3,[r0,#40+LO] - ldr r4,[r0,#40+HI] - str r3,[sp,#40+0] - str r4,[sp,#40+4] - -.L00_15: -#if __ARM_ARCH__<7 - ldrb r3,[r1,#7] - ldrb r9, [r1,#6] - ldrb r10, [r1,#5] - ldrb r11, [r1,#4] - ldrb r4,[r1,#3] - ldrb r12, [r1,#2] - orr r3,r3,r9,lsl#8 - ldrb r9, [r1,#1] - orr r3,r3,r10,lsl#16 - ldrb r10, [r1],#8 - orr r3,r3,r11,lsl#24 - orr r4,r4,r12,lsl#8 - orr r4,r4,r9,lsl#16 - orr r4,r4,r10,lsl#24 -#else - ldr r3,[r1,#4] - ldr r4,[r1],#8 -#ifdef __ARMEL__ - rev r3,r3 - rev r4,r4 -#endif -#endif - @ Sigma1(x) (ROTR((x),14) ^ ROTR((x),18) ^ ROTR((x),41)) - @ LO lo>>14^hi<<18 ^ lo>>18^hi<<14 ^ hi>>9^lo<<23 - @ HI hi>>14^lo<<18 ^ hi>>18^lo<<14 ^ lo>>9^hi<<23 - mov r9,r7,lsr#14 - str r3,[sp,#64+0] - mov r10,r8,lsr#14 - str r4,[sp,#64+4] - eor r9,r9,r8,lsl#18 - ldr r11,[sp,#56+0] @ h.lo - eor r10,r10,r7,lsl#18 - ldr r12,[sp,#56+4] @ h.hi - eor r9,r9,r7,lsr#18 - eor r10,r10,r8,lsr#18 - eor r9,r9,r8,lsl#14 - eor r10,r10,r7,lsl#14 - eor r9,r9,r8,lsr#9 - eor r10,r10,r7,lsr#9 - eor r9,r9,r7,lsl#23 - eor r10,r10,r8,lsl#23 @ Sigma1(e) - adds r3,r3,r9 - ldr r9,[sp,#40+0] @ f.lo - adc r4,r4,r10 @ T += Sigma1(e) - ldr r10,[sp,#40+4] @ f.hi - adds r3,r3,r11 - ldr r11,[sp,#48+0] @ g.lo - adc r4,r4,r12 @ T += h - ldr r12,[sp,#48+4] @ g.hi - - eor r9,r9,r11 - str r7,[sp,#32+0] - eor r10,r10,r12 - str r8,[sp,#32+4] - and r9,r9,r7 - str r5,[sp,#0+0] - and r10,r10,r8 - str r6,[sp,#0+4] - eor r9,r9,r11 - ldr r11,[r14,#LO] @ K[i].lo - eor r10,r10,r12 @ Ch(e,f,g) - ldr r12,[r14,#HI] @ K[i].hi - - adds r3,r3,r9 - ldr r7,[sp,#24+0] @ d.lo - adc r4,r4,r10 @ T += Ch(e,f,g) - ldr r8,[sp,#24+4] @ d.hi - adds r3,r3,r11 - and r9,r11,#0xff - adc r4,r4,r12 @ T += K[i] - adds r7,r7,r3 - ldr r11,[sp,#8+0] @ b.lo - adc r8,r8,r4 @ d += T - teq r9,#148 - - ldr r12,[sp,#16+0] @ c.lo - orreq r14,r14,#1 - @ Sigma0(x) (ROTR((x),28) ^ ROTR((x),34) ^ ROTR((x),39)) - @ LO lo>>28^hi<<4 ^ hi>>2^lo<<30 ^ hi>>7^lo<<25 - @ HI hi>>28^lo<<4 ^ lo>>2^hi<<30 ^ lo>>7^hi<<25 - mov r9,r5,lsr#28 - mov r10,r6,lsr#28 - eor r9,r9,r6,lsl#4 - eor r10,r10,r5,lsl#4 - eor r9,r9,r6,lsr#2 - eor r10,r10,r5,lsr#2 - eor r9,r9,r5,lsl#30 - eor r10,r10,r6,lsl#30 - eor r9,r9,r6,lsr#7 - eor r10,r10,r5,lsr#7 - eor r9,r9,r5,lsl#25 - eor r10,r10,r6,lsl#25 @ Sigma0(a) - adds r3,r3,r9 - and r9,r5,r11 - adc r4,r4,r10 @ T += Sigma0(a) - - ldr r10,[sp,#8+4] @ b.hi - orr r5,r5,r11 - ldr r11,[sp,#16+4] @ c.hi - and r5,r5,r12 - and r12,r6,r10 - orr r6,r6,r10 - orr r5,r5,r9 @ Maj(a,b,c).lo - and r6,r6,r11 - adds r5,r5,r3 - orr r6,r6,r12 @ Maj(a,b,c).hi - sub sp,sp,#8 - adc r6,r6,r4 @ h += T - tst r14,#1 - add r14,r14,#8 - tst r14,#1 - beq .L00_15 - ldr r9,[sp,#184+0] - ldr r10,[sp,#184+4] - bic r14,r14,#1 -.L16_79: - @ sigma0(x) (ROTR((x),1) ^ ROTR((x),8) ^ ((x)>>7)) - @ LO lo>>1^hi<<31 ^ lo>>8^hi<<24 ^ lo>>7^hi<<25 - @ HI hi>>1^lo<<31 ^ hi>>8^lo<<24 ^ hi>>7 - mov r3,r9,lsr#1 - ldr r11,[sp,#80+0] - mov r4,r10,lsr#1 - ldr r12,[sp,#80+4] - eor r3,r3,r10,lsl#31 - eor r4,r4,r9,lsl#31 - eor r3,r3,r9,lsr#8 - eor r4,r4,r10,lsr#8 - eor r3,r3,r10,lsl#24 - eor r4,r4,r9,lsl#24 - eor r3,r3,r9,lsr#7 - eor r4,r4,r10,lsr#7 - eor r3,r3,r10,lsl#25 - - @ sigma1(x) (ROTR((x),19) ^ ROTR((x),61) ^ ((x)>>6)) - @ LO lo>>19^hi<<13 ^ hi>>29^lo<<3 ^ lo>>6^hi<<26 - @ HI hi>>19^lo<<13 ^ lo>>29^hi<<3 ^ hi>>6 - mov r9,r11,lsr#19 - mov r10,r12,lsr#19 - eor r9,r9,r12,lsl#13 - eor r10,r10,r11,lsl#13 - eor r9,r9,r12,lsr#29 - eor r10,r10,r11,lsr#29 - eor r9,r9,r11,lsl#3 - eor r10,r10,r12,lsl#3 - eor r9,r9,r11,lsr#6 - eor r10,r10,r12,lsr#6 - ldr r11,[sp,#120+0] - eor r9,r9,r12,lsl#26 - - ldr r12,[sp,#120+4] - adds r3,r3,r9 - ldr r9,[sp,#192+0] - adc r4,r4,r10 - - ldr r10,[sp,#192+4] - adds r3,r3,r11 - adc r4,r4,r12 - adds r3,r3,r9 - adc r4,r4,r10 - @ Sigma1(x) (ROTR((x),14) ^ ROTR((x),18) ^ ROTR((x),41)) - @ LO lo>>14^hi<<18 ^ lo>>18^hi<<14 ^ hi>>9^lo<<23 - @ HI hi>>14^lo<<18 ^ hi>>18^lo<<14 ^ lo>>9^hi<<23 - mov r9,r7,lsr#14 - str r3,[sp,#64+0] - mov r10,r8,lsr#14 - str r4,[sp,#64+4] - eor r9,r9,r8,lsl#18 - ldr r11,[sp,#56+0] @ h.lo - eor r10,r10,r7,lsl#18 - ldr r12,[sp,#56+4] @ h.hi - eor r9,r9,r7,lsr#18 - eor r10,r10,r8,lsr#18 - eor r9,r9,r8,lsl#14 - eor r10,r10,r7,lsl#14 - eor r9,r9,r8,lsr#9 - eor r10,r10,r7,lsr#9 - eor r9,r9,r7,lsl#23 - eor r10,r10,r8,lsl#23 @ Sigma1(e) - adds r3,r3,r9 - ldr r9,[sp,#40+0] @ f.lo - adc r4,r4,r10 @ T += Sigma1(e) - ldr r10,[sp,#40+4] @ f.hi - adds r3,r3,r11 - ldr r11,[sp,#48+0] @ g.lo - adc r4,r4,r12 @ T += h - ldr r12,[sp,#48+4] @ g.hi - - eor r9,r9,r11 - str r7,[sp,#32+0] - eor r10,r10,r12 - str r8,[sp,#32+4] - and r9,r9,r7 - str r5,[sp,#0+0] - and r10,r10,r8 - str r6,[sp,#0+4] - eor r9,r9,r11 - ldr r11,[r14,#LO] @ K[i].lo - eor r10,r10,r12 @ Ch(e,f,g) - ldr r12,[r14,#HI] @ K[i].hi - - adds r3,r3,r9 - ldr r7,[sp,#24+0] @ d.lo - adc r4,r4,r10 @ T += Ch(e,f,g) - ldr r8,[sp,#24+4] @ d.hi - adds r3,r3,r11 - and r9,r11,#0xff - adc r4,r4,r12 @ T += K[i] - adds r7,r7,r3 - ldr r11,[sp,#8+0] @ b.lo - adc r8,r8,r4 @ d += T - teq r9,#23 - - ldr r12,[sp,#16+0] @ c.lo - orreq r14,r14,#1 - @ Sigma0(x) (ROTR((x),28) ^ ROTR((x),34) ^ ROTR((x),39)) - @ LO lo>>28^hi<<4 ^ hi>>2^lo<<30 ^ hi>>7^lo<<25 - @ HI hi>>28^lo<<4 ^ lo>>2^hi<<30 ^ lo>>7^hi<<25 - mov r9,r5,lsr#28 - mov r10,r6,lsr#28 - eor r9,r9,r6,lsl#4 - eor r10,r10,r5,lsl#4 - eor r9,r9,r6,lsr#2 - eor r10,r10,r5,lsr#2 - eor r9,r9,r5,lsl#30 - eor r10,r10,r6,lsl#30 - eor r9,r9,r6,lsr#7 - eor r10,r10,r5,lsr#7 - eor r9,r9,r5,lsl#25 - eor r10,r10,r6,lsl#25 @ Sigma0(a) - adds r3,r3,r9 - and r9,r5,r11 - adc r4,r4,r10 @ T += Sigma0(a) - - ldr r10,[sp,#8+4] @ b.hi - orr r5,r5,r11 - ldr r11,[sp,#16+4] @ c.hi - and r5,r5,r12 - and r12,r6,r10 - orr r6,r6,r10 - orr r5,r5,r9 @ Maj(a,b,c).lo - and r6,r6,r11 - adds r5,r5,r3 - orr r6,r6,r12 @ Maj(a,b,c).hi - sub sp,sp,#8 - adc r6,r6,r4 @ h += T - tst r14,#1 - add r14,r14,#8 - ldreq r9,[sp,#184+0] - ldreq r10,[sp,#184+4] - beq .L16_79 - bic r14,r14,#1 - - ldr r3,[sp,#8+0] - ldr r4,[sp,#8+4] - ldr r9, [r0,#0+LO] - ldr r10, [r0,#0+HI] - ldr r11, [r0,#8+LO] - ldr r12, [r0,#8+HI] - adds r9,r5,r9 - str r9, [r0,#0+LO] - adc r10,r6,r10 - str r10, [r0,#0+HI] - adds r11,r3,r11 - str r11, [r0,#8+LO] - adc r12,r4,r12 - str r12, [r0,#8+HI] - - ldr r5,[sp,#16+0] - ldr r6,[sp,#16+4] - ldr r3,[sp,#24+0] - ldr r4,[sp,#24+4] - ldr r9, [r0,#16+LO] - ldr r10, [r0,#16+HI] - ldr r11, [r0,#24+LO] - ldr r12, [r0,#24+HI] - adds r9,r5,r9 - str r9, [r0,#16+LO] - adc r10,r6,r10 - str r10, [r0,#16+HI] - adds r11,r3,r11 - str r11, [r0,#24+LO] - adc r12,r4,r12 - str r12, [r0,#24+HI] - - ldr r3,[sp,#40+0] - ldr r4,[sp,#40+4] - ldr r9, [r0,#32+LO] - ldr r10, [r0,#32+HI] - ldr r11, [r0,#40+LO] - ldr r12, [r0,#40+HI] - adds r7,r7,r9 - str r7,[r0,#32+LO] - adc r8,r8,r10 - str r8,[r0,#32+HI] - adds r11,r3,r11 - str r11, [r0,#40+LO] - adc r12,r4,r12 - str r12, [r0,#40+HI] - - ldr r5,[sp,#48+0] - ldr r6,[sp,#48+4] - ldr r3,[sp,#56+0] - ldr r4,[sp,#56+4] - ldr r9, [r0,#48+LO] - ldr r10, [r0,#48+HI] - ldr r11, [r0,#56+LO] - ldr r12, [r0,#56+HI] - adds r9,r5,r9 - str r9, [r0,#48+LO] - adc r10,r6,r10 - str r10, [r0,#48+HI] - adds r11,r3,r11 - str r11, [r0,#56+LO] - adc r12,r4,r12 - str r12, [r0,#56+HI] - - add sp,sp,#640 - sub r14,r14,#640 - - teq r1,r2 - bne .Loop - - add sp,sp,#8*9 @ destroy frame -#if __ARM_ARCH__>=5 - ldmia sp!,{r4-r12,pc} -#else - ldmia sp!,{r4-r12,lr} - tst lr,#1 - moveq pc,lr @ be binary compatible with V4, yet - .word 0xe12fff1e @ interoperable with Thumb ISA:-) -#endif -#if __ARM_MAX_ARCH__>=7 -.arch armv7-a -.fpu neon - -.align 4 -.LNEON: - dmb @ errata #451034 on early Cortex A8 - vstmdb sp!,{d8-d15} @ ABI specification says so - sub r3,r3,#672 @ K512 - vldmia r0,{d16-d23} @ load context -.Loop_neon: - vshr.u64 d24,d20,#14 @ 0 -#if 0<16 - vld1.64 {d0},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d20,#18 -#if 0>0 - vadd.i64 d16,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d20,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 0<16 && defined(__ARMEL__) - vrev64.8 d0,d0 -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d0 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 1 -#if 1<16 - vld1.64 {d1},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 1>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 1<16 && defined(__ARMEL__) - vrev64.8 d1,d1 -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d1 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 d24,d18,#14 @ 2 -#if 2<16 - vld1.64 {d2},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d18,#18 -#if 2>0 - vadd.i64 d22,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d18,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 2<16 && defined(__ARMEL__) - vrev64.8 d2,d2 -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d2 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 3 -#if 3<16 - vld1.64 {d3},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 3>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 3<16 && defined(__ARMEL__) - vrev64.8 d3,d3 -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d3 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 d24,d16,#14 @ 4 -#if 4<16 - vld1.64 {d4},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d16,#18 -#if 4>0 - vadd.i64 d20,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d16,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 4<16 && defined(__ARMEL__) - vrev64.8 d4,d4 -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d4 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 5 -#if 5<16 - vld1.64 {d5},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 5>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 5<16 && defined(__ARMEL__) - vrev64.8 d5,d5 -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d5 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 d24,d22,#14 @ 6 -#if 6<16 - vld1.64 {d6},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d22,#18 -#if 6>0 - vadd.i64 d18,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d22,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 6<16 && defined(__ARMEL__) - vrev64.8 d6,d6 -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d6 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 7 -#if 7<16 - vld1.64 {d7},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 7>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 7<16 && defined(__ARMEL__) - vrev64.8 d7,d7 -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d7 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - vshr.u64 d24,d20,#14 @ 8 -#if 8<16 - vld1.64 {d8},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d20,#18 -#if 8>0 - vadd.i64 d16,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d20,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 8<16 && defined(__ARMEL__) - vrev64.8 d8,d8 -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d8 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 9 -#if 9<16 - vld1.64 {d9},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 9>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 9<16 && defined(__ARMEL__) - vrev64.8 d9,d9 -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d9 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 d24,d18,#14 @ 10 -#if 10<16 - vld1.64 {d10},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d18,#18 -#if 10>0 - vadd.i64 d22,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d18,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 10<16 && defined(__ARMEL__) - vrev64.8 d10,d10 -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d10 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 11 -#if 11<16 - vld1.64 {d11},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 11>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 11<16 && defined(__ARMEL__) - vrev64.8 d11,d11 -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d11 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 d24,d16,#14 @ 12 -#if 12<16 - vld1.64 {d12},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d16,#18 -#if 12>0 - vadd.i64 d20,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d16,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 12<16 && defined(__ARMEL__) - vrev64.8 d12,d12 -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d12 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 13 -#if 13<16 - vld1.64 {d13},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 13>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 13<16 && defined(__ARMEL__) - vrev64.8 d13,d13 -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d13 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 d24,d22,#14 @ 14 -#if 14<16 - vld1.64 {d14},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d22,#18 -#if 14>0 - vadd.i64 d18,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d22,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 14<16 && defined(__ARMEL__) - vrev64.8 d14,d14 -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d14 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 15 -#if 15<16 - vld1.64 {d15},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 15>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 15<16 && defined(__ARMEL__) - vrev64.8 d15,d15 -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d15 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - mov r12,#4 -.L16_79_neon: - subs r12,#1 - vshr.u64 q12,q7,#19 - vshr.u64 q13,q7,#61 - vadd.i64 d16,d30 @ h+=Maj from the past - vshr.u64 q15,q7,#6 - vsli.64 q12,q7,#45 - vext.8 q14,q0,q1,#8 @ X[i+1] - vsli.64 q13,q7,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q0,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q4,q5,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d20,#14 @ from NEON_00_15 - vadd.i64 q0,q14 - vshr.u64 d25,d20,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d20,#41 @ from NEON_00_15 - vadd.i64 q0,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 16<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d0 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 17 -#if 17<16 - vld1.64 {d1},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 17>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 17<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d1 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 q12,q0,#19 - vshr.u64 q13,q0,#61 - vadd.i64 d22,d30 @ h+=Maj from the past - vshr.u64 q15,q0,#6 - vsli.64 q12,q0,#45 - vext.8 q14,q1,q2,#8 @ X[i+1] - vsli.64 q13,q0,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q1,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q5,q6,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d18,#14 @ from NEON_00_15 - vadd.i64 q1,q14 - vshr.u64 d25,d18,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d18,#41 @ from NEON_00_15 - vadd.i64 q1,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 18<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d2 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 19 -#if 19<16 - vld1.64 {d3},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 19>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 19<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d3 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 q12,q1,#19 - vshr.u64 q13,q1,#61 - vadd.i64 d20,d30 @ h+=Maj from the past - vshr.u64 q15,q1,#6 - vsli.64 q12,q1,#45 - vext.8 q14,q2,q3,#8 @ X[i+1] - vsli.64 q13,q1,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q2,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q6,q7,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d16,#14 @ from NEON_00_15 - vadd.i64 q2,q14 - vshr.u64 d25,d16,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d16,#41 @ from NEON_00_15 - vadd.i64 q2,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 20<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d4 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 21 -#if 21<16 - vld1.64 {d5},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 21>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 21<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d5 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 q12,q2,#19 - vshr.u64 q13,q2,#61 - vadd.i64 d18,d30 @ h+=Maj from the past - vshr.u64 q15,q2,#6 - vsli.64 q12,q2,#45 - vext.8 q14,q3,q4,#8 @ X[i+1] - vsli.64 q13,q2,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q3,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q7,q0,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d22,#14 @ from NEON_00_15 - vadd.i64 q3,q14 - vshr.u64 d25,d22,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d22,#41 @ from NEON_00_15 - vadd.i64 q3,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 22<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d6 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 23 -#if 23<16 - vld1.64 {d7},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 23>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 23<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d7 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - vshr.u64 q12,q3,#19 - vshr.u64 q13,q3,#61 - vadd.i64 d16,d30 @ h+=Maj from the past - vshr.u64 q15,q3,#6 - vsli.64 q12,q3,#45 - vext.8 q14,q4,q5,#8 @ X[i+1] - vsli.64 q13,q3,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q4,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q0,q1,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d20,#14 @ from NEON_00_15 - vadd.i64 q4,q14 - vshr.u64 d25,d20,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d20,#41 @ from NEON_00_15 - vadd.i64 q4,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d20,#50 - vsli.64 d25,d20,#46 - vmov d29,d20 - vsli.64 d26,d20,#23 -#if 24<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d21,d22 @ Ch(e,f,g) - vshr.u64 d24,d16,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d23 - vshr.u64 d25,d16,#34 - vsli.64 d24,d16,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d16,#39 - vadd.i64 d28,d8 - vsli.64 d25,d16,#30 - veor d30,d16,d17 - vsli.64 d26,d16,#25 - veor d23,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d18,d17 @ Maj(a,b,c) - veor d23,d26 @ Sigma0(a) - vadd.i64 d19,d27 - vadd.i64 d30,d27 - @ vadd.i64 d23,d30 - vshr.u64 d24,d19,#14 @ 25 -#if 25<16 - vld1.64 {d9},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d19,#18 -#if 25>0 - vadd.i64 d23,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d19,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d19,#50 - vsli.64 d25,d19,#46 - vmov d29,d19 - vsli.64 d26,d19,#23 -#if 25<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d20,d21 @ Ch(e,f,g) - vshr.u64 d24,d23,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d22 - vshr.u64 d25,d23,#34 - vsli.64 d24,d23,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d23,#39 - vadd.i64 d28,d9 - vsli.64 d25,d23,#30 - veor d30,d23,d16 - vsli.64 d26,d23,#25 - veor d22,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d17,d16 @ Maj(a,b,c) - veor d22,d26 @ Sigma0(a) - vadd.i64 d18,d27 - vadd.i64 d30,d27 - @ vadd.i64 d22,d30 - vshr.u64 q12,q4,#19 - vshr.u64 q13,q4,#61 - vadd.i64 d22,d30 @ h+=Maj from the past - vshr.u64 q15,q4,#6 - vsli.64 q12,q4,#45 - vext.8 q14,q5,q6,#8 @ X[i+1] - vsli.64 q13,q4,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q5,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q1,q2,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d18,#14 @ from NEON_00_15 - vadd.i64 q5,q14 - vshr.u64 d25,d18,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d18,#41 @ from NEON_00_15 - vadd.i64 q5,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d18,#50 - vsli.64 d25,d18,#46 - vmov d29,d18 - vsli.64 d26,d18,#23 -#if 26<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d19,d20 @ Ch(e,f,g) - vshr.u64 d24,d22,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d21 - vshr.u64 d25,d22,#34 - vsli.64 d24,d22,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d22,#39 - vadd.i64 d28,d10 - vsli.64 d25,d22,#30 - veor d30,d22,d23 - vsli.64 d26,d22,#25 - veor d21,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d16,d23 @ Maj(a,b,c) - veor d21,d26 @ Sigma0(a) - vadd.i64 d17,d27 - vadd.i64 d30,d27 - @ vadd.i64 d21,d30 - vshr.u64 d24,d17,#14 @ 27 -#if 27<16 - vld1.64 {d11},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d17,#18 -#if 27>0 - vadd.i64 d21,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d17,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d17,#50 - vsli.64 d25,d17,#46 - vmov d29,d17 - vsli.64 d26,d17,#23 -#if 27<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d18,d19 @ Ch(e,f,g) - vshr.u64 d24,d21,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d20 - vshr.u64 d25,d21,#34 - vsli.64 d24,d21,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d21,#39 - vadd.i64 d28,d11 - vsli.64 d25,d21,#30 - veor d30,d21,d22 - vsli.64 d26,d21,#25 - veor d20,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d23,d22 @ Maj(a,b,c) - veor d20,d26 @ Sigma0(a) - vadd.i64 d16,d27 - vadd.i64 d30,d27 - @ vadd.i64 d20,d30 - vshr.u64 q12,q5,#19 - vshr.u64 q13,q5,#61 - vadd.i64 d20,d30 @ h+=Maj from the past - vshr.u64 q15,q5,#6 - vsli.64 q12,q5,#45 - vext.8 q14,q6,q7,#8 @ X[i+1] - vsli.64 q13,q5,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q6,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q2,q3,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d16,#14 @ from NEON_00_15 - vadd.i64 q6,q14 - vshr.u64 d25,d16,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d16,#41 @ from NEON_00_15 - vadd.i64 q6,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d16,#50 - vsli.64 d25,d16,#46 - vmov d29,d16 - vsli.64 d26,d16,#23 -#if 28<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d17,d18 @ Ch(e,f,g) - vshr.u64 d24,d20,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d19 - vshr.u64 d25,d20,#34 - vsli.64 d24,d20,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d20,#39 - vadd.i64 d28,d12 - vsli.64 d25,d20,#30 - veor d30,d20,d21 - vsli.64 d26,d20,#25 - veor d19,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d22,d21 @ Maj(a,b,c) - veor d19,d26 @ Sigma0(a) - vadd.i64 d23,d27 - vadd.i64 d30,d27 - @ vadd.i64 d19,d30 - vshr.u64 d24,d23,#14 @ 29 -#if 29<16 - vld1.64 {d13},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d23,#18 -#if 29>0 - vadd.i64 d19,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d23,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d23,#50 - vsli.64 d25,d23,#46 - vmov d29,d23 - vsli.64 d26,d23,#23 -#if 29<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d16,d17 @ Ch(e,f,g) - vshr.u64 d24,d19,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d18 - vshr.u64 d25,d19,#34 - vsli.64 d24,d19,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d19,#39 - vadd.i64 d28,d13 - vsli.64 d25,d19,#30 - veor d30,d19,d20 - vsli.64 d26,d19,#25 - veor d18,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d21,d20 @ Maj(a,b,c) - veor d18,d26 @ Sigma0(a) - vadd.i64 d22,d27 - vadd.i64 d30,d27 - @ vadd.i64 d18,d30 - vshr.u64 q12,q6,#19 - vshr.u64 q13,q6,#61 - vadd.i64 d18,d30 @ h+=Maj from the past - vshr.u64 q15,q6,#6 - vsli.64 q12,q6,#45 - vext.8 q14,q7,q0,#8 @ X[i+1] - vsli.64 q13,q6,#3 - veor q15,q12 - vshr.u64 q12,q14,#1 - veor q15,q13 @ sigma1(X[i+14]) - vshr.u64 q13,q14,#8 - vadd.i64 q7,q15 - vshr.u64 q15,q14,#7 - vsli.64 q12,q14,#63 - vsli.64 q13,q14,#56 - vext.8 q14,q3,q4,#8 @ X[i+9] - veor q15,q12 - vshr.u64 d24,d22,#14 @ from NEON_00_15 - vadd.i64 q7,q14 - vshr.u64 d25,d22,#18 @ from NEON_00_15 - veor q15,q13 @ sigma0(X[i+1]) - vshr.u64 d26,d22,#41 @ from NEON_00_15 - vadd.i64 q7,q15 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d22,#50 - vsli.64 d25,d22,#46 - vmov d29,d22 - vsli.64 d26,d22,#23 -#if 30<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d23,d16 @ Ch(e,f,g) - vshr.u64 d24,d18,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d17 - vshr.u64 d25,d18,#34 - vsli.64 d24,d18,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d18,#39 - vadd.i64 d28,d14 - vsli.64 d25,d18,#30 - veor d30,d18,d19 - vsli.64 d26,d18,#25 - veor d17,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d20,d19 @ Maj(a,b,c) - veor d17,d26 @ Sigma0(a) - vadd.i64 d21,d27 - vadd.i64 d30,d27 - @ vadd.i64 d17,d30 - vshr.u64 d24,d21,#14 @ 31 -#if 31<16 - vld1.64 {d15},[r1]! @ handles unaligned -#endif - vshr.u64 d25,d21,#18 -#if 31>0 - vadd.i64 d17,d30 @ h+=Maj from the past -#endif - vshr.u64 d26,d21,#41 - vld1.64 {d28},[r3,:64]! @ K[i++] - vsli.64 d24,d21,#50 - vsli.64 d25,d21,#46 - vmov d29,d21 - vsli.64 d26,d21,#23 -#if 31<16 && defined(__ARMEL__) - vrev64.8 , -#endif - veor d25,d24 - vbsl d29,d22,d23 @ Ch(e,f,g) - vshr.u64 d24,d17,#28 - veor d26,d25 @ Sigma1(e) - vadd.i64 d27,d29,d16 - vshr.u64 d25,d17,#34 - vsli.64 d24,d17,#36 - vadd.i64 d27,d26 - vshr.u64 d26,d17,#39 - vadd.i64 d28,d15 - vsli.64 d25,d17,#30 - veor d30,d17,d18 - vsli.64 d26,d17,#25 - veor d16,d24,d25 - vadd.i64 d27,d28 - vbsl d30,d19,d18 @ Maj(a,b,c) - veor d16,d26 @ Sigma0(a) - vadd.i64 d20,d27 - vadd.i64 d30,d27 - @ vadd.i64 d16,d30 - bne .L16_79_neon - - vadd.i64 d16,d30 @ h+=Maj from the past - vldmia r0,{d24-d31} @ load context to temp - vadd.i64 q8,q12 @ vectorized accumulate - vadd.i64 q9,q13 - vadd.i64 q10,q14 - vadd.i64 q11,q15 - vstmia r0,{d16-d23} @ save context - teq r1,r2 - sub r3,#640 @ rewind K512 - bne .Loop_neon - - vldmia sp!,{d8-d15} @ epilogue - bx lr @ .word 0xe12fff1e -#endif -.size sha512_block_data_order,.-sha512_block_data_order -.asciz "SHA512 block transform for ARMv4/NEON, CRYPTOGAMS by " -.align 2 -#if __ARM_MAX_ARCH__>=7 -.comm OPENSSL_armcap_P,4,4 -#endif diff --git a/deps/openssl/asm_obsolete/arm64-linux64-gas/aes/aesv8-armx.S b/deps/openssl/asm_obsolete/arm64-linux64-gas/aes/aesv8-armx.S deleted file mode 100644 index f5dd6cbb86234e..00000000000000 --- a/deps/openssl/asm_obsolete/arm64-linux64-gas/aes/aesv8-armx.S +++ /dev/null @@ -1,747 +0,0 @@ -#include "arm_arch.h" - -#if __ARM_MAX_ARCH__>=7 -.text -.arch armv8-a+crypto -.align 5 -rcon: -.long 0x01,0x01,0x01,0x01 -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d // rotate-n-splat -.long 0x1b,0x1b,0x1b,0x1b - -.globl aes_v8_set_encrypt_key -.type aes_v8_set_encrypt_key,%function -.align 5 -aes_v8_set_encrypt_key: -.Lenc_key: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - mov x3,#-1 - cmp x0,#0 - b.eq .Lenc_key_abort - cmp x2,#0 - b.eq .Lenc_key_abort - mov x3,#-2 - cmp w1,#128 - b.lt .Lenc_key_abort - cmp w1,#256 - b.gt .Lenc_key_abort - tst w1,#0x3f - b.ne .Lenc_key_abort - - adr x3,rcon - cmp w1,#192 - - eor v0.16b,v0.16b,v0.16b - ld1 {v3.16b},[x0],#16 - mov w1,#8 // reuse w1 - ld1 {v1.4s,v2.4s},[x3],#32 - - b.lt .Loop128 - b.eq .L192 - b .L256 - -.align 4 -.Loop128: - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - b.ne .Loop128 - - ld1 {v1.4s},[x3] - - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - - tbl v6.16b,{v3.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v3.4s},[x2],#16 - aese v6.16b,v0.16b - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - eor v3.16b,v3.16b,v6.16b - st1 {v3.4s},[x2] - add x2,x2,#0x50 - - mov w12,#10 - b .Ldone - -.align 4 -.L192: - ld1 {v4.8b},[x0],#8 - movi v6.16b,#8 // borrow v6.16b - st1 {v3.4s},[x2],#16 - sub v2.16b,v2.16b,v6.16b // adjust the mask - -.Loop192: - tbl v6.16b,{v4.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v4.8b},[x2],#8 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - - dup v5.4s,v3.s[3] - eor v5.16b,v5.16b,v4.16b - eor v6.16b,v6.16b,v1.16b - ext v4.16b,v0.16b,v4.16b,#12 - shl v1.16b,v1.16b,#1 - eor v4.16b,v4.16b,v5.16b - eor v3.16b,v3.16b,v6.16b - eor v4.16b,v4.16b,v6.16b - st1 {v3.4s},[x2],#16 - b.ne .Loop192 - - mov w12,#12 - add x2,x2,#0x20 - b .Ldone - -.align 4 -.L256: - ld1 {v4.16b},[x0] - mov w1,#7 - mov w12,#14 - st1 {v3.4s},[x2],#16 - -.Loop256: - tbl v6.16b,{v4.16b},v2.16b - ext v5.16b,v0.16b,v3.16b,#12 - st1 {v4.4s},[x2],#16 - aese v6.16b,v0.16b - subs w1,w1,#1 - - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v3.16b,v3.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v6.16b,v6.16b,v1.16b - eor v3.16b,v3.16b,v5.16b - shl v1.16b,v1.16b,#1 - eor v3.16b,v3.16b,v6.16b - st1 {v3.4s},[x2],#16 - b.eq .Ldone - - dup v6.4s,v3.s[3] // just splat - ext v5.16b,v0.16b,v4.16b,#12 - aese v6.16b,v0.16b - - eor v4.16b,v4.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v4.16b,v4.16b,v5.16b - ext v5.16b,v0.16b,v5.16b,#12 - eor v4.16b,v4.16b,v5.16b - - eor v4.16b,v4.16b,v6.16b - b .Loop256 - -.Ldone: - str w12,[x2] - mov x3,#0 - -.Lenc_key_abort: - mov x0,x3 // return value - ldr x29,[sp],#16 - ret -.size aes_v8_set_encrypt_key,.-aes_v8_set_encrypt_key - -.globl aes_v8_set_decrypt_key -.type aes_v8_set_decrypt_key,%function -.align 5 -aes_v8_set_decrypt_key: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - bl .Lenc_key - - cmp x0,#0 - b.ne .Ldec_key_abort - - sub x2,x2,#240 // restore original x2 - mov x4,#-16 - add x0,x2,x12,lsl#4 // end of key schedule - - ld1 {v0.4s},[x2] - ld1 {v1.4s},[x0] - st1 {v0.4s},[x0],x4 - st1 {v1.4s},[x2],#16 - -.Loop_imc: - ld1 {v0.4s},[x2] - ld1 {v1.4s},[x0] - aesimc v0.16b,v0.16b - aesimc v1.16b,v1.16b - st1 {v0.4s},[x0],x4 - st1 {v1.4s},[x2],#16 - cmp x0,x2 - b.hi .Loop_imc - - ld1 {v0.4s},[x2] - aesimc v0.16b,v0.16b - st1 {v0.4s},[x0] - - eor x0,x0,x0 // return value -.Ldec_key_abort: - ldp x29,x30,[sp],#16 - ret -.size aes_v8_set_decrypt_key,.-aes_v8_set_decrypt_key -.globl aes_v8_encrypt -.type aes_v8_encrypt,%function -.align 5 -aes_v8_encrypt: - ldr w3,[x2,#240] - ld1 {v0.4s},[x2],#16 - ld1 {v2.16b},[x0] - sub w3,w3,#2 - ld1 {v1.4s},[x2],#16 - -.Loop_enc: - aese v2.16b,v0.16b - aesmc v2.16b,v2.16b - ld1 {v0.4s},[x2],#16 - subs w3,w3,#2 - aese v2.16b,v1.16b - aesmc v2.16b,v2.16b - ld1 {v1.4s},[x2],#16 - b.gt .Loop_enc - - aese v2.16b,v0.16b - aesmc v2.16b,v2.16b - ld1 {v0.4s},[x2] - aese v2.16b,v1.16b - eor v2.16b,v2.16b,v0.16b - - st1 {v2.16b},[x1] - ret -.size aes_v8_encrypt,.-aes_v8_encrypt -.globl aes_v8_decrypt -.type aes_v8_decrypt,%function -.align 5 -aes_v8_decrypt: - ldr w3,[x2,#240] - ld1 {v0.4s},[x2],#16 - ld1 {v2.16b},[x0] - sub w3,w3,#2 - ld1 {v1.4s},[x2],#16 - -.Loop_dec: - aesd v2.16b,v0.16b - aesimc v2.16b,v2.16b - ld1 {v0.4s},[x2],#16 - subs w3,w3,#2 - aesd v2.16b,v1.16b - aesimc v2.16b,v2.16b - ld1 {v1.4s},[x2],#16 - b.gt .Loop_dec - - aesd v2.16b,v0.16b - aesimc v2.16b,v2.16b - ld1 {v0.4s},[x2] - aesd v2.16b,v1.16b - eor v2.16b,v2.16b,v0.16b - - st1 {v2.16b},[x1] - ret -.size aes_v8_decrypt,.-aes_v8_decrypt -.globl aes_v8_cbc_encrypt -.type aes_v8_cbc_encrypt,%function -.align 5 -aes_v8_cbc_encrypt: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - subs x2,x2,#16 - mov x8,#16 - b.lo .Lcbc_abort - csel x8,xzr,x8,eq - - cmp w5,#0 // en- or decrypting? - ldr w5,[x3,#240] - and x2,x2,#-16 - ld1 {v6.16b},[x4] - ld1 {v0.16b},[x0],x8 - - ld1 {v16.4s-v17.4s},[x3] // load key schedule... - sub w5,w5,#6 - add x7,x3,x5,lsl#4 // pointer to last 7 round keys - sub w5,w5,#2 - ld1 {v18.4s-v19.4s},[x7],#32 - ld1 {v20.4s-v21.4s},[x7],#32 - ld1 {v22.4s-v23.4s},[x7],#32 - ld1 {v7.4s},[x7] - - add x7,x3,#32 - mov w6,w5 - b.eq .Lcbc_dec - - cmp w5,#2 - eor v0.16b,v0.16b,v6.16b - eor v5.16b,v16.16b,v7.16b - b.eq .Lcbc_enc128 - - ld1 {v2.4s-v3.4s},[x7] - add x7,x3,#16 - add x6,x3,#16*4 - add x12,x3,#16*5 - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - add x14,x3,#16*6 - add x3,x3,#16*7 - b .Lenter_cbc_enc - -.align 4 -.Loop_cbc_enc: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - st1 {v6.16b},[x1],#16 -.Lenter_cbc_enc: - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v0.16b,v2.16b - aesmc v0.16b,v0.16b - ld1 {v16.4s},[x6] - cmp w5,#4 - aese v0.16b,v3.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x12] - b.eq .Lcbc_enc192 - - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - ld1 {v16.4s},[x14] - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x3] - nop - -.Lcbc_enc192: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - subs x2,x2,#16 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - csel x8,xzr,x8,eq - aese v0.16b,v18.16b - aesmc v0.16b,v0.16b - aese v0.16b,v19.16b - aesmc v0.16b,v0.16b - ld1 {v16.16b},[x0],x8 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - eor v16.16b,v16.16b,v5.16b - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - ld1 {v17.4s},[x7] // re-pre-load rndkey[1] - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - aese v0.16b,v23.16b - eor v6.16b,v0.16b,v7.16b - b.hs .Loop_cbc_enc - - st1 {v6.16b},[x1],#16 - b .Lcbc_done - -.align 5 -.Lcbc_enc128: - ld1 {v2.4s-v3.4s},[x7] - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - b .Lenter_cbc_enc128 -.Loop_cbc_enc128: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - st1 {v6.16b},[x1],#16 -.Lenter_cbc_enc128: - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - subs x2,x2,#16 - aese v0.16b,v2.16b - aesmc v0.16b,v0.16b - csel x8,xzr,x8,eq - aese v0.16b,v3.16b - aesmc v0.16b,v0.16b - aese v0.16b,v18.16b - aesmc v0.16b,v0.16b - aese v0.16b,v19.16b - aesmc v0.16b,v0.16b - ld1 {v16.16b},[x0],x8 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - eor v16.16b,v16.16b,v5.16b - aese v0.16b,v23.16b - eor v6.16b,v0.16b,v7.16b - b.hs .Loop_cbc_enc128 - - st1 {v6.16b},[x1],#16 - b .Lcbc_done -.align 5 -.Lcbc_dec: - ld1 {v18.16b},[x0],#16 - subs x2,x2,#32 // bias - add w6,w5,#2 - orr v3.16b,v0.16b,v0.16b - orr v1.16b,v0.16b,v0.16b - orr v19.16b,v18.16b,v18.16b - b.lo .Lcbc_dec_tail - - orr v1.16b,v18.16b,v18.16b - ld1 {v18.16b},[x0],#16 - orr v2.16b,v0.16b,v0.16b - orr v3.16b,v1.16b,v1.16b - orr v19.16b,v18.16b,v18.16b - -.Loop3x_cbc_dec: - aesd v0.16b,v16.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aesd v0.16b,v17.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Loop3x_cbc_dec - - aesd v0.16b,v16.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - eor v4.16b,v6.16b,v7.16b - subs x2,x2,#0x30 - eor v5.16b,v2.16b,v7.16b - csel x6,x2,x6,lo // x6, w6, is zero at this point - aesd v0.16b,v17.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - eor v17.16b,v3.16b,v7.16b - add x0,x0,x6 // x0 is adjusted in such way that - // at exit from the loop v1.16b-v18.16b - // are loaded with last "words" - orr v6.16b,v19.16b,v19.16b - mov x7,x3 - aesd v0.16b,v20.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v20.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v20.16b - aesimc v18.16b,v18.16b - ld1 {v2.16b},[x0],#16 - aesd v0.16b,v21.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v21.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v21.16b - aesimc v18.16b,v18.16b - ld1 {v3.16b},[x0],#16 - aesd v0.16b,v22.16b - aesimc v0.16b,v0.16b - aesd v1.16b,v22.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v22.16b - aesimc v18.16b,v18.16b - ld1 {v19.16b},[x0],#16 - aesd v0.16b,v23.16b - aesd v1.16b,v23.16b - aesd v18.16b,v23.16b - ld1 {v16.4s},[x7],#16 // re-pre-load rndkey[0] - add w6,w5,#2 - eor v4.16b,v4.16b,v0.16b - eor v5.16b,v5.16b,v1.16b - eor v18.16b,v18.16b,v17.16b - ld1 {v17.4s},[x7],#16 // re-pre-load rndkey[1] - st1 {v4.16b},[x1],#16 - orr v0.16b,v2.16b,v2.16b - st1 {v5.16b},[x1],#16 - orr v1.16b,v3.16b,v3.16b - st1 {v18.16b},[x1],#16 - orr v18.16b,v19.16b,v19.16b - b.hs .Loop3x_cbc_dec - - cmn x2,#0x30 - b.eq .Lcbc_done - nop - -.Lcbc_dec_tail: - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Lcbc_dec_tail - - aesd v1.16b,v16.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v16.16b - aesimc v18.16b,v18.16b - aesd v1.16b,v17.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v17.16b - aesimc v18.16b,v18.16b - aesd v1.16b,v20.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v20.16b - aesimc v18.16b,v18.16b - cmn x2,#0x20 - aesd v1.16b,v21.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v21.16b - aesimc v18.16b,v18.16b - eor v5.16b,v6.16b,v7.16b - aesd v1.16b,v22.16b - aesimc v1.16b,v1.16b - aesd v18.16b,v22.16b - aesimc v18.16b,v18.16b - eor v17.16b,v3.16b,v7.16b - aesd v1.16b,v23.16b - aesd v18.16b,v23.16b - b.eq .Lcbc_dec_one - eor v5.16b,v5.16b,v1.16b - eor v17.16b,v17.16b,v18.16b - orr v6.16b,v19.16b,v19.16b - st1 {v5.16b},[x1],#16 - st1 {v17.16b},[x1],#16 - b .Lcbc_done - -.Lcbc_dec_one: - eor v5.16b,v5.16b,v18.16b - orr v6.16b,v19.16b,v19.16b - st1 {v5.16b},[x1],#16 - -.Lcbc_done: - st1 {v6.16b},[x4] -.Lcbc_abort: - ldr x29,[sp],#16 - ret -.size aes_v8_cbc_encrypt,.-aes_v8_cbc_encrypt -.globl aes_v8_ctr32_encrypt_blocks -.type aes_v8_ctr32_encrypt_blocks,%function -.align 5 -aes_v8_ctr32_encrypt_blocks: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - ldr w5,[x3,#240] - - ldr w8, [x4, #12] - ld1 {v0.4s},[x4] - - ld1 {v16.4s-v17.4s},[x3] // load key schedule... - sub w5,w5,#4 - mov x12,#16 - cmp x2,#2 - add x7,x3,x5,lsl#4 // pointer to last 5 round keys - sub w5,w5,#2 - ld1 {v20.4s-v21.4s},[x7],#32 - ld1 {v22.4s-v23.4s},[x7],#32 - ld1 {v7.4s},[x7] - add x7,x3,#32 - mov w6,w5 - csel x12,xzr,x12,lo -#ifndef __ARMEB__ - rev w8, w8 -#endif - orr v1.16b,v0.16b,v0.16b - add w10, w8, #1 - orr v18.16b,v0.16b,v0.16b - add w8, w8, #2 - orr v6.16b,v0.16b,v0.16b - rev w10, w10 - mov v1.s[3],w10 - b.ls .Lctr32_tail - rev w12, w8 - sub x2,x2,#3 // bias - mov v18.s[3],w12 - b .Loop3x_ctr32 - -.align 4 -.Loop3x_ctr32: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - aese v18.16b,v16.16b - aesmc v18.16b,v18.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - aese v18.16b,v17.16b - aesmc v18.16b,v18.16b - ld1 {v17.4s},[x7],#16 - b.gt .Loop3x_ctr32 - - aese v0.16b,v16.16b - aesmc v4.16b,v0.16b - aese v1.16b,v16.16b - aesmc v5.16b,v1.16b - ld1 {v2.16b},[x0],#16 - orr v0.16b,v6.16b,v6.16b - aese v18.16b,v16.16b - aesmc v18.16b,v18.16b - ld1 {v3.16b},[x0],#16 - orr v1.16b,v6.16b,v6.16b - aese v4.16b,v17.16b - aesmc v4.16b,v4.16b - aese v5.16b,v17.16b - aesmc v5.16b,v5.16b - ld1 {v19.16b},[x0],#16 - mov x7,x3 - aese v18.16b,v17.16b - aesmc v17.16b,v18.16b - orr v18.16b,v6.16b,v6.16b - add w9,w8,#1 - aese v4.16b,v20.16b - aesmc v4.16b,v4.16b - aese v5.16b,v20.16b - aesmc v5.16b,v5.16b - eor v2.16b,v2.16b,v7.16b - add w10,w8,#2 - aese v17.16b,v20.16b - aesmc v17.16b,v17.16b - eor v3.16b,v3.16b,v7.16b - add w8,w8,#3 - aese v4.16b,v21.16b - aesmc v4.16b,v4.16b - aese v5.16b,v21.16b - aesmc v5.16b,v5.16b - eor v19.16b,v19.16b,v7.16b - rev w9,w9 - aese v17.16b,v21.16b - aesmc v17.16b,v17.16b - mov v0.s[3], w9 - rev w10,w10 - aese v4.16b,v22.16b - aesmc v4.16b,v4.16b - aese v5.16b,v22.16b - aesmc v5.16b,v5.16b - mov v1.s[3], w10 - rev w12,w8 - aese v17.16b,v22.16b - aesmc v17.16b,v17.16b - mov v18.s[3], w12 - subs x2,x2,#3 - aese v4.16b,v23.16b - aese v5.16b,v23.16b - aese v17.16b,v23.16b - - eor v2.16b,v2.16b,v4.16b - ld1 {v16.4s},[x7],#16 // re-pre-load rndkey[0] - st1 {v2.16b},[x1],#16 - eor v3.16b,v3.16b,v5.16b - mov w6,w5 - st1 {v3.16b},[x1],#16 - eor v19.16b,v19.16b,v17.16b - ld1 {v17.4s},[x7],#16 // re-pre-load rndkey[1] - st1 {v19.16b},[x1],#16 - b.hs .Loop3x_ctr32 - - adds x2,x2,#3 - b.eq .Lctr32_done - cmp x2,#1 - mov x12,#16 - csel x12,xzr,x12,eq - -.Lctr32_tail: - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - ld1 {v16.4s},[x7],#16 - subs w6,w6,#2 - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - ld1 {v17.4s},[x7],#16 - b.gt .Lctr32_tail - - aese v0.16b,v16.16b - aesmc v0.16b,v0.16b - aese v1.16b,v16.16b - aesmc v1.16b,v1.16b - aese v0.16b,v17.16b - aesmc v0.16b,v0.16b - aese v1.16b,v17.16b - aesmc v1.16b,v1.16b - ld1 {v2.16b},[x0],x12 - aese v0.16b,v20.16b - aesmc v0.16b,v0.16b - aese v1.16b,v20.16b - aesmc v1.16b,v1.16b - ld1 {v3.16b},[x0] - aese v0.16b,v21.16b - aesmc v0.16b,v0.16b - aese v1.16b,v21.16b - aesmc v1.16b,v1.16b - eor v2.16b,v2.16b,v7.16b - aese v0.16b,v22.16b - aesmc v0.16b,v0.16b - aese v1.16b,v22.16b - aesmc v1.16b,v1.16b - eor v3.16b,v3.16b,v7.16b - aese v0.16b,v23.16b - aese v1.16b,v23.16b - - cmp x2,#1 - eor v2.16b,v2.16b,v0.16b - eor v3.16b,v3.16b,v1.16b - st1 {v2.16b},[x1],#16 - b.eq .Lctr32_done - st1 {v3.16b},[x1] - -.Lctr32_done: - ldr x29,[sp],#16 - ret -.size aes_v8_ctr32_encrypt_blocks,.-aes_v8_ctr32_encrypt_blocks -#endif diff --git a/deps/openssl/asm_obsolete/arm64-linux64-gas/modes/ghashv8-armx.S b/deps/openssl/asm_obsolete/arm64-linux64-gas/modes/ghashv8-armx.S deleted file mode 100644 index fc3dadd08a17a9..00000000000000 --- a/deps/openssl/asm_obsolete/arm64-linux64-gas/modes/ghashv8-armx.S +++ /dev/null @@ -1,227 +0,0 @@ -#include "arm_arch.h" - -.text -.arch armv8-a+crypto -.global gcm_init_v8 -.type gcm_init_v8,%function -.align 4 -gcm_init_v8: - ld1 {v17.2d},[x1] //load input H - movi v19.16b,#0xe1 - shl v19.2d,v19.2d,#57 //0xc2.0 - ext v3.16b,v17.16b,v17.16b,#8 - ushr v18.2d,v19.2d,#63 - dup v17.4s,v17.s[1] - ext v16.16b,v18.16b,v19.16b,#8 //t0=0xc2....01 - ushr v18.2d,v3.2d,#63 - sshr v17.4s,v17.4s,#31 //broadcast carry bit - and v18.16b,v18.16b,v16.16b - shl v3.2d,v3.2d,#1 - ext v18.16b,v18.16b,v18.16b,#8 - and v16.16b,v16.16b,v17.16b - orr v3.16b,v3.16b,v18.16b //H<<<=1 - eor v20.16b,v3.16b,v16.16b //twisted H - st1 {v20.2d},[x0],#16 //store Htable[0] - - //calculate H^2 - ext v16.16b,v20.16b,v20.16b,#8 //Karatsuba pre-processing - pmull v0.1q,v20.1d,v20.1d - eor v16.16b,v16.16b,v20.16b - pmull2 v2.1q,v20.2d,v20.2d - pmull v1.1q,v16.1d,v16.1d - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v22.16b,v0.16b,v18.16b - - ext v17.16b,v22.16b,v22.16b,#8 //Karatsuba pre-processing - eor v17.16b,v17.16b,v22.16b - ext v21.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed - st1 {v21.2d-v22.2d},[x0] //store Htable[1..2] - - ret -.size gcm_init_v8,.-gcm_init_v8 -.global gcm_gmult_v8 -.type gcm_gmult_v8,%function -.align 4 -gcm_gmult_v8: - ld1 {v17.2d},[x0] //load Xi - movi v19.16b,#0xe1 - ld1 {v20.2d-v21.2d},[x1] //load twisted H, ... - shl v19.2d,v19.2d,#57 -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ext v3.16b,v17.16b,v17.16b,#8 - - pmull v0.1q,v20.1d,v3.1d //H.lo·Xi.lo - eor v17.16b,v17.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v20.2d,v3.2d //H.hi·Xi.hi - pmull v1.1q,v21.1d,v17.1d //(H.lo+H.hi)·(Xi.lo+Xi.hi) - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v0.16b,v0.16b,v18.16b - -#ifndef __ARMEB__ - rev64 v0.16b,v0.16b -#endif - ext v0.16b,v0.16b,v0.16b,#8 - st1 {v0.2d},[x0] //write out Xi - - ret -.size gcm_gmult_v8,.-gcm_gmult_v8 -.global gcm_ghash_v8 -.type gcm_ghash_v8,%function -.align 4 -gcm_ghash_v8: - ld1 {v0.2d},[x0] //load [rotated] Xi - //"[rotated]" means that - //loaded value would have - //to be rotated in order to - //make it appear as in - //alorithm specification - subs x3,x3,#32 //see if x3 is 32 or larger - mov x12,#16 //x12 is used as post- - //increment for input pointer; - //as loop is modulo-scheduled - //x12 is zeroed just in time - //to preclude oversteping - //inp[len], which means that - //last block[s] are actually - //loaded twice, but last - //copy is not processed - ld1 {v20.2d-v21.2d},[x1],#32 //load twisted H, ..., H^2 - movi v19.16b,#0xe1 - ld1 {v22.2d},[x1] - csel x12,xzr,x12,eq //is it time to zero x12? - ext v0.16b,v0.16b,v0.16b,#8 //rotate Xi - ld1 {v16.2d},[x2],#16 //load [rotated] I[0] - shl v19.2d,v19.2d,#57 //compose 0xc2.0 constant -#ifndef __ARMEB__ - rev64 v16.16b,v16.16b - rev64 v0.16b,v0.16b -#endif - ext v3.16b,v16.16b,v16.16b,#8 //rotate I[0] - b.lo .Lodd_tail_v8 //x3 was less than 32 - ld1 {v17.2d},[x2],x12 //load [rotated] I[1] -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ext v7.16b,v17.16b,v17.16b,#8 - eor v3.16b,v3.16b,v0.16b //I[i]^=Xi - pmull v4.1q,v20.1d,v7.1d //H·Ii+1 - eor v17.16b,v17.16b,v7.16b //Karatsuba pre-processing - pmull2 v6.1q,v20.2d,v7.2d - b .Loop_mod2x_v8 - -.align 4 -.Loop_mod2x_v8: - ext v18.16b,v3.16b,v3.16b,#8 - subs x3,x3,#32 //is there more data? - pmull v0.1q,v22.1d,v3.1d //H^2.lo·Xi.lo - csel x12,xzr,x12,lo //is it time to zero x12? - - pmull v5.1q,v21.1d,v17.1d - eor v18.16b,v18.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v22.2d,v3.2d //H^2.hi·Xi.hi - eor v0.16b,v0.16b,v4.16b //accumulate - pmull2 v1.1q,v21.2d,v18.2d //(H^2.lo+H^2.hi)·(Xi.lo+Xi.hi) - ld1 {v16.2d},[x2],x12 //load [rotated] I[i+2] - - eor v2.16b,v2.16b,v6.16b - csel x12,xzr,x12,eq //is it time to zero x12? - eor v1.16b,v1.16b,v5.16b - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - ld1 {v17.2d},[x2],x12 //load [rotated] I[i+3] -#ifndef __ARMEB__ - rev64 v16.16b,v16.16b -#endif - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - -#ifndef __ARMEB__ - rev64 v17.16b,v17.16b -#endif - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - ext v7.16b,v17.16b,v17.16b,#8 - ext v3.16b,v16.16b,v16.16b,#8 - eor v0.16b,v1.16b,v18.16b - pmull v4.1q,v20.1d,v7.1d //H·Ii+1 - eor v3.16b,v3.16b,v2.16b //accumulate v3.16b early - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v3.16b,v3.16b,v18.16b - eor v17.16b,v17.16b,v7.16b //Karatsuba pre-processing - eor v3.16b,v3.16b,v0.16b - pmull2 v6.1q,v20.2d,v7.2d - b.hs .Loop_mod2x_v8 //there was at least 32 more bytes - - eor v2.16b,v2.16b,v18.16b - ext v3.16b,v16.16b,v16.16b,#8 //re-construct v3.16b - adds x3,x3,#32 //re-construct x3 - eor v0.16b,v0.16b,v2.16b //re-construct v0.16b - b.eq .Ldone_v8 //is x3 zero? -.Lodd_tail_v8: - ext v18.16b,v0.16b,v0.16b,#8 - eor v3.16b,v3.16b,v0.16b //inp^=Xi - eor v17.16b,v16.16b,v18.16b //v17.16b is rotated inp^Xi - - pmull v0.1q,v20.1d,v3.1d //H.lo·Xi.lo - eor v17.16b,v17.16b,v3.16b //Karatsuba pre-processing - pmull2 v2.1q,v20.2d,v3.2d //H.hi·Xi.hi - pmull v1.1q,v21.1d,v17.1d //(H.lo+H.hi)·(Xi.lo+Xi.hi) - - ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing - eor v18.16b,v0.16b,v2.16b - eor v1.16b,v1.16b,v17.16b - eor v1.16b,v1.16b,v18.16b - pmull v18.1q,v0.1d,v19.1d //1st phase of reduction - - ins v2.d[0],v1.d[1] - ins v1.d[1],v0.d[0] - eor v0.16b,v1.16b,v18.16b - - ext v18.16b,v0.16b,v0.16b,#8 //2nd phase of reduction - pmull v0.1q,v0.1d,v19.1d - eor v18.16b,v18.16b,v2.16b - eor v0.16b,v0.16b,v18.16b - -.Ldone_v8: -#ifndef __ARMEB__ - rev64 v0.16b,v0.16b -#endif - ext v0.16b,v0.16b,v0.16b,#8 - st1 {v0.2d},[x0] //write out Xi - - ret -.size gcm_ghash_v8,.-gcm_ghash_v8 -.asciz "GHASH for ARMv8, CRYPTOGAMS by " -.align 2 diff --git a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha1-armv8.S b/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha1-armv8.S deleted file mode 100644 index f9d126252ef2cd..00000000000000 --- a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha1-armv8.S +++ /dev/null @@ -1,1211 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha1_block_data_order -.type sha1_block_data_order,%function -.align 6 -sha1_block_data_order: - ldr x16,.LOPENSSL_armcap_P - adr x17,.LOPENSSL_armcap_P - add x16,x16,x17 - ldr w16,[x16] - tst w16,#ARMV8_SHA1 - b.ne .Lv8_entry - - stp x29,x30,[sp,#-96]! - add x29,sp,#0 - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - - ldp w20,w21,[x0] - ldp w22,w23,[x0,#8] - ldr w24,[x0,#16] - -.Loop: - ldr x3,[x1],#64 - movz w28,#0x7999 - sub x2,x2,#1 - movk w28,#0x5a82,lsl#16 -#ifdef __ARMEB__ - ror x3,x3,#32 -#else - rev32 x3,x3 -#endif - add w24,w24,w28 // warm it up - add w24,w24,w3 - lsr x4,x3,#32 - ldr x5,[x1,#-56] - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w4 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x5,x5,#32 -#else - rev32 x5,x5 -#endif - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w5 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - lsr x6,x5,#32 - ldr x7,[x1,#-48] - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w6 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x7,x7,#32 -#else - rev32 x7,x7 -#endif - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w7 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - lsr x8,x7,#32 - ldr x9,[x1,#-40] - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - add w24,w24,w8 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x9,x9,#32 -#else - rev32 x9,x9 -#endif - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w9 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - lsr x10,x9,#32 - ldr x11,[x1,#-32] - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w10 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x11,x11,#32 -#else - rev32 x11,x11 -#endif - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w11 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - lsr x12,x11,#32 - ldr x13,[x1,#-24] - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w12 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x13,x13,#32 -#else - rev32 x13,x13 -#endif - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - add w24,w24,w13 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - lsr x14,x13,#32 - ldr x15,[x1,#-16] - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - add w23,w23,w14 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x15,x15,#32 -#else - rev32 x15,x15 -#endif - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - add w22,w22,w15 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - lsr x16,x15,#32 - ldr x17,[x1,#-8] - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - add w21,w21,w16 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) -#ifdef __ARMEB__ - ror x17,x17,#32 -#else - rev32 x17,x17 -#endif - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w17 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - lsr x19,x17,#32 - eor w3,w3,w5 - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - eor w3,w3,w11 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - eor w3,w3,w16 - ror w22,w22,#2 - add w24,w24,w19 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - bic w25,w23,w21 - and w26,w22,w21 - ror w27,w20,#27 - eor w4,w4,w12 - add w23,w23,w28 // future e+=K - orr w25,w25,w26 - add w24,w24,w27 // e+=rot(a,5) - eor w4,w4,w17 - ror w21,w21,#2 - add w23,w23,w3 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - bic w25,w22,w20 - and w26,w21,w20 - ror w27,w24,#27 - eor w5,w5,w13 - add w22,w22,w28 // future e+=K - orr w25,w25,w26 - add w23,w23,w27 // e+=rot(a,5) - eor w5,w5,w19 - ror w20,w20,#2 - add w22,w22,w4 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - bic w25,w21,w24 - and w26,w20,w24 - ror w27,w23,#27 - eor w6,w6,w14 - add w21,w21,w28 // future e+=K - orr w25,w25,w26 - add w22,w22,w27 // e+=rot(a,5) - eor w6,w6,w3 - ror w24,w24,#2 - add w21,w21,w5 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - bic w25,w20,w23 - and w26,w24,w23 - ror w27,w22,#27 - eor w7,w7,w15 - add w20,w20,w28 // future e+=K - orr w25,w25,w26 - add w21,w21,w27 // e+=rot(a,5) - eor w7,w7,w4 - ror w23,w23,#2 - add w20,w20,w6 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w7,w7,#31 - movz w28,#0xeba1 - movk w28,#0x6ed9,lsl#16 - eor w8,w8,w10 - bic w25,w24,w22 - and w26,w23,w22 - ror w27,w21,#27 - eor w8,w8,w16 - add w24,w24,w28 // future e+=K - orr w25,w25,w26 - add w20,w20,w27 // e+=rot(a,5) - eor w8,w8,w5 - ror w22,w22,#2 - add w24,w24,w7 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w9,w9,w6 - add w23,w23,w8 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w10,w10,w7 - add w22,w22,w9 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w11,w11,w8 - add w21,w21,w10 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w11,w11,#31 - eor w12,w12,w14 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w12,w12,w9 - add w20,w20,w11 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w12,w12,#31 - eor w13,w13,w15 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w13,w13,w5 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w13,w13,w10 - add w24,w24,w12 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w13,w13,#31 - eor w14,w14,w16 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w14,w14,w6 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w14,w14,w11 - add w23,w23,w13 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w14,w14,#31 - eor w15,w15,w17 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w15,w15,w7 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w15,w15,w12 - add w22,w22,w14 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w15,w15,#31 - eor w16,w16,w19 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w16,w16,w8 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w16,w16,w13 - add w21,w21,w15 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w17,w17,w14 - add w20,w20,w16 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w19,w19,w15 - add w24,w24,w17 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w19,w19,#31 - eor w3,w3,w5 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w3,w3,w11 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w3,w3,w16 - add w23,w23,w19 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w4,w4,w12 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w4,w4,w17 - add w22,w22,w3 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w5,w5,w13 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w5,w5,w19 - add w21,w21,w4 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w6,w6,w14 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w6,w6,w3 - add w20,w20,w5 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w7,w7,w15 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w7,w7,w4 - add w24,w24,w6 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w7,w7,#31 - eor w8,w8,w10 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w8,w8,w16 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w8,w8,w5 - add w23,w23,w7 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w9,w9,w6 - add w22,w22,w8 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w10,w10,w7 - add w21,w21,w9 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w11,w11,w8 - add w20,w20,w10 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w11,w11,#31 - movz w28,#0xbcdc - movk w28,#0x8f1b,lsl#16 - eor w12,w12,w14 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w12,w12,w9 - add w24,w24,w11 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w12,w12,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w13,w13,w15 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w13,w13,w5 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w13,w13,w10 - add w23,w23,w12 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w13,w13,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w14,w14,w16 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w14,w14,w6 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w14,w14,w11 - add w22,w22,w13 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w14,w14,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w15,w15,w17 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w15,w15,w7 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w15,w15,w12 - add w21,w21,w14 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w15,w15,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w16,w16,w19 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w16,w16,w8 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w16,w16,w13 - add w20,w20,w15 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w16,w16,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w17,w17,w3 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w17,w17,w9 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w17,w17,w14 - add w24,w24,w16 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w17,w17,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w19,w19,w4 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w19,w19,w10 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w19,w19,w15 - add w23,w23,w17 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w19,w19,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w3,w3,w5 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w3,w3,w11 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w3,w3,w16 - add w22,w22,w19 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w3,w3,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w4,w4,w6 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w4,w4,w12 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w4,w4,w17 - add w21,w21,w3 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w4,w4,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w5,w5,w7 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w5,w5,w13 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w5,w5,w19 - add w20,w20,w4 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w5,w5,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w6,w6,w8 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w6,w6,w14 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w6,w6,w3 - add w24,w24,w5 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w6,w6,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w7,w7,w9 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w7,w7,w15 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w7,w7,w4 - add w23,w23,w6 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w7,w7,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w8,w8,w10 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w8,w8,w16 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w8,w8,w5 - add w22,w22,w7 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w8,w8,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w9,w9,w11 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w9,w9,w17 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w9,w9,w6 - add w21,w21,w8 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w9,w9,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w10,w10,w12 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w10,w10,w19 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w10,w10,w7 - add w20,w20,w9 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w10,w10,#31 - orr w25,w22,w23 - and w26,w22,w23 - eor w11,w11,w13 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w11,w11,w3 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w11,w11,w8 - add w24,w24,w10 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w11,w11,#31 - orr w25,w21,w22 - and w26,w21,w22 - eor w12,w12,w14 - ror w27,w20,#27 - and w25,w25,w23 - add w23,w23,w28 // future e+=K - eor w12,w12,w4 - add w24,w24,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w21,w21,#2 - eor w12,w12,w9 - add w23,w23,w11 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w12,w12,#31 - orr w25,w20,w21 - and w26,w20,w21 - eor w13,w13,w15 - ror w27,w24,#27 - and w25,w25,w22 - add w22,w22,w28 // future e+=K - eor w13,w13,w5 - add w23,w23,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w20,w20,#2 - eor w13,w13,w10 - add w22,w22,w12 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w13,w13,#31 - orr w25,w24,w20 - and w26,w24,w20 - eor w14,w14,w16 - ror w27,w23,#27 - and w25,w25,w21 - add w21,w21,w28 // future e+=K - eor w14,w14,w6 - add w22,w22,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w24,w24,#2 - eor w14,w14,w11 - add w21,w21,w13 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w14,w14,#31 - orr w25,w23,w24 - and w26,w23,w24 - eor w15,w15,w17 - ror w27,w22,#27 - and w25,w25,w20 - add w20,w20,w28 // future e+=K - eor w15,w15,w7 - add w21,w21,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w23,w23,#2 - eor w15,w15,w12 - add w20,w20,w14 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w15,w15,#31 - movz w28,#0xc1d6 - movk w28,#0xca62,lsl#16 - orr w25,w22,w23 - and w26,w22,w23 - eor w16,w16,w19 - ror w27,w21,#27 - and w25,w25,w24 - add w24,w24,w28 // future e+=K - eor w16,w16,w8 - add w20,w20,w27 // e+=rot(a,5) - orr w25,w25,w26 - ror w22,w22,#2 - eor w16,w16,w13 - add w24,w24,w15 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w17,w17,w14 - add w23,w23,w16 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w19,w19,w15 - add w22,w22,w17 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w19,w19,#31 - eor w3,w3,w5 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w3,w3,w11 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w3,w3,w16 - add w21,w21,w19 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w3,w3,#31 - eor w4,w4,w6 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w4,w4,w12 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w4,w4,w17 - add w20,w20,w3 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w4,w4,#31 - eor w5,w5,w7 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w5,w5,w13 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w5,w5,w19 - add w24,w24,w4 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w5,w5,#31 - eor w6,w6,w8 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w6,w6,w14 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w6,w6,w3 - add w23,w23,w5 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w6,w6,#31 - eor w7,w7,w9 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w7,w7,w15 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w7,w7,w4 - add w22,w22,w6 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w7,w7,#31 - eor w8,w8,w10 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w8,w8,w16 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w8,w8,w5 - add w21,w21,w7 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w8,w8,#31 - eor w9,w9,w11 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w9,w9,w17 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w9,w9,w6 - add w20,w20,w8 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w9,w9,#31 - eor w10,w10,w12 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w10,w10,w19 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w10,w10,w7 - add w24,w24,w9 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w10,w10,#31 - eor w11,w11,w13 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w11,w11,w3 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w11,w11,w8 - add w23,w23,w10 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w11,w11,#31 - eor w12,w12,w14 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w12,w12,w4 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w12,w12,w9 - add w22,w22,w11 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w12,w12,#31 - eor w13,w13,w15 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w13,w13,w5 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w13,w13,w10 - add w21,w21,w12 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w13,w13,#31 - eor w14,w14,w16 - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w14,w14,w6 - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - eor w14,w14,w11 - add w20,w20,w13 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ror w14,w14,#31 - eor w15,w15,w17 - eor w25,w24,w22 - ror w27,w21,#27 - add w24,w24,w28 // future e+=K - eor w15,w15,w7 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - eor w15,w15,w12 - add w24,w24,w14 // future e+=X[i] - add w20,w20,w25 // e+=F(b,c,d) - ror w15,w15,#31 - eor w16,w16,w19 - eor w25,w23,w21 - ror w27,w20,#27 - add w23,w23,w28 // future e+=K - eor w16,w16,w8 - eor w25,w25,w22 - add w24,w24,w27 // e+=rot(a,5) - ror w21,w21,#2 - eor w16,w16,w13 - add w23,w23,w15 // future e+=X[i] - add w24,w24,w25 // e+=F(b,c,d) - ror w16,w16,#31 - eor w17,w17,w3 - eor w25,w22,w20 - ror w27,w24,#27 - add w22,w22,w28 // future e+=K - eor w17,w17,w9 - eor w25,w25,w21 - add w23,w23,w27 // e+=rot(a,5) - ror w20,w20,#2 - eor w17,w17,w14 - add w22,w22,w16 // future e+=X[i] - add w23,w23,w25 // e+=F(b,c,d) - ror w17,w17,#31 - eor w19,w19,w4 - eor w25,w21,w24 - ror w27,w23,#27 - add w21,w21,w28 // future e+=K - eor w19,w19,w10 - eor w25,w25,w20 - add w22,w22,w27 // e+=rot(a,5) - ror w24,w24,#2 - eor w19,w19,w15 - add w21,w21,w17 // future e+=X[i] - add w22,w22,w25 // e+=F(b,c,d) - ror w19,w19,#31 - ldp w4,w5,[x0] - eor w25,w20,w23 - ror w27,w22,#27 - add w20,w20,w28 // future e+=K - eor w25,w25,w24 - add w21,w21,w27 // e+=rot(a,5) - ror w23,w23,#2 - add w20,w20,w19 // future e+=X[i] - add w21,w21,w25 // e+=F(b,c,d) - ldp w6,w7,[x0,#8] - eor w25,w24,w22 - ror w27,w21,#27 - eor w25,w25,w23 - add w20,w20,w27 // e+=rot(a,5) - ror w22,w22,#2 - ldr w8,[x0,#16] - add w20,w20,w25 // e+=F(b,c,d) - add w21,w21,w5 - add w22,w22,w6 - add w20,w20,w4 - add w23,w23,w7 - add w24,w24,w8 - stp w20,w21,[x0] - stp w22,w23,[x0,#8] - str w24,[x0,#16] - cbnz x2,.Loop - - ldp x19,x20,[sp,#16] - ldp x21,x22,[sp,#32] - ldp x23,x24,[sp,#48] - ldp x25,x26,[sp,#64] - ldp x27,x28,[sp,#80] - ldr x29,[sp],#96 - ret -.size sha1_block_data_order,.-sha1_block_data_order -.type sha1_block_armv8,%function -.align 6 -sha1_block_armv8: -.Lv8_entry: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - - adr x4,.Lconst - eor v1.16b,v1.16b,v1.16b - ld1 {v0.4s},[x0],#16 - ld1 {v1.s}[0],[x0] - sub x0,x0,#16 - ld1 {v16.4s-v19.4s},[x4] - -.Loop_hw: - ld1 {v4.16b-v7.16b},[x1],#64 - sub x2,x2,#1 - rev32 v4.16b,v4.16b - rev32 v5.16b,v5.16b - - add v20.4s,v16.4s,v4.4s - rev32 v6.16b,v6.16b - orr v22.16b,v0.16b,v0.16b // offload - - add v21.4s,v16.4s,v5.4s - rev32 v7.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b - .inst 0x5e140020 //sha1c v0.16b,v1.16b,v20.4s // 0 - add v20.4s,v16.4s,v6.4s - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 1 - .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s - add v21.4s,v16.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 2 - .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s - add v20.4s,v16.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 3 - .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 4 - .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s - add v20.4s,v17.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 5 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 6 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v17.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 7 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v17.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 8 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 9 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v18.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 10 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 11 - .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s - add v21.4s,v18.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 12 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v18.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 13 - .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v7.4s - .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b - .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 14 - .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s - add v20.4s,v19.4s,v4.4s - .inst 0x5e281885 //sha1su1 v5.16b,v4.16b - .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 15 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v5.4s - .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b - .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 16 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - add v20.4s,v19.4s,v6.4s - .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 17 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - add v21.4s,v19.4s,v7.4s - - .inst 0x5e280803 //sha1h v3.16b,v0.16b // 18 - .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s - - .inst 0x5e280802 //sha1h v2.16b,v0.16b // 19 - .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s - - add v1.4s,v1.4s,v2.4s - add v0.4s,v0.4s,v22.4s - - cbnz x2,.Loop_hw - - st1 {v0.4s},[x0],#16 - st1 {v1.s}[0],[x0] - - ldr x29,[sp],#16 - ret -.size sha1_block_armv8,.-sha1_block_armv8 -.align 6 -.Lconst: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 //K_00_19 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 //K_20_39 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc //K_40_59 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 //K_60_79 -.LOPENSSL_armcap_P: -.quad OPENSSL_armcap_P-. -.asciz "SHA1 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha256-armv8.S b/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha256-armv8.S deleted file mode 100644 index bd43b1fe76dd34..00000000000000 --- a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha256-armv8.S +++ /dev/null @@ -1,1141 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha256_block_data_order -.type sha256_block_data_order,%function -.align 6 -sha256_block_data_order: - ldr x16,.LOPENSSL_armcap_P - adr x17,.LOPENSSL_armcap_P - add x16,x16,x17 - ldr w16,[x16] - tst w16,#ARMV8_SHA256 - b.ne .Lv8_entry - stp x29,x30,[sp,#-128]! - add x29,sp,#0 - - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - sub sp,sp,#4*4 - - ldp w20,w21,[x0] // load context - ldp w22,w23,[x0,#2*4] - ldp w24,w25,[x0,#4*4] - add x2,x1,x2,lsl#6 // end of input - ldp w26,w27,[x0,#6*4] - adr x30,K256 - stp x0,x2,[x29,#96] - -.Loop: - ldp w3,w4,[x1],#2*4 - ldr w19,[x30],#4 // *K++ - eor w28,w21,w22 // magic seed - str x1,[x29,#112] -#ifndef __ARMEB__ - rev w3,w3 // 0 -#endif - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - eor w6,w24,w24,ror#14 - and w17,w25,w24 - bic w19,w26,w24 - add w27,w27,w3 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w6,ror#11 // Sigma1(e) - ror w6,w20,#2 - add w27,w27,w17 // h+=Ch(e,f,g) - eor w17,w20,w20,ror#9 - add w27,w27,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w23,w23,w27 // d+=h - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w6,w17,ror#13 // Sigma0(a) - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w27,w27,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w4,w4 // 1 -#endif - ldp w5,w6,[x1],#2*4 - add w27,w27,w17 // h+=Sigma0(a) - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - eor w7,w23,w23,ror#14 - and w17,w24,w23 - bic w28,w25,w23 - add w26,w26,w4 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w7,ror#11 // Sigma1(e) - ror w7,w27,#2 - add w26,w26,w17 // h+=Ch(e,f,g) - eor w17,w27,w27,ror#9 - add w26,w26,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w22,w22,w26 // d+=h - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w7,w17,ror#13 // Sigma0(a) - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w26,w26,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w5,w5 // 2 -#endif - add w26,w26,w17 // h+=Sigma0(a) - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - eor w8,w22,w22,ror#14 - and w17,w23,w22 - bic w19,w24,w22 - add w25,w25,w5 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w8,ror#11 // Sigma1(e) - ror w8,w26,#2 - add w25,w25,w17 // h+=Ch(e,f,g) - eor w17,w26,w26,ror#9 - add w25,w25,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w21,w21,w25 // d+=h - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w8,w17,ror#13 // Sigma0(a) - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w25,w25,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w6,w6 // 3 -#endif - ldp w7,w8,[x1],#2*4 - add w25,w25,w17 // h+=Sigma0(a) - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - eor w9,w21,w21,ror#14 - and w17,w22,w21 - bic w28,w23,w21 - add w24,w24,w6 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w9,ror#11 // Sigma1(e) - ror w9,w25,#2 - add w24,w24,w17 // h+=Ch(e,f,g) - eor w17,w25,w25,ror#9 - add w24,w24,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w20,w20,w24 // d+=h - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w9,w17,ror#13 // Sigma0(a) - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w24,w24,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w7,w7 // 4 -#endif - add w24,w24,w17 // h+=Sigma0(a) - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - eor w10,w20,w20,ror#14 - and w17,w21,w20 - bic w19,w22,w20 - add w23,w23,w7 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w10,ror#11 // Sigma1(e) - ror w10,w24,#2 - add w23,w23,w17 // h+=Ch(e,f,g) - eor w17,w24,w24,ror#9 - add w23,w23,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w27,w27,w23 // d+=h - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w10,w17,ror#13 // Sigma0(a) - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w23,w23,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w8,w8 // 5 -#endif - ldp w9,w10,[x1],#2*4 - add w23,w23,w17 // h+=Sigma0(a) - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - eor w11,w27,w27,ror#14 - and w17,w20,w27 - bic w28,w21,w27 - add w22,w22,w8 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w11,ror#11 // Sigma1(e) - ror w11,w23,#2 - add w22,w22,w17 // h+=Ch(e,f,g) - eor w17,w23,w23,ror#9 - add w22,w22,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w26,w26,w22 // d+=h - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w11,w17,ror#13 // Sigma0(a) - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w22,w22,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w9,w9 // 6 -#endif - add w22,w22,w17 // h+=Sigma0(a) - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - eor w12,w26,w26,ror#14 - and w17,w27,w26 - bic w19,w20,w26 - add w21,w21,w9 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w12,ror#11 // Sigma1(e) - ror w12,w22,#2 - add w21,w21,w17 // h+=Ch(e,f,g) - eor w17,w22,w22,ror#9 - add w21,w21,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w25,w25,w21 // d+=h - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w12,w17,ror#13 // Sigma0(a) - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w21,w21,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w10,w10 // 7 -#endif - ldp w11,w12,[x1],#2*4 - add w21,w21,w17 // h+=Sigma0(a) - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - eor w13,w25,w25,ror#14 - and w17,w26,w25 - bic w28,w27,w25 - add w20,w20,w10 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w13,ror#11 // Sigma1(e) - ror w13,w21,#2 - add w20,w20,w17 // h+=Ch(e,f,g) - eor w17,w21,w21,ror#9 - add w20,w20,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w24,w24,w20 // d+=h - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w13,w17,ror#13 // Sigma0(a) - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w20,w20,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w11,w11 // 8 -#endif - add w20,w20,w17 // h+=Sigma0(a) - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - eor w14,w24,w24,ror#14 - and w17,w25,w24 - bic w19,w26,w24 - add w27,w27,w11 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w14,ror#11 // Sigma1(e) - ror w14,w20,#2 - add w27,w27,w17 // h+=Ch(e,f,g) - eor w17,w20,w20,ror#9 - add w27,w27,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w23,w23,w27 // d+=h - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w14,w17,ror#13 // Sigma0(a) - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w27,w27,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w12,w12 // 9 -#endif - ldp w13,w14,[x1],#2*4 - add w27,w27,w17 // h+=Sigma0(a) - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - eor w15,w23,w23,ror#14 - and w17,w24,w23 - bic w28,w25,w23 - add w26,w26,w12 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w15,ror#11 // Sigma1(e) - ror w15,w27,#2 - add w26,w26,w17 // h+=Ch(e,f,g) - eor w17,w27,w27,ror#9 - add w26,w26,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w22,w22,w26 // d+=h - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w15,w17,ror#13 // Sigma0(a) - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w26,w26,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w13,w13 // 10 -#endif - add w26,w26,w17 // h+=Sigma0(a) - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - eor w0,w22,w22,ror#14 - and w17,w23,w22 - bic w19,w24,w22 - add w25,w25,w13 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w0,ror#11 // Sigma1(e) - ror w0,w26,#2 - add w25,w25,w17 // h+=Ch(e,f,g) - eor w17,w26,w26,ror#9 - add w25,w25,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w21,w21,w25 // d+=h - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w0,w17,ror#13 // Sigma0(a) - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w25,w25,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w14,w14 // 11 -#endif - ldp w15,w0,[x1],#2*4 - add w25,w25,w17 // h+=Sigma0(a) - str w6,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - eor w6,w21,w21,ror#14 - and w17,w22,w21 - bic w28,w23,w21 - add w24,w24,w14 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w6,ror#11 // Sigma1(e) - ror w6,w25,#2 - add w24,w24,w17 // h+=Ch(e,f,g) - eor w17,w25,w25,ror#9 - add w24,w24,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w20,w20,w24 // d+=h - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w6,w17,ror#13 // Sigma0(a) - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w24,w24,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w15,w15 // 12 -#endif - add w24,w24,w17 // h+=Sigma0(a) - str w7,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - eor w7,w20,w20,ror#14 - and w17,w21,w20 - bic w19,w22,w20 - add w23,w23,w15 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w7,ror#11 // Sigma1(e) - ror w7,w24,#2 - add w23,w23,w17 // h+=Ch(e,f,g) - eor w17,w24,w24,ror#9 - add w23,w23,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w27,w27,w23 // d+=h - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w7,w17,ror#13 // Sigma0(a) - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w23,w23,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w0,w0 // 13 -#endif - ldp w1,w2,[x1] - add w23,w23,w17 // h+=Sigma0(a) - str w8,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - eor w8,w27,w27,ror#14 - and w17,w20,w27 - bic w28,w21,w27 - add w22,w22,w0 // h+=X[i] - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w8,ror#11 // Sigma1(e) - ror w8,w23,#2 - add w22,w22,w17 // h+=Ch(e,f,g) - eor w17,w23,w23,ror#9 - add w22,w22,w16 // h+=Sigma1(e) - and w19,w19,w28 // (b^c)&=(a^b) - add w26,w26,w22 // d+=h - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w8,w17,ror#13 // Sigma0(a) - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - //add w22,w22,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w1,w1 // 14 -#endif - ldr w6,[sp,#12] - add w22,w22,w17 // h+=Sigma0(a) - str w9,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - eor w9,w26,w26,ror#14 - and w17,w27,w26 - bic w19,w20,w26 - add w21,w21,w1 // h+=X[i] - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w9,ror#11 // Sigma1(e) - ror w9,w22,#2 - add w21,w21,w17 // h+=Ch(e,f,g) - eor w17,w22,w22,ror#9 - add w21,w21,w16 // h+=Sigma1(e) - and w28,w28,w19 // (b^c)&=(a^b) - add w25,w25,w21 // d+=h - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w9,w17,ror#13 // Sigma0(a) - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - //add w21,w21,w17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev w2,w2 // 15 -#endif - ldr w7,[sp,#0] - add w21,w21,w17 // h+=Sigma0(a) - str w10,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w9,w4,#7 - and w17,w26,w25 - ror w8,w1,#17 - bic w28,w27,w25 - ror w10,w21,#2 - add w20,w20,w2 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w9,w9,w4,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w10,w10,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w8,w8,w1,ror#19 - eor w9,w9,w4,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w10,w21,ror#22 // Sigma0(a) - eor w8,w8,w1,lsr#10 // sigma1(X[i+14]) - add w3,w3,w12 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w3,w3,w9 - add w20,w20,w17 // h+=Sigma0(a) - add w3,w3,w8 -.Loop_16_xx: - ldr w8,[sp,#4] - str w11,[sp,#0] - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - ror w10,w5,#7 - and w17,w25,w24 - ror w9,w2,#17 - bic w19,w26,w24 - ror w11,w20,#2 - add w27,w27,w3 // h+=X[i] - eor w16,w16,w24,ror#11 - eor w10,w10,w5,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w24,ror#25 // Sigma1(e) - eor w11,w11,w20,ror#13 - add w27,w27,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w9,w9,w2,ror#19 - eor w10,w10,w5,lsr#3 // sigma0(X[i+1]) - add w27,w27,w16 // h+=Sigma1(e) - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w11,w20,ror#22 // Sigma0(a) - eor w9,w9,w2,lsr#10 // sigma1(X[i+14]) - add w4,w4,w13 - add w23,w23,w27 // d+=h - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w4,w4,w10 - add w27,w27,w17 // h+=Sigma0(a) - add w4,w4,w9 - ldr w9,[sp,#8] - str w12,[sp,#4] - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - ror w11,w6,#7 - and w17,w24,w23 - ror w10,w3,#17 - bic w28,w25,w23 - ror w12,w27,#2 - add w26,w26,w4 // h+=X[i] - eor w16,w16,w23,ror#11 - eor w11,w11,w6,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w23,ror#25 // Sigma1(e) - eor w12,w12,w27,ror#13 - add w26,w26,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w10,w10,w3,ror#19 - eor w11,w11,w6,lsr#3 // sigma0(X[i+1]) - add w26,w26,w16 // h+=Sigma1(e) - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w12,w27,ror#22 // Sigma0(a) - eor w10,w10,w3,lsr#10 // sigma1(X[i+14]) - add w5,w5,w14 - add w22,w22,w26 // d+=h - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w5,w5,w11 - add w26,w26,w17 // h+=Sigma0(a) - add w5,w5,w10 - ldr w10,[sp,#12] - str w13,[sp,#8] - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - ror w12,w7,#7 - and w17,w23,w22 - ror w11,w4,#17 - bic w19,w24,w22 - ror w13,w26,#2 - add w25,w25,w5 // h+=X[i] - eor w16,w16,w22,ror#11 - eor w12,w12,w7,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w22,ror#25 // Sigma1(e) - eor w13,w13,w26,ror#13 - add w25,w25,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w11,w11,w4,ror#19 - eor w12,w12,w7,lsr#3 // sigma0(X[i+1]) - add w25,w25,w16 // h+=Sigma1(e) - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w13,w26,ror#22 // Sigma0(a) - eor w11,w11,w4,lsr#10 // sigma1(X[i+14]) - add w6,w6,w15 - add w21,w21,w25 // d+=h - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w6,w6,w12 - add w25,w25,w17 // h+=Sigma0(a) - add w6,w6,w11 - ldr w11,[sp,#0] - str w14,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - ror w13,w8,#7 - and w17,w22,w21 - ror w12,w5,#17 - bic w28,w23,w21 - ror w14,w25,#2 - add w24,w24,w6 // h+=X[i] - eor w16,w16,w21,ror#11 - eor w13,w13,w8,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w21,ror#25 // Sigma1(e) - eor w14,w14,w25,ror#13 - add w24,w24,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w12,w12,w5,ror#19 - eor w13,w13,w8,lsr#3 // sigma0(X[i+1]) - add w24,w24,w16 // h+=Sigma1(e) - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w14,w25,ror#22 // Sigma0(a) - eor w12,w12,w5,lsr#10 // sigma1(X[i+14]) - add w7,w7,w0 - add w20,w20,w24 // d+=h - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w7,w7,w13 - add w24,w24,w17 // h+=Sigma0(a) - add w7,w7,w12 - ldr w12,[sp,#4] - str w15,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - ror w14,w9,#7 - and w17,w21,w20 - ror w13,w6,#17 - bic w19,w22,w20 - ror w15,w24,#2 - add w23,w23,w7 // h+=X[i] - eor w16,w16,w20,ror#11 - eor w14,w14,w9,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w20,ror#25 // Sigma1(e) - eor w15,w15,w24,ror#13 - add w23,w23,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w13,w13,w6,ror#19 - eor w14,w14,w9,lsr#3 // sigma0(X[i+1]) - add w23,w23,w16 // h+=Sigma1(e) - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w15,w24,ror#22 // Sigma0(a) - eor w13,w13,w6,lsr#10 // sigma1(X[i+14]) - add w8,w8,w1 - add w27,w27,w23 // d+=h - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w8,w8,w14 - add w23,w23,w17 // h+=Sigma0(a) - add w8,w8,w13 - ldr w13,[sp,#8] - str w0,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - ror w15,w10,#7 - and w17,w20,w27 - ror w14,w7,#17 - bic w28,w21,w27 - ror w0,w23,#2 - add w22,w22,w8 // h+=X[i] - eor w16,w16,w27,ror#11 - eor w15,w15,w10,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w27,ror#25 // Sigma1(e) - eor w0,w0,w23,ror#13 - add w22,w22,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w14,w14,w7,ror#19 - eor w15,w15,w10,lsr#3 // sigma0(X[i+1]) - add w22,w22,w16 // h+=Sigma1(e) - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w0,w23,ror#22 // Sigma0(a) - eor w14,w14,w7,lsr#10 // sigma1(X[i+14]) - add w9,w9,w2 - add w26,w26,w22 // d+=h - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w9,w9,w15 - add w22,w22,w17 // h+=Sigma0(a) - add w9,w9,w14 - ldr w14,[sp,#12] - str w1,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - ror w0,w11,#7 - and w17,w27,w26 - ror w15,w8,#17 - bic w19,w20,w26 - ror w1,w22,#2 - add w21,w21,w9 // h+=X[i] - eor w16,w16,w26,ror#11 - eor w0,w0,w11,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w26,ror#25 // Sigma1(e) - eor w1,w1,w22,ror#13 - add w21,w21,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w15,w15,w8,ror#19 - eor w0,w0,w11,lsr#3 // sigma0(X[i+1]) - add w21,w21,w16 // h+=Sigma1(e) - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w1,w22,ror#22 // Sigma0(a) - eor w15,w15,w8,lsr#10 // sigma1(X[i+14]) - add w10,w10,w3 - add w25,w25,w21 // d+=h - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w10,w10,w0 - add w21,w21,w17 // h+=Sigma0(a) - add w10,w10,w15 - ldr w15,[sp,#0] - str w2,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w1,w12,#7 - and w17,w26,w25 - ror w0,w9,#17 - bic w28,w27,w25 - ror w2,w21,#2 - add w20,w20,w10 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w1,w1,w12,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w2,w2,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w0,w0,w9,ror#19 - eor w1,w1,w12,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w2,w21,ror#22 // Sigma0(a) - eor w0,w0,w9,lsr#10 // sigma1(X[i+14]) - add w11,w11,w4 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w11,w11,w1 - add w20,w20,w17 // h+=Sigma0(a) - add w11,w11,w0 - ldr w0,[sp,#4] - str w3,[sp,#0] - ror w16,w24,#6 - add w27,w27,w19 // h+=K[i] - ror w2,w13,#7 - and w17,w25,w24 - ror w1,w10,#17 - bic w19,w26,w24 - ror w3,w20,#2 - add w27,w27,w11 // h+=X[i] - eor w16,w16,w24,ror#11 - eor w2,w2,w13,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w20,w21 // a^b, b^c in next round - eor w16,w16,w24,ror#25 // Sigma1(e) - eor w3,w3,w20,ror#13 - add w27,w27,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w1,w1,w10,ror#19 - eor w2,w2,w13,lsr#3 // sigma0(X[i+1]) - add w27,w27,w16 // h+=Sigma1(e) - eor w28,w28,w21 // Maj(a,b,c) - eor w17,w3,w20,ror#22 // Sigma0(a) - eor w1,w1,w10,lsr#10 // sigma1(X[i+14]) - add w12,w12,w5 - add w23,w23,w27 // d+=h - add w27,w27,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w12,w12,w2 - add w27,w27,w17 // h+=Sigma0(a) - add w12,w12,w1 - ldr w1,[sp,#8] - str w4,[sp,#4] - ror w16,w23,#6 - add w26,w26,w28 // h+=K[i] - ror w3,w14,#7 - and w17,w24,w23 - ror w2,w11,#17 - bic w28,w25,w23 - ror w4,w27,#2 - add w26,w26,w12 // h+=X[i] - eor w16,w16,w23,ror#11 - eor w3,w3,w14,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w27,w20 // a^b, b^c in next round - eor w16,w16,w23,ror#25 // Sigma1(e) - eor w4,w4,w27,ror#13 - add w26,w26,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w2,w2,w11,ror#19 - eor w3,w3,w14,lsr#3 // sigma0(X[i+1]) - add w26,w26,w16 // h+=Sigma1(e) - eor w19,w19,w20 // Maj(a,b,c) - eor w17,w4,w27,ror#22 // Sigma0(a) - eor w2,w2,w11,lsr#10 // sigma1(X[i+14]) - add w13,w13,w6 - add w22,w22,w26 // d+=h - add w26,w26,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w13,w13,w3 - add w26,w26,w17 // h+=Sigma0(a) - add w13,w13,w2 - ldr w2,[sp,#12] - str w5,[sp,#8] - ror w16,w22,#6 - add w25,w25,w19 // h+=K[i] - ror w4,w15,#7 - and w17,w23,w22 - ror w3,w12,#17 - bic w19,w24,w22 - ror w5,w26,#2 - add w25,w25,w13 // h+=X[i] - eor w16,w16,w22,ror#11 - eor w4,w4,w15,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w26,w27 // a^b, b^c in next round - eor w16,w16,w22,ror#25 // Sigma1(e) - eor w5,w5,w26,ror#13 - add w25,w25,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w3,w3,w12,ror#19 - eor w4,w4,w15,lsr#3 // sigma0(X[i+1]) - add w25,w25,w16 // h+=Sigma1(e) - eor w28,w28,w27 // Maj(a,b,c) - eor w17,w5,w26,ror#22 // Sigma0(a) - eor w3,w3,w12,lsr#10 // sigma1(X[i+14]) - add w14,w14,w7 - add w21,w21,w25 // d+=h - add w25,w25,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w14,w14,w4 - add w25,w25,w17 // h+=Sigma0(a) - add w14,w14,w3 - ldr w3,[sp,#0] - str w6,[sp,#12] - ror w16,w21,#6 - add w24,w24,w28 // h+=K[i] - ror w5,w0,#7 - and w17,w22,w21 - ror w4,w13,#17 - bic w28,w23,w21 - ror w6,w25,#2 - add w24,w24,w14 // h+=X[i] - eor w16,w16,w21,ror#11 - eor w5,w5,w0,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w25,w26 // a^b, b^c in next round - eor w16,w16,w21,ror#25 // Sigma1(e) - eor w6,w6,w25,ror#13 - add w24,w24,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w4,w4,w13,ror#19 - eor w5,w5,w0,lsr#3 // sigma0(X[i+1]) - add w24,w24,w16 // h+=Sigma1(e) - eor w19,w19,w26 // Maj(a,b,c) - eor w17,w6,w25,ror#22 // Sigma0(a) - eor w4,w4,w13,lsr#10 // sigma1(X[i+14]) - add w15,w15,w8 - add w20,w20,w24 // d+=h - add w24,w24,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w15,w15,w5 - add w24,w24,w17 // h+=Sigma0(a) - add w15,w15,w4 - ldr w4,[sp,#4] - str w7,[sp,#0] - ror w16,w20,#6 - add w23,w23,w19 // h+=K[i] - ror w6,w1,#7 - and w17,w21,w20 - ror w5,w14,#17 - bic w19,w22,w20 - ror w7,w24,#2 - add w23,w23,w15 // h+=X[i] - eor w16,w16,w20,ror#11 - eor w6,w6,w1,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w24,w25 // a^b, b^c in next round - eor w16,w16,w20,ror#25 // Sigma1(e) - eor w7,w7,w24,ror#13 - add w23,w23,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w5,w5,w14,ror#19 - eor w6,w6,w1,lsr#3 // sigma0(X[i+1]) - add w23,w23,w16 // h+=Sigma1(e) - eor w28,w28,w25 // Maj(a,b,c) - eor w17,w7,w24,ror#22 // Sigma0(a) - eor w5,w5,w14,lsr#10 // sigma1(X[i+14]) - add w0,w0,w9 - add w27,w27,w23 // d+=h - add w23,w23,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w0,w0,w6 - add w23,w23,w17 // h+=Sigma0(a) - add w0,w0,w5 - ldr w5,[sp,#8] - str w8,[sp,#4] - ror w16,w27,#6 - add w22,w22,w28 // h+=K[i] - ror w7,w2,#7 - and w17,w20,w27 - ror w6,w15,#17 - bic w28,w21,w27 - ror w8,w23,#2 - add w22,w22,w0 // h+=X[i] - eor w16,w16,w27,ror#11 - eor w7,w7,w2,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w23,w24 // a^b, b^c in next round - eor w16,w16,w27,ror#25 // Sigma1(e) - eor w8,w8,w23,ror#13 - add w22,w22,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w6,w6,w15,ror#19 - eor w7,w7,w2,lsr#3 // sigma0(X[i+1]) - add w22,w22,w16 // h+=Sigma1(e) - eor w19,w19,w24 // Maj(a,b,c) - eor w17,w8,w23,ror#22 // Sigma0(a) - eor w6,w6,w15,lsr#10 // sigma1(X[i+14]) - add w1,w1,w10 - add w26,w26,w22 // d+=h - add w22,w22,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w1,w1,w7 - add w22,w22,w17 // h+=Sigma0(a) - add w1,w1,w6 - ldr w6,[sp,#12] - str w9,[sp,#8] - ror w16,w26,#6 - add w21,w21,w19 // h+=K[i] - ror w8,w3,#7 - and w17,w27,w26 - ror w7,w0,#17 - bic w19,w20,w26 - ror w9,w22,#2 - add w21,w21,w1 // h+=X[i] - eor w16,w16,w26,ror#11 - eor w8,w8,w3,ror#18 - orr w17,w17,w19 // Ch(e,f,g) - eor w19,w22,w23 // a^b, b^c in next round - eor w16,w16,w26,ror#25 // Sigma1(e) - eor w9,w9,w22,ror#13 - add w21,w21,w17 // h+=Ch(e,f,g) - and w28,w28,w19 // (b^c)&=(a^b) - eor w7,w7,w0,ror#19 - eor w8,w8,w3,lsr#3 // sigma0(X[i+1]) - add w21,w21,w16 // h+=Sigma1(e) - eor w28,w28,w23 // Maj(a,b,c) - eor w17,w9,w22,ror#22 // Sigma0(a) - eor w7,w7,w0,lsr#10 // sigma1(X[i+14]) - add w2,w2,w11 - add w25,w25,w21 // d+=h - add w21,w21,w28 // h+=Maj(a,b,c) - ldr w28,[x30],#4 // *K++, w19 in next round - add w2,w2,w8 - add w21,w21,w17 // h+=Sigma0(a) - add w2,w2,w7 - ldr w7,[sp,#0] - str w10,[sp,#12] - ror w16,w25,#6 - add w20,w20,w28 // h+=K[i] - ror w9,w4,#7 - and w17,w26,w25 - ror w8,w1,#17 - bic w28,w27,w25 - ror w10,w21,#2 - add w20,w20,w2 // h+=X[i] - eor w16,w16,w25,ror#11 - eor w9,w9,w4,ror#18 - orr w17,w17,w28 // Ch(e,f,g) - eor w28,w21,w22 // a^b, b^c in next round - eor w16,w16,w25,ror#25 // Sigma1(e) - eor w10,w10,w21,ror#13 - add w20,w20,w17 // h+=Ch(e,f,g) - and w19,w19,w28 // (b^c)&=(a^b) - eor w8,w8,w1,ror#19 - eor w9,w9,w4,lsr#3 // sigma0(X[i+1]) - add w20,w20,w16 // h+=Sigma1(e) - eor w19,w19,w22 // Maj(a,b,c) - eor w17,w10,w21,ror#22 // Sigma0(a) - eor w8,w8,w1,lsr#10 // sigma1(X[i+14]) - add w3,w3,w12 - add w24,w24,w20 // d+=h - add w20,w20,w19 // h+=Maj(a,b,c) - ldr w19,[x30],#4 // *K++, w28 in next round - add w3,w3,w9 - add w20,w20,w17 // h+=Sigma0(a) - add w3,w3,w8 - cbnz w19,.Loop_16_xx - - ldp x0,x2,[x29,#96] - ldr x1,[x29,#112] - sub x30,x30,#260 // rewind - - ldp w3,w4,[x0] - ldp w5,w6,[x0,#2*4] - add x1,x1,#14*4 // advance input pointer - ldp w7,w8,[x0,#4*4] - add w20,w20,w3 - ldp w9,w10,[x0,#6*4] - add w21,w21,w4 - add w22,w22,w5 - add w23,w23,w6 - stp w20,w21,[x0] - add w24,w24,w7 - add w25,w25,w8 - stp w22,w23,[x0,#2*4] - add w26,w26,w9 - add w27,w27,w10 - cmp x1,x2 - stp w24,w25,[x0,#4*4] - stp w26,w27,[x0,#6*4] - b.ne .Loop - - ldp x19,x20,[x29,#16] - add sp,sp,#4*4 - ldp x21,x22,[x29,#32] - ldp x23,x24,[x29,#48] - ldp x25,x26,[x29,#64] - ldp x27,x28,[x29,#80] - ldp x29,x30,[sp],#128 - ret -.size sha256_block_data_order,.-sha256_block_data_order - -.align 6 -.type K256,%object -K256: - .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 - .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 - .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 - .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 - .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc - .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da - .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 - .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 - .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 - .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 - .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 - .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 - .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 - .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 - .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 - .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - .long 0 //terminator -.size K256,.-K256 -.align 3 -.LOPENSSL_armcap_P: - .quad OPENSSL_armcap_P-. -.asciz "SHA256 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.type sha256_block_armv8,%function -.align 6 -sha256_block_armv8: -.Lv8_entry: - stp x29,x30,[sp,#-16]! - add x29,sp,#0 - - ld1 {v0.4s,v1.4s},[x0] - adr x3,K256 - -.Loop_hw: - ld1 {v4.16b-v7.16b},[x1],#64 - sub x2,x2,#1 - ld1 {v16.4s},[x3],#16 - rev32 v4.16b,v4.16b - rev32 v5.16b,v5.16b - rev32 v6.16b,v6.16b - rev32 v7.16b,v7.16b - orr v18.16b,v0.16b,v0.16b // offload - orr v19.16b,v1.16b,v1.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - .inst 0x5e2828a4 //sha256su0 v4.16b,v5.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e0760c4 //sha256su1 v4.16b,v6.16b,v7.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - .inst 0x5e2828c5 //sha256su0 v5.16b,v6.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0460e5 //sha256su1 v5.16b,v7.16b,v4.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v6.4s - .inst 0x5e2828e6 //sha256su0 v6.16b,v7.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - .inst 0x5e056086 //sha256su1 v6.16b,v4.16b,v5.16b - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v7.4s - .inst 0x5e282887 //sha256su0 v7.16b,v4.16b - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - .inst 0x5e0660a7 //sha256su1 v7.16b,v5.16b,v6.16b - ld1 {v17.4s},[x3],#16 - add v16.4s,v16.4s,v4.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - - ld1 {v16.4s},[x3],#16 - add v17.4s,v17.4s,v5.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - - ld1 {v17.4s},[x3] - add v16.4s,v16.4s,v6.4s - sub x3,x3,#64*4-16 // rewind - orr v2.16b,v0.16b,v0.16b - .inst 0x5e104020 //sha256h v0.16b,v1.16b,v16.4s - .inst 0x5e105041 //sha256h2 v1.16b,v2.16b,v16.4s - - add v17.4s,v17.4s,v7.4s - orr v2.16b,v0.16b,v0.16b - .inst 0x5e114020 //sha256h v0.16b,v1.16b,v17.4s - .inst 0x5e115041 //sha256h2 v1.16b,v2.16b,v17.4s - - add v0.4s,v0.4s,v18.4s - add v1.4s,v1.4s,v19.4s - - cbnz x2,.Loop_hw - - st1 {v0.4s,v1.4s},[x0] - - ldr x29,[sp],#16 - ret -.size sha256_block_armv8,.-sha256_block_armv8 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha512-armv8.S b/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha512-armv8.S deleted file mode 100644 index 6b0d1940c6bef1..00000000000000 --- a/deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha512-armv8.S +++ /dev/null @@ -1,1021 +0,0 @@ -#include "arm_arch.h" - -.text - -.globl sha512_block_data_order -.type sha512_block_data_order,%function -.align 6 -sha512_block_data_order: - stp x29,x30,[sp,#-128]! - add x29,sp,#0 - - stp x19,x20,[sp,#16] - stp x21,x22,[sp,#32] - stp x23,x24,[sp,#48] - stp x25,x26,[sp,#64] - stp x27,x28,[sp,#80] - sub sp,sp,#4*8 - - ldp x20,x21,[x0] // load context - ldp x22,x23,[x0,#2*8] - ldp x24,x25,[x0,#4*8] - add x2,x1,x2,lsl#7 // end of input - ldp x26,x27,[x0,#6*8] - adr x30,K512 - stp x0,x2,[x29,#96] - -.Loop: - ldp x3,x4,[x1],#2*8 - ldr x19,[x30],#8 // *K++ - eor x28,x21,x22 // magic seed - str x1,[x29,#112] -#ifndef __ARMEB__ - rev x3,x3 // 0 -#endif - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - eor x6,x24,x24,ror#23 - and x17,x25,x24 - bic x19,x26,x24 - add x27,x27,x3 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x6,ror#18 // Sigma1(e) - ror x6,x20,#28 - add x27,x27,x17 // h+=Ch(e,f,g) - eor x17,x20,x20,ror#5 - add x27,x27,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x23,x23,x27 // d+=h - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x6,x17,ror#34 // Sigma0(a) - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x27,x27,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x4,x4 // 1 -#endif - ldp x5,x6,[x1],#2*8 - add x27,x27,x17 // h+=Sigma0(a) - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - eor x7,x23,x23,ror#23 - and x17,x24,x23 - bic x28,x25,x23 - add x26,x26,x4 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x7,ror#18 // Sigma1(e) - ror x7,x27,#28 - add x26,x26,x17 // h+=Ch(e,f,g) - eor x17,x27,x27,ror#5 - add x26,x26,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x22,x22,x26 // d+=h - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x7,x17,ror#34 // Sigma0(a) - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x26,x26,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x5,x5 // 2 -#endif - add x26,x26,x17 // h+=Sigma0(a) - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - eor x8,x22,x22,ror#23 - and x17,x23,x22 - bic x19,x24,x22 - add x25,x25,x5 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x8,ror#18 // Sigma1(e) - ror x8,x26,#28 - add x25,x25,x17 // h+=Ch(e,f,g) - eor x17,x26,x26,ror#5 - add x25,x25,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x21,x21,x25 // d+=h - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x8,x17,ror#34 // Sigma0(a) - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x25,x25,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x6,x6 // 3 -#endif - ldp x7,x8,[x1],#2*8 - add x25,x25,x17 // h+=Sigma0(a) - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - eor x9,x21,x21,ror#23 - and x17,x22,x21 - bic x28,x23,x21 - add x24,x24,x6 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x9,ror#18 // Sigma1(e) - ror x9,x25,#28 - add x24,x24,x17 // h+=Ch(e,f,g) - eor x17,x25,x25,ror#5 - add x24,x24,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x20,x20,x24 // d+=h - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x9,x17,ror#34 // Sigma0(a) - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x24,x24,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x7,x7 // 4 -#endif - add x24,x24,x17 // h+=Sigma0(a) - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - eor x10,x20,x20,ror#23 - and x17,x21,x20 - bic x19,x22,x20 - add x23,x23,x7 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x10,ror#18 // Sigma1(e) - ror x10,x24,#28 - add x23,x23,x17 // h+=Ch(e,f,g) - eor x17,x24,x24,ror#5 - add x23,x23,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x27,x27,x23 // d+=h - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x10,x17,ror#34 // Sigma0(a) - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x23,x23,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x8,x8 // 5 -#endif - ldp x9,x10,[x1],#2*8 - add x23,x23,x17 // h+=Sigma0(a) - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - eor x11,x27,x27,ror#23 - and x17,x20,x27 - bic x28,x21,x27 - add x22,x22,x8 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x11,ror#18 // Sigma1(e) - ror x11,x23,#28 - add x22,x22,x17 // h+=Ch(e,f,g) - eor x17,x23,x23,ror#5 - add x22,x22,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x26,x26,x22 // d+=h - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x11,x17,ror#34 // Sigma0(a) - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x22,x22,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x9,x9 // 6 -#endif - add x22,x22,x17 // h+=Sigma0(a) - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - eor x12,x26,x26,ror#23 - and x17,x27,x26 - bic x19,x20,x26 - add x21,x21,x9 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x12,ror#18 // Sigma1(e) - ror x12,x22,#28 - add x21,x21,x17 // h+=Ch(e,f,g) - eor x17,x22,x22,ror#5 - add x21,x21,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x25,x25,x21 // d+=h - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x12,x17,ror#34 // Sigma0(a) - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x21,x21,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x10,x10 // 7 -#endif - ldp x11,x12,[x1],#2*8 - add x21,x21,x17 // h+=Sigma0(a) - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - eor x13,x25,x25,ror#23 - and x17,x26,x25 - bic x28,x27,x25 - add x20,x20,x10 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x13,ror#18 // Sigma1(e) - ror x13,x21,#28 - add x20,x20,x17 // h+=Ch(e,f,g) - eor x17,x21,x21,ror#5 - add x20,x20,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x24,x24,x20 // d+=h - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x13,x17,ror#34 // Sigma0(a) - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x20,x20,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x11,x11 // 8 -#endif - add x20,x20,x17 // h+=Sigma0(a) - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - eor x14,x24,x24,ror#23 - and x17,x25,x24 - bic x19,x26,x24 - add x27,x27,x11 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x14,ror#18 // Sigma1(e) - ror x14,x20,#28 - add x27,x27,x17 // h+=Ch(e,f,g) - eor x17,x20,x20,ror#5 - add x27,x27,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x23,x23,x27 // d+=h - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x14,x17,ror#34 // Sigma0(a) - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x27,x27,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x12,x12 // 9 -#endif - ldp x13,x14,[x1],#2*8 - add x27,x27,x17 // h+=Sigma0(a) - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - eor x15,x23,x23,ror#23 - and x17,x24,x23 - bic x28,x25,x23 - add x26,x26,x12 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x15,ror#18 // Sigma1(e) - ror x15,x27,#28 - add x26,x26,x17 // h+=Ch(e,f,g) - eor x17,x27,x27,ror#5 - add x26,x26,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x22,x22,x26 // d+=h - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x15,x17,ror#34 // Sigma0(a) - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x26,x26,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x13,x13 // 10 -#endif - add x26,x26,x17 // h+=Sigma0(a) - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - eor x0,x22,x22,ror#23 - and x17,x23,x22 - bic x19,x24,x22 - add x25,x25,x13 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x0,ror#18 // Sigma1(e) - ror x0,x26,#28 - add x25,x25,x17 // h+=Ch(e,f,g) - eor x17,x26,x26,ror#5 - add x25,x25,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x21,x21,x25 // d+=h - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x0,x17,ror#34 // Sigma0(a) - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x25,x25,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x14,x14 // 11 -#endif - ldp x15,x0,[x1],#2*8 - add x25,x25,x17 // h+=Sigma0(a) - str x6,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - eor x6,x21,x21,ror#23 - and x17,x22,x21 - bic x28,x23,x21 - add x24,x24,x14 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x6,ror#18 // Sigma1(e) - ror x6,x25,#28 - add x24,x24,x17 // h+=Ch(e,f,g) - eor x17,x25,x25,ror#5 - add x24,x24,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x20,x20,x24 // d+=h - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x6,x17,ror#34 // Sigma0(a) - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x24,x24,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x15,x15 // 12 -#endif - add x24,x24,x17 // h+=Sigma0(a) - str x7,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - eor x7,x20,x20,ror#23 - and x17,x21,x20 - bic x19,x22,x20 - add x23,x23,x15 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x7,ror#18 // Sigma1(e) - ror x7,x24,#28 - add x23,x23,x17 // h+=Ch(e,f,g) - eor x17,x24,x24,ror#5 - add x23,x23,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x27,x27,x23 // d+=h - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x7,x17,ror#34 // Sigma0(a) - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x23,x23,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x0,x0 // 13 -#endif - ldp x1,x2,[x1] - add x23,x23,x17 // h+=Sigma0(a) - str x8,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - eor x8,x27,x27,ror#23 - and x17,x20,x27 - bic x28,x21,x27 - add x22,x22,x0 // h+=X[i] - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x8,ror#18 // Sigma1(e) - ror x8,x23,#28 - add x22,x22,x17 // h+=Ch(e,f,g) - eor x17,x23,x23,ror#5 - add x22,x22,x16 // h+=Sigma1(e) - and x19,x19,x28 // (b^c)&=(a^b) - add x26,x26,x22 // d+=h - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x8,x17,ror#34 // Sigma0(a) - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - //add x22,x22,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x1,x1 // 14 -#endif - ldr x6,[sp,#24] - add x22,x22,x17 // h+=Sigma0(a) - str x9,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - eor x9,x26,x26,ror#23 - and x17,x27,x26 - bic x19,x20,x26 - add x21,x21,x1 // h+=X[i] - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x9,ror#18 // Sigma1(e) - ror x9,x22,#28 - add x21,x21,x17 // h+=Ch(e,f,g) - eor x17,x22,x22,ror#5 - add x21,x21,x16 // h+=Sigma1(e) - and x28,x28,x19 // (b^c)&=(a^b) - add x25,x25,x21 // d+=h - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x9,x17,ror#34 // Sigma0(a) - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - //add x21,x21,x17 // h+=Sigma0(a) -#ifndef __ARMEB__ - rev x2,x2 // 15 -#endif - ldr x7,[sp,#0] - add x21,x21,x17 // h+=Sigma0(a) - str x10,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x9,x4,#1 - and x17,x26,x25 - ror x8,x1,#19 - bic x28,x27,x25 - ror x10,x21,#28 - add x20,x20,x2 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x9,x9,x4,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x10,x10,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x8,x8,x1,ror#61 - eor x9,x9,x4,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x10,x21,ror#39 // Sigma0(a) - eor x8,x8,x1,lsr#6 // sigma1(X[i+14]) - add x3,x3,x12 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x3,x3,x9 - add x20,x20,x17 // h+=Sigma0(a) - add x3,x3,x8 -.Loop_16_xx: - ldr x8,[sp,#8] - str x11,[sp,#0] - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - ror x10,x5,#1 - and x17,x25,x24 - ror x9,x2,#19 - bic x19,x26,x24 - ror x11,x20,#28 - add x27,x27,x3 // h+=X[i] - eor x16,x16,x24,ror#18 - eor x10,x10,x5,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x24,ror#41 // Sigma1(e) - eor x11,x11,x20,ror#34 - add x27,x27,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x9,x9,x2,ror#61 - eor x10,x10,x5,lsr#7 // sigma0(X[i+1]) - add x27,x27,x16 // h+=Sigma1(e) - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x11,x20,ror#39 // Sigma0(a) - eor x9,x9,x2,lsr#6 // sigma1(X[i+14]) - add x4,x4,x13 - add x23,x23,x27 // d+=h - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x4,x4,x10 - add x27,x27,x17 // h+=Sigma0(a) - add x4,x4,x9 - ldr x9,[sp,#16] - str x12,[sp,#8] - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - ror x11,x6,#1 - and x17,x24,x23 - ror x10,x3,#19 - bic x28,x25,x23 - ror x12,x27,#28 - add x26,x26,x4 // h+=X[i] - eor x16,x16,x23,ror#18 - eor x11,x11,x6,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x23,ror#41 // Sigma1(e) - eor x12,x12,x27,ror#34 - add x26,x26,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x10,x10,x3,ror#61 - eor x11,x11,x6,lsr#7 // sigma0(X[i+1]) - add x26,x26,x16 // h+=Sigma1(e) - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x12,x27,ror#39 // Sigma0(a) - eor x10,x10,x3,lsr#6 // sigma1(X[i+14]) - add x5,x5,x14 - add x22,x22,x26 // d+=h - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x5,x5,x11 - add x26,x26,x17 // h+=Sigma0(a) - add x5,x5,x10 - ldr x10,[sp,#24] - str x13,[sp,#16] - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - ror x12,x7,#1 - and x17,x23,x22 - ror x11,x4,#19 - bic x19,x24,x22 - ror x13,x26,#28 - add x25,x25,x5 // h+=X[i] - eor x16,x16,x22,ror#18 - eor x12,x12,x7,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x22,ror#41 // Sigma1(e) - eor x13,x13,x26,ror#34 - add x25,x25,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x11,x11,x4,ror#61 - eor x12,x12,x7,lsr#7 // sigma0(X[i+1]) - add x25,x25,x16 // h+=Sigma1(e) - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x13,x26,ror#39 // Sigma0(a) - eor x11,x11,x4,lsr#6 // sigma1(X[i+14]) - add x6,x6,x15 - add x21,x21,x25 // d+=h - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x6,x6,x12 - add x25,x25,x17 // h+=Sigma0(a) - add x6,x6,x11 - ldr x11,[sp,#0] - str x14,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - ror x13,x8,#1 - and x17,x22,x21 - ror x12,x5,#19 - bic x28,x23,x21 - ror x14,x25,#28 - add x24,x24,x6 // h+=X[i] - eor x16,x16,x21,ror#18 - eor x13,x13,x8,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x21,ror#41 // Sigma1(e) - eor x14,x14,x25,ror#34 - add x24,x24,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x12,x12,x5,ror#61 - eor x13,x13,x8,lsr#7 // sigma0(X[i+1]) - add x24,x24,x16 // h+=Sigma1(e) - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x14,x25,ror#39 // Sigma0(a) - eor x12,x12,x5,lsr#6 // sigma1(X[i+14]) - add x7,x7,x0 - add x20,x20,x24 // d+=h - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x7,x7,x13 - add x24,x24,x17 // h+=Sigma0(a) - add x7,x7,x12 - ldr x12,[sp,#8] - str x15,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - ror x14,x9,#1 - and x17,x21,x20 - ror x13,x6,#19 - bic x19,x22,x20 - ror x15,x24,#28 - add x23,x23,x7 // h+=X[i] - eor x16,x16,x20,ror#18 - eor x14,x14,x9,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x20,ror#41 // Sigma1(e) - eor x15,x15,x24,ror#34 - add x23,x23,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x13,x13,x6,ror#61 - eor x14,x14,x9,lsr#7 // sigma0(X[i+1]) - add x23,x23,x16 // h+=Sigma1(e) - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x15,x24,ror#39 // Sigma0(a) - eor x13,x13,x6,lsr#6 // sigma1(X[i+14]) - add x8,x8,x1 - add x27,x27,x23 // d+=h - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x8,x8,x14 - add x23,x23,x17 // h+=Sigma0(a) - add x8,x8,x13 - ldr x13,[sp,#16] - str x0,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - ror x15,x10,#1 - and x17,x20,x27 - ror x14,x7,#19 - bic x28,x21,x27 - ror x0,x23,#28 - add x22,x22,x8 // h+=X[i] - eor x16,x16,x27,ror#18 - eor x15,x15,x10,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x27,ror#41 // Sigma1(e) - eor x0,x0,x23,ror#34 - add x22,x22,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x14,x14,x7,ror#61 - eor x15,x15,x10,lsr#7 // sigma0(X[i+1]) - add x22,x22,x16 // h+=Sigma1(e) - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x0,x23,ror#39 // Sigma0(a) - eor x14,x14,x7,lsr#6 // sigma1(X[i+14]) - add x9,x9,x2 - add x26,x26,x22 // d+=h - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x9,x9,x15 - add x22,x22,x17 // h+=Sigma0(a) - add x9,x9,x14 - ldr x14,[sp,#24] - str x1,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - ror x0,x11,#1 - and x17,x27,x26 - ror x15,x8,#19 - bic x19,x20,x26 - ror x1,x22,#28 - add x21,x21,x9 // h+=X[i] - eor x16,x16,x26,ror#18 - eor x0,x0,x11,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x26,ror#41 // Sigma1(e) - eor x1,x1,x22,ror#34 - add x21,x21,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x15,x15,x8,ror#61 - eor x0,x0,x11,lsr#7 // sigma0(X[i+1]) - add x21,x21,x16 // h+=Sigma1(e) - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x1,x22,ror#39 // Sigma0(a) - eor x15,x15,x8,lsr#6 // sigma1(X[i+14]) - add x10,x10,x3 - add x25,x25,x21 // d+=h - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x10,x10,x0 - add x21,x21,x17 // h+=Sigma0(a) - add x10,x10,x15 - ldr x15,[sp,#0] - str x2,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x1,x12,#1 - and x17,x26,x25 - ror x0,x9,#19 - bic x28,x27,x25 - ror x2,x21,#28 - add x20,x20,x10 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x1,x1,x12,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x2,x2,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x0,x0,x9,ror#61 - eor x1,x1,x12,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x2,x21,ror#39 // Sigma0(a) - eor x0,x0,x9,lsr#6 // sigma1(X[i+14]) - add x11,x11,x4 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x11,x11,x1 - add x20,x20,x17 // h+=Sigma0(a) - add x11,x11,x0 - ldr x0,[sp,#8] - str x3,[sp,#0] - ror x16,x24,#14 - add x27,x27,x19 // h+=K[i] - ror x2,x13,#1 - and x17,x25,x24 - ror x1,x10,#19 - bic x19,x26,x24 - ror x3,x20,#28 - add x27,x27,x11 // h+=X[i] - eor x16,x16,x24,ror#18 - eor x2,x2,x13,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x20,x21 // a^b, b^c in next round - eor x16,x16,x24,ror#41 // Sigma1(e) - eor x3,x3,x20,ror#34 - add x27,x27,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x1,x1,x10,ror#61 - eor x2,x2,x13,lsr#7 // sigma0(X[i+1]) - add x27,x27,x16 // h+=Sigma1(e) - eor x28,x28,x21 // Maj(a,b,c) - eor x17,x3,x20,ror#39 // Sigma0(a) - eor x1,x1,x10,lsr#6 // sigma1(X[i+14]) - add x12,x12,x5 - add x23,x23,x27 // d+=h - add x27,x27,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x12,x12,x2 - add x27,x27,x17 // h+=Sigma0(a) - add x12,x12,x1 - ldr x1,[sp,#16] - str x4,[sp,#8] - ror x16,x23,#14 - add x26,x26,x28 // h+=K[i] - ror x3,x14,#1 - and x17,x24,x23 - ror x2,x11,#19 - bic x28,x25,x23 - ror x4,x27,#28 - add x26,x26,x12 // h+=X[i] - eor x16,x16,x23,ror#18 - eor x3,x3,x14,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x27,x20 // a^b, b^c in next round - eor x16,x16,x23,ror#41 // Sigma1(e) - eor x4,x4,x27,ror#34 - add x26,x26,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x2,x2,x11,ror#61 - eor x3,x3,x14,lsr#7 // sigma0(X[i+1]) - add x26,x26,x16 // h+=Sigma1(e) - eor x19,x19,x20 // Maj(a,b,c) - eor x17,x4,x27,ror#39 // Sigma0(a) - eor x2,x2,x11,lsr#6 // sigma1(X[i+14]) - add x13,x13,x6 - add x22,x22,x26 // d+=h - add x26,x26,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x13,x13,x3 - add x26,x26,x17 // h+=Sigma0(a) - add x13,x13,x2 - ldr x2,[sp,#24] - str x5,[sp,#16] - ror x16,x22,#14 - add x25,x25,x19 // h+=K[i] - ror x4,x15,#1 - and x17,x23,x22 - ror x3,x12,#19 - bic x19,x24,x22 - ror x5,x26,#28 - add x25,x25,x13 // h+=X[i] - eor x16,x16,x22,ror#18 - eor x4,x4,x15,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x26,x27 // a^b, b^c in next round - eor x16,x16,x22,ror#41 // Sigma1(e) - eor x5,x5,x26,ror#34 - add x25,x25,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x3,x3,x12,ror#61 - eor x4,x4,x15,lsr#7 // sigma0(X[i+1]) - add x25,x25,x16 // h+=Sigma1(e) - eor x28,x28,x27 // Maj(a,b,c) - eor x17,x5,x26,ror#39 // Sigma0(a) - eor x3,x3,x12,lsr#6 // sigma1(X[i+14]) - add x14,x14,x7 - add x21,x21,x25 // d+=h - add x25,x25,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x14,x14,x4 - add x25,x25,x17 // h+=Sigma0(a) - add x14,x14,x3 - ldr x3,[sp,#0] - str x6,[sp,#24] - ror x16,x21,#14 - add x24,x24,x28 // h+=K[i] - ror x5,x0,#1 - and x17,x22,x21 - ror x4,x13,#19 - bic x28,x23,x21 - ror x6,x25,#28 - add x24,x24,x14 // h+=X[i] - eor x16,x16,x21,ror#18 - eor x5,x5,x0,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x25,x26 // a^b, b^c in next round - eor x16,x16,x21,ror#41 // Sigma1(e) - eor x6,x6,x25,ror#34 - add x24,x24,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x4,x4,x13,ror#61 - eor x5,x5,x0,lsr#7 // sigma0(X[i+1]) - add x24,x24,x16 // h+=Sigma1(e) - eor x19,x19,x26 // Maj(a,b,c) - eor x17,x6,x25,ror#39 // Sigma0(a) - eor x4,x4,x13,lsr#6 // sigma1(X[i+14]) - add x15,x15,x8 - add x20,x20,x24 // d+=h - add x24,x24,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x15,x15,x5 - add x24,x24,x17 // h+=Sigma0(a) - add x15,x15,x4 - ldr x4,[sp,#8] - str x7,[sp,#0] - ror x16,x20,#14 - add x23,x23,x19 // h+=K[i] - ror x6,x1,#1 - and x17,x21,x20 - ror x5,x14,#19 - bic x19,x22,x20 - ror x7,x24,#28 - add x23,x23,x15 // h+=X[i] - eor x16,x16,x20,ror#18 - eor x6,x6,x1,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x24,x25 // a^b, b^c in next round - eor x16,x16,x20,ror#41 // Sigma1(e) - eor x7,x7,x24,ror#34 - add x23,x23,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x5,x5,x14,ror#61 - eor x6,x6,x1,lsr#7 // sigma0(X[i+1]) - add x23,x23,x16 // h+=Sigma1(e) - eor x28,x28,x25 // Maj(a,b,c) - eor x17,x7,x24,ror#39 // Sigma0(a) - eor x5,x5,x14,lsr#6 // sigma1(X[i+14]) - add x0,x0,x9 - add x27,x27,x23 // d+=h - add x23,x23,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x0,x0,x6 - add x23,x23,x17 // h+=Sigma0(a) - add x0,x0,x5 - ldr x5,[sp,#16] - str x8,[sp,#8] - ror x16,x27,#14 - add x22,x22,x28 // h+=K[i] - ror x7,x2,#1 - and x17,x20,x27 - ror x6,x15,#19 - bic x28,x21,x27 - ror x8,x23,#28 - add x22,x22,x0 // h+=X[i] - eor x16,x16,x27,ror#18 - eor x7,x7,x2,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x23,x24 // a^b, b^c in next round - eor x16,x16,x27,ror#41 // Sigma1(e) - eor x8,x8,x23,ror#34 - add x22,x22,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x6,x6,x15,ror#61 - eor x7,x7,x2,lsr#7 // sigma0(X[i+1]) - add x22,x22,x16 // h+=Sigma1(e) - eor x19,x19,x24 // Maj(a,b,c) - eor x17,x8,x23,ror#39 // Sigma0(a) - eor x6,x6,x15,lsr#6 // sigma1(X[i+14]) - add x1,x1,x10 - add x26,x26,x22 // d+=h - add x22,x22,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x1,x1,x7 - add x22,x22,x17 // h+=Sigma0(a) - add x1,x1,x6 - ldr x6,[sp,#24] - str x9,[sp,#16] - ror x16,x26,#14 - add x21,x21,x19 // h+=K[i] - ror x8,x3,#1 - and x17,x27,x26 - ror x7,x0,#19 - bic x19,x20,x26 - ror x9,x22,#28 - add x21,x21,x1 // h+=X[i] - eor x16,x16,x26,ror#18 - eor x8,x8,x3,ror#8 - orr x17,x17,x19 // Ch(e,f,g) - eor x19,x22,x23 // a^b, b^c in next round - eor x16,x16,x26,ror#41 // Sigma1(e) - eor x9,x9,x22,ror#34 - add x21,x21,x17 // h+=Ch(e,f,g) - and x28,x28,x19 // (b^c)&=(a^b) - eor x7,x7,x0,ror#61 - eor x8,x8,x3,lsr#7 // sigma0(X[i+1]) - add x21,x21,x16 // h+=Sigma1(e) - eor x28,x28,x23 // Maj(a,b,c) - eor x17,x9,x22,ror#39 // Sigma0(a) - eor x7,x7,x0,lsr#6 // sigma1(X[i+14]) - add x2,x2,x11 - add x25,x25,x21 // d+=h - add x21,x21,x28 // h+=Maj(a,b,c) - ldr x28,[x30],#8 // *K++, x19 in next round - add x2,x2,x8 - add x21,x21,x17 // h+=Sigma0(a) - add x2,x2,x7 - ldr x7,[sp,#0] - str x10,[sp,#24] - ror x16,x25,#14 - add x20,x20,x28 // h+=K[i] - ror x9,x4,#1 - and x17,x26,x25 - ror x8,x1,#19 - bic x28,x27,x25 - ror x10,x21,#28 - add x20,x20,x2 // h+=X[i] - eor x16,x16,x25,ror#18 - eor x9,x9,x4,ror#8 - orr x17,x17,x28 // Ch(e,f,g) - eor x28,x21,x22 // a^b, b^c in next round - eor x16,x16,x25,ror#41 // Sigma1(e) - eor x10,x10,x21,ror#34 - add x20,x20,x17 // h+=Ch(e,f,g) - and x19,x19,x28 // (b^c)&=(a^b) - eor x8,x8,x1,ror#61 - eor x9,x9,x4,lsr#7 // sigma0(X[i+1]) - add x20,x20,x16 // h+=Sigma1(e) - eor x19,x19,x22 // Maj(a,b,c) - eor x17,x10,x21,ror#39 // Sigma0(a) - eor x8,x8,x1,lsr#6 // sigma1(X[i+14]) - add x3,x3,x12 - add x24,x24,x20 // d+=h - add x20,x20,x19 // h+=Maj(a,b,c) - ldr x19,[x30],#8 // *K++, x28 in next round - add x3,x3,x9 - add x20,x20,x17 // h+=Sigma0(a) - add x3,x3,x8 - cbnz x19,.Loop_16_xx - - ldp x0,x2,[x29,#96] - ldr x1,[x29,#112] - sub x30,x30,#648 // rewind - - ldp x3,x4,[x0] - ldp x5,x6,[x0,#2*8] - add x1,x1,#14*8 // advance input pointer - ldp x7,x8,[x0,#4*8] - add x20,x20,x3 - ldp x9,x10,[x0,#6*8] - add x21,x21,x4 - add x22,x22,x5 - add x23,x23,x6 - stp x20,x21,[x0] - add x24,x24,x7 - add x25,x25,x8 - stp x22,x23,[x0,#2*8] - add x26,x26,x9 - add x27,x27,x10 - cmp x1,x2 - stp x24,x25,[x0,#4*8] - stp x26,x27,[x0,#6*8] - b.ne .Loop - - ldp x19,x20,[x29,#16] - add sp,sp,#4*8 - ldp x21,x22,[x29,#32] - ldp x23,x24,[x29,#48] - ldp x25,x26,[x29,#64] - ldp x27,x28,[x29,#80] - ldp x29,x30,[sp],#128 - ret -.size sha512_block_data_order,.-sha512_block_data_order - -.align 6 -.type K512,%object -K512: - .quad 0x428a2f98d728ae22,0x7137449123ef65cd - .quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc - .quad 0x3956c25bf348b538,0x59f111f1b605d019 - .quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 - .quad 0xd807aa98a3030242,0x12835b0145706fbe - .quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 - .quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 - .quad 0x9bdc06a725c71235,0xc19bf174cf692694 - .quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 - .quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 - .quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 - .quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 - .quad 0x983e5152ee66dfab,0xa831c66d2db43210 - .quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 - .quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 - .quad 0x06ca6351e003826f,0x142929670a0e6e70 - .quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 - .quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df - .quad 0x650a73548baf63de,0x766a0abb3c77b2a8 - .quad 0x81c2c92e47edaee6,0x92722c851482353b - .quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 - .quad 0xc24b8b70d0f89791,0xc76c51a30654be30 - .quad 0xd192e819d6ef5218,0xd69906245565a910 - .quad 0xf40e35855771202a,0x106aa07032bbd1b8 - .quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 - .quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 - .quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb - .quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 - .quad 0x748f82ee5defb2fc,0x78a5636f43172f60 - .quad 0x84c87814a1f0ab72,0x8cc702081a6439ec - .quad 0x90befffa23631e28,0xa4506cebde82bde9 - .quad 0xbef9a3f7b2c67915,0xc67178f2e372532b - .quad 0xca273eceea26619c,0xd186b8c721c0c207 - .quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 - .quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 - .quad 0x113f9804bef90dae,0x1b710b35131c471b - .quad 0x28db77f523047d84,0x32caab7b40c72493 - .quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c - .quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a - .quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - .quad 0 // terminator -.size K512,.-K512 -.align 3 -.LOPENSSL_armcap_P: - .quad OPENSSL_armcap_P-. -.asciz "SHA512 block transform for ARMv8, CRYPTOGAMS by " -.align 2 -.comm OPENSSL_armcap_P,4,4 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aes-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/aes-x86_64.s deleted file mode 100644 index c21cce10f5db9e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aes-x86_64.s +++ /dev/null @@ -1,2534 +0,0 @@ -.text -.type _x86_64_AES_encrypt,@function -.align 16 -_x86_64_AES_encrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp .Lenc_loop -.align 16 -.Lenc_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - shrl $16,%ecx - movzbl %ah,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movl 12(%r15),%edx - movzbl %bh,%edi - movzbl %ch,%ebp - movl 0(%r15),%eax - xorl 1(%r14,%rdi,8),%r12d - xorl 1(%r14,%rbp,8),%r8d - - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - subl $1,%r13d - jnz .Lenc_loop - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl 2(%r14,%rsi,8),%r10d - movzbl 2(%r14,%rdi,8),%r11d - movzbl 2(%r14,%rbp,8),%r12d - - movzbl %dl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl 2(%r14,%rsi,8),%r8d - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x0000ff00,%edi - andl $0x0000ff00,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%ecx - - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - - andl $0x0000ff00,%esi - andl $0x0000ff00,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0x00ff0000,%edi - andl $0x00ff0000,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movl 0(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 2(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0xff000000,%edi - andl $0xff000000,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %bh,%esi - movzbl %ch,%edi - movl 16+12(%r15),%edx - movl 2(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 16+0(%r15),%eax - - andl $0xff000000,%esi - andl $0xff000000,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_encrypt,.-_x86_64_AES_encrypt -.type _x86_64_AES_encrypt_compact,@function -.align 16 -_x86_64_AES_encrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp .Lenc_loop_compact -.align 16 -.Lenc_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%ecx - movzbl %dh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ah,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl %cl,%edi - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shll $8,%r9d - shrl $16,%edx - shll $8,%r13d - xorl %r9d,%r10d - shrl $16,%eax - movzbl %dl,%r9d - shrl $16,%ebx - xorl %r13d,%r11d - shll $8,%ebp - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - - shll $8,%esi - movzbl %bl,%ebp - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %dh,%esi - movzbl (%r14,%r13,1),%r13d - xorl %edi,%r10d - - shrl $8,%ecx - movzbl %ah,%edi - shll $16,%r9d - shrl $8,%ebx - shll $16,%r13d - xorl %r9d,%r11d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rcx,1),%edx - movzbl (%r14,%rbx,1),%ecx - - shll $16,%ebp - xorl %r13d,%r12d - shll $24,%esi - xorl %ebp,%r8d - shll $24,%edi - xorl %esi,%r10d - shll $24,%edx - xorl %edi,%r11d - shll $24,%ecx - movl %r10d,%eax - movl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je .Lenc_compact_done - movl $0x80808080,%r10d - movl $0x80808080,%r11d - andl %eax,%r10d - andl %ebx,%r11d - movl %r10d,%esi - movl %r11d,%edi - shrl $7,%r10d - leal (%rax,%rax,1),%r8d - shrl $7,%r11d - leal (%rbx,%rbx,1),%r9d - subl %r10d,%esi - subl %r11d,%edi - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %eax,%r10d - movl %ebx,%r11d - xorl %esi,%r8d - xorl %edi,%r9d - - xorl %r8d,%eax - xorl %r9d,%ebx - movl $0x80808080,%r12d - roll $24,%eax - movl $0x80808080,%ebp - roll $24,%ebx - andl %ecx,%r12d - andl %edx,%ebp - xorl %r8d,%eax - xorl %r9d,%ebx - movl %r12d,%esi - rorl $16,%r10d - movl %ebp,%edi - rorl $16,%r11d - leal (%rcx,%rcx,1),%r8d - shrl $7,%r12d - xorl %r10d,%eax - shrl $7,%ebp - xorl %r11d,%ebx - rorl $8,%r10d - leal (%rdx,%rdx,1),%r9d - rorl $8,%r11d - subl %r12d,%esi - subl %ebp,%edi - xorl %r10d,%eax - xorl %r11d,%ebx - - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %ecx,%r12d - movl %edx,%ebp - xorl %esi,%r8d - xorl %edi,%r9d - - rorl $16,%r12d - xorl %r8d,%ecx - rorl $16,%ebp - xorl %r9d,%edx - roll $24,%ecx - movl 0(%r14),%esi - roll $24,%edx - xorl %r8d,%ecx - movl 64(%r14),%edi - xorl %r9d,%edx - movl 128(%r14),%r8d - xorl %r12d,%ecx - rorl $8,%r12d - xorl %ebp,%edx - rorl $8,%ebp - xorl %r12d,%ecx - movl 192(%r14),%r9d - xorl %ebp,%edx - jmp .Lenc_loop_compact -.align 16 -.Lenc_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_encrypt_compact,.-_x86_64_AES_encrypt_compact -.globl AES_encrypt -.type AES_encrypt,@function -.align 16 -.globl asm_AES_encrypt -.hidden asm_AES_encrypt -asm_AES_encrypt: -AES_encrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -.Lenc_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq .LAES_Te+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - - call _x86_64_AES_encrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lenc_epilogue: - .byte 0xf3,0xc3 -.size AES_encrypt,.-AES_encrypt -.type _x86_64_AES_decrypt,@function -.align 16 -_x86_64_AES_decrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp .Ldec_loop -.align 16 -.Ldec_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %bh,%esi - shrl $16,%eax - movzbl %ch,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - movl 12(%r15),%edx - movzbl %ah,%ebp - xorl 1(%r14,%rsi,8),%r12d - movl 0(%r15),%eax - xorl 1(%r14,%rbp,8),%r8d - - xorl %r10d,%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r12d,%ecx - xorl %r11d,%ebx - xorl %r8d,%edx - subl $1,%r13d - jnz .Ldec_loop - leaq 2048(%r14),%r14 - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl (%r14,%rsi,1),%r10d - movzbl (%r14,%rdi,1),%r11d - movzbl (%r14,%rbp,1),%r12d - - movzbl %dl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movzbl (%r14,%rsi,1),%r8d - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $8,%edi - shll $8,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%edx - - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%eax - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - - shll $8,%esi - shll $8,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $16,%edi - shll $16,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $24,%edi - shll $24,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %dh,%esi - movzbl %ah,%edi - movl 16+12(%r15),%edx - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movl 16+0(%r15),%eax - - shll $24,%esi - shll $24,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - leaq -2048(%r14),%r14 - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_decrypt,.-_x86_64_AES_decrypt -.type _x86_64_AES_decrypt_compact,@function -.align 16 -_x86_64_AES_decrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp .Ldec_loop_compact - -.align 16 -.Ldec_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movzbl %bh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ch,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shrl $16,%ecx - shll $8,%r13d - shll $8,%r9d - movzbl %cl,%edi - shrl $16,%eax - xorl %r9d,%r10d - shrl $16,%ebx - movzbl %dl,%r9d - - shll $8,%ebp - xorl %r13d,%r11d - shll $8,%esi - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - movzbl %bl,%ebp - - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %bh,%esi - movzbl (%r14,%rbp,1),%ebp - xorl %edi,%r10d - movzbl (%r14,%r13,1),%r13d - movzbl %ch,%edi - - shll $16,%ebp - shll $16,%r9d - shll $16,%r13d - xorl %ebp,%r8d - movzbl %dh,%ebp - xorl %r9d,%r11d - shrl $8,%eax - xorl %r13d,%r12d - - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%ebx - movzbl (%r14,%rbp,1),%ecx - movzbl (%r14,%rax,1),%edx - - movl %r10d,%eax - shll $24,%esi - shll $24,%ebx - shll $24,%ecx - xorl %esi,%eax - shll $24,%edx - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je .Ldec_compact_done - - movq 256+0(%r14),%rsi - shlq $32,%rbx - shlq $32,%rdx - movq 256+8(%r14),%rdi - orq %rbx,%rax - orq %rdx,%rcx - movq 256+16(%r14),%rbp - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - movq 0(%r14),%rsi - roll $16,%r9d - movq 64(%r14),%rdi - roll $16,%r12d - movq 128(%r14),%rbp - roll $16,%r8d - movq 192(%r14),%r10 - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - movq 256(%r14),%r13 - xorl %r8d,%ebx - xorl %r11d,%edx - jmp .Ldec_loop_compact -.align 16 -.Ldec_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 -.size _x86_64_AES_decrypt_compact,.-_x86_64_AES_decrypt_compact -.globl AES_decrypt -.type AES_decrypt,@function -.align 16 -.globl asm_AES_decrypt -.hidden asm_AES_decrypt -asm_AES_decrypt: -AES_decrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -.Ldec_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq .LAES_Td+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - shrq $3,%rbp - addq %rbp,%r14 - - call _x86_64_AES_decrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Ldec_epilogue: - .byte 0xf3,0xc3 -.size AES_decrypt,.-AES_decrypt -.globl private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,@function -.align 16 -private_AES_set_encrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $8,%rsp -.Lenc_key_prologue: - - call _x86_64_AES_set_encrypt_key - - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -.Lenc_key_epilogue: - .byte 0xf3,0xc3 -.size private_AES_set_encrypt_key,.-private_AES_set_encrypt_key - -.type _x86_64_AES_set_encrypt_key,@function -.align 16 -_x86_64_AES_set_encrypt_key: - movl %esi,%ecx - movq %rdi,%rsi - movq %rdx,%rdi - - testq $-1,%rsi - jz .Lbadpointer - testq $-1,%rdi - jz .Lbadpointer - - leaq .LAES_Te(%rip),%rbp - leaq 2048+128(%rbp),%rbp - - - movl 0-128(%rbp),%eax - movl 32-128(%rbp),%ebx - movl 64-128(%rbp),%r8d - movl 96-128(%rbp),%edx - movl 128-128(%rbp),%eax - movl 160-128(%rbp),%ebx - movl 192-128(%rbp),%r8d - movl 224-128(%rbp),%edx - - cmpl $128,%ecx - je .L10rounds - cmpl $192,%ecx - je .L12rounds - cmpl $256,%ecx - je .L14rounds - movq $-2,%rax - jmp .Lexit - -.L10rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rdx - movq %rax,0(%rdi) - movq %rdx,8(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L10shortcut -.align 4 -.L10loop: - movl 0(%rdi),%eax - movl 12(%rdi),%edx -.L10shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,16(%rdi) - xorl 4(%rdi),%eax - movl %eax,20(%rdi) - xorl 8(%rdi),%eax - movl %eax,24(%rdi) - xorl 12(%rdi),%eax - movl %eax,28(%rdi) - addl $1,%ecx - leaq 16(%rdi),%rdi - cmpl $10,%ecx - jl .L10loop - - movl $10,80(%rdi) - xorq %rax,%rax - jmp .Lexit - -.L12rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rdx,16(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L12shortcut -.align 4 -.L12loop: - movl 0(%rdi),%eax - movl 20(%rdi),%edx -.L12shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,24(%rdi) - xorl 4(%rdi),%eax - movl %eax,28(%rdi) - xorl 8(%rdi),%eax - movl %eax,32(%rdi) - xorl 12(%rdi),%eax - movl %eax,36(%rdi) - - cmpl $7,%ecx - je .L12break - addl $1,%ecx - - xorl 16(%rdi),%eax - movl %eax,40(%rdi) - xorl 20(%rdi),%eax - movl %eax,44(%rdi) - - leaq 24(%rdi),%rdi - jmp .L12loop -.L12break: - movl $12,72(%rdi) - xorq %rax,%rax - jmp .Lexit - -.L14rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rcx - movq 24(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp .L14shortcut -.align 4 -.L14loop: - movl 0(%rdi),%eax - movl 28(%rdi),%edx -.L14shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,32(%rdi) - xorl 4(%rdi),%eax - movl %eax,36(%rdi) - xorl 8(%rdi),%eax - movl %eax,40(%rdi) - xorl 12(%rdi),%eax - movl %eax,44(%rdi) - - cmpl $6,%ecx - je .L14break - addl $1,%ecx - - movl %eax,%edx - movl 16(%rdi),%eax - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - - movl %eax,48(%rdi) - xorl 20(%rdi),%eax - movl %eax,52(%rdi) - xorl 24(%rdi),%eax - movl %eax,56(%rdi) - xorl 28(%rdi),%eax - movl %eax,60(%rdi) - - leaq 32(%rdi),%rdi - jmp .L14loop -.L14break: - movl $14,48(%rdi) - xorq %rax,%rax - jmp .Lexit - -.Lbadpointer: - movq $-1,%rax -.Lexit: -.byte 0xf3,0xc3 -.size _x86_64_AES_set_encrypt_key,.-_x86_64_AES_set_encrypt_key -.globl private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,@function -.align 16 -private_AES_set_decrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - pushq %rdx -.Ldec_key_prologue: - - call _x86_64_AES_set_encrypt_key - movq (%rsp),%r8 - cmpl $0,%eax - jne .Labort - - movl 240(%r8),%r14d - xorq %rdi,%rdi - leaq (%rdi,%r14,4),%rcx - movq %r8,%rsi - leaq (%r8,%rcx,4),%rdi -.align 4 -.Linvert: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 0(%rdi),%rcx - movq 8(%rdi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,0(%rsi) - movq %rdx,8(%rsi) - leaq 16(%rsi),%rsi - leaq -16(%rdi),%rdi - cmpq %rsi,%rdi - jne .Linvert - - leaq .LAES_Te+2048+1024(%rip),%rax - - movq 40(%rax),%rsi - movq 48(%rax),%rdi - movq 56(%rax),%rbp - - movq %r8,%r15 - subl $1,%r14d -.align 4 -.Lpermute: - leaq 16(%r15),%r15 - movq 0(%r15),%rax - movq 8(%r15),%rcx - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - - roll $16,%r9d - - roll $16,%r12d - - roll $16,%r8d - - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - - xorl %r8d,%ebx - xorl %r11d,%edx - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - subl $1,%r14d - jnz .Lpermute - - xorq %rax,%rax -.Labort: - movq 8(%rsp),%r15 - movq 16(%rsp),%r14 - movq 24(%rsp),%r13 - movq 32(%rsp),%r12 - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -.Ldec_key_epilogue: - .byte 0xf3,0xc3 -.size private_AES_set_decrypt_key,.-private_AES_set_decrypt_key -.globl AES_cbc_encrypt -.type AES_cbc_encrypt,@function -.align 16 - -.globl asm_AES_cbc_encrypt -.hidden asm_AES_cbc_encrypt -asm_AES_cbc_encrypt: -AES_cbc_encrypt: - cmpq $0,%rdx - je .Lcbc_epilogue - pushfq - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lcbc_prologue: - - cld - movl %r9d,%r9d - - leaq .LAES_Te(%rip),%r14 - cmpq $0,%r9 - jne .Lcbc_picked_te - leaq .LAES_Td(%rip),%r14 -.Lcbc_picked_te: - - movl OPENSSL_ia32cap_P(%rip),%r10d - cmpq $512,%rdx - jb .Lcbc_slow_prologue - testq $15,%rdx - jnz .Lcbc_slow_prologue - btl $28,%r10d - jc .Lcbc_slow_prologue - - - leaq -88-248(%rsp),%r15 - andq $-64,%r15 - - - movq %r14,%r10 - leaq 2304(%r14),%r11 - movq %r15,%r12 - andq $0xFFF,%r10 - andq $0xFFF,%r11 - andq $0xFFF,%r12 - - cmpq %r11,%r12 - jb .Lcbc_te_break_out - subq %r11,%r12 - subq %r12,%r15 - jmp .Lcbc_te_ok -.Lcbc_te_break_out: - subq %r10,%r12 - andq $0xFFF,%r12 - addq $320,%r12 - subq %r12,%r15 -.align 4 -.Lcbc_te_ok: - - xchgq %rsp,%r15 - - movq %r15,16(%rsp) -.Lcbc_fast_body: - movq %rdi,24(%rsp) - movq %rsi,32(%rsp) - movq %rdx,40(%rsp) - movq %rcx,48(%rsp) - movq %r8,56(%rsp) - movl $0,80+240(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - - movl 240(%r15),%eax - - movq %r15,%r10 - subq %r14,%r10 - andq $0xfff,%r10 - cmpq $2304,%r10 - jb .Lcbc_do_ecopy - cmpq $4096-248,%r10 - jb .Lcbc_skip_ecopy -.align 4 -.Lcbc_do_ecopy: - movq %r15,%rsi - leaq 80(%rsp),%rdi - leaq 80(%rsp),%r15 - movl $30,%ecx -.long 0x90A548F3 - movl %eax,(%rdi) -.Lcbc_skip_ecopy: - movq %r15,0(%rsp) - - movl $18,%ecx -.align 4 -.Lcbc_prefetch_te: - movq 0(%r14),%r10 - movq 32(%r14),%r11 - movq 64(%r14),%r12 - movq 96(%r14),%r13 - leaq 128(%r14),%r14 - subl $1,%ecx - jnz .Lcbc_prefetch_te - leaq -2304(%r14),%r14 - - cmpq $0,%rbx - je .LFAST_DECRYPT - - - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - -.align 4 -.Lcbc_fast_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_encrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - movq %r10,40(%rsp) - jnz .Lcbc_fast_enc_loop - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp .Lcbc_fast_cleanup - - -.align 16 -.LFAST_DECRYPT: - cmpq %r8,%r9 - je .Lcbc_fast_dec_in_place - - movq %rbp,64(%rsp) -.align 4 -.Lcbc_fast_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 64(%rsp),%rbp - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0(%rbp),%eax - xorl 4(%rbp),%ebx - xorl 8(%rbp),%ecx - xorl 12(%rbp),%edx - movq %r8,%rbp - - subq $16,%r10 - movq %r10,40(%rsp) - movq %rbp,64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jnz .Lcbc_fast_dec_loop - movq 56(%rsp),%r12 - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0(%r12) - movq %r11,8(%r12) - jmp .Lcbc_fast_cleanup - -.align 16 -.Lcbc_fast_dec_in_place: - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0+64(%rsp) - movq %r11,8+64(%rsp) -.align 4 -.Lcbc_fast_dec_in_place_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jz .Lcbc_fast_dec_in_place_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - movq %r10,40(%rsp) - jmp .Lcbc_fast_dec_in_place_loop -.Lcbc_fast_dec_in_place_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - -.align 4 -.Lcbc_fast_cleanup: - cmpl $0,80+240(%rsp) - leaq 80(%rsp),%rdi - je .Lcbc_exit - movl $30,%ecx - xorq %rax,%rax -.long 0x90AB48F3 - - jmp .Lcbc_exit - - -.align 16 -.Lcbc_slow_prologue: - - leaq -88(%rsp),%rbp - andq $-64,%rbp - - leaq -88-63(%rcx),%r10 - subq %rbp,%r10 - negq %r10 - andq $0x3c0,%r10 - subq %r10,%rbp - - xchgq %rsp,%rbp - - movq %rbp,16(%rsp) -.Lcbc_slow_body: - - - - - movq %r8,56(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - movq %rdx,%r10 - - movl 240(%r15),%eax - movq %r15,0(%rsp) - shll $4,%eax - leaq (%r15,%rax,1),%rax - movq %rax,8(%rsp) - - - leaq 2048(%r14),%r14 - leaq 768-8(%rsp),%rax - subq %r14,%rax - andq $0x300,%rax - leaq (%r14,%rax,1),%r14 - - cmpq $0,%rbx - je .LSLOW_DECRYPT - - - testq $-16,%r10 - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - jz .Lcbc_slow_enc_tail - -.align 4 -.Lcbc_slow_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_encrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - jnz .Lcbc_slow_enc_loop - testq $15,%r10 - jnz .Lcbc_slow_enc_tail - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp .Lcbc_exit - -.align 4 -.Lcbc_slow_enc_tail: - movq %rax,%r11 - movq %rcx,%r12 - movq %r10,%rcx - movq %r8,%rsi - movq %r9,%rdi -.long 0x9066A4F3 - movq $16,%rcx - subq %r10,%rcx - xorq %rax,%rax -.long 0x9066AAF3 - movq %r9,%r8 - movq $16,%r10 - movq %r11,%rax - movq %r12,%rcx - jmp .Lcbc_slow_enc_loop - -.align 16 -.LSLOW_DECRYPT: - shrq $3,%rax - addq %rax,%r14 - - movq 0(%rbp),%r11 - movq 8(%rbp),%r12 - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - -.align 4 -.Lcbc_slow_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_decrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jc .Lcbc_slow_dec_partial - jz .Lcbc_slow_dec_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jmp .Lcbc_slow_dec_loop -.Lcbc_slow_dec_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - jmp .Lcbc_exit - -.align 4 -.Lcbc_slow_dec_partial: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0+64(%rsp) - movl %ebx,4+64(%rsp) - movl %ecx,8+64(%rsp) - movl %edx,12+64(%rsp) - - movq %r9,%rdi - leaq 64(%rsp),%rsi - leaq 16(%r10),%rcx -.long 0x9066A4F3 - jmp .Lcbc_exit - -.align 16 -.Lcbc_exit: - movq 16(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lcbc_popfq: - popfq -.Lcbc_epilogue: - .byte 0xf3,0xc3 -.size AES_cbc_encrypt,.-AES_cbc_encrypt -.align 64 -.LAES_Te: -.long 0xa56363c6,0xa56363c6 -.long 0x847c7cf8,0x847c7cf8 -.long 0x997777ee,0x997777ee -.long 0x8d7b7bf6,0x8d7b7bf6 -.long 0x0df2f2ff,0x0df2f2ff -.long 0xbd6b6bd6,0xbd6b6bd6 -.long 0xb16f6fde,0xb16f6fde -.long 0x54c5c591,0x54c5c591 -.long 0x50303060,0x50303060 -.long 0x03010102,0x03010102 -.long 0xa96767ce,0xa96767ce -.long 0x7d2b2b56,0x7d2b2b56 -.long 0x19fefee7,0x19fefee7 -.long 0x62d7d7b5,0x62d7d7b5 -.long 0xe6abab4d,0xe6abab4d -.long 0x9a7676ec,0x9a7676ec -.long 0x45caca8f,0x45caca8f -.long 0x9d82821f,0x9d82821f -.long 0x40c9c989,0x40c9c989 -.long 0x877d7dfa,0x877d7dfa -.long 0x15fafaef,0x15fafaef -.long 0xeb5959b2,0xeb5959b2 -.long 0xc947478e,0xc947478e -.long 0x0bf0f0fb,0x0bf0f0fb -.long 0xecadad41,0xecadad41 -.long 0x67d4d4b3,0x67d4d4b3 -.long 0xfda2a25f,0xfda2a25f -.long 0xeaafaf45,0xeaafaf45 -.long 0xbf9c9c23,0xbf9c9c23 -.long 0xf7a4a453,0xf7a4a453 -.long 0x967272e4,0x967272e4 -.long 0x5bc0c09b,0x5bc0c09b -.long 0xc2b7b775,0xc2b7b775 -.long 0x1cfdfde1,0x1cfdfde1 -.long 0xae93933d,0xae93933d -.long 0x6a26264c,0x6a26264c -.long 0x5a36366c,0x5a36366c -.long 0x413f3f7e,0x413f3f7e -.long 0x02f7f7f5,0x02f7f7f5 -.long 0x4fcccc83,0x4fcccc83 -.long 0x5c343468,0x5c343468 -.long 0xf4a5a551,0xf4a5a551 -.long 0x34e5e5d1,0x34e5e5d1 -.long 0x08f1f1f9,0x08f1f1f9 -.long 0x937171e2,0x937171e2 -.long 0x73d8d8ab,0x73d8d8ab -.long 0x53313162,0x53313162 -.long 0x3f15152a,0x3f15152a -.long 0x0c040408,0x0c040408 -.long 0x52c7c795,0x52c7c795 -.long 0x65232346,0x65232346 -.long 0x5ec3c39d,0x5ec3c39d -.long 0x28181830,0x28181830 -.long 0xa1969637,0xa1969637 -.long 0x0f05050a,0x0f05050a -.long 0xb59a9a2f,0xb59a9a2f -.long 0x0907070e,0x0907070e -.long 0x36121224,0x36121224 -.long 0x9b80801b,0x9b80801b -.long 0x3de2e2df,0x3de2e2df -.long 0x26ebebcd,0x26ebebcd -.long 0x6927274e,0x6927274e -.long 0xcdb2b27f,0xcdb2b27f -.long 0x9f7575ea,0x9f7575ea -.long 0x1b090912,0x1b090912 -.long 0x9e83831d,0x9e83831d -.long 0x742c2c58,0x742c2c58 -.long 0x2e1a1a34,0x2e1a1a34 -.long 0x2d1b1b36,0x2d1b1b36 -.long 0xb26e6edc,0xb26e6edc -.long 0xee5a5ab4,0xee5a5ab4 -.long 0xfba0a05b,0xfba0a05b -.long 0xf65252a4,0xf65252a4 -.long 0x4d3b3b76,0x4d3b3b76 -.long 0x61d6d6b7,0x61d6d6b7 -.long 0xceb3b37d,0xceb3b37d -.long 0x7b292952,0x7b292952 -.long 0x3ee3e3dd,0x3ee3e3dd -.long 0x712f2f5e,0x712f2f5e -.long 0x97848413,0x97848413 -.long 0xf55353a6,0xf55353a6 -.long 0x68d1d1b9,0x68d1d1b9 -.long 0x00000000,0x00000000 -.long 0x2cededc1,0x2cededc1 -.long 0x60202040,0x60202040 -.long 0x1ffcfce3,0x1ffcfce3 -.long 0xc8b1b179,0xc8b1b179 -.long 0xed5b5bb6,0xed5b5bb6 -.long 0xbe6a6ad4,0xbe6a6ad4 -.long 0x46cbcb8d,0x46cbcb8d -.long 0xd9bebe67,0xd9bebe67 -.long 0x4b393972,0x4b393972 -.long 0xde4a4a94,0xde4a4a94 -.long 0xd44c4c98,0xd44c4c98 -.long 0xe85858b0,0xe85858b0 -.long 0x4acfcf85,0x4acfcf85 -.long 0x6bd0d0bb,0x6bd0d0bb -.long 0x2aefefc5,0x2aefefc5 -.long 0xe5aaaa4f,0xe5aaaa4f -.long 0x16fbfbed,0x16fbfbed -.long 0xc5434386,0xc5434386 -.long 0xd74d4d9a,0xd74d4d9a -.long 0x55333366,0x55333366 -.long 0x94858511,0x94858511 -.long 0xcf45458a,0xcf45458a -.long 0x10f9f9e9,0x10f9f9e9 -.long 0x06020204,0x06020204 -.long 0x817f7ffe,0x817f7ffe -.long 0xf05050a0,0xf05050a0 -.long 0x443c3c78,0x443c3c78 -.long 0xba9f9f25,0xba9f9f25 -.long 0xe3a8a84b,0xe3a8a84b -.long 0xf35151a2,0xf35151a2 -.long 0xfea3a35d,0xfea3a35d -.long 0xc0404080,0xc0404080 -.long 0x8a8f8f05,0x8a8f8f05 -.long 0xad92923f,0xad92923f -.long 0xbc9d9d21,0xbc9d9d21 -.long 0x48383870,0x48383870 -.long 0x04f5f5f1,0x04f5f5f1 -.long 0xdfbcbc63,0xdfbcbc63 -.long 0xc1b6b677,0xc1b6b677 -.long 0x75dadaaf,0x75dadaaf -.long 0x63212142,0x63212142 -.long 0x30101020,0x30101020 -.long 0x1affffe5,0x1affffe5 -.long 0x0ef3f3fd,0x0ef3f3fd -.long 0x6dd2d2bf,0x6dd2d2bf -.long 0x4ccdcd81,0x4ccdcd81 -.long 0x140c0c18,0x140c0c18 -.long 0x35131326,0x35131326 -.long 0x2fececc3,0x2fececc3 -.long 0xe15f5fbe,0xe15f5fbe -.long 0xa2979735,0xa2979735 -.long 0xcc444488,0xcc444488 -.long 0x3917172e,0x3917172e -.long 0x57c4c493,0x57c4c493 -.long 0xf2a7a755,0xf2a7a755 -.long 0x827e7efc,0x827e7efc -.long 0x473d3d7a,0x473d3d7a -.long 0xac6464c8,0xac6464c8 -.long 0xe75d5dba,0xe75d5dba -.long 0x2b191932,0x2b191932 -.long 0x957373e6,0x957373e6 -.long 0xa06060c0,0xa06060c0 -.long 0x98818119,0x98818119 -.long 0xd14f4f9e,0xd14f4f9e -.long 0x7fdcdca3,0x7fdcdca3 -.long 0x66222244,0x66222244 -.long 0x7e2a2a54,0x7e2a2a54 -.long 0xab90903b,0xab90903b -.long 0x8388880b,0x8388880b -.long 0xca46468c,0xca46468c -.long 0x29eeeec7,0x29eeeec7 -.long 0xd3b8b86b,0xd3b8b86b -.long 0x3c141428,0x3c141428 -.long 0x79dedea7,0x79dedea7 -.long 0xe25e5ebc,0xe25e5ebc -.long 0x1d0b0b16,0x1d0b0b16 -.long 0x76dbdbad,0x76dbdbad -.long 0x3be0e0db,0x3be0e0db -.long 0x56323264,0x56323264 -.long 0x4e3a3a74,0x4e3a3a74 -.long 0x1e0a0a14,0x1e0a0a14 -.long 0xdb494992,0xdb494992 -.long 0x0a06060c,0x0a06060c -.long 0x6c242448,0x6c242448 -.long 0xe45c5cb8,0xe45c5cb8 -.long 0x5dc2c29f,0x5dc2c29f -.long 0x6ed3d3bd,0x6ed3d3bd -.long 0xefacac43,0xefacac43 -.long 0xa66262c4,0xa66262c4 -.long 0xa8919139,0xa8919139 -.long 0xa4959531,0xa4959531 -.long 0x37e4e4d3,0x37e4e4d3 -.long 0x8b7979f2,0x8b7979f2 -.long 0x32e7e7d5,0x32e7e7d5 -.long 0x43c8c88b,0x43c8c88b -.long 0x5937376e,0x5937376e -.long 0xb76d6dda,0xb76d6dda -.long 0x8c8d8d01,0x8c8d8d01 -.long 0x64d5d5b1,0x64d5d5b1 -.long 0xd24e4e9c,0xd24e4e9c -.long 0xe0a9a949,0xe0a9a949 -.long 0xb46c6cd8,0xb46c6cd8 -.long 0xfa5656ac,0xfa5656ac -.long 0x07f4f4f3,0x07f4f4f3 -.long 0x25eaeacf,0x25eaeacf -.long 0xaf6565ca,0xaf6565ca -.long 0x8e7a7af4,0x8e7a7af4 -.long 0xe9aeae47,0xe9aeae47 -.long 0x18080810,0x18080810 -.long 0xd5baba6f,0xd5baba6f -.long 0x887878f0,0x887878f0 -.long 0x6f25254a,0x6f25254a -.long 0x722e2e5c,0x722e2e5c -.long 0x241c1c38,0x241c1c38 -.long 0xf1a6a657,0xf1a6a657 -.long 0xc7b4b473,0xc7b4b473 -.long 0x51c6c697,0x51c6c697 -.long 0x23e8e8cb,0x23e8e8cb -.long 0x7cdddda1,0x7cdddda1 -.long 0x9c7474e8,0x9c7474e8 -.long 0x211f1f3e,0x211f1f3e -.long 0xdd4b4b96,0xdd4b4b96 -.long 0xdcbdbd61,0xdcbdbd61 -.long 0x868b8b0d,0x868b8b0d -.long 0x858a8a0f,0x858a8a0f -.long 0x907070e0,0x907070e0 -.long 0x423e3e7c,0x423e3e7c -.long 0xc4b5b571,0xc4b5b571 -.long 0xaa6666cc,0xaa6666cc -.long 0xd8484890,0xd8484890 -.long 0x05030306,0x05030306 -.long 0x01f6f6f7,0x01f6f6f7 -.long 0x120e0e1c,0x120e0e1c -.long 0xa36161c2,0xa36161c2 -.long 0x5f35356a,0x5f35356a -.long 0xf95757ae,0xf95757ae -.long 0xd0b9b969,0xd0b9b969 -.long 0x91868617,0x91868617 -.long 0x58c1c199,0x58c1c199 -.long 0x271d1d3a,0x271d1d3a -.long 0xb99e9e27,0xb99e9e27 -.long 0x38e1e1d9,0x38e1e1d9 -.long 0x13f8f8eb,0x13f8f8eb -.long 0xb398982b,0xb398982b -.long 0x33111122,0x33111122 -.long 0xbb6969d2,0xbb6969d2 -.long 0x70d9d9a9,0x70d9d9a9 -.long 0x898e8e07,0x898e8e07 -.long 0xa7949433,0xa7949433 -.long 0xb69b9b2d,0xb69b9b2d -.long 0x221e1e3c,0x221e1e3c -.long 0x92878715,0x92878715 -.long 0x20e9e9c9,0x20e9e9c9 -.long 0x49cece87,0x49cece87 -.long 0xff5555aa,0xff5555aa -.long 0x78282850,0x78282850 -.long 0x7adfdfa5,0x7adfdfa5 -.long 0x8f8c8c03,0x8f8c8c03 -.long 0xf8a1a159,0xf8a1a159 -.long 0x80898909,0x80898909 -.long 0x170d0d1a,0x170d0d1a -.long 0xdabfbf65,0xdabfbf65 -.long 0x31e6e6d7,0x31e6e6d7 -.long 0xc6424284,0xc6424284 -.long 0xb86868d0,0xb86868d0 -.long 0xc3414182,0xc3414182 -.long 0xb0999929,0xb0999929 -.long 0x772d2d5a,0x772d2d5a -.long 0x110f0f1e,0x110f0f1e -.long 0xcbb0b07b,0xcbb0b07b -.long 0xfc5454a8,0xfc5454a8 -.long 0xd6bbbb6d,0xd6bbbb6d -.long 0x3a16162c,0x3a16162c -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.long 0x00000001, 0x00000002, 0x00000004, 0x00000008 -.long 0x00000010, 0x00000020, 0x00000040, 0x00000080 -.long 0x0000001b, 0x00000036, 0x80808080, 0x80808080 -.long 0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b -.align 64 -.LAES_Td: -.long 0x50a7f451,0x50a7f451 -.long 0x5365417e,0x5365417e -.long 0xc3a4171a,0xc3a4171a -.long 0x965e273a,0x965e273a -.long 0xcb6bab3b,0xcb6bab3b -.long 0xf1459d1f,0xf1459d1f -.long 0xab58faac,0xab58faac -.long 0x9303e34b,0x9303e34b -.long 0x55fa3020,0x55fa3020 -.long 0xf66d76ad,0xf66d76ad -.long 0x9176cc88,0x9176cc88 -.long 0x254c02f5,0x254c02f5 -.long 0xfcd7e54f,0xfcd7e54f -.long 0xd7cb2ac5,0xd7cb2ac5 -.long 0x80443526,0x80443526 -.long 0x8fa362b5,0x8fa362b5 -.long 0x495ab1de,0x495ab1de -.long 0x671bba25,0x671bba25 -.long 0x980eea45,0x980eea45 -.long 0xe1c0fe5d,0xe1c0fe5d -.long 0x02752fc3,0x02752fc3 -.long 0x12f04c81,0x12f04c81 -.long 0xa397468d,0xa397468d -.long 0xc6f9d36b,0xc6f9d36b -.long 0xe75f8f03,0xe75f8f03 -.long 0x959c9215,0x959c9215 -.long 0xeb7a6dbf,0xeb7a6dbf -.long 0xda595295,0xda595295 -.long 0x2d83bed4,0x2d83bed4 -.long 0xd3217458,0xd3217458 -.long 0x2969e049,0x2969e049 -.long 0x44c8c98e,0x44c8c98e -.long 0x6a89c275,0x6a89c275 -.long 0x78798ef4,0x78798ef4 -.long 0x6b3e5899,0x6b3e5899 -.long 0xdd71b927,0xdd71b927 -.long 0xb64fe1be,0xb64fe1be -.long 0x17ad88f0,0x17ad88f0 -.long 0x66ac20c9,0x66ac20c9 -.long 0xb43ace7d,0xb43ace7d -.long 0x184adf63,0x184adf63 -.long 0x82311ae5,0x82311ae5 -.long 0x60335197,0x60335197 -.long 0x457f5362,0x457f5362 -.long 0xe07764b1,0xe07764b1 -.long 0x84ae6bbb,0x84ae6bbb -.long 0x1ca081fe,0x1ca081fe -.long 0x942b08f9,0x942b08f9 -.long 0x58684870,0x58684870 -.long 0x19fd458f,0x19fd458f -.long 0x876cde94,0x876cde94 -.long 0xb7f87b52,0xb7f87b52 -.long 0x23d373ab,0x23d373ab -.long 0xe2024b72,0xe2024b72 -.long 0x578f1fe3,0x578f1fe3 -.long 0x2aab5566,0x2aab5566 -.long 0x0728ebb2,0x0728ebb2 -.long 0x03c2b52f,0x03c2b52f -.long 0x9a7bc586,0x9a7bc586 -.long 0xa50837d3,0xa50837d3 -.long 0xf2872830,0xf2872830 -.long 0xb2a5bf23,0xb2a5bf23 -.long 0xba6a0302,0xba6a0302 -.long 0x5c8216ed,0x5c8216ed -.long 0x2b1ccf8a,0x2b1ccf8a -.long 0x92b479a7,0x92b479a7 -.long 0xf0f207f3,0xf0f207f3 -.long 0xa1e2694e,0xa1e2694e -.long 0xcdf4da65,0xcdf4da65 -.long 0xd5be0506,0xd5be0506 -.long 0x1f6234d1,0x1f6234d1 -.long 0x8afea6c4,0x8afea6c4 -.long 0x9d532e34,0x9d532e34 -.long 0xa055f3a2,0xa055f3a2 -.long 0x32e18a05,0x32e18a05 -.long 0x75ebf6a4,0x75ebf6a4 -.long 0x39ec830b,0x39ec830b -.long 0xaaef6040,0xaaef6040 -.long 0x069f715e,0x069f715e -.long 0x51106ebd,0x51106ebd -.long 0xf98a213e,0xf98a213e -.long 0x3d06dd96,0x3d06dd96 -.long 0xae053edd,0xae053edd -.long 0x46bde64d,0x46bde64d -.long 0xb58d5491,0xb58d5491 -.long 0x055dc471,0x055dc471 -.long 0x6fd40604,0x6fd40604 -.long 0xff155060,0xff155060 -.long 0x24fb9819,0x24fb9819 -.long 0x97e9bdd6,0x97e9bdd6 -.long 0xcc434089,0xcc434089 -.long 0x779ed967,0x779ed967 -.long 0xbd42e8b0,0xbd42e8b0 -.long 0x888b8907,0x888b8907 -.long 0x385b19e7,0x385b19e7 -.long 0xdbeec879,0xdbeec879 -.long 0x470a7ca1,0x470a7ca1 -.long 0xe90f427c,0xe90f427c -.long 0xc91e84f8,0xc91e84f8 -.long 0x00000000,0x00000000 -.long 0x83868009,0x83868009 -.long 0x48ed2b32,0x48ed2b32 -.long 0xac70111e,0xac70111e -.long 0x4e725a6c,0x4e725a6c -.long 0xfbff0efd,0xfbff0efd -.long 0x5638850f,0x5638850f -.long 0x1ed5ae3d,0x1ed5ae3d -.long 0x27392d36,0x27392d36 -.long 0x64d90f0a,0x64d90f0a -.long 0x21a65c68,0x21a65c68 -.long 0xd1545b9b,0xd1545b9b -.long 0x3a2e3624,0x3a2e3624 -.long 0xb1670a0c,0xb1670a0c -.long 0x0fe75793,0x0fe75793 -.long 0xd296eeb4,0xd296eeb4 -.long 0x9e919b1b,0x9e919b1b -.long 0x4fc5c080,0x4fc5c080 -.long 0xa220dc61,0xa220dc61 -.long 0x694b775a,0x694b775a -.long 0x161a121c,0x161a121c -.long 0x0aba93e2,0x0aba93e2 -.long 0xe52aa0c0,0xe52aa0c0 -.long 0x43e0223c,0x43e0223c -.long 0x1d171b12,0x1d171b12 -.long 0x0b0d090e,0x0b0d090e -.long 0xadc78bf2,0xadc78bf2 -.long 0xb9a8b62d,0xb9a8b62d -.long 0xc8a91e14,0xc8a91e14 -.long 0x8519f157,0x8519f157 -.long 0x4c0775af,0x4c0775af -.long 0xbbdd99ee,0xbbdd99ee -.long 0xfd607fa3,0xfd607fa3 -.long 0x9f2601f7,0x9f2601f7 -.long 0xbcf5725c,0xbcf5725c -.long 0xc53b6644,0xc53b6644 -.long 0x347efb5b,0x347efb5b -.long 0x7629438b,0x7629438b -.long 0xdcc623cb,0xdcc623cb -.long 0x68fcedb6,0x68fcedb6 -.long 0x63f1e4b8,0x63f1e4b8 -.long 0xcadc31d7,0xcadc31d7 -.long 0x10856342,0x10856342 -.long 0x40229713,0x40229713 -.long 0x2011c684,0x2011c684 -.long 0x7d244a85,0x7d244a85 -.long 0xf83dbbd2,0xf83dbbd2 -.long 0x1132f9ae,0x1132f9ae -.long 0x6da129c7,0x6da129c7 -.long 0x4b2f9e1d,0x4b2f9e1d -.long 0xf330b2dc,0xf330b2dc -.long 0xec52860d,0xec52860d -.long 0xd0e3c177,0xd0e3c177 -.long 0x6c16b32b,0x6c16b32b -.long 0x99b970a9,0x99b970a9 -.long 0xfa489411,0xfa489411 -.long 0x2264e947,0x2264e947 -.long 0xc48cfca8,0xc48cfca8 -.long 0x1a3ff0a0,0x1a3ff0a0 -.long 0xd82c7d56,0xd82c7d56 -.long 0xef903322,0xef903322 -.long 0xc74e4987,0xc74e4987 -.long 0xc1d138d9,0xc1d138d9 -.long 0xfea2ca8c,0xfea2ca8c -.long 0x360bd498,0x360bd498 -.long 0xcf81f5a6,0xcf81f5a6 -.long 0x28de7aa5,0x28de7aa5 -.long 0x268eb7da,0x268eb7da -.long 0xa4bfad3f,0xa4bfad3f -.long 0xe49d3a2c,0xe49d3a2c -.long 0x0d927850,0x0d927850 -.long 0x9bcc5f6a,0x9bcc5f6a -.long 0x62467e54,0x62467e54 -.long 0xc2138df6,0xc2138df6 -.long 0xe8b8d890,0xe8b8d890 -.long 0x5ef7392e,0x5ef7392e -.long 0xf5afc382,0xf5afc382 -.long 0xbe805d9f,0xbe805d9f -.long 0x7c93d069,0x7c93d069 -.long 0xa92dd56f,0xa92dd56f -.long 0xb31225cf,0xb31225cf -.long 0x3b99acc8,0x3b99acc8 -.long 0xa77d1810,0xa77d1810 -.long 0x6e639ce8,0x6e639ce8 -.long 0x7bbb3bdb,0x7bbb3bdb -.long 0x097826cd,0x097826cd -.long 0xf418596e,0xf418596e -.long 0x01b79aec,0x01b79aec -.long 0xa89a4f83,0xa89a4f83 -.long 0x656e95e6,0x656e95e6 -.long 0x7ee6ffaa,0x7ee6ffaa -.long 0x08cfbc21,0x08cfbc21 -.long 0xe6e815ef,0xe6e815ef -.long 0xd99be7ba,0xd99be7ba -.long 0xce366f4a,0xce366f4a -.long 0xd4099fea,0xd4099fea -.long 0xd67cb029,0xd67cb029 -.long 0xafb2a431,0xafb2a431 -.long 0x31233f2a,0x31233f2a -.long 0x3094a5c6,0x3094a5c6 -.long 0xc066a235,0xc066a235 -.long 0x37bc4e74,0x37bc4e74 -.long 0xa6ca82fc,0xa6ca82fc -.long 0xb0d090e0,0xb0d090e0 -.long 0x15d8a733,0x15d8a733 -.long 0x4a9804f1,0x4a9804f1 -.long 0xf7daec41,0xf7daec41 -.long 0x0e50cd7f,0x0e50cd7f -.long 0x2ff69117,0x2ff69117 -.long 0x8dd64d76,0x8dd64d76 -.long 0x4db0ef43,0x4db0ef43 -.long 0x544daacc,0x544daacc -.long 0xdf0496e4,0xdf0496e4 -.long 0xe3b5d19e,0xe3b5d19e -.long 0x1b886a4c,0x1b886a4c -.long 0xb81f2cc1,0xb81f2cc1 -.long 0x7f516546,0x7f516546 -.long 0x04ea5e9d,0x04ea5e9d -.long 0x5d358c01,0x5d358c01 -.long 0x737487fa,0x737487fa -.long 0x2e410bfb,0x2e410bfb -.long 0x5a1d67b3,0x5a1d67b3 -.long 0x52d2db92,0x52d2db92 -.long 0x335610e9,0x335610e9 -.long 0x1347d66d,0x1347d66d -.long 0x8c61d79a,0x8c61d79a -.long 0x7a0ca137,0x7a0ca137 -.long 0x8e14f859,0x8e14f859 -.long 0x893c13eb,0x893c13eb -.long 0xee27a9ce,0xee27a9ce -.long 0x35c961b7,0x35c961b7 -.long 0xede51ce1,0xede51ce1 -.long 0x3cb1477a,0x3cb1477a -.long 0x59dfd29c,0x59dfd29c -.long 0x3f73f255,0x3f73f255 -.long 0x79ce1418,0x79ce1418 -.long 0xbf37c773,0xbf37c773 -.long 0xeacdf753,0xeacdf753 -.long 0x5baafd5f,0x5baafd5f -.long 0x146f3ddf,0x146f3ddf -.long 0x86db4478,0x86db4478 -.long 0x81f3afca,0x81f3afca -.long 0x3ec468b9,0x3ec468b9 -.long 0x2c342438,0x2c342438 -.long 0x5f40a3c2,0x5f40a3c2 -.long 0x72c31d16,0x72c31d16 -.long 0x0c25e2bc,0x0c25e2bc -.long 0x8b493c28,0x8b493c28 -.long 0x41950dff,0x41950dff -.long 0x7101a839,0x7101a839 -.long 0xdeb30c08,0xdeb30c08 -.long 0x9ce4b4d8,0x9ce4b4d8 -.long 0x90c15664,0x90c15664 -.long 0x6184cb7b,0x6184cb7b -.long 0x70b632d5,0x70b632d5 -.long 0x745c6c48,0x745c6c48 -.long 0x4257b8d0,0x4257b8d0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-mb-x86_64.s deleted file mode 100644 index b0467f2f9f2995..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-mb-x86_64.s +++ /dev/null @@ -1,506 +0,0 @@ -.text - - - -.globl aesni_multi_cbc_encrypt -.type aesni_multi_cbc_encrypt,@function -.align 32 -aesni_multi_cbc_encrypt: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -.Lenc4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -.Lenc4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz .Lenc4x_done - - movups 16-120(%rsi),%xmm1 - pxor %xmm12,%xmm2 - movups 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm3 - movl 240-120(%rsi),%eax - pxor %xmm12,%xmm4 - movdqu (%r8),%xmm6 - pxor %xmm12,%xmm5 - movdqu (%r9),%xmm7 - pxor %xmm6,%xmm2 - movdqu (%r10),%xmm8 - pxor %xmm7,%xmm3 - movdqu (%r11),%xmm9 - pxor %xmm8,%xmm4 - pxor %xmm9,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp .Loop_enc4x - -.align 32 -.Loop_enc4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,220,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,220,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r10,%rbx,1) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,220,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,220,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,220,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,220,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,220,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,220,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,220,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,220,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 160-120(%rsi),%xmm0 - - jb .Lenc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 192-120(%rsi),%xmm0 - - je .Lenc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 224-120(%rsi),%xmm0 - jmp .Lenc4x_tail - -.align 32 -.Lenc4x_tail: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqu (%r8,%rbx,1),%xmm6 - movdqu 16-120(%rsi),%xmm1 - -.byte 102,15,56,221,208 - movdqu (%r9,%rbx,1),%xmm7 - pxor %xmm12,%xmm6 -.byte 102,15,56,221,216 - movdqu (%r10,%rbx,1),%xmm8 - pxor %xmm12,%xmm7 -.byte 102,15,56,221,224 - movdqu (%r11,%rbx,1),%xmm9 - pxor %xmm12,%xmm8 -.byte 102,15,56,221,232 - movdqu 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - pxor %xmm6,%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - pxor %xmm7,%xmm3 - movups %xmm4,-16(%r14,%rbx,1) - pxor %xmm8,%xmm4 - movups %xmm5,-16(%r15,%rbx,1) - pxor %xmm9,%xmm5 - - decl %edx - jnz .Loop_enc4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - - - - - - - - - - leaq 160(%rdi),%rdi - decl %edx - jnz .Lenc4x_loop_grande - -.Lenc4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lenc4x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_encrypt,.-aesni_multi_cbc_encrypt - -.globl aesni_multi_cbc_decrypt -.type aesni_multi_cbc_decrypt,@function -.align 32 -aesni_multi_cbc_decrypt: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -.Ldec4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -.Ldec4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm6 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm7 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm8 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm9 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz .Ldec4x_done - - movups 16-120(%rsi),%xmm1 - movups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - movdqu (%r8),%xmm2 - movdqu (%r9),%xmm3 - pxor %xmm12,%xmm2 - movdqu (%r10),%xmm4 - pxor %xmm12,%xmm3 - movdqu (%r11),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp .Loop_dec4x - -.align 32 -.Loop_dec4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,222,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,222,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r11,%rbx,1) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,222,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,222,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,222,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,222,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,222,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,222,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,222,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,222,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 160-120(%rsi),%xmm0 - - jb .Ldec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 192-120(%rsi),%xmm0 - - je .Ldec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 224-120(%rsi),%xmm0 - jmp .Ldec4x_tail - -.align 32 -.Ldec4x_tail: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,222,233 - movdqu 16-120(%rsi),%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm0,%xmm9 - movdqu 32-120(%rsi),%xmm0 - -.byte 102,15,56,223,214 -.byte 102,15,56,223,223 - movdqu -16(%r8,%rbx,1),%xmm6 - movdqu -16(%r9,%rbx,1),%xmm7 -.byte 102,65,15,56,223,224 -.byte 102,65,15,56,223,233 - movdqu -16(%r10,%rbx,1),%xmm8 - movdqu -16(%r11,%rbx,1),%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - movdqu (%r8,%rbx,1),%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - movdqu (%r9,%rbx,1),%xmm3 - pxor %xmm12,%xmm2 - movups %xmm4,-16(%r14,%rbx,1) - movdqu (%r10,%rbx,1),%xmm4 - pxor %xmm12,%xmm3 - movups %xmm5,-16(%r15,%rbx,1) - movdqu (%r11,%rbx,1),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - - decl %edx - jnz .Loop_dec4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - leaq 160(%rdi),%rdi - decl %edx - jnz .Ldec4x_loop_grande - -.Ldec4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Ldec4x_epilogue: - .byte 0xf3,0xc3 -.size aesni_multi_cbc_decrypt,.-aesni_multi_cbc_decrypt diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha1-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha1-x86_64.s deleted file mode 100644 index 84c5dced020b22..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha1-x86_64.s +++ /dev/null @@ -1,1682 +0,0 @@ -.text - - -.globl aesni_cbc_sha1_enc -.type aesni_cbc_sha1_enc,@function -.align 32 -aesni_cbc_sha1_enc: - - movl OPENSSL_ia32cap_P+0(%rip),%r10d - movq OPENSSL_ia32cap_P+4(%rip),%r11 - btq $61,%r11 - jc aesni_cbc_sha1_enc_shaext - jmp aesni_cbc_sha1_enc_ssse3 - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc,.-aesni_cbc_sha1_enc -.type aesni_cbc_sha1_enc_ssse3,@function -.align 32 -aesni_cbc_sha1_enc_ssse3: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - movdqu (%r8),%xmm2 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - addq $64,%r10 - paddd %xmm13,%xmm4 -.byte 102,15,56,0,251 - paddd %xmm13,%xmm5 - paddd %xmm13,%xmm6 - movdqa %xmm4,0(%rsp) - psubd %xmm13,%xmm4 - movdqa %xmm5,16(%rsp) - psubd %xmm13,%xmm5 - movdqa %xmm6,32(%rsp) - psubd %xmm13,%xmm6 - movups -112(%r15),%xmm15 - movups 16-112(%r15),%xmm0 - jmp .Loop_ssse3 -.align 32 -.Loop_ssse3: - rorl $2,%ebx - movups 0(%r12),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm4,%xmm8 - xorl %edx,%esi - movdqa %xmm7,%xmm12 - paddd %xmm7,%xmm13 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm5,%xmm8 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm4,%xmm8 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm6,%xmm12 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm12,%xmm8 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm13,48(%rsp) - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - movdqa %xmm8,%xmm3 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm8,%xmm12 - xorl %ebx,%esi - pslldq $12,%xmm3 - paddd %xmm8,%xmm8 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm12 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm13 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm3 - addl %edx,%ecx - rorl $7,%edx - por %xmm12,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm13 - pxor %xmm3,%xmm8 - xorl %ebp,%edx - movdqa 0(%r11),%xmm3 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm13,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm5,%xmm9 - xorl %ebp,%esi - movdqa %xmm8,%xmm13 - paddd %xmm8,%xmm3 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm6,%xmm9 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm5,%xmm9 - addl %ebx,%eax - rorl $7,%ebx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - pxor %xmm7,%xmm13 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm13,%xmm9 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm3,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm9,%xmm12 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm9,%xmm13 - xorl %ecx,%esi - pslldq $12,%xmm12 - paddd %xmm9,%xmm9 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm3 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm12 - addl %ebp,%edx - rorl $7,%ebp - por %xmm13,%xmm9 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm3 - pxor %xmm12,%xmm9 - xorl %eax,%ebp - movdqa 16(%r11),%xmm12 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm3,%xmm9 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm6,%xmm10 - xorl %eax,%esi - movdqa %xmm9,%xmm3 - paddd %xmm9,%xmm12 - movl %ecx,%edi - addl 32(%rsp),%ebx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm7,%xmm10 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm3 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm6,%xmm10 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm8,%xmm3 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm3,%xmm10 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm12,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm10,%xmm13 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm10,%xmm3 - xorl %edx,%esi - pslldq $12,%xmm13 - paddd %xmm10,%xmm10 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm3 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm13,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm13 - addl %eax,%ebp - rorl $7,%eax - por %xmm3,%xmm10 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm12 - pxor %xmm13,%xmm10 - xorl %ebx,%eax - movdqa 16(%r11),%xmm13 - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - pxor %xmm12,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm7,%xmm11 - xorl %ebx,%esi - movdqa %xmm10,%xmm12 - paddd %xmm10,%xmm13 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm8,%xmm11 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm12 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm7,%xmm11 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm9,%xmm12 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm11 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm13,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm11,%xmm3 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm11,%xmm12 - xorl %ebp,%esi - pslldq $12,%xmm3 - paddd %xmm11,%xmm11 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm12 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm3,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - cmpl $11,%r8d - jb .Laesenclast1 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast1 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast1: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - por %xmm12,%xmm11 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm13 - pxor %xmm3,%xmm11 - xorl %ecx,%ebx - movdqa 16(%r11),%xmm3 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm13,%xmm11 - pshufd $238,%xmm10,%xmm13 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm8,%xmm4 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm11,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm5,%xmm4 - addl %esi,%edx - movups 16(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%r12,%r13,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %eax,%edi - movdqa %xmm3,%xmm12 - xorl %ebx,%eax - paddd %xmm11,%xmm3 - addl %ebp,%edx - pxor %xmm13,%xmm4 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm4,%xmm13 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm3,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm4 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm13 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - por %xmm13,%xmm4 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm11,%xmm3 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm9,%xmm5 - addl 16(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm4,%xmm3 - movl %eax,%edi - roll $5,%eax - pxor %xmm6,%xmm5 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebx - paddd %xmm4,%xmm12 - addl %eax,%ebp - pxor %xmm3,%xmm5 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm5,%xmm3 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm12,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm5 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm3 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm3,%xmm5 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm4,%xmm12 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm10,%xmm6 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm5,%xmm12 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm7,%xmm6 - addl %esi,%eax - xorl %edx,%edi - movdqa 32(%r11),%xmm3 - rorl $7,%ecx - paddd %xmm5,%xmm13 - addl %ebx,%eax - pxor %xmm12,%xmm6 - addl 36(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm6,%xmm12 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm13,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm6 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm12 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm12,%xmm6 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm5,%xmm13 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm6,%xmm13 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm8,%xmm7 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm3,%xmm12 - rorl $7,%edx - paddd %xmm6,%xmm3 - addl %ecx,%ebx - pxor %xmm13,%xmm7 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm7,%xmm13 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm3,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm7 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm13 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm13,%xmm7 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm6,%xmm3 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm4,%xmm8 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm7,%xmm3 - movl %edx,%edi - roll $5,%edx - pxor %xmm9,%xmm8 - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebp - paddd %xmm7,%xmm12 - addl %edx,%ecx - pxor %xmm3,%xmm8 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm8,%xmm3 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm12,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm8 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm3,%xmm8 - addl %ebx,%eax - addl 12(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm7,%xmm12 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm5,%xmm9 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm8,%xmm12 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm10,%xmm9 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%eax - paddd %xmm8,%xmm13 - addl %ebp,%edx - pxor %xmm12,%xmm9 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm9,%xmm12 - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast2 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast2 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast2: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - movdqa %xmm13,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm9 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm12 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm12,%xmm9 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm8,%xmm13 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm6,%xmm10 - addl 32(%rsp),%ebp - movups 32(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm9,%xmm13 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm11,%xmm10 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm3,%xmm12 - xorl %ebx,%edi - paddd %xmm9,%xmm3 - xorl %ecx,%ebx - pxor %xmm13,%xmm10 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm10,%xmm13 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm3,16(%rsp) - roll $5,%ebp - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - pslld $2,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm13 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm13,%xmm10 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm9,%xmm3 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm7,%xmm11 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm10,%xmm3 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm4,%xmm11 - roll $5,%ebx - addl %esi,%eax - movdqa 48(%r11),%xmm13 - xorl %ecx,%edi - paddd %xmm10,%xmm12 - xorl %edx,%ecx - pxor %xmm3,%xmm11 - addl %ebx,%eax - addl 52(%rsp),%ebp - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm11,%xmm3 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm12,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm11 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm3 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm3,%xmm11 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm10,%xmm12 - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm8,%xmm4 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm11,%xmm12 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm5,%xmm4 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm13,%xmm3 - xorl %edx,%edi - paddd %xmm11,%xmm13 - xorl %ebp,%edx - pxor %xmm12,%xmm4 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm4,%xmm12 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm13,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm4 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm12 - addl 8(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - por %xmm12,%xmm4 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm11,%xmm13 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm9,%xmm5 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm4,%xmm13 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm6,%xmm5 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm12 - xorl %ebp,%edi - paddd %xmm4,%xmm3 - xorl %eax,%ebp - pxor %xmm13,%xmm5 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm5,%xmm13 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm3,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm5 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm13 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm13,%xmm5 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm4,%xmm3 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb .Laesenclast3 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast3 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast3: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm10,%xmm6 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm5,%xmm3 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm7,%xmm6 - roll $5,%ebp - addl %esi,%edx - movups 48(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm13 - xorl %eax,%edi - paddd %xmm5,%xmm12 - xorl %ebx,%eax - pxor %xmm3,%xmm6 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm6,%xmm3 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm12,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm6 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm3 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm3,%xmm6 - rorl $7,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm5,%xmm12 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm6,%xmm12 - movl %eax,%edi - roll $5,%eax - pxor %xmm8,%xmm7 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%ebx - paddd %xmm6,%xmm13 - addl %eax,%ebp - pxor %xmm12,%xmm7 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm7,%xmm12 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm13,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm7 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm12 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm12,%xmm7 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm7,%xmm3 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm3,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je .Ldone_ssse3 - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,235 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm13,%xmm4 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm4,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm13,%xmm4 - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,243 - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm13,%xmm5 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm5,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm13,%xmm5 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,251 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm13,%xmm6 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm6,32(%rsp) - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast4 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast4 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast4: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm13,%xmm6 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp .Loop_ssse3 - -.Ldone_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb .Laesenclast5 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast5 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast5: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - movups %xmm2,(%r8) - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc_ssse3,.-aesni_cbc_sha1_enc_ssse3 -.align 64 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 - -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.type aesni_cbc_sha1_enc_shaext,@function -.align 32 -aesni_cbc_sha1_enc_shaext: - movq 8(%rsp),%r10 - movdqu (%r9),%xmm8 - movd 16(%r9),%xmm9 - movdqa K_XX_XX+80(%rip),%xmm7 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm2 - movups 16(%rcx),%xmm0 - leaq 112(%rcx),%rcx - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqu (%r10),%xmm3 - movdqa %xmm9,%xmm12 -.byte 102,15,56,0,223 - movdqu 16(%r10),%xmm4 - movdqa %xmm8,%xmm11 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,0,231 - - paddd %xmm3,%xmm9 - movdqu 32(%r10),%xmm5 - leaq 64(%r10),%r10 - pxor %xmm12,%xmm3 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm3 - movdqa %xmm8,%xmm10 -.byte 102,15,56,0,239 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 15,56,201,220 - movdqu -16(%r10),%xmm6 - movdqa %xmm8,%xmm9 -.byte 102,15,56,0,247 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,205 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,203 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - cmpl $11,%r11d - jb .Laesenclast6 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast6 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast6: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,214 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,203 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,212 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - cmpl $11,%r11d - jb .Laesenclast7 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast7 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast7: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,203 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,212 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,205 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - cmpl $11,%r11d - jb .Laesenclast8 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast8 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast8: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,203 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,212 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 -.byte 15,56,202,245 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm12,%xmm5 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 - cmpl $11,%r11d - jb .Laesenclast9 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je .Laesenclast9 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -.Laesenclast9: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - decq %rdx - - paddd %xmm11,%xmm8 - movups %xmm2,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz .Loop_shaext - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - movups %xmm2,(%r8) - movdqu %xmm8,(%r9) - movd %xmm9,16(%r9) - .byte 0xf3,0xc3 -.size aesni_cbc_sha1_enc_shaext,.-aesni_cbc_sha1_enc_shaext diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha256-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha256-x86_64.s deleted file mode 100644 index 2c85f62495fe5e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha256-x86_64.s +++ /dev/null @@ -1,57 +0,0 @@ -.text - - -.globl aesni_cbc_sha256_enc -.type aesni_cbc_sha256_enc,@function -.align 16 -aesni_cbc_sha256_enc: - xorl %eax,%eax - cmpq $0,%rdi - je .Lprobe - ud2 -.Lprobe: - .byte 0xf3,0xc3 -.size aesni_cbc_sha256_enc,.-aesni_cbc_sha256_enc - -.align 64 -.type K256,@object -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0,0,0,0, 0,0,0,0, -1,-1,-1,-1 -.long 0,0,0,0, 0,0,0,0 -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-x86_64.s deleted file mode 100644 index 2317f0e55d214f..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-x86_64.s +++ /dev/null @@ -1,3551 +0,0 @@ -.text - -.globl aesni_encrypt -.type aesni_encrypt,@function -.align 16 -aesni_encrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -.Loop_enc1_1: -.byte 102,15,56,220,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz .Loop_enc1_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 -.size aesni_encrypt,.-aesni_encrypt - -.globl aesni_decrypt -.type aesni_decrypt,@function -.align 16 -aesni_decrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -.Loop_dec1_2: -.byte 102,15,56,222,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz .Loop_dec1_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 -.size aesni_decrypt, .-aesni_decrypt -.type _aesni_encrypt2,@function -.align 16 -_aesni_encrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Lenc_loop2: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop2 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - .byte 0xf3,0xc3 -.size _aesni_encrypt2,.-_aesni_encrypt2 -.type _aesni_decrypt2,@function -.align 16 -_aesni_decrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Ldec_loop2: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop2 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - .byte 0xf3,0xc3 -.size _aesni_decrypt2,.-_aesni_decrypt2 -.type _aesni_encrypt3,@function -.align 16 -_aesni_encrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Lenc_loop3: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop3 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - .byte 0xf3,0xc3 -.size _aesni_encrypt3,.-_aesni_encrypt3 -.type _aesni_decrypt3,@function -.align 16 -_aesni_decrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -.Ldec_loop3: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop3 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - .byte 0xf3,0xc3 -.size _aesni_decrypt3,.-_aesni_decrypt3 -.type _aesni_encrypt4,@function -.align 16 -_aesni_encrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -.Lenc_loop4: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop4 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - .byte 0xf3,0xc3 -.size _aesni_encrypt4,.-_aesni_encrypt4 -.type _aesni_decrypt4,@function -.align 16 -_aesni_decrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -.Ldec_loop4: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop4 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - .byte 0xf3,0xc3 -.size _aesni_decrypt4,.-_aesni_decrypt4 -.type _aesni_encrypt6,@function -.align 16 -_aesni_encrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Lenc_loop6_enter -.align 16 -.Lenc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.Lenc_loop6_enter: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop6 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - .byte 0xf3,0xc3 -.size _aesni_encrypt6,.-_aesni_encrypt6 -.type _aesni_decrypt6,@function -.align 16 -_aesni_decrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Ldec_loop6_enter -.align 16 -.Ldec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.Ldec_loop6_enter: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop6 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - .byte 0xf3,0xc3 -.size _aesni_decrypt6,.-_aesni_decrypt6 -.type _aesni_encrypt8,@function -.align 16 -_aesni_encrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Lenc_loop8_inner -.align 16 -.Lenc_loop8: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.Lenc_loop8_inner: -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.Lenc_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lenc_loop8 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 -.byte 102,68,15,56,221,192 -.byte 102,68,15,56,221,200 - .byte 0xf3,0xc3 -.size _aesni_encrypt8,.-_aesni_encrypt8 -.type _aesni_decrypt8,@function -.align 16 -_aesni_decrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp .Ldec_loop8_inner -.align 16 -.Ldec_loop8: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.Ldec_loop8_inner: -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.Ldec_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Ldec_loop8 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 -.byte 102,68,15,56,223,192 -.byte 102,68,15,56,223,200 - .byte 0xf3,0xc3 -.size _aesni_decrypt8,.-_aesni_decrypt8 -.globl aesni_ecb_encrypt -.type aesni_ecb_encrypt,@function -.align 16 -aesni_ecb_encrypt: - andq $-16,%rdx - jz .Lecb_ret - - movl 240(%rcx),%eax - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %eax,%r10d - testl %r8d,%r8d - jz .Lecb_decrypt - - cmpq $0x80,%rdx - jb .Lecb_enc_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp .Lecb_enc_loop8_enter -.align 16 -.Lecb_enc_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -.Lecb_enc_loop8_enter: - - call _aesni_encrypt8 - - subq $0x80,%rdx - jnc .Lecb_enc_loop8 - - movups %xmm2,(%rsi) - movq %r11,%rcx - movups %xmm3,16(%rsi) - movl %r10d,%eax - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz .Lecb_ret - -.Lecb_enc_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb .Lecb_enc_one - movups 16(%rdi),%xmm3 - je .Lecb_enc_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb .Lecb_enc_three - movups 48(%rdi),%xmm5 - je .Lecb_enc_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb .Lecb_enc_five - movups 80(%rdi),%xmm7 - je .Lecb_enc_six - movdqu 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_encrypt8 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_3: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_3 -.byte 102,15,56,221,209 - movups %xmm2,(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_five: - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - jmp .Lecb_ret -.align 16 -.Lecb_enc_six: - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - jmp .Lecb_ret - -.align 16 -.Lecb_decrypt: - cmpq $0x80,%rdx - jb .Lecb_dec_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp .Lecb_dec_loop8_enter -.align 16 -.Lecb_dec_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -.Lecb_dec_loop8_enter: - - call _aesni_decrypt8 - - movups (%r11),%xmm0 - subq $0x80,%rdx - jnc .Lecb_dec_loop8 - - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movq %r11,%rcx - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movl %r10d,%eax - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - movups %xmm9,112(%rsi) - pxor %xmm9,%xmm9 - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz .Lecb_ret - -.Lecb_dec_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb .Lecb_dec_one - movups 16(%rdi),%xmm3 - je .Lecb_dec_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb .Lecb_dec_three - movups 48(%rdi),%xmm5 - je .Lecb_dec_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb .Lecb_dec_five - movups 80(%rdi),%xmm7 - je .Lecb_dec_six - movups 96(%rdi),%xmm8 - movups (%rcx),%xmm0 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp .Lecb_ret -.align 16 -.Lecb_dec_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_4: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_4 -.byte 102,15,56,223,209 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lecb_ret -.align 16 -.Lecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - jmp .Lecb_ret -.align 16 -.Lecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - jmp .Lecb_ret -.align 16 -.Lecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - jmp .Lecb_ret -.align 16 -.Lecb_dec_five: - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - jmp .Lecb_ret -.align 16 -.Lecb_dec_six: - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - -.Lecb_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - .byte 0xf3,0xc3 -.size aesni_ecb_encrypt,.-aesni_ecb_encrypt -.globl aesni_ccm64_encrypt_blocks -.type aesni_ccm64_encrypt_blocks,@function -.align 16 -aesni_ccm64_encrypt_blocks: - movl 240(%rcx),%eax - movdqu (%r8),%xmm6 - movdqa .Lincrement64(%rip),%xmm9 - movdqa .Lbswap_mask(%rip),%xmm7 - - shll $4,%eax - movl $16,%r10d - leaq 0(%rcx),%r11 - movdqu (%r9),%xmm3 - movdqa %xmm6,%xmm2 - leaq 32(%rcx,%rax,1),%rcx -.byte 102,15,56,0,247 - subq %rax,%r10 - jmp .Lccm64_enc_outer -.align 16 -.Lccm64_enc_outer: - movups (%r11),%xmm0 - movq %r10,%rax - movups (%rdi),%xmm8 - - xorps %xmm0,%xmm2 - movups 16(%r11),%xmm1 - xorps %xmm8,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%r11),%xmm0 - -.Lccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq %xmm9,%xmm6 - decq %rdx -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - - leaq 16(%rdi),%rdi - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) -.byte 102,15,56,0,215 - leaq 16(%rsi),%rsi - jnz .Lccm64_enc_outer - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 -.size aesni_ccm64_encrypt_blocks,.-aesni_ccm64_encrypt_blocks -.globl aesni_ccm64_decrypt_blocks -.type aesni_ccm64_decrypt_blocks,@function -.align 16 -aesni_ccm64_decrypt_blocks: - movl 240(%rcx),%eax - movups (%r8),%xmm6 - movdqu (%r9),%xmm3 - movdqa .Lincrement64(%rip),%xmm9 - movdqa .Lbswap_mask(%rip),%xmm7 - - movaps %xmm6,%xmm2 - movl %eax,%r10d - movq %rcx,%r11 -.byte 102,15,56,0,247 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_5: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_5 -.byte 102,15,56,221,209 - shll $4,%r10d - movl $16,%eax - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 - leaq 16(%rdi),%rdi - subq %r10,%rax - leaq 32(%r11,%r10,1),%rcx - movq %rax,%r10 - jmp .Lccm64_dec_outer -.align 16 -.Lccm64_dec_outer: - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) - leaq 16(%rsi),%rsi -.byte 102,15,56,0,215 - - subq $1,%rdx - jz .Lccm64_dec_break - - movups (%r11),%xmm0 - movq %r10,%rax - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - xorps %xmm0,%xmm2 - xorps %xmm8,%xmm3 - movups 32(%r11),%xmm0 - jmp .Lccm64_dec2_loop -.align 16 -.Lccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz .Lccm64_dec2_loop - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leaq 16(%rdi),%rdi - jmp .Lccm64_dec_outer - -.align 16 -.Lccm64_dec_break: - - movl 240(%r11),%eax - movups (%r11),%xmm0 - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - leaq 32(%r11),%r11 - xorps %xmm8,%xmm3 -.Loop_enc1_6: -.byte 102,15,56,220,217 - decl %eax - movups (%r11),%xmm1 - leaq 16(%r11),%r11 - jnz .Loop_enc1_6 -.byte 102,15,56,221,217 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 -.size aesni_ccm64_decrypt_blocks,.-aesni_ccm64_decrypt_blocks -.globl aesni_ctr32_encrypt_blocks -.type aesni_ctr32_encrypt_blocks,@function -.align 16 -aesni_ctr32_encrypt_blocks: - cmpq $1,%rdx - jne .Lctr32_bulk - - - - movups (%r8),%xmm2 - movups (%rdi),%xmm3 - movl 240(%rcx),%edx - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_7: -.byte 102,15,56,220,209 - decl %edx - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_7 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - xorps %xmm2,%xmm2 - jmp .Lctr32_epilogue - -.align 16 -.Lctr32_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $128,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - - - - - movdqu (%r8),%xmm2 - movdqu (%rcx),%xmm0 - movl 12(%r8),%r8d - pxor %xmm0,%xmm2 - movl 12(%rcx),%r11d - movdqa %xmm2,0(%rsp) - bswapl %r8d - movdqa %xmm2,%xmm3 - movdqa %xmm2,%xmm4 - movdqa %xmm2,%xmm5 - movdqa %xmm2,64(%rsp) - movdqa %xmm2,80(%rsp) - movdqa %xmm2,96(%rsp) - movq %rdx,%r10 - movdqa %xmm2,112(%rsp) - - leaq 1(%r8),%rax - leaq 2(%r8),%rdx - bswapl %eax - bswapl %edx - xorl %r11d,%eax - xorl %r11d,%edx -.byte 102,15,58,34,216,3 - leaq 3(%r8),%rax - movdqa %xmm3,16(%rsp) -.byte 102,15,58,34,226,3 - bswapl %eax - movq %r10,%rdx - leaq 4(%r8),%r10 - movdqa %xmm4,32(%rsp) - xorl %r11d,%eax - bswapl %r10d -.byte 102,15,58,34,232,3 - xorl %r11d,%r10d - movdqa %xmm5,48(%rsp) - leaq 5(%r8),%r9 - movl %r10d,64+12(%rsp) - bswapl %r9d - leaq 6(%r8),%r10 - movl 240(%rcx),%eax - xorl %r11d,%r9d - bswapl %r10d - movl %r9d,80+12(%rsp) - xorl %r11d,%r10d - leaq 7(%r8),%r9 - movl %r10d,96+12(%rsp) - bswapl %r9d - movl OPENSSL_ia32cap_P+4(%rip),%r10d - xorl %r11d,%r9d - andl $71303168,%r10d - movl %r9d,112+12(%rsp) - - movups 16(%rcx),%xmm1 - - movdqa 64(%rsp),%xmm6 - movdqa 80(%rsp),%xmm7 - - cmpq $8,%rdx - jb .Lctr32_tail - - subq $6,%rdx - cmpl $4194304,%r10d - je .Lctr32_6x - - leaq 128(%rcx),%rcx - subq $2,%rdx - jmp .Lctr32_loop8 - -.align 16 -.Lctr32_6x: - shll $4,%eax - movl $48,%r10d - bswapl %r11d - leaq 32(%rcx,%rax,1),%rcx - subq %rax,%r10 - jmp .Lctr32_loop6 - -.align 16 -.Lctr32_loop6: - addl $6,%r8d - movups -48(%rcx,%r10,1),%xmm0 -.byte 102,15,56,220,209 - movl %r8d,%eax - xorl %r11d,%eax -.byte 102,15,56,220,217 -.byte 0x0f,0x38,0xf1,0x44,0x24,12 - leal 1(%r8),%eax -.byte 102,15,56,220,225 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,28 -.byte 102,15,56,220,233 - leal 2(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,241 -.byte 0x0f,0x38,0xf1,0x44,0x24,44 - leal 3(%r8),%eax -.byte 102,15,56,220,249 - movups -32(%rcx,%r10,1),%xmm1 - xorl %r11d,%eax - -.byte 102,15,56,220,208 -.byte 0x0f,0x38,0xf1,0x44,0x24,60 - leal 4(%r8),%eax -.byte 102,15,56,220,216 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,76 -.byte 102,15,56,220,224 - leal 5(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,232 -.byte 0x0f,0x38,0xf1,0x44,0x24,92 - movq %r10,%rax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%r10,1),%xmm0 - - call .Lenc_loop6 - - movdqu (%rdi),%xmm8 - movdqu 16(%rdi),%xmm9 - movdqu 32(%rdi),%xmm10 - movdqu 48(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 80(%rdi),%xmm13 - leaq 96(%rdi),%rdi - movups -64(%rcx,%r10,1),%xmm1 - pxor %xmm2,%xmm8 - movaps 0(%rsp),%xmm2 - pxor %xmm3,%xmm9 - movaps 16(%rsp),%xmm3 - pxor %xmm4,%xmm10 - movaps 32(%rsp),%xmm4 - pxor %xmm5,%xmm11 - movaps 48(%rsp),%xmm5 - pxor %xmm6,%xmm12 - movaps 64(%rsp),%xmm6 - pxor %xmm7,%xmm13 - movaps 80(%rsp),%xmm7 - movdqu %xmm8,(%rsi) - movdqu %xmm9,16(%rsi) - movdqu %xmm10,32(%rsi) - movdqu %xmm11,48(%rsi) - movdqu %xmm12,64(%rsi) - movdqu %xmm13,80(%rsi) - leaq 96(%rsi),%rsi - - subq $6,%rdx - jnc .Lctr32_loop6 - - addq $6,%rdx - jz .Lctr32_done - - leal -48(%r10),%eax - leaq -80(%rcx,%r10,1),%rcx - negl %eax - shrl $4,%eax - jmp .Lctr32_tail - -.align 32 -.Lctr32_loop8: - addl $8,%r8d - movdqa 96(%rsp),%xmm8 -.byte 102,15,56,220,209 - movl %r8d,%r9d - movdqa 112(%rsp),%xmm9 -.byte 102,15,56,220,217 - bswapl %r9d - movups 32-128(%rcx),%xmm0 -.byte 102,15,56,220,225 - xorl %r11d,%r9d - nop -.byte 102,15,56,220,233 - movl %r9d,0+12(%rsp) - leaq 1(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 48-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,16+12(%rsp) - leaq 2(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 64-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,32+12(%rsp) - leaq 3(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 80-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,48+12(%rsp) - leaq 4(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 96-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,64+12(%rsp) - leaq 5(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 112-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,80+12(%rsp) - leaq 6(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 128-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,96+12(%rsp) - leaq 7(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 144-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - xorl %r11d,%r9d - movdqu 0(%rdi),%xmm10 -.byte 102,15,56,220,232 - movl %r9d,112+12(%rsp) - cmpl $11,%eax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 160-128(%rcx),%xmm0 - - jb .Lctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 176-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 192-128(%rcx),%xmm0 - je .Lctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 208-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 224-128(%rcx),%xmm0 - jmp .Lctr32_enc_done - -.align 16 -.Lctr32_enc_done: - movdqu 16(%rdi),%xmm11 - pxor %xmm0,%xmm10 - movdqu 32(%rdi),%xmm12 - pxor %xmm0,%xmm11 - movdqu 48(%rdi),%xmm13 - pxor %xmm0,%xmm12 - movdqu 64(%rdi),%xmm14 - pxor %xmm0,%xmm13 - movdqu 80(%rdi),%xmm15 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movdqu 96(%rdi),%xmm1 - leaq 128(%rdi),%rdi - -.byte 102,65,15,56,221,210 - pxor %xmm0,%xmm1 - movdqu 112-128(%rdi),%xmm10 -.byte 102,65,15,56,221,219 - pxor %xmm0,%xmm10 - movdqa 0(%rsp),%xmm11 -.byte 102,65,15,56,221,228 -.byte 102,65,15,56,221,237 - movdqa 16(%rsp),%xmm12 - movdqa 32(%rsp),%xmm13 -.byte 102,65,15,56,221,246 -.byte 102,65,15,56,221,255 - movdqa 48(%rsp),%xmm14 - movdqa 64(%rsp),%xmm15 -.byte 102,68,15,56,221,193 - movdqa 80(%rsp),%xmm0 - movups 16-128(%rcx),%xmm1 -.byte 102,69,15,56,221,202 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm0,%xmm7 - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - - subq $8,%rdx - jnc .Lctr32_loop8 - - addq $8,%rdx - jz .Lctr32_done - leaq -128(%rcx),%rcx - -.Lctr32_tail: - - - leaq 16(%rcx),%rcx - cmpq $4,%rdx - jb .Lctr32_loop3 - je .Lctr32_loop4 - - - shll $4,%eax - movdqa 96(%rsp),%xmm8 - pxor %xmm9,%xmm9 - - movups 16(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - leaq 32-16(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,225 - addq $16,%rax - movups (%rdi),%xmm10 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - movups 16(%rdi),%xmm11 - movups 32(%rdi),%xmm12 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 - - call .Lenc_loop8_enter - - movdqu 48(%rdi),%xmm13 - pxor %xmm10,%xmm2 - movdqu 64(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm10,%xmm6 - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - cmpq $6,%rdx - jb .Lctr32_done - - movups 80(%rdi),%xmm11 - xorps %xmm11,%xmm7 - movups %xmm7,80(%rsi) - je .Lctr32_done - - movups 96(%rdi),%xmm12 - xorps %xmm12,%xmm8 - movups %xmm8,96(%rsi) - jmp .Lctr32_done - -.align 32 -.Lctr32_loop4: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx),%xmm1 - jnz .Lctr32_loop4 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 - movups (%rdi),%xmm10 - movups 16(%rdi),%xmm11 -.byte 102,15,56,221,225 -.byte 102,15,56,221,233 - movups 32(%rdi),%xmm12 - movups 48(%rdi),%xmm13 - - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm4,32(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm5,48(%rsi) - jmp .Lctr32_done - -.align 32 -.Lctr32_loop3: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx),%xmm1 - jnz .Lctr32_loop3 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 -.byte 102,15,56,221,225 - - movups (%rdi),%xmm10 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - cmpq $2,%rdx - jb .Lctr32_done - - movups 16(%rdi),%xmm11 - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - je .Lctr32_done - - movups 32(%rdi),%xmm12 - xorps %xmm12,%xmm4 - movups %xmm4,32(%rsi) - -.Lctr32_done: - xorps %xmm0,%xmm0 - xorl %r11d,%r11d - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - movaps %xmm0,112(%rsp) - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lctr32_epilogue: - .byte 0xf3,0xc3 -.size aesni_ctr32_encrypt_blocks,.-aesni_ctr32_encrypt_blocks -.globl aesni_xts_encrypt -.type aesni_xts_encrypt,@function -.align 16 -aesni_xts_encrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -.Loop_enc1_8: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz .Loop_enc1_8 -.byte 102,15,56,221,209 - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa .Lxts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc .Lxts_enc_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq .Lxts_magic(%rip),%r8 - jmp .Lxts_enc_grandloop - -.align 32 -.Lxts_enc_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,220,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,220,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,220,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,220,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,220,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,220,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,220,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,220,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp .Lxts_enc_loop6 -.align 32 -.Lxts_enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz .Lxts_enc_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,220,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,220,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,220,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,220,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,220,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,221,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,221,92,36,16 -.byte 102,15,56,221,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,221,108,36,48 -.byte 102,15,56,221,116,36,64 -.byte 102,15,56,221,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc .Lxts_enc_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -.Lxts_enc_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - addq $96,%rdx - jz .Lxts_enc_done - - pxor %xmm0,%xmm11 - cmpq $0x20,%rdx - jb .Lxts_enc_one - pxor %xmm0,%xmm12 - je .Lxts_enc_two - - pxor %xmm0,%xmm13 - cmpq $0x40,%rdx - jb .Lxts_enc_three - pxor %xmm0,%xmm14 - je .Lxts_enc_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - pxor %xmm7,%xmm7 - - call _aesni_encrypt6 - - xorps %xmm10,%xmm2 - movdqa %xmm15,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_9: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_9 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - leaq 16(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_encrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_encrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_encrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp .Lxts_enc_done - -.align 16 -.Lxts_enc_done: - andq $15,%r9 - jz .Lxts_enc_ret - movq %r9,%rdx - -.Lxts_enc_steal: - movzbl (%rdi),%eax - movzbl -16(%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,-16(%rsi) - movb %cl,0(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz .Lxts_enc_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups -16(%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_enc1_10: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_10 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movups %xmm2,-16(%rsi) - -.Lxts_enc_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lxts_enc_epilogue: - .byte 0xf3,0xc3 -.size aesni_xts_encrypt,.-aesni_xts_encrypt -.globl aesni_xts_decrypt -.type aesni_xts_decrypt,@function -.align 16 -aesni_xts_decrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -.Loop_enc1_11: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz .Loop_enc1_11 -.byte 102,15,56,221,209 - xorl %eax,%eax - testq $15,%rdx - setnz %al - shlq $4,%rax - subq %rax,%rdx - - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa .Lxts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc .Lxts_dec_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq .Lxts_magic(%rip),%r8 - jmp .Lxts_dec_grandloop - -.align 32 -.Lxts_dec_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,222,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,222,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,222,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,222,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,222,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,222,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,222,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,222,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp .Lxts_dec_loop6 -.align 32 -.Lxts_dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz .Lxts_dec_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,222,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,222,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,222,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,222,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,222,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,223,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,223,92,36,16 -.byte 102,15,56,223,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,223,108,36,48 -.byte 102,15,56,223,116,36,64 -.byte 102,15,56,223,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc .Lxts_dec_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -.Lxts_dec_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 - addq $96,%rdx - jz .Lxts_dec_done - - pxor %xmm0,%xmm12 - cmpq $0x20,%rdx - jb .Lxts_dec_one - pxor %xmm0,%xmm13 - je .Lxts_dec_two - - pxor %xmm0,%xmm14 - cmpq $0x40,%rdx - jb .Lxts_dec_three - je .Lxts_dec_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - - call _aesni_decrypt6 - - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm14 - movdqu %xmm5,48(%rsi) - pcmpgtd %xmm15,%xmm14 - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - pshufd $0x13,%xmm14,%xmm11 - andq $15,%r9 - jz .Lxts_dec_ret - - movdqa %xmm15,%xmm10 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm11 - pxor %xmm15,%xmm11 - jmp .Lxts_dec_done2 - -.align 16 -.Lxts_dec_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_12: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_12 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - movdqa %xmm12,%xmm11 - leaq 16(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_decrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm13,%xmm11 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_decrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm14,%xmm11 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_decrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqa %xmm15,%xmm11 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp .Lxts_dec_done - -.align 16 -.Lxts_dec_done: - andq $15,%r9 - jz .Lxts_dec_ret -.Lxts_dec_done2: - movq %r9,%rdx - movq %r11,%rcx - movl %r10d,%eax - - movups (%rdi),%xmm2 - xorps %xmm11,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_13: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_13 -.byte 102,15,56,223,209 - xorps %xmm11,%xmm2 - movups %xmm2,(%rsi) - -.Lxts_dec_steal: - movzbl 16(%rdi),%eax - movzbl (%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,(%rsi) - movb %cl,16(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz .Lxts_dec_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups (%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_14: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_14 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - -.Lxts_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -.Lxts_dec_epilogue: - .byte 0xf3,0xc3 -.size aesni_xts_decrypt,.-aesni_xts_decrypt -.globl aesni_cbc_encrypt -.type aesni_cbc_encrypt,@function -.align 16 -aesni_cbc_encrypt: - testq %rdx,%rdx - jz .Lcbc_ret - - movl 240(%rcx),%r10d - movq %rcx,%r11 - testl %r9d,%r9d - jz .Lcbc_decrypt - - movups (%r8),%xmm2 - movl %r10d,%eax - cmpq $16,%rdx - jb .Lcbc_enc_tail - subq $16,%rdx - jmp .Lcbc_enc_loop -.align 16 -.Lcbc_enc_loop: - movups (%rdi),%xmm3 - leaq 16(%rdi),%rdi - - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm3 - leaq 32(%rcx),%rcx - xorps %xmm3,%xmm2 -.Loop_enc1_15: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_enc1_15 -.byte 102,15,56,221,209 - movl %r10d,%eax - movq %r11,%rcx - movups %xmm2,0(%rsi) - leaq 16(%rsi),%rsi - subq $16,%rdx - jnc .Lcbc_enc_loop - addq $16,%rdx - jnz .Lcbc_enc_tail - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%r8) - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - jmp .Lcbc_ret - -.Lcbc_enc_tail: - movq %rdx,%rcx - xchgq %rdi,%rsi -.long 0x9066A4F3 - movl $16,%ecx - subq %rdx,%rcx - xorl %eax,%eax -.long 0x9066AAF3 - leaq -16(%rdi),%rdi - movl %r10d,%eax - movq %rdi,%rsi - movq %r11,%rcx - xorq %rdx,%rdx - jmp .Lcbc_enc_loop - -.align 16 -.Lcbc_decrypt: - cmpq $16,%rdx - jne .Lcbc_decrypt_bulk - - - - movdqu (%rdi),%xmm2 - movdqu (%r8),%xmm3 - movdqa %xmm2,%xmm4 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_16: -.byte 102,15,56,222,209 - decl %r10d - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_16 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqu %xmm4,(%r8) - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lcbc_ret -.align 16 -.Lcbc_decrypt_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $16,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r8),%xmm10 - movl %r10d,%eax - cmpq $0x50,%rdx - jbe .Lcbc_dec_tail - - movups (%rcx),%xmm0 - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 - movl OPENSSL_ia32cap_P+4(%rip),%r9d - cmpq $0x70,%rdx - jbe .Lcbc_dec_six_or_seven - - andl $71303168,%r9d - subq $0x50,%rdx - cmpl $4194304,%r9d - je .Lcbc_dec_loop6_enter - subq $0x20,%rdx - leaq 112(%rcx),%rcx - jmp .Lcbc_dec_loop8_enter -.align 16 -.Lcbc_dec_loop8: - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi -.Lcbc_dec_loop8_enter: - movdqu 96(%rdi),%xmm8 - pxor %xmm0,%xmm2 - movdqu 112(%rdi),%xmm9 - pxor %xmm0,%xmm3 - movups 16-112(%rcx),%xmm1 - pxor %xmm0,%xmm4 - xorq %r11,%r11 - cmpq $0x70,%rdx - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 - -.byte 102,15,56,222,209 - pxor %xmm0,%xmm9 - movups 32-112(%rcx),%xmm0 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 - setnc %r11b - shlq $7,%r11 -.byte 102,68,15,56,222,201 - addq %rdi,%r11 - movups 48-112(%rcx),%xmm1 -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 64-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 80-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 96-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 112-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 128-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 144-112(%rcx),%xmm1 - cmpl $11,%eax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 160-112(%rcx),%xmm0 - jb .Lcbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 176-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 192-112(%rcx),%xmm0 - je .Lcbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 208-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 224-112(%rcx),%xmm0 - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_done: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm12 - pxor %xmm0,%xmm13 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movdqu 80(%rdi),%xmm1 - -.byte 102,65,15,56,223,210 - movdqu 96(%rdi),%xmm10 - pxor %xmm0,%xmm1 -.byte 102,65,15,56,223,219 - pxor %xmm0,%xmm10 - movdqu 112(%rdi),%xmm0 -.byte 102,65,15,56,223,228 - leaq 128(%rdi),%rdi - movdqu 0(%r11),%xmm11 -.byte 102,65,15,56,223,237 -.byte 102,65,15,56,223,246 - movdqu 16(%r11),%xmm12 - movdqu 32(%r11),%xmm13 -.byte 102,65,15,56,223,255 -.byte 102,68,15,56,223,193 - movdqu 48(%r11),%xmm14 - movdqu 64(%r11),%xmm15 -.byte 102,69,15,56,223,202 - movdqa %xmm0,%xmm10 - movdqu 80(%r11),%xmm1 - movups -112(%rcx),%xmm0 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm1,%xmm7 - movups %xmm8,96(%rsi) - leaq 112(%rsi),%rsi - - subq $0x80,%rdx - ja .Lcbc_dec_loop8 - - movaps %xmm9,%xmm2 - leaq -112(%rcx),%rcx - addq $0x70,%rdx - jle .Lcbc_dec_clear_tail_collected - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi - cmpq $0x50,%rdx - jbe .Lcbc_dec_tail - - movaps %xmm11,%xmm2 -.Lcbc_dec_six_or_seven: - cmpq $0x60,%rdx - ja .Lcbc_dec_seven - - movaps %xmm7,%xmm8 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - leaq 80(%rsi),%rsi - movdqa %xmm7,%xmm2 - pxor %xmm7,%xmm7 - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_seven: - movups 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups 80(%rdi),%xmm9 - pxor %xmm10,%xmm2 - movups 96(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm9,%xmm8 - movdqu %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - leaq 96(%rsi),%rsi - movdqa %xmm8,%xmm2 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_loop6: - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 -.Lcbc_dec_loop6_enter: - leaq 96(%rdi),%rdi - movdqa %xmm7,%xmm8 - - call _aesni_decrypt6 - - pxor %xmm10,%xmm2 - movdqa %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm6 - movq %r11,%rcx - movdqu %xmm5,48(%rsi) - pxor %xmm15,%xmm7 - movl %r10d,%eax - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - subq $0x60,%rdx - ja .Lcbc_dec_loop6 - - movdqa %xmm7,%xmm2 - addq $0x50,%rdx - jle .Lcbc_dec_clear_tail_collected - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - -.Lcbc_dec_tail: - movups (%rdi),%xmm2 - subq $0x10,%rdx - jbe .Lcbc_dec_one - - movups 16(%rdi),%xmm3 - movaps %xmm2,%xmm11 - subq $0x10,%rdx - jbe .Lcbc_dec_two - - movups 32(%rdi),%xmm4 - movaps %xmm3,%xmm12 - subq $0x10,%rdx - jbe .Lcbc_dec_three - - movups 48(%rdi),%xmm5 - movaps %xmm4,%xmm13 - subq $0x10,%rdx - jbe .Lcbc_dec_four - - movups 64(%rdi),%xmm6 - movaps %xmm5,%xmm14 - movaps %xmm6,%xmm15 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm15,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - leaq 64(%rsi),%rsi - movdqa %xmm6,%xmm2 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - subq $0x10,%rdx - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_one: - movaps %xmm2,%xmm11 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -.Loop_dec1_17: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz .Loop_dec1_17 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movaps %xmm11,%xmm10 - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_two: - movaps %xmm3,%xmm12 - call _aesni_decrypt2 - pxor %xmm10,%xmm2 - movaps %xmm12,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - movdqa %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leaq 16(%rsi),%rsi - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_three: - movaps %xmm4,%xmm13 - call _aesni_decrypt3 - pxor %xmm10,%xmm2 - movaps %xmm13,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movdqa %xmm4,%xmm2 - pxor %xmm4,%xmm4 - leaq 32(%rsi),%rsi - jmp .Lcbc_dec_tail_collected -.align 16 -.Lcbc_dec_four: - movaps %xmm5,%xmm14 - call _aesni_decrypt4 - pxor %xmm10,%xmm2 - movaps %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movdqa %xmm5,%xmm2 - pxor %xmm5,%xmm5 - leaq 48(%rsi),%rsi - jmp .Lcbc_dec_tail_collected - -.align 16 -.Lcbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 -.Lcbc_dec_tail_collected: - movups %xmm10,(%r8) - andq $15,%rdx - jnz .Lcbc_dec_tail_partial - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp .Lcbc_dec_ret -.align 16 -.Lcbc_dec_tail_partial: - movaps %xmm2,(%rsp) - pxor %xmm2,%xmm2 - movq $16,%rcx - movq %rsi,%rdi - subq %rdx,%rcx - leaq (%rsp),%rsi -.long 0x9066A4F3 - movdqa %xmm2,(%rsp) - -.Lcbc_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - leaq (%rbp),%rsp - popq %rbp -.Lcbc_ret: - .byte 0xf3,0xc3 -.size aesni_cbc_encrypt,.-aesni_cbc_encrypt -.globl aesni_set_decrypt_key -.type aesni_set_decrypt_key,@function -.align 16 -aesni_set_decrypt_key: -.byte 0x48,0x83,0xEC,0x08 - call __aesni_set_encrypt_key - shll $4,%esi - testl %eax,%eax - jnz .Ldec_key_ret - leaq 16(%rdx,%rsi,1),%rdi - - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 - movups %xmm0,(%rdi) - movups %xmm1,(%rdx) - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - -.Ldec_key_inverse: - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - movups %xmm0,16(%rdi) - movups %xmm1,-16(%rdx) - cmpq %rdx,%rdi - ja .Ldec_key_inverse - - movups (%rdx),%xmm0 -.byte 102,15,56,219,192 - pxor %xmm1,%xmm1 - movups %xmm0,(%rdi) - pxor %xmm0,%xmm0 -.Ldec_key_ret: - addq $8,%rsp - .byte 0xf3,0xc3 -.LSEH_end_set_decrypt_key: -.size aesni_set_decrypt_key,.-aesni_set_decrypt_key -.globl aesni_set_encrypt_key -.type aesni_set_encrypt_key,@function -.align 16 -aesni_set_encrypt_key: -__aesni_set_encrypt_key: -.byte 0x48,0x83,0xEC,0x08 - movq $-1,%rax - testq %rdi,%rdi - jz .Lenc_key_ret - testq %rdx,%rdx - jz .Lenc_key_ret - - movl $268437504,%r10d - movups (%rdi),%xmm0 - xorps %xmm4,%xmm4 - andl OPENSSL_ia32cap_P+4(%rip),%r10d - leaq 16(%rdx),%rax - cmpl $256,%esi - je .L14rounds - cmpl $192,%esi - je .L12rounds - cmpl $128,%esi - jne .Lbad_keybits - -.L10rounds: - movl $9,%esi - cmpl $268435456,%r10d - je .L10rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,200,1 - call .Lkey_expansion_128_cold -.byte 102,15,58,223,200,2 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,4 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,8 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,16 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,32 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,64 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,128 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,27 - call .Lkey_expansion_128 -.byte 102,15,58,223,200,54 - call .Lkey_expansion_128 - movups %xmm0,(%rax) - movl %esi,80(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L10rounds_alt: - movdqa .Lkey_rotate(%rip),%xmm5 - movl $8,%r10d - movdqa .Lkey_rcon1(%rip),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,(%rdx) - jmp .Loop_key128 - -.align 16 -.Loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leaq 16(%rax),%rax - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%rax) - movdqa %xmm0,%xmm2 - - decl %r10d - jnz .Loop_key128 - - movdqa .Lkey_rcon1b(%rip),%xmm4 - -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%rax) - - movl %esi,96(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L12rounds: - movq 16(%rdi),%xmm2 - movl $11,%esi - cmpl $268435456,%r10d - je .L12rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,202,1 - call .Lkey_expansion_192a_cold -.byte 102,15,58,223,202,2 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,4 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,8 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,16 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,32 - call .Lkey_expansion_192b -.byte 102,15,58,223,202,64 - call .Lkey_expansion_192a -.byte 102,15,58,223,202,128 - call .Lkey_expansion_192b - movups %xmm0,(%rax) - movl %esi,48(%rax) - xorq %rax,%rax - jmp .Lenc_key_ret - -.align 16 -.L12rounds_alt: - movdqa .Lkey_rotate192(%rip),%xmm5 - movdqa .Lkey_rcon1(%rip),%xmm4 - movl $8,%r10d - movdqu %xmm0,(%rdx) - jmp .Loop_key192 - -.align 16 -.Loop_key192: - movq %xmm2,0(%rax) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leaq 24(%rax),%rax - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - - pshufd $0xff,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%rax) - - decl %r10d - jnz .Loop_key192 - - movl %esi,32(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.L14rounds: - movups 16(%rdi),%xmm2 - movl $13,%esi - leaq 16(%rax),%rax - cmpl $268435456,%r10d - je .L14rounds_alt - - movups %xmm0,(%rdx) - movups %xmm2,16(%rdx) -.byte 102,15,58,223,202,1 - call .Lkey_expansion_256a_cold -.byte 102,15,58,223,200,1 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,2 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,2 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,4 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,4 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,8 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,8 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,16 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,16 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,32 - call .Lkey_expansion_256a -.byte 102,15,58,223,200,32 - call .Lkey_expansion_256b -.byte 102,15,58,223,202,64 - call .Lkey_expansion_256a - movups %xmm0,(%rax) - movl %esi,16(%rax) - xorq %rax,%rax - jmp .Lenc_key_ret - -.align 16 -.L14rounds_alt: - movdqa .Lkey_rotate(%rip),%xmm5 - movdqa .Lkey_rcon1(%rip),%xmm4 - movl $7,%r10d - movdqu %xmm0,0(%rdx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,16(%rdx) - jmp .Loop_key256 - -.align 16 -.Loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - decl %r10d - jz .Ldone_key256 - - pshufd $0xff,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%rax) - leaq 32(%rax),%rax - movdqa %xmm2,%xmm1 - - jmp .Loop_key256 - -.Ldone_key256: - movl %esi,16(%rax) - xorl %eax,%eax - jmp .Lenc_key_ret - -.align 16 -.Lbad_keybits: - movq $-2,%rax -.Lenc_key_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - addq $8,%rsp - .byte 0xf3,0xc3 -.LSEH_end_set_encrypt_key: - -.align 16 -.Lkey_expansion_128: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_192a: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_192a_cold: - movaps %xmm2,%xmm5 -.Lkey_expansion_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%rax) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%rax) - leaq 32(%rax),%rax - jmp .Lkey_expansion_192b_warm - -.align 16 -.Lkey_expansion_256a: - movups %xmm2,(%rax) - leaq 16(%rax),%rax -.Lkey_expansion_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.align 16 -.Lkey_expansion_256b: - movups %xmm0,(%rax) - leaq 16(%rax),%rax - - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - .byte 0xf3,0xc3 -.size aesni_set_encrypt_key,.-aesni_set_encrypt_key -.size __aesni_set_encrypt_key,.-__aesni_set_encrypt_key -.align 64 -.Lbswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.Lincrement32: -.long 6,6,6,0 -.Lincrement64: -.long 1,0,0,0 -.Lxts_magic: -.long 0x87,0,1,0 -.Lincrement1: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -.Lkey_rotate: -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d -.Lkey_rotate192: -.long 0x04070605,0x04070605,0x04070605,0x04070605 -.Lkey_rcon1: -.long 1,1,1,1 -.Lkey_rcon1b: -.long 0x1b,0x1b,0x1b,0x1b - -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/bsaes-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/bsaes-x86_64.s deleted file mode 100644 index 0fd201167f647a..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/bsaes-x86_64.s +++ /dev/null @@ -1,2498 +0,0 @@ -.text - - - - -.type _bsaes_encrypt8,@function -.align 64 -_bsaes_encrypt8: - leaq .LBS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa 80(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 -_bsaes_encrypt8_bitslice: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp .Lenc_sbox -.align 16 -.Lenc_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -.Lenc_sbox: - pxor %xmm5,%xmm4 - pxor %xmm0,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm1,%xmm5 - pxor %xmm15,%xmm4 - - pxor %xmm2,%xmm5 - pxor %xmm6,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm3,%xmm2 - pxor %xmm4,%xmm3 - pxor %xmm0,%xmm2 - - pxor %xmm6,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm6,%xmm10 - movdqa %xmm0,%xmm9 - movdqa %xmm4,%xmm8 - movdqa %xmm1,%xmm12 - movdqa %xmm5,%xmm11 - - pxor %xmm3,%xmm10 - pxor %xmm1,%xmm9 - pxor %xmm2,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm3,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm15,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm2,%xmm11 - pxor %xmm15,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm6,%xmm12 - movdqa %xmm4,%xmm11 - pxor %xmm0,%xmm12 - pxor %xmm5,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm1,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm3,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm0,%xmm13 - pand %xmm2,%xmm11 - movdqa %xmm6,%xmm14 - pand %xmm15,%xmm12 - pand %xmm4,%xmm13 - por %xmm5,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm5,%xmm11 - movdqa %xmm4,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm5,%xmm9 - pxor %xmm4,%xmm5 - pand %xmm14,%xmm4 - pand %xmm13,%xmm5 - pxor %xmm4,%xmm5 - pxor %xmm9,%xmm4 - pxor %xmm15,%xmm11 - pxor %xmm2,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm2,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm2 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm2,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm2 - pxor %xmm11,%xmm5 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm2 - - movdqa %xmm6,%xmm11 - movdqa %xmm0,%xmm7 - pxor %xmm3,%xmm11 - pxor %xmm1,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm3,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm1,%xmm3 - pand %xmm14,%xmm7 - pand %xmm12,%xmm1 - pand %xmm13,%xmm11 - pand %xmm8,%xmm3 - pxor %xmm11,%xmm7 - pxor %xmm1,%xmm3 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm1 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm6,%xmm10 - pxor %xmm0,%xmm6 - pand %xmm14,%xmm0 - pand %xmm13,%xmm6 - pxor %xmm0,%xmm6 - pxor %xmm10,%xmm0 - pxor %xmm11,%xmm6 - pxor %xmm11,%xmm3 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm1 - pxor %xmm15,%xmm6 - pxor %xmm5,%xmm0 - pxor %xmm6,%xmm3 - pxor %xmm15,%xmm5 - pxor %xmm0,%xmm15 - - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm4 - pxor %xmm2,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm4,%xmm3 - - pxor %xmm2,%xmm5 - decl %r10d - jl .Lenc_done - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm3,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm5,%xmm10 - pxor %xmm9,%xmm3 - pshufd $0x93,%xmm2,%xmm11 - pxor %xmm10,%xmm5 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm2 - pshufd $0x93,%xmm1,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm1 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm2,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm5,%xmm11 - pshufd $0x4E,%xmm2,%xmm7 - pxor %xmm1,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm3,%xmm10 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm1,%xmm5 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm12,%xmm8 - pxor %xmm10,%xmm2 - pxor %xmm14,%xmm6 - pxor %xmm13,%xmm5 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm1 - movdqa %xmm8,%xmm4 - movdqa 48(%r11),%xmm7 - jnz .Lenc_loop - movdqa 64(%r11),%xmm7 - jmp .Lenc_loop -.align 16 -.Lenc_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm2,%xmm10 - psrlq $1,%xmm2 - pxor %xmm4,%xmm1 - pxor %xmm6,%xmm2 - pand %xmm7,%xmm1 - pand %xmm7,%xmm2 - pxor %xmm1,%xmm4 - psllq $1,%xmm1 - pxor %xmm2,%xmm6 - psllq $1,%xmm2 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm2 - movdqa %xmm3,%xmm9 - psrlq $1,%xmm3 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm5,%xmm3 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm3 - pand %xmm7,%xmm15 - pxor %xmm3,%xmm5 - psllq $1,%xmm3 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm2,%xmm10 - psrlq $2,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm1,%xmm2 - pand %xmm8,%xmm6 - pand %xmm8,%xmm2 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm2,%xmm1 - psllq $2,%xmm2 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm2 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm5,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm5 - psllq $2,%xmm0 - pxor %xmm15,%xmm3 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm5,%xmm9 - psrlq $4,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $4,%xmm3 - pxor %xmm4,%xmm5 - pxor %xmm1,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm4 - psllq $4,%xmm5 - pxor %xmm3,%xmm1 - psllq $4,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm2,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm2 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 -.size _bsaes_encrypt8,.-_bsaes_encrypt8 - -.type _bsaes_decrypt8,@function -.align 64 -_bsaes_decrypt8: - leaq .LBS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa -48(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp .Ldec_sbox -.align 16 -.Ldec_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -.Ldec_sbox: - pxor %xmm3,%xmm2 - - pxor %xmm6,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm3,%xmm5 - pxor %xmm5,%xmm6 - pxor %xmm6,%xmm0 - - pxor %xmm0,%xmm15 - pxor %xmm4,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm15,%xmm4 - pxor %xmm2,%xmm0 - movdqa %xmm2,%xmm10 - movdqa %xmm6,%xmm9 - movdqa %xmm0,%xmm8 - movdqa %xmm3,%xmm12 - movdqa %xmm4,%xmm11 - - pxor %xmm15,%xmm10 - pxor %xmm3,%xmm9 - pxor %xmm5,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm15,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm1,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm5,%xmm11 - pxor %xmm1,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm2,%xmm12 - movdqa %xmm0,%xmm11 - pxor %xmm6,%xmm12 - pxor %xmm4,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm3,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm15,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm6,%xmm13 - pand %xmm5,%xmm11 - movdqa %xmm2,%xmm14 - pand %xmm1,%xmm12 - pand %xmm0,%xmm13 - por %xmm4,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm4,%xmm11 - movdqa %xmm0,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm4,%xmm9 - pxor %xmm0,%xmm4 - pand %xmm14,%xmm0 - pand %xmm13,%xmm4 - pxor %xmm0,%xmm4 - pxor %xmm9,%xmm0 - pxor %xmm1,%xmm11 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm1,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm5,%xmm1 - pand %xmm14,%xmm7 - pand %xmm12,%xmm5 - pand %xmm13,%xmm11 - pand %xmm8,%xmm1 - pxor %xmm11,%xmm7 - pxor %xmm5,%xmm1 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm5 - pxor %xmm11,%xmm4 - pxor %xmm11,%xmm1 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm5 - - movdqa %xmm2,%xmm11 - movdqa %xmm6,%xmm7 - pxor %xmm15,%xmm11 - pxor %xmm3,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm3,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm3 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm3,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm3 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm2,%xmm10 - pxor %xmm6,%xmm2 - pand %xmm14,%xmm6 - pand %xmm13,%xmm2 - pxor %xmm6,%xmm2 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm3 - pxor %xmm6,%xmm0 - pxor %xmm4,%xmm5 - - pxor %xmm0,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm6,%xmm4 - pxor %xmm1,%xmm3 - pxor %xmm15,%xmm6 - pxor %xmm4,%xmm3 - pxor %xmm5,%xmm2 - pxor %xmm0,%xmm5 - pxor %xmm3,%xmm2 - - pxor %xmm15,%xmm3 - pxor %xmm2,%xmm6 - decl %r10d - jl .Ldec_done - - pshufd $0x4E,%xmm15,%xmm7 - pshufd $0x4E,%xmm2,%xmm13 - pxor %xmm15,%xmm7 - pshufd $0x4E,%xmm4,%xmm14 - pxor %xmm2,%xmm13 - pshufd $0x4E,%xmm0,%xmm8 - pxor %xmm4,%xmm14 - pshufd $0x4E,%xmm5,%xmm9 - pxor %xmm0,%xmm8 - pshufd $0x4E,%xmm3,%xmm10 - pxor %xmm5,%xmm9 - pxor %xmm13,%xmm15 - pxor %xmm13,%xmm0 - pshufd $0x4E,%xmm1,%xmm11 - pxor %xmm3,%xmm10 - pxor %xmm7,%xmm5 - pxor %xmm8,%xmm3 - pshufd $0x4E,%xmm6,%xmm12 - pxor %xmm1,%xmm11 - pxor %xmm14,%xmm0 - pxor %xmm9,%xmm1 - pxor %xmm6,%xmm12 - - pxor %xmm14,%xmm5 - pxor %xmm13,%xmm3 - pxor %xmm13,%xmm1 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm14,%xmm1 - pxor %xmm14,%xmm6 - pxor %xmm12,%xmm4 - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm5,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm3,%xmm10 - pxor %xmm9,%xmm5 - pshufd $0x93,%xmm1,%xmm11 - pxor %xmm10,%xmm3 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm1 - pshufd $0x93,%xmm2,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm2 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm1,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm3,%xmm11 - pshufd $0x4E,%xmm1,%xmm7 - pxor %xmm2,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm5,%xmm10 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm2,%xmm3 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm12,%xmm8 - pxor %xmm1,%xmm10 - pxor %xmm14,%xmm6 - pxor %xmm3,%xmm13 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm2 - movdqa %xmm13,%xmm5 - movdqa %xmm8,%xmm4 - movdqa %xmm2,%xmm1 - movdqa %xmm10,%xmm2 - movdqa -16(%r11),%xmm7 - jnz .Ldec_loop - movdqa -32(%r11),%xmm7 - jmp .Ldec_loop -.align 16 -.Ldec_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm2,%xmm9 - psrlq $1,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $1,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm6,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm4 - psllq $1,%xmm2 - pxor %xmm1,%xmm6 - psllq $1,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm3,%xmm5 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm5 - pand %xmm7,%xmm15 - pxor %xmm5,%xmm3 - psllq $1,%xmm5 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm1,%xmm10 - psrlq $2,%xmm1 - pxor %xmm4,%xmm6 - pxor %xmm2,%xmm1 - pand %xmm8,%xmm6 - pand %xmm8,%xmm1 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm1,%xmm2 - psllq $2,%xmm1 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm3 - psllq $2,%xmm0 - pxor %xmm15,%xmm5 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm3,%xmm9 - psrlq $4,%xmm3 - movdqa %xmm5,%xmm10 - psrlq $4,%xmm5 - pxor %xmm4,%xmm3 - pxor %xmm2,%xmm5 - pand %xmm7,%xmm3 - pand %xmm7,%xmm5 - pxor %xmm3,%xmm4 - psllq $4,%xmm3 - pxor %xmm5,%xmm2 - psllq $4,%xmm5 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm5 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm1 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 -.size _bsaes_decrypt8,.-_bsaes_decrypt8 -.type _bsaes_key_convert,@function -.align 16 -_bsaes_key_convert: - leaq .Lmasks(%rip),%r11 - movdqu (%rcx),%xmm7 - leaq 16(%rcx),%rcx - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - movdqa 48(%r11),%xmm3 - movdqa 64(%r11),%xmm4 - pcmpeqd %xmm5,%xmm5 - - movdqu (%rcx),%xmm6 - movdqa %xmm7,(%rax) - leaq 16(%rax),%rax - decl %r10d - jmp .Lkey_loop -.align 16 -.Lkey_loop: -.byte 102,15,56,0,244 - - movdqa %xmm0,%xmm8 - movdqa %xmm1,%xmm9 - - pand %xmm6,%xmm8 - pand %xmm6,%xmm9 - movdqa %xmm2,%xmm10 - pcmpeqb %xmm0,%xmm8 - psllq $4,%xmm0 - movdqa %xmm3,%xmm11 - pcmpeqb %xmm1,%xmm9 - psllq $4,%xmm1 - - pand %xmm6,%xmm10 - pand %xmm6,%xmm11 - movdqa %xmm0,%xmm12 - pcmpeqb %xmm2,%xmm10 - psllq $4,%xmm2 - movdqa %xmm1,%xmm13 - pcmpeqb %xmm3,%xmm11 - psllq $4,%xmm3 - - movdqa %xmm2,%xmm14 - movdqa %xmm3,%xmm15 - pxor %xmm5,%xmm8 - pxor %xmm5,%xmm9 - - pand %xmm6,%xmm12 - pand %xmm6,%xmm13 - movdqa %xmm8,0(%rax) - pcmpeqb %xmm0,%xmm12 - psrlq $4,%xmm0 - movdqa %xmm9,16(%rax) - pcmpeqb %xmm1,%xmm13 - psrlq $4,%xmm1 - leaq 16(%rcx),%rcx - - pand %xmm6,%xmm14 - pand %xmm6,%xmm15 - movdqa %xmm10,32(%rax) - pcmpeqb %xmm2,%xmm14 - psrlq $4,%xmm2 - movdqa %xmm11,48(%rax) - pcmpeqb %xmm3,%xmm15 - psrlq $4,%xmm3 - movdqu (%rcx),%xmm6 - - pxor %xmm5,%xmm13 - pxor %xmm5,%xmm14 - movdqa %xmm12,64(%rax) - movdqa %xmm13,80(%rax) - movdqa %xmm14,96(%rax) - movdqa %xmm15,112(%rax) - leaq 128(%rax),%rax - decl %r10d - jnz .Lkey_loop - - movdqa 80(%r11),%xmm7 - - .byte 0xf3,0xc3 -.size _bsaes_key_convert,.-_bsaes_key_convert - -.globl bsaes_cbc_encrypt -.type bsaes_cbc_encrypt,@function -.align 16 -bsaes_cbc_encrypt: - cmpl $0,%r9d - jne asm_AES_cbc_encrypt - cmpq $128,%rdx - jb asm_AES_cbc_encrypt - - movq %rsp,%rax -.Lcbc_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movq %r8,%rbx - shrq $4,%r14 - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - movdqu (%rbx),%xmm14 - subq $8,%r14 -.Lcbc_dec_loop: - movdqu 0(%r12),%xmm15 - movdqu 16(%r12),%xmm0 - movdqu 32(%r12),%xmm1 - movdqu 48(%r12),%xmm2 - movdqu 64(%r12),%xmm3 - movdqu 80(%r12),%xmm4 - movq %rsp,%rax - movdqu 96(%r12),%xmm5 - movl %edx,%r10d - movdqu 112(%r12),%xmm6 - movdqa %xmm14,32(%rbp) - - call _bsaes_decrypt8 - - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm2 - movdqu 112(%r12),%xmm14 - pxor %xmm13,%xmm4 - movdqu %xmm15,0(%r13) - leaq 128(%r12),%r12 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - subq $8,%r14 - jnc .Lcbc_dec_loop - - addq $8,%r14 - jz .Lcbc_dec_done - - movdqu 0(%r12),%xmm15 - movq %rsp,%rax - movl %edx,%r10d - cmpq $2,%r14 - jb .Lcbc_dec_one - movdqu 16(%r12),%xmm0 - je .Lcbc_dec_two - movdqu 32(%r12),%xmm1 - cmpq $4,%r14 - jb .Lcbc_dec_three - movdqu 48(%r12),%xmm2 - je .Lcbc_dec_four - movdqu 64(%r12),%xmm3 - cmpq $6,%r14 - jb .Lcbc_dec_five - movdqu 80(%r12),%xmm4 - je .Lcbc_dec_six - movdqu 96(%r12),%xmm5 - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm14 - pxor %xmm12,%xmm2 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_six: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm14 - pxor %xmm11,%xmm6 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_five: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm14 - pxor %xmm10,%xmm1 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_four: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm14 - pxor %xmm9,%xmm3 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_three: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm14 - pxor %xmm8,%xmm5 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_two: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm14 - pxor %xmm7,%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - jmp .Lcbc_dec_done -.align 16 -.Lcbc_dec_one: - leaq (%r12),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm14 - movdqu %xmm14,(%r13) - movdqa %xmm15,%xmm14 - -.Lcbc_dec_done: - movdqu %xmm14,(%rbx) - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lcbc_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lcbc_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lcbc_dec_epilogue: - .byte 0xf3,0xc3 -.size bsaes_cbc_encrypt,.-bsaes_cbc_encrypt - -.globl bsaes_ctr32_encrypt_blocks -.type bsaes_ctr32_encrypt_blocks,@function -.align 16 -bsaes_ctr32_encrypt_blocks: - movq %rsp,%rax -.Lctr_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movdqu (%r8),%xmm0 - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movdqa %xmm0,32(%rbp) - cmpq $8,%rdx - jb .Lctr_enc_short - - movl %eax,%ebx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %ebx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - movdqa (%rsp),%xmm8 - leaq .LADD1(%rip),%r11 - movdqa 32(%rbp),%xmm15 - movdqa -32(%r11),%xmm7 -.byte 102,68,15,56,0,199 -.byte 102,68,15,56,0,255 - movdqa %xmm8,(%rsp) - jmp .Lctr_enc_loop -.align 16 -.Lctr_enc_loop: - movdqa %xmm15,32(%rbp) - movdqa %xmm15,%xmm0 - movdqa %xmm15,%xmm1 - paddd 0(%r11),%xmm0 - movdqa %xmm15,%xmm2 - paddd 16(%r11),%xmm1 - movdqa %xmm15,%xmm3 - paddd 32(%r11),%xmm2 - movdqa %xmm15,%xmm4 - paddd 48(%r11),%xmm3 - movdqa %xmm15,%xmm5 - paddd 64(%r11),%xmm4 - movdqa %xmm15,%xmm6 - paddd 80(%r11),%xmm5 - paddd 96(%r11),%xmm6 - - - - movdqa (%rsp),%xmm8 - leaq 16(%rsp),%rax - movdqa -16(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq .LBS0(%rip),%r11 - movl %ebx,%r10d - - call _bsaes_encrypt8_bitslice - - subq $8,%r14 - jc .Lctr_enc_loop_done - - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - movdqu 32(%r12),%xmm9 - movdqu 48(%r12),%xmm10 - movdqu 64(%r12),%xmm11 - movdqu 80(%r12),%xmm12 - movdqu 96(%r12),%xmm13 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - pxor %xmm15,%xmm7 - movdqa 32(%rbp),%xmm15 - pxor %xmm8,%xmm0 - movdqu %xmm7,0(%r13) - pxor %xmm9,%xmm3 - movdqu %xmm0,16(%r13) - pxor %xmm10,%xmm5 - movdqu %xmm3,32(%r13) - pxor %xmm11,%xmm2 - movdqu %xmm5,48(%r13) - pxor %xmm12,%xmm6 - movdqu %xmm2,64(%r13) - pxor %xmm13,%xmm1 - movdqu %xmm6,80(%r13) - pxor %xmm14,%xmm4 - movdqu %xmm1,96(%r13) - leaq .LADD1(%rip),%r11 - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - paddd 112(%r11),%xmm15 - jnz .Lctr_enc_loop - - jmp .Lctr_enc_done -.align 16 -.Lctr_enc_loop_done: - addq $8,%r14 - movdqu 0(%r12),%xmm7 - pxor %xmm7,%xmm15 - movdqu %xmm15,0(%r13) - cmpq $2,%r14 - jb .Lctr_enc_done - movdqu 16(%r12),%xmm8 - pxor %xmm8,%xmm0 - movdqu %xmm0,16(%r13) - je .Lctr_enc_done - movdqu 32(%r12),%xmm9 - pxor %xmm9,%xmm3 - movdqu %xmm3,32(%r13) - cmpq $4,%r14 - jb .Lctr_enc_done - movdqu 48(%r12),%xmm10 - pxor %xmm10,%xmm5 - movdqu %xmm5,48(%r13) - je .Lctr_enc_done - movdqu 64(%r12),%xmm11 - pxor %xmm11,%xmm2 - movdqu %xmm2,64(%r13) - cmpq $6,%r14 - jb .Lctr_enc_done - movdqu 80(%r12),%xmm12 - pxor %xmm12,%xmm6 - movdqu %xmm6,80(%r13) - je .Lctr_enc_done - movdqu 96(%r12),%xmm13 - pxor %xmm13,%xmm1 - movdqu %xmm1,96(%r13) - jmp .Lctr_enc_done - -.align 16 -.Lctr_enc_short: - leaq 32(%rbp),%rdi - leaq 48(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_encrypt - movdqu (%r12),%xmm0 - leaq 16(%r12),%r12 - movl 44(%rbp),%eax - bswapl %eax - pxor 48(%rbp),%xmm0 - incl %eax - movdqu %xmm0,(%r13) - bswapl %eax - leaq 16(%r13),%r13 - movl %eax,44(%rsp) - decq %r14 - jnz .Lctr_enc_short - -.Lctr_enc_done: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lctr_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lctr_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lctr_enc_epilogue: - .byte 0xf3,0xc3 -.size bsaes_ctr32_encrypt_blocks,.-bsaes_ctr32_encrypt_blocks -.globl bsaes_xts_encrypt -.type bsaes_xts_encrypt,@function -.align 16 -bsaes_xts_encrypt: - movq %rsp,%rax -.Lxts_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - andq $-16,%r14 - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc .Lxts_enc_short - jmp .Lxts_enc_loop - -.align 16 -.Lxts_enc_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm1,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc .Lxts_enc_loop - -.Lxts_enc_short: - addq $0x80,%r14 - jz .Lxts_enc_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je .Lxts_enc_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je .Lxts_enc_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je .Lxts_enc_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je .Lxts_enc_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je .Lxts_enc_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je .Lxts_enc_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - movdqu %xmm1,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - movdqu %xmm2,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - movdqu %xmm5,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - movdqu %xmm3,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp .Lxts_enc_done -.align 16 -.Lxts_enc_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_encrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -.Lxts_enc_done: - andl $15,%ebx - jz .Lxts_enc_ret - movq %r13,%rdx - -.Lxts_enc_steal: - movzbl (%r12),%eax - movzbl -16(%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,-16(%rdx) - movb %cl,0(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz .Lxts_enc_steal - - movdqu -16(%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_encrypt - pxor 32(%rbp),%xmm6 - movdqu %xmm6,-16(%r13) - -.Lxts_enc_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lxts_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lxts_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lxts_enc_epilogue: - .byte 0xf3,0xc3 -.size bsaes_xts_encrypt,.-bsaes_xts_encrypt - -.globl bsaes_xts_decrypt -.type bsaes_xts_decrypt,@function -.align 16 -bsaes_xts_decrypt: - movq %rsp,%rax -.Lxts_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - xorl %eax,%eax - andq $-16,%r14 - testl $15,%ebx - setnz %al - shlq $4,%rax - subq %rax,%r14 - - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc .Lxts_dec_short - jmp .Lxts_dec_loop - -.align 16 -.Lxts_dec_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc .Lxts_dec_loop - -.Lxts_dec_short: - addq $0x80,%r14 - jz .Lxts_dec_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je .Lxts_dec_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je .Lxts_dec_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je .Lxts_dec_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je .Lxts_dec_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je .Lxts_dec_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je .Lxts_dec_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp .Lxts_dec_done -.align 16 -.Lxts_dec_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -.Lxts_dec_done: - andl $15,%ebx - jz .Lxts_dec_ret - - pxor %xmm14,%xmm14 - movdqa .Lxts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - movdqa %xmm6,%xmm5 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - movdqu (%r12),%xmm15 - pxor %xmm13,%xmm6 - - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm6 - movq %r13,%rdx - movdqu %xmm6,(%r13) - -.Lxts_dec_steal: - movzbl 16(%r12),%eax - movzbl (%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,(%rdx) - movb %cl,16(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz .Lxts_dec_steal - - movdqu (%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm5,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call asm_AES_decrypt - pxor 32(%rbp),%xmm5 - movdqu %xmm5,(%r13) - -.Lxts_dec_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -.Lxts_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja .Lxts_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -.Lxts_dec_epilogue: - .byte 0xf3,0xc3 -.size bsaes_xts_decrypt,.-bsaes_xts_decrypt -.type _bsaes_const,@object -.align 64 -_bsaes_const: -.LM0ISR: -.quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -.LISRM0: -.quad 0x01040b0e0205080f, 0x0306090c00070a0d -.LISR: -.quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -.LBS0: -.quad 0x5555555555555555, 0x5555555555555555 -.LBS1: -.quad 0x3333333333333333, 0x3333333333333333 -.LBS2: -.quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f -.LSR: -.quad 0x0504070600030201, 0x0f0e0d0c0a09080b -.LSRM0: -.quad 0x0304090e00050a0f, 0x01060b0c0207080d -.LM0SR: -.quad 0x0a0e02060f03070b, 0x0004080c05090d01 -.LSWPUP: -.quad 0x0706050403020100, 0x0c0d0e0f0b0a0908 -.LSWPUPM0SR: -.quad 0x0a0d02060c03070b, 0x0004080f05090e01 -.LADD1: -.quad 0x0000000000000000, 0x0000000100000000 -.LADD2: -.quad 0x0000000000000000, 0x0000000200000000 -.LADD3: -.quad 0x0000000000000000, 0x0000000300000000 -.LADD4: -.quad 0x0000000000000000, 0x0000000400000000 -.LADD5: -.quad 0x0000000000000000, 0x0000000500000000 -.LADD6: -.quad 0x0000000000000000, 0x0000000600000000 -.LADD7: -.quad 0x0000000000000000, 0x0000000700000000 -.LADD8: -.quad 0x0000000000000000, 0x0000000800000000 -.Lxts_magic: -.long 0x87,0,1,0 -.Lmasks: -.quad 0x0101010101010101, 0x0101010101010101 -.quad 0x0202020202020202, 0x0202020202020202 -.quad 0x0404040404040404, 0x0404040404040404 -.quad 0x0808080808080808, 0x0808080808080808 -.LM0: -.quad 0x02060a0e03070b0f, 0x0004080c0105090d -.L63: -.quad 0x6363636363636363, 0x6363636363636363 -.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 -.align 64 -.size _bsaes_const,.-_bsaes_const diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/aes/vpaes-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/aes/vpaes-x86_64.s deleted file mode 100644 index bf7c2b0b6f6b04..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/aes/vpaes-x86_64.s +++ /dev/null @@ -1,827 +0,0 @@ -.text - - - - - - - - - - - - - - - - -.type _vpaes_encrypt_core,@function -.align 16 -_vpaes_encrypt_core: - movq %rdx,%r9 - movq $16,%r11 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa .Lk_ipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movdqu (%r9),%xmm5 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa .Lk_ipt+16(%rip),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm5,%xmm2 - addq $16,%r9 - pxor %xmm2,%xmm0 - leaq .Lk_mc_backward(%rip),%r10 - jmp .Lenc_entry - -.align 16 -.Lenc_loop: - - movdqa %xmm13,%xmm4 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa %xmm15,%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%r11,%r10,1),%xmm1 -.byte 102,15,56,0,234 - movdqa (%r11,%r10,1),%xmm4 - movdqa %xmm14,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addq $16,%r9 - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addq $16,%r11 - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andq $0x30,%r11 - subq $1,%rax - pxor %xmm3,%xmm0 - -.Lenc_entry: - - movdqa %xmm9,%xmm1 - movdqa %xmm11,%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm10,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm5 - pxor %xmm1,%xmm3 - jnz .Lenc_loop - - - movdqa -96(%r10),%xmm4 - movdqa -80(%r10),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%r11,%r10,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - .byte 0xf3,0xc3 -.size _vpaes_encrypt_core,.-_vpaes_encrypt_core - - - - - - -.type _vpaes_decrypt_core,@function -.align 16 -_vpaes_decrypt_core: - movq %rdx,%r9 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa .Lk_dipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movq %rax,%r11 - psrld $4,%xmm1 - movdqu (%r9),%xmm5 - shlq $4,%r11 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa .Lk_dipt+16(%rip),%xmm0 - xorq $0x30,%r11 - leaq .Lk_dsbd(%rip),%r10 -.byte 102,15,56,0,193 - andq $0x30,%r11 - pxor %xmm5,%xmm2 - movdqa .Lk_mc_forward+48(%rip),%xmm5 - pxor %xmm2,%xmm0 - addq $16,%r9 - addq %r10,%r11 - jmp .Ldec_entry - -.align 16 -.Ldec_loop: - - - - movdqa -32(%r10),%xmm4 - movdqa -16(%r10),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 0(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addq $16,%r9 -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subq $1,%rax - -.Ldec_entry: - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - movdqa %xmm11,%xmm2 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm0 - pxor %xmm1,%xmm3 - jnz .Ldec_loop - - - movdqa 96(%r10),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%r10),%xmm0 - movdqa -352(%r11),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - .byte 0xf3,0xc3 -.size _vpaes_decrypt_core,.-_vpaes_decrypt_core - - - - - - -.type _vpaes_schedule_core,@function -.align 16 -_vpaes_schedule_core: - - - - - - call _vpaes_preheat - movdqa .Lk_rcon(%rip),%xmm8 - movdqu (%rdi),%xmm0 - - - movdqa %xmm0,%xmm3 - leaq .Lk_ipt(%rip),%r11 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - - leaq .Lk_sr(%rip),%r10 - testq %rcx,%rcx - jnz .Lschedule_am_decrypting - - - movdqu %xmm0,(%rdx) - jmp .Lschedule_go - -.Lschedule_am_decrypting: - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%rdx) - xorq $0x30,%r8 - -.Lschedule_go: - cmpl $192,%esi - ja .Lschedule_256 - je .Lschedule_192 - - - - - - - - - - -.Lschedule_128: - movl $10,%esi - -.Loop_schedule_128: - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - jmp .Loop_schedule_128 - - - - - - - - - - - - - - - - -.align 16 -.Lschedule_192: - movdqu 8(%rdi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%esi - -.Loop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp .Loop_schedule_192 - - - - - - - - - - - -.align 16 -.Lschedule_256: - movdqu 16(%rdi),%xmm0 - call _vpaes_schedule_transform - movl $7,%esi - -.Loop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - - - call _vpaes_schedule_round - decq %rsi - jz .Lschedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd $0xFF,%xmm0,%xmm0 - movdqa %xmm7,%xmm5 - movdqa %xmm6,%xmm7 - call _vpaes_schedule_low_round - movdqa %xmm5,%xmm7 - - jmp .Loop_schedule_256 - - - - - - - - - - - - -.align 16 -.Lschedule_mangle_last: - - leaq .Lk_deskew(%rip),%r11 - testq %rcx,%rcx - jnz .Lschedule_mangle_last_dec - - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,193 - leaq .Lk_opt(%rip),%r11 - addq $32,%rdx - -.Lschedule_mangle_last_dec: - addq $-16,%rdx - pxor .Lk_s63(%rip),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%rdx) - - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - .byte 0xf3,0xc3 -.size _vpaes_schedule_core,.-_vpaes_schedule_core - - - - - - - - - - - - - - - -.type _vpaes_schedule_192_smear,@function -.align 16 -_vpaes_schedule_192_smear: - pshufd $0x80,%xmm6,%xmm1 - pshufd $0xFE,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - .byte 0xf3,0xc3 -.size _vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear - - - - - - - - - - - - - - - - - - - -.type _vpaes_schedule_round,@function -.align 16 -_vpaes_schedule_round: - - pxor %xmm1,%xmm1 -.byte 102,65,15,58,15,200,15 -.byte 102,69,15,58,15,192,15 - pxor %xmm1,%xmm7 - - - pshufd $0xFF,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round: - - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor .Lk_s63(%rip),%xmm7 - - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm10,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa %xmm13,%xmm4 -.byte 102,15,56,0,226 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - - - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - .byte 0xf3,0xc3 -.size _vpaes_schedule_round,.-_vpaes_schedule_round - - - - - - - - - - -.type _vpaes_schedule_transform,@function -.align 16 -_vpaes_schedule_transform: - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa (%r11),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%r11),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - .byte 0xf3,0xc3 -.size _vpaes_schedule_transform,.-_vpaes_schedule_transform - - - - - - - - - - - - - - - - - - - - - - - - -.type _vpaes_schedule_mangle,@function -.align 16 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa .Lk_mc_forward(%rip),%xmm5 - testq %rcx,%rcx - jnz .Lschedule_mangle_dec - - - addq $16,%rdx - pxor .Lk_s63(%rip),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - - jmp .Lschedule_mangle_both -.align 16 -.Lschedule_mangle_dec: - - leaq .Lk_dksd(%rip),%r11 - movdqa %xmm9,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm4 - - movdqa 0(%r11),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 32(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 64(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 96(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - - addq $-16,%rdx - -.Lschedule_mangle_both: - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - addq $-16,%r8 - andq $0x30,%r8 - movdqu %xmm3,(%rdx) - .byte 0xf3,0xc3 -.size _vpaes_schedule_mangle,.-_vpaes_schedule_mangle - - - - -.globl vpaes_set_encrypt_key -.type vpaes_set_encrypt_key,@function -.align 16 -vpaes_set_encrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - - movl $0,%ecx - movl $0x30,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 -.size vpaes_set_encrypt_key,.-vpaes_set_encrypt_key - -.globl vpaes_set_decrypt_key -.type vpaes_set_decrypt_key,@function -.align 16 -vpaes_set_decrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - shll $4,%eax - leaq 16(%rdx,%rax,1),%rdx - - movl $1,%ecx - movl %esi,%r8d - shrl $1,%r8d - andl $32,%r8d - xorl $32,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 -.size vpaes_set_decrypt_key,.-vpaes_set_decrypt_key - -.globl vpaes_encrypt -.type vpaes_encrypt,@function -.align 16 -vpaes_encrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 -.size vpaes_encrypt,.-vpaes_encrypt - -.globl vpaes_decrypt -.type vpaes_decrypt,@function -.align 16 -vpaes_decrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 -.size vpaes_decrypt,.-vpaes_decrypt -.globl vpaes_cbc_encrypt -.type vpaes_cbc_encrypt,@function -.align 16 -vpaes_cbc_encrypt: - xchgq %rcx,%rdx - subq $16,%rcx - jc .Lcbc_abort - movdqu (%r8),%xmm6 - subq %rdi,%rsi - call _vpaes_preheat - cmpl $0,%r9d - je .Lcbc_dec_loop - jmp .Lcbc_enc_loop -.align 16 -.Lcbc_enc_loop: - movdqu (%rdi),%xmm0 - pxor %xmm6,%xmm0 - call _vpaes_encrypt_core - movdqa %xmm0,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc .Lcbc_enc_loop - jmp .Lcbc_done -.align 16 -.Lcbc_dec_loop: - movdqu (%rdi),%xmm0 - movdqa %xmm0,%xmm7 - call _vpaes_decrypt_core - pxor %xmm6,%xmm0 - movdqa %xmm7,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc .Lcbc_dec_loop -.Lcbc_done: - movdqu %xmm6,(%r8) -.Lcbc_abort: - .byte 0xf3,0xc3 -.size vpaes_cbc_encrypt,.-vpaes_cbc_encrypt - - - - - - -.type _vpaes_preheat,@function -.align 16 -_vpaes_preheat: - leaq .Lk_s0F(%rip),%r10 - movdqa -32(%r10),%xmm10 - movdqa -16(%r10),%xmm11 - movdqa 0(%r10),%xmm9 - movdqa 48(%r10),%xmm13 - movdqa 64(%r10),%xmm12 - movdqa 80(%r10),%xmm15 - movdqa 96(%r10),%xmm14 - .byte 0xf3,0xc3 -.size _vpaes_preheat,.-_vpaes_preheat - - - - - -.type _vpaes_consts,@object -.align 64 -_vpaes_consts: -.Lk_inv: -.quad 0x0E05060F0D080180, 0x040703090A0B0C02 -.quad 0x01040A060F0B0780, 0x030D0E0C02050809 - -.Lk_s0F: -.quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F - -.Lk_ipt: -.quad 0xC2B2E8985A2A7000, 0xCABAE09052227808 -.quad 0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81 - -.Lk_sb1: -.quad 0xB19BE18FCB503E00, 0xA5DF7A6E142AF544 -.quad 0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF -.Lk_sb2: -.quad 0xE27A93C60B712400, 0x5EB7E955BC982FCD -.quad 0x69EB88400AE12900, 0xC2A163C8AB82234A -.Lk_sbo: -.quad 0xD0D26D176FBDC700, 0x15AABF7AC502A878 -.quad 0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA - -.Lk_mc_forward: -.quad 0x0407060500030201, 0x0C0F0E0D080B0A09 -.quad 0x080B0A0904070605, 0x000302010C0F0E0D -.quad 0x0C0F0E0D080B0A09, 0x0407060500030201 -.quad 0x000302010C0F0E0D, 0x080B0A0904070605 - -.Lk_mc_backward: -.quad 0x0605040702010003, 0x0E0D0C0F0A09080B -.quad 0x020100030E0D0C0F, 0x0A09080B06050407 -.quad 0x0E0D0C0F0A09080B, 0x0605040702010003 -.quad 0x0A09080B06050407, 0x020100030E0D0C0F - -.Lk_sr: -.quad 0x0706050403020100, 0x0F0E0D0C0B0A0908 -.quad 0x030E09040F0A0500, 0x0B06010C07020D08 -.quad 0x0F060D040B020900, 0x070E050C030A0108 -.quad 0x0B0E0104070A0D00, 0x0306090C0F020508 - -.Lk_rcon: -.quad 0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81 - -.Lk_s63: -.quad 0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B - -.Lk_opt: -.quad 0xFF9F4929D6B66000, 0xF7974121DEBE6808 -.quad 0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0 - -.Lk_deskew: -.quad 0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A -.quad 0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77 - - - - - -.Lk_dksd: -.quad 0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9 -.quad 0x41C277F4B5368300, 0x5FDC69EAAB289D1E -.Lk_dksb: -.quad 0x9A4FCA1F8550D500, 0x03D653861CC94C99 -.quad 0x115BEDA7B6FC4A00, 0xD993256F7E3482C8 -.Lk_dkse: -.quad 0xD5031CCA1FC9D600, 0x53859A4C994F5086 -.quad 0xA23196054FDC7BE8, 0xCD5EF96A20B31487 -.Lk_dks9: -.quad 0xB6116FC87ED9A700, 0x4AED933482255BFC -.quad 0x4576516227143300, 0x8BB89FACE9DAFDCE - - - - - -.Lk_dipt: -.quad 0x0F505B040B545F00, 0x154A411E114E451A -.quad 0x86E383E660056500, 0x12771772F491F194 - -.Lk_dsb9: -.quad 0x851C03539A86D600, 0xCAD51F504F994CC9 -.quad 0xC03B1789ECD74900, 0x725E2C9EB2FBA565 -.Lk_dsbd: -.quad 0x7D57CCDFE6B1A200, 0xF56E9B13882A4439 -.quad 0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3 -.Lk_dsbb: -.quad 0xD022649296B44200, 0x602646F6B0F2D404 -.quad 0xC19498A6CD596700, 0xF3FF0C3E3255AA6B -.Lk_dsbe: -.quad 0x46F2929626D4D000, 0x2242600464B4F6B0 -.quad 0x0C55A6CDFFAAC100, 0x9467F36B98593E32 -.Lk_dsbo: -.quad 0x1387EA537EF94000, 0xC7AA6DB9D4943E2D -.quad 0x12D7560F93441D00, 0xCA4B8159D8C58E9C -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0 -.align 64 -.size _vpaes_consts,.-_vpaes_consts diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s deleted file mode 100644 index d8b8bd8de5a4b3..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s +++ /dev/null @@ -1,25 +0,0 @@ -.text - -.globl rsaz_avx2_eligible -.type rsaz_avx2_eligible,@function -rsaz_avx2_eligible: - xorl %eax,%eax - .byte 0xf3,0xc3 -.size rsaz_avx2_eligible,.-rsaz_avx2_eligible - -.globl rsaz_1024_sqr_avx2 -.globl rsaz_1024_mul_avx2 -.globl rsaz_1024_norm2red_avx2 -.globl rsaz_1024_red2norm_avx2 -.globl rsaz_1024_scatter5_avx2 -.globl rsaz_1024_gather5_avx2 -.type rsaz_1024_sqr_avx2,@function -rsaz_1024_sqr_avx2: -rsaz_1024_mul_avx2: -rsaz_1024_norm2red_avx2: -rsaz_1024_red2norm_avx2: -rsaz_1024_scatter5_avx2: -rsaz_1024_gather5_avx2: -.byte 0x0f,0x0b - .byte 0xf3,0xc3 -.size rsaz_1024_sqr_avx2,.-rsaz_1024_sqr_avx2 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s deleted file mode 100644 index 4a1211329c67ea..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s +++ /dev/null @@ -1,1219 +0,0 @@ -.text - - - -.globl rsaz_512_sqr -.type rsaz_512_sqr,@function -.align 32 -rsaz_512_sqr: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lsqr_body: - movq %rdx,%rbp - movq (%rsi),%rdx - movq 8(%rsi),%rax - movq %rcx,128(%rsp) - jmp .Loop_sqr - -.align 32 -.Loop_sqr: - movl %r8d,128+8(%rsp) - - movq %rdx,%rbx - mulq %rdx - movq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq %rbx,%rax - movq %rdx,%r15 - adcq $0,%r15 - - addq %r8,%r8 - movq %r9,%rcx - adcq %r9,%r9 - - mulq %rax - movq %rax,(%rsp) - addq %rdx,%r8 - adcq $0,%r9 - - movq %r8,8(%rsp) - shrq $63,%rcx - - - movq 8(%rsi),%r8 - movq 16(%rsi),%rax - mulq %r8 - addq %rax,%r10 - movq 24(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r11 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r12 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r13 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r14 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r15 - movq %r8,%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%r8 - movq %r10,%rdx - adcq $0,%r8 - - addq %rdx,%rdx - leaq (%rcx,%r10,2),%r10 - movq %r11,%rbx - adcq %r11,%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,16(%rsp) - movq %r10,24(%rsp) - shrq $63,%rbx - - - movq 16(%rsi),%r9 - movq 24(%rsi),%rax - mulq %r9 - addq %rax,%r12 - movq 32(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r13 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r13 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r14 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r14 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - movq %r12,%r10 - leaq (%rbx,%r12,2),%r12 - addq %rax,%r15 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r15 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - shrq $63,%r10 - addq %rax,%r8 - movq %r9,%rax - adcq $0,%rdx - addq %rcx,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - movq %r13,%rcx - leaq (%r10,%r13,2),%r13 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,32(%rsp) - movq %r12,40(%rsp) - shrq $63,%rcx - - - movq 24(%rsi),%r10 - movq 32(%rsi),%rax - mulq %r10 - addq %rax,%r14 - movq 40(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - addq %rax,%r15 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - movq %r14,%r12 - leaq (%rcx,%r14,2),%r14 - addq %rax,%r8 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r8 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - shrq $63,%r12 - addq %rax,%r9 - movq %r10,%rax - adcq $0,%rdx - addq %rbx,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - movq %r15,%rbx - leaq (%r12,%r15,2),%r15 - - mulq %rax - addq %rax,%r13 - adcq %rdx,%r14 - adcq $0,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - shrq $63,%rbx - - - movq 32(%rsi),%r11 - movq 40(%rsi),%rax - mulq %r11 - addq %rax,%r8 - movq 48(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - addq %rax,%r9 - movq 56(%rsi),%rax - adcq $0,%rdx - movq %r8,%r12 - leaq (%rbx,%r8,2),%r8 - addq %rcx,%r9 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - shrq $63,%r12 - addq %rax,%r10 - movq %r11,%rax - adcq $0,%rdx - addq %rcx,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - movq %r9,%rcx - leaq (%r12,%r9,2),%r9 - - mulq %rax - addq %rax,%r15 - adcq %rdx,%r8 - adcq $0,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - shrq $63,%rcx - - - movq 40(%rsi),%r12 - movq 48(%rsi),%rax - mulq %r12 - addq %rax,%r10 - movq 56(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r12 - addq %rax,%r11 - movq %r12,%rax - movq %r10,%r15 - leaq (%rcx,%r10,2),%r10 - adcq $0,%rdx - shrq $63,%r15 - addq %rbx,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - movq %r11,%rbx - leaq (%r15,%r11,2),%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - - movq 48(%rsi),%r13 - movq 56(%rsi),%rax - mulq %r13 - addq %rax,%r12 - movq %r13,%rax - movq %rdx,%r13 - adcq $0,%r13 - - xorq %r14,%r14 - shlq $1,%rbx - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,96(%rsp) - movq %r12,104(%rsp) - - - movq 56(%rsi),%rax - mulq %rax - addq %rax,%r13 - adcq $0,%rdx - - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz .Loop_sqr - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lsqr_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_sqr,.-rsaz_512_sqr -.globl rsaz_512_mul -.type rsaz_512_mul,@function -.align 32 -rsaz_512_mul: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lmul_body: -.byte 102,72,15,110,199 -.byte 102,72,15,110,201 - movq %r8,128(%rsp) - movq (%rdx),%rbx - movq %rdx,%rbp - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul,.-rsaz_512_mul -.globl rsaz_512_mul_gather4 -.type rsaz_512_mul_gather4,@function -.align 32 -rsaz_512_mul_gather4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $152,%rsp -.Lmul_gather4_body: - movd %r9d,%xmm8 - movdqa .Linc+16(%rip),%xmm1 - movdqa .Linc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - - movdqa 0(%rdx),%xmm8 - movdqa 16(%rdx),%xmm9 - movdqa 32(%rdx),%xmm10 - movdqa 48(%rdx),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rdx),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rdx),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rdx),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rdx),%xmm15 - leaq 128(%rdx),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - movq (%rsi),%rax - movq 8(%rsi),%rcx - mulq %rbx - movq %rax,(%rsp) - movq %rcx,%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rsp),%rdi - movl $7,%ecx - jmp .Loop_mul_gather - -.align 32 -.Loop_mul_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz .Loop_mul_gather - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_gather4_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_gather4,.-rsaz_512_mul_gather4 -.globl rsaz_512_mul_scatter4 -.type rsaz_512_mul_scatter4,@function -.align 32 -rsaz_512_mul_scatter4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movl %r9d,%r9d - subq $128+24,%rsp -.Lmul_scatter4_body: - leaq (%r8,%r9,8),%r8 -.byte 102,72,15,110,199 -.byte 102,72,15,110,202 -.byte 102,73,15,110,208 - movq %rcx,128(%rsp) - - movq %rdi,%rbp - movq (%rdi),%rbx - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 -.byte 102,72,15,126,214 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,0(%rsi) - movq %r9,128(%rsi) - movq %r10,256(%rsi) - movq %r11,384(%rsi) - movq %r12,512(%rsi) - movq %r13,640(%rsi) - movq %r14,768(%rsi) - movq %r15,896(%rsi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_scatter4_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_scatter4,.-rsaz_512_mul_scatter4 -.globl rsaz_512_mul_by_one -.type rsaz_512_mul_by_one,@function -.align 32 -rsaz_512_mul_by_one: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -.Lmul_by_one_body: - movq %rdx,%rbp - movq %rcx,128(%rsp) - - movq (%rsi),%r8 - pxor %xmm0,%xmm0 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq 32(%rsi),%r12 - movq 40(%rsi),%r13 - movq 48(%rsi),%r14 - movq 56(%rsi),%r15 - - movdqa %xmm0,(%rsp) - movdqa %xmm0,16(%rsp) - movdqa %xmm0,32(%rsp) - movdqa %xmm0,48(%rsp) - movdqa %xmm0,64(%rsp) - movdqa %xmm0,80(%rsp) - movdqa %xmm0,96(%rsp) - call __rsaz_512_reduce - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lmul_by_one_epilogue: - .byte 0xf3,0xc3 -.size rsaz_512_mul_by_one,.-rsaz_512_mul_by_one -.type __rsaz_512_reduce,@function -.align 32 -__rsaz_512_reduce: - movq %r8,%rbx - imulq 128+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp .Lreduction_loop - -.align 32 -.Lreduction_loop: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq 128+8(%rsp),%rsi - - - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jne .Lreduction_loop - - .byte 0xf3,0xc3 -.size __rsaz_512_reduce,.-__rsaz_512_reduce -.type __rsaz_512_subtract,@function -.align 32 -__rsaz_512_subtract: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 0(%rbp),%r8 - movq 8(%rbp),%r9 - negq %r8 - notq %r9 - andq %rcx,%r8 - movq 16(%rbp),%r10 - andq %rcx,%r9 - notq %r10 - movq 24(%rbp),%r11 - andq %rcx,%r10 - notq %r11 - movq 32(%rbp),%r12 - andq %rcx,%r11 - notq %r12 - movq 40(%rbp),%r13 - andq %rcx,%r12 - notq %r13 - movq 48(%rbp),%r14 - andq %rcx,%r13 - notq %r14 - movq 56(%rbp),%r15 - andq %rcx,%r14 - notq %r15 - andq %rcx,%r15 - - addq (%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 -.size __rsaz_512_subtract,.-__rsaz_512_subtract -.type __rsaz_512_mul,@function -.align 32 -__rsaz_512_mul: - leaq 8(%rsp),%rdi - - movq (%rsi),%rax - mulq %rbx - movq %rax,(%rdi) - movq 8(%rsi),%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rbp),%rbp - leaq 8(%rdi),%rdi - - movl $7,%ecx - jmp .Loop_mul - -.align 32 -.Loop_mul: - movq (%rbp),%rbx - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - leaq 8(%rbp),%rbp - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz .Loop_mul - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 -.size __rsaz_512_mul,.-__rsaz_512_mul -.globl rsaz_512_scatter4 -.type rsaz_512_scatter4,@function -.align 16 -rsaz_512_scatter4: - leaq (%rdi,%rdx,8),%rdi - movl $8,%r9d - jmp .Loop_scatter -.align 16 -.Loop_scatter: - movq (%rsi),%rax - leaq 8(%rsi),%rsi - movq %rax,(%rdi) - leaq 128(%rdi),%rdi - decl %r9d - jnz .Loop_scatter - .byte 0xf3,0xc3 -.size rsaz_512_scatter4,.-rsaz_512_scatter4 - -.globl rsaz_512_gather4 -.type rsaz_512_gather4,@function -.align 16 -rsaz_512_gather4: - movd %edx,%xmm8 - movdqa .Linc+16(%rip),%xmm1 - movdqa .Linc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - movl $8,%r9d - jmp .Loop_gather -.align 16 -.Loop_gather: - movdqa 0(%rsi),%xmm8 - movdqa 16(%rsi),%xmm9 - movdqa 32(%rsi),%xmm10 - movdqa 48(%rsi),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rsi),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rsi),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rsi),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rsi),%xmm15 - leaq 128(%rsi),%rsi - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movq %xmm8,(%rdi) - leaq 8(%rdi),%rdi - decl %r9d - jnz .Loop_gather - .byte 0xf3,0xc3 -.LSEH_end_rsaz_512_gather4: -.size rsaz_512_gather4,.-rsaz_512_gather4 - -.align 64 -.Linc: -.long 0,0, 1,1 -.long 2,2, 2,2 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s deleted file mode 100644 index f4e5337565bbc7..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s +++ /dev/null @@ -1,291 +0,0 @@ -.text - -.type _mul_1x1,@function -.align 16 -_mul_1x1: - subq $128+8,%rsp - movq $-1,%r9 - leaq (%rax,%rax,1),%rsi - shrq $3,%r9 - leaq (,%rax,4),%rdi - andq %rax,%r9 - leaq (,%rax,8),%r12 - sarq $63,%rax - leaq (%r9,%r9,1),%r10 - sarq $63,%rsi - leaq (,%r9,4),%r11 - andq %rbp,%rax - sarq $63,%rdi - movq %rax,%rdx - shlq $63,%rax - andq %rbp,%rsi - shrq $1,%rdx - movq %rsi,%rcx - shlq $62,%rsi - andq %rbp,%rdi - shrq $2,%rcx - xorq %rsi,%rax - movq %rdi,%rbx - shlq $61,%rdi - xorq %rcx,%rdx - shrq $3,%rbx - xorq %rdi,%rax - xorq %rbx,%rdx - - movq %r9,%r13 - movq $0,0(%rsp) - xorq %r10,%r13 - movq %r9,8(%rsp) - movq %r11,%r14 - movq %r10,16(%rsp) - xorq %r12,%r14 - movq %r13,24(%rsp) - - xorq %r11,%r9 - movq %r11,32(%rsp) - xorq %r11,%r10 - movq %r9,40(%rsp) - xorq %r11,%r13 - movq %r10,48(%rsp) - xorq %r14,%r9 - movq %r13,56(%rsp) - xorq %r14,%r10 - - movq %r12,64(%rsp) - xorq %r14,%r13 - movq %r9,72(%rsp) - xorq %r11,%r9 - movq %r10,80(%rsp) - xorq %r11,%r10 - movq %r13,88(%rsp) - - xorq %r11,%r13 - movq %r14,96(%rsp) - movq %r8,%rsi - movq %r9,104(%rsp) - andq %rbp,%rsi - movq %r10,112(%rsp) - shrq $4,%rbp - movq %r13,120(%rsp) - movq %r8,%rdi - andq %rbp,%rdi - shrq $4,%rbp - - movq (%rsp,%rsi,8),%xmm0 - movq %r8,%rsi - andq %rbp,%rsi - shrq $4,%rbp - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $4,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $60,%rbx - xorq %rcx,%rax - pslldq $1,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $12,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $52,%rbx - xorq %rcx,%rax - pslldq $2,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $20,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $44,%rbx - xorq %rcx,%rax - pslldq $3,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $28,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $36,%rbx - xorq %rcx,%rax - pslldq $4,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $36,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $28,%rbx - xorq %rcx,%rax - pslldq $5,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $44,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $20,%rbx - xorq %rcx,%rax - pslldq $6,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $52,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $12,%rbx - xorq %rcx,%rax - pslldq $7,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %rcx,%rbx - shlq $60,%rcx -.byte 102,72,15,126,198 - shrq $4,%rbx - xorq %rcx,%rax - psrldq $8,%xmm0 - xorq %rbx,%rdx -.byte 102,72,15,126,199 - xorq %rsi,%rax - xorq %rdi,%rdx - - addq $128+8,%rsp - .byte 0xf3,0xc3 -.Lend_mul_1x1: -.size _mul_1x1,.-_mul_1x1 - -.globl bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,@function -.align 16 -bn_GF2m_mul_2x2: - movq OPENSSL_ia32cap_P(%rip),%rax - btq $33,%rax - jnc .Lvanilla_mul_2x2 - -.byte 102,72,15,110,198 -.byte 102,72,15,110,201 -.byte 102,72,15,110,210 -.byte 102,73,15,110,216 - movdqa %xmm0,%xmm4 - movdqa %xmm1,%xmm5 -.byte 102,15,58,68,193,0 - pxor %xmm2,%xmm4 - pxor %xmm3,%xmm5 -.byte 102,15,58,68,211,0 -.byte 102,15,58,68,229,0 - xorps %xmm0,%xmm4 - xorps %xmm2,%xmm4 - movdqa %xmm4,%xmm5 - pslldq $8,%xmm4 - psrldq $8,%xmm5 - pxor %xmm4,%xmm2 - pxor %xmm5,%xmm0 - movdqu %xmm2,0(%rdi) - movdqu %xmm0,16(%rdi) - .byte 0xf3,0xc3 - -.align 16 -.Lvanilla_mul_2x2: - leaq -136(%rsp),%rsp - movq %r14,80(%rsp) - movq %r13,88(%rsp) - movq %r12,96(%rsp) - movq %rbp,104(%rsp) - movq %rbx,112(%rsp) -.Lbody_mul_2x2: - movq %rdi,32(%rsp) - movq %rsi,40(%rsp) - movq %rdx,48(%rsp) - movq %rcx,56(%rsp) - movq %r8,64(%rsp) - - movq $0xf,%r8 - movq %rsi,%rax - movq %rcx,%rbp - call _mul_1x1 - movq %rax,16(%rsp) - movq %rdx,24(%rsp) - - movq 48(%rsp),%rax - movq 64(%rsp),%rbp - call _mul_1x1 - movq %rax,0(%rsp) - movq %rdx,8(%rsp) - - movq 40(%rsp),%rax - movq 56(%rsp),%rbp - xorq 48(%rsp),%rax - xorq 64(%rsp),%rbp - call _mul_1x1 - movq 0(%rsp),%rbx - movq 8(%rsp),%rcx - movq 16(%rsp),%rdi - movq 24(%rsp),%rsi - movq 32(%rsp),%rbp - - xorq %rdx,%rax - xorq %rcx,%rdx - xorq %rbx,%rax - movq %rbx,0(%rbp) - xorq %rdi,%rdx - movq %rsi,24(%rbp) - xorq %rsi,%rax - xorq %rsi,%rdx - xorq %rdx,%rax - movq %rdx,16(%rbp) - movq %rax,8(%rbp) - - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbp - movq 112(%rsp),%rbx - leaq 136(%rsp),%rsp - .byte 0xf3,0xc3 -.Lend_mul_2x2: -.size bn_GF2m_mul_2x2,.-bn_GF2m_mul_2x2 -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 16 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont.s deleted file mode 100644 index 865c2ef5cb5c97..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont.s +++ /dev/null @@ -1,804 +0,0 @@ -.text - - - -.globl bn_mul_mont -.type bn_mul_mont,@function -.align 16 -bn_mul_mont: - movl %r9d,%r9d - movq %rsp,%rax - testl $3,%r9d - jnz .Lmul_enter - cmpl $8,%r9d - jb .Lmul_enter - cmpq %rsi,%rdx - jne .Lmul4x_enter - testl $7,%r9d - jz .Lsqr8x_enter - jmp .Lmul4x_enter - -.align 16 -.Lmul_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -16(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk - jmp .Lmul_page_walk_done - -.align 16 -.Lmul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk -.Lmul_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -.Lmul_body: - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .L1st_enter - -.align 16 -.L1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.L1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne .L1st - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp .Louter -.align 16 -.Louter: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .Linner_enter - -.align 16 -.Linner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.Linner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne .Linner - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb .Louter - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp .Lsub -.align 16 -.Lsub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz .Lsub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.align 16 -.Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz .Lcopy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size bn_mul_mont,.-bn_mul_mont -.type bn_mul4x_mont,@function -.align 16 -bn_mul4x_mont: - movl %r9d,%r9d - movq %rsp,%rax -.Lmul4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -32(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul4x_page_walk - jmp .Lmul4x_page_walk_done - -.Lmul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul4x_page_walk -.Lmul4x_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -.Lmul4x_body: - movq %rdi,16(%rsp,%r9,8) - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp .L1st4x -.align 16 -.L1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb .L1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - leaq 1(%r14),%r14 -.align 4 -.Louter4x: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq (%rsp),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%rsp),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp .Linner4x -.align 16 -.Linner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq 8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb .Linner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 1(%r14),%r14 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%rsp,%r9,8),%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - cmpq %r9,%r14 - jb .Louter4x - movq 16(%rsp,%r9,8),%rdi - movq 0(%rsp),%rax - pxor %xmm0,%xmm0 - movq 8(%rsp),%rdx - shrq $2,%r9 - leaq (%rsp),%rsi - xorq %r14,%r14 - - subq 0(%rcx),%rax - movq 16(%rsi),%rbx - movq 24(%rsi),%rbp - sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 -.Lsub4x: - movq %rax,0(%rdi,%r14,8) - movq %rdx,8(%rdi,%r14,8) - sbbq 16(%rcx,%r14,8),%rbx - movq 32(%rsi,%r14,8),%rax - movq 40(%rsi,%r14,8),%rdx - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - movq %rbp,24(%rdi,%r14,8) - sbbq 32(%rcx,%r14,8),%rax - movq 48(%rsi,%r14,8),%rbx - movq 56(%rsi,%r14,8),%rbp - sbbq 40(%rcx,%r14,8),%rdx - leaq 4(%r14),%r14 - decq %r15 - jnz .Lsub4x - - movq %rax,0(%rdi,%r14,8) - movq 32(%rsi,%r14,8),%rax - sbbq 16(%rcx,%r14,8),%rbx - movq %rdx,8(%rdi,%r14,8) - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - - sbbq $0,%rax - movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) - jmp .Lcopy4x -.align 16 -.Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 - decq %r15 - jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mul4x_mont,.-bn_mul4x_mont - - -.type bn_sqr8x_mont,@function -.align 32 -bn_sqr8x_mont: - movq %rsp,%rax -.Lsqr8x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lsqr8x_prologue: - - movl %r9d,%r10d - shll $3,%r9d - shlq $3+2,%r10 - negq %r9 - - - - - - - leaq -64(%rsp,%r9,2),%r11 - movq %rsp,%rbp - movq (%r8),%r8 - subq %rsi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lsqr8x_sp_alt - subq %r11,%rbp - leaq -64(%rbp,%r9,2),%rbp - jmp .Lsqr8x_sp_done - -.align 32 -.Lsqr8x_sp_alt: - leaq 4096-64(,%r9,2),%r10 - leaq -64(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lsqr8x_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lsqr8x_page_walk - jmp .Lsqr8x_page_walk_done - -.align 16 -.Lsqr8x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lsqr8x_page_walk -.Lsqr8x_page_walk_done: - - movq %r9,%r10 - negq %r9 - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lsqr8x_body: - -.byte 102,72,15,110,209 - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,73,15,110,218 - call bn_sqr8x_internal - - - - - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx - movq %r9,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp .Lsqr8x_sub - -.align 32 -.Lsqr8x_sub: - movq 0(%rbx),%r12 - movq 8(%rbx),%r13 - movq 16(%rbx),%r14 - movq 24(%rbx),%r15 - leaq 32(%rbx),%rbx - sbbq 0(%rbp),%r12 - sbbq 8(%rbp),%r13 - sbbq 16(%rbp),%r14 - sbbq 24(%rbp),%r15 - leaq 32(%rbp),%rbp - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - incq %rcx - jnz .Lsqr8x_sub - - sbbq $0,%rax - leaq (%rbx,%r9,1),%rbx - leaq (%rdi,%r9,1),%rdi - -.byte 102,72,15,110,200 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp .Lsqr8x_cond_copy - -.align 32 -.Lsqr8x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - movdqa %xmm0,-32(%rbx,%rdx,1) - movdqa %xmm0,-16(%rbx,%rdx,1) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - addq $32,%r9 - jnz .Lsqr8x_cond_copy - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lsqr8x_epilogue: - .byte 0xf3,0xc3 -.size bn_sqr8x_mont,.-bn_sqr8x_mont -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 16 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s b/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s deleted file mode 100644 index 175f5525779d50..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s +++ /dev/null @@ -1,2328 +0,0 @@ -.text - - - -.globl bn_mul_mont_gather5 -.type bn_mul_mont_gather5,@function -.align 64 -bn_mul_mont_gather5: - movl %r9d,%r9d - movq %rsp,%rax - testl $7,%r9d - jnz .Lmul_enter - jmp .Lmul4x_enter - -.align 16 -.Lmul_enter: - movd 8(%rsp),%xmm5 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -280(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk - jmp .Lmul_page_walk_done - -.Lmul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja .Lmul_page_walk -.Lmul_page_walk_done: - - leaq .Linc(%rip),%r10 - movq %rax,8(%rsp,%r9,8) -.Lmul_body: - - leaq 128(%rdx),%r12 - movdqa 0(%r10),%xmm0 - movdqa 16(%r10),%xmm1 - leaq 24-112(%rsp,%r9,8),%r10 - andq $-16,%r10 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r8),%r8 - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .L1st_enter - -.align 16 -.L1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.L1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne .L1st - - - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp .Louter -.align 16 -.Louter: - leaq 24+128(%rsp,%r9,8),%rdx - andq $-16,%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 - - movq (%rsi),%rax -.byte 102,72,15,126,195 - - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp .Linner_enter - -.align 16 -.Linner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -.Linner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne .Linner - - addq %rax,%r13 - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r9,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb .Louter - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp .Lsub -.align 16 -.Lsub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz .Lsub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.align 16 -.Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz .Lcopy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul_epilogue: - .byte 0xf3,0xc3 -.size bn_mul_mont_gather5,.-bn_mul_mont_gather5 -.type bn_mul4x_mont_gather5,@function -.align 32 -bn_mul4x_mont_gather5: -.byte 0x67 - movq %rsp,%rax -.Lmul4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lmul4x_prologue: - -.byte 0x67 - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lmul4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lmul4xsp_done - -.align 32 -.Lmul4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lmul4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmul4x_page_walk - jmp .Lmul4x_page_walk_done - -.Lmul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lmul4x_page_walk -.Lmul4x_page_walk_done: - - negq %r9 - - movq %rax,40(%rsp) -.Lmul4x_body: - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lmul4x_epilogue: - .byte 0xf3,0xc3 -.size bn_mul4x_mont_gather5,.-bn_mul4x_mont_gather5 - -.type mul4x_internal,@function -.align 32 -mul4x_internal: - shlq $5,%r9 - movd 8(%rax),%xmm5 - leaq .Linc(%rip),%rax - leaq 128(%rdx,%r9,1),%r13 - shrq $5,%r9 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r9,1),%r10 - leaq 128(%rdx),%r12 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67,0x67 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq %r13,16+8(%rsp) - movq %rdi,56+8(%rsp) - - movq (%r8),%r8 - movq (%rsi),%rax - leaq (%rsi,%r9,1),%rsi - negq %r9 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - leaq 64+8(%rsp),%r14 - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - jmp .L1st4x - -.align 32 -.L1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz .L1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - jmp .Louter4x - -.align 32 -.Louter4x: - leaq 16+128(%r14),%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r14,%r9,1),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - movq %rdi,(%r14) - - leaq (%r14,%r9,1),%r14 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdx,%r13 - jmp .Linner4x - -.align 32 -.Linner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - addq (%r14),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz .Linner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq %rbp,%rax - movq -8(%rcx),%rbp - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - movq %rdi,-16(%r14) - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%r14),%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - cmpq 16+8(%rsp),%r12 - jb .Louter4x - xorq %rax,%rax - subq %r13,%rbp - adcq %r15,%r15 - orq %r15,%rdi - subq %rdi,%rax - leaq (%r14,%r9,1),%rbx - movq (%rcx),%r12 - leaq (%rcx),%rbp - movq %r9,%rcx - sarq $3+2,%rcx - movq 56+8(%rsp),%rdi - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqr4x_sub_entry -.size mul4x_internal,.-mul4x_internal -.globl bn_power5 -.type bn_power5,@function -.align 32 -bn_power5: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lpower5_prologue: - - shll $3,%r9d - leal (%r9,%r9,2),%r10d - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lpwr_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lpwr_sp_done - -.align 32 -.Lpwr_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lpwr_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwr_page_walk - jmp .Lpwr_page_walk_done - -.Lpwr_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lpwr_page_walk -.Lpwr_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lpower5_body: -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq %rsi,%rdi - movq 40(%rsp),%rax - leaq 32(%rsp),%r8 - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lpower5_epilogue: - .byte 0xf3,0xc3 -.size bn_power5,.-bn_power5 - -.globl bn_sqr8x_internal -.hidden bn_sqr8x_internal -.type bn_sqr8x_internal,@function -.align 32 -bn_sqr8x_internal: -__bn_sqr8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 32(%r10),%rbp - leaq (%rsi,%r9,1),%rsi - - movq %r9,%rcx - - - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - movq %r10,-24(%rdi,%rbp,1) - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - movq %r11,-16(%rdi,%rbp,1) - movq %rdx,%r10 - - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - movq %rax,%r12 - movq %rbx,%rax - movq %rdx,%r13 - - leaq (%rbp),%rcx - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - jmp .Lsqr4x_1st - -.align 32 -.Lsqr4x_1st: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq 16(%rsi,%rcx,1),%rbx - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %r10,8(%rdi,%rcx,1) - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 24(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,16(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - leaq 32(%rcx),%rcx - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne .Lsqr4x_1st - - mulq %r15 - addq %rax,%r13 - leaq 16(%rbp),%rbp - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - jmp .Lsqr4x_outer - -.align 32 -.Lsqr4x_outer: - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq -24(%rdi,%rbp,1),%r10 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - movq %r10,-24(%rdi,%rbp,1) - movq %rdx,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - addq -16(%rdi,%rbp,1),%r11 - movq %rdx,%r10 - adcq $0,%r10 - movq %r11,-16(%rdi,%rbp,1) - - xorq %r12,%r12 - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - adcq $0,%rdx - addq -8(%rdi,%rbp,1),%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rbp,1) - - leaq (%rbp),%rcx - jmp .Lsqr4x_inner - -.align 32 -.Lsqr4x_inner: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - addq (%rdi,%rcx,1),%r13 - adcq $0,%r12 - -.byte 0x67 - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %r11,(%rdi,%rcx,1) - movq %rbx,%rax - movq %rdx,%r13 - adcq $0,%r13 - addq 8(%rdi,%rcx,1),%r12 - leaq 16(%rcx),%rcx - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne .Lsqr4x_inner - -.byte 0x67 - mulq %r15 - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - addq $16,%rbp - jnz .Lsqr4x_outer - - - movq -32(%rsi),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi),%rbx - movq %rax,%r15 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq %r10,-24(%rdi) - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - movq -8(%rsi),%rbx - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,-16(%rdi) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi) - - mulq %r15 - addq %rax,%r13 - movq -16(%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - mulq %rbx - addq $16,%rbp - xorq %r14,%r14 - subq %r9,%rbp - xorq %r15,%r15 - - addq %r12,%rax - adcq $0,%rdx - movq %rax,8(%rdi) - movq %rdx,16(%rdi) - movq %r15,24(%rdi) - - movq -16(%rsi,%rbp,1),%rax - leaq 48+8(%rsp),%rdi - xorq %r10,%r10 - movq 8(%rdi),%r11 - - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - leaq 16(%rbp),%rbp - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - jmp .Lsqr4x_shift_n_add - -.align 32 -.Lsqr4x_shift_n_add: - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 0(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 8(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,-16(%rdi) - adcq %rdx,%r8 - - leaq (%r14,%r10,2),%r12 - movq %r8,-8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq 8(%rsi,%rbp,1),%rax - movq %r12,0(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 16(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - addq $32,%rbp - jnz .Lsqr4x_shift_n_add - - leaq (%r14,%r10,2),%r12 -.byte 0x67 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - mulq %rax - negq %r15 - adcq %rax,%rbx - adcq %rdx,%r8 - movq %rbx,-16(%rdi) - movq %r8,-8(%rdi) -.byte 102,72,15,126,213 -__bn_sqr8x_reduction: - xorq %rax,%rax - leaq (%r9,%rbp,1),%rcx - leaq 48+8(%rsp,%r9,2),%rdx - movq %rcx,0+8(%rsp) - leaq 48+8(%rsp,%r9,1),%rdi - movq %rdx,8+8(%rsp) - negq %r9 - jmp .L8x_reduction_loop - -.align 32 -.L8x_reduction_loop: - leaq (%rdi,%r9,1),%rdi -.byte 0x66 - movq 0(%rdi),%rbx - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,(%rdx) - leaq 64(%rdi),%rdi - -.byte 0x67 - movq %rbx,%r8 - imulq 32+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp .L8x_reduce - -.align 32 -.L8x_reduce: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rbx,48-8+8(%rsp,%rcx,8) - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq 32+8(%rsp),%rsi - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz .L8x_reduce - - leaq 64(%rbp),%rbp - xorq %rax,%rax - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae .L8x_no_tail - -.byte 0x66 - addq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movq 48+56+8(%rsp),%rbx - movl $8,%ecx - movq 0(%rbp),%rax - jmp .L8x_tail - -.align 32 -.L8x_tail: - mulq %rbx - addq %rax,%r8 - movq 8(%rbp),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - leaq 8(%rdi),%rdi - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq 48-16+8(%rsp,%rcx,8),%rbx - addq %rax,%r15 - adcq $0,%rdx - addq %r15,%r14 - movq 0(%rbp),%rax - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz .L8x_tail - - leaq 64(%rbp),%rbp - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae .L8x_tail_done - - movq 48+56+8(%rsp),%rbx - negq %rsi - movq 0(%rbp),%rax - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movl $8,%ecx - jmp .L8x_tail - -.align 32 -.L8x_tail_done: - xorq %rax,%rax - addq (%rdx),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - negq %rsi -.L8x_no_tail: - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - movq -8(%rbp),%rcx - xorq %rsi,%rsi - -.byte 102,72,15,126,213 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) -.byte 102,73,15,126,217 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rdi),%rdi - - cmpq %rdx,%rdi - jb .L8x_reduction_loop - .byte 0xf3,0xc3 -.size bn_sqr8x_internal,.-bn_sqr8x_internal -.type __bn_post4x_internal,@function -.align 32 -__bn_post4x_internal: - movq 0(%rbp),%r12 - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx -.byte 102,72,15,126,207 - negq %rax -.byte 102,72,15,126,206 - sarq $3+2,%rcx - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp .Lsqr4x_sub_entry - -.align 16 -.Lsqr4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -.Lsqr4x_sub_entry: - leaq 32(%rbp),%rbp - notq %r12 - notq %r13 - notq %r14 - notq %r15 - andq %rax,%r12 - andq %rax,%r13 - andq %rax,%r14 - andq %rax,%r15 - - negq %r10 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - adcq 16(%rbx),%r14 - adcq 24(%rbx),%r15 - movq %r12,0(%rdi) - leaq 32(%rbx),%rbx - movq %r13,8(%rdi) - sbbq %r10,%r10 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - - incq %rcx - jnz .Lsqr4x_sub - - movq %r9,%r10 - negq %r9 - .byte 0xf3,0xc3 -.size __bn_post4x_internal,.-__bn_post4x_internal -.globl bn_from_montgomery -.type bn_from_montgomery,@function -.align 32 -bn_from_montgomery: - testl $7,%r9d - jz bn_from_mont8x - xorl %eax,%eax - .byte 0xf3,0xc3 -.size bn_from_montgomery,.-bn_from_montgomery - -.type bn_from_mont8x,@function -.align 32 -bn_from_mont8x: -.byte 0x67 - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lfrom_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb .Lfrom_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp .Lfrom_sp_done - -.align 32 -.Lfrom_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -.Lfrom_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lfrom_page_walk - jmp .Lfrom_page_walk_done - -.Lfrom_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja .Lfrom_page_walk -.Lfrom_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -.Lfrom_body: - movq %r9,%r11 - leaq 48(%rsp),%rax - pxor %xmm0,%xmm0 - jmp .Lmul_by_1 - -.align 32 -.Lmul_by_1: - movdqu (%rsi),%xmm1 - movdqu 16(%rsi),%xmm2 - movdqu 32(%rsi),%xmm3 - movdqa %xmm0,(%rax,%r9,1) - movdqu 48(%rsi),%xmm4 - movdqa %xmm0,16(%rax,%r9,1) -.byte 0x48,0x8d,0xb6,0x40,0x00,0x00,0x00 - movdqa %xmm1,(%rax) - movdqa %xmm0,32(%rax,%r9,1) - movdqa %xmm2,16(%rax) - movdqa %xmm0,48(%rax,%r9,1) - movdqa %xmm3,32(%rax) - movdqa %xmm4,48(%rax) - leaq 64(%rax),%rax - subq $64,%r11 - jnz .Lmul_by_1 - -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 0x67 - movq %rcx,%rbp -.byte 102,73,15,110,218 - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp .Lfrom_mont_zero - -.align 32 -.Lfrom_mont_zero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - movdqa %xmm0,32(%rax) - movdqa %xmm0,48(%rax) - leaq 64(%rax),%rax - subq $32,%r9 - jnz .Lfrom_mont_zero - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lfrom_epilogue: - .byte 0xf3,0xc3 -.size bn_from_mont8x,.-bn_from_mont8x -.globl bn_get_bits5 -.type bn_get_bits5,@function -.align 16 -bn_get_bits5: - leaq 0(%rdi),%r10 - leaq 1(%rdi),%r11 - movl %esi,%ecx - shrl $4,%esi - andl $15,%ecx - leal -8(%rcx),%eax - cmpl $11,%ecx - cmovaq %r11,%r10 - cmoval %eax,%ecx - movzwl (%r10,%rsi,2),%eax - shrl %cl,%eax - andl $31,%eax - .byte 0xf3,0xc3 -.size bn_get_bits5,.-bn_get_bits5 - -.globl bn_scatter5 -.type bn_scatter5,@function -.align 16 -bn_scatter5: - cmpl $0,%esi - jz .Lscatter_epilogue - leaq (%rdx,%rcx,8),%rdx -.Lscatter: - movq (%rdi),%rax - leaq 8(%rdi),%rdi - movq %rax,(%rdx) - leaq 256(%rdx),%rdx - subl $1,%esi - jnz .Lscatter -.Lscatter_epilogue: - .byte 0xf3,0xc3 -.size bn_scatter5,.-bn_scatter5 - -.globl bn_gather5 -.type bn_gather5,@function -.align 32 -bn_gather5: -.LSEH_begin_bn_gather5: - -.byte 0x4c,0x8d,0x14,0x24 -.byte 0x48,0x81,0xec,0x08,0x01,0x00,0x00 - leaq .Linc(%rip),%rax - andq $-16,%rsp - - movd %ecx,%xmm5 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 128(%rdx),%r11 - leaq 128(%rsp),%rax - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-128(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-112(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-96(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-80(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-48(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-16(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,0(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,16(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,48(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,80(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,96(%rax) - movdqa %xmm4,%xmm2 - movdqa %xmm3,112(%rax) - jmp .Lgather - -.align 32 -.Lgather: - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r11),%xmm0 - movdqa -112(%r11),%xmm1 - movdqa -96(%r11),%xmm2 - pand -128(%rax),%xmm0 - movdqa -80(%r11),%xmm3 - pand -112(%rax),%xmm1 - por %xmm0,%xmm4 - pand -96(%rax),%xmm2 - por %xmm1,%xmm5 - pand -80(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r11),%xmm0 - movdqa -48(%r11),%xmm1 - movdqa -32(%r11),%xmm2 - pand -64(%rax),%xmm0 - movdqa -16(%r11),%xmm3 - pand -48(%rax),%xmm1 - por %xmm0,%xmm4 - pand -32(%rax),%xmm2 - por %xmm1,%xmm5 - pand -16(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - pand 0(%rax),%xmm0 - movdqa 48(%r11),%xmm3 - pand 16(%rax),%xmm1 - por %xmm0,%xmm4 - pand 32(%rax),%xmm2 - por %xmm1,%xmm5 - pand 48(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r11),%xmm0 - movdqa 80(%r11),%xmm1 - movdqa 96(%r11),%xmm2 - pand 64(%rax),%xmm0 - movdqa 112(%r11),%xmm3 - pand 80(%rax),%xmm1 - por %xmm0,%xmm4 - pand 96(%rax),%xmm2 - por %xmm1,%xmm5 - pand 112(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - leaq 256(%r11),%r11 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - movq %xmm0,(%rdi) - leaq 8(%rdi),%rdi - subl $1,%esi - jnz .Lgather - - leaq (%r10),%rsp - .byte 0xf3,0xc3 -.LSEH_end_bn_gather5: -.size bn_gather5,.-bn_gather5 -.align 64 -.Linc: -.long 0,0, 1,1 -.long 2,2, 2,2 -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/camellia/cmll-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/camellia/cmll-x86_64.s deleted file mode 100644 index 1117381f316d9e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/camellia/cmll-x86_64.s +++ /dev/null @@ -1,1838 +0,0 @@ -.text - - -.globl Camellia_EncryptBlock -.type Camellia_EncryptBlock,@function -.align 16 -Camellia_EncryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp .Lenc_rounds -.size Camellia_EncryptBlock,.-Camellia_EncryptBlock - -.globl Camellia_EncryptBlock_Rounds -.type Camellia_EncryptBlock_Rounds,@function -.align 16 -.Lenc_rounds: -Camellia_EncryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Lenc_prologue: - - - movq %rcx,%r13 - movq %rdx,%r14 - - shll $6,%edi - leaq .LCamellia_SBOX(%rip),%rbp - leaq (%r14,%rdi,1),%r15 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Lenc_epilogue: - .byte 0xf3,0xc3 -.size Camellia_EncryptBlock_Rounds,.-Camellia_EncryptBlock_Rounds - -.type _x86_64_Camellia_encrypt,@function -.align 16 -_x86_64_Camellia_encrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.align 16 -.Leloop: - movl 16(%r14),%ebx - movl 20(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 56(%r14),%ebx - movl 60(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 64(%r14),%ebx - movl 68(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq 64(%r14),%r14 - cmpq %r15,%r14 - movl 8(%r14),%edx - movl 12(%r14),%ecx - je .Ledone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - jmp .Leloop - -.align 16 -.Ledone: - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r8d,%ecx - xorl %r9d,%edx - - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r10d - movl %edx,%r11d - -.byte 0xf3,0xc3 -.size _x86_64_Camellia_encrypt,.-_x86_64_Camellia_encrypt - - -.globl Camellia_DecryptBlock -.type Camellia_DecryptBlock,@function -.align 16 -Camellia_DecryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp .Ldec_rounds -.size Camellia_DecryptBlock,.-Camellia_DecryptBlock - -.globl Camellia_DecryptBlock_Rounds -.type Camellia_DecryptBlock_Rounds,@function -.align 16 -.Ldec_rounds: -Camellia_DecryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Ldec_prologue: - - - movq %rcx,%r13 - movq %rdx,%r15 - - shll $6,%edi - leaq .LCamellia_SBOX(%rip),%rbp - leaq (%r15,%rdi,1),%r14 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_decrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Ldec_epilogue: - .byte 0xf3,0xc3 -.size Camellia_DecryptBlock_Rounds,.-Camellia_DecryptBlock_Rounds - -.type _x86_64_Camellia_decrypt,@function -.align 16 -_x86_64_Camellia_decrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.align 16 -.Ldloop: - movl -8(%r14),%ebx - movl -4(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -16(%r14),%ebx - movl -12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -24(%r14),%ebx - movl -20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -32(%r14),%ebx - movl -28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -40(%r14),%ebx - movl -36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -48(%r14),%ebx - movl -44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -56(%r14),%ebx - movl -52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq -64(%r14),%r14 - cmpq %r15,%r14 - movl 0(%r14),%edx - movl 4(%r14),%ecx - je .Lddone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - - jmp .Ldloop - -.align 16 -.Lddone: - xorl %r10d,%ecx - xorl %r11d,%edx - xorl %r8d,%eax - xorl %r9d,%ebx - - movl %ecx,%r8d - movl %edx,%r9d - movl %eax,%r10d - movl %ebx,%r11d - -.byte 0xf3,0xc3 -.size _x86_64_Camellia_decrypt,.-_x86_64_Camellia_decrypt -.globl Camellia_Ekeygen -.type Camellia_Ekeygen,@function -.align 16 -Camellia_Ekeygen: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -.Lkey_prologue: - - movl %edi,%r15d - movq %rdx,%r13 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - movl 12(%rsi),%r11d - - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,0(%r13) - movl %r8d,4(%r13) - movl %r11d,8(%r13) - movl %r10d,12(%r13) - cmpq $128,%r15 - je .L1st128 - - movl 16(%rsi),%r8d - movl 20(%rsi),%r9d - cmpq $192,%r15 - je .L1st192 - movl 24(%rsi),%r10d - movl 28(%rsi),%r11d - jmp .L1st256 -.L1st192: - movl %r8d,%r10d - movl %r9d,%r11d - notl %r10d - notl %r11d -.L1st256: - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,32(%r13) - movl %r8d,36(%r13) - movl %r11d,40(%r13) - movl %r10d,44(%r13) - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - -.L1st128: - leaq .LCamellia_SIGMA(%rip),%r14 - leaq .LCamellia_SBOX(%rip),%rbp - - movl 0(%r14),%ebx - movl 4(%r14),%eax - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 8(%r14),%ebx - movl 12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 16(%r14),%ebx - movl 20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - cmpq $128,%r15 - jne .L2nd256 - - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq -128(%r13),%rax - movq -120(%r13),%rbx - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,-96(%r13) - movq %rbx,-88(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-80(%r13) - movq %r10,-72(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-64(%r13) - movq %r10,-56(%r13) - movq %rax,%r11 - shlq $30,%rax - movq %rbx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rax - shlq $30,%rbx - orq %r11,%rbx - movq %rax,-48(%r13) - movq %rbx,-40(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-32(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rbx,-24(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-16(%r13) - movq %r10,-8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,16(%r13) - movq %rbx,24(%r13) - movq %r8,%r11 - shlq $34,%r8 - movq %r10,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%r8 - shlq $34,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r8,%r11 - shlq $17,%r8 - movq %r10,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r8 - shlq $17,%r10 - orq %r11,%r10 - movq %r8,64(%r13) - movq %r10,72(%r13) - movl $3,%eax - jmp .Ldone -.align 16 -.L2nd256: - movl %r9d,48(%r13) - movl %r8d,52(%r13) - movl %r11d,56(%r13) - movl %r10d,60(%r13) - xorl 32(%r13),%r9d - xorl 36(%r13),%r8d - xorl 40(%r13),%r11d - xorl 44(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - movq 0(%r13),%rax - movq 8(%r13),%rbx - movq 32(%r13),%rcx - movq 40(%r13),%rdx - movq 48(%r13),%r14 - movq 56(%r13),%r15 - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-96(%r13) - movq %rdx,-88(%r13) - movq %r14,%r11 - shlq $15,%r14 - movq %r15,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r14 - shlq $15,%r15 - orq %r11,%r15 - movq %r14,-80(%r13) - movq %r15,-72(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-64(%r13) - movq %rdx,-56(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,-48(%r13) - movq %r10,-40(%r13) - movq %rax,%r11 - shlq $45,%rax - movq %rbx,%r9 - shrq $19,%r9 - shrq $19,%r11 - orq %r9,%rax - shlq $45,%rbx - orq %r11,%rbx - movq %rax,-32(%r13) - movq %rbx,-24(%r13) - movq %r14,%r11 - shlq $30,%r14 - movq %r15,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r14 - shlq $30,%r15 - orq %r11,%r15 - movq %r14,-16(%r13) - movq %r15,-8(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rcx,%r11 - shlq $30,%rcx - movq %rdx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rcx - shlq $30,%rdx - orq %r11,%rdx - movq %rcx,16(%r13) - movq %rdx,24(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r14,%r11 - shlq $32,%r14 - movq %r15,%r9 - shrq $32,%r9 - shrq $32,%r11 - orq %r9,%r14 - shlq $32,%r15 - orq %r11,%r15 - movq %r14,64(%r13) - movq %r15,72(%r13) - movq %rcx,%r11 - shlq $34,%rcx - movq %rdx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rcx - shlq $34,%rdx - orq %r11,%rdx - movq %rcx,80(%r13) - movq %rdx,88(%r13) - movq %r14,%r11 - shlq $17,%r14 - movq %r15,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r14 - shlq $17,%r15 - orq %r11,%r15 - movq %r14,96(%r13) - movq %r15,104(%r13) - movq %rax,%r11 - shlq $34,%rax - movq %rbx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rax - shlq $34,%rbx - orq %r11,%rbx - movq %rax,112(%r13) - movq %rbx,120(%r13) - movq %r8,%r11 - shlq $51,%r8 - movq %r10,%r9 - shrq $13,%r9 - shrq $13,%r11 - orq %r9,%r8 - shlq $51,%r10 - orq %r11,%r10 - movq %r8,128(%r13) - movq %r10,136(%r13) - movl $4,%eax -.Ldone: - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -.Lkey_epilogue: - .byte 0xf3,0xc3 -.size Camellia_Ekeygen,.-Camellia_Ekeygen -.align 64 -.LCamellia_SIGMA: -.long 0x3bcc908b, 0xa09e667f, 0x4caa73b2, 0xb67ae858 -.long 0xe94f82be, 0xc6ef372f, 0xf1d36f1c, 0x54ff53a5 -.long 0xde682d1d, 0x10e527fa, 0xb3e6c1fd, 0xb05688c2 -.long 0, 0, 0, 0 -.LCamellia_SBOX: -.long 0x70707000,0x70700070 -.long 0x82828200,0x2c2c002c -.long 0x2c2c2c00,0xb3b300b3 -.long 0xececec00,0xc0c000c0 -.long 0xb3b3b300,0xe4e400e4 -.long 0x27272700,0x57570057 -.long 0xc0c0c000,0xeaea00ea -.long 0xe5e5e500,0xaeae00ae -.long 0xe4e4e400,0x23230023 -.long 0x85858500,0x6b6b006b -.long 0x57575700,0x45450045 -.long 0x35353500,0xa5a500a5 -.long 0xeaeaea00,0xeded00ed -.long 0x0c0c0c00,0x4f4f004f -.long 0xaeaeae00,0x1d1d001d -.long 0x41414100,0x92920092 -.long 0x23232300,0x86860086 -.long 0xefefef00,0xafaf00af -.long 0x6b6b6b00,0x7c7c007c -.long 0x93939300,0x1f1f001f -.long 0x45454500,0x3e3e003e -.long 0x19191900,0xdcdc00dc -.long 0xa5a5a500,0x5e5e005e -.long 0x21212100,0x0b0b000b -.long 0xededed00,0xa6a600a6 -.long 0x0e0e0e00,0x39390039 -.long 0x4f4f4f00,0xd5d500d5 -.long 0x4e4e4e00,0x5d5d005d -.long 0x1d1d1d00,0xd9d900d9 -.long 0x65656500,0x5a5a005a -.long 0x92929200,0x51510051 -.long 0xbdbdbd00,0x6c6c006c -.long 0x86868600,0x8b8b008b -.long 0xb8b8b800,0x9a9a009a -.long 0xafafaf00,0xfbfb00fb -.long 0x8f8f8f00,0xb0b000b0 -.long 0x7c7c7c00,0x74740074 -.long 0xebebeb00,0x2b2b002b -.long 0x1f1f1f00,0xf0f000f0 -.long 0xcecece00,0x84840084 -.long 0x3e3e3e00,0xdfdf00df -.long 0x30303000,0xcbcb00cb -.long 0xdcdcdc00,0x34340034 -.long 0x5f5f5f00,0x76760076 -.long 0x5e5e5e00,0x6d6d006d -.long 0xc5c5c500,0xa9a900a9 -.long 0x0b0b0b00,0xd1d100d1 -.long 0x1a1a1a00,0x04040004 -.long 0xa6a6a600,0x14140014 -.long 0xe1e1e100,0x3a3a003a -.long 0x39393900,0xdede00de -.long 0xcacaca00,0x11110011 -.long 0xd5d5d500,0x32320032 -.long 0x47474700,0x9c9c009c -.long 0x5d5d5d00,0x53530053 -.long 0x3d3d3d00,0xf2f200f2 -.long 0xd9d9d900,0xfefe00fe -.long 0x01010100,0xcfcf00cf -.long 0x5a5a5a00,0xc3c300c3 -.long 0xd6d6d600,0x7a7a007a -.long 0x51515100,0x24240024 -.long 0x56565600,0xe8e800e8 -.long 0x6c6c6c00,0x60600060 -.long 0x4d4d4d00,0x69690069 -.long 0x8b8b8b00,0xaaaa00aa -.long 0x0d0d0d00,0xa0a000a0 -.long 0x9a9a9a00,0xa1a100a1 -.long 0x66666600,0x62620062 -.long 0xfbfbfb00,0x54540054 -.long 0xcccccc00,0x1e1e001e -.long 0xb0b0b000,0xe0e000e0 -.long 0x2d2d2d00,0x64640064 -.long 0x74747400,0x10100010 -.long 0x12121200,0x00000000 -.long 0x2b2b2b00,0xa3a300a3 -.long 0x20202000,0x75750075 -.long 0xf0f0f000,0x8a8a008a -.long 0xb1b1b100,0xe6e600e6 -.long 0x84848400,0x09090009 -.long 0x99999900,0xdddd00dd -.long 0xdfdfdf00,0x87870087 -.long 0x4c4c4c00,0x83830083 -.long 0xcbcbcb00,0xcdcd00cd -.long 0xc2c2c200,0x90900090 -.long 0x34343400,0x73730073 -.long 0x7e7e7e00,0xf6f600f6 -.long 0x76767600,0x9d9d009d -.long 0x05050500,0xbfbf00bf -.long 0x6d6d6d00,0x52520052 -.long 0xb7b7b700,0xd8d800d8 -.long 0xa9a9a900,0xc8c800c8 -.long 0x31313100,0xc6c600c6 -.long 0xd1d1d100,0x81810081 -.long 0x17171700,0x6f6f006f -.long 0x04040400,0x13130013 -.long 0xd7d7d700,0x63630063 -.long 0x14141400,0xe9e900e9 -.long 0x58585800,0xa7a700a7 -.long 0x3a3a3a00,0x9f9f009f -.long 0x61616100,0xbcbc00bc -.long 0xdedede00,0x29290029 -.long 0x1b1b1b00,0xf9f900f9 -.long 0x11111100,0x2f2f002f -.long 0x1c1c1c00,0xb4b400b4 -.long 0x32323200,0x78780078 -.long 0x0f0f0f00,0x06060006 -.long 0x9c9c9c00,0xe7e700e7 -.long 0x16161600,0x71710071 -.long 0x53535300,0xd4d400d4 -.long 0x18181800,0xabab00ab -.long 0xf2f2f200,0x88880088 -.long 0x22222200,0x8d8d008d -.long 0xfefefe00,0x72720072 -.long 0x44444400,0xb9b900b9 -.long 0xcfcfcf00,0xf8f800f8 -.long 0xb2b2b200,0xacac00ac -.long 0xc3c3c300,0x36360036 -.long 0xb5b5b500,0x2a2a002a -.long 0x7a7a7a00,0x3c3c003c -.long 0x91919100,0xf1f100f1 -.long 0x24242400,0x40400040 -.long 0x08080800,0xd3d300d3 -.long 0xe8e8e800,0xbbbb00bb -.long 0xa8a8a800,0x43430043 -.long 0x60606000,0x15150015 -.long 0xfcfcfc00,0xadad00ad -.long 0x69696900,0x77770077 -.long 0x50505000,0x80800080 -.long 0xaaaaaa00,0x82820082 -.long 0xd0d0d000,0xecec00ec -.long 0xa0a0a000,0x27270027 -.long 0x7d7d7d00,0xe5e500e5 -.long 0xa1a1a100,0x85850085 -.long 0x89898900,0x35350035 -.long 0x62626200,0x0c0c000c -.long 0x97979700,0x41410041 -.long 0x54545400,0xefef00ef -.long 0x5b5b5b00,0x93930093 -.long 0x1e1e1e00,0x19190019 -.long 0x95959500,0x21210021 -.long 0xe0e0e000,0x0e0e000e -.long 0xffffff00,0x4e4e004e -.long 0x64646400,0x65650065 -.long 0xd2d2d200,0xbdbd00bd -.long 0x10101000,0xb8b800b8 -.long 0xc4c4c400,0x8f8f008f -.long 0x00000000,0xebeb00eb -.long 0x48484800,0xcece00ce -.long 0xa3a3a300,0x30300030 -.long 0xf7f7f700,0x5f5f005f -.long 0x75757500,0xc5c500c5 -.long 0xdbdbdb00,0x1a1a001a -.long 0x8a8a8a00,0xe1e100e1 -.long 0x03030300,0xcaca00ca -.long 0xe6e6e600,0x47470047 -.long 0xdadada00,0x3d3d003d -.long 0x09090900,0x01010001 -.long 0x3f3f3f00,0xd6d600d6 -.long 0xdddddd00,0x56560056 -.long 0x94949400,0x4d4d004d -.long 0x87878700,0x0d0d000d -.long 0x5c5c5c00,0x66660066 -.long 0x83838300,0xcccc00cc -.long 0x02020200,0x2d2d002d -.long 0xcdcdcd00,0x12120012 -.long 0x4a4a4a00,0x20200020 -.long 0x90909000,0xb1b100b1 -.long 0x33333300,0x99990099 -.long 0x73737300,0x4c4c004c -.long 0x67676700,0xc2c200c2 -.long 0xf6f6f600,0x7e7e007e -.long 0xf3f3f300,0x05050005 -.long 0x9d9d9d00,0xb7b700b7 -.long 0x7f7f7f00,0x31310031 -.long 0xbfbfbf00,0x17170017 -.long 0xe2e2e200,0xd7d700d7 -.long 0x52525200,0x58580058 -.long 0x9b9b9b00,0x61610061 -.long 0xd8d8d800,0x1b1b001b -.long 0x26262600,0x1c1c001c -.long 0xc8c8c800,0x0f0f000f -.long 0x37373700,0x16160016 -.long 0xc6c6c600,0x18180018 -.long 0x3b3b3b00,0x22220022 -.long 0x81818100,0x44440044 -.long 0x96969600,0xb2b200b2 -.long 0x6f6f6f00,0xb5b500b5 -.long 0x4b4b4b00,0x91910091 -.long 0x13131300,0x08080008 -.long 0xbebebe00,0xa8a800a8 -.long 0x63636300,0xfcfc00fc -.long 0x2e2e2e00,0x50500050 -.long 0xe9e9e900,0xd0d000d0 -.long 0x79797900,0x7d7d007d -.long 0xa7a7a700,0x89890089 -.long 0x8c8c8c00,0x97970097 -.long 0x9f9f9f00,0x5b5b005b -.long 0x6e6e6e00,0x95950095 -.long 0xbcbcbc00,0xffff00ff -.long 0x8e8e8e00,0xd2d200d2 -.long 0x29292900,0xc4c400c4 -.long 0xf5f5f500,0x48480048 -.long 0xf9f9f900,0xf7f700f7 -.long 0xb6b6b600,0xdbdb00db -.long 0x2f2f2f00,0x03030003 -.long 0xfdfdfd00,0xdada00da -.long 0xb4b4b400,0x3f3f003f -.long 0x59595900,0x94940094 -.long 0x78787800,0x5c5c005c -.long 0x98989800,0x02020002 -.long 0x06060600,0x4a4a004a -.long 0x6a6a6a00,0x33330033 -.long 0xe7e7e700,0x67670067 -.long 0x46464600,0xf3f300f3 -.long 0x71717100,0x7f7f007f -.long 0xbababa00,0xe2e200e2 -.long 0xd4d4d400,0x9b9b009b -.long 0x25252500,0x26260026 -.long 0xababab00,0x37370037 -.long 0x42424200,0x3b3b003b -.long 0x88888800,0x96960096 -.long 0xa2a2a200,0x4b4b004b -.long 0x8d8d8d00,0xbebe00be -.long 0xfafafa00,0x2e2e002e -.long 0x72727200,0x79790079 -.long 0x07070700,0x8c8c008c -.long 0xb9b9b900,0x6e6e006e -.long 0x55555500,0x8e8e008e -.long 0xf8f8f800,0xf5f500f5 -.long 0xeeeeee00,0xb6b600b6 -.long 0xacacac00,0xfdfd00fd -.long 0x0a0a0a00,0x59590059 -.long 0x36363600,0x98980098 -.long 0x49494900,0x6a6a006a -.long 0x2a2a2a00,0x46460046 -.long 0x68686800,0xbaba00ba -.long 0x3c3c3c00,0x25250025 -.long 0x38383800,0x42420042 -.long 0xf1f1f100,0xa2a200a2 -.long 0xa4a4a400,0xfafa00fa -.long 0x40404000,0x07070007 -.long 0x28282800,0x55550055 -.long 0xd3d3d300,0xeeee00ee -.long 0x7b7b7b00,0x0a0a000a -.long 0xbbbbbb00,0x49490049 -.long 0xc9c9c900,0x68680068 -.long 0x43434300,0x38380038 -.long 0xc1c1c100,0xa4a400a4 -.long 0x15151500,0x28280028 -.long 0xe3e3e300,0x7b7b007b -.long 0xadadad00,0xc9c900c9 -.long 0xf4f4f400,0xc1c100c1 -.long 0x77777700,0xe3e300e3 -.long 0xc7c7c700,0xf4f400f4 -.long 0x80808000,0xc7c700c7 -.long 0x9e9e9e00,0x9e9e009e -.long 0x00e0e0e0,0x38003838 -.long 0x00050505,0x41004141 -.long 0x00585858,0x16001616 -.long 0x00d9d9d9,0x76007676 -.long 0x00676767,0xd900d9d9 -.long 0x004e4e4e,0x93009393 -.long 0x00818181,0x60006060 -.long 0x00cbcbcb,0xf200f2f2 -.long 0x00c9c9c9,0x72007272 -.long 0x000b0b0b,0xc200c2c2 -.long 0x00aeaeae,0xab00abab -.long 0x006a6a6a,0x9a009a9a -.long 0x00d5d5d5,0x75007575 -.long 0x00181818,0x06000606 -.long 0x005d5d5d,0x57005757 -.long 0x00828282,0xa000a0a0 -.long 0x00464646,0x91009191 -.long 0x00dfdfdf,0xf700f7f7 -.long 0x00d6d6d6,0xb500b5b5 -.long 0x00272727,0xc900c9c9 -.long 0x008a8a8a,0xa200a2a2 -.long 0x00323232,0x8c008c8c -.long 0x004b4b4b,0xd200d2d2 -.long 0x00424242,0x90009090 -.long 0x00dbdbdb,0xf600f6f6 -.long 0x001c1c1c,0x07000707 -.long 0x009e9e9e,0xa700a7a7 -.long 0x009c9c9c,0x27002727 -.long 0x003a3a3a,0x8e008e8e -.long 0x00cacaca,0xb200b2b2 -.long 0x00252525,0x49004949 -.long 0x007b7b7b,0xde00dede -.long 0x000d0d0d,0x43004343 -.long 0x00717171,0x5c005c5c -.long 0x005f5f5f,0xd700d7d7 -.long 0x001f1f1f,0xc700c7c7 -.long 0x00f8f8f8,0x3e003e3e -.long 0x00d7d7d7,0xf500f5f5 -.long 0x003e3e3e,0x8f008f8f -.long 0x009d9d9d,0x67006767 -.long 0x007c7c7c,0x1f001f1f -.long 0x00606060,0x18001818 -.long 0x00b9b9b9,0x6e006e6e -.long 0x00bebebe,0xaf00afaf -.long 0x00bcbcbc,0x2f002f2f -.long 0x008b8b8b,0xe200e2e2 -.long 0x00161616,0x85008585 -.long 0x00343434,0x0d000d0d -.long 0x004d4d4d,0x53005353 -.long 0x00c3c3c3,0xf000f0f0 -.long 0x00727272,0x9c009c9c -.long 0x00959595,0x65006565 -.long 0x00ababab,0xea00eaea -.long 0x008e8e8e,0xa300a3a3 -.long 0x00bababa,0xae00aeae -.long 0x007a7a7a,0x9e009e9e -.long 0x00b3b3b3,0xec00ecec -.long 0x00020202,0x80008080 -.long 0x00b4b4b4,0x2d002d2d -.long 0x00adadad,0x6b006b6b -.long 0x00a2a2a2,0xa800a8a8 -.long 0x00acacac,0x2b002b2b -.long 0x00d8d8d8,0x36003636 -.long 0x009a9a9a,0xa600a6a6 -.long 0x00171717,0xc500c5c5 -.long 0x001a1a1a,0x86008686 -.long 0x00353535,0x4d004d4d -.long 0x00cccccc,0x33003333 -.long 0x00f7f7f7,0xfd00fdfd -.long 0x00999999,0x66006666 -.long 0x00616161,0x58005858 -.long 0x005a5a5a,0x96009696 -.long 0x00e8e8e8,0x3a003a3a -.long 0x00242424,0x09000909 -.long 0x00565656,0x95009595 -.long 0x00404040,0x10001010 -.long 0x00e1e1e1,0x78007878 -.long 0x00636363,0xd800d8d8 -.long 0x00090909,0x42004242 -.long 0x00333333,0xcc00cccc -.long 0x00bfbfbf,0xef00efef -.long 0x00989898,0x26002626 -.long 0x00979797,0xe500e5e5 -.long 0x00858585,0x61006161 -.long 0x00686868,0x1a001a1a -.long 0x00fcfcfc,0x3f003f3f -.long 0x00ececec,0x3b003b3b -.long 0x000a0a0a,0x82008282 -.long 0x00dadada,0xb600b6b6 -.long 0x006f6f6f,0xdb00dbdb -.long 0x00535353,0xd400d4d4 -.long 0x00626262,0x98009898 -.long 0x00a3a3a3,0xe800e8e8 -.long 0x002e2e2e,0x8b008b8b -.long 0x00080808,0x02000202 -.long 0x00afafaf,0xeb00ebeb -.long 0x00282828,0x0a000a0a -.long 0x00b0b0b0,0x2c002c2c -.long 0x00747474,0x1d001d1d -.long 0x00c2c2c2,0xb000b0b0 -.long 0x00bdbdbd,0x6f006f6f -.long 0x00363636,0x8d008d8d -.long 0x00222222,0x88008888 -.long 0x00383838,0x0e000e0e -.long 0x00646464,0x19001919 -.long 0x001e1e1e,0x87008787 -.long 0x00393939,0x4e004e4e -.long 0x002c2c2c,0x0b000b0b -.long 0x00a6a6a6,0xa900a9a9 -.long 0x00303030,0x0c000c0c -.long 0x00e5e5e5,0x79007979 -.long 0x00444444,0x11001111 -.long 0x00fdfdfd,0x7f007f7f -.long 0x00888888,0x22002222 -.long 0x009f9f9f,0xe700e7e7 -.long 0x00656565,0x59005959 -.long 0x00878787,0xe100e1e1 -.long 0x006b6b6b,0xda00dada -.long 0x00f4f4f4,0x3d003d3d -.long 0x00232323,0xc800c8c8 -.long 0x00484848,0x12001212 -.long 0x00101010,0x04000404 -.long 0x00d1d1d1,0x74007474 -.long 0x00515151,0x54005454 -.long 0x00c0c0c0,0x30003030 -.long 0x00f9f9f9,0x7e007e7e -.long 0x00d2d2d2,0xb400b4b4 -.long 0x00a0a0a0,0x28002828 -.long 0x00555555,0x55005555 -.long 0x00a1a1a1,0x68006868 -.long 0x00414141,0x50005050 -.long 0x00fafafa,0xbe00bebe -.long 0x00434343,0xd000d0d0 -.long 0x00131313,0xc400c4c4 -.long 0x00c4c4c4,0x31003131 -.long 0x002f2f2f,0xcb00cbcb -.long 0x00a8a8a8,0x2a002a2a -.long 0x00b6b6b6,0xad00adad -.long 0x003c3c3c,0x0f000f0f -.long 0x002b2b2b,0xca00caca -.long 0x00c1c1c1,0x70007070 -.long 0x00ffffff,0xff00ffff -.long 0x00c8c8c8,0x32003232 -.long 0x00a5a5a5,0x69006969 -.long 0x00202020,0x08000808 -.long 0x00898989,0x62006262 -.long 0x00000000,0x00000000 -.long 0x00909090,0x24002424 -.long 0x00474747,0xd100d1d1 -.long 0x00efefef,0xfb00fbfb -.long 0x00eaeaea,0xba00baba -.long 0x00b7b7b7,0xed00eded -.long 0x00151515,0x45004545 -.long 0x00060606,0x81008181 -.long 0x00cdcdcd,0x73007373 -.long 0x00b5b5b5,0x6d006d6d -.long 0x00121212,0x84008484 -.long 0x007e7e7e,0x9f009f9f -.long 0x00bbbbbb,0xee00eeee -.long 0x00292929,0x4a004a4a -.long 0x000f0f0f,0xc300c3c3 -.long 0x00b8b8b8,0x2e002e2e -.long 0x00070707,0xc100c1c1 -.long 0x00040404,0x01000101 -.long 0x009b9b9b,0xe600e6e6 -.long 0x00949494,0x25002525 -.long 0x00212121,0x48004848 -.long 0x00666666,0x99009999 -.long 0x00e6e6e6,0xb900b9b9 -.long 0x00cecece,0xb300b3b3 -.long 0x00ededed,0x7b007b7b -.long 0x00e7e7e7,0xf900f9f9 -.long 0x003b3b3b,0xce00cece -.long 0x00fefefe,0xbf00bfbf -.long 0x007f7f7f,0xdf00dfdf -.long 0x00c5c5c5,0x71007171 -.long 0x00a4a4a4,0x29002929 -.long 0x00373737,0xcd00cdcd -.long 0x00b1b1b1,0x6c006c6c -.long 0x004c4c4c,0x13001313 -.long 0x00919191,0x64006464 -.long 0x006e6e6e,0x9b009b9b -.long 0x008d8d8d,0x63006363 -.long 0x00767676,0x9d009d9d -.long 0x00030303,0xc000c0c0 -.long 0x002d2d2d,0x4b004b4b -.long 0x00dedede,0xb700b7b7 -.long 0x00969696,0xa500a5a5 -.long 0x00262626,0x89008989 -.long 0x007d7d7d,0x5f005f5f -.long 0x00c6c6c6,0xb100b1b1 -.long 0x005c5c5c,0x17001717 -.long 0x00d3d3d3,0xf400f4f4 -.long 0x00f2f2f2,0xbc00bcbc -.long 0x004f4f4f,0xd300d3d3 -.long 0x00191919,0x46004646 -.long 0x003f3f3f,0xcf00cfcf -.long 0x00dcdcdc,0x37003737 -.long 0x00797979,0x5e005e5e -.long 0x001d1d1d,0x47004747 -.long 0x00525252,0x94009494 -.long 0x00ebebeb,0xfa00fafa -.long 0x00f3f3f3,0xfc00fcfc -.long 0x006d6d6d,0x5b005b5b -.long 0x005e5e5e,0x97009797 -.long 0x00fbfbfb,0xfe00fefe -.long 0x00696969,0x5a005a5a -.long 0x00b2b2b2,0xac00acac -.long 0x00f0f0f0,0x3c003c3c -.long 0x00313131,0x4c004c4c -.long 0x000c0c0c,0x03000303 -.long 0x00d4d4d4,0x35003535 -.long 0x00cfcfcf,0xf300f3f3 -.long 0x008c8c8c,0x23002323 -.long 0x00e2e2e2,0xb800b8b8 -.long 0x00757575,0x5d005d5d -.long 0x00a9a9a9,0x6a006a6a -.long 0x004a4a4a,0x92009292 -.long 0x00575757,0xd500d5d5 -.long 0x00848484,0x21002121 -.long 0x00111111,0x44004444 -.long 0x00454545,0x51005151 -.long 0x001b1b1b,0xc600c6c6 -.long 0x00f5f5f5,0x7d007d7d -.long 0x00e4e4e4,0x39003939 -.long 0x000e0e0e,0x83008383 -.long 0x00737373,0xdc00dcdc -.long 0x00aaaaaa,0xaa00aaaa -.long 0x00f1f1f1,0x7c007c7c -.long 0x00dddddd,0x77007777 -.long 0x00595959,0x56005656 -.long 0x00141414,0x05000505 -.long 0x006c6c6c,0x1b001b1b -.long 0x00929292,0xa400a4a4 -.long 0x00545454,0x15001515 -.long 0x00d0d0d0,0x34003434 -.long 0x00787878,0x1e001e1e -.long 0x00707070,0x1c001c1c -.long 0x00e3e3e3,0xf800f8f8 -.long 0x00494949,0x52005252 -.long 0x00808080,0x20002020 -.long 0x00505050,0x14001414 -.long 0x00a7a7a7,0xe900e9e9 -.long 0x00f6f6f6,0xbd00bdbd -.long 0x00777777,0xdd00dddd -.long 0x00939393,0xe400e4e4 -.long 0x00868686,0xa100a1a1 -.long 0x00838383,0xe000e0e0 -.long 0x002a2a2a,0x8a008a8a -.long 0x00c7c7c7,0xf100f1f1 -.long 0x005b5b5b,0xd600d6d6 -.long 0x00e9e9e9,0x7a007a7a -.long 0x00eeeeee,0xbb00bbbb -.long 0x008f8f8f,0xe300e3e3 -.long 0x00010101,0x40004040 -.long 0x003d3d3d,0x4f004f4f -.globl Camellia_cbc_encrypt -.type Camellia_cbc_encrypt,@function -.align 16 -Camellia_cbc_encrypt: - cmpq $0,%rdx - je .Lcbc_abort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -.Lcbc_prologue: - - movq %rsp,%rbp - subq $64,%rsp - andq $-64,%rsp - - - - leaq -64-63(%rcx),%r10 - subq %rsp,%r10 - negq %r10 - andq $0x3C0,%r10 - subq %r10,%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %r8,%rbx - movq %rcx,%r14 - movl 272(%rcx),%r15d - - movq %r8,40(%rsp) - movq %rbp,48(%rsp) - -.Lcbc_body: - leaq .LCamellia_SBOX(%rip),%rbp - - movl $32,%ecx -.align 4 -.Lcbc_prefetch_sbox: - movq 0(%rbp),%rax - movq 32(%rbp),%rsi - movq 64(%rbp),%rdi - movq 96(%rbp),%r11 - leaq 128(%rbp),%rbp - loop .Lcbc_prefetch_sbox - subq $4096,%rbp - shlq $6,%r15 - movq %rdx,%rcx - leaq (%r14,%r15,1),%r15 - - cmpl $0,%r9d - je .LCBC_DECRYPT - - andq $-16,%rdx - andq $15,%rcx - leaq (%r12,%rdx,1),%rdx - movq %r14,0(%rsp) - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - cmpq %r12,%rdx - movl 0(%rbx),%r8d - movl 4(%rbx),%r9d - movl 8(%rbx),%r10d - movl 12(%rbx),%r11d - je .Lcbc_enc_tail - jmp .Lcbc_eloop - -.align 16 -.Lcbc_eloop: - xorl 0(%r12),%r8d - xorl 4(%r12),%r9d - xorl 8(%r12),%r10d - bswapl %r8d - xorl 12(%r12),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - movq 0(%rsp),%r14 - bswapl %r8d - movq 8(%rsp),%rdx - bswapl %r9d - movq 16(%rsp),%rcx - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - leaq 16(%r12),%r12 - movl %r11d,12(%r13) - cmpq %rdx,%r12 - leaq 16(%r13),%r13 - jne .Lcbc_eloop - - cmpq $0,%rcx - jne .Lcbc_enc_tail - - movq 40(%rsp),%r13 - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - jmp .Lcbc_done - -.align 16 -.Lcbc_enc_tail: - xorq %rax,%rax - movq %rax,0+24(%rsp) - movq %rax,8+24(%rsp) - movq %rax,16(%rsp) - -.Lcbc_enc_pushf: - pushfq - cld - movq %r12,%rsi - leaq 8+24(%rsp),%rdi -.long 0x9066A4F3 - popfq -.Lcbc_enc_popf: - - leaq 24(%rsp),%r12 - leaq 16+24(%rsp),%rax - movq %rax,8(%rsp) - jmp .Lcbc_eloop - -.align 16 -.LCBC_DECRYPT: - xchgq %r14,%r15 - addq $15,%rdx - andq $15,%rcx - andq $-16,%rdx - movq %r14,0(%rsp) - leaq (%r12,%rdx,1),%rdx - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - movq (%rbx),%rax - movq 8(%rbx),%rbx - jmp .Lcbc_dloop -.align 16 -.Lcbc_dloop: - movl 0(%r12),%r8d - movl 4(%r12),%r9d - movl 8(%r12),%r10d - bswapl %r8d - movl 12(%r12),%r11d - bswapl %r9d - movq %rax,0+24(%rsp) - bswapl %r10d - movq %rbx,8+24(%rsp) - bswapl %r11d - - call _x86_64_Camellia_decrypt - - movq 0(%rsp),%r14 - movq 8(%rsp),%rdx - movq 16(%rsp),%rcx - - bswapl %r8d - movq (%r12),%rax - bswapl %r9d - movq 8(%r12),%rbx - bswapl %r10d - xorl 0+24(%rsp),%r8d - bswapl %r11d - xorl 4+24(%rsp),%r9d - xorl 8+24(%rsp),%r10d - leaq 16(%r12),%r12 - xorl 12+24(%rsp),%r11d - cmpq %rdx,%r12 - je .Lcbc_ddone - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - leaq 16(%r13),%r13 - jmp .Lcbc_dloop - -.align 16 -.Lcbc_ddone: - movq 40(%rsp),%rdx - cmpq $0,%rcx - jne .Lcbc_dec_tail - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp .Lcbc_done -.align 16 -.Lcbc_dec_tail: - movl %r8d,0+24(%rsp) - movl %r9d,4+24(%rsp) - movl %r10d,8+24(%rsp) - movl %r11d,12+24(%rsp) - -.Lcbc_dec_pushf: - pushfq - cld - leaq 8+24(%rsp),%rsi - leaq (%r13),%rdi -.long 0x9066A4F3 - popfq -.Lcbc_dec_popf: - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp .Lcbc_done - -.align 16 -.Lcbc_done: - movq 48(%rsp),%rcx - movq 0(%rcx),%r15 - movq 8(%rcx),%r14 - movq 16(%rcx),%r13 - movq 24(%rcx),%r12 - movq 32(%rcx),%rbp - movq 40(%rcx),%rbx - leaq 48(%rcx),%rsp -.Lcbc_abort: - .byte 0xf3,0xc3 -.size Camellia_cbc_encrypt,.-Camellia_cbc_encrypt - -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54,95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/ec/ecp_nistz256-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/ec/ecp_nistz256-x86_64.s deleted file mode 100644 index c7bc6f2636038b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/ec/ecp_nistz256-x86_64.s +++ /dev/null @@ -1,2014 +0,0 @@ -.text - - - -.align 64 -.Lpoly: -.quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001 - - -.LRR: -.quad 0x0000000000000003, 0xfffffffbffffffff, 0xfffffffffffffffe, 0x00000004fffffffd - -.LOne: -.long 1,1,1,1,1,1,1,1 -.LTwo: -.long 2,2,2,2,2,2,2,2 -.LThree: -.long 3,3,3,3,3,3,3,3 -.LONE_mont: -.quad 0x0000000000000001, 0xffffffff00000000, 0xffffffffffffffff, 0x00000000fffffffe - -.globl ecp_nistz256_mul_by_2 -.type ecp_nistz256_mul_by_2,@function -.align 64 -ecp_nistz256_mul_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_by_2,.-ecp_nistz256_mul_by_2 - - - -.globl ecp_nistz256_div_by_2 -.type ecp_nistz256_div_by_2,@function -.align 32 -ecp_nistz256_div_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq %r8,%rax - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - movq %r9,%rdx - xorq %r13,%r13 - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - adcq $0,%r13 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - cmovzq %rcx,%r10 - cmovzq %r12,%r11 - cmovzq %rsi,%r13 - - movq %r9,%rax - shrq $1,%r8 - shlq $63,%rax - movq %r10,%rdx - shrq $1,%r9 - orq %rax,%r8 - shlq $63,%rdx - movq %r11,%rcx - shrq $1,%r10 - orq %rdx,%r9 - shlq $63,%rcx - shrq $1,%r11 - shlq $63,%r13 - orq %rcx,%r10 - orq %r13,%r11 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_div_by_2,.-ecp_nistz256_div_by_2 - - - -.globl ecp_nistz256_mul_by_3 -.type ecp_nistz256_mul_by_3,@function -.align 32 -ecp_nistz256_mul_by_3: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq .Lpoly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq .Lpoly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - cmovcq %rcx,%r10 - cmovcq %r12,%r11 - - xorq %r13,%r13 - addq 0(%rsi),%r8 - adcq 8(%rsi),%r9 - movq %r8,%rax - adcq 16(%rsi),%r10 - adcq 24(%rsi),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq .Lpoly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq .Lpoly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_by_3,.-ecp_nistz256_mul_by_3 - - - -.globl ecp_nistz256_add -.type ecp_nistz256_add,@function -.align 32 -ecp_nistz256_add: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - addq 0(%rdx),%r8 - adcq 8(%rdx),%r9 - movq %r8,%rax - adcq 16(%rdx),%r10 - adcq 24(%rdx),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_add,.-ecp_nistz256_add - - - -.globl ecp_nistz256_sub -.type ecp_nistz256_sub,@function -.align 32 -ecp_nistz256_sub: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - - subq 0(%rdx),%r8 - sbbq 8(%rdx),%r9 - movq %r8,%rax - sbbq 16(%rdx),%r10 - sbbq 24(%rdx),%r11 - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_sub,.-ecp_nistz256_sub - - - -.globl ecp_nistz256_neg -.type ecp_nistz256_neg,@function -.align 32 -ecp_nistz256_neg: - pushq %r12 - pushq %r13 - - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r13,%r13 - - subq 0(%rsi),%r8 - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r8,%rax - sbbq 24(%rsi),%r11 - leaq .Lpoly(%rip),%rsi - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_neg,.-ecp_nistz256_neg - - - - -.globl ecp_nistz256_to_mont -.type ecp_nistz256_to_mont,@function -.align 32 -ecp_nistz256_to_mont: - leaq .LRR(%rip),%rdx - jmp .Lmul_mont -.size ecp_nistz256_to_mont,.-ecp_nistz256_to_mont - - - - - - - -.globl ecp_nistz256_mul_mont -.type ecp_nistz256_mul_mont,@function -.align 32 -ecp_nistz256_mul_mont: -.Lmul_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rdx,%rbx - movq 0(%rdx),%rax - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - - call __ecp_nistz256_mul_montq -.Lmul_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_mul_mont,.-ecp_nistz256_mul_mont - -.type __ecp_nistz256_mul_montq,@function -.align 32 -__ecp_nistz256_mul_montq: - - - movq %rax,%rbp - mulq %r9 - movq .Lpoly+8(%rip),%r14 - movq %rax,%r8 - movq %rbp,%rax - movq %rdx,%r9 - - mulq %r10 - movq .Lpoly+24(%rip),%r15 - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %r11 - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r12 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - xorq %r13,%r13 - movq %rdx,%r12 - - - - - - - - - - - movq %r8,%rbp - shlq $32,%r8 - mulq %r15 - shrq $32,%rbp - addq %r8,%r9 - adcq %rbp,%r10 - adcq %rax,%r11 - movq 8(%rbx),%rax - adcq %rdx,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r10 - adcq $0,%rdx - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %r9,%rax - adcq %rdx,%r13 - adcq $0,%r8 - - - - movq %r9,%rbp - shlq $32,%r9 - mulq %r15 - shrq $32,%rbp - addq %r9,%r10 - adcq %rbp,%r11 - adcq %rax,%r12 - movq 16(%rbx),%rax - adcq %rdx,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %r10,%rax - adcq %rdx,%r8 - adcq $0,%r9 - - - - movq %r10,%rbp - shlq $32,%r10 - mulq %r15 - shrq $32,%rbp - addq %r10,%r11 - adcq %rbp,%r12 - adcq %rax,%r13 - movq 24(%rbx),%rax - adcq %rdx,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r8 - adcq $0,%rdx - addq %rax,%r8 - movq %r11,%rax - adcq %rdx,%r9 - adcq $0,%r10 - - - - movq %r11,%rbp - shlq $32,%r11 - mulq %r15 - shrq $32,%rbp - addq %r11,%r12 - adcq %rbp,%r13 - movq %r12,%rcx - adcq %rax,%r8 - adcq %rdx,%r9 - movq %r13,%rbp - adcq $0,%r10 - - - - subq $-1,%r12 - movq %r8,%rbx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rdx - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rcx,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rbx,%r8 - movq %r13,8(%rdi) - cmovcq %rdx,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_montq,.-__ecp_nistz256_mul_montq - - - - - - - - -.globl ecp_nistz256_sqr_mont -.type ecp_nistz256_sqr_mont,@function -.align 32 -ecp_nistz256_sqr_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq 0(%rsi),%rax - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - - call __ecp_nistz256_sqr_montq -.Lsqr_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_sqr_mont,.-ecp_nistz256_sqr_mont - -.type __ecp_nistz256_sqr_montq,@function -.align 32 -__ecp_nistz256_sqr_montq: - movq %rax,%r13 - mulq %r14 - movq %rax,%r9 - movq %r15,%rax - movq %rdx,%r10 - - mulq %r13 - addq %rax,%r10 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r13 - addq %rax,%r11 - movq %r15,%rax - adcq $0,%rdx - movq %rdx,%r12 - - - mulq %r14 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%rbp - - mulq %r14 - addq %rax,%r12 - movq %r8,%rax - adcq $0,%rdx - addq %rbp,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - - mulq %r15 - xorq %r15,%r15 - addq %rax,%r13 - movq 0(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - addq %r9,%r9 - adcq %r10,%r10 - adcq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - adcq $0,%r15 - - mulq %rax - movq %rax,%r8 - movq 8(%rsi),%rax - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r9 - adcq %rax,%r10 - movq 16(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r11 - adcq %rax,%r12 - movq 24(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r13 - adcq %rax,%r14 - movq %r8,%rax - adcq %rdx,%r15 - - movq .Lpoly+8(%rip),%rsi - movq .Lpoly+24(%rip),%rbp - - - - - movq %r8,%rcx - shlq $32,%r8 - mulq %rbp - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %rbp - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %rbp - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %rbp - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - adcq %rax,%r10 - adcq $0,%rdx - xorq %r11,%r11 - - - - addq %r8,%r12 - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %rdx,%r15 - movq %r13,%r9 - adcq $0,%r11 - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%rcx - sbbq %rbp,%r15 - sbbq $0,%r11 - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %rcx,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sqr_montq,.-__ecp_nistz256_sqr_montq - - - - - - -.globl ecp_nistz256_from_mont -.type ecp_nistz256_from_mont,@function -.align 32 -ecp_nistz256_from_mont: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%rax - movq .Lpoly+24(%rip),%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq %rax,%r8 - movq .Lpoly+8(%rip),%r12 - - - - movq %rax,%rcx - shlq $32,%r8 - mulq %r13 - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %r13 - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %r13 - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %r13 - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - movq %r8,%rcx - adcq %rax,%r10 - movq %r9,%rsi - adcq $0,%rdx - - - - subq $-1,%r8 - movq %r10,%rax - sbbq %r12,%r9 - sbbq $0,%r10 - movq %rdx,%r11 - sbbq %r13,%rdx - sbbq %r13,%r13 - - cmovnzq %rcx,%r8 - cmovnzq %rsi,%r9 - movq %r8,0(%rdi) - cmovnzq %rax,%r10 - movq %r9,8(%rdi) - cmovzq %rdx,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 -.size ecp_nistz256_from_mont,.-ecp_nistz256_from_mont - - -.globl ecp_nistz256_select_w5 -.type ecp_nistz256_select_w5,@function -.align 32 -ecp_nistz256_select_w5: - movdqa .LOne(%rip),%xmm0 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - - movdqa %xmm0,%xmm8 - pshufd $0,%xmm1,%xmm1 - - movq $16,%rax -.Lselect_loop_sse_w5: - - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - pcmpeqd %xmm1,%xmm15 - - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - movdqa 64(%rsi),%xmm13 - movdqa 80(%rsi),%xmm14 - leaq 96(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - pand %xmm15,%xmm13 - por %xmm12,%xmm5 - pand %xmm15,%xmm14 - por %xmm13,%xmm6 - por %xmm14,%xmm7 - - decq %rax - jnz .Lselect_loop_sse_w5 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - movdqu %xmm6,64(%rdi) - movdqu %xmm7,80(%rdi) - .byte 0xf3,0xc3 -.size ecp_nistz256_select_w5,.-ecp_nistz256_select_w5 - - - -.globl ecp_nistz256_select_w7 -.type ecp_nistz256_select_w7,@function -.align 32 -ecp_nistz256_select_w7: - movdqa .LOne(%rip),%xmm8 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - - movdqa %xmm8,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq $64,%rax - -.Lselect_loop_sse_w7: - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - pcmpeqd %xmm1,%xmm15 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - leaq 64(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - prefetcht0 255(%rsi) - por %xmm12,%xmm5 - - decq %rax - jnz .Lselect_loop_sse_w7 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - .byte 0xf3,0xc3 -.size ecp_nistz256_select_w7,.-ecp_nistz256_select_w7 -.globl ecp_nistz256_avx2_select_w7 -.type ecp_nistz256_avx2_select_w7,@function -.align 32 -ecp_nistz256_avx2_select_w7: -.byte 0x0f,0x0b - .byte 0xf3,0xc3 -.size ecp_nistz256_avx2_select_w7,.-ecp_nistz256_avx2_select_w7 -.type __ecp_nistz256_add_toq,@function -.align 32 -__ecp_nistz256_add_toq: - xorq %r11,%r11 - addq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_add_toq,.-__ecp_nistz256_add_toq - -.type __ecp_nistz256_sub_fromq,@function -.align 32 -__ecp_nistz256_sub_fromq: - subq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq %r11,%r11 - - addq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - testq %r11,%r11 - - cmovzq %rax,%r12 - cmovzq %rbp,%r13 - movq %r12,0(%rdi) - cmovzq %rcx,%r8 - movq %r13,8(%rdi) - cmovzq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_sub_fromq,.-__ecp_nistz256_sub_fromq - -.type __ecp_nistz256_subq,@function -.align 32 -__ecp_nistz256_subq: - subq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq %r11,%r11 - - addq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - testq %r11,%r11 - - cmovnzq %rax,%r12 - cmovnzq %rbp,%r13 - cmovnzq %rcx,%r8 - cmovnzq %r10,%r9 - - .byte 0xf3,0xc3 -.size __ecp_nistz256_subq,.-__ecp_nistz256_subq - -.type __ecp_nistz256_mul_by_2q,@function -.align 32 -__ecp_nistz256_mul_by_2q: - xorq %r11,%r11 - addq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 -.size __ecp_nistz256_mul_by_2q,.-__ecp_nistz256_mul_by_2q -.globl ecp_nistz256_point_double -.type ecp_nistz256_point_double,@function -.align 32 -ecp_nistz256_point_double: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -.Lpoint_double_shortcutq: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq .Lpoly+8(%rip),%r14 - movq .Lpoly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-0(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 32(%rbx),%rax - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-0(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rax - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 0+32(%rsp),%rax - movq 8+32(%rsp),%r14 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subq - - movq 32(%rsp),%rax - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-0(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_double,.-ecp_nistz256_point_double -.globl ecp_nistz256_point_add -.type ecp_nistz256_point_add,@function -.align 32 -ecp_nistz256_point_add: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-0(%rsi),%rsi - movq %rax,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rax - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-0(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 416(%rsp),%rax - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 512(%rsp),%rax - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq 0+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 480(%rsp),%rax - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz .Ladd_proceedq -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz .Ladd_proceedq - testq %r9,%r9 - jz .Ladd_doubleq - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp .Ladd_doneq - -.align 32 -.Ladd_doubleq: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp .Lpoint_double_shortcutq - -.align 32 -.Ladd_proceedq: - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq 0+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0(%rsp),%rax - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 160(%rsp),%rax - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -.Ladd_doneq: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_add,.-ecp_nistz256_point_add -.globl ecp_nistz256_point_add_affine -.type ecp_nistz256_point_add_affine,@function -.align 32 -ecp_nistz256_point_add_affine: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-0(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rax - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-0(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+96(%rsp),%rax - movq 8+96(%rsp),%r14 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq 0+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rax - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq 0+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand .LONE_mont(%rip),%xmm2 - pand .LONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 -.size ecp_nistz256_point_add_affine,.-ecp_nistz256_point_add_affine diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/md5/md5-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/md5/md5-x86_64.s deleted file mode 100644 index fad85c498e8ca4..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/md5/md5-x86_64.s +++ /dev/null @@ -1,668 +0,0 @@ -.text -.align 16 - -.globl md5_block_asm_data_order -.type md5_block_asm_data_order,@function -md5_block_asm_data_order: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r14 - pushq %r15 -.Lprologue: - - - - - movq %rdi,%rbp - shlq $6,%rdx - leaq (%rsi,%rdx,1),%rdi - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - - - - - - - - cmpq %rdi,%rsi - je .Lend - - -.Lloop: - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r14d - movl %edx,%r15d - movl 0(%rsi),%r10d - movl %edx,%r11d - xorl %ecx,%r11d - leal -680876936(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 4(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -389564586(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 8(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal 606105819(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 12(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1044525330(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 16(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal -176418897(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 20(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal 1200080426(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 24(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1473231341(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 28(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -45705983(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 32(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1770035416(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 36(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -1958414417(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 40(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -42063(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 44(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1990404162(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 48(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1804603682(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 52(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -40341101(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 56(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1502002290(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 60(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal 1236535329(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 0(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - movl 4(%rsi),%r10d - movl %edx,%r11d - movl %edx,%r12d - notl %r11d - leal -165796510(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 24(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1069501632(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 44(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 643717713(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -373897302(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 20(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -701558691(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 40(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal 38016083(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 60(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -660478335(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 16(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -405537848(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 36(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal 568446438(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 56(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1019803690(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 12(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -187363961(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 32(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal 1163531501(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 52(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -1444681467(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 8(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -51403784(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 28(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 1735328473(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 48(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -1926607734(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - movl 20(%rsi),%r10d - movl %ecx,%r11d - leal -378558(%rax,%r10,1),%eax - movl 32(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -2022574463(%rdx,%r10,1),%edx - movl 44(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 1839030562(%rcx,%r10,1),%ecx - movl 56(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -35309556(%rbx,%r10,1),%ebx - movl 4(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -1530992060(%rax,%r10,1),%eax - movl 16(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal 1272893353(%rdx,%r10,1),%edx - movl 28(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -155497632(%rcx,%r10,1),%ecx - movl 40(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -1094730640(%rbx,%r10,1),%ebx - movl 52(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal 681279174(%rax,%r10,1),%eax - movl 0(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -358537222(%rdx,%r10,1),%edx - movl 12(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -722521979(%rcx,%r10,1),%ecx - movl 24(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal 76029189(%rbx,%r10,1),%ebx - movl 36(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -640364487(%rax,%r10,1),%eax - movl 48(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -421815835(%rdx,%r10,1),%edx - movl 60(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 530742520(%rcx,%r10,1),%ecx - movl 8(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -995338651(%rbx,%r10,1),%ebx - movl 0(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - xorl %edx,%r11d - leal -198630844(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 28(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal 1126891415(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 56(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1416354905(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 20(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -57434055(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 48(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1700485571(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 12(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1894986606(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 40(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1051523(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 4(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -2054922799(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 32(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1873313359(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 60(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -30611744(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 24(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1560198380(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 52(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal 1309151649(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 16(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal -145523070(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 44(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1120210379(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 8(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal 718787259(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 36(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -343485551(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - - addl %r8d,%eax - addl %r9d,%ebx - addl %r14d,%ecx - addl %r15d,%edx - - - addq $64,%rsi - cmpq %rdi,%rsi - jb .Lloop - - -.Lend: - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - movq (%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r12 - movq 24(%rsp),%rbx - movq 32(%rsp),%rbp - addq $40,%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size md5_block_asm_data_order,.-md5_block_asm_data_order diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/modes/aesni-gcm-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/modes/aesni-gcm-x86_64.s deleted file mode 100644 index 35ebd9b4e09076..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/modes/aesni-gcm-x86_64.s +++ /dev/null @@ -1,15 +0,0 @@ -.text - -.globl aesni_gcm_encrypt -.type aesni_gcm_encrypt,@function -aesni_gcm_encrypt: - xorl %eax,%eax - .byte 0xf3,0xc3 -.size aesni_gcm_encrypt,.-aesni_gcm_encrypt - -.globl aesni_gcm_decrypt -.type aesni_gcm_decrypt,@function -aesni_gcm_decrypt: - xorl %eax,%eax - .byte 0xf3,0xc3 -.size aesni_gcm_decrypt,.-aesni_gcm_decrypt diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/modes/ghash-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/modes/ghash-x86_64.s deleted file mode 100644 index e3e9b813c825d5..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/modes/ghash-x86_64.s +++ /dev/null @@ -1,1318 +0,0 @@ -.text - - -.globl gcm_gmult_4bit -.type gcm_gmult_4bit,@function -.align 16 -gcm_gmult_4bit: - pushq %rbx - pushq %rbp - pushq %r12 -.Lgmult_prologue: - - movzbq 15(%rdi),%r8 - leaq .Lrem_4bit(%rip),%r11 - xorq %rax,%rax - xorq %rbx,%rbx - movb %r8b,%al - movb %r8b,%bl - shlb $4,%al - movq $14,%rcx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - movq %r8,%rdx - jmp .Loop1 - -.align 16 -.Loop1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - movb (%rdi,%rcx,1),%al - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - movb %al,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - shlb $4,%al - xorq %r10,%r8 - decq %rcx - js .Lbreak1 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - jmp .Loop1 - -.align 16 -.Lbreak1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - xorq %r10,%r8 - xorq (%r11,%rdx,8),%r9 - - bswapq %r8 - bswapq %r9 - movq %r8,8(%rdi) - movq %r9,(%rdi) - - movq 16(%rsp),%rbx - leaq 24(%rsp),%rsp -.Lgmult_epilogue: - .byte 0xf3,0xc3 -.size gcm_gmult_4bit,.-gcm_gmult_4bit -.globl gcm_ghash_4bit -.type gcm_ghash_4bit,@function -.align 16 -gcm_ghash_4bit: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $280,%rsp -.Lghash_prologue: - movq %rdx,%r14 - movq %rcx,%r15 - subq $-128,%rsi - leaq 16+128(%rsp),%rbp - xorl %edx,%edx - movq 0+0-128(%rsi),%r8 - movq 0+8-128(%rsi),%rax - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq 16+0-128(%rsi),%r9 - shlb $4,%dl - movq 16+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,0(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,0(%rbp) - movq 32+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,0-128(%rbp) - movq 32+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,1(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,8(%rbp) - movq 48+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,8-128(%rbp) - movq 48+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,2(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,16(%rbp) - movq 64+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,16-128(%rbp) - movq 64+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,3(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,24(%rbp) - movq 80+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,24-128(%rbp) - movq 80+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,4(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,32(%rbp) - movq 96+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,32-128(%rbp) - movq 96+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,5(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,40(%rbp) - movq 112+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,40-128(%rbp) - movq 112+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,6(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,48(%rbp) - movq 128+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,48-128(%rbp) - movq 128+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,7(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,56(%rbp) - movq 144+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,56-128(%rbp) - movq 144+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,8(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,64(%rbp) - movq 160+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,64-128(%rbp) - movq 160+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,9(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,72(%rbp) - movq 176+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,72-128(%rbp) - movq 176+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,10(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,80(%rbp) - movq 192+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,80-128(%rbp) - movq 192+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,11(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,88(%rbp) - movq 208+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,88-128(%rbp) - movq 208+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,12(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,96(%rbp) - movq 224+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,96-128(%rbp) - movq 224+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,13(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,104(%rbp) - movq 240+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,104-128(%rbp) - movq 240+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,14(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,112(%rbp) - shlb $4,%dl - movq %rax,112-128(%rbp) - shlq $60,%r10 - movb %dl,15(%rsp) - orq %r10,%rbx - movq %r9,120(%rbp) - movq %rbx,120-128(%rbp) - addq $-128,%rsi - movq 8(%rdi),%r8 - movq 0(%rdi),%r9 - addq %r14,%r15 - leaq .Lrem_8bit(%rip),%r11 - jmp .Louter_loop -.align 16 -.Louter_loop: - xorq (%r14),%r9 - movq 8(%r14),%rdx - leaq 16(%r14),%r14 - xorq %r8,%rdx - movq %r9,(%rdi) - movq %rdx,8(%rdi) - shrq $32,%rdx - xorq %rax,%rax - roll $8,%edx - movb %dl,%al - movzbl %dl,%ebx - shlb $4,%al - shrl $4,%ebx - roll $8,%edx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - movb %dl,%al - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - xorq %r8,%r12 - movq %r9,%r10 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 8(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 0(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - andl $240,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl -4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - movzwq (%r11,%r12,2),%r12 - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - shlq $48,%r12 - xorq %r10,%r8 - xorq %r12,%r9 - movzbq %r8b,%r13 - shrq $4,%r8 - movq %r9,%r10 - shlb $4,%r13b - shrq $4,%r9 - xorq 8(%rsi,%rcx,1),%r8 - movzwq (%r11,%r13,2),%r13 - shlq $60,%r10 - xorq (%rsi,%rcx,1),%r9 - xorq %r10,%r8 - shlq $48,%r13 - bswapq %r8 - xorq %r13,%r9 - bswapq %r9 - cmpq %r15,%r14 - jb .Louter_loop - movq %r8,8(%rdi) - movq %r9,(%rdi) - - leaq 280(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lghash_epilogue: - .byte 0xf3,0xc3 -.size gcm_ghash_4bit,.-gcm_ghash_4bit -.globl gcm_init_clmul -.type gcm_init_clmul,@function -.align 16 -gcm_init_clmul: -.L_init_clmul: - movdqu (%rsi),%xmm2 - pshufd $78,%xmm2,%xmm2 - - - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - - - pand .L0x1c2_polynomial(%rip),%xmm5 - pxor %xmm5,%xmm2 - - - pshufd $78,%xmm2,%xmm6 - movdqa %xmm2,%xmm0 - pxor %xmm2,%xmm6 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,0(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%rdi) - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm5 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm5,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm5,%xmm3 - movdqu %xmm5,48(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,64(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,80(%rdi) - .byte 0xf3,0xc3 -.size gcm_init_clmul,.-gcm_init_clmul -.globl gcm_gmult_clmul -.type gcm_gmult_clmul,@function -.align 16 -gcm_gmult_clmul: -.L_gmult_clmul: - movdqu (%rdi),%xmm0 - movdqa .Lbswap_mask(%rip),%xmm5 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm4 -.byte 102,15,56,0,197 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 -.size gcm_gmult_clmul,.-gcm_gmult_clmul -.globl gcm_ghash_clmul -.type gcm_ghash_clmul,@function -.align 32 -gcm_ghash_clmul: -.L_ghash_clmul: - movdqa .Lbswap_mask(%rip),%xmm10 - - movdqu (%rdi),%xmm0 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm7 -.byte 102,65,15,56,0,194 - - subq $0x10,%rcx - jz .Lodd_tail - - movdqu 16(%rsi),%xmm6 - movl OPENSSL_ia32cap_P+4(%rip),%eax - cmpq $0x30,%rcx - jb .Lskip4x - - andl $71303168,%eax - cmpl $4194304,%eax - je .Lskip4x - - subq $0x30,%rcx - movq $0xA040608020C0E000,%rax - movdqu 48(%rsi),%xmm14 - movdqu 64(%rsi),%xmm15 - - - - - movdqu 48(%rdx),%xmm3 - movdqu 32(%rdx),%xmm11 -.byte 102,65,15,56,0,218 -.byte 102,69,15,56,0,218 - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm11,%xmm12 -.byte 102,68,15,58,68,222,0 -.byte 102,68,15,58,68,238,17 -.byte 102,68,15,58,68,231,16 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 - xorps %xmm12,%xmm4 - - movdqu 16(%rdx),%xmm11 - movdqu 0(%rdx),%xmm8 -.byte 102,69,15,56,0,218 -.byte 102,69,15,56,0,194 - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm8,%xmm0 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 -.byte 102,69,15,58,68,238,17 -.byte 102,68,15,58,68,231,0 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jc .Ltail4x - - jmp .Lmod4_loop -.align 32 -.Lmod4_loop: -.byte 102,65,15,58,68,199,0 - xorps %xmm12,%xmm4 - movdqu 48(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,65,15,58,68,207,17 - xorps %xmm3,%xmm0 - movdqu 32(%rdx),%xmm3 - movdqa %xmm11,%xmm13 -.byte 102,68,15,58,68,199,16 - pshufd $78,%xmm11,%xmm12 - xorps %xmm5,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,65,15,56,0,218 - movups 32(%rsi),%xmm7 - xorps %xmm4,%xmm8 -.byte 102,68,15,58,68,218,0 - pshufd $78,%xmm3,%xmm4 - - pxor %xmm0,%xmm8 - movdqa %xmm3,%xmm5 - pxor %xmm1,%xmm8 - pxor %xmm3,%xmm4 - movdqa %xmm8,%xmm9 -.byte 102,68,15,58,68,234,17 - pslldq $8,%xmm8 - psrldq $8,%xmm9 - pxor %xmm8,%xmm0 - movdqa .L7_mask(%rip),%xmm8 - pxor %xmm9,%xmm1 -.byte 102,76,15,110,200 - - pand %xmm0,%xmm8 -.byte 102,69,15,56,0,200 - pxor %xmm0,%xmm9 -.byte 102,68,15,58,68,231,0 - psllq $57,%xmm9 - movdqa %xmm9,%xmm8 - pslldq $8,%xmm9 -.byte 102,15,58,68,222,0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - movdqu 0(%rdx),%xmm8 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,238,17 - xorps %xmm11,%xmm3 - movdqu 16(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,15,58,68,231,16 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 -.byte 102,69,15,56,0,194 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - - movdqa %xmm11,%xmm13 - pxor %xmm12,%xmm4 - pshufd $78,%xmm11,%xmm12 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm1 -.byte 102,69,15,58,68,238,17 - xorps %xmm11,%xmm3 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 - -.byte 102,68,15,58,68,231,0 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jnc .Lmod4_loop - -.Ltail4x: -.byte 102,65,15,58,68,199,0 -.byte 102,65,15,58,68,207,17 -.byte 102,68,15,58,68,199,16 - xorps %xmm12,%xmm4 - xorps %xmm3,%xmm0 - xorps %xmm5,%xmm1 - pxor %xmm0,%xmm1 - pxor %xmm4,%xmm8 - - pxor %xmm1,%xmm8 - pxor %xmm0,%xmm1 - - movdqa %xmm8,%xmm9 - psrldq $8,%xmm8 - pslldq $8,%xmm9 - pxor %xmm8,%xmm1 - pxor %xmm9,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - addq $0x40,%rcx - jz .Ldone - movdqu 32(%rsi),%xmm7 - subq $0x10,%rcx - jz .Lodd_tail -.Lskip4x: - - - - - - movdqu (%rdx),%xmm8 - movdqu 16(%rdx),%xmm3 -.byte 102,69,15,56,0,194 -.byte 102,65,15,56,0,218 - pxor %xmm8,%xmm0 - - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - leaq 32(%rdx),%rdx - nop - subq $0x20,%rcx - jbe .Leven_tail - nop - jmp .Lmod_loop - -.align 32 -.Lmod_loop: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - movdqu (%rdx),%xmm9 - pxor %xmm0,%xmm8 -.byte 102,69,15,56,0,202 - movdqu 16(%rdx),%xmm3 - - pxor %xmm1,%xmm8 - pxor %xmm9,%xmm1 - pxor %xmm8,%xmm4 -.byte 102,65,15,56,0,218 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm3,%xmm5 - - movdqa %xmm0,%xmm9 - movdqa %xmm0,%xmm8 - psllq $5,%xmm0 - pxor %xmm0,%xmm8 -.byte 102,15,58,68,218,0 - psllq $1,%xmm0 - pxor %xmm8,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm8 - pslldq $8,%xmm0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pshufd $78,%xmm5,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm5,%xmm4 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,234,17 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - pxor %xmm9,%xmm0 - leaq 32(%rdx),%rdx - psrlq $1,%xmm0 -.byte 102,15,58,68,231,0 - pxor %xmm1,%xmm0 - - subq $0x20,%rcx - ja .Lmod_loop - -.Leven_tail: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm1,%xmm8 - pxor %xmm8,%xmm4 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testq %rcx,%rcx - jnz .Ldone - -.Lodd_tail: - movdqu (%rdx),%xmm8 -.byte 102,69,15,56,0,194 - pxor %xmm8,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,223,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.Ldone: -.byte 102,65,15,56,0,194 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 -.size gcm_ghash_clmul,.-gcm_ghash_clmul -.globl gcm_init_avx -.type gcm_init_avx,@function -.align 32 -gcm_init_avx: - jmp .L_init_clmul -.size gcm_init_avx,.-gcm_init_avx -.globl gcm_gmult_avx -.type gcm_gmult_avx,@function -.align 32 -gcm_gmult_avx: - jmp .L_gmult_clmul -.size gcm_gmult_avx,.-gcm_gmult_avx -.globl gcm_ghash_avx -.type gcm_ghash_avx,@function -.align 32 -gcm_ghash_avx: - jmp .L_ghash_clmul -.size gcm_ghash_avx,.-gcm_ghash_avx -.align 64 -.Lbswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.L0x1c2_polynomial: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -.L7_mask: -.long 7,0,7,0 -.L7_mask_poly: -.long 7,0,450,0 -.align 64 -.type .Lrem_4bit,@object -.Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.type .Lrem_8bit,@object -.Lrem_8bit: -.value 0x0000,0x01C2,0x0384,0x0246,0x0708,0x06CA,0x048C,0x054E -.value 0x0E10,0x0FD2,0x0D94,0x0C56,0x0918,0x08DA,0x0A9C,0x0B5E -.value 0x1C20,0x1DE2,0x1FA4,0x1E66,0x1B28,0x1AEA,0x18AC,0x196E -.value 0x1230,0x13F2,0x11B4,0x1076,0x1538,0x14FA,0x16BC,0x177E -.value 0x3840,0x3982,0x3BC4,0x3A06,0x3F48,0x3E8A,0x3CCC,0x3D0E -.value 0x3650,0x3792,0x35D4,0x3416,0x3158,0x309A,0x32DC,0x331E -.value 0x2460,0x25A2,0x27E4,0x2626,0x2368,0x22AA,0x20EC,0x212E -.value 0x2A70,0x2BB2,0x29F4,0x2836,0x2D78,0x2CBA,0x2EFC,0x2F3E -.value 0x7080,0x7142,0x7304,0x72C6,0x7788,0x764A,0x740C,0x75CE -.value 0x7E90,0x7F52,0x7D14,0x7CD6,0x7998,0x785A,0x7A1C,0x7BDE -.value 0x6CA0,0x6D62,0x6F24,0x6EE6,0x6BA8,0x6A6A,0x682C,0x69EE -.value 0x62B0,0x6372,0x6134,0x60F6,0x65B8,0x647A,0x663C,0x67FE -.value 0x48C0,0x4902,0x4B44,0x4A86,0x4FC8,0x4E0A,0x4C4C,0x4D8E -.value 0x46D0,0x4712,0x4554,0x4496,0x41D8,0x401A,0x425C,0x439E -.value 0x54E0,0x5522,0x5764,0x56A6,0x53E8,0x522A,0x506C,0x51AE -.value 0x5AF0,0x5B32,0x5974,0x58B6,0x5DF8,0x5C3A,0x5E7C,0x5FBE -.value 0xE100,0xE0C2,0xE284,0xE346,0xE608,0xE7CA,0xE58C,0xE44E -.value 0xEF10,0xEED2,0xEC94,0xED56,0xE818,0xE9DA,0xEB9C,0xEA5E -.value 0xFD20,0xFCE2,0xFEA4,0xFF66,0xFA28,0xFBEA,0xF9AC,0xF86E -.value 0xF330,0xF2F2,0xF0B4,0xF176,0xF438,0xF5FA,0xF7BC,0xF67E -.value 0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A,0xDDCC,0xDC0E -.value 0xD750,0xD692,0xD4D4,0xD516,0xD058,0xD19A,0xD3DC,0xD21E -.value 0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E -.value 0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE3E -.value 0x9180,0x9042,0x9204,0x93C6,0x9688,0x974A,0x950C,0x94CE -.value 0x9F90,0x9E52,0x9C14,0x9DD6,0x9898,0x995A,0x9B1C,0x9ADE -.value 0x8DA0,0x8C62,0x8E24,0x8FE6,0x8AA8,0x8B6A,0x892C,0x88EE -.value 0x83B0,0x8272,0x8034,0x81F6,0x84B8,0x857A,0x873C,0x86FE -.value 0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A,0xAD4C,0xAC8E -.value 0xA7D0,0xA612,0xA454,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E -.value 0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE -.value 0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBEBE - -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-md5-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-md5-x86_64.s deleted file mode 100644 index 9c7110f4ef09c3..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-md5-x86_64.s +++ /dev/null @@ -1,1259 +0,0 @@ -.text -.align 16 - -.globl rc4_md5_enc -.type rc4_md5_enc,@function -rc4_md5_enc: - cmpq $0,%r9 - je .Labort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $40,%rsp -.Lbody: - movq %rcx,%r11 - movq %r9,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %r8,%r15 - xorq %rbp,%rbp - xorq %rcx,%rcx - - leaq 8(%rdi),%rdi - movb -8(%rdi),%bpl - movb -4(%rdi),%cl - - incb %bpl - subq %r13,%r14 - movl (%rdi,%rbp,4),%eax - addb %al,%cl - leaq (%rdi,%rbp,4),%rsi - shlq $6,%r12 - addq %r15,%r12 - movq %r12,16(%rsp) - - movq %r11,24(%rsp) - movl 0(%r11),%r8d - movl 4(%r11),%r9d - movl 8(%r11),%r10d - movl 12(%r11),%r11d - jmp .Loop - -.align 16 -.Loop: - movl %r8d,0(%rsp) - movl %r9d,4(%rsp) - movl %r10d,8(%rsp) - movl %r11d,%r12d - movl %r11d,12(%rsp) - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 0(%r15),%r8d - addb %dl,%al - movl 4(%rsi),%ebx - addl $3614090360,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,0(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 4(%r15),%r11d - addb %dl,%bl - movl 8(%rsi),%eax - addl $3905402710,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,4(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 8(%r15),%r10d - addb %dl,%al - movl 12(%rsi),%ebx - addl $606105819,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,8(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 12(%r15),%r9d - addb %dl,%bl - movl 16(%rsi),%eax - addl $3250441966,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,12(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 16(%r15),%r8d - addb %dl,%al - movl 20(%rsi),%ebx - addl $4118548399,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,16(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 20(%r15),%r11d - addb %dl,%bl - movl 24(%rsi),%eax - addl $1200080426,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,20(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 24(%r15),%r10d - addb %dl,%al - movl 28(%rsi),%ebx - addl $2821735955,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,24(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 28(%r15),%r9d - addb %dl,%bl - movl 32(%rsi),%eax - addl $4249261313,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,28(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 32(%r15),%r8d - addb %dl,%al - movl 36(%rsi),%ebx - addl $1770035416,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,32(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 36(%r15),%r11d - addb %dl,%bl - movl 40(%rsi),%eax - addl $2336552879,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,36(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 40(%r15),%r10d - addb %dl,%al - movl 44(%rsi),%ebx - addl $4294925233,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,40(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 44(%r15),%r9d - addb %dl,%bl - movl 48(%rsi),%eax - addl $2304563134,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,44(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 48(%r15),%r8d - addb %dl,%al - movl 52(%rsi),%ebx - addl $1804603682,%r8d - xorl %r11d,%r12d - movzbl %al,%eax - movl %edx,48(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $7,%r8d - movl %r10d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 52(%r15),%r11d - addb %dl,%bl - movl 56(%rsi),%eax - addl $4254626195,%r11d - xorl %r10d,%r12d - movzbl %bl,%ebx - movl %edx,52(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $12,%r11d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 56(%r15),%r10d - addb %dl,%al - movl 60(%rsi),%ebx - addl $2792965006,%r10d - xorl %r9d,%r12d - movzbl %al,%eax - movl %edx,56(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $17,%r10d - movl %r8d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu (%r13),%xmm2 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 60(%r15),%r9d - addb %dl,%bl - movl 64(%rsi),%eax - addl $1236535329,%r9d - xorl %r8d,%r12d - movzbl %bl,%ebx - movl %edx,60(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $22,%r9d - movl %r10d,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - psllq $8,%xmm1 - pxor %xmm0,%xmm2 - pxor %xmm1,%xmm2 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 4(%r15),%r8d - addb %dl,%al - movl 68(%rsi),%ebx - addl $4129170786,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,64(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 24(%r15),%r11d - addb %dl,%bl - movl 72(%rsi),%eax - addl $3225465664,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,68(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 44(%r15),%r10d - addb %dl,%al - movl 76(%rsi),%ebx - addl $643717713,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,72(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 0(%r15),%r9d - addb %dl,%bl - movl 80(%rsi),%eax - addl $3921069994,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,76(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 20(%r15),%r8d - addb %dl,%al - movl 84(%rsi),%ebx - addl $3593408605,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,80(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 40(%r15),%r11d - addb %dl,%bl - movl 88(%rsi),%eax - addl $38016083,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,84(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 60(%r15),%r10d - addb %dl,%al - movl 92(%rsi),%ebx - addl $3634488961,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,88(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 16(%r15),%r9d - addb %dl,%bl - movl 96(%rsi),%eax - addl $3889429448,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,92(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 36(%r15),%r8d - addb %dl,%al - movl 100(%rsi),%ebx - addl $568446438,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,96(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 56(%r15),%r11d - addb %dl,%bl - movl 104(%rsi),%eax - addl $3275163606,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,100(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 12(%r15),%r10d - addb %dl,%al - movl 108(%rsi),%ebx - addl $4107603335,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,104(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 32(%r15),%r9d - addb %dl,%bl - movl 112(%rsi),%eax - addl $1163531501,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,108(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r10d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r11d,%r12d - addl 52(%r15),%r8d - addb %dl,%al - movl 116(%rsi),%ebx - addl $2850285829,%r8d - xorl %r10d,%r12d - movzbl %al,%eax - movl %edx,112(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $5,%r8d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r10d,%r12d - addl 8(%r15),%r11d - addb %dl,%bl - movl 120(%rsi),%eax - addl $4243563512,%r11d - xorl %r9d,%r12d - movzbl %bl,%ebx - movl %edx,116(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $9,%r11d - movl %r8d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - andl %r9d,%r12d - addl 28(%r15),%r10d - addb %dl,%al - movl 124(%rsi),%ebx - addl $1735328473,%r10d - xorl %r8d,%r12d - movzbl %al,%eax - movl %edx,120(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $14,%r10d - movl %r11d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 16(%r13),%xmm3 - addb $32,%bpl - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - andl %r8d,%r12d - addl 48(%r15),%r9d - addb %dl,%bl - movl 0(%rdi,%rbp,4),%eax - addl $2368359562,%r9d - xorl %r11d,%r12d - movzbl %bl,%ebx - movl %edx,124(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $20,%r9d - movl %r11d,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movq %rcx,%rsi - xorq %rcx,%rcx - movb %sil,%cl - leaq (%rdi,%rbp,4),%rsi - psllq $8,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 20(%r15),%r8d - addb %dl,%al - movl 4(%rsi),%ebx - addl $4294588738,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,0(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 32(%r15),%r11d - addb %dl,%bl - movl 8(%rsi),%eax - addl $2272392833,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,4(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 44(%r15),%r10d - addb %dl,%al - movl 12(%rsi),%ebx - addl $1839030562,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,8(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 56(%r15),%r9d - addb %dl,%bl - movl 16(%rsi),%eax - addl $4259657740,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,12(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 4(%r15),%r8d - addb %dl,%al - movl 20(%rsi),%ebx - addl $2763975236,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,16(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 16(%r15),%r11d - addb %dl,%bl - movl 24(%rsi),%eax - addl $1272893353,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,20(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 28(%r15),%r10d - addb %dl,%al - movl 28(%rsi),%ebx - addl $4139469664,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,24(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 40(%r15),%r9d - addb %dl,%bl - movl 32(%rsi),%eax - addl $3200236656,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,28(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 52(%r15),%r8d - addb %dl,%al - movl 36(%rsi),%ebx - addl $681279174,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,32(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 0(%r15),%r11d - addb %dl,%bl - movl 40(%rsi),%eax - addl $3936430074,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,36(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 12(%r15),%r10d - addb %dl,%al - movl 44(%rsi),%ebx - addl $3572445317,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,40(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 24(%r15),%r9d - addb %dl,%bl - movl 48(%rsi),%eax - addl $76029189,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,44(%rsi) - addb %al,%cl - roll $23,%r9d - movl %r11d,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r9d,%r12d - addl 36(%r15),%r8d - addb %dl,%al - movl 52(%rsi),%ebx - addl $3654602809,%r8d - movzbl %al,%eax - addl %r12d,%r8d - movl %edx,48(%rsi) - addb %bl,%cl - roll $4,%r8d - movl %r10d,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r8d,%r12d - addl 48(%r15),%r11d - addb %dl,%bl - movl 56(%rsi),%eax - addl $3873151461,%r11d - movzbl %bl,%ebx - addl %r12d,%r11d - movl %edx,52(%rsi) - addb %al,%cl - roll $11,%r11d - movl %r9d,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %eax,(%rdi,%rcx,4) - xorl %r11d,%r12d - addl 60(%r15),%r10d - addb %dl,%al - movl 60(%rsi),%ebx - addl $530742520,%r10d - movzbl %al,%eax - addl %r12d,%r10d - movl %edx,56(%rsi) - addb %bl,%cl - roll $16,%r10d - movl %r8d,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 32(%r13),%xmm4 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %ebx,(%rdi,%rcx,4) - xorl %r10d,%r12d - addl 8(%r15),%r9d - addb %dl,%bl - movl 64(%rsi),%eax - addl $3299628645,%r9d - movzbl %bl,%ebx - addl %r12d,%r9d - movl %edx,60(%rsi) - addb %al,%cl - roll $23,%r9d - movl $-1,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - psllq $8,%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm1,%xmm4 - pxor %xmm0,%xmm0 - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 0(%r15),%r8d - addb %dl,%al - movl 68(%rsi),%ebx - addl $4096336452,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,64(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - movd (%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - pxor %xmm1,%xmm1 - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 28(%r15),%r11d - addb %dl,%bl - movl 72(%rsi),%eax - addl $1126891415,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,68(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - movd (%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 56(%r15),%r10d - addb %dl,%al - movl 76(%rsi),%ebx - addl $2878612391,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,72(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $1,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 20(%r15),%r9d - addb %dl,%bl - movl 80(%rsi),%eax - addl $4237533241,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,76(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $1,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 48(%r15),%r8d - addb %dl,%al - movl 84(%rsi),%ebx - addl $1700485571,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,80(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $2,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 12(%r15),%r11d - addb %dl,%bl - movl 88(%rsi),%eax - addl $2399980690,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,84(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $2,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 40(%r15),%r10d - addb %dl,%al - movl 92(%rsi),%ebx - addl $4293915773,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,88(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $3,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 4(%r15),%r9d - addb %dl,%bl - movl 96(%rsi),%eax - addl $2240044497,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,92(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $3,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 32(%r15),%r8d - addb %dl,%al - movl 100(%rsi),%ebx - addl $1873313359,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,96(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $4,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 60(%r15),%r11d - addb %dl,%bl - movl 104(%rsi),%eax - addl $4264355552,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,100(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $4,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 24(%r15),%r10d - addb %dl,%al - movl 108(%rsi),%ebx - addl $2734768916,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,104(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $5,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 52(%r15),%r9d - addb %dl,%bl - movl 112(%rsi),%eax - addl $1309151649,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,108(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $5,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movl (%rdi,%rcx,4),%edx - xorl %r11d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r9d,%r12d - addl 16(%r15),%r8d - addb %dl,%al - movl 116(%rsi),%ebx - addl $4149444226,%r8d - movzbl %al,%eax - xorl %r10d,%r12d - movl %edx,112(%rsi) - addl %r12d,%r8d - addb %bl,%cl - roll $6,%r8d - movl $-1,%r12d - pinsrw $6,(%rdi,%rax,4),%xmm0 - - addl %r9d,%r8d - movl (%rdi,%rcx,4),%edx - xorl %r10d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r8d,%r12d - addl 44(%r15),%r11d - addb %dl,%bl - movl 120(%rsi),%eax - addl $3174756917,%r11d - movzbl %bl,%ebx - xorl %r9d,%r12d - movl %edx,116(%rsi) - addl %r12d,%r11d - addb %al,%cl - roll $10,%r11d - movl $-1,%r12d - pinsrw $6,(%rdi,%rbx,4),%xmm1 - - addl %r8d,%r11d - movl (%rdi,%rcx,4),%edx - xorl %r9d,%r12d - movl %eax,(%rdi,%rcx,4) - orl %r11d,%r12d - addl 8(%r15),%r10d - addb %dl,%al - movl 124(%rsi),%ebx - addl $718787259,%r10d - movzbl %al,%eax - xorl %r8d,%r12d - movl %edx,120(%rsi) - addl %r12d,%r10d - addb %bl,%cl - roll $15,%r10d - movl $-1,%r12d - pinsrw $7,(%rdi,%rax,4),%xmm0 - - addl %r11d,%r10d - movdqu 48(%r13),%xmm5 - addb $32,%bpl - movl (%rdi,%rcx,4),%edx - xorl %r8d,%r12d - movl %ebx,(%rdi,%rcx,4) - orl %r10d,%r12d - addl 36(%r15),%r9d - addb %dl,%bl - movl 0(%rdi,%rbp,4),%eax - addl $3951481745,%r9d - movzbl %bl,%ebx - xorl %r11d,%r12d - movl %edx,124(%rsi) - addl %r12d,%r9d - addb %al,%cl - roll $21,%r9d - movl $-1,%r12d - pinsrw $7,(%rdi,%rbx,4),%xmm1 - - addl %r10d,%r9d - movq %rbp,%rsi - xorq %rbp,%rbp - movb %sil,%bpl - movq %rcx,%rsi - xorq %rcx,%rcx - movb %sil,%cl - leaq (%rdi,%rbp,4),%rsi - psllq $8,%xmm1 - pxor %xmm0,%xmm5 - pxor %xmm1,%xmm5 - addl 0(%rsp),%r8d - addl 4(%rsp),%r9d - addl 8(%rsp),%r10d - addl 12(%rsp),%r11d - - movdqu %xmm2,(%r14,%r13,1) - movdqu %xmm3,16(%r14,%r13,1) - movdqu %xmm4,32(%r14,%r13,1) - movdqu %xmm5,48(%r14,%r13,1) - leaq 64(%r15),%r15 - leaq 64(%r13),%r13 - cmpq 16(%rsp),%r15 - jb .Loop - - movq 24(%rsp),%r12 - subb %al,%cl - movl %r8d,0(%r12) - movl %r9d,4(%r12) - movl %r10d,8(%r12) - movl %r11d,12(%r12) - subb $1,%bpl - movl %ebp,-8(%rdi) - movl %ecx,-4(%rdi) - - movq 40(%rsp),%r15 - movq 48(%rsp),%r14 - movq 56(%rsp),%r13 - movq 64(%rsp),%r12 - movq 72(%rsp),%rbp - movq 80(%rsp),%rbx - leaq 88(%rsp),%rsp -.Lepilogue: -.Labort: - .byte 0xf3,0xc3 -.size rc4_md5_enc,.-rc4_md5_enc diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s deleted file mode 100644 index d52224afcfa806..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s +++ /dev/null @@ -1,615 +0,0 @@ -.text - - -.globl RC4 -.type RC4,@function -.align 16 -RC4: orq %rsi,%rsi - jne .Lentry - .byte 0xf3,0xc3 -.Lentry: - pushq %rbx - pushq %r12 - pushq %r13 -.Lprologue: - movq %rsi,%r11 - movq %rdx,%r12 - movq %rcx,%r13 - xorq %r10,%r10 - xorq %rcx,%rcx - - leaq 8(%rdi),%rdi - movb -8(%rdi),%r10b - movb -4(%rdi),%cl - cmpl $-1,256(%rdi) - je .LRC4_CHAR - movl OPENSSL_ia32cap_P(%rip),%r8d - xorq %rbx,%rbx - incb %r10b - subq %r10,%rbx - subq %r12,%r13 - movl (%rdi,%r10,4),%eax - testq $-16,%r11 - jz .Lloop1 - btl $30,%r8d - jc .Lintel - andq $7,%rbx - leaq 1(%r10),%rsi - jz .Loop8 - subq %rbx,%r11 -.Loop8_warmup: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %rbx - jnz .Loop8_warmup - - leaq 1(%r10),%rsi - jmp .Loop8 -.align 16 -.Loop8: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 0(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,0(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 4(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,4(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 8(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,8(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 12(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,12(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 16(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,16(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl 20(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,20(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl 24(%rdi,%rsi,4),%ebx - rorq $8,%r8 - movl %edx,24(%rdi,%r10,4) - addb %al,%dl - movb (%rdi,%rdx,4),%r8b - addb $8,%sil - addb %bl,%cl - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - movl -4(%rdi,%rsi,4),%eax - rorq $8,%r8 - movl %edx,28(%rdi,%r10,4) - addb %bl,%dl - movb (%rdi,%rdx,4),%r8b - addb $8,%r10b - rorq $8,%r8 - subq $8,%r11 - - xorq (%r12),%r8 - movq %r8,(%r12,%r13,1) - leaq 8(%r12),%r12 - - testq $-8,%r11 - jnz .Loop8 - cmpq $0,%r11 - jne .Lloop1 - jmp .Lexit - -.align 16 -.Lintel: - testq $-32,%r11 - jz .Lloop1 - andq $15,%rbx - jz .Loop16_is_hot - subq %rbx,%r11 -.Loop16_warmup: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %rbx - jnz .Loop16_warmup - - movq %rcx,%rbx - xorq %rcx,%rcx - movb %bl,%cl - -.Loop16_is_hot: - leaq (%rdi,%r10,4),%rsi - addb %al,%cl - movl (%rdi,%rcx,4),%edx - pxor %xmm0,%xmm0 - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 4(%rsi),%ebx - movzbl %al,%eax - movl %edx,0(%rsi) - addb %bl,%cl - pinsrw $0,(%rdi,%rax,4),%xmm0 - jmp .Loop16_enter -.align 16 -.Loop16: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - pxor %xmm0,%xmm2 - psllq $8,%xmm1 - pxor %xmm0,%xmm0 - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 4(%rsi),%ebx - movzbl %al,%eax - movl %edx,0(%rsi) - pxor %xmm1,%xmm2 - addb %bl,%cl - pinsrw $0,(%rdi,%rax,4),%xmm0 - movdqu %xmm2,(%r12,%r13,1) - leaq 16(%r12),%r12 -.Loop16_enter: - movl (%rdi,%rcx,4),%edx - pxor %xmm1,%xmm1 - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 8(%rsi),%eax - movzbl %bl,%ebx - movl %edx,4(%rsi) - addb %al,%cl - pinsrw $0,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 12(%rsi),%ebx - movzbl %al,%eax - movl %edx,8(%rsi) - addb %bl,%cl - pinsrw $1,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 16(%rsi),%eax - movzbl %bl,%ebx - movl %edx,12(%rsi) - addb %al,%cl - pinsrw $1,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 20(%rsi),%ebx - movzbl %al,%eax - movl %edx,16(%rsi) - addb %bl,%cl - pinsrw $2,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 24(%rsi),%eax - movzbl %bl,%ebx - movl %edx,20(%rsi) - addb %al,%cl - pinsrw $2,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 28(%rsi),%ebx - movzbl %al,%eax - movl %edx,24(%rsi) - addb %bl,%cl - pinsrw $3,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 32(%rsi),%eax - movzbl %bl,%ebx - movl %edx,28(%rsi) - addb %al,%cl - pinsrw $3,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 36(%rsi),%ebx - movzbl %al,%eax - movl %edx,32(%rsi) - addb %bl,%cl - pinsrw $4,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 40(%rsi),%eax - movzbl %bl,%ebx - movl %edx,36(%rsi) - addb %al,%cl - pinsrw $4,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 44(%rsi),%ebx - movzbl %al,%eax - movl %edx,40(%rsi) - addb %bl,%cl - pinsrw $5,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 48(%rsi),%eax - movzbl %bl,%ebx - movl %edx,44(%rsi) - addb %al,%cl - pinsrw $5,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 52(%rsi),%ebx - movzbl %al,%eax - movl %edx,48(%rsi) - addb %bl,%cl - pinsrw $6,(%rdi,%rax,4),%xmm0 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movl 56(%rsi),%eax - movzbl %bl,%ebx - movl %edx,52(%rsi) - addb %al,%cl - pinsrw $6,(%rdi,%rbx,4),%xmm1 - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - addb %dl,%al - movl 60(%rsi),%ebx - movzbl %al,%eax - movl %edx,56(%rsi) - addb %bl,%cl - pinsrw $7,(%rdi,%rax,4),%xmm0 - addb $16,%r10b - movdqu (%r12),%xmm2 - movl (%rdi,%rcx,4),%edx - movl %ebx,(%rdi,%rcx,4) - addb %dl,%bl - movzbl %bl,%ebx - movl %edx,60(%rsi) - leaq (%rdi,%r10,4),%rsi - pinsrw $7,(%rdi,%rbx,4),%xmm1 - movl (%rsi),%eax - movq %rcx,%rbx - xorq %rcx,%rcx - subq $16,%r11 - movb %bl,%cl - testq $-16,%r11 - jnz .Loop16 - - psllq $8,%xmm1 - pxor %xmm0,%xmm2 - pxor %xmm1,%xmm2 - movdqu %xmm2,(%r12,%r13,1) - leaq 16(%r12),%r12 - - cmpq $0,%r11 - jne .Lloop1 - jmp .Lexit - -.align 16 -.Lloop1: - addb %al,%cl - movl (%rdi,%rcx,4),%edx - movl %eax,(%rdi,%rcx,4) - movl %edx,(%rdi,%r10,4) - addb %dl,%al - incb %r10b - movl (%rdi,%rax,4),%edx - movl (%rdi,%r10,4),%eax - xorb (%r12),%dl - movb %dl,(%r12,%r13,1) - leaq 1(%r12),%r12 - decq %r11 - jnz .Lloop1 - jmp .Lexit - -.align 16 -.LRC4_CHAR: - addb $1,%r10b - movzbl (%rdi,%r10,1),%eax - testq $-8,%r11 - jz .Lcloop1 - jmp .Lcloop8 -.align 16 -.Lcloop8: - movl (%r12),%r8d - movl 4(%r12),%r9d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov0 - movq %rax,%rbx -.Lcmov0: - addb %al,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov1 - movq %rbx,%rax -.Lcmov1: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov2 - movq %rax,%rbx -.Lcmov2: - addb %al,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov3 - movq %rbx,%rax -.Lcmov3: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r8b - rorl $8,%r8d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov4 - movq %rax,%rbx -.Lcmov4: - addb %al,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov5 - movq %rbx,%rax -.Lcmov5: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %al,%cl - leaq 1(%r10),%rsi - movzbl (%rdi,%rcx,1),%edx - movzbl %sil,%esi - movzbl (%rdi,%rsi,1),%ebx - movb %al,(%rdi,%rcx,1) - cmpq %rsi,%rcx - movb %dl,(%rdi,%r10,1) - jne .Lcmov6 - movq %rax,%rbx -.Lcmov6: - addb %al,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - addb %bl,%cl - leaq 1(%rsi),%r10 - movzbl (%rdi,%rcx,1),%edx - movzbl %r10b,%r10d - movzbl (%rdi,%r10,1),%eax - movb %bl,(%rdi,%rcx,1) - cmpq %r10,%rcx - movb %dl,(%rdi,%rsi,1) - jne .Lcmov7 - movq %rbx,%rax -.Lcmov7: - addb %bl,%dl - xorb (%rdi,%rdx,1),%r9b - rorl $8,%r9d - leaq -8(%r11),%r11 - movl %r8d,(%r13) - leaq 8(%r12),%r12 - movl %r9d,4(%r13) - leaq 8(%r13),%r13 - - testq $-8,%r11 - jnz .Lcloop8 - cmpq $0,%r11 - jne .Lcloop1 - jmp .Lexit -.align 16 -.Lcloop1: - addb %al,%cl - movzbl %cl,%ecx - movzbl (%rdi,%rcx,1),%edx - movb %al,(%rdi,%rcx,1) - movb %dl,(%rdi,%r10,1) - addb %al,%dl - addb $1,%r10b - movzbl %dl,%edx - movzbl %r10b,%r10d - movzbl (%rdi,%rdx,1),%edx - movzbl (%rdi,%r10,1),%eax - xorb (%r12),%dl - leaq 1(%r12),%r12 - movb %dl,(%r13) - leaq 1(%r13),%r13 - subq $1,%r11 - jnz .Lcloop1 - jmp .Lexit - -.align 16 -.Lexit: - subb $1,%r10b - movl %r10d,-8(%rdi) - movl %ecx,-4(%rdi) - - movq (%rsp),%r13 - movq 8(%rsp),%r12 - movq 16(%rsp),%rbx - addq $24,%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size RC4,.-RC4 -.globl private_RC4_set_key -.type private_RC4_set_key,@function -.align 16 -private_RC4_set_key: - leaq 8(%rdi),%rdi - leaq (%rdx,%rsi,1),%rdx - negq %rsi - movq %rsi,%rcx - xorl %eax,%eax - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - - movl OPENSSL_ia32cap_P(%rip),%r8d - btl $20,%r8d - jc .Lc1stloop - jmp .Lw1stloop - -.align 16 -.Lw1stloop: - movl %eax,(%rdi,%rax,4) - addb $1,%al - jnc .Lw1stloop - - xorq %r9,%r9 - xorq %r8,%r8 -.align 16 -.Lw2ndloop: - movl (%rdi,%r9,4),%r10d - addb (%rdx,%rsi,1),%r8b - addb %r10b,%r8b - addq $1,%rsi - movl (%rdi,%r8,4),%r11d - cmovzq %rcx,%rsi - movl %r10d,(%rdi,%r8,4) - movl %r11d,(%rdi,%r9,4) - addb $1,%r9b - jnc .Lw2ndloop - jmp .Lexit_key - -.align 16 -.Lc1stloop: - movb %al,(%rdi,%rax,1) - addb $1,%al - jnc .Lc1stloop - - xorq %r9,%r9 - xorq %r8,%r8 -.align 16 -.Lc2ndloop: - movb (%rdi,%r9,1),%r10b - addb (%rdx,%rsi,1),%r8b - addb %r10b,%r8b - addq $1,%rsi - movb (%rdi,%r8,1),%r11b - jnz .Lcnowrap - movq %rcx,%rsi -.Lcnowrap: - movb %r10b,(%rdi,%r8,1) - movb %r11b,(%rdi,%r9,1) - addb $1,%r9b - jnc .Lc2ndloop - movl $-1,256(%rdi) - -.align 16 -.Lexit_key: - xorl %eax,%eax - movl %eax,-8(%rdi) - movl %eax,-4(%rdi) - .byte 0xf3,0xc3 -.size private_RC4_set_key,.-private_RC4_set_key - -.globl RC4_options -.type RC4_options,@function -.align 16 -RC4_options: - leaq .Lopts(%rip),%rax - movl OPENSSL_ia32cap_P(%rip),%edx - btl $20,%edx - jc .L8xchar - btl $30,%edx - jnc .Ldone - addq $25,%rax - .byte 0xf3,0xc3 -.L8xchar: - addq $12,%rax -.Ldone: - .byte 0xf3,0xc3 -.align 64 -.Lopts: -.byte 114,99,52,40,56,120,44,105,110,116,41,0 -.byte 114,99,52,40,56,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,49,54,120,44,105,110,116,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.size RC4_options,.-RC4_options diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-mb-x86_64.s deleted file mode 100644 index dd4921b1398aff..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-mb-x86_64.s +++ /dev/null @@ -1,2934 +0,0 @@ -.text - - - -.globl sha1_multi_block -.type sha1_multi_block,@function -.align 32 -sha1_multi_block: - movq OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - -.Loop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone - - movdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - movdqu 32(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 96(%rdi),%xmm13 - movdqu 128(%rdi),%xmm14 - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - jmp .Loop - -.align 32 -.Loop: - movd (%r8),%xmm0 - leaq 64(%r8),%r8 - movd (%r9),%xmm2 - leaq 64(%r9),%r9 - movd (%r10),%xmm3 - leaq 64(%r10),%r10 - movd (%r11),%xmm4 - leaq 64(%r11),%r11 - punpckldq %xmm3,%xmm0 - movd -60(%r8),%xmm1 - punpckldq %xmm4,%xmm2 - movd -60(%r9),%xmm9 - punpckldq %xmm2,%xmm0 - movd -60(%r10),%xmm8 -.byte 102,15,56,0,197 - movd -60(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,0-128(%rax) - paddd %xmm0,%xmm14 - movd -56(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -56(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -56(%r10),%xmm8 - por %xmm7,%xmm11 - movd -56(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,16-128(%rax) - paddd %xmm1,%xmm13 - movd -52(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -52(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -52(%r10),%xmm8 - por %xmm7,%xmm10 - movd -52(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,32-128(%rax) - paddd %xmm2,%xmm12 - movd -48(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -48(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -48(%r10),%xmm8 - por %xmm7,%xmm14 - movd -48(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,48-128(%rax) - paddd %xmm3,%xmm11 - movd -44(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -44(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -44(%r10),%xmm8 - por %xmm7,%xmm13 - movd -44(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,64-128(%rax) - paddd %xmm4,%xmm10 - movd -40(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -40(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -40(%r10),%xmm8 - por %xmm7,%xmm12 - movd -40(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,80-128(%rax) - paddd %xmm0,%xmm14 - movd -36(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -36(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -36(%r10),%xmm8 - por %xmm7,%xmm11 - movd -36(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,96-128(%rax) - paddd %xmm1,%xmm13 - movd -32(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -32(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -32(%r10),%xmm8 - por %xmm7,%xmm10 - movd -32(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,112-128(%rax) - paddd %xmm2,%xmm12 - movd -28(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -28(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -28(%r10),%xmm8 - por %xmm7,%xmm14 - movd -28(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,128-128(%rax) - paddd %xmm3,%xmm11 - movd -24(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -24(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -24(%r10),%xmm8 - por %xmm7,%xmm13 - movd -24(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,144-128(%rax) - paddd %xmm4,%xmm10 - movd -20(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -20(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -20(%r10),%xmm8 - por %xmm7,%xmm12 - movd -20(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,160-128(%rax) - paddd %xmm0,%xmm14 - movd -16(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -16(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -16(%r10),%xmm8 - por %xmm7,%xmm11 - movd -16(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,176-128(%rax) - paddd %xmm1,%xmm13 - movd -12(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -12(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -12(%r10),%xmm8 - por %xmm7,%xmm10 - movd -12(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,192-128(%rax) - paddd %xmm2,%xmm12 - movd -8(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -8(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -8(%r10),%xmm8 - por %xmm7,%xmm14 - movd -8(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,208-128(%rax) - paddd %xmm3,%xmm11 - movd -4(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -4(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -4(%r10),%xmm8 - por %xmm7,%xmm13 - movdqa 0-128(%rax),%xmm1 - movd -4(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - prefetcht0 63(%r8) - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,224-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - prefetcht0 63(%r9) - - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - prefetcht0 63(%r10) - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - prefetcht0 63(%r11) - por %xmm7,%xmm12 - movdqa 16-128(%rax),%xmm2 - pxor %xmm3,%xmm1 - movdqa 32-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - pxor 128-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - movdqa %xmm11,%xmm7 - pslld $5,%xmm8 - pxor %xmm3,%xmm1 - movdqa %xmm11,%xmm6 - pandn %xmm13,%xmm7 - movdqa %xmm1,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm10,%xmm9 - psrld $31,%xmm5 - paddd %xmm1,%xmm1 - - movdqa %xmm0,240-128(%rax) - paddd %xmm0,%xmm14 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm11,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 48-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - pxor 144-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - movdqa %xmm10,%xmm7 - pslld $5,%xmm8 - pxor %xmm4,%xmm2 - movdqa %xmm10,%xmm6 - pandn %xmm12,%xmm7 - movdqa %xmm2,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm14,%xmm9 - psrld $31,%xmm5 - paddd %xmm2,%xmm2 - - movdqa %xmm1,0-128(%rax) - paddd %xmm1,%xmm13 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm10,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 64-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - pxor 160-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - movdqa %xmm14,%xmm7 - pslld $5,%xmm8 - pxor %xmm0,%xmm3 - movdqa %xmm14,%xmm6 - pandn %xmm11,%xmm7 - movdqa %xmm3,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm13,%xmm9 - psrld $31,%xmm5 - paddd %xmm3,%xmm3 - - movdqa %xmm2,16-128(%rax) - paddd %xmm2,%xmm12 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm14,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 80-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - pxor 176-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - movdqa %xmm13,%xmm7 - pslld $5,%xmm8 - pxor %xmm1,%xmm4 - movdqa %xmm13,%xmm6 - pandn %xmm10,%xmm7 - movdqa %xmm4,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm12,%xmm9 - psrld $31,%xmm5 - paddd %xmm4,%xmm4 - - movdqa %xmm3,32-128(%rax) - paddd %xmm3,%xmm11 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm13,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 96-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - pxor 192-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - movdqa %xmm12,%xmm7 - pslld $5,%xmm8 - pxor %xmm2,%xmm0 - movdqa %xmm12,%xmm6 - pandn %xmm14,%xmm7 - movdqa %xmm0,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm11,%xmm9 - psrld $31,%xmm5 - paddd %xmm0,%xmm0 - - movdqa %xmm4,48-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm12,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 0(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 112-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 208-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,64-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 128-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 224-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,80-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 144-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 240-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,96-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 160-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 0-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,112-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 176-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 16-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,128-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 192-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 32-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,144-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 208-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 48-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,160-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 224-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 64-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,176-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 240-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 80-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,192-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 0-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 96-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,208-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 16-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 112-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,224-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 32-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 128-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,240-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 48-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 144-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,0-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 64-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 160-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,16-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 80-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 176-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,32-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 96-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 192-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,48-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 112-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 208-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,64-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 128-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 224-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,80-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 144-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 240-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,96-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 160-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 0-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,112-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 32(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 176-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 16-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,128-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 192-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 32-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,144-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 208-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 48-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,160-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 224-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 64-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,176-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 240-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 80-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,192-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 0-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 96-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,208-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 16-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 112-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,224-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 32-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 128-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,240-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 48-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 144-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,0-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 64-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 160-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,16-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 80-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 176-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,32-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 96-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 192-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,48-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 112-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 208-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,64-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 128-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 224-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,80-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 144-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 240-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,96-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 160-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 0-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,112-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 176-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 16-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,128-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 192-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 32-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,144-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 208-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 48-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,160-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 224-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 64-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,176-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 64(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 240-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 80-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,192-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 0-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 96-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,208-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 16-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 112-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,224-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 32-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 128-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,240-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 48-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 144-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,0-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 64-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 160-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,16-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 80-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 176-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,32-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 96-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 192-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,48-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 112-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 208-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,64-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 128-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 224-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,80-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 144-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 240-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,96-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 160-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 0-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,112-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 176-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 16-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 192-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 32-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 208-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 48-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 224-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 64-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 240-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 80-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 0-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 96-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 16-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 112-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - movdqa %xmm12,%xmm7 - pxor %xmm13,%xmm6 - - pslld $30,%xmm7 - por %xmm9,%xmm8 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm7,%xmm12 - movdqa (%rbx),%xmm0 - movl $1,%ecx - cmpl 0(%rbx),%ecx - pxor %xmm8,%xmm8 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm0,%xmm1 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm8,%xmm1 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm1,%xmm0 - cmovgeq %rbp,%r11 - - movdqu 0(%rdi),%xmm6 - pand %xmm1,%xmm10 - movdqu 32(%rdi),%xmm7 - pand %xmm1,%xmm11 - paddd %xmm6,%xmm10 - movdqu 64(%rdi),%xmm8 - pand %xmm1,%xmm12 - paddd %xmm7,%xmm11 - movdqu 96(%rdi),%xmm9 - pand %xmm1,%xmm13 - paddd %xmm8,%xmm12 - movdqu 128(%rdi),%xmm5 - pand %xmm1,%xmm14 - movdqu %xmm10,0(%rdi) - paddd %xmm9,%xmm13 - movdqu %xmm11,32(%rdi) - paddd %xmm5,%xmm14 - movdqu %xmm12,64(%rdi) - movdqu %xmm13,96(%rdi) - movdqu %xmm14,128(%rdi) - - movdqa %xmm0,(%rbx) - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - decl %edx - jnz .Loop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande - -.Ldone: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha1_multi_block,.-sha1_multi_block -.type sha1_multi_block_shaext,@function -.align 32 -sha1_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 64(%rdi),%rdi - movq %rax,272(%rsp) -.Lbody_shaext: - leaq 256(%rsp),%rbx - movdqa K_XX_XX+128(%rip),%xmm3 - -.Loop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz .Ldone_shaext - - movq 0-64(%rdi),%xmm0 - movq 32-64(%rdi),%xmm4 - movq 64-64(%rdi),%xmm5 - movq 96-64(%rdi),%xmm6 - movq 128-64(%rdi),%xmm7 - - punpckldq %xmm4,%xmm0 - punpckldq %xmm6,%xmm5 - - movdqa %xmm0,%xmm8 - punpcklqdq %xmm5,%xmm0 - punpckhqdq %xmm5,%xmm8 - - pshufd $63,%xmm7,%xmm1 - pshufd $127,%xmm7,%xmm9 - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - jmp .Loop_shaext - -.align 32 -.Loop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm11 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm12 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm13 -.byte 102,68,15,56,0,219 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 -.byte 102,15,56,0,235 - movdqu 48(%r9),%xmm14 - leaq 64(%r9),%r9 -.byte 102,68,15,56,0,227 - - movdqa %xmm1,80(%rsp) - paddd %xmm4,%xmm1 - movdqa %xmm9,112(%rsp) - paddd %xmm11,%xmm9 - movdqa %xmm0,64(%rsp) - movdqa %xmm0,%xmm2 - movdqa %xmm8,96(%rsp) - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 102,15,56,0,243 - prefetcht0 127(%r8) -.byte 15,56,201,229 -.byte 102,68,15,56,0,235 - prefetcht0 127(%r9) -.byte 69,15,56,201,220 - -.byte 102,15,56,0,251 - movdqa %xmm0,%xmm1 -.byte 102,68,15,56,0,243 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,206 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,205 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,215 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,204 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,215 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,204 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,213 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,204 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,213 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,206 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,213 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - - movl $1,%ecx - pxor %xmm4,%xmm4 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,206 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - movq (%rbx),%xmm6 - - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,215 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,214 - - pshufd $0x00,%xmm6,%xmm11 - pshufd $0x55,%xmm6,%xmm12 - movdqa %xmm6,%xmm7 - pcmpgtd %xmm4,%xmm11 - pcmpgtd %xmm4,%xmm12 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,204 - - pcmpgtd %xmm4,%xmm7 - pand %xmm11,%xmm0 - pand %xmm11,%xmm1 - pand %xmm12,%xmm8 - pand %xmm12,%xmm9 - paddd %xmm7,%xmm6 - - paddd 64(%rsp),%xmm0 - paddd 80(%rsp),%xmm1 - paddd 96(%rsp),%xmm8 - paddd 112(%rsp),%xmm9 - - movq %xmm6,(%rbx) - decl %edx - jnz .Loop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - - movdqa %xmm0,%xmm6 - punpckldq %xmm8,%xmm0 - punpckhdq %xmm8,%xmm6 - punpckhdq %xmm9,%xmm1 - movq %xmm0,0-64(%rdi) - psrldq $8,%xmm0 - movq %xmm6,64-64(%rdi) - psrldq $8,%xmm6 - movq %xmm0,32-64(%rdi) - psrldq $8,%xmm1 - movq %xmm6,96-64(%rdi) - movq %xmm1,128-64(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz .Loop_grande_shaext - -.Ldone_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_shaext: - .byte 0xf3,0xc3 -.size sha1_multi_block_shaext,.-sha1_multi_block_shaext - -.align 256 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -K_XX_XX: -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-x86_64.s deleted file mode 100644 index d2fbc15044d213..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-x86_64.s +++ /dev/null @@ -1,2591 +0,0 @@ -.text - - -.globl sha1_block_data_order -.type sha1_block_data_order,@function -.align 16 -sha1_block_data_order: - movl OPENSSL_ia32cap_P+0(%rip),%r9d - movl OPENSSL_ia32cap_P+4(%rip),%r8d - movl OPENSSL_ia32cap_P+8(%rip),%r10d - testl $512,%r8d - jz .Lialu - testl $536870912,%r10d - jnz _shaext_shortcut - jmp _ssse3_shortcut - -.align 16 -.Lialu: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - movq %rdi,%r8 - subq $72,%rsp - movq %rsi,%r9 - andq $-64,%rsp - movq %rdx,%r10 - movq %rax,64(%rsp) -.Lprologue: - - movl 0(%r8),%esi - movl 4(%r8),%edi - movl 8(%r8),%r11d - movl 12(%r8),%r12d - movl 16(%r8),%r13d - jmp .Lloop - -.align 16 -.Lloop: - movl 0(%r9),%edx - bswapl %edx - movl 4(%r9),%ebp - movl %r12d,%eax - movl %edx,0(%rsp) - movl %esi,%ecx - bswapl %ebp - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 8(%r9),%r14d - movl %r11d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ecx - bswapl %r14d - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 12(%r9),%edx - movl %edi,%eax - movl %r14d,8(%rsp) - movl %r12d,%ecx - bswapl %edx - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 16(%r9),%ebp - movl %esi,%eax - movl %edx,12(%rsp) - movl %r11d,%ecx - bswapl %ebp - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 20(%r9),%r14d - movl %r13d,%eax - movl %ebp,16(%rsp) - movl %edi,%ecx - bswapl %r14d - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 24(%r9),%edx - movl %r12d,%eax - movl %r14d,20(%rsp) - movl %esi,%ecx - bswapl %edx - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%r14,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 28(%r9),%ebp - movl %r11d,%eax - movl %edx,24(%rsp) - movl %r13d,%ecx - bswapl %ebp - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rdx,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 32(%r9),%r14d - movl %edi,%eax - movl %ebp,28(%rsp) - movl %r12d,%ecx - bswapl %r14d - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rbp,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 36(%r9),%edx - movl %esi,%eax - movl %r14d,32(%rsp) - movl %r11d,%ecx - bswapl %edx - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%r14,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 40(%r9),%ebp - movl %r13d,%eax - movl %edx,36(%rsp) - movl %edi,%ecx - bswapl %ebp - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rdx,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 44(%r9),%r14d - movl %r12d,%eax - movl %ebp,40(%rsp) - movl %esi,%ecx - bswapl %r14d - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rbp,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 48(%r9),%edx - movl %r11d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ecx - bswapl %edx - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%r14,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 52(%r9),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %r12d,%ecx - bswapl %ebp - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rdx,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 56(%r9),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r11d,%ecx - bswapl %r14d - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rbp,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 60(%r9),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %edi,%ecx - bswapl %edx - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%r14,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %esi,%ecx - xorl 8(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - roll $30,%edi - xorl %r12d,%eax - addl %ecx,%r13d - roll $1,%ebp - addl %eax,%r13d - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %r13d,%ecx - xorl 12(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - roll $30,%esi - xorl %r11d,%eax - addl %ecx,%r12d - roll $1,%r14d - addl %eax,%r12d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %r12d,%ecx - xorl 16(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - roll $30,%r13d - xorl %edi,%eax - addl %ecx,%r11d - roll $1,%edx - addl %eax,%r11d - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r11d,%ecx - xorl 20(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - roll $30,%r12d - xorl %esi,%eax - addl %ecx,%edi - roll $1,%ebp - addl %eax,%edi - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %edi,%ecx - xorl 24(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - roll $30,%r11d - xorl %r13d,%eax - addl %ecx,%esi - roll $1,%r14d - addl %eax,%esi - xorl 20(%rsp),%edx - movl %edi,%eax - movl %r14d,16(%rsp) - movl %esi,%ecx - xorl 28(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 24(%rsp),%ebp - movl %esi,%eax - movl %edx,20(%rsp) - movl %r13d,%ecx - xorl 32(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %r13d,%eax - movl %ebp,24(%rsp) - movl %r12d,%ecx - xorl 36(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %r12d,%eax - movl %r14d,28(%rsp) - movl %r11d,%ecx - xorl 40(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r11d,%eax - movl %edx,32(%rsp) - movl %edi,%ecx - xorl 44(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %edi,%eax - movl %ebp,36(%rsp) - movl %esi,%ecx - xorl 48(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal 1859775393(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 44(%rsp),%edx - movl %esi,%eax - movl %r14d,40(%rsp) - movl %r13d,%ecx - xorl 52(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal 1859775393(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 48(%rsp),%ebp - movl %r13d,%eax - movl %edx,44(%rsp) - movl %r12d,%ecx - xorl 56(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal 1859775393(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %r12d,%eax - movl %ebp,48(%rsp) - movl %r11d,%ecx - xorl 60(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal 1859775393(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r11d,%eax - movl %r14d,52(%rsp) - movl %edi,%ecx - xorl 0(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal 1859775393(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 60(%rsp),%ebp - movl %edi,%eax - movl %edx,56(%rsp) - movl %esi,%ecx - xorl 4(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal 1859775393(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 0(%rsp),%r14d - movl %esi,%eax - movl %ebp,60(%rsp) - movl %r13d,%ecx - xorl 8(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%r14d - leal 1859775393(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 4(%rsp),%edx - movl %r13d,%eax - movl %r14d,0(%rsp) - movl %r12d,%ecx - xorl 12(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%edx - leal 1859775393(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 8(%rsp),%ebp - movl %r12d,%eax - movl %edx,4(%rsp) - movl %r11d,%ecx - xorl 16(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%ebp - leal 1859775393(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 12(%rsp),%r14d - movl %r11d,%eax - movl %ebp,8(%rsp) - movl %edi,%ecx - xorl 20(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%r14d - leal 1859775393(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 16(%rsp),%edx - movl %edi,%eax - movl %r14d,12(%rsp) - movl %esi,%ecx - xorl 24(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 20(%rsp),%ebp - movl %esi,%eax - movl %edx,16(%rsp) - movl %r13d,%ecx - xorl 28(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 52(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 24(%rsp),%r14d - movl %r13d,%eax - movl %ebp,20(%rsp) - movl %r12d,%ecx - xorl 32(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 56(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 28(%rsp),%edx - movl %r12d,%eax - movl %r14d,24(%rsp) - movl %r11d,%ecx - xorl 36(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 60(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 32(%rsp),%ebp - movl %r11d,%eax - movl %edx,28(%rsp) - movl %edi,%ecx - xorl 40(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 0(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 36(%rsp),%r14d - movl %r12d,%eax - movl %ebp,32(%rsp) - movl %r12d,%ebx - xorl 44(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 4(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 40(%rsp),%edx - movl %r11d,%eax - movl %r14d,36(%rsp) - movl %r11d,%ebx - xorl 48(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 8(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 44(%rsp),%ebp - movl %edi,%eax - movl %edx,40(%rsp) - movl %edi,%ebx - xorl 52(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 12(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 48(%rsp),%r14d - movl %esi,%eax - movl %ebp,44(%rsp) - movl %esi,%ebx - xorl 56(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 16(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 52(%rsp),%edx - movl %r13d,%eax - movl %r14d,48(%rsp) - movl %r13d,%ebx - xorl 60(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 20(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 56(%rsp),%ebp - movl %r12d,%eax - movl %edx,52(%rsp) - movl %r12d,%ebx - xorl 0(%rsp),%ebp - andl %r11d,%eax - movl %esi,%ecx - xorl 24(%rsp),%ebp - leal -1894007588(%rdx,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%ebp - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 60(%rsp),%r14d - movl %r11d,%eax - movl %ebp,56(%rsp) - movl %r11d,%ebx - xorl 4(%rsp),%r14d - andl %edi,%eax - movl %r13d,%ecx - xorl 28(%rsp),%r14d - leal -1894007588(%rbp,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%r14d - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 0(%rsp),%edx - movl %edi,%eax - movl %r14d,60(%rsp) - movl %edi,%ebx - xorl 8(%rsp),%edx - andl %esi,%eax - movl %r12d,%ecx - xorl 32(%rsp),%edx - leal -1894007588(%r14,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%edx - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 4(%rsp),%ebp - movl %esi,%eax - movl %edx,0(%rsp) - movl %esi,%ebx - xorl 12(%rsp),%ebp - andl %r13d,%eax - movl %r11d,%ecx - xorl 36(%rsp),%ebp - leal -1894007588(%rdx,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%ebp - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 8(%rsp),%r14d - movl %r13d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ebx - xorl 16(%rsp),%r14d - andl %r12d,%eax - movl %edi,%ecx - xorl 40(%rsp),%r14d - leal -1894007588(%rbp,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%r14d - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 12(%rsp),%edx - movl %r12d,%eax - movl %r14d,8(%rsp) - movl %r12d,%ebx - xorl 20(%rsp),%edx - andl %r11d,%eax - movl %esi,%ecx - xorl 44(%rsp),%edx - leal -1894007588(%r14,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%edx - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 16(%rsp),%ebp - movl %r11d,%eax - movl %edx,12(%rsp) - movl %r11d,%ebx - xorl 24(%rsp),%ebp - andl %edi,%eax - movl %r13d,%ecx - xorl 48(%rsp),%ebp - leal -1894007588(%rdx,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%ebp - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 20(%rsp),%r14d - movl %edi,%eax - movl %ebp,16(%rsp) - movl %edi,%ebx - xorl 28(%rsp),%r14d - andl %esi,%eax - movl %r12d,%ecx - xorl 52(%rsp),%r14d - leal -1894007588(%rbp,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%r14d - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 24(%rsp),%edx - movl %esi,%eax - movl %r14d,20(%rsp) - movl %esi,%ebx - xorl 32(%rsp),%edx - andl %r13d,%eax - movl %r11d,%ecx - xorl 56(%rsp),%edx - leal -1894007588(%r14,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%edx - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 28(%rsp),%ebp - movl %r13d,%eax - movl %edx,24(%rsp) - movl %r13d,%ebx - xorl 36(%rsp),%ebp - andl %r12d,%eax - movl %edi,%ecx - xorl 60(%rsp),%ebp - leal -1894007588(%rdx,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%ebp - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 32(%rsp),%r14d - movl %r12d,%eax - movl %ebp,28(%rsp) - movl %r12d,%ebx - xorl 40(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 0(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 36(%rsp),%edx - movl %r11d,%eax - movl %r14d,32(%rsp) - movl %r11d,%ebx - xorl 44(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 4(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 40(%rsp),%ebp - movl %edi,%eax - movl %edx,36(%rsp) - movl %edi,%ebx - xorl 48(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 8(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 44(%rsp),%r14d - movl %esi,%eax - movl %ebp,40(%rsp) - movl %esi,%ebx - xorl 52(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 12(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 48(%rsp),%edx - movl %r13d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ebx - xorl 56(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 16(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 52(%rsp),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %esi,%ecx - xorl 60(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 20(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 56(%rsp),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r13d,%ecx - xorl 0(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 24(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 60(%rsp),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %r12d,%ecx - xorl 4(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 28(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %r11d,%ecx - xorl 8(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %edi,%ecx - xorl 12(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - leal -899497514(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %esi,%ecx - xorl 16(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - leal -899497514(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r13d,%ecx - xorl 20(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - leal -899497514(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %r12d,%ecx - xorl 24(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - leal -899497514(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 20(%rsp),%edx - movl %r12d,%eax - movl %r14d,16(%rsp) - movl %r11d,%ecx - xorl 28(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal -899497514(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 24(%rsp),%ebp - movl %r11d,%eax - movl %edx,20(%rsp) - movl %edi,%ecx - xorl 32(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal -899497514(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %edi,%eax - movl %ebp,24(%rsp) - movl %esi,%ecx - xorl 36(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal -899497514(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %esi,%eax - movl %r14d,28(%rsp) - movl %r13d,%ecx - xorl 40(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal -899497514(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r13d,%eax - - movl %r12d,%ecx - xorl 44(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal -899497514(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %r12d,%eax - - movl %r11d,%ecx - xorl 48(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal -899497514(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 44(%rsp),%edx - movl %r11d,%eax - - movl %edi,%ecx - xorl 52(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal -899497514(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 48(%rsp),%ebp - movl %edi,%eax - - movl %esi,%ecx - xorl 56(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %esi,%eax - - movl %r13d,%ecx - xorl 60(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r13d,%eax - - movl %r12d,%ecx - xorl 0(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 60(%rsp),%ebp - movl %r12d,%eax - - movl %r11d,%ecx - xorl 4(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - movl %r11d,%eax - movl %edi,%ecx - xorl %r13d,%eax - leal -899497514(%rbp,%rsi,1),%esi - roll $5,%ecx - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - addl 0(%r8),%esi - addl 4(%r8),%edi - addl 8(%r8),%r11d - addl 12(%r8),%r12d - addl 16(%r8),%r13d - movl %esi,0(%r8) - movl %edi,4(%r8) - movl %r11d,8(%r8) - movl %r12d,12(%r8) - movl %r13d,16(%r8) - - subq $1,%r10 - leaq 64(%r9),%r9 - jnz .Lloop - - movq 64(%rsp),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha1_block_data_order,.-sha1_block_data_order -.type sha1_block_data_order_shaext,@function -.align 32 -sha1_block_data_order_shaext: -_shaext_shortcut: - movdqu (%rdi),%xmm0 - movd 16(%rdi),%xmm1 - movdqa K_XX_XX+160(%rip),%xmm3 - - movdqu (%rsi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%rsi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - movdqa %xmm1,%xmm9 -.byte 102,15,56,0,251 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - decq %rdx - leaq 64(%rsi),%r8 - paddd %xmm4,%xmm1 - cmovneq %r8,%rsi - movdqa %xmm0,%xmm8 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%rsi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%rsi),%xmm5 -.byte 102,15,56,0,227 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,235 - - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,243 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 65,15,56,200,201 -.byte 102,15,56,0,251 - - paddd %xmm8,%xmm0 - movdqa %xmm1,%xmm9 - - jnz .Loop_shaext - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%rdi) - movd %xmm1,16(%rdi) - .byte 0xf3,0xc3 -.size sha1_block_data_order_shaext,.-sha1_block_data_order_shaext -.type sha1_block_data_order_ssse3,@function -.align 16 -sha1_block_data_order_ssse3: -_ssse3_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - addq $64,%r9 - paddd %xmm9,%xmm0 -.byte 102,15,56,0,222 - paddd %xmm9,%xmm1 - paddd %xmm9,%xmm2 - movdqa %xmm0,0(%rsp) - psubd %xmm9,%xmm0 - movdqa %xmm1,16(%rsp) - psubd %xmm9,%xmm1 - movdqa %xmm2,32(%rsp) - psubd %xmm9,%xmm2 - jmp .Loop_ssse3 -.align 16 -.Loop_ssse3: - rorl $2,%ebx - pshufd $238,%xmm0,%xmm4 - xorl %edx,%esi - movdqa %xmm3,%xmm8 - paddd %xmm3,%xmm9 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm1,%xmm4 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm2,%xmm8 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm8,%xmm4 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - movdqa %xmm4,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm4,%xmm8 - xorl %ebx,%esi - pslldq $12,%xmm10 - paddd %xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm8 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm9 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm10 - addl %edx,%ecx - rorl $7,%edx - por %xmm8,%xmm4 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - pslld $2,%xmm9 - pxor %xmm10,%xmm4 - xorl %ebp,%edx - movdqa -64(%r11),%xmm10 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm9,%xmm4 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm1,%xmm5 - xorl %ebp,%esi - movdqa %xmm4,%xmm9 - paddd %xmm4,%xmm10 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm2,%xmm5 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm9 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm9,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm10,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm5,%xmm9 - xorl %ecx,%esi - pslldq $12,%xmm8 - paddd %xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm10 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm8 - addl %ebp,%edx - rorl $7,%ebp - por %xmm9,%xmm5 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm10 - pxor %xmm8,%xmm5 - xorl %eax,%ebp - movdqa -32(%r11),%xmm8 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm10,%xmm5 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm2,%xmm6 - xorl %eax,%esi - movdqa %xmm5,%xmm10 - paddd %xmm5,%xmm8 - movl %ecx,%edi - addl 32(%rsp),%ebx - punpcklqdq %xmm3,%xmm6 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm10 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm10 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm10,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm8,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm9 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm10 - xorl %edx,%esi - pslldq $12,%xmm9 - paddd %xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm10 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm9,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm9 - addl %eax,%ebp - rorl $7,%eax - por %xmm10,%xmm6 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm8 - pxor %xmm9,%xmm6 - xorl %ebx,%eax - movdqa -32(%r11),%xmm9 - roll $5,%ebp - addl %edi,%edx - andl %eax,%esi - pxor %xmm8,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%esi - movdqa %xmm6,%xmm8 - paddd %xmm6,%xmm9 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm4,%xmm7 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm8 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - pxor %xmm8,%xmm7 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm10 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm8 - xorl %ebp,%esi - pslldq $12,%xmm10 - paddd %xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm8 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm10,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm10 - addl %ebx,%eax - rorl $7,%ebx - por %xmm8,%xmm7 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm9 - pxor %xmm10,%xmm7 - xorl %ecx,%ebx - movdqa -32(%r11),%xmm10 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm9,%xmm7 - pshufd $238,%xmm6,%xmm9 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm4,%xmm0 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm7,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%edi - movdqa %xmm10,%xmm8 - xorl %ebx,%eax - paddd %xmm7,%xmm10 - addl %ebp,%edx - pxor %xmm9,%xmm0 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm0,%xmm9 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm10,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm0 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm9 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - por %xmm9,%xmm0 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm7,%xmm10 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm5,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm0,%xmm10 - movl %eax,%edi - roll $5,%eax - pxor %xmm2,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebx - paddd %xmm0,%xmm8 - addl %eax,%ebp - pxor %xmm10,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm1,%xmm10 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm8,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm1 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm10 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm10,%xmm1 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm0,%xmm8 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm6,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm1,%xmm8 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm3,%xmm2 - addl %esi,%eax - xorl %edx,%edi - movdqa 0(%r11),%xmm10 - rorl $7,%ecx - paddd %xmm1,%xmm9 - addl %ebx,%eax - pxor %xmm8,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm8 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm9,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm2 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm8 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm8,%xmm2 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm1,%xmm9 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm2,%xmm9 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm4,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm10,%xmm8 - rorl $7,%edx - paddd %xmm2,%xmm10 - addl %ecx,%ebx - pxor %xmm9,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm9 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm10,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - pslld $2,%xmm3 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm9 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm9,%xmm3 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm2,%xmm10 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm0,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm3,%xmm10 - movl %edx,%edi - roll $5,%edx - pxor %xmm5,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebp - paddd %xmm3,%xmm8 - addl %edx,%ecx - pxor %xmm10,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm10 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm8,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm4 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm10 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm10,%xmm4 - addl %ebx,%eax - addl 12(%rsp),%ebp - pshufd $238,%xmm3,%xmm8 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm1,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm4,%xmm8 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm6,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%eax - paddd %xmm4,%xmm9 - addl %ebp,%edx - pxor %xmm8,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm8 - addl %edi,%ecx - xorl %eax,%esi - movdqa %xmm9,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm5 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm8 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm8,%xmm5 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm4,%xmm9 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm2,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm5,%xmm9 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm7,%xmm6 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm10,%xmm8 - xorl %ebx,%edi - paddd %xmm5,%xmm10 - xorl %ecx,%ebx - pxor %xmm9,%xmm6 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm6,%xmm9 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm10,16(%rsp) - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - pslld $2,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm9 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm9,%xmm6 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm5,%xmm10 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm3,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm6,%xmm10 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm0,%xmm7 - roll $5,%ebx - addl %esi,%eax - movdqa 32(%r11),%xmm9 - xorl %ecx,%edi - paddd %xmm6,%xmm8 - xorl %edx,%ecx - pxor %xmm10,%xmm7 - addl %ebx,%eax - addl 52(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm7,%xmm10 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm8,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm7 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm10 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm10,%xmm7 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm6,%xmm8 - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm4,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - punpcklqdq %xmm7,%xmm8 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm1,%xmm0 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm9,%xmm10 - xorl %edx,%edi - paddd %xmm7,%xmm9 - xorl %ebp,%edx - pxor %xmm8,%xmm0 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm0,%xmm8 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm9,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm8 - addl 8(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - por %xmm8,%xmm0 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm7,%xmm9 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm5,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm0,%xmm9 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm2,%xmm1 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm8 - xorl %ebp,%edi - paddd %xmm0,%xmm10 - xorl %eax,%ebp - pxor %xmm9,%xmm1 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movdqa %xmm1,%xmm9 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm10,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm1 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm9 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm9,%xmm1 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm0,%xmm10 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm6,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm1,%xmm10 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm3,%xmm2 - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm9 - xorl %eax,%edi - paddd %xmm1,%xmm8 - xorl %ebx,%eax - pxor %xmm10,%xmm2 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm2,%xmm10 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm8,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm2 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm10 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm10,%xmm2 - rorl $7,%edx - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm1,%xmm8 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm2,%xmm8 - movl %eax,%edi - roll $5,%eax - pxor %xmm4,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%ebx - paddd %xmm2,%xmm9 - addl %eax,%ebp - pxor %xmm8,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm3,%xmm8 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm9,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm3 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm8 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm8,%xmm3 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm3,%xmm10 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm10,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je .Ldone_ssse3 - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,206 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm9,%xmm0 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm0,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm9,%xmm0 - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,214 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm9,%xmm1 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm1,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm9,%xmm1 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,222 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm9,%xmm2 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm2,32(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm9,%xmm2 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp .Loop_ssse3 - -.align 16 -.Ldone_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3 -.align 64 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-mb-x86_64.s deleted file mode 100644 index 0f23c304368c0b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-mb-x86_64.s +++ /dev/null @@ -1,3258 +0,0 @@ -.text - - - -.globl sha256_multi_block -.type sha256_multi_block,@function -.align 32 -sha256_multi_block: - movq OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -.Lbody: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -.Loop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz .Ldone - - movdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - movdqu 32-128(%rdi),%xmm9 - movdqu 64-128(%rdi),%xmm10 - movdqu 96-128(%rdi),%xmm11 - movdqu 128-128(%rdi),%xmm12 - movdqu 160-128(%rdi),%xmm13 - movdqu 192-128(%rdi),%xmm14 - movdqu 224-128(%rdi),%xmm15 - movdqu .Lpbswap(%rip),%xmm6 - jmp .Loop - -.align 32 -.Loop: - movdqa %xmm10,%xmm4 - pxor %xmm9,%xmm4 - movd 0(%r8),%xmm5 - movd 0(%r9),%xmm0 - movd 0(%r10),%xmm1 - movd 0(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 4(%r8),%xmm5 - movd 4(%r9),%xmm0 - movd 4(%r10),%xmm1 - movd 4(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,16-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 8(%r8),%xmm5 - movd 8(%r9),%xmm0 - movd 8(%r10),%xmm1 - movd 8(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 12(%r8),%xmm5 - movd 12(%r9),%xmm0 - movd 12(%r10),%xmm1 - movd 12(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,48-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 16(%r8),%xmm5 - movd 16(%r9),%xmm0 - movd 16(%r10),%xmm1 - movd 16(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 20(%r8),%xmm5 - movd 20(%r9),%xmm0 - movd 20(%r10),%xmm1 - movd 20(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,80-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 24(%r8),%xmm5 - movd 24(%r9),%xmm0 - movd 24(%r10),%xmm1 - movd 24(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 28(%r8),%xmm5 - movd 28(%r9),%xmm0 - movd 28(%r10),%xmm1 - movd 28(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,112-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movd 32(%r8),%xmm5 - movd 32(%r9),%xmm0 - movd 32(%r10),%xmm1 - movd 32(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 36(%r8),%xmm5 - movd 36(%r9),%xmm0 - movd 36(%r10),%xmm1 - movd 36(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,144-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 40(%r8),%xmm5 - movd 40(%r9),%xmm0 - movd 40(%r10),%xmm1 - movd 40(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 44(%r8),%xmm5 - movd 44(%r9),%xmm0 - movd 44(%r10),%xmm1 - movd 44(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,176-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 48(%r8),%xmm5 - movd 48(%r9),%xmm0 - movd 48(%r10),%xmm1 - movd 48(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 52(%r8),%xmm5 - movd 52(%r9),%xmm0 - movd 52(%r10),%xmm1 - movd 52(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,208-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 56(%r8),%xmm5 - movd 56(%r9),%xmm0 - movd 56(%r10),%xmm1 - movd 56(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - movd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - movd 60(%r10),%xmm1 - leaq 64(%r10),%r10 - movd 60(%r11),%xmm2 - leaq 64(%r11),%r11 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,240-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - prefetcht0 63(%r8) - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - prefetcht0 63(%r9) - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - prefetcht0 63(%r10) - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - prefetcht0 63(%r11) - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp .Loop_16_xx -.align 32 -.Loop_16_xx: - movdqa 16-128(%rax),%xmm6 - paddd 144-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 224-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 32-128(%rax),%xmm5 - paddd 160-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 240-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,16-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 48-128(%rax),%xmm6 - paddd 176-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 0-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 64-128(%rax),%xmm5 - paddd 192-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 16-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,48-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 80-128(%rax),%xmm6 - paddd 208-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 32-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 96-128(%rax),%xmm5 - paddd 224-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 48-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,80-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 112-128(%rax),%xmm6 - paddd 240-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 64-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 128-128(%rax),%xmm5 - paddd 0-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 80-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,112-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqa 144-128(%rax),%xmm6 - paddd 16-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 96-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 160-128(%rax),%xmm5 - paddd 32-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 112-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,144-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 176-128(%rax),%xmm6 - paddd 48-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 128-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 192-128(%rax),%xmm5 - paddd 64-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 144-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,176-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 208-128(%rax),%xmm6 - paddd 80-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 160-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 224-128(%rax),%xmm5 - paddd 96-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 176-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,208-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 240-128(%rax),%xmm6 - paddd 112-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 192-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 0-128(%rax),%xmm5 - paddd 128-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 208-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,240-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - decl %ecx - jnz .Loop_16_xx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - - movdqa (%rbx),%xmm7 - cmpl 0(%rbx),%ecx - pxor %xmm0,%xmm0 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm7,%xmm6 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm0,%xmm6 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm6,%xmm7 - cmovgeq %rbp,%r11 - - movdqu 0-128(%rdi),%xmm0 - pand %xmm6,%xmm8 - movdqu 32-128(%rdi),%xmm1 - pand %xmm6,%xmm9 - movdqu 64-128(%rdi),%xmm2 - pand %xmm6,%xmm10 - movdqu 96-128(%rdi),%xmm5 - pand %xmm6,%xmm11 - paddd %xmm0,%xmm8 - movdqu 128-128(%rdi),%xmm0 - pand %xmm6,%xmm12 - paddd %xmm1,%xmm9 - movdqu 160-128(%rdi),%xmm1 - pand %xmm6,%xmm13 - paddd %xmm2,%xmm10 - movdqu 192-128(%rdi),%xmm2 - pand %xmm6,%xmm14 - paddd %xmm5,%xmm11 - movdqu 224-128(%rdi),%xmm5 - pand %xmm6,%xmm15 - paddd %xmm0,%xmm12 - paddd %xmm1,%xmm13 - movdqu %xmm8,0-128(%rdi) - paddd %xmm2,%xmm14 - movdqu %xmm9,32-128(%rdi) - paddd %xmm5,%xmm15 - movdqu %xmm10,64-128(%rdi) - movdqu %xmm11,96-128(%rdi) - movdqu %xmm12,128-128(%rdi) - movdqu %xmm13,160-128(%rdi) - movdqu %xmm14,192-128(%rdi) - movdqu %xmm15,224-128(%rdi) - - movdqa %xmm7,(%rbx) - movdqa .Lpbswap(%rip),%xmm6 - decl %edx - jnz .Loop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz .Loop_grande - -.Ldone: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha256_multi_block,.-sha256_multi_block -.type sha256_multi_block_shaext,@function -.align 32 -sha256_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 128(%rdi),%rdi - movq %rax,272(%rsp) -.Lbody_shaext: - leaq 256(%rsp),%rbx - leaq K256_shaext+128(%rip),%rbp - -.Loop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz .Ldone_shaext - - movq 0-128(%rdi),%xmm12 - movq 32-128(%rdi),%xmm4 - movq 64-128(%rdi),%xmm13 - movq 96-128(%rdi),%xmm5 - movq 128-128(%rdi),%xmm8 - movq 160-128(%rdi),%xmm9 - movq 192-128(%rdi),%xmm10 - movq 224-128(%rdi),%xmm11 - - punpckldq %xmm4,%xmm12 - punpckldq %xmm5,%xmm13 - punpckldq %xmm9,%xmm8 - punpckldq %xmm11,%xmm10 - movdqa K256_shaext-16(%rip),%xmm3 - - movdqa %xmm12,%xmm14 - movdqa %xmm13,%xmm15 - punpcklqdq %xmm8,%xmm12 - punpcklqdq %xmm10,%xmm13 - punpckhqdq %xmm8,%xmm14 - punpckhqdq %xmm10,%xmm15 - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - jmp .Loop_shaext - -.align 32 -.Loop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm8 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm9 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm10 -.byte 102,68,15,56,0,195 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 - movdqu 48(%r9),%xmm11 - leaq 64(%r9),%r9 - - movdqa 0-128(%rbp),%xmm0 -.byte 102,15,56,0,235 - paddd %xmm4,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm0,%xmm1 - movdqa 0-128(%rbp),%xmm2 -.byte 102,68,15,56,0,203 - paddd %xmm8,%xmm2 - movdqa %xmm13,80(%rsp) -.byte 69,15,56,203,236 - pxor %xmm14,%xmm8 - movdqa %xmm2,%xmm0 - movdqa %xmm15,112(%rsp) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm12,64(%rsp) -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pxor %xmm14,%xmm8 - movdqa %xmm14,96(%rsp) - movdqa 16-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 102,15,56,0,243 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 16-128(%rbp),%xmm2 - paddd %xmm9,%xmm2 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - prefetcht0 127(%r8) -.byte 102,15,56,0,251 -.byte 102,68,15,56,0,211 - prefetcht0 127(%r9) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,68,15,56,0,219 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 32-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 32-128(%rbp),%xmm2 - paddd %xmm10,%xmm2 -.byte 69,15,56,203,236 -.byte 69,15,56,204,193 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,15,58,15,222,4 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 48-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - - movdqa %xmm1,%xmm0 - movdqa 48-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 64-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 64-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 80-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 80-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 96-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 96-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 112-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 112-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 128-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 128-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 144-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 144-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 160-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 160-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 176-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 176-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 192-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 192-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 208-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 208-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 224-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 224-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 - nop -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movl $1,%ecx - pxor %xmm6,%xmm6 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - movdqa 240-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 - movq (%rbx),%xmm7 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 240-128(%rbp),%xmm2 - paddd %xmm11,%xmm2 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - pshufd $0x00,%xmm7,%xmm9 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - pshufd $0x55,%xmm7,%xmm10 - movdqa %xmm7,%xmm11 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pcmpgtd %xmm6,%xmm9 - pcmpgtd %xmm6,%xmm10 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pcmpgtd %xmm6,%xmm11 - movdqa K256_shaext-16(%rip),%xmm3 -.byte 69,15,56,203,247 - - pand %xmm9,%xmm13 - pand %xmm10,%xmm15 - pand %xmm9,%xmm12 - pand %xmm10,%xmm14 - paddd %xmm7,%xmm11 - - paddd 80(%rsp),%xmm13 - paddd 112(%rsp),%xmm15 - paddd 64(%rsp),%xmm12 - paddd 96(%rsp),%xmm14 - - movq %xmm11,(%rbx) - decl %edx - jnz .Loop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - - movdqa %xmm12,%xmm5 - movdqa %xmm13,%xmm6 - punpckldq %xmm14,%xmm12 - punpckhdq %xmm14,%xmm5 - punpckldq %xmm15,%xmm13 - punpckhdq %xmm15,%xmm6 - - movq %xmm12,0-128(%rdi) - psrldq $8,%xmm12 - movq %xmm5,128-128(%rdi) - psrldq $8,%xmm5 - movq %xmm12,32-128(%rdi) - movq %xmm5,160-128(%rdi) - - movq %xmm13,64-128(%rdi) - psrldq $8,%xmm13 - movq %xmm6,192-128(%rdi) - psrldq $8,%xmm6 - movq %xmm13,96-128(%rdi) - movq %xmm6,224-128(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz .Loop_grande_shaext - -.Ldone_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -.Lepilogue_shaext: - .byte 0xf3,0xc3 -.size sha256_multi_block_shaext,.-sha256_multi_block_shaext -.align 256 -K256: -.long 1116352408,1116352408,1116352408,1116352408 -.long 1116352408,1116352408,1116352408,1116352408 -.long 1899447441,1899447441,1899447441,1899447441 -.long 1899447441,1899447441,1899447441,1899447441 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3921009573,3921009573,3921009573,3921009573 -.long 3921009573,3921009573,3921009573,3921009573 -.long 961987163,961987163,961987163,961987163 -.long 961987163,961987163,961987163,961987163 -.long 1508970993,1508970993,1508970993,1508970993 -.long 1508970993,1508970993,1508970993,1508970993 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2870763221,2870763221,2870763221,2870763221 -.long 2870763221,2870763221,2870763221,2870763221 -.long 3624381080,3624381080,3624381080,3624381080 -.long 3624381080,3624381080,3624381080,3624381080 -.long 310598401,310598401,310598401,310598401 -.long 310598401,310598401,310598401,310598401 -.long 607225278,607225278,607225278,607225278 -.long 607225278,607225278,607225278,607225278 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1925078388,1925078388,1925078388,1925078388 -.long 1925078388,1925078388,1925078388,1925078388 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2614888103,2614888103,2614888103,2614888103 -.long 2614888103,2614888103,2614888103,2614888103 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3835390401,3835390401,3835390401,3835390401 -.long 3835390401,3835390401,3835390401,3835390401 -.long 4022224774,4022224774,4022224774,4022224774 -.long 4022224774,4022224774,4022224774,4022224774 -.long 264347078,264347078,264347078,264347078 -.long 264347078,264347078,264347078,264347078 -.long 604807628,604807628,604807628,604807628 -.long 604807628,604807628,604807628,604807628 -.long 770255983,770255983,770255983,770255983 -.long 770255983,770255983,770255983,770255983 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1996064986,1996064986,1996064986,1996064986 -.long 1996064986,1996064986,1996064986,1996064986 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2952996808,2952996808,2952996808,2952996808 -.long 2952996808,2952996808,2952996808,2952996808 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3584528711,3584528711,3584528711,3584528711 -.long 3584528711,3584528711,3584528711,3584528711 -.long 113926993,113926993,113926993,113926993 -.long 113926993,113926993,113926993,113926993 -.long 338241895,338241895,338241895,338241895 -.long 338241895,338241895,338241895,338241895 -.long 666307205,666307205,666307205,666307205 -.long 666307205,666307205,666307205,666307205 -.long 773529912,773529912,773529912,773529912 -.long 773529912,773529912,773529912,773529912 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1986661051,1986661051,1986661051,1986661051 -.long 1986661051,1986661051,1986661051,1986661051 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2820302411,2820302411,2820302411,2820302411 -.long 2820302411,2820302411,2820302411,2820302411 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3600352804,3600352804,3600352804,3600352804 -.long 3600352804,3600352804,3600352804,3600352804 -.long 4094571909,4094571909,4094571909,4094571909 -.long 4094571909,4094571909,4094571909,4094571909 -.long 275423344,275423344,275423344,275423344 -.long 275423344,275423344,275423344,275423344 -.long 430227734,430227734,430227734,430227734 -.long 430227734,430227734,430227734,430227734 -.long 506948616,506948616,506948616,506948616 -.long 506948616,506948616,506948616,506948616 -.long 659060556,659060556,659060556,659060556 -.long 659060556,659060556,659060556,659060556 -.long 883997877,883997877,883997877,883997877 -.long 883997877,883997877,883997877,883997877 -.long 958139571,958139571,958139571,958139571 -.long 958139571,958139571,958139571,958139571 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1955562222,1955562222,1955562222,1955562222 -.long 1955562222,1955562222,1955562222,1955562222 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2756734187,2756734187,2756734187,2756734187 -.long 2756734187,2756734187,2756734187,2756734187 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3329325298,3329325298,3329325298,3329325298 -.long 3329325298,3329325298,3329325298,3329325298 -.Lpbswap: -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -K256_shaext: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-x86_64.s deleted file mode 100644 index ab16a7b618820c..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-x86_64.s +++ /dev/null @@ -1,3049 +0,0 @@ -.text - - -.globl sha256_block_data_order -.type sha256_block_data_order,@function -.align 16 -sha256_block_data_order: - leaq OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $536870912,%r11d - jnz _shaext_shortcut - testl $512,%r10d - jnz .Lssse3_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $64+32,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - jmp .Lloop - -.align 16 -.Lloop: - movl %ebx,%edi - leaq K256(%rip),%rbp - xorl %ecx,%edi - movl 0(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 4(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 8(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 12(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 16(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 20(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 24(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 28(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - addl %r14d,%eax - movl 32(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 36(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 40(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 44(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 48(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 52(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 56(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 60(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - jmp .Lrounds_16_xx -.align 16 -.Lrounds_16_xx: - movl 4(%rsp),%r13d - movl 56(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 36(%rsp),%r12d - - addl 0(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 8(%rsp),%r13d - movl 60(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 40(%rsp),%r12d - - addl 4(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 12(%rsp),%r13d - movl 0(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 44(%rsp),%r12d - - addl 8(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 16(%rsp),%r13d - movl 4(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 48(%rsp),%r12d - - addl 12(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 20(%rsp),%r13d - movl 8(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 52(%rsp),%r12d - - addl 16(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 24(%rsp),%r13d - movl 12(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 56(%rsp),%r12d - - addl 20(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 28(%rsp),%r13d - movl 16(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 60(%rsp),%r12d - - addl 24(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 32(%rsp),%r13d - movl 20(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 0(%rsp),%r12d - - addl 28(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - movl 36(%rsp),%r13d - movl 24(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 4(%rsp),%r12d - - addl 32(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 40(%rsp),%r13d - movl 28(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 8(%rsp),%r12d - - addl 36(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 44(%rsp),%r13d - movl 32(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 12(%rsp),%r12d - - addl 40(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 48(%rsp),%r13d - movl 36(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 16(%rsp),%r12d - - addl 44(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 52(%rsp),%r13d - movl 40(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 20(%rsp),%r12d - - addl 48(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 56(%rsp),%r13d - movl 44(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 24(%rsp),%r12d - - addl 52(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 60(%rsp),%r13d - movl 48(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 28(%rsp),%r12d - - addl 56(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 0(%rsp),%r13d - movl 52(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 32(%rsp),%r12d - - addl 60(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - cmpb $0,3(%rbp) - jnz .Lrounds_16_xx - - movq 64+0(%rsp),%rdi - addl %r14d,%eax - leaq 64(%rsi),%rsi - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb .Lloop - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha256_block_data_order,.-sha256_block_data_order -.align 64 -.type K256,@object -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.type sha256_block_data_order_shaext,@function -.align 64 -sha256_block_data_order_shaext: -_shaext_shortcut: - leaq K256+128(%rip),%rcx - movdqu (%rdi),%xmm1 - movdqu 16(%rdi),%xmm2 - movdqa 512-128(%rcx),%xmm7 - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm7,%xmm8 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp .Loop_shaext - -.align 16 -.Loop_shaext: - movdqu (%rsi),%xmm3 - movdqu 16(%rsi),%xmm4 - movdqu 32(%rsi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%rsi),%xmm6 - - movdqa 0-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 - movdqa %xmm2,%xmm10 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - nop - movdqa %xmm1,%xmm9 -.byte 15,56,203,202 - - movdqa 32-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - leaq 64(%rsi),%rsi -.byte 15,56,204,220 -.byte 15,56,203,202 - - movdqa 64-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - - movdqa 96-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 128-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 160-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 192-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 224-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 256-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 288-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 320-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 352-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 384-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 416-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - - movdqa 448-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa %xmm8,%xmm7 -.byte 15,56,203,202 - - movdqa 480-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - decq %rdx - nop -.byte 15,56,203,202 - - paddd %xmm10,%xmm2 - paddd %xmm9,%xmm1 - jnz .Loop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm7 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - - movdqu %xmm1,(%rdi) - movdqu %xmm2,16(%rdi) - .byte 0xf3,0xc3 -.size sha256_block_data_order_shaext,.-sha256_block_data_order_shaext -.type sha256_block_data_order_ssse3,@function -.align 64 -sha256_block_data_order_ssse3: -.Lssse3_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -.Lprologue_ssse3: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - - - jmp .Lloop_ssse3 -.align 16 -.Lloop_ssse3: - movdqa K256+512(%rip),%xmm7 - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 -.byte 102,15,56,0,199 - movdqu 48(%rsi),%xmm3 - leaq K256(%rip),%rbp -.byte 102,15,56,0,207 - movdqa 0(%rbp),%xmm4 - movdqa 32(%rbp),%xmm5 -.byte 102,15,56,0,215 - paddd %xmm0,%xmm4 - movdqa 64(%rbp),%xmm6 -.byte 102,15,56,0,223 - movdqa 96(%rbp),%xmm7 - paddd %xmm1,%xmm5 - paddd %xmm2,%xmm6 - paddd %xmm3,%xmm7 - movdqa %xmm4,0(%rsp) - movl %eax,%r14d - movdqa %xmm5,16(%rsp) - movl %ebx,%edi - movdqa %xmm6,32(%rsp) - xorl %ecx,%edi - movdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp .Lssse3_00_47 - -.align 16 -.Lssse3_00_47: - subq $-128,%rbp - rorl $14,%r13d - movdqa %xmm1,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm3,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,224,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,250,4 - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm3,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 4(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm0 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm0 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm0,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 0(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm0,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,0(%rsp) - rorl $14,%r13d - movdqa %xmm2,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm0,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,225,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,251,4 - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm0,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 20(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm1 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm1 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm1,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 32(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm1,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,16(%rsp) - rorl $14,%r13d - movdqa %xmm3,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm1,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,226,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,248,4 - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm1,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 36(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm2 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm2 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm2,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 64(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm2,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,32(%rsp) - rorl $14,%r13d - movdqa %xmm0,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm2,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,227,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,249,4 - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm2,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 52(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm3 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm3 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm3,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 96(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm3,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne .Lssse3_00_47 - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb .Lloop_ssse3 - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue_ssse3: - .byte 0xf3,0xc3 -.size sha256_block_data_order_ssse3,.-sha256_block_data_order_ssse3 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha512-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha512-x86_64.s deleted file mode 100644 index f6638db30e9fad..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/sha/sha512-x86_64.s +++ /dev/null @@ -1,1783 +0,0 @@ -.text - - -.globl sha512_block_data_order -.type sha512_block_data_order,@function -.align 16 -sha512_block_data_order: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $128+32,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -.Lprologue: - - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp .Lloop - -.align 16 -.Lloop: - movq %rbx,%rdi - leaq K512(%rip),%rbp - xorq %rcx,%rdi - movq 0(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 8(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 16(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 24(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 32(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 40(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 48(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 56(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - addq %r14,%rax - movq 64(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 72(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 80(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 88(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 96(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 104(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 112(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 120(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - jmp .Lrounds_16_xx -.align 16 -.Lrounds_16_xx: - movq 8(%rsp),%r13 - movq 112(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 72(%rsp),%r12 - - addq 0(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 16(%rsp),%r13 - movq 120(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 80(%rsp),%r12 - - addq 8(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 24(%rsp),%r13 - movq 0(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 88(%rsp),%r12 - - addq 16(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 32(%rsp),%r13 - movq 8(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 96(%rsp),%r12 - - addq 24(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 40(%rsp),%r13 - movq 16(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 104(%rsp),%r12 - - addq 32(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 48(%rsp),%r13 - movq 24(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 112(%rsp),%r12 - - addq 40(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 56(%rsp),%r13 - movq 32(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 120(%rsp),%r12 - - addq 48(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 64(%rsp),%r13 - movq 40(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 0(%rsp),%r12 - - addq 56(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - movq 72(%rsp),%r13 - movq 48(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 8(%rsp),%r12 - - addq 64(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 80(%rsp),%r13 - movq 56(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 16(%rsp),%r12 - - addq 72(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 88(%rsp),%r13 - movq 64(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 24(%rsp),%r12 - - addq 80(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 96(%rsp),%r13 - movq 72(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 32(%rsp),%r12 - - addq 88(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 104(%rsp),%r13 - movq 80(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 40(%rsp),%r12 - - addq 96(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 112(%rsp),%r13 - movq 88(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 48(%rsp),%r12 - - addq 104(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 120(%rsp),%r13 - movq 96(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 56(%rsp),%r12 - - addq 112(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 0(%rsp),%r13 - movq 104(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 64(%rsp),%r12 - - addq 120(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - cmpb $0,7(%rbp) - jnz .Lrounds_16_xx - - movq 128+0(%rsp),%rdi - addq %r14,%rax - leaq 128(%rsi),%rsi - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb .Lloop - - movq 128+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size sha512_block_data_order,.-sha512_block_data_order -.align 64 -.type K512,@object -K512: -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/whrlpool/wp-x86_64.s b/deps/openssl/asm_obsolete/x64-elf-gas/whrlpool/wp-x86_64.s deleted file mode 100644 index f83130ea68634b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/whrlpool/wp-x86_64.s +++ /dev/null @@ -1,861 +0,0 @@ -.text - -.globl whirlpool_block -.type whirlpool_block,@function -.align 16 -whirlpool_block: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movq %rsp,%r11 - subq $128+40,%rsp - andq $-64,%rsp - - leaq 128(%rsp),%r10 - movq %rdi,0(%r10) - movq %rsi,8(%r10) - movq %rdx,16(%r10) - movq %r11,32(%r10) -.Lprologue: - - movq %r10,%rbx - leaq .Ltable(%rip),%rbp - - xorq %rcx,%rcx - xorq %rdx,%rdx - movq 0(%rdi),%r8 - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 -.Louterloop: - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - xorq %rsi,%rsi - movq %rsi,24(%rbx) - jmp .Lround -.align 16 -.Lround: - movq 4096(%rbp,%rsi,8),%r8 - movl 0(%rsp),%eax - movl 4(%rsp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - movq 7(%rbp,%rdi,8),%r9 - movl 0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 6(%rbp,%rsi,8),%r10 - movq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 4(%rbp,%rsi,8),%r12 - movq 3(%rbp,%rdi,8),%r13 - movl 0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - movq 2(%rbp,%rsi,8),%r14 - movq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - movl 56+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - movl 56+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - xorq 7(%rbp,%rdi,8),%r9 - movl 64+0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r10 - xorq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r12 - xorq 3(%rbp,%rdi,8),%r13 - movl 64+0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r14 - xorq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 64+8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 64+8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 64+16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 64+16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 64+24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 64+24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 64+32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 64+32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 64+40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 64+40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 64+48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 64+48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - leaq 128(%rsp),%rbx - movq 24(%rbx),%rsi - addq $1,%rsi - cmpq $10,%rsi - je .Lroundsdone - - movq %rsi,24(%rbx) - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - jmp .Lround -.align 16 -.Lroundsdone: - movq 0(%rbx),%rdi - movq 8(%rbx),%rsi - movq 16(%rbx),%rax - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - xorq 0(%rdi),%r8 - xorq 8(%rdi),%r9 - xorq 16(%rdi),%r10 - xorq 24(%rdi),%r11 - xorq 32(%rdi),%r12 - xorq 40(%rdi),%r13 - xorq 48(%rdi),%r14 - xorq 56(%rdi),%r15 - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rsi),%rsi - subq $1,%rax - jz .Lalldone - movq %rsi,8(%rbx) - movq %rax,16(%rbx) - jmp .Louterloop -.Lalldone: - movq 32(%rbx),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -.Lepilogue: - .byte 0xf3,0xc3 -.size whirlpool_block,.-whirlpool_block - -.align 64 -.type .Ltable,@object -.Ltable: -.byte 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm_obsolete/x64-elf-gas/x86_64cpuid.s b/deps/openssl/asm_obsolete/x64-elf-gas/x86_64cpuid.s deleted file mode 100644 index 86c780b1c5f4b6..00000000000000 --- a/deps/openssl/asm_obsolete/x64-elf-gas/x86_64cpuid.s +++ /dev/null @@ -1,275 +0,0 @@ - -.hidden OPENSSL_cpuid_setup -.section .init - call OPENSSL_cpuid_setup - -.hidden OPENSSL_ia32cap_P -.comm OPENSSL_ia32cap_P,16,4 - -.text - -.globl OPENSSL_atomic_add -.type OPENSSL_atomic_add,@function -.align 16 -OPENSSL_atomic_add: - movl (%rdi),%eax -.Lspin: leaq (%rsi,%rax,1),%r8 -.byte 0xf0 - cmpxchgl %r8d,(%rdi) - jne .Lspin - movl %r8d,%eax -.byte 0x48,0x98 - .byte 0xf3,0xc3 -.size OPENSSL_atomic_add,.-OPENSSL_atomic_add - -.globl OPENSSL_rdtsc -.type OPENSSL_rdtsc,@function -.align 16 -OPENSSL_rdtsc: - rdtsc - shlq $32,%rdx - orq %rdx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_rdtsc,.-OPENSSL_rdtsc - -.globl OPENSSL_ia32_cpuid -.type OPENSSL_ia32_cpuid,@function -.align 16 -OPENSSL_ia32_cpuid: - movq %rbx,%r8 - - xorl %eax,%eax - movl %eax,8(%rdi) - cpuid - movl %eax,%r11d - - xorl %eax,%eax - cmpl $0x756e6547,%ebx - setne %al - movl %eax,%r9d - cmpl $0x49656e69,%edx - setne %al - orl %eax,%r9d - cmpl $0x6c65746e,%ecx - setne %al - orl %eax,%r9d - jz .Lintel - - cmpl $0x68747541,%ebx - setne %al - movl %eax,%r10d - cmpl $0x69746E65,%edx - setne %al - orl %eax,%r10d - cmpl $0x444D4163,%ecx - setne %al - orl %eax,%r10d - jnz .Lintel - - - movl $0x80000000,%eax - cpuid - cmpl $0x80000001,%eax - jb .Lintel - movl %eax,%r10d - movl $0x80000001,%eax - cpuid - orl %ecx,%r9d - andl $0x00000801,%r9d - - cmpl $0x80000008,%r10d - jb .Lintel - - movl $0x80000008,%eax - cpuid - movzbq %cl,%r10 - incq %r10 - - movl $1,%eax - cpuid - btl $28,%edx - jnc .Lgeneric - shrl $16,%ebx - cmpb %r10b,%bl - ja .Lgeneric - andl $0xefffffff,%edx - jmp .Lgeneric - -.Lintel: - cmpl $4,%r11d - movl $-1,%r10d - jb .Lnocacheinfo - - movl $4,%eax - movl $0,%ecx - cpuid - movl %eax,%r10d - shrl $14,%r10d - andl $0xfff,%r10d - -.Lnocacheinfo: - movl $1,%eax - cpuid - andl $0xbfefffff,%edx - cmpl $0,%r9d - jne .Lnotintel - orl $0x40000000,%edx - andb $15,%ah - cmpb $15,%ah - jne .LnotP4 - orl $0x00100000,%edx -.LnotP4: - cmpb $6,%ah - jne .Lnotintel - andl $0x0fff0ff0,%eax - cmpl $0x00050670,%eax - je .Lknights - cmpl $0x00080650,%eax - jne .Lnotintel -.Lknights: - andl $0xfbffffff,%ecx - -.Lnotintel: - btl $28,%edx - jnc .Lgeneric - andl $0xefffffff,%edx - cmpl $0,%r10d - je .Lgeneric - - orl $0x10000000,%edx - shrl $16,%ebx - cmpb $1,%bl - ja .Lgeneric - andl $0xefffffff,%edx -.Lgeneric: - andl $0x00000800,%r9d - andl $0xfffff7ff,%ecx - orl %ecx,%r9d - - movl %edx,%r10d - - cmpl $7,%r11d - jb .Lno_extended_info - movl $7,%eax - xorl %ecx,%ecx - cpuid - btl $26,%r9d - jc .Lnotknights - andl $0xfff7ffff,%ebx -.Lnotknights: - movl %ebx,8(%rdi) -.Lno_extended_info: - - btl $27,%r9d - jnc .Lclear_avx - xorl %ecx,%ecx -.byte 0x0f,0x01,0xd0 - andl $6,%eax - cmpl $6,%eax - je .Ldone -.Lclear_avx: - movl $0xefffe7ff,%eax - andl %eax,%r9d - andl $0xffffffdf,8(%rdi) -.Ldone: - shlq $32,%r9 - movl %r10d,%eax - movq %r8,%rbx - orq %r9,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_cpuid,.-OPENSSL_ia32_cpuid - -.globl OPENSSL_cleanse -.type OPENSSL_cleanse,@function -.align 16 -OPENSSL_cleanse: - xorq %rax,%rax - cmpq $15,%rsi - jae .Lot - cmpq $0,%rsi - je .Lret -.Little: - movb %al,(%rdi) - subq $1,%rsi - leaq 1(%rdi),%rdi - jnz .Little -.Lret: - .byte 0xf3,0xc3 -.align 16 -.Lot: - testq $7,%rdi - jz .Laligned - movb %al,(%rdi) - leaq -1(%rsi),%rsi - leaq 1(%rdi),%rdi - jmp .Lot -.Laligned: - movq %rax,(%rdi) - leaq -8(%rsi),%rsi - testq $-8,%rsi - leaq 8(%rdi),%rdi - jnz .Laligned - cmpq $0,%rsi - jne .Little - .byte 0xf3,0xc3 -.size OPENSSL_cleanse,.-OPENSSL_cleanse -.globl OPENSSL_wipe_cpu -.type OPENSSL_wipe_cpu,@function -.align 16 -OPENSSL_wipe_cpu: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - pxor %xmm10,%xmm10 - pxor %xmm11,%xmm11 - pxor %xmm12,%xmm12 - pxor %xmm13,%xmm13 - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - xorq %rcx,%rcx - xorq %rdx,%rdx - xorq %rsi,%rsi - xorq %rdi,%rdi - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - leaq 8(%rsp),%rax - .byte 0xf3,0xc3 -.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu -.globl OPENSSL_ia32_rdrand -.type OPENSSL_ia32_rdrand,@function -.align 16 -OPENSSL_ia32_rdrand: - movl $8,%ecx -.Loop_rdrand: -.byte 72,15,199,240 - jc .Lbreak_rdrand - loop .Loop_rdrand -.Lbreak_rdrand: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_rdrand,.-OPENSSL_ia32_rdrand - -.globl OPENSSL_ia32_rdseed -.type OPENSSL_ia32_rdseed,@function -.align 16 -OPENSSL_ia32_rdseed: - movl $8,%ecx -.Loop_rdseed: -.byte 72,15,199,248 - jc .Lbreak_rdseed - loop .Loop_rdseed -.Lbreak_rdseed: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 -.size OPENSSL_ia32_rdseed,.-OPENSSL_ia32_rdseed diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aes-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aes-x86_64.s deleted file mode 100644 index cb2db3584a444c..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aes-x86_64.s +++ /dev/null @@ -1,2534 +0,0 @@ -.text - -.p2align 4 -_x86_64_AES_encrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp L$enc_loop -.p2align 4 -L$enc_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - shrl $16,%ecx - movzbl %ah,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movl 12(%r15),%edx - movzbl %bh,%edi - movzbl %ch,%ebp - movl 0(%r15),%eax - xorl 1(%r14,%rdi,8),%r12d - xorl 1(%r14,%rbp,8),%r8d - - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - subl $1,%r13d - jnz L$enc_loop - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl 2(%r14,%rsi,8),%r10d - movzbl 2(%r14,%rdi,8),%r11d - movzbl 2(%r14,%rbp,8),%r12d - - movzbl %dl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl 2(%r14,%rsi,8),%r8d - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x0000ff00,%edi - andl $0x0000ff00,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%ecx - - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - - andl $0x0000ff00,%esi - andl $0x0000ff00,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%eax - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movl 0(%r14,%rsi,8),%esi - movl 0(%r14,%rdi,8),%edi - movl 0(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0x00ff0000,%edi - andl $0x00ff0000,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movl 0(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 2(%r14,%rbp,8),%ebp - - andl $0x00ff0000,%esi - andl $0xff000000,%edi - andl $0xff000000,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %bh,%esi - movzbl %ch,%edi - movl 16+12(%r15),%edx - movl 2(%r14,%rsi,8),%esi - movl 2(%r14,%rdi,8),%edi - movl 16+0(%r15),%eax - - andl $0xff000000,%esi - andl $0xff000000,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_encrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp L$enc_loop_compact -.p2align 4 -L$enc_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%ecx - movzbl %dh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ah,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl %cl,%edi - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shll $8,%r9d - shrl $16,%edx - shll $8,%r13d - xorl %r9d,%r10d - shrl $16,%eax - movzbl %dl,%r9d - shrl $16,%ebx - xorl %r13d,%r11d - shll $8,%ebp - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - - shll $8,%esi - movzbl %bl,%ebp - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %dh,%esi - movzbl (%r14,%r13,1),%r13d - xorl %edi,%r10d - - shrl $8,%ecx - movzbl %ah,%edi - shll $16,%r9d - shrl $8,%ebx - shll $16,%r13d - xorl %r9d,%r11d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rcx,1),%edx - movzbl (%r14,%rbx,1),%ecx - - shll $16,%ebp - xorl %r13d,%r12d - shll $24,%esi - xorl %ebp,%r8d - shll $24,%edi - xorl %esi,%r10d - shll $24,%edx - xorl %edi,%r11d - shll $24,%ecx - movl %r10d,%eax - movl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je L$enc_compact_done - movl $0x80808080,%r10d - movl $0x80808080,%r11d - andl %eax,%r10d - andl %ebx,%r11d - movl %r10d,%esi - movl %r11d,%edi - shrl $7,%r10d - leal (%rax,%rax,1),%r8d - shrl $7,%r11d - leal (%rbx,%rbx,1),%r9d - subl %r10d,%esi - subl %r11d,%edi - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %eax,%r10d - movl %ebx,%r11d - xorl %esi,%r8d - xorl %edi,%r9d - - xorl %r8d,%eax - xorl %r9d,%ebx - movl $0x80808080,%r12d - roll $24,%eax - movl $0x80808080,%ebp - roll $24,%ebx - andl %ecx,%r12d - andl %edx,%ebp - xorl %r8d,%eax - xorl %r9d,%ebx - movl %r12d,%esi - rorl $16,%r10d - movl %ebp,%edi - rorl $16,%r11d - leal (%rcx,%rcx,1),%r8d - shrl $7,%r12d - xorl %r10d,%eax - shrl $7,%ebp - xorl %r11d,%ebx - rorl $8,%r10d - leal (%rdx,%rdx,1),%r9d - rorl $8,%r11d - subl %r12d,%esi - subl %ebp,%edi - xorl %r10d,%eax - xorl %r11d,%ebx - - andl $0xfefefefe,%r8d - andl $0xfefefefe,%r9d - andl $0x1b1b1b1b,%esi - andl $0x1b1b1b1b,%edi - movl %ecx,%r12d - movl %edx,%ebp - xorl %esi,%r8d - xorl %edi,%r9d - - rorl $16,%r12d - xorl %r8d,%ecx - rorl $16,%ebp - xorl %r9d,%edx - roll $24,%ecx - movl 0(%r14),%esi - roll $24,%edx - xorl %r8d,%ecx - movl 64(%r14),%edi - xorl %r9d,%edx - movl 128(%r14),%r8d - xorl %r12d,%ecx - rorl $8,%r12d - xorl %ebp,%edx - rorl $8,%ebp - xorl %r12d,%ecx - movl 192(%r14),%r9d - xorl %ebp,%edx - jmp L$enc_loop_compact -.p2align 4 -L$enc_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 - -.globl _AES_encrypt - -.p2align 4 -.globl _asm_AES_encrypt -.private_extern _asm_AES_encrypt -_asm_AES_encrypt: -_AES_encrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -L$enc_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq L$AES_Te+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - - call _x86_64_AES_encrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$enc_epilogue: - .byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_decrypt: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - - movl 240(%r15),%r13d - subl $1,%r13d - jmp L$dec_loop -.p2align 4 -L$dec_loop: - - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movl 0(%r14,%rsi,8),%r10d - movl 0(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r12d - - movzbl %dh,%esi - movzbl %ah,%edi - movzbl %dl,%ebp - xorl 3(%r14,%rsi,8),%r10d - xorl 3(%r14,%rdi,8),%r11d - movl 0(%r14,%rbp,8),%r8d - - movzbl %bh,%esi - shrl $16,%eax - movzbl %ch,%ebp - xorl 3(%r14,%rsi,8),%r12d - shrl $16,%edx - xorl 3(%r14,%rbp,8),%r8d - - shrl $16,%ebx - leaq 16(%r15),%r15 - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - xorl 2(%r14,%rsi,8),%r10d - xorl 2(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r12d - - movzbl %bh,%esi - movzbl %ch,%edi - movzbl %bl,%ebp - xorl 1(%r14,%rsi,8),%r10d - xorl 1(%r14,%rdi,8),%r11d - xorl 2(%r14,%rbp,8),%r8d - - movzbl %dh,%esi - movl 12(%r15),%edx - movzbl %ah,%ebp - xorl 1(%r14,%rsi,8),%r12d - movl 0(%r15),%eax - xorl 1(%r14,%rbp,8),%r8d - - xorl %r10d,%eax - movl 4(%r15),%ebx - movl 8(%r15),%ecx - xorl %r12d,%ecx - xorl %r11d,%ebx - xorl %r8d,%edx - subl $1,%r13d - jnz L$dec_loop - leaq 2048(%r14),%r14 - movzbl %al,%esi - movzbl %bl,%edi - movzbl %cl,%ebp - movzbl (%r14,%rsi,1),%r10d - movzbl (%r14,%rdi,1),%r11d - movzbl (%r14,%rbp,1),%r12d - - movzbl %dl,%esi - movzbl %dh,%edi - movzbl %ah,%ebp - movzbl (%r14,%rsi,1),%r8d - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $8,%edi - shll $8,%ebp - - xorl %edi,%r10d - xorl %ebp,%r11d - shrl $16,%edx - - movzbl %bh,%esi - movzbl %ch,%edi - shrl $16,%eax - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - - shll $8,%esi - shll $8,%edi - shrl $16,%ebx - xorl %esi,%r12d - xorl %edi,%r8d - shrl $16,%ecx - - movzbl %cl,%esi - movzbl %dl,%edi - movzbl %al,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $16,%edi - shll $16,%ebp - - xorl %esi,%r10d - xorl %edi,%r11d - xorl %ebp,%r12d - - movzbl %bl,%esi - movzbl %bh,%edi - movzbl %ch,%ebp - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movzbl (%r14,%rbp,1),%ebp - - shll $16,%esi - shll $24,%edi - shll $24,%ebp - - xorl %esi,%r8d - xorl %edi,%r10d - xorl %ebp,%r11d - - movzbl %dh,%esi - movzbl %ah,%edi - movl 16+12(%r15),%edx - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%edi - movl 16+0(%r15),%eax - - shll $24,%esi - shll $24,%edi - - xorl %esi,%r12d - xorl %edi,%r8d - - movl 16+4(%r15),%ebx - movl 16+8(%r15),%ecx - leaq -2048(%r14),%r14 - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx -.byte 0xf3,0xc3 - - -.p2align 4 -_x86_64_AES_decrypt_compact: - leaq 128(%r14),%r8 - movl 0-128(%r8),%edi - movl 32-128(%r8),%ebp - movl 64-128(%r8),%r10d - movl 96-128(%r8),%r11d - movl 128-128(%r8),%edi - movl 160-128(%r8),%ebp - movl 192-128(%r8),%r10d - movl 224-128(%r8),%r11d - jmp L$dec_loop_compact - -.p2align 4 -L$dec_loop_compact: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx - leaq 16(%r15),%r15 - movzbl %al,%r10d - movzbl %bl,%r11d - movzbl %cl,%r12d - movzbl %dl,%r8d - movzbl %dh,%esi - movzbl %ah,%edi - shrl $16,%edx - movzbl %bh,%ebp - movzbl (%r14,%r10,1),%r10d - movzbl (%r14,%r11,1),%r11d - movzbl (%r14,%r12,1),%r12d - movzbl (%r14,%r8,1),%r8d - - movzbl (%r14,%rsi,1),%r9d - movzbl %ch,%esi - movzbl (%r14,%rdi,1),%r13d - movzbl (%r14,%rbp,1),%ebp - movzbl (%r14,%rsi,1),%esi - - shrl $16,%ecx - shll $8,%r13d - shll $8,%r9d - movzbl %cl,%edi - shrl $16,%eax - xorl %r9d,%r10d - shrl $16,%ebx - movzbl %dl,%r9d - - shll $8,%ebp - xorl %r13d,%r11d - shll $8,%esi - movzbl %al,%r13d - movzbl (%r14,%rdi,1),%edi - xorl %ebp,%r12d - movzbl %bl,%ebp - - shll $16,%edi - xorl %esi,%r8d - movzbl (%r14,%r9,1),%r9d - movzbl %bh,%esi - movzbl (%r14,%rbp,1),%ebp - xorl %edi,%r10d - movzbl (%r14,%r13,1),%r13d - movzbl %ch,%edi - - shll $16,%ebp - shll $16,%r9d - shll $16,%r13d - xorl %ebp,%r8d - movzbl %dh,%ebp - xorl %r9d,%r11d - shrl $8,%eax - xorl %r13d,%r12d - - movzbl (%r14,%rsi,1),%esi - movzbl (%r14,%rdi,1),%ebx - movzbl (%r14,%rbp,1),%ecx - movzbl (%r14,%rax,1),%edx - - movl %r10d,%eax - shll $24,%esi - shll $24,%ebx - shll $24,%ecx - xorl %esi,%eax - shll $24,%edx - xorl %r11d,%ebx - xorl %r12d,%ecx - xorl %r8d,%edx - cmpq 16(%rsp),%r15 - je L$dec_compact_done - - movq 256+0(%r14),%rsi - shlq $32,%rbx - shlq $32,%rdx - movq 256+8(%r14),%rdi - orq %rbx,%rax - orq %rdx,%rcx - movq 256+16(%r14),%rbp - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - movq 0(%r14),%rsi - roll $16,%r9d - movq 64(%r14),%rdi - roll $16,%r12d - movq 128(%r14),%rbp - roll $16,%r8d - movq 192(%r14),%r10 - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - movq 256(%r14),%r13 - xorl %r8d,%ebx - xorl %r11d,%edx - jmp L$dec_loop_compact -.p2align 4 -L$dec_compact_done: - xorl 0(%r15),%eax - xorl 4(%r15),%ebx - xorl 8(%r15),%ecx - xorl 12(%r15),%edx -.byte 0xf3,0xc3 - -.globl _AES_decrypt - -.p2align 4 -.globl _asm_AES_decrypt -.private_extern _asm_AES_decrypt -_asm_AES_decrypt: -_AES_decrypt: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - movq %rsp,%r10 - leaq -63(%rdx),%rcx - andq $-64,%rsp - subq %rsp,%rcx - negq %rcx - andq $0x3c0,%rcx - subq %rcx,%rsp - subq $32,%rsp - - movq %rsi,16(%rsp) - movq %r10,24(%rsp) -L$dec_prologue: - - movq %rdx,%r15 - movl 240(%r15),%r13d - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - - shll $4,%r13d - leaq (%r15,%r13,1),%rbp - movq %r15,(%rsp) - movq %rbp,8(%rsp) - - - leaq L$AES_Td+2048(%rip),%r14 - leaq 768(%rsp),%rbp - subq %r14,%rbp - andq $0x300,%rbp - leaq (%r14,%rbp,1),%r14 - shrq $3,%rbp - addq %rbp,%r14 - - call _x86_64_AES_decrypt_compact - - movq 16(%rsp),%r9 - movq 24(%rsp),%rsi - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$dec_epilogue: - .byte 0xf3,0xc3 - -.globl _private_AES_set_encrypt_key - -.p2align 4 -_private_AES_set_encrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $8,%rsp -L$enc_key_prologue: - - call _x86_64_AES_set_encrypt_key - - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -L$enc_key_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_AES_set_encrypt_key: - movl %esi,%ecx - movq %rdi,%rsi - movq %rdx,%rdi - - testq $-1,%rsi - jz L$badpointer - testq $-1,%rdi - jz L$badpointer - - leaq L$AES_Te(%rip),%rbp - leaq 2048+128(%rbp),%rbp - - - movl 0-128(%rbp),%eax - movl 32-128(%rbp),%ebx - movl 64-128(%rbp),%r8d - movl 96-128(%rbp),%edx - movl 128-128(%rbp),%eax - movl 160-128(%rbp),%ebx - movl 192-128(%rbp),%r8d - movl 224-128(%rbp),%edx - - cmpl $128,%ecx - je L$10rounds - cmpl $192,%ecx - je L$12rounds - cmpl $256,%ecx - je L$14rounds - movq $-2,%rax - jmp L$exit - -L$10rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rdx - movq %rax,0(%rdi) - movq %rdx,8(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$10shortcut -.p2align 2 -L$10loop: - movl 0(%rdi),%eax - movl 12(%rdi),%edx -L$10shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,16(%rdi) - xorl 4(%rdi),%eax - movl %eax,20(%rdi) - xorl 8(%rdi),%eax - movl %eax,24(%rdi) - xorl 12(%rdi),%eax - movl %eax,28(%rdi) - addl $1,%ecx - leaq 16(%rdi),%rdi - cmpl $10,%ecx - jl L$10loop - - movl $10,80(%rdi) - xorq %rax,%rax - jmp L$exit - -L$12rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rdx,16(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$12shortcut -.p2align 2 -L$12loop: - movl 0(%rdi),%eax - movl 20(%rdi),%edx -L$12shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,24(%rdi) - xorl 4(%rdi),%eax - movl %eax,28(%rdi) - xorl 8(%rdi),%eax - movl %eax,32(%rdi) - xorl 12(%rdi),%eax - movl %eax,36(%rdi) - - cmpl $7,%ecx - je L$12break - addl $1,%ecx - - xorl 16(%rdi),%eax - movl %eax,40(%rdi) - xorl 20(%rdi),%eax - movl %eax,44(%rdi) - - leaq 24(%rdi),%rdi - jmp L$12loop -L$12break: - movl $12,72(%rdi) - xorq %rax,%rax - jmp L$exit - -L$14rounds: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 16(%rsi),%rcx - movq 24(%rsi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - - shrq $32,%rdx - xorl %ecx,%ecx - jmp L$14shortcut -.p2align 2 -L$14loop: - movl 0(%rdi),%eax - movl 28(%rdi),%edx -L$14shortcut: - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - - xorl 1024-128(%rbp,%rcx,4),%eax - movl %eax,32(%rdi) - xorl 4(%rdi),%eax - movl %eax,36(%rdi) - xorl 8(%rdi),%eax - movl %eax,40(%rdi) - xorl 12(%rdi),%eax - movl %eax,44(%rdi) - - cmpl $6,%ecx - je L$14break - addl $1,%ecx - - movl %eax,%edx - movl 16(%rdi),%eax - movzbl %dl,%esi - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - - movzbl -128(%rbp,%rsi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - - movl %eax,48(%rdi) - xorl 20(%rdi),%eax - movl %eax,52(%rdi) - xorl 24(%rdi),%eax - movl %eax,56(%rdi) - xorl 28(%rdi),%eax - movl %eax,60(%rdi) - - leaq 32(%rdi),%rdi - jmp L$14loop -L$14break: - movl $14,48(%rdi) - xorq %rax,%rax - jmp L$exit - -L$badpointer: - movq $-1,%rax -L$exit: -.byte 0xf3,0xc3 - -.globl _private_AES_set_decrypt_key - -.p2align 4 -_private_AES_set_decrypt_key: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - pushq %rdx -L$dec_key_prologue: - - call _x86_64_AES_set_encrypt_key - movq (%rsp),%r8 - cmpl $0,%eax - jne L$abort - - movl 240(%r8),%r14d - xorq %rdi,%rdi - leaq (%rdi,%r14,4),%rcx - movq %r8,%rsi - leaq (%r8,%rcx,4),%rdi -.p2align 2 -L$invert: - movq 0(%rsi),%rax - movq 8(%rsi),%rbx - movq 0(%rdi),%rcx - movq 8(%rdi),%rdx - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,0(%rsi) - movq %rdx,8(%rsi) - leaq 16(%rsi),%rsi - leaq -16(%rdi),%rdi - cmpq %rsi,%rdi - jne L$invert - - leaq L$AES_Te+2048+1024(%rip),%rax - - movq 40(%rax),%rsi - movq 48(%rax),%rdi - movq 56(%rax),%rbp - - movq %r8,%r15 - subl $1,%r14d -.p2align 2 -L$permute: - leaq 16(%r15),%r15 - movq 0(%r15),%rax - movq 8(%r15),%rcx - movq %rsi,%r9 - movq %rsi,%r12 - andq %rax,%r9 - andq %rcx,%r12 - movq %r9,%rbx - movq %r12,%rdx - shrq $7,%r9 - leaq (%rax,%rax,1),%r8 - shrq $7,%r12 - leaq (%rcx,%rcx,1),%r11 - subq %r9,%rbx - subq %r12,%rdx - andq %rdi,%r8 - andq %rdi,%r11 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r8 - xorq %rdx,%r11 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r8,%r10 - andq %r11,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - leaq (%r8,%r8,1),%r9 - shrq $7,%r13 - leaq (%r11,%r11,1),%r12 - subq %r10,%rbx - subq %r13,%rdx - andq %rdi,%r9 - andq %rdi,%r12 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r9 - xorq %rdx,%r12 - movq %rsi,%r10 - movq %rsi,%r13 - - andq %r9,%r10 - andq %r12,%r13 - movq %r10,%rbx - movq %r13,%rdx - shrq $7,%r10 - xorq %rax,%r8 - shrq $7,%r13 - xorq %rcx,%r11 - subq %r10,%rbx - subq %r13,%rdx - leaq (%r9,%r9,1),%r10 - leaq (%r12,%r12,1),%r13 - xorq %rax,%r9 - xorq %rcx,%r12 - andq %rdi,%r10 - andq %rdi,%r13 - andq %rbp,%rbx - andq %rbp,%rdx - xorq %rbx,%r10 - xorq %rdx,%r13 - - xorq %r10,%rax - xorq %r13,%rcx - xorq %r10,%r8 - xorq %r13,%r11 - movq %rax,%rbx - movq %rcx,%rdx - xorq %r10,%r9 - shrq $32,%rbx - xorq %r13,%r12 - shrq $32,%rdx - xorq %r8,%r10 - roll $8,%eax - xorq %r11,%r13 - roll $8,%ecx - xorq %r9,%r10 - roll $8,%ebx - xorq %r12,%r13 - - roll $8,%edx - xorl %r10d,%eax - shrq $32,%r10 - xorl %r13d,%ecx - shrq $32,%r13 - xorl %r10d,%ebx - xorl %r13d,%edx - - movq %r8,%r10 - roll $24,%r8d - movq %r11,%r13 - roll $24,%r11d - shrq $32,%r10 - xorl %r8d,%eax - shrq $32,%r13 - xorl %r11d,%ecx - roll $24,%r10d - movq %r9,%r8 - roll $24,%r13d - movq %r12,%r11 - shrq $32,%r8 - xorl %r10d,%ebx - shrq $32,%r11 - xorl %r13d,%edx - - - roll $16,%r9d - - roll $16,%r12d - - roll $16,%r8d - - xorl %r9d,%eax - roll $16,%r11d - xorl %r12d,%ecx - - xorl %r8d,%ebx - xorl %r11d,%edx - movl %eax,0(%r15) - movl %ebx,4(%r15) - movl %ecx,8(%r15) - movl %edx,12(%r15) - subl $1,%r14d - jnz L$permute - - xorq %rax,%rax -L$abort: - movq 8(%rsp),%r15 - movq 16(%rsp),%r14 - movq 24(%rsp),%r13 - movq 32(%rsp),%r12 - movq 40(%rsp),%rbp - movq 48(%rsp),%rbx - addq $56,%rsp -L$dec_key_epilogue: - .byte 0xf3,0xc3 - -.globl _AES_cbc_encrypt - -.p2align 4 - -.globl _asm_AES_cbc_encrypt -.private_extern _asm_AES_cbc_encrypt -_asm_AES_cbc_encrypt: -_AES_cbc_encrypt: - cmpq $0,%rdx - je L$cbc_epilogue - pushfq - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$cbc_prologue: - - cld - movl %r9d,%r9d - - leaq L$AES_Te(%rip),%r14 - cmpq $0,%r9 - jne L$cbc_picked_te - leaq L$AES_Td(%rip),%r14 -L$cbc_picked_te: - - movl _OPENSSL_ia32cap_P(%rip),%r10d - cmpq $512,%rdx - jb L$cbc_slow_prologue - testq $15,%rdx - jnz L$cbc_slow_prologue - btl $28,%r10d - jc L$cbc_slow_prologue - - - leaq -88-248(%rsp),%r15 - andq $-64,%r15 - - - movq %r14,%r10 - leaq 2304(%r14),%r11 - movq %r15,%r12 - andq $0xFFF,%r10 - andq $0xFFF,%r11 - andq $0xFFF,%r12 - - cmpq %r11,%r12 - jb L$cbc_te_break_out - subq %r11,%r12 - subq %r12,%r15 - jmp L$cbc_te_ok -L$cbc_te_break_out: - subq %r10,%r12 - andq $0xFFF,%r12 - addq $320,%r12 - subq %r12,%r15 -.p2align 2 -L$cbc_te_ok: - - xchgq %rsp,%r15 - - movq %r15,16(%rsp) -L$cbc_fast_body: - movq %rdi,24(%rsp) - movq %rsi,32(%rsp) - movq %rdx,40(%rsp) - movq %rcx,48(%rsp) - movq %r8,56(%rsp) - movl $0,80+240(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - - movl 240(%r15),%eax - - movq %r15,%r10 - subq %r14,%r10 - andq $0xfff,%r10 - cmpq $2304,%r10 - jb L$cbc_do_ecopy - cmpq $4096-248,%r10 - jb L$cbc_skip_ecopy -.p2align 2 -L$cbc_do_ecopy: - movq %r15,%rsi - leaq 80(%rsp),%rdi - leaq 80(%rsp),%r15 - movl $30,%ecx -.long 0x90A548F3 - movl %eax,(%rdi) -L$cbc_skip_ecopy: - movq %r15,0(%rsp) - - movl $18,%ecx -.p2align 2 -L$cbc_prefetch_te: - movq 0(%r14),%r10 - movq 32(%r14),%r11 - movq 64(%r14),%r12 - movq 96(%r14),%r13 - leaq 128(%r14),%r14 - subl $1,%ecx - jnz L$cbc_prefetch_te - leaq -2304(%r14),%r14 - - cmpq $0,%rbx - je L$FAST_DECRYPT - - - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - -.p2align 2 -L$cbc_fast_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_encrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - movq %r10,40(%rsp) - jnz L$cbc_fast_enc_loop - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp L$cbc_fast_cleanup - - -.p2align 4 -L$FAST_DECRYPT: - cmpq %r8,%r9 - je L$cbc_fast_dec_in_place - - movq %rbp,64(%rsp) -.p2align 2 -L$cbc_fast_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 64(%rsp),%rbp - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0(%rbp),%eax - xorl 4(%rbp),%ebx - xorl 8(%rbp),%ecx - xorl 12(%rbp),%edx - movq %r8,%rbp - - subq $16,%r10 - movq %r10,40(%rsp) - movq %rbp,64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jnz L$cbc_fast_dec_loop - movq 56(%rsp),%r12 - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0(%r12) - movq %r11,8(%r12) - jmp L$cbc_fast_cleanup - -.p2align 4 -L$cbc_fast_dec_in_place: - movq 0(%rbp),%r10 - movq 8(%rbp),%r11 - movq %r10,0+64(%rsp) - movq %r11,8+64(%rsp) -.p2align 2 -L$cbc_fast_dec_in_place_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - - call _x86_64_AES_decrypt - - movq 24(%rsp),%r8 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jz L$cbc_fast_dec_in_place_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - movq %r10,40(%rsp) - jmp L$cbc_fast_dec_in_place_loop -L$cbc_fast_dec_in_place_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - -.p2align 2 -L$cbc_fast_cleanup: - cmpl $0,80+240(%rsp) - leaq 80(%rsp),%rdi - je L$cbc_exit - movl $30,%ecx - xorq %rax,%rax -.long 0x90AB48F3 - - jmp L$cbc_exit - - -.p2align 4 -L$cbc_slow_prologue: - - leaq -88(%rsp),%rbp - andq $-64,%rbp - - leaq -88-63(%rcx),%r10 - subq %rbp,%r10 - negq %r10 - andq $0x3c0,%r10 - subq %r10,%rbp - - xchgq %rsp,%rbp - - movq %rbp,16(%rsp) -L$cbc_slow_body: - - - - - movq %r8,56(%rsp) - movq %r8,%rbp - movq %r9,%rbx - movq %rsi,%r9 - movq %rdi,%r8 - movq %rcx,%r15 - movq %rdx,%r10 - - movl 240(%r15),%eax - movq %r15,0(%rsp) - shll $4,%eax - leaq (%r15,%rax,1),%rax - movq %rax,8(%rsp) - - - leaq 2048(%r14),%r14 - leaq 768-8(%rsp),%rax - subq %r14,%rax - andq $0x300,%rax - leaq (%r14,%rax,1),%r14 - - cmpq $0,%rbx - je L$SLOW_DECRYPT - - - testq $-16,%r10 - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - jz L$cbc_slow_enc_tail - -.p2align 2 -L$cbc_slow_enc_loop: - xorl 0(%r8),%eax - xorl 4(%r8),%ebx - xorl 8(%r8),%ecx - xorl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_encrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - subq $16,%r10 - testq $-16,%r10 - jnz L$cbc_slow_enc_loop - testq $15,%r10 - jnz L$cbc_slow_enc_tail - movq 56(%rsp),%rbp - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - jmp L$cbc_exit - -.p2align 2 -L$cbc_slow_enc_tail: - movq %rax,%r11 - movq %rcx,%r12 - movq %r10,%rcx - movq %r8,%rsi - movq %r9,%rdi -.long 0x9066A4F3 - movq $16,%rcx - subq %r10,%rcx - xorq %rax,%rax -.long 0x9066AAF3 - movq %r9,%r8 - movq $16,%r10 - movq %r11,%rax - movq %r12,%rcx - jmp L$cbc_slow_enc_loop - -.p2align 4 -L$SLOW_DECRYPT: - shrq $3,%rax - addq %rax,%r14 - - movq 0(%rbp),%r11 - movq 8(%rbp),%r12 - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - -.p2align 2 -L$cbc_slow_dec_loop: - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movq 0(%rsp),%r15 - movq %r8,24(%rsp) - movq %r9,32(%rsp) - movq %r10,40(%rsp) - - call _x86_64_AES_decrypt_compact - - movq 24(%rsp),%r8 - movq 32(%rsp),%r9 - movq 40(%rsp),%r10 - xorl 0+64(%rsp),%eax - xorl 4+64(%rsp),%ebx - xorl 8+64(%rsp),%ecx - xorl 12+64(%rsp),%edx - - movq 0(%r8),%r11 - movq 8(%r8),%r12 - subq $16,%r10 - jc L$cbc_slow_dec_partial - jz L$cbc_slow_dec_done - - movq %r11,0+64(%rsp) - movq %r12,8+64(%rsp) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - leaq 16(%r8),%r8 - leaq 16(%r9),%r9 - jmp L$cbc_slow_dec_loop -L$cbc_slow_dec_done: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0(%r9) - movl %ebx,4(%r9) - movl %ecx,8(%r9) - movl %edx,12(%r9) - - jmp L$cbc_exit - -.p2align 2 -L$cbc_slow_dec_partial: - movq 56(%rsp),%rdi - movq %r11,0(%rdi) - movq %r12,8(%rdi) - - movl %eax,0+64(%rsp) - movl %ebx,4+64(%rsp) - movl %ecx,8+64(%rsp) - movl %edx,12+64(%rsp) - - movq %r9,%rdi - leaq 64(%rsp),%rsi - leaq 16(%r10),%rcx -.long 0x9066A4F3 - jmp L$cbc_exit - -.p2align 4 -L$cbc_exit: - movq 16(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$cbc_popfq: - popfq -L$cbc_epilogue: - .byte 0xf3,0xc3 - -.p2align 6 -L$AES_Te: -.long 0xa56363c6,0xa56363c6 -.long 0x847c7cf8,0x847c7cf8 -.long 0x997777ee,0x997777ee -.long 0x8d7b7bf6,0x8d7b7bf6 -.long 0x0df2f2ff,0x0df2f2ff -.long 0xbd6b6bd6,0xbd6b6bd6 -.long 0xb16f6fde,0xb16f6fde -.long 0x54c5c591,0x54c5c591 -.long 0x50303060,0x50303060 -.long 0x03010102,0x03010102 -.long 0xa96767ce,0xa96767ce -.long 0x7d2b2b56,0x7d2b2b56 -.long 0x19fefee7,0x19fefee7 -.long 0x62d7d7b5,0x62d7d7b5 -.long 0xe6abab4d,0xe6abab4d -.long 0x9a7676ec,0x9a7676ec -.long 0x45caca8f,0x45caca8f -.long 0x9d82821f,0x9d82821f -.long 0x40c9c989,0x40c9c989 -.long 0x877d7dfa,0x877d7dfa -.long 0x15fafaef,0x15fafaef -.long 0xeb5959b2,0xeb5959b2 -.long 0xc947478e,0xc947478e -.long 0x0bf0f0fb,0x0bf0f0fb -.long 0xecadad41,0xecadad41 -.long 0x67d4d4b3,0x67d4d4b3 -.long 0xfda2a25f,0xfda2a25f -.long 0xeaafaf45,0xeaafaf45 -.long 0xbf9c9c23,0xbf9c9c23 -.long 0xf7a4a453,0xf7a4a453 -.long 0x967272e4,0x967272e4 -.long 0x5bc0c09b,0x5bc0c09b -.long 0xc2b7b775,0xc2b7b775 -.long 0x1cfdfde1,0x1cfdfde1 -.long 0xae93933d,0xae93933d -.long 0x6a26264c,0x6a26264c -.long 0x5a36366c,0x5a36366c -.long 0x413f3f7e,0x413f3f7e -.long 0x02f7f7f5,0x02f7f7f5 -.long 0x4fcccc83,0x4fcccc83 -.long 0x5c343468,0x5c343468 -.long 0xf4a5a551,0xf4a5a551 -.long 0x34e5e5d1,0x34e5e5d1 -.long 0x08f1f1f9,0x08f1f1f9 -.long 0x937171e2,0x937171e2 -.long 0x73d8d8ab,0x73d8d8ab -.long 0x53313162,0x53313162 -.long 0x3f15152a,0x3f15152a -.long 0x0c040408,0x0c040408 -.long 0x52c7c795,0x52c7c795 -.long 0x65232346,0x65232346 -.long 0x5ec3c39d,0x5ec3c39d -.long 0x28181830,0x28181830 -.long 0xa1969637,0xa1969637 -.long 0x0f05050a,0x0f05050a -.long 0xb59a9a2f,0xb59a9a2f -.long 0x0907070e,0x0907070e -.long 0x36121224,0x36121224 -.long 0x9b80801b,0x9b80801b -.long 0x3de2e2df,0x3de2e2df -.long 0x26ebebcd,0x26ebebcd -.long 0x6927274e,0x6927274e -.long 0xcdb2b27f,0xcdb2b27f -.long 0x9f7575ea,0x9f7575ea -.long 0x1b090912,0x1b090912 -.long 0x9e83831d,0x9e83831d -.long 0x742c2c58,0x742c2c58 -.long 0x2e1a1a34,0x2e1a1a34 -.long 0x2d1b1b36,0x2d1b1b36 -.long 0xb26e6edc,0xb26e6edc -.long 0xee5a5ab4,0xee5a5ab4 -.long 0xfba0a05b,0xfba0a05b -.long 0xf65252a4,0xf65252a4 -.long 0x4d3b3b76,0x4d3b3b76 -.long 0x61d6d6b7,0x61d6d6b7 -.long 0xceb3b37d,0xceb3b37d -.long 0x7b292952,0x7b292952 -.long 0x3ee3e3dd,0x3ee3e3dd -.long 0x712f2f5e,0x712f2f5e -.long 0x97848413,0x97848413 -.long 0xf55353a6,0xf55353a6 -.long 0x68d1d1b9,0x68d1d1b9 -.long 0x00000000,0x00000000 -.long 0x2cededc1,0x2cededc1 -.long 0x60202040,0x60202040 -.long 0x1ffcfce3,0x1ffcfce3 -.long 0xc8b1b179,0xc8b1b179 -.long 0xed5b5bb6,0xed5b5bb6 -.long 0xbe6a6ad4,0xbe6a6ad4 -.long 0x46cbcb8d,0x46cbcb8d -.long 0xd9bebe67,0xd9bebe67 -.long 0x4b393972,0x4b393972 -.long 0xde4a4a94,0xde4a4a94 -.long 0xd44c4c98,0xd44c4c98 -.long 0xe85858b0,0xe85858b0 -.long 0x4acfcf85,0x4acfcf85 -.long 0x6bd0d0bb,0x6bd0d0bb -.long 0x2aefefc5,0x2aefefc5 -.long 0xe5aaaa4f,0xe5aaaa4f -.long 0x16fbfbed,0x16fbfbed -.long 0xc5434386,0xc5434386 -.long 0xd74d4d9a,0xd74d4d9a -.long 0x55333366,0x55333366 -.long 0x94858511,0x94858511 -.long 0xcf45458a,0xcf45458a -.long 0x10f9f9e9,0x10f9f9e9 -.long 0x06020204,0x06020204 -.long 0x817f7ffe,0x817f7ffe -.long 0xf05050a0,0xf05050a0 -.long 0x443c3c78,0x443c3c78 -.long 0xba9f9f25,0xba9f9f25 -.long 0xe3a8a84b,0xe3a8a84b -.long 0xf35151a2,0xf35151a2 -.long 0xfea3a35d,0xfea3a35d -.long 0xc0404080,0xc0404080 -.long 0x8a8f8f05,0x8a8f8f05 -.long 0xad92923f,0xad92923f -.long 0xbc9d9d21,0xbc9d9d21 -.long 0x48383870,0x48383870 -.long 0x04f5f5f1,0x04f5f5f1 -.long 0xdfbcbc63,0xdfbcbc63 -.long 0xc1b6b677,0xc1b6b677 -.long 0x75dadaaf,0x75dadaaf -.long 0x63212142,0x63212142 -.long 0x30101020,0x30101020 -.long 0x1affffe5,0x1affffe5 -.long 0x0ef3f3fd,0x0ef3f3fd -.long 0x6dd2d2bf,0x6dd2d2bf -.long 0x4ccdcd81,0x4ccdcd81 -.long 0x140c0c18,0x140c0c18 -.long 0x35131326,0x35131326 -.long 0x2fececc3,0x2fececc3 -.long 0xe15f5fbe,0xe15f5fbe -.long 0xa2979735,0xa2979735 -.long 0xcc444488,0xcc444488 -.long 0x3917172e,0x3917172e -.long 0x57c4c493,0x57c4c493 -.long 0xf2a7a755,0xf2a7a755 -.long 0x827e7efc,0x827e7efc -.long 0x473d3d7a,0x473d3d7a -.long 0xac6464c8,0xac6464c8 -.long 0xe75d5dba,0xe75d5dba -.long 0x2b191932,0x2b191932 -.long 0x957373e6,0x957373e6 -.long 0xa06060c0,0xa06060c0 -.long 0x98818119,0x98818119 -.long 0xd14f4f9e,0xd14f4f9e -.long 0x7fdcdca3,0x7fdcdca3 -.long 0x66222244,0x66222244 -.long 0x7e2a2a54,0x7e2a2a54 -.long 0xab90903b,0xab90903b -.long 0x8388880b,0x8388880b -.long 0xca46468c,0xca46468c -.long 0x29eeeec7,0x29eeeec7 -.long 0xd3b8b86b,0xd3b8b86b -.long 0x3c141428,0x3c141428 -.long 0x79dedea7,0x79dedea7 -.long 0xe25e5ebc,0xe25e5ebc -.long 0x1d0b0b16,0x1d0b0b16 -.long 0x76dbdbad,0x76dbdbad -.long 0x3be0e0db,0x3be0e0db -.long 0x56323264,0x56323264 -.long 0x4e3a3a74,0x4e3a3a74 -.long 0x1e0a0a14,0x1e0a0a14 -.long 0xdb494992,0xdb494992 -.long 0x0a06060c,0x0a06060c -.long 0x6c242448,0x6c242448 -.long 0xe45c5cb8,0xe45c5cb8 -.long 0x5dc2c29f,0x5dc2c29f -.long 0x6ed3d3bd,0x6ed3d3bd -.long 0xefacac43,0xefacac43 -.long 0xa66262c4,0xa66262c4 -.long 0xa8919139,0xa8919139 -.long 0xa4959531,0xa4959531 -.long 0x37e4e4d3,0x37e4e4d3 -.long 0x8b7979f2,0x8b7979f2 -.long 0x32e7e7d5,0x32e7e7d5 -.long 0x43c8c88b,0x43c8c88b -.long 0x5937376e,0x5937376e -.long 0xb76d6dda,0xb76d6dda -.long 0x8c8d8d01,0x8c8d8d01 -.long 0x64d5d5b1,0x64d5d5b1 -.long 0xd24e4e9c,0xd24e4e9c -.long 0xe0a9a949,0xe0a9a949 -.long 0xb46c6cd8,0xb46c6cd8 -.long 0xfa5656ac,0xfa5656ac -.long 0x07f4f4f3,0x07f4f4f3 -.long 0x25eaeacf,0x25eaeacf -.long 0xaf6565ca,0xaf6565ca -.long 0x8e7a7af4,0x8e7a7af4 -.long 0xe9aeae47,0xe9aeae47 -.long 0x18080810,0x18080810 -.long 0xd5baba6f,0xd5baba6f -.long 0x887878f0,0x887878f0 -.long 0x6f25254a,0x6f25254a -.long 0x722e2e5c,0x722e2e5c -.long 0x241c1c38,0x241c1c38 -.long 0xf1a6a657,0xf1a6a657 -.long 0xc7b4b473,0xc7b4b473 -.long 0x51c6c697,0x51c6c697 -.long 0x23e8e8cb,0x23e8e8cb -.long 0x7cdddda1,0x7cdddda1 -.long 0x9c7474e8,0x9c7474e8 -.long 0x211f1f3e,0x211f1f3e -.long 0xdd4b4b96,0xdd4b4b96 -.long 0xdcbdbd61,0xdcbdbd61 -.long 0x868b8b0d,0x868b8b0d -.long 0x858a8a0f,0x858a8a0f -.long 0x907070e0,0x907070e0 -.long 0x423e3e7c,0x423e3e7c -.long 0xc4b5b571,0xc4b5b571 -.long 0xaa6666cc,0xaa6666cc -.long 0xd8484890,0xd8484890 -.long 0x05030306,0x05030306 -.long 0x01f6f6f7,0x01f6f6f7 -.long 0x120e0e1c,0x120e0e1c -.long 0xa36161c2,0xa36161c2 -.long 0x5f35356a,0x5f35356a -.long 0xf95757ae,0xf95757ae -.long 0xd0b9b969,0xd0b9b969 -.long 0x91868617,0x91868617 -.long 0x58c1c199,0x58c1c199 -.long 0x271d1d3a,0x271d1d3a -.long 0xb99e9e27,0xb99e9e27 -.long 0x38e1e1d9,0x38e1e1d9 -.long 0x13f8f8eb,0x13f8f8eb -.long 0xb398982b,0xb398982b -.long 0x33111122,0x33111122 -.long 0xbb6969d2,0xbb6969d2 -.long 0x70d9d9a9,0x70d9d9a9 -.long 0x898e8e07,0x898e8e07 -.long 0xa7949433,0xa7949433 -.long 0xb69b9b2d,0xb69b9b2d -.long 0x221e1e3c,0x221e1e3c -.long 0x92878715,0x92878715 -.long 0x20e9e9c9,0x20e9e9c9 -.long 0x49cece87,0x49cece87 -.long 0xff5555aa,0xff5555aa -.long 0x78282850,0x78282850 -.long 0x7adfdfa5,0x7adfdfa5 -.long 0x8f8c8c03,0x8f8c8c03 -.long 0xf8a1a159,0xf8a1a159 -.long 0x80898909,0x80898909 -.long 0x170d0d1a,0x170d0d1a -.long 0xdabfbf65,0xdabfbf65 -.long 0x31e6e6d7,0x31e6e6d7 -.long 0xc6424284,0xc6424284 -.long 0xb86868d0,0xb86868d0 -.long 0xc3414182,0xc3414182 -.long 0xb0999929,0xb0999929 -.long 0x772d2d5a,0x772d2d5a -.long 0x110f0f1e,0x110f0f1e -.long 0xcbb0b07b,0xcbb0b07b -.long 0xfc5454a8,0xfc5454a8 -.long 0xd6bbbb6d,0xd6bbbb6d -.long 0x3a16162c,0x3a16162c -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.byte 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5 -.byte 0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76 -.byte 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0 -.byte 0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0 -.byte 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc -.byte 0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15 -.byte 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a -.byte 0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75 -.byte 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0 -.byte 0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84 -.byte 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b -.byte 0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf -.byte 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85 -.byte 0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8 -.byte 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5 -.byte 0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2 -.byte 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17 -.byte 0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73 -.byte 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88 -.byte 0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb -.byte 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c -.byte 0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79 -.byte 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9 -.byte 0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08 -.byte 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6 -.byte 0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a -.byte 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e -.byte 0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e -.byte 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94 -.byte 0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf -.byte 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68 -.byte 0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16 -.long 0x00000001, 0x00000002, 0x00000004, 0x00000008 -.long 0x00000010, 0x00000020, 0x00000040, 0x00000080 -.long 0x0000001b, 0x00000036, 0x80808080, 0x80808080 -.long 0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b -.p2align 6 -L$AES_Td: -.long 0x50a7f451,0x50a7f451 -.long 0x5365417e,0x5365417e -.long 0xc3a4171a,0xc3a4171a -.long 0x965e273a,0x965e273a -.long 0xcb6bab3b,0xcb6bab3b -.long 0xf1459d1f,0xf1459d1f -.long 0xab58faac,0xab58faac -.long 0x9303e34b,0x9303e34b -.long 0x55fa3020,0x55fa3020 -.long 0xf66d76ad,0xf66d76ad -.long 0x9176cc88,0x9176cc88 -.long 0x254c02f5,0x254c02f5 -.long 0xfcd7e54f,0xfcd7e54f -.long 0xd7cb2ac5,0xd7cb2ac5 -.long 0x80443526,0x80443526 -.long 0x8fa362b5,0x8fa362b5 -.long 0x495ab1de,0x495ab1de -.long 0x671bba25,0x671bba25 -.long 0x980eea45,0x980eea45 -.long 0xe1c0fe5d,0xe1c0fe5d -.long 0x02752fc3,0x02752fc3 -.long 0x12f04c81,0x12f04c81 -.long 0xa397468d,0xa397468d -.long 0xc6f9d36b,0xc6f9d36b -.long 0xe75f8f03,0xe75f8f03 -.long 0x959c9215,0x959c9215 -.long 0xeb7a6dbf,0xeb7a6dbf -.long 0xda595295,0xda595295 -.long 0x2d83bed4,0x2d83bed4 -.long 0xd3217458,0xd3217458 -.long 0x2969e049,0x2969e049 -.long 0x44c8c98e,0x44c8c98e -.long 0x6a89c275,0x6a89c275 -.long 0x78798ef4,0x78798ef4 -.long 0x6b3e5899,0x6b3e5899 -.long 0xdd71b927,0xdd71b927 -.long 0xb64fe1be,0xb64fe1be -.long 0x17ad88f0,0x17ad88f0 -.long 0x66ac20c9,0x66ac20c9 -.long 0xb43ace7d,0xb43ace7d -.long 0x184adf63,0x184adf63 -.long 0x82311ae5,0x82311ae5 -.long 0x60335197,0x60335197 -.long 0x457f5362,0x457f5362 -.long 0xe07764b1,0xe07764b1 -.long 0x84ae6bbb,0x84ae6bbb -.long 0x1ca081fe,0x1ca081fe -.long 0x942b08f9,0x942b08f9 -.long 0x58684870,0x58684870 -.long 0x19fd458f,0x19fd458f -.long 0x876cde94,0x876cde94 -.long 0xb7f87b52,0xb7f87b52 -.long 0x23d373ab,0x23d373ab -.long 0xe2024b72,0xe2024b72 -.long 0x578f1fe3,0x578f1fe3 -.long 0x2aab5566,0x2aab5566 -.long 0x0728ebb2,0x0728ebb2 -.long 0x03c2b52f,0x03c2b52f -.long 0x9a7bc586,0x9a7bc586 -.long 0xa50837d3,0xa50837d3 -.long 0xf2872830,0xf2872830 -.long 0xb2a5bf23,0xb2a5bf23 -.long 0xba6a0302,0xba6a0302 -.long 0x5c8216ed,0x5c8216ed -.long 0x2b1ccf8a,0x2b1ccf8a -.long 0x92b479a7,0x92b479a7 -.long 0xf0f207f3,0xf0f207f3 -.long 0xa1e2694e,0xa1e2694e -.long 0xcdf4da65,0xcdf4da65 -.long 0xd5be0506,0xd5be0506 -.long 0x1f6234d1,0x1f6234d1 -.long 0x8afea6c4,0x8afea6c4 -.long 0x9d532e34,0x9d532e34 -.long 0xa055f3a2,0xa055f3a2 -.long 0x32e18a05,0x32e18a05 -.long 0x75ebf6a4,0x75ebf6a4 -.long 0x39ec830b,0x39ec830b -.long 0xaaef6040,0xaaef6040 -.long 0x069f715e,0x069f715e -.long 0x51106ebd,0x51106ebd -.long 0xf98a213e,0xf98a213e -.long 0x3d06dd96,0x3d06dd96 -.long 0xae053edd,0xae053edd -.long 0x46bde64d,0x46bde64d -.long 0xb58d5491,0xb58d5491 -.long 0x055dc471,0x055dc471 -.long 0x6fd40604,0x6fd40604 -.long 0xff155060,0xff155060 -.long 0x24fb9819,0x24fb9819 -.long 0x97e9bdd6,0x97e9bdd6 -.long 0xcc434089,0xcc434089 -.long 0x779ed967,0x779ed967 -.long 0xbd42e8b0,0xbd42e8b0 -.long 0x888b8907,0x888b8907 -.long 0x385b19e7,0x385b19e7 -.long 0xdbeec879,0xdbeec879 -.long 0x470a7ca1,0x470a7ca1 -.long 0xe90f427c,0xe90f427c -.long 0xc91e84f8,0xc91e84f8 -.long 0x00000000,0x00000000 -.long 0x83868009,0x83868009 -.long 0x48ed2b32,0x48ed2b32 -.long 0xac70111e,0xac70111e -.long 0x4e725a6c,0x4e725a6c -.long 0xfbff0efd,0xfbff0efd -.long 0x5638850f,0x5638850f -.long 0x1ed5ae3d,0x1ed5ae3d -.long 0x27392d36,0x27392d36 -.long 0x64d90f0a,0x64d90f0a -.long 0x21a65c68,0x21a65c68 -.long 0xd1545b9b,0xd1545b9b -.long 0x3a2e3624,0x3a2e3624 -.long 0xb1670a0c,0xb1670a0c -.long 0x0fe75793,0x0fe75793 -.long 0xd296eeb4,0xd296eeb4 -.long 0x9e919b1b,0x9e919b1b -.long 0x4fc5c080,0x4fc5c080 -.long 0xa220dc61,0xa220dc61 -.long 0x694b775a,0x694b775a -.long 0x161a121c,0x161a121c -.long 0x0aba93e2,0x0aba93e2 -.long 0xe52aa0c0,0xe52aa0c0 -.long 0x43e0223c,0x43e0223c -.long 0x1d171b12,0x1d171b12 -.long 0x0b0d090e,0x0b0d090e -.long 0xadc78bf2,0xadc78bf2 -.long 0xb9a8b62d,0xb9a8b62d -.long 0xc8a91e14,0xc8a91e14 -.long 0x8519f157,0x8519f157 -.long 0x4c0775af,0x4c0775af -.long 0xbbdd99ee,0xbbdd99ee -.long 0xfd607fa3,0xfd607fa3 -.long 0x9f2601f7,0x9f2601f7 -.long 0xbcf5725c,0xbcf5725c -.long 0xc53b6644,0xc53b6644 -.long 0x347efb5b,0x347efb5b -.long 0x7629438b,0x7629438b -.long 0xdcc623cb,0xdcc623cb -.long 0x68fcedb6,0x68fcedb6 -.long 0x63f1e4b8,0x63f1e4b8 -.long 0xcadc31d7,0xcadc31d7 -.long 0x10856342,0x10856342 -.long 0x40229713,0x40229713 -.long 0x2011c684,0x2011c684 -.long 0x7d244a85,0x7d244a85 -.long 0xf83dbbd2,0xf83dbbd2 -.long 0x1132f9ae,0x1132f9ae -.long 0x6da129c7,0x6da129c7 -.long 0x4b2f9e1d,0x4b2f9e1d -.long 0xf330b2dc,0xf330b2dc -.long 0xec52860d,0xec52860d -.long 0xd0e3c177,0xd0e3c177 -.long 0x6c16b32b,0x6c16b32b -.long 0x99b970a9,0x99b970a9 -.long 0xfa489411,0xfa489411 -.long 0x2264e947,0x2264e947 -.long 0xc48cfca8,0xc48cfca8 -.long 0x1a3ff0a0,0x1a3ff0a0 -.long 0xd82c7d56,0xd82c7d56 -.long 0xef903322,0xef903322 -.long 0xc74e4987,0xc74e4987 -.long 0xc1d138d9,0xc1d138d9 -.long 0xfea2ca8c,0xfea2ca8c -.long 0x360bd498,0x360bd498 -.long 0xcf81f5a6,0xcf81f5a6 -.long 0x28de7aa5,0x28de7aa5 -.long 0x268eb7da,0x268eb7da -.long 0xa4bfad3f,0xa4bfad3f -.long 0xe49d3a2c,0xe49d3a2c -.long 0x0d927850,0x0d927850 -.long 0x9bcc5f6a,0x9bcc5f6a -.long 0x62467e54,0x62467e54 -.long 0xc2138df6,0xc2138df6 -.long 0xe8b8d890,0xe8b8d890 -.long 0x5ef7392e,0x5ef7392e -.long 0xf5afc382,0xf5afc382 -.long 0xbe805d9f,0xbe805d9f -.long 0x7c93d069,0x7c93d069 -.long 0xa92dd56f,0xa92dd56f -.long 0xb31225cf,0xb31225cf -.long 0x3b99acc8,0x3b99acc8 -.long 0xa77d1810,0xa77d1810 -.long 0x6e639ce8,0x6e639ce8 -.long 0x7bbb3bdb,0x7bbb3bdb -.long 0x097826cd,0x097826cd -.long 0xf418596e,0xf418596e -.long 0x01b79aec,0x01b79aec -.long 0xa89a4f83,0xa89a4f83 -.long 0x656e95e6,0x656e95e6 -.long 0x7ee6ffaa,0x7ee6ffaa -.long 0x08cfbc21,0x08cfbc21 -.long 0xe6e815ef,0xe6e815ef -.long 0xd99be7ba,0xd99be7ba -.long 0xce366f4a,0xce366f4a -.long 0xd4099fea,0xd4099fea -.long 0xd67cb029,0xd67cb029 -.long 0xafb2a431,0xafb2a431 -.long 0x31233f2a,0x31233f2a -.long 0x3094a5c6,0x3094a5c6 -.long 0xc066a235,0xc066a235 -.long 0x37bc4e74,0x37bc4e74 -.long 0xa6ca82fc,0xa6ca82fc -.long 0xb0d090e0,0xb0d090e0 -.long 0x15d8a733,0x15d8a733 -.long 0x4a9804f1,0x4a9804f1 -.long 0xf7daec41,0xf7daec41 -.long 0x0e50cd7f,0x0e50cd7f -.long 0x2ff69117,0x2ff69117 -.long 0x8dd64d76,0x8dd64d76 -.long 0x4db0ef43,0x4db0ef43 -.long 0x544daacc,0x544daacc -.long 0xdf0496e4,0xdf0496e4 -.long 0xe3b5d19e,0xe3b5d19e -.long 0x1b886a4c,0x1b886a4c -.long 0xb81f2cc1,0xb81f2cc1 -.long 0x7f516546,0x7f516546 -.long 0x04ea5e9d,0x04ea5e9d -.long 0x5d358c01,0x5d358c01 -.long 0x737487fa,0x737487fa -.long 0x2e410bfb,0x2e410bfb -.long 0x5a1d67b3,0x5a1d67b3 -.long 0x52d2db92,0x52d2db92 -.long 0x335610e9,0x335610e9 -.long 0x1347d66d,0x1347d66d -.long 0x8c61d79a,0x8c61d79a -.long 0x7a0ca137,0x7a0ca137 -.long 0x8e14f859,0x8e14f859 -.long 0x893c13eb,0x893c13eb -.long 0xee27a9ce,0xee27a9ce -.long 0x35c961b7,0x35c961b7 -.long 0xede51ce1,0xede51ce1 -.long 0x3cb1477a,0x3cb1477a -.long 0x59dfd29c,0x59dfd29c -.long 0x3f73f255,0x3f73f255 -.long 0x79ce1418,0x79ce1418 -.long 0xbf37c773,0xbf37c773 -.long 0xeacdf753,0xeacdf753 -.long 0x5baafd5f,0x5baafd5f -.long 0x146f3ddf,0x146f3ddf -.long 0x86db4478,0x86db4478 -.long 0x81f3afca,0x81f3afca -.long 0x3ec468b9,0x3ec468b9 -.long 0x2c342438,0x2c342438 -.long 0x5f40a3c2,0x5f40a3c2 -.long 0x72c31d16,0x72c31d16 -.long 0x0c25e2bc,0x0c25e2bc -.long 0x8b493c28,0x8b493c28 -.long 0x41950dff,0x41950dff -.long 0x7101a839,0x7101a839 -.long 0xdeb30c08,0xdeb30c08 -.long 0x9ce4b4d8,0x9ce4b4d8 -.long 0x90c15664,0x90c15664 -.long 0x6184cb7b,0x6184cb7b -.long 0x70b632d5,0x70b632d5 -.long 0x745c6c48,0x745c6c48 -.long 0x4257b8d0,0x4257b8d0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38 -.byte 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb -.byte 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87 -.byte 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb -.byte 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d -.byte 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e -.byte 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2 -.byte 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25 -.byte 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16 -.byte 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92 -.byte 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda -.byte 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84 -.byte 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a -.byte 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06 -.byte 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02 -.byte 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b -.byte 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea -.byte 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73 -.byte 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85 -.byte 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e -.byte 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89 -.byte 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b -.byte 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20 -.byte 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4 -.byte 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31 -.byte 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f -.byte 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d -.byte 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef -.byte 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0 -.byte 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61 -.byte 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26 -.byte 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d -.long 0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe -.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0 -.byte 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-mb-x86_64.s deleted file mode 100644 index e45c622a525e82..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-mb-x86_64.s +++ /dev/null @@ -1,505 +0,0 @@ -.text - - - -.globl _aesni_multi_cbc_encrypt - -.p2align 5 -_aesni_multi_cbc_encrypt: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -L$enc4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -L$enc4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm2 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm3 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm4 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm5 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz L$enc4x_done - - movups 16-120(%rsi),%xmm1 - pxor %xmm12,%xmm2 - movups 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm3 - movl 240-120(%rsi),%eax - pxor %xmm12,%xmm4 - movdqu (%r8),%xmm6 - pxor %xmm12,%xmm5 - movdqu (%r9),%xmm7 - pxor %xmm6,%xmm2 - movdqu (%r10),%xmm8 - pxor %xmm7,%xmm3 - movdqu (%r11),%xmm9 - pxor %xmm8,%xmm4 - pxor %xmm9,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp L$oop_enc4x - -.p2align 5 -L$oop_enc4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,220,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,220,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r10,%rbx,1) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,220,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,220,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,220,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,220,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,220,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,220,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,220,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,220,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 160-120(%rsi),%xmm0 - - jb L$enc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 192-120(%rsi),%xmm0 - - je L$enc4x_tail - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups 224-120(%rsi),%xmm0 - jmp L$enc4x_tail - -.p2align 5 -L$enc4x_tail: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqu (%r8,%rbx,1),%xmm6 - movdqu 16-120(%rsi),%xmm1 - -.byte 102,15,56,221,208 - movdqu (%r9,%rbx,1),%xmm7 - pxor %xmm12,%xmm6 -.byte 102,15,56,221,216 - movdqu (%r10,%rbx,1),%xmm8 - pxor %xmm12,%xmm7 -.byte 102,15,56,221,224 - movdqu (%r11,%rbx,1),%xmm9 - pxor %xmm12,%xmm8 -.byte 102,15,56,221,232 - movdqu 32-120(%rsi),%xmm0 - pxor %xmm12,%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - pxor %xmm6,%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - pxor %xmm7,%xmm3 - movups %xmm4,-16(%r14,%rbx,1) - pxor %xmm8,%xmm4 - movups %xmm5,-16(%r15,%rbx,1) - pxor %xmm9,%xmm5 - - decl %edx - jnz L$oop_enc4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - - - - - - - - - - leaq 160(%rdi),%rdi - decl %edx - jnz L$enc4x_loop_grande - -L$enc4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$enc4x_epilogue: - .byte 0xf3,0xc3 - - -.globl _aesni_multi_cbc_decrypt - -.p2align 5 -_aesni_multi_cbc_decrypt: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - - - - - - subq $48,%rsp - andq $-64,%rsp - movq %rax,16(%rsp) - -L$dec4x_body: - movdqu (%rsi),%xmm12 - leaq 120(%rsi),%rsi - leaq 80(%rdi),%rdi - -L$dec4x_loop_grande: - movl %edx,24(%rsp) - xorl %edx,%edx - movl -64(%rdi),%ecx - movq -80(%rdi),%r8 - cmpl %edx,%ecx - movq -72(%rdi),%r12 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -56(%rdi),%xmm6 - movl %ecx,32(%rsp) - cmovleq %rsp,%r8 - movl -24(%rdi),%ecx - movq -40(%rdi),%r9 - cmpl %edx,%ecx - movq -32(%rdi),%r13 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu -16(%rdi),%xmm7 - movl %ecx,36(%rsp) - cmovleq %rsp,%r9 - movl 16(%rdi),%ecx - movq 0(%rdi),%r10 - cmpl %edx,%ecx - movq 8(%rdi),%r14 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 24(%rdi),%xmm8 - movl %ecx,40(%rsp) - cmovleq %rsp,%r10 - movl 56(%rdi),%ecx - movq 40(%rdi),%r11 - cmpl %edx,%ecx - movq 48(%rdi),%r15 - cmovgl %ecx,%edx - testl %ecx,%ecx - movdqu 64(%rdi),%xmm9 - movl %ecx,44(%rsp) - cmovleq %rsp,%r11 - testl %edx,%edx - jz L$dec4x_done - - movups 16-120(%rsi),%xmm1 - movups 32-120(%rsi),%xmm0 - movl 240-120(%rsi),%eax - movdqu (%r8),%xmm2 - movdqu (%r9),%xmm3 - pxor %xmm12,%xmm2 - movdqu (%r10),%xmm4 - pxor %xmm12,%xmm3 - movdqu (%r11),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - movdqa 32(%rsp),%xmm10 - xorq %rbx,%rbx - jmp L$oop_dec4x - -.p2align 5 -L$oop_dec4x: - addq $16,%rbx - leaq 16(%rsp),%rbp - movl $1,%ecx - subq %rbx,%rbp - -.byte 102,15,56,222,209 - prefetcht0 31(%r8,%rbx,1) - prefetcht0 31(%r9,%rbx,1) -.byte 102,15,56,222,217 - prefetcht0 31(%r10,%rbx,1) - prefetcht0 31(%r11,%rbx,1) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 48-120(%rsi),%xmm1 - cmpl 32(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r8 - cmovgq %rbp,%r12 -.byte 102,15,56,222,232 - movups -56(%rsi),%xmm0 - cmpl 36(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r9 - cmovgq %rbp,%r13 -.byte 102,15,56,222,233 - movups -40(%rsi),%xmm1 - cmpl 40(%rsp),%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - cmovgeq %rbp,%r10 - cmovgq %rbp,%r14 -.byte 102,15,56,222,232 - movups -24(%rsi),%xmm0 - cmpl 44(%rsp),%ecx -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - cmovgeq %rbp,%r11 - cmovgq %rbp,%r15 -.byte 102,15,56,222,233 - movups -8(%rsi),%xmm1 - movdqa %xmm10,%xmm11 -.byte 102,15,56,222,208 - prefetcht0 15(%r12,%rbx,1) - prefetcht0 15(%r13,%rbx,1) -.byte 102,15,56,222,216 - prefetcht0 15(%r14,%rbx,1) - prefetcht0 15(%r15,%rbx,1) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 128-120(%rsi),%xmm0 - pxor %xmm12,%xmm12 - -.byte 102,15,56,222,209 - pcmpgtd %xmm12,%xmm11 - movdqu -120(%rsi),%xmm12 -.byte 102,15,56,222,217 - paddd %xmm11,%xmm10 - movdqa %xmm10,32(%rsp) -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 144-120(%rsi),%xmm1 - - cmpl $11,%eax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 160-120(%rsi),%xmm0 - - jb L$dec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 176-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 192-120(%rsi),%xmm0 - - je L$dec4x_tail - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups 208-120(%rsi),%xmm1 - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups 224-120(%rsi),%xmm0 - jmp L$dec4x_tail - -.p2align 5 -L$dec4x_tail: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,222,233 - movdqu 16-120(%rsi),%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm0,%xmm9 - movdqu 32-120(%rsi),%xmm0 - -.byte 102,15,56,223,214 -.byte 102,15,56,223,223 - movdqu -16(%r8,%rbx,1),%xmm6 - movdqu -16(%r9,%rbx,1),%xmm7 -.byte 102,65,15,56,223,224 -.byte 102,65,15,56,223,233 - movdqu -16(%r10,%rbx,1),%xmm8 - movdqu -16(%r11,%rbx,1),%xmm9 - - movups %xmm2,-16(%r12,%rbx,1) - movdqu (%r8,%rbx,1),%xmm2 - movups %xmm3,-16(%r13,%rbx,1) - movdqu (%r9,%rbx,1),%xmm3 - pxor %xmm12,%xmm2 - movups %xmm4,-16(%r14,%rbx,1) - movdqu (%r10,%rbx,1),%xmm4 - pxor %xmm12,%xmm3 - movups %xmm5,-16(%r15,%rbx,1) - movdqu (%r11,%rbx,1),%xmm5 - pxor %xmm12,%xmm4 - pxor %xmm12,%xmm5 - - decl %edx - jnz L$oop_dec4x - - movq 16(%rsp),%rax - movl 24(%rsp),%edx - - leaq 160(%rdi),%rdi - decl %edx - jnz L$dec4x_loop_grande - -L$dec4x_done: - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$dec4x_epilogue: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha1-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha1-x86_64.s deleted file mode 100644 index 8cd95238b020d7..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha1-x86_64.s +++ /dev/null @@ -1,1681 +0,0 @@ -.text - - -.globl _aesni_cbc_sha1_enc - -.p2align 5 -_aesni_cbc_sha1_enc: - - movl _OPENSSL_ia32cap_P+0(%rip),%r10d - movq _OPENSSL_ia32cap_P+4(%rip),%r11 - btq $61,%r11 - jc aesni_cbc_sha1_enc_shaext - jmp aesni_cbc_sha1_enc_ssse3 - .byte 0xf3,0xc3 - - -.p2align 5 -aesni_cbc_sha1_enc_ssse3: - movq 8(%rsp),%r10 - - - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -104(%rsp),%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - leaq 112(%rcx),%r15 - movdqu (%r8),%xmm2 - movq %r8,88(%rsp) - shlq $6,%r14 - subq %r12,%r13 - movl 240-112(%r15),%r8d - addq %r10,%r14 - - leaq K_XX_XX(%rip),%r11 - movl 0(%r9),%eax - movl 4(%r9),%ebx - movl 8(%r9),%ecx - movl 12(%r9),%edx - movl %ebx,%esi - movl 16(%r9),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - addq $64,%r10 - paddd %xmm13,%xmm4 -.byte 102,15,56,0,251 - paddd %xmm13,%xmm5 - paddd %xmm13,%xmm6 - movdqa %xmm4,0(%rsp) - psubd %xmm13,%xmm4 - movdqa %xmm5,16(%rsp) - psubd %xmm13,%xmm5 - movdqa %xmm6,32(%rsp) - psubd %xmm13,%xmm6 - movups -112(%r15),%xmm15 - movups 16-112(%r15),%xmm0 - jmp L$oop_ssse3 -.p2align 5 -L$oop_ssse3: - rorl $2,%ebx - movups 0(%r12),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm4,%xmm8 - xorl %edx,%esi - movdqa %xmm7,%xmm12 - paddd %xmm7,%xmm13 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm5,%xmm8 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm4,%xmm8 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm6,%xmm12 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm12,%xmm8 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm13,48(%rsp) - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - movdqa %xmm8,%xmm3 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm8,%xmm12 - xorl %ebx,%esi - pslldq $12,%xmm3 - paddd %xmm8,%xmm8 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm12 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm13 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm3 - addl %edx,%ecx - rorl $7,%edx - por %xmm12,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm13 - pxor %xmm3,%xmm8 - xorl %ebp,%edx - movdqa 0(%r11),%xmm3 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm13,%xmm8 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm5,%xmm9 - xorl %ebp,%esi - movdqa %xmm8,%xmm13 - paddd %xmm8,%xmm3 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm6,%xmm9 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm5,%xmm9 - addl %ebx,%eax - rorl $7,%ebx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - pxor %xmm7,%xmm13 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm13,%xmm9 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm3,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm9,%xmm12 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm9,%xmm13 - xorl %ecx,%esi - pslldq $12,%xmm12 - paddd %xmm9,%xmm9 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm3 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm12 - addl %ebp,%edx - rorl $7,%ebp - por %xmm13,%xmm9 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm3 - pxor %xmm12,%xmm9 - xorl %eax,%ebp - movdqa 16(%r11),%xmm12 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm3,%xmm9 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm6,%xmm10 - xorl %eax,%esi - movdqa %xmm9,%xmm3 - paddd %xmm9,%xmm12 - movl %ecx,%edi - addl 32(%rsp),%ebx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm7,%xmm10 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm3 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm6,%xmm10 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm8,%xmm3 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm3,%xmm10 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm12,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm10,%xmm13 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm10,%xmm3 - xorl %edx,%esi - pslldq $12,%xmm13 - paddd %xmm10,%xmm10 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm3 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm13,%xmm12 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm13 - addl %eax,%ebp - rorl $7,%eax - por %xmm3,%xmm10 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm12 - pxor %xmm13,%xmm10 - xorl %ebx,%eax - movdqa 16(%r11),%xmm13 - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %eax,%esi - pxor %xmm12,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm7,%xmm11 - xorl %ebx,%esi - movdqa %xmm10,%xmm12 - paddd %xmm10,%xmm13 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm8,%xmm11 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm12 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm7,%xmm11 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm9,%xmm12 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm11 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm13,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm11,%xmm3 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm11,%xmm12 - xorl %ebp,%esi - pslldq $12,%xmm3 - paddd %xmm11,%xmm11 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm12 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm3,%xmm13 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - cmpl $11,%r8d - jb L$aesenclast1 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast1 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast1: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - por %xmm12,%xmm11 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm13 - pxor %xmm3,%xmm11 - xorl %ecx,%ebx - movdqa 16(%r11),%xmm3 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm13,%xmm11 - pshufd $238,%xmm10,%xmm13 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm8,%xmm4 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm11,%xmm13 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm5,%xmm4 - addl %esi,%edx - movups 16(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%r12,%r13,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %eax,%edi - movdqa %xmm3,%xmm12 - xorl %ebx,%eax - paddd %xmm11,%xmm3 - addl %ebp,%edx - pxor %xmm13,%xmm4 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm4,%xmm13 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm3,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm4 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm13 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - por %xmm13,%xmm4 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm11,%xmm3 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm9,%xmm5 - addl 16(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm4,%xmm3 - movl %eax,%edi - roll $5,%eax - pxor %xmm6,%xmm5 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebx - paddd %xmm4,%xmm12 - addl %eax,%ebp - pxor %xmm3,%xmm5 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm5,%xmm3 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm12,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm5 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm3 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm3,%xmm5 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm4,%xmm12 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm10,%xmm6 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm5,%xmm12 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm7,%xmm6 - addl %esi,%eax - xorl %edx,%edi - movdqa 32(%r11),%xmm3 - rorl $7,%ecx - paddd %xmm5,%xmm13 - addl %ebx,%eax - pxor %xmm12,%xmm6 - addl 36(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm6,%xmm12 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm13,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm6 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm12 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm12,%xmm6 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm5,%xmm13 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm6,%xmm13 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm8,%xmm7 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm3,%xmm12 - rorl $7,%edx - paddd %xmm6,%xmm3 - addl %ecx,%ebx - pxor %xmm13,%xmm7 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm7,%xmm13 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm3,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - pslld $2,%xmm7 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm13 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm13,%xmm7 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm6,%xmm3 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm4,%xmm8 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm7,%xmm3 - movl %edx,%edi - roll $5,%edx - pxor %xmm9,%xmm8 - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - movdqa %xmm12,%xmm13 - rorl $7,%ebp - paddd %xmm7,%xmm12 - addl %edx,%ecx - pxor %xmm3,%xmm8 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm8,%xmm3 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm12,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm8 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm3,%xmm8 - addl %ebx,%eax - addl 12(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - pshufd $238,%xmm7,%xmm12 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm5,%xmm9 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm8,%xmm12 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm10,%xmm9 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%eax - paddd %xmm8,%xmm13 - addl %ebp,%edx - pxor %xmm12,%xmm9 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm9,%xmm12 - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast2 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast2 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast2: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - movdqa %xmm13,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm9 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm12 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm12,%xmm9 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm8,%xmm13 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm6,%xmm10 - addl 32(%rsp),%ebp - movups 32(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm9,%xmm13 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm11,%xmm10 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm3,%xmm12 - xorl %ebx,%edi - paddd %xmm9,%xmm3 - xorl %ecx,%ebx - pxor %xmm13,%xmm10 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm10,%xmm13 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm3,16(%rsp) - roll $5,%ebp - addl %edi,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - pslld $2,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm13 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm13,%xmm10 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm9,%xmm3 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm7,%xmm11 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm10,%xmm3 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm4,%xmm11 - roll $5,%ebx - addl %esi,%eax - movdqa 48(%r11),%xmm13 - xorl %ecx,%edi - paddd %xmm10,%xmm12 - xorl %edx,%ecx - pxor %xmm3,%xmm11 - addl %ebx,%eax - addl 52(%rsp),%ebp - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm11,%xmm3 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm12,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm11 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm3 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm3,%xmm11 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm10,%xmm12 - addl %esi,%edx - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm8,%xmm4 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - punpcklqdq %xmm11,%xmm12 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm5,%xmm4 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm13,%xmm3 - xorl %edx,%edi - paddd %xmm11,%xmm13 - xorl %ebp,%edx - pxor %xmm12,%xmm4 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm4,%xmm12 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm13,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm4 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm12 - addl 8(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - andl %ecx,%esi - xorl %edx,%ecx - por %xmm12,%xmm4 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm11,%xmm13 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm9,%xmm5 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm4,%xmm13 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm6,%xmm5 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm3,%xmm12 - xorl %ebp,%edi - paddd %xmm4,%xmm3 - xorl %eax,%ebp - pxor %xmm13,%xmm5 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm5,%xmm13 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm3,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm5 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm13 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm13,%xmm5 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm4,%xmm3 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - cmpl $11,%r8d - jb L$aesenclast3 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast3 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast3: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm10,%xmm6 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm5,%xmm3 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm7,%xmm6 - roll $5,%ebp - addl %esi,%edx - movups 48(%r12),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%r13,%r12,1) - xorps %xmm14,%xmm2 - movups -80(%r15),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm12,%xmm13 - xorl %eax,%edi - paddd %xmm5,%xmm12 - xorl %ebx,%eax - pxor %xmm3,%xmm6 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm6,%xmm3 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm12,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm6 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm3 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm3,%xmm6 - rorl $7,%edx - movups -64(%r15),%xmm0 -.byte 102,15,56,220,209 - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm5,%xmm12 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm11,%xmm7 - addl 48(%rsp),%ebp - movups -48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - punpcklqdq %xmm6,%xmm12 - movl %eax,%edi - roll $5,%eax - pxor %xmm8,%xmm7 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm13,%xmm3 - rorl $7,%ebx - paddd %xmm6,%xmm13 - addl %eax,%ebp - pxor %xmm12,%xmm7 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm7,%xmm12 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm13,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm7 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm12 - roll $5,%edx - addl %esi,%ecx - movups -32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - por %xmm12,%xmm7 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm7,%xmm3 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm3,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - movups -16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - movups 0(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r14,%r10 - je L$done_ssse3 - movdqa 64(%r11),%xmm3 - movdqa 0(%r11),%xmm13 - movdqu 0(%r10),%xmm4 - movdqu 16(%r10),%xmm5 - movdqu 32(%r10),%xmm6 - movdqu 48(%r10),%xmm7 -.byte 102,15,56,0,227 - addq $64,%r10 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,235 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm13,%xmm4 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm4,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm13,%xmm4 - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,243 - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm13,%xmm5 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm5,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm13,%xmm5 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,251 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm13,%xmm6 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm6,32(%rsp) - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast4 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast4 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast4: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm13,%xmm6 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - leaq 64(%r12),%r12 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - addl 12(%r9),%edx - movl %eax,0(%r9) - addl 16(%r9),%ebp - movl %esi,4(%r9) - movl %esi,%ebx - movl %ecx,8(%r9) - movl %ecx,%edi - movl %edx,12(%r9) - xorl %edx,%edi - movl %ebp,16(%r9) - andl %edi,%esi - jmp L$oop_ssse3 - -L$done_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - movups 16(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - movups 32(%r15),%xmm0 -.byte 102,15,56,220,209 - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - movups 48(%r15),%xmm1 -.byte 102,15,56,220,208 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - cmpl $11,%r8d - jb L$aesenclast5 - movups 64(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 80(%r15),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast5 - movups 96(%r15),%xmm0 -.byte 102,15,56,220,209 - movups 112(%r15),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast5: -.byte 102,15,56,221,209 - movups 16-112(%r15),%xmm0 - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - movups %xmm2,48(%r13,%r12,1) - movq 88(%rsp),%r8 - - addl 0(%r9),%eax - addl 4(%r9),%esi - addl 8(%r9),%ecx - movl %eax,0(%r9) - addl 12(%r9),%edx - movl %esi,4(%r9) - addl 16(%r9),%ebp - movl %ecx,8(%r9) - movl %edx,12(%r9) - movl %ebp,16(%r9) - movups %xmm2,(%r8) - leaq 104(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 - -.p2align 6 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 - -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 - -.p2align 5 -aesni_cbc_sha1_enc_shaext: - movq 8(%rsp),%r10 - movdqu (%r9),%xmm8 - movd 16(%r9),%xmm9 - movdqa K_XX_XX+80(%rip),%xmm7 - - movl 240(%rcx),%r11d - subq %rdi,%rsi - movups (%rcx),%xmm15 - movups (%r8),%xmm2 - movups 16(%rcx),%xmm0 - leaq 112(%rcx),%rcx - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - movups 0(%rdi),%xmm14 - xorps %xmm15,%xmm14 - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqu (%r10),%xmm3 - movdqa %xmm9,%xmm12 -.byte 102,15,56,0,223 - movdqu 16(%r10),%xmm4 - movdqa %xmm8,%xmm11 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,0,231 - - paddd %xmm3,%xmm9 - movdqu 32(%r10),%xmm5 - leaq 64(%r10),%r10 - pxor %xmm12,%xmm3 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 - pxor %xmm12,%xmm3 - movdqa %xmm8,%xmm10 -.byte 102,15,56,0,239 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 15,56,201,220 - movdqu -16(%r10),%xmm6 - movdqa %xmm8,%xmm9 -.byte 102,15,56,0,247 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,205 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,0 -.byte 68,15,56,200,203 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - cmpl $11,%r11d - jb L$aesenclast6 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast6 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast6: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,0 -.byte 68,15,56,200,212 - movups 16(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,0(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,214 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,203 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,1 -.byte 68,15,56,200,212 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - cmpl $11,%r11d - jb L$aesenclast7 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast7 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast7: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,1 -.byte 68,15,56,200,205 - movups 32(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,16(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,203 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,212 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 -.byte 15,56,201,220 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,2 -.byte 68,15,56,200,205 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,245 - pxor %xmm5,%xmm3 -.byte 15,56,201,229 - cmpl $11,%r11d - jb L$aesenclast8 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast8 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast8: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,2 -.byte 68,15,56,200,214 - movups 48(%rdi),%xmm14 - xorps %xmm15,%xmm14 - movups %xmm2,32(%rsi,%rdi,1) - xorps %xmm14,%xmm2 - movups -80(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,222 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - movups -64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,203 - movups -48(%rcx),%xmm1 -.byte 102,15,56,220,208 -.byte 15,56,202,227 - pxor %xmm3,%xmm5 -.byte 15,56,201,243 - movups -32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,212 -.byte 15,56,202,236 - pxor %xmm4,%xmm6 - movups -16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 -.byte 15,56,202,245 - movups 0(%rcx),%xmm0 -.byte 102,15,56,220,209 - movdqa %xmm12,%xmm5 - movdqa %xmm8,%xmm10 -.byte 69,15,58,204,193,3 -.byte 68,15,56,200,214 - movups 16(%rcx),%xmm1 -.byte 102,15,56,220,208 - movdqa %xmm8,%xmm9 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,205 - movups 32(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 48(%rcx),%xmm1 -.byte 102,15,56,220,208 - cmpl $11,%r11d - jb L$aesenclast9 - movups 64(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 80(%rcx),%xmm1 -.byte 102,15,56,220,208 - je L$aesenclast9 - movups 96(%rcx),%xmm0 -.byte 102,15,56,220,209 - movups 112(%rcx),%xmm1 -.byte 102,15,56,220,208 -L$aesenclast9: -.byte 102,15,56,221,209 - movups 16-112(%rcx),%xmm0 - decq %rdx - - paddd %xmm11,%xmm8 - movups %xmm2,48(%rsi,%rdi,1) - leaq 64(%rdi),%rdi - jnz L$oop_shaext - - pshufd $27,%xmm8,%xmm8 - pshufd $27,%xmm9,%xmm9 - movups %xmm2,(%r8) - movdqu %xmm8,(%r9) - movd %xmm9,16(%r9) - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha256-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha256-x86_64.s deleted file mode 100644 index 53307da35815e1..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha256-x86_64.s +++ /dev/null @@ -1,57 +0,0 @@ -.text - - -.globl _aesni_cbc_sha256_enc - -.p2align 4 -_aesni_cbc_sha256_enc: - xorl %eax,%eax - cmpq $0,%rdi - je L$probe - ud2 -L$probe: - .byte 0xf3,0xc3 - - -.p2align 6 - -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0,0,0,0, 0,0,0,0, -1,-1,-1,-1 -.long 0,0,0,0, 0,0,0,0 -.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-x86_64.s deleted file mode 100644 index dde837980cf730..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-x86_64.s +++ /dev/null @@ -1,3551 +0,0 @@ -.text - -.globl _aesni_encrypt - -.p2align 4 -_aesni_encrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -L$oop_enc1_1: -.byte 102,15,56,220,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz L$oop_enc1_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 - - -.globl _aesni_decrypt - -.p2align 4 -_aesni_decrypt: - movups (%rdi),%xmm2 - movl 240(%rdx),%eax - movups (%rdx),%xmm0 - movups 16(%rdx),%xmm1 - leaq 32(%rdx),%rdx - xorps %xmm0,%xmm2 -L$oop_dec1_2: -.byte 102,15,56,222,209 - decl %eax - movups (%rdx),%xmm1 - leaq 16(%rdx),%rdx - jnz L$oop_dec1_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$enc_loop2: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop2 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt2: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$dec_loop2: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop2 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$enc_loop3: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop3 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt3: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax - addq $16,%rax - -L$dec_loop3: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop3 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -L$enc_loop4: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop4 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt4: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - xorps %xmm0,%xmm4 - xorps %xmm0,%xmm5 - movups 32(%rcx),%xmm0 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 0x0f,0x1f,0x00 - addq $16,%rax - -L$dec_loop4: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop4 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$enc_loop6_enter -.p2align 4 -L$enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -L$enc_loop6_enter: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop6 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt6: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,217 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$dec_loop6_enter -.p2align 4 -L$dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -L$dec_loop6_enter: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop6 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_encrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$enc_loop8_inner -.p2align 4 -L$enc_loop8: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -L$enc_loop8_inner: -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -L$enc_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$enc_loop8 - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 -.byte 102,68,15,56,221,192 -.byte 102,68,15,56,221,200 - .byte 0xf3,0xc3 - - -.p2align 4 -_aesni_decrypt8: - movups (%rcx),%xmm0 - shll $4,%eax - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm2 - xorps %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - leaq 32(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,222,209 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm9 - movups (%rcx,%rax,1),%xmm0 - addq $16,%rax - jmp L$dec_loop8_inner -.p2align 4 -L$dec_loop8: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -L$dec_loop8_inner: -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -L$dec_loop8_enter: - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$dec_loop8 - -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 -.byte 102,68,15,56,223,192 -.byte 102,68,15,56,223,200 - .byte 0xf3,0xc3 - -.globl _aesni_ecb_encrypt - -.p2align 4 -_aesni_ecb_encrypt: - andq $-16,%rdx - jz L$ecb_ret - - movl 240(%rcx),%eax - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %eax,%r10d - testl %r8d,%r8d - jz L$ecb_decrypt - - cmpq $0x80,%rdx - jb L$ecb_enc_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp L$ecb_enc_loop8_enter -.p2align 4 -L$ecb_enc_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -L$ecb_enc_loop8_enter: - - call _aesni_encrypt8 - - subq $0x80,%rdx - jnc L$ecb_enc_loop8 - - movups %xmm2,(%rsi) - movq %r11,%rcx - movups %xmm3,16(%rsi) - movl %r10d,%eax - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz L$ecb_ret - -L$ecb_enc_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb L$ecb_enc_one - movups 16(%rdi),%xmm3 - je L$ecb_enc_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb L$ecb_enc_three - movups 48(%rdi),%xmm5 - je L$ecb_enc_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb L$ecb_enc_five - movups 80(%rdi),%xmm7 - je L$ecb_enc_six - movdqu 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_encrypt8 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - movups %xmm8,96(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_3: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_3 -.byte 102,15,56,221,209 - movups %xmm2,(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_five: - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - jmp L$ecb_ret -.p2align 4 -L$ecb_enc_six: - call _aesni_encrypt6 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - movups %xmm5,48(%rsi) - movups %xmm6,64(%rsi) - movups %xmm7,80(%rsi) - jmp L$ecb_ret - -.p2align 4 -L$ecb_decrypt: - cmpq $0x80,%rdx - jb L$ecb_dec_tail - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - movdqu 48(%rdi),%xmm5 - movdqu 64(%rdi),%xmm6 - movdqu 80(%rdi),%xmm7 - movdqu 96(%rdi),%xmm8 - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi - subq $0x80,%rdx - jmp L$ecb_dec_loop8_enter -.p2align 4 -L$ecb_dec_loop8: - movups %xmm2,(%rsi) - movq %r11,%rcx - movdqu (%rdi),%xmm2 - movl %r10d,%eax - movups %xmm3,16(%rsi) - movdqu 16(%rdi),%xmm3 - movups %xmm4,32(%rsi) - movdqu 32(%rdi),%xmm4 - movups %xmm5,48(%rsi) - movdqu 48(%rdi),%xmm5 - movups %xmm6,64(%rsi) - movdqu 64(%rdi),%xmm6 - movups %xmm7,80(%rsi) - movdqu 80(%rdi),%xmm7 - movups %xmm8,96(%rsi) - movdqu 96(%rdi),%xmm8 - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - movdqu 112(%rdi),%xmm9 - leaq 128(%rdi),%rdi -L$ecb_dec_loop8_enter: - - call _aesni_decrypt8 - - movups (%r11),%xmm0 - subq $0x80,%rdx - jnc L$ecb_dec_loop8 - - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movq %r11,%rcx - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movl %r10d,%eax - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - movups %xmm9,112(%rsi) - pxor %xmm9,%xmm9 - leaq 128(%rsi),%rsi - addq $0x80,%rdx - jz L$ecb_ret - -L$ecb_dec_tail: - movups (%rdi),%xmm2 - cmpq $0x20,%rdx - jb L$ecb_dec_one - movups 16(%rdi),%xmm3 - je L$ecb_dec_two - movups 32(%rdi),%xmm4 - cmpq $0x40,%rdx - jb L$ecb_dec_three - movups 48(%rdi),%xmm5 - je L$ecb_dec_four - movups 64(%rdi),%xmm6 - cmpq $0x60,%rdx - jb L$ecb_dec_five - movups 80(%rdi),%xmm7 - je L$ecb_dec_six - movups 96(%rdi),%xmm8 - movups (%rcx),%xmm0 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - movups %xmm8,96(%rsi) - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_one: - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_4: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_4 -.byte 102,15,56,223,209 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_five: - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - jmp L$ecb_ret -.p2align 4 -L$ecb_dec_six: - call _aesni_decrypt6 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - movups %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - movups %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - movups %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - -L$ecb_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - .byte 0xf3,0xc3 - -.globl _aesni_ccm64_encrypt_blocks - -.p2align 4 -_aesni_ccm64_encrypt_blocks: - movl 240(%rcx),%eax - movdqu (%r8),%xmm6 - movdqa L$increment64(%rip),%xmm9 - movdqa L$bswap_mask(%rip),%xmm7 - - shll $4,%eax - movl $16,%r10d - leaq 0(%rcx),%r11 - movdqu (%r9),%xmm3 - movdqa %xmm6,%xmm2 - leaq 32(%rcx,%rax,1),%rcx -.byte 102,15,56,0,247 - subq %rax,%r10 - jmp L$ccm64_enc_outer -.p2align 4 -L$ccm64_enc_outer: - movups (%r11),%xmm0 - movq %r10,%rax - movups (%rdi),%xmm8 - - xorps %xmm0,%xmm2 - movups 16(%r11),%xmm1 - xorps %xmm8,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%r11),%xmm0 - -L$ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq %xmm9,%xmm6 - decq %rdx -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - - leaq 16(%rdi),%rdi - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) -.byte 102,15,56,0,215 - leaq 16(%rsi),%rsi - jnz L$ccm64_enc_outer - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 - -.globl _aesni_ccm64_decrypt_blocks - -.p2align 4 -_aesni_ccm64_decrypt_blocks: - movl 240(%rcx),%eax - movups (%r8),%xmm6 - movdqu (%r9),%xmm3 - movdqa L$increment64(%rip),%xmm9 - movdqa L$bswap_mask(%rip),%xmm7 - - movaps %xmm6,%xmm2 - movl %eax,%r10d - movq %rcx,%r11 -.byte 102,15,56,0,247 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_5: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_5 -.byte 102,15,56,221,209 - shll $4,%r10d - movl $16,%eax - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 - leaq 16(%rdi),%rdi - subq %r10,%rax - leaq 32(%r11,%r10,1),%rcx - movq %rax,%r10 - jmp L$ccm64_dec_outer -.p2align 4 -L$ccm64_dec_outer: - xorps %xmm2,%xmm8 - movdqa %xmm6,%xmm2 - movups %xmm8,(%rsi) - leaq 16(%rsi),%rsi -.byte 102,15,56,0,215 - - subq $1,%rdx - jz L$ccm64_dec_break - - movups (%r11),%xmm0 - movq %r10,%rax - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - xorps %xmm0,%xmm2 - xorps %xmm8,%xmm3 - movups 32(%r11),%xmm0 - jmp L$ccm64_dec2_loop -.p2align 4 -L$ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%rcx,%rax,1),%xmm1 - addq $32,%rax -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%rcx,%rax,1),%xmm0 - jnz L$ccm64_dec2_loop - movups (%rdi),%xmm8 - paddq %xmm9,%xmm6 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leaq 16(%rdi),%rdi - jmp L$ccm64_dec_outer - -.p2align 4 -L$ccm64_dec_break: - - movl 240(%r11),%eax - movups (%r11),%xmm0 - movups 16(%r11),%xmm1 - xorps %xmm0,%xmm8 - leaq 32(%r11),%r11 - xorps %xmm8,%xmm3 -L$oop_enc1_6: -.byte 102,15,56,220,217 - decl %eax - movups (%r11),%xmm1 - leaq 16(%r11),%r11 - jnz L$oop_enc1_6 -.byte 102,15,56,221,217 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movups %xmm3,(%r9) - pxor %xmm3,%xmm3 - pxor %xmm8,%xmm8 - pxor %xmm6,%xmm6 - .byte 0xf3,0xc3 - -.globl _aesni_ctr32_encrypt_blocks - -.p2align 4 -_aesni_ctr32_encrypt_blocks: - cmpq $1,%rdx - jne L$ctr32_bulk - - - - movups (%r8),%xmm2 - movups (%rdi),%xmm3 - movl 240(%rcx),%edx - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_7: -.byte 102,15,56,220,209 - decl %edx - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_7 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - xorps %xmm2,%xmm2 - jmp L$ctr32_epilogue - -.p2align 4 -L$ctr32_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $128,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - - - - - movdqu (%r8),%xmm2 - movdqu (%rcx),%xmm0 - movl 12(%r8),%r8d - pxor %xmm0,%xmm2 - movl 12(%rcx),%r11d - movdqa %xmm2,0(%rsp) - bswapl %r8d - movdqa %xmm2,%xmm3 - movdqa %xmm2,%xmm4 - movdqa %xmm2,%xmm5 - movdqa %xmm2,64(%rsp) - movdqa %xmm2,80(%rsp) - movdqa %xmm2,96(%rsp) - movq %rdx,%r10 - movdqa %xmm2,112(%rsp) - - leaq 1(%r8),%rax - leaq 2(%r8),%rdx - bswapl %eax - bswapl %edx - xorl %r11d,%eax - xorl %r11d,%edx -.byte 102,15,58,34,216,3 - leaq 3(%r8),%rax - movdqa %xmm3,16(%rsp) -.byte 102,15,58,34,226,3 - bswapl %eax - movq %r10,%rdx - leaq 4(%r8),%r10 - movdqa %xmm4,32(%rsp) - xorl %r11d,%eax - bswapl %r10d -.byte 102,15,58,34,232,3 - xorl %r11d,%r10d - movdqa %xmm5,48(%rsp) - leaq 5(%r8),%r9 - movl %r10d,64+12(%rsp) - bswapl %r9d - leaq 6(%r8),%r10 - movl 240(%rcx),%eax - xorl %r11d,%r9d - bswapl %r10d - movl %r9d,80+12(%rsp) - xorl %r11d,%r10d - leaq 7(%r8),%r9 - movl %r10d,96+12(%rsp) - bswapl %r9d - movl _OPENSSL_ia32cap_P+4(%rip),%r10d - xorl %r11d,%r9d - andl $71303168,%r10d - movl %r9d,112+12(%rsp) - - movups 16(%rcx),%xmm1 - - movdqa 64(%rsp),%xmm6 - movdqa 80(%rsp),%xmm7 - - cmpq $8,%rdx - jb L$ctr32_tail - - subq $6,%rdx - cmpl $4194304,%r10d - je L$ctr32_6x - - leaq 128(%rcx),%rcx - subq $2,%rdx - jmp L$ctr32_loop8 - -.p2align 4 -L$ctr32_6x: - shll $4,%eax - movl $48,%r10d - bswapl %r11d - leaq 32(%rcx,%rax,1),%rcx - subq %rax,%r10 - jmp L$ctr32_loop6 - -.p2align 4 -L$ctr32_loop6: - addl $6,%r8d - movups -48(%rcx,%r10,1),%xmm0 -.byte 102,15,56,220,209 - movl %r8d,%eax - xorl %r11d,%eax -.byte 102,15,56,220,217 -.byte 0x0f,0x38,0xf1,0x44,0x24,12 - leal 1(%r8),%eax -.byte 102,15,56,220,225 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,28 -.byte 102,15,56,220,233 - leal 2(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,241 -.byte 0x0f,0x38,0xf1,0x44,0x24,44 - leal 3(%r8),%eax -.byte 102,15,56,220,249 - movups -32(%rcx,%r10,1),%xmm1 - xorl %r11d,%eax - -.byte 102,15,56,220,208 -.byte 0x0f,0x38,0xf1,0x44,0x24,60 - leal 4(%r8),%eax -.byte 102,15,56,220,216 - xorl %r11d,%eax -.byte 0x0f,0x38,0xf1,0x44,0x24,76 -.byte 102,15,56,220,224 - leal 5(%r8),%eax - xorl %r11d,%eax -.byte 102,15,56,220,232 -.byte 0x0f,0x38,0xf1,0x44,0x24,92 - movq %r10,%rax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%rcx,%r10,1),%xmm0 - - call L$enc_loop6 - - movdqu (%rdi),%xmm8 - movdqu 16(%rdi),%xmm9 - movdqu 32(%rdi),%xmm10 - movdqu 48(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 80(%rdi),%xmm13 - leaq 96(%rdi),%rdi - movups -64(%rcx,%r10,1),%xmm1 - pxor %xmm2,%xmm8 - movaps 0(%rsp),%xmm2 - pxor %xmm3,%xmm9 - movaps 16(%rsp),%xmm3 - pxor %xmm4,%xmm10 - movaps 32(%rsp),%xmm4 - pxor %xmm5,%xmm11 - movaps 48(%rsp),%xmm5 - pxor %xmm6,%xmm12 - movaps 64(%rsp),%xmm6 - pxor %xmm7,%xmm13 - movaps 80(%rsp),%xmm7 - movdqu %xmm8,(%rsi) - movdqu %xmm9,16(%rsi) - movdqu %xmm10,32(%rsi) - movdqu %xmm11,48(%rsi) - movdqu %xmm12,64(%rsi) - movdqu %xmm13,80(%rsi) - leaq 96(%rsi),%rsi - - subq $6,%rdx - jnc L$ctr32_loop6 - - addq $6,%rdx - jz L$ctr32_done - - leal -48(%r10),%eax - leaq -80(%rcx,%r10,1),%rcx - negl %eax - shrl $4,%eax - jmp L$ctr32_tail - -.p2align 5 -L$ctr32_loop8: - addl $8,%r8d - movdqa 96(%rsp),%xmm8 -.byte 102,15,56,220,209 - movl %r8d,%r9d - movdqa 112(%rsp),%xmm9 -.byte 102,15,56,220,217 - bswapl %r9d - movups 32-128(%rcx),%xmm0 -.byte 102,15,56,220,225 - xorl %r11d,%r9d - nop -.byte 102,15,56,220,233 - movl %r9d,0+12(%rsp) - leaq 1(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 48-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,16+12(%rsp) - leaq 2(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 64-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,32+12(%rsp) - leaq 3(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 80-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,48+12(%rsp) - leaq 4(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 96-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,64+12(%rsp) - leaq 5(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 112-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movl %r9d,80+12(%rsp) - leaq 6(%r8),%r9 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 128-128(%rcx),%xmm0 - bswapl %r9d -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - xorl %r11d,%r9d -.byte 0x66,0x90 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movl %r9d,96+12(%rsp) - leaq 7(%r8),%r9 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 144-128(%rcx),%xmm1 - bswapl %r9d -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - xorl %r11d,%r9d - movdqu 0(%rdi),%xmm10 -.byte 102,15,56,220,232 - movl %r9d,112+12(%rsp) - cmpl $11,%eax -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 160-128(%rcx),%xmm0 - - jb L$ctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 176-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 192-128(%rcx),%xmm0 - je L$ctr32_enc_done - -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movups 208-128(%rcx),%xmm1 - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 -.byte 102,68,15,56,220,192 -.byte 102,68,15,56,220,200 - movups 224-128(%rcx),%xmm0 - jmp L$ctr32_enc_done - -.p2align 4 -L$ctr32_enc_done: - movdqu 16(%rdi),%xmm11 - pxor %xmm0,%xmm10 - movdqu 32(%rdi),%xmm12 - pxor %xmm0,%xmm11 - movdqu 48(%rdi),%xmm13 - pxor %xmm0,%xmm12 - movdqu 64(%rdi),%xmm14 - pxor %xmm0,%xmm13 - movdqu 80(%rdi),%xmm15 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 -.byte 102,68,15,56,220,201 - movdqu 96(%rdi),%xmm1 - leaq 128(%rdi),%rdi - -.byte 102,65,15,56,221,210 - pxor %xmm0,%xmm1 - movdqu 112-128(%rdi),%xmm10 -.byte 102,65,15,56,221,219 - pxor %xmm0,%xmm10 - movdqa 0(%rsp),%xmm11 -.byte 102,65,15,56,221,228 -.byte 102,65,15,56,221,237 - movdqa 16(%rsp),%xmm12 - movdqa 32(%rsp),%xmm13 -.byte 102,65,15,56,221,246 -.byte 102,65,15,56,221,255 - movdqa 48(%rsp),%xmm14 - movdqa 64(%rsp),%xmm15 -.byte 102,68,15,56,221,193 - movdqa 80(%rsp),%xmm0 - movups 16-128(%rcx),%xmm1 -.byte 102,69,15,56,221,202 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm0,%xmm7 - movups %xmm8,96(%rsi) - movups %xmm9,112(%rsi) - leaq 128(%rsi),%rsi - - subq $8,%rdx - jnc L$ctr32_loop8 - - addq $8,%rdx - jz L$ctr32_done - leaq -128(%rcx),%rcx - -L$ctr32_tail: - - - leaq 16(%rcx),%rcx - cmpq $4,%rdx - jb L$ctr32_loop3 - je L$ctr32_loop4 - - - shll $4,%eax - movdqa 96(%rsp),%xmm8 - pxor %xmm9,%xmm9 - - movups 16(%rcx),%xmm0 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - leaq 32-16(%rcx,%rax,1),%rcx - negq %rax -.byte 102,15,56,220,225 - addq $16,%rax - movups (%rdi),%xmm10 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - movups 16(%rdi),%xmm11 - movups 32(%rdi),%xmm12 -.byte 102,15,56,220,249 -.byte 102,68,15,56,220,193 - - call L$enc_loop8_enter - - movdqu 48(%rdi),%xmm13 - pxor %xmm10,%xmm2 - movdqu 64(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm10,%xmm6 - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - cmpq $6,%rdx - jb L$ctr32_done - - movups 80(%rdi),%xmm11 - xorps %xmm11,%xmm7 - movups %xmm7,80(%rsi) - je L$ctr32_done - - movups 96(%rdi),%xmm12 - xorps %xmm12,%xmm8 - movups %xmm8,96(%rsi) - jmp L$ctr32_done - -.p2align 5 -L$ctr32_loop4: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%rcx),%xmm1 - jnz L$ctr32_loop4 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 - movups (%rdi),%xmm10 - movups 16(%rdi),%xmm11 -.byte 102,15,56,221,225 -.byte 102,15,56,221,233 - movups 32(%rdi),%xmm12 - movups 48(%rdi),%xmm13 - - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm4,32(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm5,48(%rsi) - jmp L$ctr32_done - -.p2align 5 -L$ctr32_loop3: -.byte 102,15,56,220,209 - leaq 16(%rcx),%rcx - decl %eax -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%rcx),%xmm1 - jnz L$ctr32_loop3 -.byte 102,15,56,221,209 -.byte 102,15,56,221,217 -.byte 102,15,56,221,225 - - movups (%rdi),%xmm10 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - cmpq $2,%rdx - jb L$ctr32_done - - movups 16(%rdi),%xmm11 - xorps %xmm11,%xmm3 - movups %xmm3,16(%rsi) - je L$ctr32_done - - movups 32(%rdi),%xmm12 - xorps %xmm12,%xmm4 - movups %xmm4,32(%rsi) - -L$ctr32_done: - xorps %xmm0,%xmm0 - xorl %r11d,%r11d - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - movaps %xmm0,112(%rsp) - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$ctr32_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_xts_encrypt - -.p2align 4 -_aesni_xts_encrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -L$oop_enc1_8: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz L$oop_enc1_8 -.byte 102,15,56,221,209 - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa L$xts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc L$xts_enc_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq L$xts_magic(%rip),%r8 - jmp L$xts_enc_grandloop - -.p2align 5 -L$xts_enc_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,220,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,220,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,220,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,220,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,220,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,220,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,220,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,220,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp L$xts_enc_loop6 -.p2align 5 -L$xts_enc_loop6: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz L$xts_enc_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,220,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,220,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,220,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,220,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,220,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,220,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,220,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,220,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,220,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,221,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,221,92,36,16 -.byte 102,15,56,221,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,221,108,36,48 -.byte 102,15,56,221,116,36,64 -.byte 102,15,56,221,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc L$xts_enc_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -L$xts_enc_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - addq $96,%rdx - jz L$xts_enc_done - - pxor %xmm0,%xmm11 - cmpq $0x20,%rdx - jb L$xts_enc_one - pxor %xmm0,%xmm12 - je L$xts_enc_two - - pxor %xmm0,%xmm13 - cmpq $0x40,%rdx - jb L$xts_enc_three - pxor %xmm0,%xmm14 - je L$xts_enc_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - pxor %xmm7,%xmm7 - - call _aesni_encrypt6 - - xorps %xmm10,%xmm2 - movdqa %xmm15,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_9: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_9 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - leaq 16(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_encrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_encrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_encrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp L$xts_enc_done - -.p2align 4 -L$xts_enc_done: - andq $15,%r9 - jz L$xts_enc_ret - movq %r9,%rdx - -L$xts_enc_steal: - movzbl (%rdi),%eax - movzbl -16(%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,-16(%rsi) - movb %cl,0(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz L$xts_enc_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups -16(%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_enc1_10: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_10 -.byte 102,15,56,221,209 - xorps %xmm10,%xmm2 - movups %xmm2,-16(%rsi) - -L$xts_enc_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$xts_enc_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_xts_decrypt - -.p2align 4 -_aesni_xts_decrypt: - leaq (%rsp),%rax - pushq %rbp - subq $112,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r9),%xmm2 - movl 240(%r8),%eax - movl 240(%rcx),%r10d - movups (%r8),%xmm0 - movups 16(%r8),%xmm1 - leaq 32(%r8),%r8 - xorps %xmm0,%xmm2 -L$oop_enc1_11: -.byte 102,15,56,220,209 - decl %eax - movups (%r8),%xmm1 - leaq 16(%r8),%r8 - jnz L$oop_enc1_11 -.byte 102,15,56,221,209 - xorl %eax,%eax - testq $15,%rdx - setnz %al - shlq $4,%rax - subq %rax,%rdx - - movups (%rcx),%xmm0 - movq %rcx,%r11 - movl %r10d,%eax - shll $4,%r10d - movq %rdx,%r9 - andq $-16,%rdx - - movups 16(%rcx,%r10,1),%xmm1 - - movdqa L$xts_magic(%rip),%xmm8 - movdqa %xmm2,%xmm15 - pshufd $0x5f,%xmm2,%xmm9 - pxor %xmm0,%xmm1 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm10 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm10 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm11 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm11 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm12 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm12 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 - movdqa %xmm15,%xmm13 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 - pxor %xmm0,%xmm13 - pxor %xmm14,%xmm15 - movdqa %xmm15,%xmm14 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm9 - pxor %xmm0,%xmm14 - pxor %xmm9,%xmm15 - movaps %xmm1,96(%rsp) - - subq $96,%rdx - jc L$xts_dec_short - - movl $16+96,%eax - leaq 32(%r11,%r10,1),%rcx - subq %r10,%rax - movups 16(%r11),%xmm1 - movq %rax,%r10 - leaq L$xts_magic(%rip),%r8 - jmp L$xts_dec_grandloop - -.p2align 5 -L$xts_dec_grandloop: - movdqu 0(%rdi),%xmm2 - movdqa %xmm0,%xmm8 - movdqu 16(%rdi),%xmm3 - pxor %xmm10,%xmm2 - movdqu 32(%rdi),%xmm4 - pxor %xmm11,%xmm3 -.byte 102,15,56,222,209 - movdqu 48(%rdi),%xmm5 - pxor %xmm12,%xmm4 -.byte 102,15,56,222,217 - movdqu 64(%rdi),%xmm6 - pxor %xmm13,%xmm5 -.byte 102,15,56,222,225 - movdqu 80(%rdi),%xmm7 - pxor %xmm15,%xmm8 - movdqa 96(%rsp),%xmm9 - pxor %xmm14,%xmm6 -.byte 102,15,56,222,233 - movups 32(%r11),%xmm0 - leaq 96(%rdi),%rdi - pxor %xmm8,%xmm7 - - pxor %xmm9,%xmm10 -.byte 102,15,56,222,241 - pxor %xmm9,%xmm11 - movdqa %xmm10,0(%rsp) -.byte 102,15,56,222,249 - movups 48(%r11),%xmm1 - pxor %xmm9,%xmm12 - -.byte 102,15,56,222,208 - pxor %xmm9,%xmm13 - movdqa %xmm11,16(%rsp) -.byte 102,15,56,222,216 - pxor %xmm9,%xmm14 - movdqa %xmm12,32(%rsp) -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pxor %xmm9,%xmm8 - movdqa %xmm14,64(%rsp) -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups 64(%r11),%xmm0 - movdqa %xmm8,80(%rsp) - pshufd $0x5f,%xmm15,%xmm9 - jmp L$xts_dec_loop6 -.p2align 5 -L$xts_dec_loop6: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups -64(%rcx,%rax,1),%xmm1 - addq $32,%rax - -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -80(%rcx,%rax,1),%xmm0 - jnz L$xts_dec_loop6 - - movdqa (%r8),%xmm8 - movdqa %xmm9,%xmm14 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - paddq %xmm15,%xmm15 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - pand %xmm8,%xmm14 - movups (%r11),%xmm10 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 - pxor %xmm14,%xmm15 - movaps %xmm10,%xmm11 -.byte 102,15,56,222,249 - movups -64(%rcx),%xmm1 - - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,208 - paddd %xmm9,%xmm9 - pxor %xmm15,%xmm10 -.byte 102,15,56,222,216 - psrad $31,%xmm14 - paddq %xmm15,%xmm15 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - pand %xmm8,%xmm14 - movaps %xmm11,%xmm12 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,248 - movups -48(%rcx),%xmm0 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm11 - psrad $31,%xmm14 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movdqa %xmm13,48(%rsp) - pxor %xmm14,%xmm15 -.byte 102,15,56,222,241 - movaps %xmm12,%xmm13 - movdqa %xmm9,%xmm14 -.byte 102,15,56,222,249 - movups -32(%rcx),%xmm1 - - paddd %xmm9,%xmm9 -.byte 102,15,56,222,208 - pxor %xmm15,%xmm12 - psrad $31,%xmm14 -.byte 102,15,56,222,216 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm14 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 - pxor %xmm14,%xmm15 - movaps %xmm13,%xmm14 -.byte 102,15,56,222,248 - - movdqa %xmm9,%xmm0 - paddd %xmm9,%xmm9 -.byte 102,15,56,222,209 - pxor %xmm15,%xmm13 - psrad $31,%xmm0 -.byte 102,15,56,222,217 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm15 - movups (%r11),%xmm0 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - movups 16(%r11),%xmm1 - - pxor %xmm15,%xmm14 -.byte 102,15,56,223,84,36,0 - psrad $31,%xmm9 - paddq %xmm15,%xmm15 -.byte 102,15,56,223,92,36,16 -.byte 102,15,56,223,100,36,32 - pand %xmm8,%xmm9 - movq %r10,%rax -.byte 102,15,56,223,108,36,48 -.byte 102,15,56,223,116,36,64 -.byte 102,15,56,223,124,36,80 - pxor %xmm9,%xmm15 - - leaq 96(%rsi),%rsi - movups %xmm2,-96(%rsi) - movups %xmm3,-80(%rsi) - movups %xmm4,-64(%rsi) - movups %xmm5,-48(%rsi) - movups %xmm6,-32(%rsi) - movups %xmm7,-16(%rsi) - subq $96,%rdx - jnc L$xts_dec_grandloop - - movl $16+96,%eax - subl %r10d,%eax - movq %r11,%rcx - shrl $4,%eax - -L$xts_dec_short: - - movl %eax,%r10d - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 - addq $96,%rdx - jz L$xts_dec_done - - pxor %xmm0,%xmm12 - cmpq $0x20,%rdx - jb L$xts_dec_one - pxor %xmm0,%xmm13 - je L$xts_dec_two - - pxor %xmm0,%xmm14 - cmpq $0x40,%rdx - jb L$xts_dec_three - je L$xts_dec_four - - movdqu (%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqu 32(%rdi),%xmm4 - pxor %xmm10,%xmm2 - movdqu 48(%rdi),%xmm5 - pxor %xmm11,%xmm3 - movdqu 64(%rdi),%xmm6 - leaq 80(%rdi),%rdi - pxor %xmm12,%xmm4 - pxor %xmm13,%xmm5 - pxor %xmm14,%xmm6 - - call _aesni_decrypt6 - - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - xorps %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - xorps %xmm14,%xmm6 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm14 - movdqu %xmm5,48(%rsi) - pcmpgtd %xmm15,%xmm14 - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - pshufd $0x13,%xmm14,%xmm11 - andq $15,%r9 - jz L$xts_dec_ret - - movdqa %xmm15,%xmm10 - paddq %xmm15,%xmm15 - pand %xmm8,%xmm11 - pxor %xmm15,%xmm11 - jmp L$xts_dec_done2 - -.p2align 4 -L$xts_dec_one: - movups (%rdi),%xmm2 - leaq 16(%rdi),%rdi - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_12: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_12 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movdqa %xmm11,%xmm10 - movups %xmm2,(%rsi) - movdqa %xmm12,%xmm11 - leaq 16(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_two: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - leaq 32(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - - call _aesni_decrypt2 - - xorps %xmm10,%xmm2 - movdqa %xmm12,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm13,%xmm11 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - leaq 32(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_three: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - leaq 48(%rdi),%rdi - xorps %xmm10,%xmm2 - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - - call _aesni_decrypt3 - - xorps %xmm10,%xmm2 - movdqa %xmm13,%xmm10 - xorps %xmm11,%xmm3 - movdqa %xmm14,%xmm11 - xorps %xmm12,%xmm4 - movups %xmm2,(%rsi) - movups %xmm3,16(%rsi) - movups %xmm4,32(%rsi) - leaq 48(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_four: - movups (%rdi),%xmm2 - movups 16(%rdi),%xmm3 - movups 32(%rdi),%xmm4 - xorps %xmm10,%xmm2 - movups 48(%rdi),%xmm5 - leaq 64(%rdi),%rdi - xorps %xmm11,%xmm3 - xorps %xmm12,%xmm4 - xorps %xmm13,%xmm5 - - call _aesni_decrypt4 - - pxor %xmm10,%xmm2 - movdqa %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqa %xmm15,%xmm11 - pxor %xmm12,%xmm4 - movdqu %xmm2,(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm3,16(%rsi) - movdqu %xmm4,32(%rsi) - movdqu %xmm5,48(%rsi) - leaq 64(%rsi),%rsi - jmp L$xts_dec_done - -.p2align 4 -L$xts_dec_done: - andq $15,%r9 - jz L$xts_dec_ret -L$xts_dec_done2: - movq %r9,%rdx - movq %r11,%rcx - movl %r10d,%eax - - movups (%rdi),%xmm2 - xorps %xmm11,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_13: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_13 -.byte 102,15,56,223,209 - xorps %xmm11,%xmm2 - movups %xmm2,(%rsi) - -L$xts_dec_steal: - movzbl 16(%rdi),%eax - movzbl (%rsi),%ecx - leaq 1(%rdi),%rdi - movb %al,(%rsi) - movb %cl,16(%rsi) - leaq 1(%rsi),%rsi - subq $1,%rdx - jnz L$xts_dec_steal - - subq %r9,%rsi - movq %r11,%rcx - movl %r10d,%eax - - movups (%rsi),%xmm2 - xorps %xmm10,%xmm2 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_14: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_14 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movups %xmm2,(%rsi) - -L$xts_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - movaps %xmm0,0(%rsp) - pxor %xmm8,%xmm8 - movaps %xmm0,16(%rsp) - pxor %xmm9,%xmm9 - movaps %xmm0,32(%rsp) - pxor %xmm10,%xmm10 - movaps %xmm0,48(%rsp) - pxor %xmm11,%xmm11 - movaps %xmm0,64(%rsp) - pxor %xmm12,%xmm12 - movaps %xmm0,80(%rsp) - pxor %xmm13,%xmm13 - movaps %xmm0,96(%rsp) - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - leaq (%rbp),%rsp - popq %rbp -L$xts_dec_epilogue: - .byte 0xf3,0xc3 - -.globl _aesni_cbc_encrypt - -.p2align 4 -_aesni_cbc_encrypt: - testq %rdx,%rdx - jz L$cbc_ret - - movl 240(%rcx),%r10d - movq %rcx,%r11 - testl %r9d,%r9d - jz L$cbc_decrypt - - movups (%r8),%xmm2 - movl %r10d,%eax - cmpq $16,%rdx - jb L$cbc_enc_tail - subq $16,%rdx - jmp L$cbc_enc_loop -.p2align 4 -L$cbc_enc_loop: - movups (%rdi),%xmm3 - leaq 16(%rdi),%rdi - - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - xorps %xmm0,%xmm3 - leaq 32(%rcx),%rcx - xorps %xmm3,%xmm2 -L$oop_enc1_15: -.byte 102,15,56,220,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_enc1_15 -.byte 102,15,56,221,209 - movl %r10d,%eax - movq %r11,%rcx - movups %xmm2,0(%rsi) - leaq 16(%rsi),%rsi - subq $16,%rdx - jnc L$cbc_enc_loop - addq $16,%rdx - jnz L$cbc_enc_tail - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%r8) - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - jmp L$cbc_ret - -L$cbc_enc_tail: - movq %rdx,%rcx - xchgq %rdi,%rsi -.long 0x9066A4F3 - movl $16,%ecx - subq %rdx,%rcx - xorl %eax,%eax -.long 0x9066AAF3 - leaq -16(%rdi),%rdi - movl %r10d,%eax - movq %rdi,%rsi - movq %r11,%rcx - xorq %rdx,%rdx - jmp L$cbc_enc_loop - -.p2align 4 -L$cbc_decrypt: - cmpq $16,%rdx - jne L$cbc_decrypt_bulk - - - - movdqu (%rdi),%xmm2 - movdqu (%r8),%xmm3 - movdqa %xmm2,%xmm4 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_16: -.byte 102,15,56,222,209 - decl %r10d - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_16 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqu %xmm4,(%r8) - xorps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$cbc_ret -.p2align 4 -L$cbc_decrypt_bulk: - leaq (%rsp),%rax - pushq %rbp - subq $16,%rsp - andq $-16,%rsp - leaq -8(%rax),%rbp - movups (%r8),%xmm10 - movl %r10d,%eax - cmpq $0x50,%rdx - jbe L$cbc_dec_tail - - movups (%rcx),%xmm0 - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 - movl _OPENSSL_ia32cap_P+4(%rip),%r9d - cmpq $0x70,%rdx - jbe L$cbc_dec_six_or_seven - - andl $71303168,%r9d - subq $0x50,%rdx - cmpl $4194304,%r9d - je L$cbc_dec_loop6_enter - subq $0x20,%rdx - leaq 112(%rcx),%rcx - jmp L$cbc_dec_loop8_enter -.p2align 4 -L$cbc_dec_loop8: - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi -L$cbc_dec_loop8_enter: - movdqu 96(%rdi),%xmm8 - pxor %xmm0,%xmm2 - movdqu 112(%rdi),%xmm9 - pxor %xmm0,%xmm3 - movups 16-112(%rcx),%xmm1 - pxor %xmm0,%xmm4 - xorq %r11,%r11 - cmpq $0x70,%rdx - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 - pxor %xmm0,%xmm8 - -.byte 102,15,56,222,209 - pxor %xmm0,%xmm9 - movups 32-112(%rcx),%xmm0 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 - setnc %r11b - shlq $7,%r11 -.byte 102,68,15,56,222,201 - addq %rdi,%r11 - movups 48-112(%rcx),%xmm1 -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 64-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 80-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 96-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 112-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 128-112(%rcx),%xmm0 - nop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 144-112(%rcx),%xmm1 - cmpl $11,%eax -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 160-112(%rcx),%xmm0 - jb L$cbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 176-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 192-112(%rcx),%xmm0 - je L$cbc_dec_done -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movups 208-112(%rcx),%xmm1 - nop -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 -.byte 102,68,15,56,222,192 -.byte 102,68,15,56,222,200 - movups 224-112(%rcx),%xmm0 - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_done: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm10 - pxor %xmm0,%xmm11 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - pxor %xmm0,%xmm12 - pxor %xmm0,%xmm13 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - pxor %xmm0,%xmm14 - pxor %xmm0,%xmm15 -.byte 102,68,15,56,222,193 -.byte 102,68,15,56,222,201 - movdqu 80(%rdi),%xmm1 - -.byte 102,65,15,56,223,210 - movdqu 96(%rdi),%xmm10 - pxor %xmm0,%xmm1 -.byte 102,65,15,56,223,219 - pxor %xmm0,%xmm10 - movdqu 112(%rdi),%xmm0 -.byte 102,65,15,56,223,228 - leaq 128(%rdi),%rdi - movdqu 0(%r11),%xmm11 -.byte 102,65,15,56,223,237 -.byte 102,65,15,56,223,246 - movdqu 16(%r11),%xmm12 - movdqu 32(%r11),%xmm13 -.byte 102,65,15,56,223,255 -.byte 102,68,15,56,223,193 - movdqu 48(%r11),%xmm14 - movdqu 64(%r11),%xmm15 -.byte 102,69,15,56,223,202 - movdqa %xmm0,%xmm10 - movdqu 80(%r11),%xmm1 - movups -112(%rcx),%xmm0 - - movups %xmm2,(%rsi) - movdqa %xmm11,%xmm2 - movups %xmm3,16(%rsi) - movdqa %xmm12,%xmm3 - movups %xmm4,32(%rsi) - movdqa %xmm13,%xmm4 - movups %xmm5,48(%rsi) - movdqa %xmm14,%xmm5 - movups %xmm6,64(%rsi) - movdqa %xmm15,%xmm6 - movups %xmm7,80(%rsi) - movdqa %xmm1,%xmm7 - movups %xmm8,96(%rsi) - leaq 112(%rsi),%rsi - - subq $0x80,%rdx - ja L$cbc_dec_loop8 - - movaps %xmm9,%xmm2 - leaq -112(%rcx),%rcx - addq $0x70,%rdx - jle L$cbc_dec_clear_tail_collected - movups %xmm9,(%rsi) - leaq 16(%rsi),%rsi - cmpq $0x50,%rdx - jbe L$cbc_dec_tail - - movaps %xmm11,%xmm2 -L$cbc_dec_six_or_seven: - cmpq $0x60,%rdx - ja L$cbc_dec_seven - - movaps %xmm7,%xmm8 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - leaq 80(%rsi),%rsi - movdqa %xmm7,%xmm2 - pxor %xmm7,%xmm7 - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_seven: - movups 96(%rdi),%xmm8 - xorps %xmm9,%xmm9 - call _aesni_decrypt8 - movups 80(%rdi),%xmm9 - pxor %xmm10,%xmm2 - movups 96(%rdi),%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - pxor %xmm15,%xmm7 - movdqu %xmm6,64(%rsi) - pxor %xmm6,%xmm6 - pxor %xmm9,%xmm8 - movdqu %xmm7,80(%rsi) - pxor %xmm7,%xmm7 - leaq 96(%rsi),%rsi - movdqa %xmm8,%xmm2 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_loop6: - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - movdqu 0(%rdi),%xmm2 - movdqu 16(%rdi),%xmm3 - movdqa %xmm2,%xmm11 - movdqu 32(%rdi),%xmm4 - movdqa %xmm3,%xmm12 - movdqu 48(%rdi),%xmm5 - movdqa %xmm4,%xmm13 - movdqu 64(%rdi),%xmm6 - movdqa %xmm5,%xmm14 - movdqu 80(%rdi),%xmm7 - movdqa %xmm6,%xmm15 -L$cbc_dec_loop6_enter: - leaq 96(%rdi),%rdi - movdqa %xmm7,%xmm8 - - call _aesni_decrypt6 - - pxor %xmm10,%xmm2 - movdqa %xmm8,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm14,%xmm6 - movq %r11,%rcx - movdqu %xmm5,48(%rsi) - pxor %xmm15,%xmm7 - movl %r10d,%eax - movdqu %xmm6,64(%rsi) - leaq 80(%rsi),%rsi - subq $0x60,%rdx - ja L$cbc_dec_loop6 - - movdqa %xmm7,%xmm2 - addq $0x50,%rdx - jle L$cbc_dec_clear_tail_collected - movups %xmm7,(%rsi) - leaq 16(%rsi),%rsi - -L$cbc_dec_tail: - movups (%rdi),%xmm2 - subq $0x10,%rdx - jbe L$cbc_dec_one - - movups 16(%rdi),%xmm3 - movaps %xmm2,%xmm11 - subq $0x10,%rdx - jbe L$cbc_dec_two - - movups 32(%rdi),%xmm4 - movaps %xmm3,%xmm12 - subq $0x10,%rdx - jbe L$cbc_dec_three - - movups 48(%rdi),%xmm5 - movaps %xmm4,%xmm13 - subq $0x10,%rdx - jbe L$cbc_dec_four - - movups 64(%rdi),%xmm6 - movaps %xmm5,%xmm14 - movaps %xmm6,%xmm15 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - pxor %xmm10,%xmm2 - movaps %xmm15,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - pxor %xmm14,%xmm6 - movdqu %xmm5,48(%rsi) - pxor %xmm5,%xmm5 - leaq 64(%rsi),%rsi - movdqa %xmm6,%xmm2 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - subq $0x10,%rdx - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_one: - movaps %xmm2,%xmm11 - movups (%rcx),%xmm0 - movups 16(%rcx),%xmm1 - leaq 32(%rcx),%rcx - xorps %xmm0,%xmm2 -L$oop_dec1_17: -.byte 102,15,56,222,209 - decl %eax - movups (%rcx),%xmm1 - leaq 16(%rcx),%rcx - jnz L$oop_dec1_17 -.byte 102,15,56,223,209 - xorps %xmm10,%xmm2 - movaps %xmm11,%xmm10 - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_two: - movaps %xmm3,%xmm12 - call _aesni_decrypt2 - pxor %xmm10,%xmm2 - movaps %xmm12,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - movdqa %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leaq 16(%rsi),%rsi - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_three: - movaps %xmm4,%xmm13 - call _aesni_decrypt3 - pxor %xmm10,%xmm2 - movaps %xmm13,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - movdqa %xmm4,%xmm2 - pxor %xmm4,%xmm4 - leaq 32(%rsi),%rsi - jmp L$cbc_dec_tail_collected -.p2align 4 -L$cbc_dec_four: - movaps %xmm5,%xmm14 - call _aesni_decrypt4 - pxor %xmm10,%xmm2 - movaps %xmm14,%xmm10 - pxor %xmm11,%xmm3 - movdqu %xmm2,(%rsi) - pxor %xmm12,%xmm4 - movdqu %xmm3,16(%rsi) - pxor %xmm3,%xmm3 - pxor %xmm13,%xmm5 - movdqu %xmm4,32(%rsi) - pxor %xmm4,%xmm4 - movdqa %xmm5,%xmm2 - pxor %xmm5,%xmm5 - leaq 48(%rsi),%rsi - jmp L$cbc_dec_tail_collected - -.p2align 4 -L$cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 -L$cbc_dec_tail_collected: - movups %xmm10,(%r8) - andq $15,%rdx - jnz L$cbc_dec_tail_partial - movups %xmm2,(%rsi) - pxor %xmm2,%xmm2 - jmp L$cbc_dec_ret -.p2align 4 -L$cbc_dec_tail_partial: - movaps %xmm2,(%rsp) - pxor %xmm2,%xmm2 - movq $16,%rcx - movq %rsi,%rdi - subq %rdx,%rcx - leaq (%rsp),%rsi -.long 0x9066A4F3 - movdqa %xmm2,(%rsp) - -L$cbc_dec_ret: - xorps %xmm0,%xmm0 - pxor %xmm1,%xmm1 - leaq (%rbp),%rsp - popq %rbp -L$cbc_ret: - .byte 0xf3,0xc3 - -.globl _aesni_set_decrypt_key - -.p2align 4 -_aesni_set_decrypt_key: -.byte 0x48,0x83,0xEC,0x08 - call __aesni_set_encrypt_key - shll $4,%esi - testl %eax,%eax - jnz L$dec_key_ret - leaq 16(%rdx,%rsi,1),%rdi - - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 - movups %xmm0,(%rdi) - movups %xmm1,(%rdx) - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - -L$dec_key_inverse: - movups (%rdx),%xmm0 - movups (%rdi),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leaq 16(%rdx),%rdx - leaq -16(%rdi),%rdi - movups %xmm0,16(%rdi) - movups %xmm1,-16(%rdx) - cmpq %rdx,%rdi - ja L$dec_key_inverse - - movups (%rdx),%xmm0 -.byte 102,15,56,219,192 - pxor %xmm1,%xmm1 - movups %xmm0,(%rdi) - pxor %xmm0,%xmm0 -L$dec_key_ret: - addq $8,%rsp - .byte 0xf3,0xc3 -L$SEH_end_set_decrypt_key: - -.globl _aesni_set_encrypt_key - -.p2align 4 -_aesni_set_encrypt_key: -__aesni_set_encrypt_key: -.byte 0x48,0x83,0xEC,0x08 - movq $-1,%rax - testq %rdi,%rdi - jz L$enc_key_ret - testq %rdx,%rdx - jz L$enc_key_ret - - movl $268437504,%r10d - movups (%rdi),%xmm0 - xorps %xmm4,%xmm4 - andl _OPENSSL_ia32cap_P+4(%rip),%r10d - leaq 16(%rdx),%rax - cmpl $256,%esi - je L$14rounds - cmpl $192,%esi - je L$12rounds - cmpl $128,%esi - jne L$bad_keybits - -L$10rounds: - movl $9,%esi - cmpl $268435456,%r10d - je L$10rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,200,1 - call L$key_expansion_128_cold -.byte 102,15,58,223,200,2 - call L$key_expansion_128 -.byte 102,15,58,223,200,4 - call L$key_expansion_128 -.byte 102,15,58,223,200,8 - call L$key_expansion_128 -.byte 102,15,58,223,200,16 - call L$key_expansion_128 -.byte 102,15,58,223,200,32 - call L$key_expansion_128 -.byte 102,15,58,223,200,64 - call L$key_expansion_128 -.byte 102,15,58,223,200,128 - call L$key_expansion_128 -.byte 102,15,58,223,200,27 - call L$key_expansion_128 -.byte 102,15,58,223,200,54 - call L$key_expansion_128 - movups %xmm0,(%rax) - movl %esi,80(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$10rounds_alt: - movdqa L$key_rotate(%rip),%xmm5 - movl $8,%r10d - movdqa L$key_rcon1(%rip),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,(%rdx) - jmp L$oop_key128 - -.p2align 4 -L$oop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leaq 16(%rax),%rax - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%rax) - movdqa %xmm0,%xmm2 - - decl %r10d - jnz L$oop_key128 - - movdqa L$key_rcon1b(%rip),%xmm4 - -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%rax) - - movl %esi,96(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$12rounds: - movq 16(%rdi),%xmm2 - movl $11,%esi - cmpl $268435456,%r10d - je L$12rounds_alt - - movups %xmm0,(%rdx) -.byte 102,15,58,223,202,1 - call L$key_expansion_192a_cold -.byte 102,15,58,223,202,2 - call L$key_expansion_192b -.byte 102,15,58,223,202,4 - call L$key_expansion_192a -.byte 102,15,58,223,202,8 - call L$key_expansion_192b -.byte 102,15,58,223,202,16 - call L$key_expansion_192a -.byte 102,15,58,223,202,32 - call L$key_expansion_192b -.byte 102,15,58,223,202,64 - call L$key_expansion_192a -.byte 102,15,58,223,202,128 - call L$key_expansion_192b - movups %xmm0,(%rax) - movl %esi,48(%rax) - xorq %rax,%rax - jmp L$enc_key_ret - -.p2align 4 -L$12rounds_alt: - movdqa L$key_rotate192(%rip),%xmm5 - movdqa L$key_rcon1(%rip),%xmm4 - movl $8,%r10d - movdqu %xmm0,(%rdx) - jmp L$oop_key192 - -.p2align 4 -L$oop_key192: - movq %xmm2,0(%rax) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leaq 24(%rax),%rax - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - - pshufd $0xff,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%rax) - - decl %r10d - jnz L$oop_key192 - - movl %esi,32(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$14rounds: - movups 16(%rdi),%xmm2 - movl $13,%esi - leaq 16(%rax),%rax - cmpl $268435456,%r10d - je L$14rounds_alt - - movups %xmm0,(%rdx) - movups %xmm2,16(%rdx) -.byte 102,15,58,223,202,1 - call L$key_expansion_256a_cold -.byte 102,15,58,223,200,1 - call L$key_expansion_256b -.byte 102,15,58,223,202,2 - call L$key_expansion_256a -.byte 102,15,58,223,200,2 - call L$key_expansion_256b -.byte 102,15,58,223,202,4 - call L$key_expansion_256a -.byte 102,15,58,223,200,4 - call L$key_expansion_256b -.byte 102,15,58,223,202,8 - call L$key_expansion_256a -.byte 102,15,58,223,200,8 - call L$key_expansion_256b -.byte 102,15,58,223,202,16 - call L$key_expansion_256a -.byte 102,15,58,223,200,16 - call L$key_expansion_256b -.byte 102,15,58,223,202,32 - call L$key_expansion_256a -.byte 102,15,58,223,200,32 - call L$key_expansion_256b -.byte 102,15,58,223,202,64 - call L$key_expansion_256a - movups %xmm0,(%rax) - movl %esi,16(%rax) - xorq %rax,%rax - jmp L$enc_key_ret - -.p2align 4 -L$14rounds_alt: - movdqa L$key_rotate(%rip),%xmm5 - movdqa L$key_rcon1(%rip),%xmm4 - movl $7,%r10d - movdqu %xmm0,0(%rdx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,16(%rdx) - jmp L$oop_key256 - -.p2align 4 -L$oop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - - pxor %xmm2,%xmm0 - movdqu %xmm0,(%rax) - - decl %r10d - jz L$done_key256 - - pshufd $0xff,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%rax) - leaq 32(%rax),%rax - movdqa %xmm2,%xmm1 - - jmp L$oop_key256 - -L$done_key256: - movl %esi,16(%rax) - xorl %eax,%eax - jmp L$enc_key_ret - -.p2align 4 -L$bad_keybits: - movq $-2,%rax -L$enc_key_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - addq $8,%rsp - .byte 0xf3,0xc3 -L$SEH_end_set_encrypt_key: - -.p2align 4 -L$key_expansion_128: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -L$key_expansion_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_192a: - movups %xmm0,(%rax) - leaq 16(%rax),%rax -L$key_expansion_192a_cold: - movaps %xmm2,%xmm5 -L$key_expansion_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%rax) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%rax) - leaq 32(%rax),%rax - jmp L$key_expansion_192b_warm - -.p2align 4 -L$key_expansion_256a: - movups %xmm2,(%rax) - leaq 16(%rax),%rax -L$key_expansion_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - .byte 0xf3,0xc3 - -.p2align 4 -L$key_expansion_256b: - movups %xmm0,(%rax) - leaq 16(%rax),%rax - - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - .byte 0xf3,0xc3 - - -.p2align 6 -L$bswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -L$increment32: -.long 6,6,6,0 -L$increment64: -.long 1,0,0,0 -L$xts_magic: -.long 0x87,0,1,0 -L$increment1: -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -L$key_rotate: -.long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d -L$key_rotate192: -.long 0x04070605,0x04070605,0x04070605,0x04070605 -L$key_rcon1: -.long 1,1,1,1 -L$key_rcon1b: -.long 0x1b,0x1b,0x1b,0x1b - -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/bsaes-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/bsaes-x86_64.s deleted file mode 100644 index 52ae782e9a2e48..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/bsaes-x86_64.s +++ /dev/null @@ -1,2497 +0,0 @@ -.text - - - - - -.p2align 6 -_bsaes_encrypt8: - leaq L$BS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa 80(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 -_bsaes_encrypt8_bitslice: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp L$enc_sbox -.p2align 4 -L$enc_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -L$enc_sbox: - pxor %xmm5,%xmm4 - pxor %xmm0,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm1,%xmm5 - pxor %xmm15,%xmm4 - - pxor %xmm2,%xmm5 - pxor %xmm6,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm3,%xmm2 - pxor %xmm4,%xmm3 - pxor %xmm0,%xmm2 - - pxor %xmm6,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm6,%xmm10 - movdqa %xmm0,%xmm9 - movdqa %xmm4,%xmm8 - movdqa %xmm1,%xmm12 - movdqa %xmm5,%xmm11 - - pxor %xmm3,%xmm10 - pxor %xmm1,%xmm9 - pxor %xmm2,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm3,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm15,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm2,%xmm11 - pxor %xmm15,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm6,%xmm12 - movdqa %xmm4,%xmm11 - pxor %xmm0,%xmm12 - pxor %xmm5,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm1,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm3,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm0,%xmm13 - pand %xmm2,%xmm11 - movdqa %xmm6,%xmm14 - pand %xmm15,%xmm12 - pand %xmm4,%xmm13 - por %xmm5,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm5,%xmm11 - movdqa %xmm4,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm5,%xmm9 - pxor %xmm4,%xmm5 - pand %xmm14,%xmm4 - pand %xmm13,%xmm5 - pxor %xmm4,%xmm5 - pxor %xmm9,%xmm4 - pxor %xmm15,%xmm11 - pxor %xmm2,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm2,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm2 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm2,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm2 - pxor %xmm11,%xmm5 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm2 - - movdqa %xmm6,%xmm11 - movdqa %xmm0,%xmm7 - pxor %xmm3,%xmm11 - pxor %xmm1,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm3,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm1,%xmm3 - pand %xmm14,%xmm7 - pand %xmm12,%xmm1 - pand %xmm13,%xmm11 - pand %xmm8,%xmm3 - pxor %xmm11,%xmm7 - pxor %xmm1,%xmm3 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm1 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm6,%xmm10 - pxor %xmm0,%xmm6 - pand %xmm14,%xmm0 - pand %xmm13,%xmm6 - pxor %xmm0,%xmm6 - pxor %xmm10,%xmm0 - pxor %xmm11,%xmm6 - pxor %xmm11,%xmm3 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm1 - pxor %xmm15,%xmm6 - pxor %xmm5,%xmm0 - pxor %xmm6,%xmm3 - pxor %xmm15,%xmm5 - pxor %xmm0,%xmm15 - - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm4 - pxor %xmm2,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm4,%xmm3 - - pxor %xmm2,%xmm5 - decl %r10d - jl L$enc_done - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm3,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm5,%xmm10 - pxor %xmm9,%xmm3 - pshufd $0x93,%xmm2,%xmm11 - pxor %xmm10,%xmm5 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm2 - pshufd $0x93,%xmm1,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm1 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm2,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm5,%xmm11 - pshufd $0x4E,%xmm2,%xmm7 - pxor %xmm1,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm3,%xmm10 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm1,%xmm5 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm12,%xmm8 - pxor %xmm10,%xmm2 - pxor %xmm14,%xmm6 - pxor %xmm13,%xmm5 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm1 - movdqa %xmm8,%xmm4 - movdqa 48(%r11),%xmm7 - jnz L$enc_loop - movdqa 64(%r11),%xmm7 - jmp L$enc_loop -.p2align 4 -L$enc_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm2,%xmm10 - psrlq $1,%xmm2 - pxor %xmm4,%xmm1 - pxor %xmm6,%xmm2 - pand %xmm7,%xmm1 - pand %xmm7,%xmm2 - pxor %xmm1,%xmm4 - psllq $1,%xmm1 - pxor %xmm2,%xmm6 - psllq $1,%xmm2 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm2 - movdqa %xmm3,%xmm9 - psrlq $1,%xmm3 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm5,%xmm3 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm3 - pand %xmm7,%xmm15 - pxor %xmm3,%xmm5 - psllq $1,%xmm3 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm2,%xmm10 - psrlq $2,%xmm2 - pxor %xmm4,%xmm6 - pxor %xmm1,%xmm2 - pand %xmm8,%xmm6 - pand %xmm8,%xmm2 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm2,%xmm1 - psllq $2,%xmm2 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm2 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm5,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm5 - psllq $2,%xmm0 - pxor %xmm15,%xmm3 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm5,%xmm9 - psrlq $4,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $4,%xmm3 - pxor %xmm4,%xmm5 - pxor %xmm1,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm4 - psllq $4,%xmm5 - pxor %xmm3,%xmm1 - psllq $4,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm2,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm2 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 - - - -.p2align 6 -_bsaes_decrypt8: - leaq L$BS0(%rip),%r11 - - movdqa (%rax),%xmm8 - leaq 16(%rax),%rax - movdqa -48(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm3,%xmm10 - psrlq $1,%xmm3 - pxor %xmm6,%xmm5 - pxor %xmm4,%xmm3 - pand %xmm7,%xmm5 - pand %xmm7,%xmm3 - pxor %xmm5,%xmm6 - psllq $1,%xmm5 - pxor %xmm3,%xmm4 - psllq $1,%xmm3 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm3 - movdqa %xmm1,%xmm9 - psrlq $1,%xmm1 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm2,%xmm1 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm1 - pand %xmm7,%xmm15 - pxor %xmm1,%xmm2 - psllq $1,%xmm1 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm1 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm4,%xmm9 - psrlq $2,%xmm4 - movdqa %xmm3,%xmm10 - psrlq $2,%xmm3 - pxor %xmm6,%xmm4 - pxor %xmm5,%xmm3 - pand %xmm8,%xmm4 - pand %xmm8,%xmm3 - pxor %xmm4,%xmm6 - psllq $2,%xmm4 - pxor %xmm3,%xmm5 - psllq $2,%xmm3 - pxor %xmm9,%xmm4 - pxor %xmm10,%xmm3 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm2,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm2 - psllq $2,%xmm0 - pxor %xmm15,%xmm1 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm2,%xmm9 - psrlq $4,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $4,%xmm1 - pxor %xmm6,%xmm2 - pxor %xmm5,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm6 - psllq $4,%xmm2 - pxor %xmm1,%xmm5 - psllq $4,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm4 - psllq $4,%xmm0 - pxor %xmm15,%xmm3 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - decl %r10d - jmp L$dec_sbox -.p2align 4 -L$dec_loop: - pxor 0(%rax),%xmm15 - pxor 16(%rax),%xmm0 - pxor 32(%rax),%xmm1 - pxor 48(%rax),%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor 64(%rax),%xmm3 - pxor 80(%rax),%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor 96(%rax),%xmm5 - pxor 112(%rax),%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq 128(%rax),%rax -L$dec_sbox: - pxor %xmm3,%xmm2 - - pxor %xmm6,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm3,%xmm5 - pxor %xmm5,%xmm6 - pxor %xmm6,%xmm0 - - pxor %xmm0,%xmm15 - pxor %xmm4,%xmm1 - pxor %xmm15,%xmm2 - pxor %xmm15,%xmm4 - pxor %xmm2,%xmm0 - movdqa %xmm2,%xmm10 - movdqa %xmm6,%xmm9 - movdqa %xmm0,%xmm8 - movdqa %xmm3,%xmm12 - movdqa %xmm4,%xmm11 - - pxor %xmm15,%xmm10 - pxor %xmm3,%xmm9 - pxor %xmm5,%xmm8 - movdqa %xmm10,%xmm13 - pxor %xmm15,%xmm12 - movdqa %xmm9,%xmm7 - pxor %xmm1,%xmm11 - movdqa %xmm10,%xmm14 - - por %xmm8,%xmm9 - por %xmm11,%xmm10 - pxor %xmm7,%xmm14 - pand %xmm11,%xmm13 - pxor %xmm8,%xmm11 - pand %xmm8,%xmm7 - pand %xmm11,%xmm14 - movdqa %xmm5,%xmm11 - pxor %xmm1,%xmm11 - pand %xmm11,%xmm12 - pxor %xmm12,%xmm10 - pxor %xmm12,%xmm9 - movdqa %xmm2,%xmm12 - movdqa %xmm0,%xmm11 - pxor %xmm6,%xmm12 - pxor %xmm4,%xmm11 - movdqa %xmm12,%xmm8 - pand %xmm11,%xmm12 - por %xmm11,%xmm8 - pxor %xmm12,%xmm7 - pxor %xmm14,%xmm10 - pxor %xmm13,%xmm9 - pxor %xmm14,%xmm8 - movdqa %xmm3,%xmm11 - pxor %xmm13,%xmm7 - movdqa %xmm15,%xmm12 - pxor %xmm13,%xmm8 - movdqa %xmm6,%xmm13 - pand %xmm5,%xmm11 - movdqa %xmm2,%xmm14 - pand %xmm1,%xmm12 - pand %xmm0,%xmm13 - por %xmm4,%xmm14 - pxor %xmm11,%xmm10 - pxor %xmm12,%xmm9 - pxor %xmm13,%xmm8 - pxor %xmm14,%xmm7 - - - - - - movdqa %xmm10,%xmm11 - pand %xmm8,%xmm10 - pxor %xmm9,%xmm11 - - movdqa %xmm7,%xmm13 - movdqa %xmm11,%xmm14 - pxor %xmm10,%xmm13 - pand %xmm13,%xmm14 - - movdqa %xmm8,%xmm12 - pxor %xmm9,%xmm14 - pxor %xmm7,%xmm12 - - pxor %xmm9,%xmm10 - - pand %xmm10,%xmm12 - - movdqa %xmm13,%xmm9 - pxor %xmm7,%xmm12 - - pxor %xmm12,%xmm9 - pxor %xmm12,%xmm8 - - pand %xmm7,%xmm9 - - pxor %xmm9,%xmm13 - pxor %xmm9,%xmm8 - - pand %xmm14,%xmm13 - - pxor %xmm11,%xmm13 - movdqa %xmm4,%xmm11 - movdqa %xmm0,%xmm7 - movdqa %xmm14,%xmm9 - pxor %xmm13,%xmm9 - pand %xmm4,%xmm9 - pxor %xmm0,%xmm4 - pand %xmm14,%xmm0 - pand %xmm13,%xmm4 - pxor %xmm0,%xmm4 - pxor %xmm9,%xmm0 - pxor %xmm1,%xmm11 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm1,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm5,%xmm1 - pand %xmm14,%xmm7 - pand %xmm12,%xmm5 - pand %xmm13,%xmm11 - pand %xmm8,%xmm1 - pxor %xmm11,%xmm7 - pxor %xmm5,%xmm1 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm5 - pxor %xmm11,%xmm4 - pxor %xmm11,%xmm1 - pxor %xmm7,%xmm0 - pxor %xmm7,%xmm5 - - movdqa %xmm2,%xmm11 - movdqa %xmm6,%xmm7 - pxor %xmm15,%xmm11 - pxor %xmm3,%xmm7 - movdqa %xmm14,%xmm10 - movdqa %xmm12,%xmm9 - pxor %xmm13,%xmm10 - pxor %xmm8,%xmm9 - pand %xmm11,%xmm10 - pand %xmm15,%xmm9 - pxor %xmm7,%xmm11 - pxor %xmm3,%xmm15 - pand %xmm14,%xmm7 - pand %xmm12,%xmm3 - pand %xmm13,%xmm11 - pand %xmm8,%xmm15 - pxor %xmm11,%xmm7 - pxor %xmm3,%xmm15 - pxor %xmm10,%xmm11 - pxor %xmm9,%xmm3 - pxor %xmm12,%xmm14 - pxor %xmm8,%xmm13 - movdqa %xmm14,%xmm10 - pxor %xmm13,%xmm10 - pand %xmm2,%xmm10 - pxor %xmm6,%xmm2 - pand %xmm14,%xmm6 - pand %xmm13,%xmm2 - pxor %xmm6,%xmm2 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm11,%xmm15 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm3 - pxor %xmm6,%xmm0 - pxor %xmm4,%xmm5 - - pxor %xmm0,%xmm3 - pxor %xmm6,%xmm1 - pxor %xmm6,%xmm4 - pxor %xmm1,%xmm3 - pxor %xmm15,%xmm6 - pxor %xmm4,%xmm3 - pxor %xmm5,%xmm2 - pxor %xmm0,%xmm5 - pxor %xmm3,%xmm2 - - pxor %xmm15,%xmm3 - pxor %xmm2,%xmm6 - decl %r10d - jl L$dec_done - - pshufd $0x4E,%xmm15,%xmm7 - pshufd $0x4E,%xmm2,%xmm13 - pxor %xmm15,%xmm7 - pshufd $0x4E,%xmm4,%xmm14 - pxor %xmm2,%xmm13 - pshufd $0x4E,%xmm0,%xmm8 - pxor %xmm4,%xmm14 - pshufd $0x4E,%xmm5,%xmm9 - pxor %xmm0,%xmm8 - pshufd $0x4E,%xmm3,%xmm10 - pxor %xmm5,%xmm9 - pxor %xmm13,%xmm15 - pxor %xmm13,%xmm0 - pshufd $0x4E,%xmm1,%xmm11 - pxor %xmm3,%xmm10 - pxor %xmm7,%xmm5 - pxor %xmm8,%xmm3 - pshufd $0x4E,%xmm6,%xmm12 - pxor %xmm1,%xmm11 - pxor %xmm14,%xmm0 - pxor %xmm9,%xmm1 - pxor %xmm6,%xmm12 - - pxor %xmm14,%xmm5 - pxor %xmm13,%xmm3 - pxor %xmm13,%xmm1 - pxor %xmm10,%xmm6 - pxor %xmm11,%xmm2 - pxor %xmm14,%xmm1 - pxor %xmm14,%xmm6 - pxor %xmm12,%xmm4 - pshufd $0x93,%xmm15,%xmm7 - pshufd $0x93,%xmm0,%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x93,%xmm5,%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x93,%xmm3,%xmm10 - pxor %xmm9,%xmm5 - pshufd $0x93,%xmm1,%xmm11 - pxor %xmm10,%xmm3 - pshufd $0x93,%xmm6,%xmm12 - pxor %xmm11,%xmm1 - pshufd $0x93,%xmm2,%xmm13 - pxor %xmm12,%xmm6 - pshufd $0x93,%xmm4,%xmm14 - pxor %xmm13,%xmm2 - pxor %xmm14,%xmm4 - - pxor %xmm15,%xmm8 - pxor %xmm4,%xmm7 - pxor %xmm4,%xmm8 - pshufd $0x4E,%xmm15,%xmm15 - pxor %xmm0,%xmm9 - pshufd $0x4E,%xmm0,%xmm0 - pxor %xmm1,%xmm12 - pxor %xmm7,%xmm15 - pxor %xmm6,%xmm13 - pxor %xmm8,%xmm0 - pxor %xmm3,%xmm11 - pshufd $0x4E,%xmm1,%xmm7 - pxor %xmm2,%xmm14 - pshufd $0x4E,%xmm6,%xmm8 - pxor %xmm5,%xmm10 - pshufd $0x4E,%xmm3,%xmm1 - pxor %xmm4,%xmm10 - pshufd $0x4E,%xmm4,%xmm6 - pxor %xmm4,%xmm11 - pshufd $0x4E,%xmm2,%xmm3 - pxor %xmm11,%xmm7 - pshufd $0x4E,%xmm5,%xmm2 - pxor %xmm12,%xmm8 - pxor %xmm1,%xmm10 - pxor %xmm14,%xmm6 - pxor %xmm3,%xmm13 - movdqa %xmm7,%xmm3 - pxor %xmm9,%xmm2 - movdqa %xmm13,%xmm5 - movdqa %xmm8,%xmm4 - movdqa %xmm2,%xmm1 - movdqa %xmm10,%xmm2 - movdqa -16(%r11),%xmm7 - jnz L$dec_loop - movdqa -32(%r11),%xmm7 - jmp L$dec_loop -.p2align 4 -L$dec_done: - movdqa 0(%r11),%xmm7 - movdqa 16(%r11),%xmm8 - movdqa %xmm2,%xmm9 - psrlq $1,%xmm2 - movdqa %xmm1,%xmm10 - psrlq $1,%xmm1 - pxor %xmm4,%xmm2 - pxor %xmm6,%xmm1 - pand %xmm7,%xmm2 - pand %xmm7,%xmm1 - pxor %xmm2,%xmm4 - psllq $1,%xmm2 - pxor %xmm1,%xmm6 - psllq $1,%xmm1 - pxor %xmm9,%xmm2 - pxor %xmm10,%xmm1 - movdqa %xmm5,%xmm9 - psrlq $1,%xmm5 - movdqa %xmm15,%xmm10 - psrlq $1,%xmm15 - pxor %xmm3,%xmm5 - pxor %xmm0,%xmm15 - pand %xmm7,%xmm5 - pand %xmm7,%xmm15 - pxor %xmm5,%xmm3 - psllq $1,%xmm5 - pxor %xmm15,%xmm0 - psllq $1,%xmm15 - pxor %xmm9,%xmm5 - pxor %xmm10,%xmm15 - movdqa 32(%r11),%xmm7 - movdqa %xmm6,%xmm9 - psrlq $2,%xmm6 - movdqa %xmm1,%xmm10 - psrlq $2,%xmm1 - pxor %xmm4,%xmm6 - pxor %xmm2,%xmm1 - pand %xmm8,%xmm6 - pand %xmm8,%xmm1 - pxor %xmm6,%xmm4 - psllq $2,%xmm6 - pxor %xmm1,%xmm2 - psllq $2,%xmm1 - pxor %xmm9,%xmm6 - pxor %xmm10,%xmm1 - movdqa %xmm0,%xmm9 - psrlq $2,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $2,%xmm15 - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm15 - pand %xmm8,%xmm0 - pand %xmm8,%xmm15 - pxor %xmm0,%xmm3 - psllq $2,%xmm0 - pxor %xmm15,%xmm5 - psllq $2,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa %xmm3,%xmm9 - psrlq $4,%xmm3 - movdqa %xmm5,%xmm10 - psrlq $4,%xmm5 - pxor %xmm4,%xmm3 - pxor %xmm2,%xmm5 - pand %xmm7,%xmm3 - pand %xmm7,%xmm5 - pxor %xmm3,%xmm4 - psllq $4,%xmm3 - pxor %xmm5,%xmm2 - psllq $4,%xmm5 - pxor %xmm9,%xmm3 - pxor %xmm10,%xmm5 - movdqa %xmm0,%xmm9 - psrlq $4,%xmm0 - movdqa %xmm15,%xmm10 - psrlq $4,%xmm15 - pxor %xmm6,%xmm0 - pxor %xmm1,%xmm15 - pand %xmm7,%xmm0 - pand %xmm7,%xmm15 - pxor %xmm0,%xmm6 - psllq $4,%xmm0 - pxor %xmm15,%xmm1 - psllq $4,%xmm15 - pxor %xmm9,%xmm0 - pxor %xmm10,%xmm15 - movdqa (%rax),%xmm7 - pxor %xmm7,%xmm5 - pxor %xmm7,%xmm3 - pxor %xmm7,%xmm1 - pxor %xmm7,%xmm6 - pxor %xmm7,%xmm2 - pxor %xmm7,%xmm4 - pxor %xmm7,%xmm15 - pxor %xmm7,%xmm0 - .byte 0xf3,0xc3 - - -.p2align 4 -_bsaes_key_convert: - leaq L$masks(%rip),%r11 - movdqu (%rcx),%xmm7 - leaq 16(%rcx),%rcx - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - movdqa 48(%r11),%xmm3 - movdqa 64(%r11),%xmm4 - pcmpeqd %xmm5,%xmm5 - - movdqu (%rcx),%xmm6 - movdqa %xmm7,(%rax) - leaq 16(%rax),%rax - decl %r10d - jmp L$key_loop -.p2align 4 -L$key_loop: -.byte 102,15,56,0,244 - - movdqa %xmm0,%xmm8 - movdqa %xmm1,%xmm9 - - pand %xmm6,%xmm8 - pand %xmm6,%xmm9 - movdqa %xmm2,%xmm10 - pcmpeqb %xmm0,%xmm8 - psllq $4,%xmm0 - movdqa %xmm3,%xmm11 - pcmpeqb %xmm1,%xmm9 - psllq $4,%xmm1 - - pand %xmm6,%xmm10 - pand %xmm6,%xmm11 - movdqa %xmm0,%xmm12 - pcmpeqb %xmm2,%xmm10 - psllq $4,%xmm2 - movdqa %xmm1,%xmm13 - pcmpeqb %xmm3,%xmm11 - psllq $4,%xmm3 - - movdqa %xmm2,%xmm14 - movdqa %xmm3,%xmm15 - pxor %xmm5,%xmm8 - pxor %xmm5,%xmm9 - - pand %xmm6,%xmm12 - pand %xmm6,%xmm13 - movdqa %xmm8,0(%rax) - pcmpeqb %xmm0,%xmm12 - psrlq $4,%xmm0 - movdqa %xmm9,16(%rax) - pcmpeqb %xmm1,%xmm13 - psrlq $4,%xmm1 - leaq 16(%rcx),%rcx - - pand %xmm6,%xmm14 - pand %xmm6,%xmm15 - movdqa %xmm10,32(%rax) - pcmpeqb %xmm2,%xmm14 - psrlq $4,%xmm2 - movdqa %xmm11,48(%rax) - pcmpeqb %xmm3,%xmm15 - psrlq $4,%xmm3 - movdqu (%rcx),%xmm6 - - pxor %xmm5,%xmm13 - pxor %xmm5,%xmm14 - movdqa %xmm12,64(%rax) - movdqa %xmm13,80(%rax) - movdqa %xmm14,96(%rax) - movdqa %xmm15,112(%rax) - leaq 128(%rax),%rax - decl %r10d - jnz L$key_loop - - movdqa 80(%r11),%xmm7 - - .byte 0xf3,0xc3 - - -.globl _bsaes_cbc_encrypt - -.p2align 4 -_bsaes_cbc_encrypt: - cmpl $0,%r9d - jne _asm_AES_cbc_encrypt - cmpq $128,%rdx - jb _asm_AES_cbc_encrypt - - movq %rsp,%rax -L$cbc_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movq %r8,%rbx - shrq $4,%r14 - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - movdqu (%rbx),%xmm14 - subq $8,%r14 -L$cbc_dec_loop: - movdqu 0(%r12),%xmm15 - movdqu 16(%r12),%xmm0 - movdqu 32(%r12),%xmm1 - movdqu 48(%r12),%xmm2 - movdqu 64(%r12),%xmm3 - movdqu 80(%r12),%xmm4 - movq %rsp,%rax - movdqu 96(%r12),%xmm5 - movl %edx,%r10d - movdqu 112(%r12),%xmm6 - movdqa %xmm14,32(%rbp) - - call _bsaes_decrypt8 - - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm2 - movdqu 112(%r12),%xmm14 - pxor %xmm13,%xmm4 - movdqu %xmm15,0(%r13) - leaq 128(%r12),%r12 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - subq $8,%r14 - jnc L$cbc_dec_loop - - addq $8,%r14 - jz L$cbc_dec_done - - movdqu 0(%r12),%xmm15 - movq %rsp,%rax - movl %edx,%r10d - cmpq $2,%r14 - jb L$cbc_dec_one - movdqu 16(%r12),%xmm0 - je L$cbc_dec_two - movdqu 32(%r12),%xmm1 - cmpq $4,%r14 - jb L$cbc_dec_three - movdqu 48(%r12),%xmm2 - je L$cbc_dec_four - movdqu 64(%r12),%xmm3 - cmpq $6,%r14 - jb L$cbc_dec_five - movdqu 80(%r12),%xmm4 - je L$cbc_dec_six - movdqu 96(%r12),%xmm5 - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm6 - movdqu 96(%r12),%xmm14 - pxor %xmm12,%xmm2 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_six: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm1 - movdqu 80(%r12),%xmm14 - pxor %xmm11,%xmm6 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_five: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm3 - movdqu 64(%r12),%xmm14 - pxor %xmm10,%xmm1 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_four: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm5 - movdqu 48(%r12),%xmm14 - pxor %xmm9,%xmm3 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_three: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm0 - movdqu 32(%r12),%xmm14 - pxor %xmm8,%xmm5 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_two: - movdqa %xmm14,32(%rbp) - call _bsaes_decrypt8 - pxor 32(%rbp),%xmm15 - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm14 - pxor %xmm7,%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - jmp L$cbc_dec_done -.p2align 4 -L$cbc_dec_one: - leaq (%r12),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm14 - movdqu %xmm14,(%r13) - movdqa %xmm15,%xmm14 - -L$cbc_dec_done: - movdqu %xmm14,(%rbx) - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$cbc_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$cbc_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$cbc_dec_epilogue: - .byte 0xf3,0xc3 - - -.globl _bsaes_ctr32_encrypt_blocks - -.p2align 4 -_bsaes_ctr32_encrypt_blocks: - movq %rsp,%rax -L$ctr_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movdqu (%r8),%xmm0 - movl 240(%rcx),%eax - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - movdqa %xmm0,32(%rbp) - cmpq $8,%rdx - jb L$ctr_enc_short - - movl %eax,%ebx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %ebx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - movdqa (%rsp),%xmm8 - leaq L$ADD1(%rip),%r11 - movdqa 32(%rbp),%xmm15 - movdqa -32(%r11),%xmm7 -.byte 102,68,15,56,0,199 -.byte 102,68,15,56,0,255 - movdqa %xmm8,(%rsp) - jmp L$ctr_enc_loop -.p2align 4 -L$ctr_enc_loop: - movdqa %xmm15,32(%rbp) - movdqa %xmm15,%xmm0 - movdqa %xmm15,%xmm1 - paddd 0(%r11),%xmm0 - movdqa %xmm15,%xmm2 - paddd 16(%r11),%xmm1 - movdqa %xmm15,%xmm3 - paddd 32(%r11),%xmm2 - movdqa %xmm15,%xmm4 - paddd 48(%r11),%xmm3 - movdqa %xmm15,%xmm5 - paddd 64(%r11),%xmm4 - movdqa %xmm15,%xmm6 - paddd 80(%r11),%xmm5 - paddd 96(%r11),%xmm6 - - - - movdqa (%rsp),%xmm8 - leaq 16(%rsp),%rax - movdqa -16(%r11),%xmm7 - pxor %xmm8,%xmm15 - pxor %xmm8,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm8,%xmm2 -.byte 102,68,15,56,0,255 -.byte 102,15,56,0,199 - pxor %xmm8,%xmm3 - pxor %xmm8,%xmm4 -.byte 102,15,56,0,207 -.byte 102,15,56,0,215 - pxor %xmm8,%xmm5 - pxor %xmm8,%xmm6 -.byte 102,15,56,0,223 -.byte 102,15,56,0,231 -.byte 102,15,56,0,239 -.byte 102,15,56,0,247 - leaq L$BS0(%rip),%r11 - movl %ebx,%r10d - - call _bsaes_encrypt8_bitslice - - subq $8,%r14 - jc L$ctr_enc_loop_done - - movdqu 0(%r12),%xmm7 - movdqu 16(%r12),%xmm8 - movdqu 32(%r12),%xmm9 - movdqu 48(%r12),%xmm10 - movdqu 64(%r12),%xmm11 - movdqu 80(%r12),%xmm12 - movdqu 96(%r12),%xmm13 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - pxor %xmm15,%xmm7 - movdqa 32(%rbp),%xmm15 - pxor %xmm8,%xmm0 - movdqu %xmm7,0(%r13) - pxor %xmm9,%xmm3 - movdqu %xmm0,16(%r13) - pxor %xmm10,%xmm5 - movdqu %xmm3,32(%r13) - pxor %xmm11,%xmm2 - movdqu %xmm5,48(%r13) - pxor %xmm12,%xmm6 - movdqu %xmm2,64(%r13) - pxor %xmm13,%xmm1 - movdqu %xmm6,80(%r13) - pxor %xmm14,%xmm4 - movdqu %xmm1,96(%r13) - leaq L$ADD1(%rip),%r11 - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - paddd 112(%r11),%xmm15 - jnz L$ctr_enc_loop - - jmp L$ctr_enc_done -.p2align 4 -L$ctr_enc_loop_done: - addq $8,%r14 - movdqu 0(%r12),%xmm7 - pxor %xmm7,%xmm15 - movdqu %xmm15,0(%r13) - cmpq $2,%r14 - jb L$ctr_enc_done - movdqu 16(%r12),%xmm8 - pxor %xmm8,%xmm0 - movdqu %xmm0,16(%r13) - je L$ctr_enc_done - movdqu 32(%r12),%xmm9 - pxor %xmm9,%xmm3 - movdqu %xmm3,32(%r13) - cmpq $4,%r14 - jb L$ctr_enc_done - movdqu 48(%r12),%xmm10 - pxor %xmm10,%xmm5 - movdqu %xmm5,48(%r13) - je L$ctr_enc_done - movdqu 64(%r12),%xmm11 - pxor %xmm11,%xmm2 - movdqu %xmm2,64(%r13) - cmpq $6,%r14 - jb L$ctr_enc_done - movdqu 80(%r12),%xmm12 - pxor %xmm12,%xmm6 - movdqu %xmm6,80(%r13) - je L$ctr_enc_done - movdqu 96(%r12),%xmm13 - pxor %xmm13,%xmm1 - movdqu %xmm1,96(%r13) - jmp L$ctr_enc_done - -.p2align 4 -L$ctr_enc_short: - leaq 32(%rbp),%rdi - leaq 48(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_encrypt - movdqu (%r12),%xmm0 - leaq 16(%r12),%r12 - movl 44(%rbp),%eax - bswapl %eax - pxor 48(%rbp),%xmm0 - incl %eax - movdqu %xmm0,(%r13) - bswapl %eax - leaq 16(%r13),%r13 - movl %eax,44(%rsp) - decq %r14 - jnz L$ctr_enc_short - -L$ctr_enc_done: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$ctr_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$ctr_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$ctr_enc_epilogue: - .byte 0xf3,0xc3 - -.globl _bsaes_xts_encrypt - -.p2align 4 -_bsaes_xts_encrypt: - movq %rsp,%rax -L$xts_enc_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call _asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor %xmm6,%xmm7 - movdqa %xmm7,(%rax) - - andq $-16,%r14 - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc L$xts_enc_short - jmp L$xts_enc_loop - -.p2align 4 -L$xts_enc_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm1,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc L$xts_enc_loop - -L$xts_enc_short: - addq $0x80,%r14 - jz L$xts_enc_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je L$xts_enc_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je L$xts_enc_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je L$xts_enc_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je L$xts_enc_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je L$xts_enc_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je L$xts_enc_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - pxor 96(%rsp),%xmm1 - movdqu %xmm6,80(%r13) - movdqu %xmm1,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm2,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - pxor 64(%rsp),%xmm2 - movdqu %xmm5,48(%r13) - movdqu %xmm2,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm5 - movdqu %xmm3,32(%r13) - movdqu %xmm5,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm3 - movdqu %xmm0,16(%r13) - movdqu %xmm3,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_encrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp L$xts_enc_done -.p2align 4 -L$xts_enc_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_encrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -L$xts_enc_done: - andl $15,%ebx - jz L$xts_enc_ret - movq %r13,%rdx - -L$xts_enc_steal: - movzbl (%r12),%eax - movzbl -16(%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,-16(%rdx) - movb %cl,0(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz L$xts_enc_steal - - movdqu -16(%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_encrypt - pxor 32(%rbp),%xmm6 - movdqu %xmm6,-16(%r13) - -L$xts_enc_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$xts_enc_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$xts_enc_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$xts_enc_epilogue: - .byte 0xf3,0xc3 - - -.globl _bsaes_xts_decrypt - -.p2align 4 -_bsaes_xts_decrypt: - movq %rsp,%rax -L$xts_dec_prologue: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - leaq -72(%rsp),%rsp - movq %rsp,%rbp - movq %rdi,%r12 - movq %rsi,%r13 - movq %rdx,%r14 - movq %rcx,%r15 - - leaq (%r9),%rdi - leaq 32(%rbp),%rsi - leaq (%r8),%rdx - call _asm_AES_encrypt - - movl 240(%r15),%eax - movq %r14,%rbx - - movl %eax,%edx - shlq $7,%rax - subq $96,%rax - subq %rax,%rsp - - movq %rsp,%rax - movq %r15,%rcx - movl %edx,%r10d - call _bsaes_key_convert - pxor (%rsp),%xmm7 - movdqa %xmm6,(%rax) - movdqa %xmm7,(%rsp) - - xorl %eax,%eax - andq $-16,%r14 - testl $15,%ebx - setnz %al - shlq $4,%rax - subq %rax,%r14 - - subq $0x80,%rsp - movdqa 32(%rbp),%xmm6 - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - - subq $0x80,%r14 - jc L$xts_dec_short - jmp L$xts_dec_loop - -.p2align 4 -L$xts_dec_loop: - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqu 112(%r12),%xmm14 - leaq 128(%r12),%r12 - movdqa %xmm6,112(%rsp) - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - pxor %xmm14,%xmm6 - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - pxor 112(%rsp),%xmm4 - movdqu %xmm2,96(%r13) - movdqu %xmm4,112(%r13) - leaq 128(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - - subq $0x80,%r14 - jnc L$xts_dec_loop - -L$xts_dec_short: - addq $0x80,%r14 - jz L$xts_dec_done - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm15 - movdqa %xmm6,0(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm0 - movdqa %xmm6,16(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 0(%r12),%xmm7 - cmpq $16,%r14 - je L$xts_dec_1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm1 - movdqa %xmm6,32(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 16(%r12),%xmm8 - cmpq $32,%r14 - je L$xts_dec_2 - pxor %xmm7,%xmm15 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm2 - movdqa %xmm6,48(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 32(%r12),%xmm9 - cmpq $48,%r14 - je L$xts_dec_3 - pxor %xmm8,%xmm0 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm3 - movdqa %xmm6,64(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 48(%r12),%xmm10 - cmpq $64,%r14 - je L$xts_dec_4 - pxor %xmm9,%xmm1 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm4 - movdqa %xmm6,80(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 64(%r12),%xmm11 - cmpq $80,%r14 - je L$xts_dec_5 - pxor %xmm10,%xmm2 - pshufd $0x13,%xmm14,%xmm13 - pxor %xmm14,%xmm14 - movdqa %xmm6,%xmm5 - movdqa %xmm6,96(%rsp) - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - pcmpgtd %xmm6,%xmm14 - pxor %xmm13,%xmm6 - movdqu 80(%r12),%xmm12 - cmpq $96,%r14 - je L$xts_dec_6 - pxor %xmm11,%xmm3 - movdqu 96(%r12),%xmm13 - pxor %xmm12,%xmm4 - movdqa %xmm6,112(%rsp) - leaq 112(%r12),%r12 - pxor %xmm13,%xmm5 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - pxor 96(%rsp),%xmm2 - movdqu %xmm6,80(%r13) - movdqu %xmm2,96(%r13) - leaq 112(%r13),%r13 - - movdqa 112(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_6: - pxor %xmm11,%xmm3 - leaq 96(%r12),%r12 - pxor %xmm12,%xmm4 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - pxor 80(%rsp),%xmm6 - movdqu %xmm1,64(%r13) - movdqu %xmm6,80(%r13) - leaq 96(%r13),%r13 - - movdqa 96(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_5: - pxor %xmm10,%xmm2 - leaq 80(%r12),%r12 - pxor %xmm11,%xmm3 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - pxor 64(%rsp),%xmm1 - movdqu %xmm3,48(%r13) - movdqu %xmm1,64(%r13) - leaq 80(%r13),%r13 - - movdqa 80(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_4: - pxor %xmm9,%xmm1 - leaq 64(%r12),%r12 - pxor %xmm10,%xmm2 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - pxor 48(%rsp),%xmm3 - movdqu %xmm5,32(%r13) - movdqu %xmm3,48(%r13) - leaq 64(%r13),%r13 - - movdqa 64(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_3: - pxor %xmm8,%xmm0 - leaq 48(%r12),%r12 - pxor %xmm9,%xmm1 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - pxor 32(%rsp),%xmm5 - movdqu %xmm0,16(%r13) - movdqu %xmm5,32(%r13) - leaq 48(%r13),%r13 - - movdqa 48(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_2: - pxor %xmm7,%xmm15 - leaq 32(%r12),%r12 - pxor %xmm8,%xmm0 - leaq 128(%rsp),%rax - movl %edx,%r10d - - call _bsaes_decrypt8 - - pxor 0(%rsp),%xmm15 - pxor 16(%rsp),%xmm0 - movdqu %xmm15,0(%r13) - movdqu %xmm0,16(%r13) - leaq 32(%r13),%r13 - - movdqa 32(%rsp),%xmm6 - jmp L$xts_dec_done -.p2align 4 -L$xts_dec_1: - pxor %xmm15,%xmm7 - leaq 16(%r12),%r12 - movdqa %xmm7,32(%rbp) - leaq 32(%rbp),%rdi - leaq 32(%rbp),%rsi - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm15 - - - - - - movdqu %xmm15,0(%r13) - leaq 16(%r13),%r13 - - movdqa 16(%rsp),%xmm6 - -L$xts_dec_done: - andl $15,%ebx - jz L$xts_dec_ret - - pxor %xmm14,%xmm14 - movdqa L$xts_magic(%rip),%xmm12 - pcmpgtd %xmm6,%xmm14 - pshufd $0x13,%xmm14,%xmm13 - movdqa %xmm6,%xmm5 - paddq %xmm6,%xmm6 - pand %xmm12,%xmm13 - movdqu (%r12),%xmm15 - pxor %xmm13,%xmm6 - - leaq 32(%rbp),%rdi - pxor %xmm6,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm6 - movq %r13,%rdx - movdqu %xmm6,(%r13) - -L$xts_dec_steal: - movzbl 16(%r12),%eax - movzbl (%rdx),%ecx - leaq 1(%r12),%r12 - movb %al,(%rdx) - movb %cl,16(%rdx) - leaq 1(%rdx),%rdx - subl $1,%ebx - jnz L$xts_dec_steal - - movdqu (%r13),%xmm15 - leaq 32(%rbp),%rdi - pxor %xmm5,%xmm15 - leaq 32(%rbp),%rsi - movdqa %xmm15,32(%rbp) - leaq (%r15),%rdx - call _asm_AES_decrypt - pxor 32(%rbp),%xmm5 - movdqu %xmm5,(%r13) - -L$xts_dec_ret: - leaq (%rsp),%rax - pxor %xmm0,%xmm0 -L$xts_dec_bzero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - leaq 32(%rax),%rax - cmpq %rax,%rbp - ja L$xts_dec_bzero - - leaq (%rbp),%rsp - movq 72(%rsp),%r15 - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbx - movq 112(%rsp),%rax - leaq 120(%rsp),%rsp - movq %rax,%rbp -L$xts_dec_epilogue: - .byte 0xf3,0xc3 - - -.p2align 6 -_bsaes_const: -L$M0ISR: -.quad 0x0a0e0206070b0f03, 0x0004080c0d010509 -L$ISRM0: -.quad 0x01040b0e0205080f, 0x0306090c00070a0d -L$ISR: -.quad 0x0504070602010003, 0x0f0e0d0c080b0a09 -L$BS0: -.quad 0x5555555555555555, 0x5555555555555555 -L$BS1: -.quad 0x3333333333333333, 0x3333333333333333 -L$BS2: -.quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f -L$SR: -.quad 0x0504070600030201, 0x0f0e0d0c0a09080b -L$SRM0: -.quad 0x0304090e00050a0f, 0x01060b0c0207080d -L$M0SR: -.quad 0x0a0e02060f03070b, 0x0004080c05090d01 -L$SWPUP: -.quad 0x0706050403020100, 0x0c0d0e0f0b0a0908 -L$SWPUPM0SR: -.quad 0x0a0d02060c03070b, 0x0004080f05090e01 -L$ADD1: -.quad 0x0000000000000000, 0x0000000100000000 -L$ADD2: -.quad 0x0000000000000000, 0x0000000200000000 -L$ADD3: -.quad 0x0000000000000000, 0x0000000300000000 -L$ADD4: -.quad 0x0000000000000000, 0x0000000400000000 -L$ADD5: -.quad 0x0000000000000000, 0x0000000500000000 -L$ADD6: -.quad 0x0000000000000000, 0x0000000600000000 -L$ADD7: -.quad 0x0000000000000000, 0x0000000700000000 -L$ADD8: -.quad 0x0000000000000000, 0x0000000800000000 -L$xts_magic: -.long 0x87,0,1,0 -L$masks: -.quad 0x0101010101010101, 0x0101010101010101 -.quad 0x0202020202020202, 0x0202020202020202 -.quad 0x0404040404040404, 0x0404040404040404 -.quad 0x0808080808080808, 0x0808080808080808 -L$M0: -.quad 0x02060a0e03070b0f, 0x0004080c0105090d -L$63: -.quad 0x6363636363636363, 0x6363636363636363 -.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/vpaes-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/aes/vpaes-x86_64.s deleted file mode 100644 index 2ffd0bc1007578..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/aes/vpaes-x86_64.s +++ /dev/null @@ -1,826 +0,0 @@ -.text - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_encrypt_core: - movq %rdx,%r9 - movq $16,%r11 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa L$k_ipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movdqu (%r9),%xmm5 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa L$k_ipt+16(%rip),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm5,%xmm2 - addq $16,%r9 - pxor %xmm2,%xmm0 - leaq L$k_mc_backward(%rip),%r10 - jmp L$enc_entry - -.p2align 4 -L$enc_loop: - - movdqa %xmm13,%xmm4 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa %xmm15,%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%r11,%r10,1),%xmm1 -.byte 102,15,56,0,234 - movdqa (%r11,%r10,1),%xmm4 - movdqa %xmm14,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addq $16,%r9 - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addq $16,%r11 - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andq $0x30,%r11 - subq $1,%rax - pxor %xmm3,%xmm0 - -L$enc_entry: - - movdqa %xmm9,%xmm1 - movdqa %xmm11,%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm10,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm5 - pxor %xmm1,%xmm3 - jnz L$enc_loop - - - movdqa -96(%r10),%xmm4 - movdqa -80(%r10),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%r11,%r10,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_decrypt_core: - movq %rdx,%r9 - movl 240(%rdx),%eax - movdqa %xmm9,%xmm1 - movdqa L$k_dipt(%rip),%xmm2 - pandn %xmm0,%xmm1 - movq %rax,%r11 - psrld $4,%xmm1 - movdqu (%r9),%xmm5 - shlq $4,%r11 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa L$k_dipt+16(%rip),%xmm0 - xorq $0x30,%r11 - leaq L$k_dsbd(%rip),%r10 -.byte 102,15,56,0,193 - andq $0x30,%r11 - pxor %xmm5,%xmm2 - movdqa L$k_mc_forward+48(%rip),%xmm5 - pxor %xmm2,%xmm0 - addq $16,%r9 - addq %r10,%r11 - jmp L$dec_entry - -.p2align 4 -L$dec_loop: - - - - movdqa -32(%r10),%xmm4 - movdqa -16(%r10),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 0(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%r10),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%r10),%xmm1 - -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addq $16,%r9 -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subq $1,%rax - -L$dec_entry: - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - movdqa %xmm11,%xmm2 - psrld $4,%xmm1 - pand %xmm9,%xmm0 -.byte 102,15,56,0,208 - movdqa %xmm10,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm10,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm10,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%r9),%xmm0 - pxor %xmm1,%xmm3 - jnz L$dec_loop - - - movdqa 96(%r10),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%r10),%xmm0 - movdqa -352(%r11),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_schedule_core: - - - - - - call _vpaes_preheat - movdqa L$k_rcon(%rip),%xmm8 - movdqu (%rdi),%xmm0 - - - movdqa %xmm0,%xmm3 - leaq L$k_ipt(%rip),%r11 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - - leaq L$k_sr(%rip),%r10 - testq %rcx,%rcx - jnz L$schedule_am_decrypting - - - movdqu %xmm0,(%rdx) - jmp L$schedule_go - -L$schedule_am_decrypting: - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%rdx) - xorq $0x30,%r8 - -L$schedule_go: - cmpl $192,%esi - ja L$schedule_256 - je L$schedule_192 - - - - - - - - - - -L$schedule_128: - movl $10,%esi - -L$oop_schedule_128: - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - jmp L$oop_schedule_128 - - - - - - - - - - - - - - - - -.p2align 4 -L$schedule_192: - movdqu 8(%rdi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%esi - -L$oop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp L$oop_schedule_192 - - - - - - - - - - - -.p2align 4 -L$schedule_256: - movdqu 16(%rdi),%xmm0 - call _vpaes_schedule_transform - movl $7,%esi - -L$oop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - - - call _vpaes_schedule_round - decq %rsi - jz L$schedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd $0xFF,%xmm0,%xmm0 - movdqa %xmm7,%xmm5 - movdqa %xmm6,%xmm7 - call _vpaes_schedule_low_round - movdqa %xmm5,%xmm7 - - jmp L$oop_schedule_256 - - - - - - - - - - - - -.p2align 4 -L$schedule_mangle_last: - - leaq L$k_deskew(%rip),%r11 - testq %rcx,%rcx - jnz L$schedule_mangle_last_dec - - - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,193 - leaq L$k_opt(%rip),%r11 - addq $32,%rdx - -L$schedule_mangle_last_dec: - addq $-16,%rdx - pxor L$k_s63(%rip),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%rdx) - - - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_192_smear: - pshufd $0x80,%xmm6,%xmm1 - pshufd $0xFE,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_round: - - pxor %xmm1,%xmm1 -.byte 102,65,15,58,15,200,15 -.byte 102,69,15,58,15,192,15 - pxor %xmm1,%xmm7 - - - pshufd $0xFF,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round: - - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor L$k_s63(%rip),%xmm7 - - - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm10,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm10,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm10,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa %xmm13,%xmm4 -.byte 102,15,56,0,226 - movdqa %xmm12,%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - - - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - .byte 0xf3,0xc3 - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_transform: - movdqa %xmm9,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm0 - movdqa (%r11),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%r11),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - .byte 0xf3,0xc3 - - - - - - - - - - - - - - - - - - - - - - - - - - -.p2align 4 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa L$k_mc_forward(%rip),%xmm5 - testq %rcx,%rcx - jnz L$schedule_mangle_dec - - - addq $16,%rdx - pxor L$k_s63(%rip),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - - jmp L$schedule_mangle_both -.p2align 4 -L$schedule_mangle_dec: - - leaq L$k_dksd(%rip),%r11 - movdqa %xmm9,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm9,%xmm4 - - movdqa 0(%r11),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 32(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 64(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - - movdqa 96(%r11),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%r11),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - - addq $-16,%rdx - -L$schedule_mangle_both: - movdqa (%r8,%r10,1),%xmm1 -.byte 102,15,56,0,217 - addq $-16,%r8 - andq $0x30,%r8 - movdqu %xmm3,(%rdx) - .byte 0xf3,0xc3 - - - - - -.globl _vpaes_set_encrypt_key - -.p2align 4 -_vpaes_set_encrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - - movl $0,%ecx - movl $0x30,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _vpaes_set_decrypt_key - -.p2align 4 -_vpaes_set_decrypt_key: - movl %esi,%eax - shrl $5,%eax - addl $5,%eax - movl %eax,240(%rdx) - shll $4,%eax - leaq 16(%rdx,%rax,1),%rdx - - movl $1,%ecx - movl %esi,%r8d - shrl $1,%r8d - andl $32,%r8d - xorl $32,%r8d - call _vpaes_schedule_core - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _vpaes_encrypt - -.p2align 4 -_vpaes_encrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 - - -.globl _vpaes_decrypt - -.p2align 4 -_vpaes_decrypt: - movdqu (%rdi),%xmm0 - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu %xmm0,(%rsi) - .byte 0xf3,0xc3 - -.globl _vpaes_cbc_encrypt - -.p2align 4 -_vpaes_cbc_encrypt: - xchgq %rcx,%rdx - subq $16,%rcx - jc L$cbc_abort - movdqu (%r8),%xmm6 - subq %rdi,%rsi - call _vpaes_preheat - cmpl $0,%r9d - je L$cbc_dec_loop - jmp L$cbc_enc_loop -.p2align 4 -L$cbc_enc_loop: - movdqu (%rdi),%xmm0 - pxor %xmm6,%xmm0 - call _vpaes_encrypt_core - movdqa %xmm0,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc L$cbc_enc_loop - jmp L$cbc_done -.p2align 4 -L$cbc_dec_loop: - movdqu (%rdi),%xmm0 - movdqa %xmm0,%xmm7 - call _vpaes_decrypt_core - pxor %xmm6,%xmm0 - movdqa %xmm7,%xmm6 - movdqu %xmm0,(%rsi,%rdi,1) - leaq 16(%rdi),%rdi - subq $16,%rcx - jnc L$cbc_dec_loop -L$cbc_done: - movdqu %xmm6,(%r8) -L$cbc_abort: - .byte 0xf3,0xc3 - - - - - - - - -.p2align 4 -_vpaes_preheat: - leaq L$k_s0F(%rip),%r10 - movdqa -32(%r10),%xmm10 - movdqa -16(%r10),%xmm11 - movdqa 0(%r10),%xmm9 - movdqa 48(%r10),%xmm13 - movdqa 64(%r10),%xmm12 - movdqa 80(%r10),%xmm15 - movdqa 96(%r10),%xmm14 - .byte 0xf3,0xc3 - - - - - - - -.p2align 6 -_vpaes_consts: -L$k_inv: -.quad 0x0E05060F0D080180, 0x040703090A0B0C02 -.quad 0x01040A060F0B0780, 0x030D0E0C02050809 - -L$k_s0F: -.quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F - -L$k_ipt: -.quad 0xC2B2E8985A2A7000, 0xCABAE09052227808 -.quad 0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81 - -L$k_sb1: -.quad 0xB19BE18FCB503E00, 0xA5DF7A6E142AF544 -.quad 0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF -L$k_sb2: -.quad 0xE27A93C60B712400, 0x5EB7E955BC982FCD -.quad 0x69EB88400AE12900, 0xC2A163C8AB82234A -L$k_sbo: -.quad 0xD0D26D176FBDC700, 0x15AABF7AC502A878 -.quad 0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA - -L$k_mc_forward: -.quad 0x0407060500030201, 0x0C0F0E0D080B0A09 -.quad 0x080B0A0904070605, 0x000302010C0F0E0D -.quad 0x0C0F0E0D080B0A09, 0x0407060500030201 -.quad 0x000302010C0F0E0D, 0x080B0A0904070605 - -L$k_mc_backward: -.quad 0x0605040702010003, 0x0E0D0C0F0A09080B -.quad 0x020100030E0D0C0F, 0x0A09080B06050407 -.quad 0x0E0D0C0F0A09080B, 0x0605040702010003 -.quad 0x0A09080B06050407, 0x020100030E0D0C0F - -L$k_sr: -.quad 0x0706050403020100, 0x0F0E0D0C0B0A0908 -.quad 0x030E09040F0A0500, 0x0B06010C07020D08 -.quad 0x0F060D040B020900, 0x070E050C030A0108 -.quad 0x0B0E0104070A0D00, 0x0306090C0F020508 - -L$k_rcon: -.quad 0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81 - -L$k_s63: -.quad 0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B - -L$k_opt: -.quad 0xFF9F4929D6B66000, 0xF7974121DEBE6808 -.quad 0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0 - -L$k_deskew: -.quad 0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A -.quad 0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77 - - - - - -L$k_dksd: -.quad 0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9 -.quad 0x41C277F4B5368300, 0x5FDC69EAAB289D1E -L$k_dksb: -.quad 0x9A4FCA1F8550D500, 0x03D653861CC94C99 -.quad 0x115BEDA7B6FC4A00, 0xD993256F7E3482C8 -L$k_dkse: -.quad 0xD5031CCA1FC9D600, 0x53859A4C994F5086 -.quad 0xA23196054FDC7BE8, 0xCD5EF96A20B31487 -L$k_dks9: -.quad 0xB6116FC87ED9A700, 0x4AED933482255BFC -.quad 0x4576516227143300, 0x8BB89FACE9DAFDCE - - - - - -L$k_dipt: -.quad 0x0F505B040B545F00, 0x154A411E114E451A -.quad 0x86E383E660056500, 0x12771772F491F194 - -L$k_dsb9: -.quad 0x851C03539A86D600, 0xCAD51F504F994CC9 -.quad 0xC03B1789ECD74900, 0x725E2C9EB2FBA565 -L$k_dsbd: -.quad 0x7D57CCDFE6B1A200, 0xF56E9B13882A4439 -.quad 0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3 -L$k_dsbb: -.quad 0xD022649296B44200, 0x602646F6B0F2D404 -.quad 0xC19498A6CD596700, 0xF3FF0C3E3255AA6B -L$k_dsbe: -.quad 0x46F2929626D4D000, 0x2242600464B4F6B0 -.quad 0x0C55A6CDFFAAC100, 0x9467F36B98593E32 -L$k_dsbo: -.quad 0x1387EA537EF94000, 0xC7AA6DB9D4943E2D -.quad 0x12D7560F93441D00, 0xCA4B8159D8C58E9C -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-avx2.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-avx2.s deleted file mode 100644 index 02f7f562ea827d..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-avx2.s +++ /dev/null @@ -1,24 +0,0 @@ -.text - -.globl _rsaz_avx2_eligible - -_rsaz_avx2_eligible: - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _rsaz_1024_sqr_avx2 -.globl _rsaz_1024_mul_avx2 -.globl _rsaz_1024_norm2red_avx2 -.globl _rsaz_1024_red2norm_avx2 -.globl _rsaz_1024_scatter5_avx2 -.globl _rsaz_1024_gather5_avx2 - -_rsaz_1024_sqr_avx2: -_rsaz_1024_mul_avx2: -_rsaz_1024_norm2red_avx2: -_rsaz_1024_red2norm_avx2: -_rsaz_1024_scatter5_avx2: -_rsaz_1024_gather5_avx2: -.byte 0x0f,0x0b - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-x86_64.s deleted file mode 100644 index b92f098e73c214..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-x86_64.s +++ /dev/null @@ -1,1219 +0,0 @@ -.text - - - -.globl _rsaz_512_sqr - -.p2align 5 -_rsaz_512_sqr: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$sqr_body: - movq %rdx,%rbp - movq (%rsi),%rdx - movq 8(%rsi),%rax - movq %rcx,128(%rsp) - jmp L$oop_sqr - -.p2align 5 -L$oop_sqr: - movl %r8d,128+8(%rsp) - - movq %rdx,%rbx - mulq %rdx - movq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq %rbx,%rax - movq %rdx,%r15 - adcq $0,%r15 - - addq %r8,%r8 - movq %r9,%rcx - adcq %r9,%r9 - - mulq %rax - movq %rax,(%rsp) - addq %rdx,%r8 - adcq $0,%r9 - - movq %r8,8(%rsp) - shrq $63,%rcx - - - movq 8(%rsi),%r8 - movq 16(%rsi),%rax - mulq %r8 - addq %rax,%r10 - movq 24(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r11 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r12 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r13 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r14 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r8 - addq %rax,%r15 - movq %r8,%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%r8 - movq %r10,%rdx - adcq $0,%r8 - - addq %rdx,%rdx - leaq (%rcx,%r10,2),%r10 - movq %r11,%rbx - adcq %r11,%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,16(%rsp) - movq %r10,24(%rsp) - shrq $63,%rbx - - - movq 16(%rsi),%r9 - movq 24(%rsi),%rax - mulq %r9 - addq %rax,%r12 - movq 32(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r13 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r13 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - addq %rax,%r14 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r14 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - movq %r12,%r10 - leaq (%rbx,%r12,2),%r12 - addq %rax,%r15 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rcx,%r15 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r9 - shrq $63,%r10 - addq %rax,%r8 - movq %r9,%rax - adcq $0,%rdx - addq %rcx,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - movq %r13,%rcx - leaq (%r10,%r13,2),%r13 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,32(%rsp) - movq %r12,40(%rsp) - shrq $63,%rcx - - - movq 24(%rsi),%r10 - movq 32(%rsi),%rax - mulq %r10 - addq %rax,%r14 - movq 40(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - addq %rax,%r15 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r15 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - movq %r14,%r12 - leaq (%rcx,%r14,2),%r14 - addq %rax,%r8 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %rbx,%r8 - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r10 - shrq $63,%r12 - addq %rax,%r9 - movq %r10,%rax - adcq $0,%rdx - addq %rbx,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - movq %r15,%rbx - leaq (%r12,%r15,2),%r15 - - mulq %rax - addq %rax,%r13 - adcq %rdx,%r14 - adcq $0,%r15 - - movq %r13,48(%rsp) - movq %r14,56(%rsp) - shrq $63,%rbx - - - movq 32(%rsi),%r11 - movq 40(%rsi),%rax - mulq %r11 - addq %rax,%r8 - movq 48(%rsi),%rax - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - addq %rax,%r9 - movq 56(%rsi),%rax - adcq $0,%rdx - movq %r8,%r12 - leaq (%rbx,%r8,2),%r8 - addq %rcx,%r9 - movq %rdx,%rcx - adcq $0,%rcx - - mulq %r11 - shrq $63,%r12 - addq %rax,%r10 - movq %r11,%rax - adcq $0,%rdx - addq %rcx,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - movq %r9,%rcx - leaq (%r12,%r9,2),%r9 - - mulq %rax - addq %rax,%r15 - adcq %rdx,%r8 - adcq $0,%r9 - - movq %r15,64(%rsp) - movq %r8,72(%rsp) - shrq $63,%rcx - - - movq 40(%rsi),%r12 - movq 48(%rsi),%rax - mulq %r12 - addq %rax,%r10 - movq 56(%rsi),%rax - movq %rdx,%rbx - adcq $0,%rbx - - mulq %r12 - addq %rax,%r11 - movq %r12,%rax - movq %r10,%r15 - leaq (%rcx,%r10,2),%r10 - adcq $0,%rdx - shrq $63,%r15 - addq %rbx,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - movq %r11,%rbx - leaq (%r15,%r11,2),%r11 - - mulq %rax - addq %rax,%r9 - adcq %rdx,%r10 - adcq $0,%r11 - - movq %r9,80(%rsp) - movq %r10,88(%rsp) - - - movq 48(%rsi),%r13 - movq 56(%rsi),%rax - mulq %r13 - addq %rax,%r12 - movq %r13,%rax - movq %rdx,%r13 - adcq $0,%r13 - - xorq %r14,%r14 - shlq $1,%rbx - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - - mulq %rax - addq %rax,%r11 - adcq %rdx,%r12 - adcq $0,%r13 - - movq %r11,96(%rsp) - movq %r12,104(%rsp) - - - movq 56(%rsi),%rax - mulq %rax - addq %rax,%r13 - adcq $0,%rdx - - addq %rdx,%r14 - - movq %r13,112(%rsp) - movq %r14,120(%rsp) - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,%rdx - movq %r9,%rax - movl 128+8(%rsp),%r8d - movq %rdi,%rsi - - decl %r8d - jnz L$oop_sqr - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$sqr_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul - -.p2align 5 -_rsaz_512_mul: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$mul_body: -.byte 102,72,15,110,199 -.byte 102,72,15,110,201 - movq %r8,128(%rsp) - movq (%rdx),%rbx - movq %rdx,%rbp - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_gather4 - -.p2align 5 -_rsaz_512_mul_gather4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $152,%rsp -L$mul_gather4_body: - movd %r9d,%xmm8 - movdqa L$inc+16(%rip),%xmm1 - movdqa L$inc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - - movdqa 0(%rdx),%xmm8 - movdqa 16(%rdx),%xmm9 - movdqa 32(%rdx),%xmm10 - movdqa 48(%rdx),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rdx),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rdx),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rdx),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rdx),%xmm15 - leaq 128(%rdx),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - movq %r8,128(%rsp) - movq %rdi,128+8(%rsp) - movq %rcx,128+16(%rsp) - - movq (%rsi),%rax - movq 8(%rsi),%rcx - mulq %rbx - movq %rax,(%rsp) - movq %rcx,%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rsp),%rdi - movl $7,%ecx - jmp L$oop_mul_gather - -.p2align 5 -L$oop_mul_gather: - movdqa 0(%rbp),%xmm8 - movdqa 16(%rbp),%xmm9 - movdqa 32(%rbp),%xmm10 - movdqa 48(%rbp),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rbp),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rbp),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rbp),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rbp),%xmm15 - leaq 128(%rbp),%rbp - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 -.byte 102,76,15,126,195 - - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz L$oop_mul_gather - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 128+8(%rsp),%rdi - movq 128+16(%rsp),%rbp - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_gather4_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_scatter4 - -.p2align 5 -_rsaz_512_mul_scatter4: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movl %r9d,%r9d - subq $128+24,%rsp -L$mul_scatter4_body: - leaq (%r8,%r9,8),%r8 -.byte 102,72,15,110,199 -.byte 102,72,15,110,202 -.byte 102,73,15,110,208 - movq %rcx,128(%rsp) - - movq %rdi,%rbp - movq (%rdi),%rbx - call __rsaz_512_mul - -.byte 102,72,15,126,199 -.byte 102,72,15,126,205 - - movq (%rsp),%r8 - movq 8(%rsp),%r9 - movq 16(%rsp),%r10 - movq 24(%rsp),%r11 - movq 32(%rsp),%r12 - movq 40(%rsp),%r13 - movq 48(%rsp),%r14 - movq 56(%rsp),%r15 - - call __rsaz_512_reduce - addq 64(%rsp),%r8 - adcq 72(%rsp),%r9 - adcq 80(%rsp),%r10 - adcq 88(%rsp),%r11 - adcq 96(%rsp),%r12 - adcq 104(%rsp),%r13 - adcq 112(%rsp),%r14 - adcq 120(%rsp),%r15 -.byte 102,72,15,126,214 - sbbq %rcx,%rcx - - call __rsaz_512_subtract - - movq %r8,0(%rsi) - movq %r9,128(%rsi) - movq %r10,256(%rsi) - movq %r11,384(%rsi) - movq %r12,512(%rsi) - movq %r13,640(%rsi) - movq %r14,768(%rsi) - movq %r15,896(%rsi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_scatter4_epilogue: - .byte 0xf3,0xc3 - -.globl _rsaz_512_mul_by_one - -.p2align 5 -_rsaz_512_mul_by_one: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - subq $128+24,%rsp -L$mul_by_one_body: - movq %rdx,%rbp - movq %rcx,128(%rsp) - - movq (%rsi),%r8 - pxor %xmm0,%xmm0 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq 32(%rsi),%r12 - movq 40(%rsi),%r13 - movq 48(%rsi),%r14 - movq 56(%rsi),%r15 - - movdqa %xmm0,(%rsp) - movdqa %xmm0,16(%rsp) - movdqa %xmm0,32(%rsp) - movdqa %xmm0,48(%rsp) - movdqa %xmm0,64(%rsp) - movdqa %xmm0,80(%rsp) - movdqa %xmm0,96(%rsp) - call __rsaz_512_reduce - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - leaq 128+24+48(%rsp),%rax - movq -48(%rax),%r15 - movq -40(%rax),%r14 - movq -32(%rax),%r13 - movq -24(%rax),%r12 - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$mul_by_one_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_reduce: - movq %r8,%rbx - imulq 128+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp L$reduction_loop - -.p2align 5 -L$reduction_loop: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq 128+8(%rsp),%rsi - - - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jne L$reduction_loop - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_subtract: - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - movq 0(%rbp),%r8 - movq 8(%rbp),%r9 - negq %r8 - notq %r9 - andq %rcx,%r8 - movq 16(%rbp),%r10 - andq %rcx,%r9 - notq %r10 - movq 24(%rbp),%r11 - andq %rcx,%r10 - notq %r11 - movq 32(%rbp),%r12 - andq %rcx,%r11 - notq %r12 - movq 40(%rbp),%r13 - andq %rcx,%r12 - notq %r13 - movq 48(%rbp),%r14 - andq %rcx,%r13 - notq %r14 - movq 56(%rbp),%r15 - andq %rcx,%r14 - notq %r15 - andq %rcx,%r15 - - addq (%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 - - -.p2align 5 -__rsaz_512_mul: - leaq 8(%rsp),%rdi - - movq (%rsi),%rax - mulq %rbx - movq %rax,(%rdi) - movq 8(%rsi),%rax - movq %rdx,%r8 - - mulq %rbx - addq %rax,%r8 - movq 16(%rsi),%rax - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r9 - movq 24(%rsi),%rax - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r10 - movq 32(%rsi),%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r11 - movq 40(%rsi),%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r12 - movq 48(%rsi),%rax - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r13 - movq 56(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - addq %rax,%r14 - movq (%rsi),%rax - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rbp),%rbp - leaq 8(%rdi),%rdi - - movl $7,%ecx - jmp L$oop_mul - -.p2align 5 -L$oop_mul: - movq (%rbp),%rbx - mulq %rbx - addq %rax,%r8 - movq 8(%rsi),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rsi),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rsi),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rsi),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rsi),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rsi),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - leaq 8(%rbp),%rbp - adcq $0,%r14 - - mulq %rbx - addq %rax,%r15 - movq (%rsi),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - leaq 8(%rdi),%rdi - - decl %ecx - jnz L$oop_mul - - movq %r8,(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - - .byte 0xf3,0xc3 - -.globl _rsaz_512_scatter4 - -.p2align 4 -_rsaz_512_scatter4: - leaq (%rdi,%rdx,8),%rdi - movl $8,%r9d - jmp L$oop_scatter -.p2align 4 -L$oop_scatter: - movq (%rsi),%rax - leaq 8(%rsi),%rsi - movq %rax,(%rdi) - leaq 128(%rdi),%rdi - decl %r9d - jnz L$oop_scatter - .byte 0xf3,0xc3 - - -.globl _rsaz_512_gather4 - -.p2align 4 -_rsaz_512_gather4: - movd %edx,%xmm8 - movdqa L$inc+16(%rip),%xmm1 - movdqa L$inc(%rip),%xmm0 - - pshufd $0,%xmm8,%xmm8 - movdqa %xmm1,%xmm7 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm8,%xmm0 - movdqa %xmm7,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm8,%xmm1 - movdqa %xmm7,%xmm4 - paddd %xmm2,%xmm3 - pcmpeqd %xmm8,%xmm2 - movdqa %xmm7,%xmm5 - paddd %xmm3,%xmm4 - pcmpeqd %xmm8,%xmm3 - movdqa %xmm7,%xmm6 - paddd %xmm4,%xmm5 - pcmpeqd %xmm8,%xmm4 - paddd %xmm5,%xmm6 - pcmpeqd %xmm8,%xmm5 - paddd %xmm6,%xmm7 - pcmpeqd %xmm8,%xmm6 - pcmpeqd %xmm8,%xmm7 - movl $8,%r9d - jmp L$oop_gather -.p2align 4 -L$oop_gather: - movdqa 0(%rsi),%xmm8 - movdqa 16(%rsi),%xmm9 - movdqa 32(%rsi),%xmm10 - movdqa 48(%rsi),%xmm11 - pand %xmm0,%xmm8 - movdqa 64(%rsi),%xmm12 - pand %xmm1,%xmm9 - movdqa 80(%rsi),%xmm13 - pand %xmm2,%xmm10 - movdqa 96(%rsi),%xmm14 - pand %xmm3,%xmm11 - movdqa 112(%rsi),%xmm15 - leaq 128(%rsi),%rsi - pand %xmm4,%xmm12 - pand %xmm5,%xmm13 - pand %xmm6,%xmm14 - pand %xmm7,%xmm15 - por %xmm10,%xmm8 - por %xmm11,%xmm9 - por %xmm12,%xmm8 - por %xmm13,%xmm9 - por %xmm14,%xmm8 - por %xmm15,%xmm9 - - por %xmm9,%xmm8 - pshufd $0x4e,%xmm8,%xmm9 - por %xmm9,%xmm8 - movq %xmm8,(%rdi) - leaq 8(%rdi),%rdi - decl %r9d - jnz L$oop_gather - .byte 0xf3,0xc3 -L$SEH_end_rsaz_512_gather4: - - -.p2align 6 -L$inc: -.long 0,0, 1,1 -.long 2,2, 2,2 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-gf2m.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-gf2m.s deleted file mode 100644 index c0f0b4bd6878b8..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-gf2m.s +++ /dev/null @@ -1,291 +0,0 @@ -.text - - -.p2align 4 -_mul_1x1: - subq $128+8,%rsp - movq $-1,%r9 - leaq (%rax,%rax,1),%rsi - shrq $3,%r9 - leaq (,%rax,4),%rdi - andq %rax,%r9 - leaq (,%rax,8),%r12 - sarq $63,%rax - leaq (%r9,%r9,1),%r10 - sarq $63,%rsi - leaq (,%r9,4),%r11 - andq %rbp,%rax - sarq $63,%rdi - movq %rax,%rdx - shlq $63,%rax - andq %rbp,%rsi - shrq $1,%rdx - movq %rsi,%rcx - shlq $62,%rsi - andq %rbp,%rdi - shrq $2,%rcx - xorq %rsi,%rax - movq %rdi,%rbx - shlq $61,%rdi - xorq %rcx,%rdx - shrq $3,%rbx - xorq %rdi,%rax - xorq %rbx,%rdx - - movq %r9,%r13 - movq $0,0(%rsp) - xorq %r10,%r13 - movq %r9,8(%rsp) - movq %r11,%r14 - movq %r10,16(%rsp) - xorq %r12,%r14 - movq %r13,24(%rsp) - - xorq %r11,%r9 - movq %r11,32(%rsp) - xorq %r11,%r10 - movq %r9,40(%rsp) - xorq %r11,%r13 - movq %r10,48(%rsp) - xorq %r14,%r9 - movq %r13,56(%rsp) - xorq %r14,%r10 - - movq %r12,64(%rsp) - xorq %r14,%r13 - movq %r9,72(%rsp) - xorq %r11,%r9 - movq %r10,80(%rsp) - xorq %r11,%r10 - movq %r13,88(%rsp) - - xorq %r11,%r13 - movq %r14,96(%rsp) - movq %r8,%rsi - movq %r9,104(%rsp) - andq %rbp,%rsi - movq %r10,112(%rsp) - shrq $4,%rbp - movq %r13,120(%rsp) - movq %r8,%rdi - andq %rbp,%rdi - shrq $4,%rbp - - movq (%rsp,%rsi,8),%xmm0 - movq %r8,%rsi - andq %rbp,%rsi - shrq $4,%rbp - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $4,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $60,%rbx - xorq %rcx,%rax - pslldq $1,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $12,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $52,%rbx - xorq %rcx,%rax - pslldq $2,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $20,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $44,%rbx - xorq %rcx,%rax - pslldq $3,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $28,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $36,%rbx - xorq %rcx,%rax - pslldq $4,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $36,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $28,%rbx - xorq %rcx,%rax - pslldq $5,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $44,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $20,%rbx - xorq %rcx,%rax - pslldq $6,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %r8,%rdi - movq %rcx,%rbx - shlq $52,%rcx - andq %rbp,%rdi - movq (%rsp,%rsi,8),%xmm1 - shrq $12,%rbx - xorq %rcx,%rax - pslldq $7,%xmm1 - movq %r8,%rsi - shrq $4,%rbp - xorq %rbx,%rdx - andq %rbp,%rsi - shrq $4,%rbp - pxor %xmm1,%xmm0 - movq (%rsp,%rdi,8),%rcx - movq %rcx,%rbx - shlq $60,%rcx -.byte 102,72,15,126,198 - shrq $4,%rbx - xorq %rcx,%rax - psrldq $8,%xmm0 - xorq %rbx,%rdx -.byte 102,72,15,126,199 - xorq %rsi,%rax - xorq %rdi,%rdx - - addq $128+8,%rsp - .byte 0xf3,0xc3 -L$end_mul_1x1: - - -.globl _bn_GF2m_mul_2x2 - -.p2align 4 -_bn_GF2m_mul_2x2: - movq _OPENSSL_ia32cap_P(%rip),%rax - btq $33,%rax - jnc L$vanilla_mul_2x2 - -.byte 102,72,15,110,198 -.byte 102,72,15,110,201 -.byte 102,72,15,110,210 -.byte 102,73,15,110,216 - movdqa %xmm0,%xmm4 - movdqa %xmm1,%xmm5 -.byte 102,15,58,68,193,0 - pxor %xmm2,%xmm4 - pxor %xmm3,%xmm5 -.byte 102,15,58,68,211,0 -.byte 102,15,58,68,229,0 - xorps %xmm0,%xmm4 - xorps %xmm2,%xmm4 - movdqa %xmm4,%xmm5 - pslldq $8,%xmm4 - psrldq $8,%xmm5 - pxor %xmm4,%xmm2 - pxor %xmm5,%xmm0 - movdqu %xmm2,0(%rdi) - movdqu %xmm0,16(%rdi) - .byte 0xf3,0xc3 - -.p2align 4 -L$vanilla_mul_2x2: - leaq -136(%rsp),%rsp - movq %r14,80(%rsp) - movq %r13,88(%rsp) - movq %r12,96(%rsp) - movq %rbp,104(%rsp) - movq %rbx,112(%rsp) -L$body_mul_2x2: - movq %rdi,32(%rsp) - movq %rsi,40(%rsp) - movq %rdx,48(%rsp) - movq %rcx,56(%rsp) - movq %r8,64(%rsp) - - movq $0xf,%r8 - movq %rsi,%rax - movq %rcx,%rbp - call _mul_1x1 - movq %rax,16(%rsp) - movq %rdx,24(%rsp) - - movq 48(%rsp),%rax - movq 64(%rsp),%rbp - call _mul_1x1 - movq %rax,0(%rsp) - movq %rdx,8(%rsp) - - movq 40(%rsp),%rax - movq 56(%rsp),%rbp - xorq 48(%rsp),%rax - xorq 64(%rsp),%rbp - call _mul_1x1 - movq 0(%rsp),%rbx - movq 8(%rsp),%rcx - movq 16(%rsp),%rdi - movq 24(%rsp),%rsi - movq 32(%rsp),%rbp - - xorq %rdx,%rax - xorq %rcx,%rdx - xorq %rbx,%rax - movq %rbx,0(%rbp) - xorq %rdi,%rdx - movq %rsi,24(%rbp) - xorq %rsi,%rax - xorq %rsi,%rdx - xorq %rdx,%rax - movq %rdx,16(%rbp) - movq %rax,8(%rbp) - - movq 80(%rsp),%r14 - movq 88(%rsp),%r13 - movq 96(%rsp),%r12 - movq 104(%rsp),%rbp - movq 112(%rsp),%rbx - leaq 136(%rsp),%rsp - .byte 0xf3,0xc3 -L$end_mul_2x2: - -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 4 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont.s deleted file mode 100644 index 7c59d9b7302d94..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont.s +++ /dev/null @@ -1,804 +0,0 @@ -.text - - - -.globl _bn_mul_mont - -.p2align 4 -_bn_mul_mont: - movl %r9d,%r9d - movq %rsp,%rax - testl $3,%r9d - jnz L$mul_enter - cmpl $8,%r9d - jb L$mul_enter - cmpq %rsi,%rdx - jne L$mul4x_enter - testl $7,%r9d - jz L$sqr8x_enter - jmp L$mul4x_enter - -.p2align 4 -L$mul_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -16(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk - jmp L$mul_page_walk_done - -.p2align 4 -L$mul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk -L$mul_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -L$mul_body: - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$1st_enter - -.p2align 4 -L$1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne L$1st - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp L$outer -.p2align 4 -L$outer: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$inner_enter - -.p2align 4 -L$inner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$inner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne L$inner - - addq %rax,%r13 - movq (%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb L$outer - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp L$sub -.p2align 4 -L$sub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz L$sub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 -L$copy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz L$copy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - - -.p2align 4 -bn_mul4x_mont: - movl %r9d,%r9d - movq %rsp,%rax -L$mul4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -32(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul4x_page_walk - jmp L$mul4x_page_walk_done - -L$mul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul4x_page_walk -L$mul4x_page_walk_done: - - movq %rax,8(%rsp,%r9,8) -L$mul4x_body: - movq %rdi,16(%rsp,%r9,8) - movq %rdx,%r12 - movq (%r8),%r8 - movq (%r12),%rbx - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp L$1st4x -.p2align 4 -L$1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb L$1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - leaq 1(%r14),%r14 -.p2align 2 -L$outer4x: - movq (%r12,%r14,8),%rbx - xorq %r15,%r15 - movq (%rsp),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%rsp),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 4(%r15),%r15 - adcq $0,%rdx - movq %rdi,(%rsp) - movq %rdx,%r13 - jmp L$inner4x -.p2align 4 -L$inner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq 8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 4(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq -16(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-32(%rsp,%r15,8) - movq %rdx,%r13 - cmpq %r9,%r15 - jb L$inner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -16(%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%rsp,%r15,8) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx,%r15,8),%rax - adcq $0,%rdx - addq -8(%rsp,%r15,8),%r11 - adcq $0,%rdx - leaq 1(%r14),%r14 - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%rsp,%r15,8) - movq %rdx,%r13 - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%rsp,%r9,8),%r13 - adcq $0,%rdi - movq %r13,-8(%rsp,%r15,8) - movq %rdi,(%rsp,%r15,8) - - cmpq %r9,%r14 - jb L$outer4x - movq 16(%rsp,%r9,8),%rdi - movq 0(%rsp),%rax - pxor %xmm0,%xmm0 - movq 8(%rsp),%rdx - shrq $2,%r9 - leaq (%rsp),%rsi - xorq %r14,%r14 - - subq 0(%rcx),%rax - movq 16(%rsi),%rbx - movq 24(%rsi),%rbp - sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp L$sub4x -.p2align 4 -L$sub4x: - movq %rax,0(%rdi,%r14,8) - movq %rdx,8(%rdi,%r14,8) - sbbq 16(%rcx,%r14,8),%rbx - movq 32(%rsi,%r14,8),%rax - movq 40(%rsi,%r14,8),%rdx - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - movq %rbp,24(%rdi,%r14,8) - sbbq 32(%rcx,%r14,8),%rax - movq 48(%rsi,%r14,8),%rbx - movq 56(%rsi,%r14,8),%rbp - sbbq 40(%rcx,%r14,8),%rdx - leaq 4(%r14),%r14 - decq %r15 - jnz L$sub4x - - movq %rax,0(%rdi,%r14,8) - movq 32(%rsi,%r14,8),%rax - sbbq 16(%rcx,%r14,8),%rbx - movq %rdx,8(%rdi,%r14,8) - sbbq 24(%rcx,%r14,8),%rbp - movq %rbx,16(%rdi,%r14,8) - - sbbq $0,%rax - movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) - jmp L$copy4x -.p2align 4 -L$copy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 - decq %r15 - jnz L$copy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul4x_epilogue: - .byte 0xf3,0xc3 - - - - -.p2align 5 -bn_sqr8x_mont: - movq %rsp,%rax -L$sqr8x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$sqr8x_prologue: - - movl %r9d,%r10d - shll $3,%r9d - shlq $3+2,%r10 - negq %r9 - - - - - - - leaq -64(%rsp,%r9,2),%r11 - movq %rsp,%rbp - movq (%r8),%r8 - subq %rsi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$sqr8x_sp_alt - subq %r11,%rbp - leaq -64(%rbp,%r9,2),%rbp - jmp L$sqr8x_sp_done - -.p2align 5 -L$sqr8x_sp_alt: - leaq 4096-64(,%r9,2),%r10 - leaq -64(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$sqr8x_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$sqr8x_page_walk - jmp L$sqr8x_page_walk_done - -.p2align 4 -L$sqr8x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$sqr8x_page_walk -L$sqr8x_page_walk_done: - - movq %r9,%r10 - negq %r9 - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$sqr8x_body: - -.byte 102,72,15,110,209 - pxor %xmm0,%xmm0 -.byte 102,72,15,110,207 -.byte 102,73,15,110,218 - call _bn_sqr8x_internal - - - - - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx - movq %r9,%rdx -.byte 102,72,15,126,207 - sarq $3+2,%rcx - jmp L$sqr8x_sub - -.p2align 5 -L$sqr8x_sub: - movq 0(%rbx),%r12 - movq 8(%rbx),%r13 - movq 16(%rbx),%r14 - movq 24(%rbx),%r15 - leaq 32(%rbx),%rbx - sbbq 0(%rbp),%r12 - sbbq 8(%rbp),%r13 - sbbq 16(%rbp),%r14 - sbbq 24(%rbp),%r15 - leaq 32(%rbp),%rbp - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - incq %rcx - jnz L$sqr8x_sub - - sbbq $0,%rax - leaq (%rbx,%r9,1),%rbx - leaq (%rdi,%r9,1),%rdi - -.byte 102,72,15,110,200 - pxor %xmm0,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq 40(%rsp),%rsi - jmp L$sqr8x_cond_copy - -.p2align 5 -L$sqr8x_cond_copy: - movdqa 0(%rbx),%xmm2 - movdqa 16(%rbx),%xmm3 - leaq 32(%rbx),%rbx - movdqu 0(%rdi),%xmm4 - movdqu 16(%rdi),%xmm5 - leaq 32(%rdi),%rdi - movdqa %xmm0,-32(%rbx) - movdqa %xmm0,-16(%rbx) - movdqa %xmm0,-32(%rbx,%rdx,1) - movdqa %xmm0,-16(%rbx,%rdx,1) - pcmpeqd %xmm1,%xmm0 - pand %xmm1,%xmm2 - pand %xmm1,%xmm3 - pand %xmm0,%xmm4 - pand %xmm0,%xmm5 - pxor %xmm0,%xmm0 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqu %xmm4,-32(%rdi) - movdqu %xmm5,-16(%rdi) - addq $32,%r9 - jnz L$sqr8x_cond_copy - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$sqr8x_epilogue: - .byte 0xf3,0xc3 - -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 4 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s b/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s deleted file mode 100644 index 17036a5abdccee..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s +++ /dev/null @@ -1,2328 +0,0 @@ -.text - - - -.globl _bn_mul_mont_gather5 - -.p2align 6 -_bn_mul_mont_gather5: - movl %r9d,%r9d - movq %rsp,%rax - testl $7,%r9d - jnz L$mul_enter - jmp L$mul4x_enter - -.p2align 4 -L$mul_enter: - movd 8(%rsp),%xmm5 - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - negq %r9 - movq %rsp,%r11 - leaq -280(%rsp,%r9,8),%r10 - negq %r9 - andq $-1024,%r10 - - - - - - - - subq %r10,%r11 - andq $-4096,%r11 - leaq (%r10,%r11,1),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk - jmp L$mul_page_walk_done - -L$mul_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r11 - cmpq %r10,%rsp - ja L$mul_page_walk -L$mul_page_walk_done: - - leaq L$inc(%rip),%r10 - movq %rax,8(%rsp,%r9,8) -L$mul_body: - - leaq 128(%rdx),%r12 - movdqa 0(%r10),%xmm0 - movdqa 16(%r10),%xmm1 - leaq 24-112(%rsp,%r9,8),%r10 - andq $-16,%r10 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r8),%r8 - movq (%rsi),%rax - - xorq %r14,%r14 - xorq %r15,%r15 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$1st_enter - -.p2align 4 -L$1st: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r13 - movq %r10,%r11 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$1st_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - leaq 1(%r15),%r15 - movq %rdx,%r10 - - mulq %rbp - cmpq %r9,%r15 - jne L$1st - - - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - movq %r10,%r11 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - jmp L$outer -.p2align 4 -L$outer: - leaq 24+128(%rsp,%r9,8),%rdx - andq $-16,%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 - - movq (%rsi),%rax -.byte 102,72,15,126,195 - - xorq %r15,%r15 - movq %r8,%rbp - movq (%rsp),%r10 - - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi),%rax - adcq $0,%rdx - movq 8(%rsp),%r10 - movq %rdx,%r13 - - leaq 1(%r15),%r15 - jmp L$inner_enter - -.p2align 4 -L$inner: - addq %rax,%r13 - movq (%rsi,%r15,8),%rax - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r15,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r15,8) - movq %rdx,%r13 - -L$inner_enter: - mulq %rbx - addq %rax,%r11 - movq (%rcx,%r15,8),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - leaq 1(%r15),%r15 - - mulq %rbp - cmpq %r9,%r15 - jne L$inner - - addq %rax,%r13 - adcq $0,%rdx - addq %r10,%r13 - movq (%rsp,%r9,8),%r10 - adcq $0,%rdx - movq %r13,-16(%rsp,%r9,8) - movq %rdx,%r13 - - xorq %rdx,%rdx - addq %r11,%r13 - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%rsp,%r9,8) - movq %rdx,(%rsp,%r9,8) - - leaq 1(%r14),%r14 - cmpq %r9,%r14 - jb L$outer - - xorq %r14,%r14 - movq (%rsp),%rax - leaq (%rsp),%rsi - movq %r9,%r15 - jmp L$sub -.p2align 4 -L$sub: sbbq (%rcx,%r14,8),%rax - movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax - leaq 1(%r14),%r14 - decq %r15 - jnz L$sub - - sbbq $0,%rax - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 -L$copy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) - leaq 1(%r14),%r14 - subq $1,%r15 - jnz L$copy - - movq 8(%rsp,%r9,8),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul_epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -bn_mul4x_mont_gather5: -.byte 0x67 - movq %rsp,%rax -L$mul4x_enter: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$mul4x_prologue: - -.byte 0x67 - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - - - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$mul4xsp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$mul4xsp_done - -.p2align 5 -L$mul4xsp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$mul4xsp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mul4x_page_walk - jmp L$mul4x_page_walk_done - -L$mul4x_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$mul4x_page_walk -L$mul4x_page_walk_done: - - negq %r9 - - movq %rax,40(%rsp) -L$mul4x_body: - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$mul4x_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 5 -mul4x_internal: - shlq $5,%r9 - movd 8(%rax),%xmm5 - leaq L$inc(%rip),%rax - leaq 128(%rdx,%r9,1),%r13 - shrq $5,%r9 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 88-112(%rsp,%r9,1),%r10 - leaq 128(%rdx),%r12 - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 -.byte 0x67,0x67 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 -.byte 0x67 - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,112(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,128(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,144(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,160(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,176(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,192(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,208(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,224(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,240(%r10) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,256(%r10) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,272(%r10) - movdqa %xmm4,%xmm2 - - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,288(%r10) - movdqa %xmm4,%xmm3 - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,304(%r10) - - paddd %xmm2,%xmm3 -.byte 0x67 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,320(%r10) - - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,336(%r10) - pand 64(%r12),%xmm0 - - pand 80(%r12),%xmm1 - pand 96(%r12),%xmm2 - movdqa %xmm3,352(%r10) - pand 112(%r12),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -128(%r12),%xmm4 - movdqa -112(%r12),%xmm5 - movdqa -96(%r12),%xmm2 - pand 112(%r10),%xmm4 - movdqa -80(%r12),%xmm3 - pand 128(%r10),%xmm5 - por %xmm4,%xmm0 - pand 144(%r10),%xmm2 - por %xmm5,%xmm1 - pand 160(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa -64(%r12),%xmm4 - movdqa -48(%r12),%xmm5 - movdqa -32(%r12),%xmm2 - pand 176(%r10),%xmm4 - movdqa -16(%r12),%xmm3 - pand 192(%r10),%xmm5 - por %xmm4,%xmm0 - pand 208(%r10),%xmm2 - por %xmm5,%xmm1 - pand 224(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - movdqa 0(%r12),%xmm4 - movdqa 16(%r12),%xmm5 - movdqa 32(%r12),%xmm2 - pand 240(%r10),%xmm4 - movdqa 48(%r12),%xmm3 - pand 256(%r10),%xmm5 - por %xmm4,%xmm0 - pand 272(%r10),%xmm2 - por %xmm5,%xmm1 - pand 288(%r10),%xmm3 - por %xmm2,%xmm0 - por %xmm3,%xmm1 - por %xmm1,%xmm0 - pshufd $0x4e,%xmm0,%xmm1 - por %xmm1,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq %r13,16+8(%rsp) - movq %rdi,56+8(%rsp) - - movq (%r8),%r8 - movq (%rsi),%rax - leaq (%rsi,%r9,1),%rsi - negq %r9 - - movq %r8,%rbp - mulq %rbx - movq %rax,%r10 - movq (%rcx),%rax - - imulq %r10,%rbp - leaq 64+8(%rsp),%r14 - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - jmp L$1st4x - -.p2align 5 -L$1st4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdi,(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz L$1st4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%r13 - - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - jmp L$outer4x - -.p2align 5 -L$outer4x: - leaq 16+128(%r14),%rdx - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r12),%xmm0 - movdqa -112(%r12),%xmm1 - movdqa -96(%r12),%xmm2 - movdqa -80(%r12),%xmm3 - pand -128(%rdx),%xmm0 - pand -112(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -80(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r12),%xmm0 - movdqa -48(%r12),%xmm1 - movdqa -32(%r12),%xmm2 - movdqa -16(%r12),%xmm3 - pand -64(%rdx),%xmm0 - pand -48(%rdx),%xmm1 - por %xmm0,%xmm4 - pand -32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand -16(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r12),%xmm0 - movdqa 16(%r12),%xmm1 - movdqa 32(%r12),%xmm2 - movdqa 48(%r12),%xmm3 - pand 0(%rdx),%xmm0 - pand 16(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 32(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 48(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r12),%xmm0 - movdqa 80(%r12),%xmm1 - movdqa 96(%r12),%xmm2 - movdqa 112(%r12),%xmm3 - pand 64(%rdx),%xmm0 - pand 80(%rdx),%xmm1 - por %xmm0,%xmm4 - pand 96(%rdx),%xmm2 - por %xmm1,%xmm5 - pand 112(%rdx),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - leaq 256(%r12),%r12 -.byte 102,72,15,126,195 - - movq (%r14,%r9,1),%r10 - movq %r8,%rbp - mulq %rbx - addq %rax,%r10 - movq (%rcx),%rax - adcq $0,%rdx - - imulq %r10,%rbp - movq %rdx,%r11 - movq %rdi,(%r14) - - leaq (%r14,%r9,1),%r14 - - mulq %rbp - addq %rax,%r10 - movq 8(%rsi,%r9,1),%rax - adcq $0,%rdx - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%r9),%r15 - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %rdx,%r13 - jmp L$inner4x - -.p2align 5 -L$inner4x: - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq -8(%rcx),%rax - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - mulq %rbx - addq %rax,%r10 - movq 0(%rcx),%rax - adcq $0,%rdx - addq (%r14),%r10 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq 8(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-16(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq 8(%rcx),%rax - adcq $0,%rdx - addq 8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq 16(%rsi,%r15,1),%rax - adcq $0,%rdx - addq %r11,%rdi - leaq 32(%rcx),%rcx - adcq $0,%rdx - movq %r13,-8(%r14) - movq %rdx,%r13 - - addq $32,%r15 - jnz L$inner4x - - mulq %rbx - addq %rax,%r10 - movq -16(%rcx),%rax - adcq $0,%rdx - addq 16(%r14),%r10 - leaq 32(%r14),%r14 - adcq $0,%rdx - movq %rdx,%r11 - - mulq %rbp - addq %rax,%r13 - movq -8(%rsi),%rax - adcq $0,%rdx - addq %r10,%r13 - adcq $0,%rdx - movq %rdi,-32(%r14) - movq %rdx,%rdi - - mulq %rbx - addq %rax,%r11 - movq %rbp,%rax - movq -8(%rcx),%rbp - adcq $0,%rdx - addq -8(%r14),%r11 - adcq $0,%rdx - movq %rdx,%r10 - - mulq %rbp - addq %rax,%rdi - movq (%rsi,%r9,1),%rax - adcq $0,%rdx - addq %r11,%rdi - adcq $0,%rdx - movq %r13,-24(%r14) - movq %rdx,%r13 - - movq %rdi,-16(%r14) - leaq (%rcx,%r9,1),%rcx - - xorq %rdi,%rdi - addq %r10,%r13 - adcq $0,%rdi - addq (%r14),%r13 - adcq $0,%rdi - movq %r13,-8(%r14) - - cmpq 16+8(%rsp),%r12 - jb L$outer4x - xorq %rax,%rax - subq %r13,%rbp - adcq %r15,%r15 - orq %r15,%rdi - subq %rdi,%rax - leaq (%r14,%r9,1),%rbx - movq (%rcx),%r12 - leaq (%rcx),%rbp - movq %r9,%rcx - sarq $3+2,%rcx - movq 56+8(%rsp),%rdi - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqr4x_sub_entry - -.globl _bn_power5 - -.p2align 5 -_bn_power5: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$power5_prologue: - - shll $3,%r9d - leal (%r9,%r9,2),%r10d - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$pwr_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$pwr_sp_done - -.p2align 5 -L$pwr_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$pwr_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwr_page_walk - jmp L$pwr_page_walk_done - -L$pwr_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$pwr_page_walk -L$pwr_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$power5_body: -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 102,73,15,110,218 -.byte 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -.byte 102,72,15,126,209 -.byte 102,72,15,126,226 - movq %rsi,%rdi - movq 40(%rsp),%rax - leaq 32(%rsp),%r8 - - call mul4x_internal - - movq 40(%rsp),%rsi - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$power5_epilogue: - .byte 0xf3,0xc3 - - -.globl _bn_sqr8x_internal -.private_extern _bn_sqr8x_internal - -.p2align 5 -_bn_sqr8x_internal: -__bn_sqr8x_internal: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - leaq 32(%r10),%rbp - leaq (%rsi,%r9,1),%rsi - - movq %r9,%rcx - - - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - movq %r10,-24(%rdi,%rbp,1) - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - movq %r11,-16(%rdi,%rbp,1) - movq %rdx,%r10 - - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - movq %rax,%r12 - movq %rbx,%rax - movq %rdx,%r13 - - leaq (%rbp),%rcx - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - jmp L$sqr4x_1st - -.p2align 5 -L$sqr4x_1st: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq 16(%rsi,%rcx,1),%rbx - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %r10,8(%rdi,%rcx,1) - movq %rdx,%r12 - adcq $0,%r12 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 24(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,16(%rdi,%rcx,1) - movq %rdx,%r13 - adcq $0,%r13 - leaq 32(%rcx),%rcx - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne L$sqr4x_1st - - mulq %r15 - addq %rax,%r13 - leaq 16(%rbp),%rbp - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - jmp L$sqr4x_outer - -.p2align 5 -L$sqr4x_outer: - movq -32(%rsi,%rbp,1),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi,%rbp,1),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi,%rbp,1),%rbx - movq %rax,%r15 - - mulq %r14 - movq -24(%rdi,%rbp,1),%r10 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - movq %r10,-24(%rdi,%rbp,1) - movq %rdx,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - adcq $0,%rdx - addq -16(%rdi,%rbp,1),%r11 - movq %rdx,%r10 - adcq $0,%r10 - movq %r11,-16(%rdi,%rbp,1) - - xorq %r12,%r12 - - movq -8(%rsi,%rbp,1),%rbx - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - adcq $0,%rdx - addq -8(%rdi,%rbp,1),%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rbp,1) - - leaq (%rbp),%rcx - jmp L$sqr4x_inner - -.p2align 5 -L$sqr4x_inner: - movq (%rsi,%rcx,1),%rbx - mulq %r15 - addq %rax,%r13 - movq %rbx,%rax - movq %rdx,%r12 - adcq $0,%r12 - addq (%rdi,%rcx,1),%r13 - adcq $0,%r12 - -.byte 0x67 - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq 8(%rsi,%rcx,1),%rbx - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %r11,(%rdi,%rcx,1) - movq %rbx,%rax - movq %rdx,%r13 - adcq $0,%r13 - addq 8(%rdi,%rcx,1),%r12 - leaq 16(%rcx),%rcx - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - adcq $0,%rdx - addq %r12,%r10 - movq %rdx,%r11 - adcq $0,%r11 - movq %r10,-8(%rdi,%rcx,1) - - cmpq $0,%rcx - jne L$sqr4x_inner - -.byte 0x67 - mulq %r15 - addq %rax,%r13 - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - addq $16,%rbp - jnz L$sqr4x_outer - - - movq -32(%rsi),%r14 - leaq 48+8(%rsp,%r9,2),%rdi - movq -24(%rsi),%rax - leaq -32(%rdi,%rbp,1),%rdi - movq -16(%rsi),%rbx - movq %rax,%r15 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - - mulq %r14 - addq %rax,%r11 - movq %rbx,%rax - movq %r10,-24(%rdi) - movq %rdx,%r10 - adcq $0,%r10 - addq %r13,%r11 - movq -8(%rsi),%rbx - adcq $0,%r10 - - mulq %r15 - addq %rax,%r12 - movq %rbx,%rax - movq %r11,-16(%rdi) - movq %rdx,%r13 - adcq $0,%r13 - - mulq %r14 - addq %rax,%r10 - movq %rbx,%rax - movq %rdx,%r11 - adcq $0,%r11 - addq %r12,%r10 - adcq $0,%r11 - movq %r10,-8(%rdi) - - mulq %r15 - addq %rax,%r13 - movq -16(%rsi),%rax - adcq $0,%rdx - addq %r11,%r13 - adcq $0,%rdx - - movq %r13,(%rdi) - movq %rdx,%r12 - movq %rdx,8(%rdi) - - mulq %rbx - addq $16,%rbp - xorq %r14,%r14 - subq %r9,%rbp - xorq %r15,%r15 - - addq %r12,%rax - adcq $0,%rdx - movq %rax,8(%rdi) - movq %rdx,16(%rdi) - movq %r15,24(%rdi) - - movq -16(%rsi,%rbp,1),%rax - leaq 48+8(%rsp),%rdi - xorq %r10,%r10 - movq 8(%rdi),%r11 - - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - leaq 16(%rbp),%rbp - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - jmp L$sqr4x_shift_n_add - -.p2align 5 -L$sqr4x_shift_n_add: - leaq (%r14,%r10,2),%r12 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi,%rbp,1),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 0(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 8(%rdi),%r11 - adcq %rax,%rbx - movq 0(%rsi,%rbp,1),%rax - movq %rbx,-16(%rdi) - adcq %rdx,%r8 - - leaq (%r14,%r10,2),%r12 - movq %r8,-8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq 16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 24(%rdi),%r11 - adcq %rax,%r12 - movq 8(%rsi,%rbp,1),%rax - movq %r12,0(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,8(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - movq 32(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq 40(%rdi),%r11 - adcq %rax,%rbx - movq 16(%rsi,%rbp,1),%rax - movq %rbx,16(%rdi) - adcq %rdx,%r8 - movq %r8,24(%rdi) - sbbq %r15,%r15 - leaq 64(%rdi),%rdi - addq $32,%rbp - jnz L$sqr4x_shift_n_add - - leaq (%r14,%r10,2),%r12 -.byte 0x67 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r13 - shrq $63,%r11 - orq %r10,%r13 - movq -16(%rdi),%r10 - movq %r11,%r14 - mulq %rax - negq %r15 - movq -8(%rdi),%r11 - adcq %rax,%r12 - movq -8(%rsi),%rax - movq %r12,-32(%rdi) - adcq %rdx,%r13 - - leaq (%r14,%r10,2),%rbx - movq %r13,-24(%rdi) - sbbq %r15,%r15 - shrq $63,%r10 - leaq (%rcx,%r11,2),%r8 - shrq $63,%r11 - orq %r10,%r8 - mulq %rax - negq %r15 - adcq %rax,%rbx - adcq %rdx,%r8 - movq %rbx,-16(%rdi) - movq %r8,-8(%rdi) -.byte 102,72,15,126,213 -__bn_sqr8x_reduction: - xorq %rax,%rax - leaq (%r9,%rbp,1),%rcx - leaq 48+8(%rsp,%r9,2),%rdx - movq %rcx,0+8(%rsp) - leaq 48+8(%rsp,%r9,1),%rdi - movq %rdx,8+8(%rsp) - negq %r9 - jmp L$8x_reduction_loop - -.p2align 5 -L$8x_reduction_loop: - leaq (%rdi,%r9,1),%rdi -.byte 0x66 - movq 0(%rdi),%rbx - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 - movq %rax,(%rdx) - leaq 64(%rdi),%rdi - -.byte 0x67 - movq %rbx,%r8 - imulq 32+8(%rsp),%rbx - movq 0(%rbp),%rax - movl $8,%ecx - jmp L$8x_reduce - -.p2align 5 -L$8x_reduce: - mulq %rbx - movq 8(%rbp),%rax - negq %r8 - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - movq %rbx,48-8+8(%rsp,%rcx,8) - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq 32+8(%rsp),%rsi - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - imulq %r8,%rsi - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq %rsi,%rbx - addq %rax,%r15 - movq 0(%rbp),%rax - adcq $0,%rdx - addq %r15,%r14 - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz L$8x_reduce - - leaq 64(%rbp),%rbp - xorq %rax,%rax - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae L$8x_no_tail - -.byte 0x66 - addq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movq 48+56+8(%rsp),%rbx - movl $8,%ecx - movq 0(%rbp),%rax - jmp L$8x_tail - -.p2align 5 -L$8x_tail: - mulq %rbx - addq %rax,%r8 - movq 8(%rbp),%rax - movq %r8,(%rdi) - movq %rdx,%r8 - adcq $0,%r8 - - mulq %rbx - addq %rax,%r9 - movq 16(%rbp),%rax - adcq $0,%rdx - addq %r9,%r8 - leaq 8(%rdi),%rdi - movq %rdx,%r9 - adcq $0,%r9 - - mulq %rbx - addq %rax,%r10 - movq 24(%rbp),%rax - adcq $0,%rdx - addq %r10,%r9 - movq %rdx,%r10 - adcq $0,%r10 - - mulq %rbx - addq %rax,%r11 - movq 32(%rbp),%rax - adcq $0,%rdx - addq %r11,%r10 - movq %rdx,%r11 - adcq $0,%r11 - - mulq %rbx - addq %rax,%r12 - movq 40(%rbp),%rax - adcq $0,%rdx - addq %r12,%r11 - movq %rdx,%r12 - adcq $0,%r12 - - mulq %rbx - addq %rax,%r13 - movq 48(%rbp),%rax - adcq $0,%rdx - addq %r13,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - mulq %rbx - addq %rax,%r14 - movq 56(%rbp),%rax - adcq $0,%rdx - addq %r14,%r13 - movq %rdx,%r14 - adcq $0,%r14 - - mulq %rbx - movq 48-16+8(%rsp,%rcx,8),%rbx - addq %rax,%r15 - adcq $0,%rdx - addq %r15,%r14 - movq 0(%rbp),%rax - movq %rdx,%r15 - adcq $0,%r15 - - decl %ecx - jnz L$8x_tail - - leaq 64(%rbp),%rbp - movq 8+8(%rsp),%rdx - cmpq 0+8(%rsp),%rbp - jae L$8x_tail_done - - movq 48+56+8(%rsp),%rbx - negq %rsi - movq 0(%rbp),%rax - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - sbbq %rsi,%rsi - - movl $8,%ecx - jmp L$8x_tail - -.p2align 5 -L$8x_tail_done: - xorq %rax,%rax - addq (%rdx),%r8 - adcq $0,%r9 - adcq $0,%r10 - adcq $0,%r11 - adcq $0,%r12 - adcq $0,%r13 - adcq $0,%r14 - adcq $0,%r15 - adcq $0,%rax - - negq %rsi -L$8x_no_tail: - adcq 0(%rdi),%r8 - adcq 8(%rdi),%r9 - adcq 16(%rdi),%r10 - adcq 24(%rdi),%r11 - adcq 32(%rdi),%r12 - adcq 40(%rdi),%r13 - adcq 48(%rdi),%r14 - adcq 56(%rdi),%r15 - adcq $0,%rax - movq -8(%rbp),%rcx - xorq %rsi,%rsi - -.byte 102,72,15,126,213 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) -.byte 102,73,15,126,217 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rdi),%rdi - - cmpq %rdx,%rdi - jb L$8x_reduction_loop - .byte 0xf3,0xc3 - - -.p2align 5 -__bn_post4x_internal: - movq 0(%rbp),%r12 - leaq (%rdi,%r9,1),%rbx - movq %r9,%rcx -.byte 102,72,15,126,207 - negq %rax -.byte 102,72,15,126,206 - sarq $3+2,%rcx - decq %r12 - xorq %r10,%r10 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 - jmp L$sqr4x_sub_entry - -.p2align 4 -L$sqr4x_sub: - movq 0(%rbp),%r12 - movq 8(%rbp),%r13 - movq 16(%rbp),%r14 - movq 24(%rbp),%r15 -L$sqr4x_sub_entry: - leaq 32(%rbp),%rbp - notq %r12 - notq %r13 - notq %r14 - notq %r15 - andq %rax,%r12 - andq %rax,%r13 - andq %rax,%r14 - andq %rax,%r15 - - negq %r10 - adcq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - adcq 16(%rbx),%r14 - adcq 24(%rbx),%r15 - movq %r12,0(%rdi) - leaq 32(%rbx),%rbx - movq %r13,8(%rdi) - sbbq %r10,%r10 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - leaq 32(%rdi),%rdi - - incq %rcx - jnz L$sqr4x_sub - - movq %r9,%r10 - negq %r9 - .byte 0xf3,0xc3 - -.globl _bn_from_montgomery - -.p2align 5 -_bn_from_montgomery: - testl $7,%r9d - jz bn_from_mont8x - xorl %eax,%eax - .byte 0xf3,0xc3 - - - -.p2align 5 -bn_from_mont8x: -.byte 0x67 - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$from_prologue: - - shll $3,%r9d - leaq (%r9,%r9,2),%r10 - negq %r9 - movq (%r8),%r8 - - - - - - - - - leaq -320(%rsp,%r9,2),%r11 - movq %rsp,%rbp - subq %rdi,%r11 - andq $4095,%r11 - cmpq %r11,%r10 - jb L$from_sp_alt - subq %r11,%rbp - leaq -320(%rbp,%r9,2),%rbp - jmp L$from_sp_done - -.p2align 5 -L$from_sp_alt: - leaq 4096-320(,%r9,2),%r10 - leaq -320(%rbp,%r9,2),%rbp - subq %r10,%r11 - movq $0,%r10 - cmovcq %r10,%r11 - subq %r11,%rbp -L$from_sp_done: - andq $-64,%rbp - movq %rsp,%r11 - subq %rbp,%r11 - andq $-4096,%r11 - leaq (%r11,%rbp,1),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$from_page_walk - jmp L$from_page_walk_done - -L$from_page_walk: - leaq -4096(%rsp),%rsp - movq (%rsp),%r10 - cmpq %rbp,%rsp - ja L$from_page_walk -L$from_page_walk_done: - - movq %r9,%r10 - negq %r9 - - - - - - - - - - - movq %r8,32(%rsp) - movq %rax,40(%rsp) -L$from_body: - movq %r9,%r11 - leaq 48(%rsp),%rax - pxor %xmm0,%xmm0 - jmp L$mul_by_1 - -.p2align 5 -L$mul_by_1: - movdqu (%rsi),%xmm1 - movdqu 16(%rsi),%xmm2 - movdqu 32(%rsi),%xmm3 - movdqa %xmm0,(%rax,%r9,1) - movdqu 48(%rsi),%xmm4 - movdqa %xmm0,16(%rax,%r9,1) -.byte 0x48,0x8d,0xb6,0x40,0x00,0x00,0x00 - movdqa %xmm1,(%rax) - movdqa %xmm0,32(%rax,%r9,1) - movdqa %xmm2,16(%rax) - movdqa %xmm0,48(%rax,%r9,1) - movdqa %xmm3,32(%rax) - movdqa %xmm4,48(%rax) - leaq 64(%rax),%rax - subq $64,%r11 - jnz L$mul_by_1 - -.byte 102,72,15,110,207 -.byte 102,72,15,110,209 -.byte 0x67 - movq %rcx,%rbp -.byte 102,73,15,110,218 - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor %xmm0,%xmm0 - leaq 48(%rsp),%rax - movq 40(%rsp),%rsi - jmp L$from_mont_zero - -.p2align 5 -L$from_mont_zero: - movdqa %xmm0,0(%rax) - movdqa %xmm0,16(%rax) - movdqa %xmm0,32(%rax) - movdqa %xmm0,48(%rax) - leaq 64(%rax),%rax - subq $32,%r9 - jnz L$from_mont_zero - - movq $1,%rax - movq -48(%rsi),%r15 - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$from_epilogue: - .byte 0xf3,0xc3 - -.globl _bn_get_bits5 - -.p2align 4 -_bn_get_bits5: - leaq 0(%rdi),%r10 - leaq 1(%rdi),%r11 - movl %esi,%ecx - shrl $4,%esi - andl $15,%ecx - leal -8(%rcx),%eax - cmpl $11,%ecx - cmovaq %r11,%r10 - cmoval %eax,%ecx - movzwl (%r10,%rsi,2),%eax - shrl %cl,%eax - andl $31,%eax - .byte 0xf3,0xc3 - - -.globl _bn_scatter5 - -.p2align 4 -_bn_scatter5: - cmpl $0,%esi - jz L$scatter_epilogue - leaq (%rdx,%rcx,8),%rdx -L$scatter: - movq (%rdi),%rax - leaq 8(%rdi),%rdi - movq %rax,(%rdx) - leaq 256(%rdx),%rdx - subl $1,%esi - jnz L$scatter -L$scatter_epilogue: - .byte 0xf3,0xc3 - - -.globl _bn_gather5 - -.p2align 5 -_bn_gather5: -L$SEH_begin_bn_gather5: - -.byte 0x4c,0x8d,0x14,0x24 -.byte 0x48,0x81,0xec,0x08,0x01,0x00,0x00 - leaq L$inc(%rip),%rax - andq $-16,%rsp - - movd %ecx,%xmm5 - movdqa 0(%rax),%xmm0 - movdqa 16(%rax),%xmm1 - leaq 128(%rdx),%r11 - leaq 128(%rsp),%rax - - pshufd $0,%xmm5,%xmm5 - movdqa %xmm1,%xmm4 - movdqa %xmm1,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-128(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-112(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-96(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-80(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,-64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,-48(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,-32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,-16(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,0(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,16(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,32(%rax) - movdqa %xmm4,%xmm2 - paddd %xmm0,%xmm1 - pcmpeqd %xmm5,%xmm0 - movdqa %xmm3,48(%rax) - movdqa %xmm4,%xmm3 - - paddd %xmm1,%xmm2 - pcmpeqd %xmm5,%xmm1 - movdqa %xmm0,64(%rax) - movdqa %xmm4,%xmm0 - - paddd %xmm2,%xmm3 - pcmpeqd %xmm5,%xmm2 - movdqa %xmm1,80(%rax) - movdqa %xmm4,%xmm1 - - paddd %xmm3,%xmm0 - pcmpeqd %xmm5,%xmm3 - movdqa %xmm2,96(%rax) - movdqa %xmm4,%xmm2 - movdqa %xmm3,112(%rax) - jmp L$gather - -.p2align 5 -L$gather: - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - movdqa -128(%r11),%xmm0 - movdqa -112(%r11),%xmm1 - movdqa -96(%r11),%xmm2 - pand -128(%rax),%xmm0 - movdqa -80(%r11),%xmm3 - pand -112(%rax),%xmm1 - por %xmm0,%xmm4 - pand -96(%rax),%xmm2 - por %xmm1,%xmm5 - pand -80(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa -64(%r11),%xmm0 - movdqa -48(%r11),%xmm1 - movdqa -32(%r11),%xmm2 - pand -64(%rax),%xmm0 - movdqa -16(%r11),%xmm3 - pand -48(%rax),%xmm1 - por %xmm0,%xmm4 - pand -32(%rax),%xmm2 - por %xmm1,%xmm5 - pand -16(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 0(%r11),%xmm0 - movdqa 16(%r11),%xmm1 - movdqa 32(%r11),%xmm2 - pand 0(%rax),%xmm0 - movdqa 48(%r11),%xmm3 - pand 16(%rax),%xmm1 - por %xmm0,%xmm4 - pand 32(%rax),%xmm2 - por %xmm1,%xmm5 - pand 48(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - movdqa 64(%r11),%xmm0 - movdqa 80(%r11),%xmm1 - movdqa 96(%r11),%xmm2 - pand 64(%rax),%xmm0 - movdqa 112(%r11),%xmm3 - pand 80(%rax),%xmm1 - por %xmm0,%xmm4 - pand 96(%rax),%xmm2 - por %xmm1,%xmm5 - pand 112(%rax),%xmm3 - por %xmm2,%xmm4 - por %xmm3,%xmm5 - por %xmm5,%xmm4 - leaq 256(%r11),%r11 - pshufd $0x4e,%xmm4,%xmm0 - por %xmm4,%xmm0 - movq %xmm0,(%rdi) - leaq 8(%rdi),%rdi - subl $1,%esi - jnz L$gather - - leaq (%r10),%rsp - .byte 0xf3,0xc3 -L$SEH_end_bn_gather5: - -.p2align 6 -L$inc: -.long 0,0, 1,1 -.long 2,2, 2,2 -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/camellia/cmll-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/camellia/cmll-x86_64.s deleted file mode 100644 index 8025d088fdab4e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/camellia/cmll-x86_64.s +++ /dev/null @@ -1,1838 +0,0 @@ -.text - - -.globl _Camellia_EncryptBlock - -.p2align 4 -_Camellia_EncryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp L$enc_rounds - - -.globl _Camellia_EncryptBlock_Rounds - -.p2align 4 -L$enc_rounds: -_Camellia_EncryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$enc_prologue: - - - movq %rcx,%r13 - movq %rdx,%r14 - - shll $6,%edi - leaq L$Camellia_SBOX(%rip),%rbp - leaq (%r14,%rdi,1),%r15 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$enc_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_Camellia_encrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.p2align 4 -L$eloop: - movl 16(%r14),%ebx - movl 20(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 56(%r14),%ebx - movl 60(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 64(%r14),%ebx - movl 68(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq 64(%r14),%r14 - cmpq %r15,%r14 - movl 8(%r14),%edx - movl 12(%r14),%ecx - je L$edone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - jmp L$eloop - -.p2align 4 -L$edone: - xorl %r10d,%eax - xorl %r11d,%ebx - xorl %r8d,%ecx - xorl %r9d,%edx - - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r10d - movl %edx,%r11d - -.byte 0xf3,0xc3 - - - -.globl _Camellia_DecryptBlock - -.p2align 4 -_Camellia_DecryptBlock: - movl $128,%eax - subl %edi,%eax - movl $3,%edi - adcl $0,%edi - jmp L$dec_rounds - - -.globl _Camellia_DecryptBlock_Rounds - -.p2align 4 -L$dec_rounds: -_Camellia_DecryptBlock_Rounds: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$dec_prologue: - - - movq %rcx,%r13 - movq %rdx,%r15 - - shll $6,%edi - leaq L$Camellia_SBOX(%rip),%rbp - leaq (%r15,%rdi,1),%r14 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - bswapl %r8d - movl 12(%rsi),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_decrypt - - bswapl %r8d - bswapl %r9d - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$dec_epilogue: - .byte 0xf3,0xc3 - - - -.p2align 4 -_x86_64_Camellia_decrypt: - xorl 0(%r14),%r9d - xorl 4(%r14),%r8d - xorl 8(%r14),%r11d - xorl 12(%r14),%r10d -.p2align 4 -L$dloop: - movl -8(%r14),%ebx - movl -4(%r14),%eax - - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -16(%r14),%ebx - movl -12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -24(%r14),%ebx - movl -20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -32(%r14),%ebx - movl -28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -40(%r14),%ebx - movl -36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -48(%r14),%ebx - movl -44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl -56(%r14),%ebx - movl -52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - leaq -64(%r14),%r14 - cmpq %r15,%r14 - movl 0(%r14),%edx - movl 4(%r14),%ecx - je L$ddone - - andl %r8d,%eax - orl %r11d,%edx - roll $1,%eax - xorl %edx,%r10d - xorl %eax,%r9d - andl %r10d,%ecx - orl %r9d,%ebx - roll $1,%ecx - xorl %ebx,%r8d - xorl %ecx,%r11d - - jmp L$dloop - -.p2align 4 -L$ddone: - xorl %r10d,%ecx - xorl %r11d,%edx - xorl %r8d,%eax - xorl %r9d,%ebx - - movl %ecx,%r8d - movl %edx,%r9d - movl %eax,%r10d - movl %ebx,%r11d - -.byte 0xf3,0xc3 - -.globl _Camellia_Ekeygen - -.p2align 4 -_Camellia_Ekeygen: - pushq %rbx - pushq %rbp - pushq %r13 - pushq %r14 - pushq %r15 -L$key_prologue: - - movl %edi,%r15d - movq %rdx,%r13 - - movl 0(%rsi),%r8d - movl 4(%rsi),%r9d - movl 8(%rsi),%r10d - movl 12(%rsi),%r11d - - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,0(%r13) - movl %r8d,4(%r13) - movl %r11d,8(%r13) - movl %r10d,12(%r13) - cmpq $128,%r15 - je L$1st128 - - movl 16(%rsi),%r8d - movl 20(%rsi),%r9d - cmpq $192,%r15 - je L$1st192 - movl 24(%rsi),%r10d - movl 28(%rsi),%r11d - jmp L$1st256 -L$1st192: - movl %r8d,%r10d - movl %r9d,%r11d - notl %r10d - notl %r11d -L$1st256: - bswapl %r8d - bswapl %r9d - bswapl %r10d - bswapl %r11d - movl %r9d,32(%r13) - movl %r8d,36(%r13) - movl %r11d,40(%r13) - movl %r10d,44(%r13) - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - -L$1st128: - leaq L$Camellia_SIGMA(%rip),%r14 - leaq L$Camellia_SBOX(%rip),%rbp - - movl 0(%r14),%ebx - movl 4(%r14),%eax - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 8(%r14),%ebx - movl 12(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 16(%r14),%ebx - movl 20(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - xorl 0(%r13),%r9d - xorl 4(%r13),%r8d - xorl 8(%r13),%r11d - xorl 12(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 24(%r14),%ebx - movl 28(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 32(%r14),%ebx - movl 36(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - cmpq $128,%r15 - jne L$2nd256 - - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq -128(%r13),%rax - movq -120(%r13),%rbx - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,-96(%r13) - movq %rbx,-88(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-80(%r13) - movq %r10,-72(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-64(%r13) - movq %r10,-56(%r13) - movq %rax,%r11 - shlq $30,%rax - movq %rbx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rax - shlq $30,%rbx - orq %r11,%rbx - movq %rax,-48(%r13) - movq %rbx,-40(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-32(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rbx,-24(%r13) - movq %r8,%r11 - shlq $15,%r8 - movq %r10,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r8 - shlq $15,%r10 - orq %r11,%r10 - movq %r8,-16(%r13) - movq %r10,-8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,16(%r13) - movq %rbx,24(%r13) - movq %r8,%r11 - shlq $34,%r8 - movq %r10,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%r8 - shlq $34,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r8,%r11 - shlq $17,%r8 - movq %r10,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r8 - shlq $17,%r10 - orq %r11,%r10 - movq %r8,64(%r13) - movq %r10,72(%r13) - movl $3,%eax - jmp L$done -.p2align 4 -L$2nd256: - movl %r9d,48(%r13) - movl %r8d,52(%r13) - movl %r11d,56(%r13) - movl %r10d,60(%r13) - xorl 32(%r13),%r9d - xorl 36(%r13),%r8d - xorl 40(%r13),%r11d - xorl 44(%r13),%r10d - xorl %r8d,%eax - xorl %r9d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 40(%r14),%ebx - movl 44(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r10d - xorl %ecx,%r11d - xorl %edx,%r11d - xorl %r10d,%eax - xorl %r11d,%ebx - movzbl %ah,%esi - movzbl %bl,%edi - movl 2052(%rbp,%rsi,8),%edx - movl 0(%rbp,%rdi,8),%ecx - movzbl %al,%esi - shrl $16,%eax - movzbl %bh,%edi - xorl 4(%rbp,%rsi,8),%edx - shrl $16,%ebx - xorl 4(%rbp,%rdi,8),%ecx - movzbl %ah,%esi - movzbl %bl,%edi - xorl 0(%rbp,%rsi,8),%edx - xorl 2052(%rbp,%rdi,8),%ecx - movzbl %al,%esi - movzbl %bh,%edi - xorl 2048(%rbp,%rsi,8),%edx - xorl 2048(%rbp,%rdi,8),%ecx - movl 48(%r14),%ebx - movl 52(%r14),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl %ecx,%r8d - xorl %ecx,%r9d - xorl %edx,%r9d - movq 0(%r13),%rax - movq 8(%r13),%rbx - movq 32(%r13),%rcx - movq 40(%r13),%rdx - movq 48(%r13),%r14 - movq 56(%r13),%r15 - leaq 128(%r13),%r13 - shlq $32,%r8 - shlq $32,%r10 - orq %r9,%r8 - orq %r11,%r10 - movq %r8,-112(%r13) - movq %r10,-104(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-96(%r13) - movq %rdx,-88(%r13) - movq %r14,%r11 - shlq $15,%r14 - movq %r15,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%r14 - shlq $15,%r15 - orq %r11,%r15 - movq %r14,-80(%r13) - movq %r15,-72(%r13) - movq %rcx,%r11 - shlq $15,%rcx - movq %rdx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rcx - shlq $15,%rdx - orq %r11,%rdx - movq %rcx,-64(%r13) - movq %rdx,-56(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,-48(%r13) - movq %r10,-40(%r13) - movq %rax,%r11 - shlq $45,%rax - movq %rbx,%r9 - shrq $19,%r9 - shrq $19,%r11 - orq %r9,%rax - shlq $45,%rbx - orq %r11,%rbx - movq %rax,-32(%r13) - movq %rbx,-24(%r13) - movq %r14,%r11 - shlq $30,%r14 - movq %r15,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r14 - shlq $30,%r15 - orq %r11,%r15 - movq %r14,-16(%r13) - movq %r15,-8(%r13) - movq %rax,%r11 - shlq $15,%rax - movq %rbx,%r9 - shrq $49,%r9 - shrq $49,%r11 - orq %r9,%rax - shlq $15,%rbx - orq %r11,%rbx - movq %rax,0(%r13) - movq %rbx,8(%r13) - movq %rcx,%r11 - shlq $30,%rcx - movq %rdx,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%rcx - shlq $30,%rdx - orq %r11,%rdx - movq %rcx,16(%r13) - movq %rdx,24(%r13) - movq %r8,%r11 - shlq $30,%r8 - movq %r10,%r9 - shrq $34,%r9 - shrq $34,%r11 - orq %r9,%r8 - shlq $30,%r10 - orq %r11,%r10 - movq %r8,32(%r13) - movq %r10,40(%r13) - movq %rax,%r11 - shlq $17,%rax - movq %rbx,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%rax - shlq $17,%rbx - orq %r11,%rbx - movq %rax,48(%r13) - movq %rbx,56(%r13) - movq %r14,%r11 - shlq $32,%r14 - movq %r15,%r9 - shrq $32,%r9 - shrq $32,%r11 - orq %r9,%r14 - shlq $32,%r15 - orq %r11,%r15 - movq %r14,64(%r13) - movq %r15,72(%r13) - movq %rcx,%r11 - shlq $34,%rcx - movq %rdx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rcx - shlq $34,%rdx - orq %r11,%rdx - movq %rcx,80(%r13) - movq %rdx,88(%r13) - movq %r14,%r11 - shlq $17,%r14 - movq %r15,%r9 - shrq $47,%r9 - shrq $47,%r11 - orq %r9,%r14 - shlq $17,%r15 - orq %r11,%r15 - movq %r14,96(%r13) - movq %r15,104(%r13) - movq %rax,%r11 - shlq $34,%rax - movq %rbx,%r9 - shrq $30,%r9 - shrq $30,%r11 - orq %r9,%rax - shlq $34,%rbx - orq %r11,%rbx - movq %rax,112(%r13) - movq %rbx,120(%r13) - movq %r8,%r11 - shlq $51,%r8 - movq %r10,%r9 - shrq $13,%r9 - shrq $13,%r11 - orq %r9,%r8 - shlq $51,%r10 - orq %r11,%r10 - movq %r8,128(%r13) - movq %r10,136(%r13) - movl $4,%eax -L$done: - movq 0(%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r13 - movq 24(%rsp),%rbp - movq 32(%rsp),%rbx - leaq 40(%rsp),%rsp -L$key_epilogue: - .byte 0xf3,0xc3 - -.p2align 6 -L$Camellia_SIGMA: -.long 0x3bcc908b, 0xa09e667f, 0x4caa73b2, 0xb67ae858 -.long 0xe94f82be, 0xc6ef372f, 0xf1d36f1c, 0x54ff53a5 -.long 0xde682d1d, 0x10e527fa, 0xb3e6c1fd, 0xb05688c2 -.long 0, 0, 0, 0 -L$Camellia_SBOX: -.long 0x70707000,0x70700070 -.long 0x82828200,0x2c2c002c -.long 0x2c2c2c00,0xb3b300b3 -.long 0xececec00,0xc0c000c0 -.long 0xb3b3b300,0xe4e400e4 -.long 0x27272700,0x57570057 -.long 0xc0c0c000,0xeaea00ea -.long 0xe5e5e500,0xaeae00ae -.long 0xe4e4e400,0x23230023 -.long 0x85858500,0x6b6b006b -.long 0x57575700,0x45450045 -.long 0x35353500,0xa5a500a5 -.long 0xeaeaea00,0xeded00ed -.long 0x0c0c0c00,0x4f4f004f -.long 0xaeaeae00,0x1d1d001d -.long 0x41414100,0x92920092 -.long 0x23232300,0x86860086 -.long 0xefefef00,0xafaf00af -.long 0x6b6b6b00,0x7c7c007c -.long 0x93939300,0x1f1f001f -.long 0x45454500,0x3e3e003e -.long 0x19191900,0xdcdc00dc -.long 0xa5a5a500,0x5e5e005e -.long 0x21212100,0x0b0b000b -.long 0xededed00,0xa6a600a6 -.long 0x0e0e0e00,0x39390039 -.long 0x4f4f4f00,0xd5d500d5 -.long 0x4e4e4e00,0x5d5d005d -.long 0x1d1d1d00,0xd9d900d9 -.long 0x65656500,0x5a5a005a -.long 0x92929200,0x51510051 -.long 0xbdbdbd00,0x6c6c006c -.long 0x86868600,0x8b8b008b -.long 0xb8b8b800,0x9a9a009a -.long 0xafafaf00,0xfbfb00fb -.long 0x8f8f8f00,0xb0b000b0 -.long 0x7c7c7c00,0x74740074 -.long 0xebebeb00,0x2b2b002b -.long 0x1f1f1f00,0xf0f000f0 -.long 0xcecece00,0x84840084 -.long 0x3e3e3e00,0xdfdf00df -.long 0x30303000,0xcbcb00cb -.long 0xdcdcdc00,0x34340034 -.long 0x5f5f5f00,0x76760076 -.long 0x5e5e5e00,0x6d6d006d -.long 0xc5c5c500,0xa9a900a9 -.long 0x0b0b0b00,0xd1d100d1 -.long 0x1a1a1a00,0x04040004 -.long 0xa6a6a600,0x14140014 -.long 0xe1e1e100,0x3a3a003a -.long 0x39393900,0xdede00de -.long 0xcacaca00,0x11110011 -.long 0xd5d5d500,0x32320032 -.long 0x47474700,0x9c9c009c -.long 0x5d5d5d00,0x53530053 -.long 0x3d3d3d00,0xf2f200f2 -.long 0xd9d9d900,0xfefe00fe -.long 0x01010100,0xcfcf00cf -.long 0x5a5a5a00,0xc3c300c3 -.long 0xd6d6d600,0x7a7a007a -.long 0x51515100,0x24240024 -.long 0x56565600,0xe8e800e8 -.long 0x6c6c6c00,0x60600060 -.long 0x4d4d4d00,0x69690069 -.long 0x8b8b8b00,0xaaaa00aa -.long 0x0d0d0d00,0xa0a000a0 -.long 0x9a9a9a00,0xa1a100a1 -.long 0x66666600,0x62620062 -.long 0xfbfbfb00,0x54540054 -.long 0xcccccc00,0x1e1e001e -.long 0xb0b0b000,0xe0e000e0 -.long 0x2d2d2d00,0x64640064 -.long 0x74747400,0x10100010 -.long 0x12121200,0x00000000 -.long 0x2b2b2b00,0xa3a300a3 -.long 0x20202000,0x75750075 -.long 0xf0f0f000,0x8a8a008a -.long 0xb1b1b100,0xe6e600e6 -.long 0x84848400,0x09090009 -.long 0x99999900,0xdddd00dd -.long 0xdfdfdf00,0x87870087 -.long 0x4c4c4c00,0x83830083 -.long 0xcbcbcb00,0xcdcd00cd -.long 0xc2c2c200,0x90900090 -.long 0x34343400,0x73730073 -.long 0x7e7e7e00,0xf6f600f6 -.long 0x76767600,0x9d9d009d -.long 0x05050500,0xbfbf00bf -.long 0x6d6d6d00,0x52520052 -.long 0xb7b7b700,0xd8d800d8 -.long 0xa9a9a900,0xc8c800c8 -.long 0x31313100,0xc6c600c6 -.long 0xd1d1d100,0x81810081 -.long 0x17171700,0x6f6f006f -.long 0x04040400,0x13130013 -.long 0xd7d7d700,0x63630063 -.long 0x14141400,0xe9e900e9 -.long 0x58585800,0xa7a700a7 -.long 0x3a3a3a00,0x9f9f009f -.long 0x61616100,0xbcbc00bc -.long 0xdedede00,0x29290029 -.long 0x1b1b1b00,0xf9f900f9 -.long 0x11111100,0x2f2f002f -.long 0x1c1c1c00,0xb4b400b4 -.long 0x32323200,0x78780078 -.long 0x0f0f0f00,0x06060006 -.long 0x9c9c9c00,0xe7e700e7 -.long 0x16161600,0x71710071 -.long 0x53535300,0xd4d400d4 -.long 0x18181800,0xabab00ab -.long 0xf2f2f200,0x88880088 -.long 0x22222200,0x8d8d008d -.long 0xfefefe00,0x72720072 -.long 0x44444400,0xb9b900b9 -.long 0xcfcfcf00,0xf8f800f8 -.long 0xb2b2b200,0xacac00ac -.long 0xc3c3c300,0x36360036 -.long 0xb5b5b500,0x2a2a002a -.long 0x7a7a7a00,0x3c3c003c -.long 0x91919100,0xf1f100f1 -.long 0x24242400,0x40400040 -.long 0x08080800,0xd3d300d3 -.long 0xe8e8e800,0xbbbb00bb -.long 0xa8a8a800,0x43430043 -.long 0x60606000,0x15150015 -.long 0xfcfcfc00,0xadad00ad -.long 0x69696900,0x77770077 -.long 0x50505000,0x80800080 -.long 0xaaaaaa00,0x82820082 -.long 0xd0d0d000,0xecec00ec -.long 0xa0a0a000,0x27270027 -.long 0x7d7d7d00,0xe5e500e5 -.long 0xa1a1a100,0x85850085 -.long 0x89898900,0x35350035 -.long 0x62626200,0x0c0c000c -.long 0x97979700,0x41410041 -.long 0x54545400,0xefef00ef -.long 0x5b5b5b00,0x93930093 -.long 0x1e1e1e00,0x19190019 -.long 0x95959500,0x21210021 -.long 0xe0e0e000,0x0e0e000e -.long 0xffffff00,0x4e4e004e -.long 0x64646400,0x65650065 -.long 0xd2d2d200,0xbdbd00bd -.long 0x10101000,0xb8b800b8 -.long 0xc4c4c400,0x8f8f008f -.long 0x00000000,0xebeb00eb -.long 0x48484800,0xcece00ce -.long 0xa3a3a300,0x30300030 -.long 0xf7f7f700,0x5f5f005f -.long 0x75757500,0xc5c500c5 -.long 0xdbdbdb00,0x1a1a001a -.long 0x8a8a8a00,0xe1e100e1 -.long 0x03030300,0xcaca00ca -.long 0xe6e6e600,0x47470047 -.long 0xdadada00,0x3d3d003d -.long 0x09090900,0x01010001 -.long 0x3f3f3f00,0xd6d600d6 -.long 0xdddddd00,0x56560056 -.long 0x94949400,0x4d4d004d -.long 0x87878700,0x0d0d000d -.long 0x5c5c5c00,0x66660066 -.long 0x83838300,0xcccc00cc -.long 0x02020200,0x2d2d002d -.long 0xcdcdcd00,0x12120012 -.long 0x4a4a4a00,0x20200020 -.long 0x90909000,0xb1b100b1 -.long 0x33333300,0x99990099 -.long 0x73737300,0x4c4c004c -.long 0x67676700,0xc2c200c2 -.long 0xf6f6f600,0x7e7e007e -.long 0xf3f3f300,0x05050005 -.long 0x9d9d9d00,0xb7b700b7 -.long 0x7f7f7f00,0x31310031 -.long 0xbfbfbf00,0x17170017 -.long 0xe2e2e200,0xd7d700d7 -.long 0x52525200,0x58580058 -.long 0x9b9b9b00,0x61610061 -.long 0xd8d8d800,0x1b1b001b -.long 0x26262600,0x1c1c001c -.long 0xc8c8c800,0x0f0f000f -.long 0x37373700,0x16160016 -.long 0xc6c6c600,0x18180018 -.long 0x3b3b3b00,0x22220022 -.long 0x81818100,0x44440044 -.long 0x96969600,0xb2b200b2 -.long 0x6f6f6f00,0xb5b500b5 -.long 0x4b4b4b00,0x91910091 -.long 0x13131300,0x08080008 -.long 0xbebebe00,0xa8a800a8 -.long 0x63636300,0xfcfc00fc -.long 0x2e2e2e00,0x50500050 -.long 0xe9e9e900,0xd0d000d0 -.long 0x79797900,0x7d7d007d -.long 0xa7a7a700,0x89890089 -.long 0x8c8c8c00,0x97970097 -.long 0x9f9f9f00,0x5b5b005b -.long 0x6e6e6e00,0x95950095 -.long 0xbcbcbc00,0xffff00ff -.long 0x8e8e8e00,0xd2d200d2 -.long 0x29292900,0xc4c400c4 -.long 0xf5f5f500,0x48480048 -.long 0xf9f9f900,0xf7f700f7 -.long 0xb6b6b600,0xdbdb00db -.long 0x2f2f2f00,0x03030003 -.long 0xfdfdfd00,0xdada00da -.long 0xb4b4b400,0x3f3f003f -.long 0x59595900,0x94940094 -.long 0x78787800,0x5c5c005c -.long 0x98989800,0x02020002 -.long 0x06060600,0x4a4a004a -.long 0x6a6a6a00,0x33330033 -.long 0xe7e7e700,0x67670067 -.long 0x46464600,0xf3f300f3 -.long 0x71717100,0x7f7f007f -.long 0xbababa00,0xe2e200e2 -.long 0xd4d4d400,0x9b9b009b -.long 0x25252500,0x26260026 -.long 0xababab00,0x37370037 -.long 0x42424200,0x3b3b003b -.long 0x88888800,0x96960096 -.long 0xa2a2a200,0x4b4b004b -.long 0x8d8d8d00,0xbebe00be -.long 0xfafafa00,0x2e2e002e -.long 0x72727200,0x79790079 -.long 0x07070700,0x8c8c008c -.long 0xb9b9b900,0x6e6e006e -.long 0x55555500,0x8e8e008e -.long 0xf8f8f800,0xf5f500f5 -.long 0xeeeeee00,0xb6b600b6 -.long 0xacacac00,0xfdfd00fd -.long 0x0a0a0a00,0x59590059 -.long 0x36363600,0x98980098 -.long 0x49494900,0x6a6a006a -.long 0x2a2a2a00,0x46460046 -.long 0x68686800,0xbaba00ba -.long 0x3c3c3c00,0x25250025 -.long 0x38383800,0x42420042 -.long 0xf1f1f100,0xa2a200a2 -.long 0xa4a4a400,0xfafa00fa -.long 0x40404000,0x07070007 -.long 0x28282800,0x55550055 -.long 0xd3d3d300,0xeeee00ee -.long 0x7b7b7b00,0x0a0a000a -.long 0xbbbbbb00,0x49490049 -.long 0xc9c9c900,0x68680068 -.long 0x43434300,0x38380038 -.long 0xc1c1c100,0xa4a400a4 -.long 0x15151500,0x28280028 -.long 0xe3e3e300,0x7b7b007b -.long 0xadadad00,0xc9c900c9 -.long 0xf4f4f400,0xc1c100c1 -.long 0x77777700,0xe3e300e3 -.long 0xc7c7c700,0xf4f400f4 -.long 0x80808000,0xc7c700c7 -.long 0x9e9e9e00,0x9e9e009e -.long 0x00e0e0e0,0x38003838 -.long 0x00050505,0x41004141 -.long 0x00585858,0x16001616 -.long 0x00d9d9d9,0x76007676 -.long 0x00676767,0xd900d9d9 -.long 0x004e4e4e,0x93009393 -.long 0x00818181,0x60006060 -.long 0x00cbcbcb,0xf200f2f2 -.long 0x00c9c9c9,0x72007272 -.long 0x000b0b0b,0xc200c2c2 -.long 0x00aeaeae,0xab00abab -.long 0x006a6a6a,0x9a009a9a -.long 0x00d5d5d5,0x75007575 -.long 0x00181818,0x06000606 -.long 0x005d5d5d,0x57005757 -.long 0x00828282,0xa000a0a0 -.long 0x00464646,0x91009191 -.long 0x00dfdfdf,0xf700f7f7 -.long 0x00d6d6d6,0xb500b5b5 -.long 0x00272727,0xc900c9c9 -.long 0x008a8a8a,0xa200a2a2 -.long 0x00323232,0x8c008c8c -.long 0x004b4b4b,0xd200d2d2 -.long 0x00424242,0x90009090 -.long 0x00dbdbdb,0xf600f6f6 -.long 0x001c1c1c,0x07000707 -.long 0x009e9e9e,0xa700a7a7 -.long 0x009c9c9c,0x27002727 -.long 0x003a3a3a,0x8e008e8e -.long 0x00cacaca,0xb200b2b2 -.long 0x00252525,0x49004949 -.long 0x007b7b7b,0xde00dede -.long 0x000d0d0d,0x43004343 -.long 0x00717171,0x5c005c5c -.long 0x005f5f5f,0xd700d7d7 -.long 0x001f1f1f,0xc700c7c7 -.long 0x00f8f8f8,0x3e003e3e -.long 0x00d7d7d7,0xf500f5f5 -.long 0x003e3e3e,0x8f008f8f -.long 0x009d9d9d,0x67006767 -.long 0x007c7c7c,0x1f001f1f -.long 0x00606060,0x18001818 -.long 0x00b9b9b9,0x6e006e6e -.long 0x00bebebe,0xaf00afaf -.long 0x00bcbcbc,0x2f002f2f -.long 0x008b8b8b,0xe200e2e2 -.long 0x00161616,0x85008585 -.long 0x00343434,0x0d000d0d -.long 0x004d4d4d,0x53005353 -.long 0x00c3c3c3,0xf000f0f0 -.long 0x00727272,0x9c009c9c -.long 0x00959595,0x65006565 -.long 0x00ababab,0xea00eaea -.long 0x008e8e8e,0xa300a3a3 -.long 0x00bababa,0xae00aeae -.long 0x007a7a7a,0x9e009e9e -.long 0x00b3b3b3,0xec00ecec -.long 0x00020202,0x80008080 -.long 0x00b4b4b4,0x2d002d2d -.long 0x00adadad,0x6b006b6b -.long 0x00a2a2a2,0xa800a8a8 -.long 0x00acacac,0x2b002b2b -.long 0x00d8d8d8,0x36003636 -.long 0x009a9a9a,0xa600a6a6 -.long 0x00171717,0xc500c5c5 -.long 0x001a1a1a,0x86008686 -.long 0x00353535,0x4d004d4d -.long 0x00cccccc,0x33003333 -.long 0x00f7f7f7,0xfd00fdfd -.long 0x00999999,0x66006666 -.long 0x00616161,0x58005858 -.long 0x005a5a5a,0x96009696 -.long 0x00e8e8e8,0x3a003a3a -.long 0x00242424,0x09000909 -.long 0x00565656,0x95009595 -.long 0x00404040,0x10001010 -.long 0x00e1e1e1,0x78007878 -.long 0x00636363,0xd800d8d8 -.long 0x00090909,0x42004242 -.long 0x00333333,0xcc00cccc -.long 0x00bfbfbf,0xef00efef -.long 0x00989898,0x26002626 -.long 0x00979797,0xe500e5e5 -.long 0x00858585,0x61006161 -.long 0x00686868,0x1a001a1a -.long 0x00fcfcfc,0x3f003f3f -.long 0x00ececec,0x3b003b3b -.long 0x000a0a0a,0x82008282 -.long 0x00dadada,0xb600b6b6 -.long 0x006f6f6f,0xdb00dbdb -.long 0x00535353,0xd400d4d4 -.long 0x00626262,0x98009898 -.long 0x00a3a3a3,0xe800e8e8 -.long 0x002e2e2e,0x8b008b8b -.long 0x00080808,0x02000202 -.long 0x00afafaf,0xeb00ebeb -.long 0x00282828,0x0a000a0a -.long 0x00b0b0b0,0x2c002c2c -.long 0x00747474,0x1d001d1d -.long 0x00c2c2c2,0xb000b0b0 -.long 0x00bdbdbd,0x6f006f6f -.long 0x00363636,0x8d008d8d -.long 0x00222222,0x88008888 -.long 0x00383838,0x0e000e0e -.long 0x00646464,0x19001919 -.long 0x001e1e1e,0x87008787 -.long 0x00393939,0x4e004e4e -.long 0x002c2c2c,0x0b000b0b -.long 0x00a6a6a6,0xa900a9a9 -.long 0x00303030,0x0c000c0c -.long 0x00e5e5e5,0x79007979 -.long 0x00444444,0x11001111 -.long 0x00fdfdfd,0x7f007f7f -.long 0x00888888,0x22002222 -.long 0x009f9f9f,0xe700e7e7 -.long 0x00656565,0x59005959 -.long 0x00878787,0xe100e1e1 -.long 0x006b6b6b,0xda00dada -.long 0x00f4f4f4,0x3d003d3d -.long 0x00232323,0xc800c8c8 -.long 0x00484848,0x12001212 -.long 0x00101010,0x04000404 -.long 0x00d1d1d1,0x74007474 -.long 0x00515151,0x54005454 -.long 0x00c0c0c0,0x30003030 -.long 0x00f9f9f9,0x7e007e7e -.long 0x00d2d2d2,0xb400b4b4 -.long 0x00a0a0a0,0x28002828 -.long 0x00555555,0x55005555 -.long 0x00a1a1a1,0x68006868 -.long 0x00414141,0x50005050 -.long 0x00fafafa,0xbe00bebe -.long 0x00434343,0xd000d0d0 -.long 0x00131313,0xc400c4c4 -.long 0x00c4c4c4,0x31003131 -.long 0x002f2f2f,0xcb00cbcb -.long 0x00a8a8a8,0x2a002a2a -.long 0x00b6b6b6,0xad00adad -.long 0x003c3c3c,0x0f000f0f -.long 0x002b2b2b,0xca00caca -.long 0x00c1c1c1,0x70007070 -.long 0x00ffffff,0xff00ffff -.long 0x00c8c8c8,0x32003232 -.long 0x00a5a5a5,0x69006969 -.long 0x00202020,0x08000808 -.long 0x00898989,0x62006262 -.long 0x00000000,0x00000000 -.long 0x00909090,0x24002424 -.long 0x00474747,0xd100d1d1 -.long 0x00efefef,0xfb00fbfb -.long 0x00eaeaea,0xba00baba -.long 0x00b7b7b7,0xed00eded -.long 0x00151515,0x45004545 -.long 0x00060606,0x81008181 -.long 0x00cdcdcd,0x73007373 -.long 0x00b5b5b5,0x6d006d6d -.long 0x00121212,0x84008484 -.long 0x007e7e7e,0x9f009f9f -.long 0x00bbbbbb,0xee00eeee -.long 0x00292929,0x4a004a4a -.long 0x000f0f0f,0xc300c3c3 -.long 0x00b8b8b8,0x2e002e2e -.long 0x00070707,0xc100c1c1 -.long 0x00040404,0x01000101 -.long 0x009b9b9b,0xe600e6e6 -.long 0x00949494,0x25002525 -.long 0x00212121,0x48004848 -.long 0x00666666,0x99009999 -.long 0x00e6e6e6,0xb900b9b9 -.long 0x00cecece,0xb300b3b3 -.long 0x00ededed,0x7b007b7b -.long 0x00e7e7e7,0xf900f9f9 -.long 0x003b3b3b,0xce00cece -.long 0x00fefefe,0xbf00bfbf -.long 0x007f7f7f,0xdf00dfdf -.long 0x00c5c5c5,0x71007171 -.long 0x00a4a4a4,0x29002929 -.long 0x00373737,0xcd00cdcd -.long 0x00b1b1b1,0x6c006c6c -.long 0x004c4c4c,0x13001313 -.long 0x00919191,0x64006464 -.long 0x006e6e6e,0x9b009b9b -.long 0x008d8d8d,0x63006363 -.long 0x00767676,0x9d009d9d -.long 0x00030303,0xc000c0c0 -.long 0x002d2d2d,0x4b004b4b -.long 0x00dedede,0xb700b7b7 -.long 0x00969696,0xa500a5a5 -.long 0x00262626,0x89008989 -.long 0x007d7d7d,0x5f005f5f -.long 0x00c6c6c6,0xb100b1b1 -.long 0x005c5c5c,0x17001717 -.long 0x00d3d3d3,0xf400f4f4 -.long 0x00f2f2f2,0xbc00bcbc -.long 0x004f4f4f,0xd300d3d3 -.long 0x00191919,0x46004646 -.long 0x003f3f3f,0xcf00cfcf -.long 0x00dcdcdc,0x37003737 -.long 0x00797979,0x5e005e5e -.long 0x001d1d1d,0x47004747 -.long 0x00525252,0x94009494 -.long 0x00ebebeb,0xfa00fafa -.long 0x00f3f3f3,0xfc00fcfc -.long 0x006d6d6d,0x5b005b5b -.long 0x005e5e5e,0x97009797 -.long 0x00fbfbfb,0xfe00fefe -.long 0x00696969,0x5a005a5a -.long 0x00b2b2b2,0xac00acac -.long 0x00f0f0f0,0x3c003c3c -.long 0x00313131,0x4c004c4c -.long 0x000c0c0c,0x03000303 -.long 0x00d4d4d4,0x35003535 -.long 0x00cfcfcf,0xf300f3f3 -.long 0x008c8c8c,0x23002323 -.long 0x00e2e2e2,0xb800b8b8 -.long 0x00757575,0x5d005d5d -.long 0x00a9a9a9,0x6a006a6a -.long 0x004a4a4a,0x92009292 -.long 0x00575757,0xd500d5d5 -.long 0x00848484,0x21002121 -.long 0x00111111,0x44004444 -.long 0x00454545,0x51005151 -.long 0x001b1b1b,0xc600c6c6 -.long 0x00f5f5f5,0x7d007d7d -.long 0x00e4e4e4,0x39003939 -.long 0x000e0e0e,0x83008383 -.long 0x00737373,0xdc00dcdc -.long 0x00aaaaaa,0xaa00aaaa -.long 0x00f1f1f1,0x7c007c7c -.long 0x00dddddd,0x77007777 -.long 0x00595959,0x56005656 -.long 0x00141414,0x05000505 -.long 0x006c6c6c,0x1b001b1b -.long 0x00929292,0xa400a4a4 -.long 0x00545454,0x15001515 -.long 0x00d0d0d0,0x34003434 -.long 0x00787878,0x1e001e1e -.long 0x00707070,0x1c001c1c -.long 0x00e3e3e3,0xf800f8f8 -.long 0x00494949,0x52005252 -.long 0x00808080,0x20002020 -.long 0x00505050,0x14001414 -.long 0x00a7a7a7,0xe900e9e9 -.long 0x00f6f6f6,0xbd00bdbd -.long 0x00777777,0xdd00dddd -.long 0x00939393,0xe400e4e4 -.long 0x00868686,0xa100a1a1 -.long 0x00838383,0xe000e0e0 -.long 0x002a2a2a,0x8a008a8a -.long 0x00c7c7c7,0xf100f1f1 -.long 0x005b5b5b,0xd600d6d6 -.long 0x00e9e9e9,0x7a007a7a -.long 0x00eeeeee,0xbb00bbbb -.long 0x008f8f8f,0xe300e3e3 -.long 0x00010101,0x40004040 -.long 0x003d3d3d,0x4f004f4f -.globl _Camellia_cbc_encrypt - -.p2align 4 -_Camellia_cbc_encrypt: - cmpq $0,%rdx - je L$cbc_abort - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 -L$cbc_prologue: - - movq %rsp,%rbp - subq $64,%rsp - andq $-64,%rsp - - - - leaq -64-63(%rcx),%r10 - subq %rsp,%r10 - negq %r10 - andq $0x3C0,%r10 - subq %r10,%rsp - - - movq %rdi,%r12 - movq %rsi,%r13 - movq %r8,%rbx - movq %rcx,%r14 - movl 272(%rcx),%r15d - - movq %r8,40(%rsp) - movq %rbp,48(%rsp) - -L$cbc_body: - leaq L$Camellia_SBOX(%rip),%rbp - - movl $32,%ecx -.p2align 2 -L$cbc_prefetch_sbox: - movq 0(%rbp),%rax - movq 32(%rbp),%rsi - movq 64(%rbp),%rdi - movq 96(%rbp),%r11 - leaq 128(%rbp),%rbp - loop L$cbc_prefetch_sbox - subq $4096,%rbp - shlq $6,%r15 - movq %rdx,%rcx - leaq (%r14,%r15,1),%r15 - - cmpl $0,%r9d - je L$CBC_DECRYPT - - andq $-16,%rdx - andq $15,%rcx - leaq (%r12,%rdx,1),%rdx - movq %r14,0(%rsp) - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - cmpq %r12,%rdx - movl 0(%rbx),%r8d - movl 4(%rbx),%r9d - movl 8(%rbx),%r10d - movl 12(%rbx),%r11d - je L$cbc_enc_tail - jmp L$cbc_eloop - -.p2align 4 -L$cbc_eloop: - xorl 0(%r12),%r8d - xorl 4(%r12),%r9d - xorl 8(%r12),%r10d - bswapl %r8d - xorl 12(%r12),%r11d - bswapl %r9d - bswapl %r10d - bswapl %r11d - - call _x86_64_Camellia_encrypt - - movq 0(%rsp),%r14 - bswapl %r8d - movq 8(%rsp),%rdx - bswapl %r9d - movq 16(%rsp),%rcx - bswapl %r10d - movl %r8d,0(%r13) - bswapl %r11d - movl %r9d,4(%r13) - movl %r10d,8(%r13) - leaq 16(%r12),%r12 - movl %r11d,12(%r13) - cmpq %rdx,%r12 - leaq 16(%r13),%r13 - jne L$cbc_eloop - - cmpq $0,%rcx - jne L$cbc_enc_tail - - movq 40(%rsp),%r13 - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - jmp L$cbc_done - -.p2align 4 -L$cbc_enc_tail: - xorq %rax,%rax - movq %rax,0+24(%rsp) - movq %rax,8+24(%rsp) - movq %rax,16(%rsp) - -L$cbc_enc_pushf: - pushfq - cld - movq %r12,%rsi - leaq 8+24(%rsp),%rdi -.long 0x9066A4F3 - popfq -L$cbc_enc_popf: - - leaq 24(%rsp),%r12 - leaq 16+24(%rsp),%rax - movq %rax,8(%rsp) - jmp L$cbc_eloop - -.p2align 4 -L$CBC_DECRYPT: - xchgq %r14,%r15 - addq $15,%rdx - andq $15,%rcx - andq $-16,%rdx - movq %r14,0(%rsp) - leaq (%r12,%rdx,1),%rdx - movq %rdx,8(%rsp) - movq %rcx,16(%rsp) - - movq (%rbx),%rax - movq 8(%rbx),%rbx - jmp L$cbc_dloop -.p2align 4 -L$cbc_dloop: - movl 0(%r12),%r8d - movl 4(%r12),%r9d - movl 8(%r12),%r10d - bswapl %r8d - movl 12(%r12),%r11d - bswapl %r9d - movq %rax,0+24(%rsp) - bswapl %r10d - movq %rbx,8+24(%rsp) - bswapl %r11d - - call _x86_64_Camellia_decrypt - - movq 0(%rsp),%r14 - movq 8(%rsp),%rdx - movq 16(%rsp),%rcx - - bswapl %r8d - movq (%r12),%rax - bswapl %r9d - movq 8(%r12),%rbx - bswapl %r10d - xorl 0+24(%rsp),%r8d - bswapl %r11d - xorl 4+24(%rsp),%r9d - xorl 8+24(%rsp),%r10d - leaq 16(%r12),%r12 - xorl 12+24(%rsp),%r11d - cmpq %rdx,%r12 - je L$cbc_ddone - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - leaq 16(%r13),%r13 - jmp L$cbc_dloop - -.p2align 4 -L$cbc_ddone: - movq 40(%rsp),%rdx - cmpq $0,%rcx - jne L$cbc_dec_tail - - movl %r8d,0(%r13) - movl %r9d,4(%r13) - movl %r10d,8(%r13) - movl %r11d,12(%r13) - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp L$cbc_done -.p2align 4 -L$cbc_dec_tail: - movl %r8d,0+24(%rsp) - movl %r9d,4+24(%rsp) - movl %r10d,8+24(%rsp) - movl %r11d,12+24(%rsp) - -L$cbc_dec_pushf: - pushfq - cld - leaq 8+24(%rsp),%rsi - leaq (%r13),%rdi -.long 0x9066A4F3 - popfq -L$cbc_dec_popf: - - movq %rax,(%rdx) - movq %rbx,8(%rdx) - jmp L$cbc_done - -.p2align 4 -L$cbc_done: - movq 48(%rsp),%rcx - movq 0(%rcx),%r15 - movq 8(%rcx),%r14 - movq 16(%rcx),%r13 - movq 24(%rcx),%r12 - movq 32(%rcx),%rbp - movq 40(%rcx),%rbx - leaq 48(%rcx),%rsp -L$cbc_abort: - .byte 0xf3,0xc3 - - -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54,95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/ec/ecp_nistz256-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/ec/ecp_nistz256-x86_64.s deleted file mode 100644 index 62e8d00ccda8a9..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/ec/ecp_nistz256-x86_64.s +++ /dev/null @@ -1,2013 +0,0 @@ -.text - - - -.p2align 6 -L$poly: -.quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001 - - -L$RR: -.quad 0x0000000000000003, 0xfffffffbffffffff, 0xfffffffffffffffe, 0x00000004fffffffd - -L$One: -.long 1,1,1,1,1,1,1,1 -L$Two: -.long 2,2,2,2,2,2,2,2 -L$Three: -.long 3,3,3,3,3,3,3,3 -L$ONE_mont: -.quad 0x0000000000000001, 0xffffffff00000000, 0xffffffffffffffff, 0x00000000fffffffe - -.globl _ecp_nistz256_mul_by_2 - -.p2align 6 -_ecp_nistz256_mul_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_div_by_2 - -.p2align 5 -_ecp_nistz256_div_by_2: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq %r8,%rax - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - movq %r9,%rdx - xorq %r13,%r13 - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - adcq $0,%r13 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - cmovzq %rcx,%r10 - cmovzq %r12,%r11 - cmovzq %rsi,%r13 - - movq %r9,%rax - shrq $1,%r8 - shlq $63,%rax - movq %r10,%rdx - shrq $1,%r9 - orq %rax,%r8 - shlq $63,%rdx - movq %r11,%rcx - shrq $1,%r10 - orq %rdx,%r9 - shlq $63,%rcx - shrq $1,%r11 - shlq $63,%r13 - orq %rcx,%r10 - orq %r13,%r11 - - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_mul_by_3 - -.p2align 5 -_ecp_nistz256_mul_by_3: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - addq %r8,%r8 - movq 16(%rsi),%r10 - adcq %r9,%r9 - movq 24(%rsi),%r11 - movq %r8,%rax - adcq %r10,%r10 - adcq %r11,%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq L$poly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq L$poly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - cmovcq %rcx,%r10 - cmovcq %r12,%r11 - - xorq %r13,%r13 - addq 0(%rsi),%r8 - adcq 8(%rsi),%r9 - movq %r8,%rax - adcq 16(%rsi),%r10 - adcq 24(%rsi),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq $-1,%r8 - movq %r10,%rcx - sbbq L$poly+8(%rip),%r9 - sbbq $0,%r10 - movq %r11,%r12 - sbbq L$poly+24(%rip),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_add - -.p2align 5 -_ecp_nistz256_add: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - addq 0(%rdx),%r8 - adcq 8(%rdx),%r9 - movq %r8,%rax - adcq 16(%rdx),%r10 - adcq 24(%rdx),%r11 - movq %r9,%rdx - adcq $0,%r13 - - subq 0(%rsi),%r8 - movq %r10,%rcx - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r11,%r12 - sbbq 24(%rsi),%r11 - sbbq $0,%r13 - - cmovcq %rax,%r8 - cmovcq %rdx,%r9 - movq %r8,0(%rdi) - cmovcq %rcx,%r10 - movq %r9,8(%rdi) - cmovcq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_sub - -.p2align 5 -_ecp_nistz256_sub: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%r8 - xorq %r13,%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - - subq 0(%rdx),%r8 - sbbq 8(%rdx),%r9 - movq %r8,%rax - sbbq 16(%rdx),%r10 - sbbq 24(%rdx),%r11 - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_neg - -.p2align 5 -_ecp_nistz256_neg: - pushq %r12 - pushq %r13 - - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - xorq %r13,%r13 - - subq 0(%rsi),%r8 - sbbq 8(%rsi),%r9 - sbbq 16(%rsi),%r10 - movq %r8,%rax - sbbq 24(%rsi),%r11 - leaq L$poly(%rip),%rsi - movq %r9,%rdx - sbbq $0,%r13 - - addq 0(%rsi),%r8 - movq %r10,%rcx - adcq 8(%rsi),%r9 - adcq 16(%rsi),%r10 - movq %r11,%r12 - adcq 24(%rsi),%r11 - testq %r13,%r13 - - cmovzq %rax,%r8 - cmovzq %rdx,%r9 - movq %r8,0(%rdi) - cmovzq %rcx,%r10 - movq %r9,8(%rdi) - cmovzq %r12,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - - - -.globl _ecp_nistz256_to_mont - -.p2align 5 -_ecp_nistz256_to_mont: - leaq L$RR(%rip),%rdx - jmp L$mul_mont - - - - - - - - -.globl _ecp_nistz256_mul_mont - -.p2align 5 -_ecp_nistz256_mul_mont: -L$mul_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rdx,%rbx - movq 0(%rdx),%rax - movq 0(%rsi),%r9 - movq 8(%rsi),%r10 - movq 16(%rsi),%r11 - movq 24(%rsi),%r12 - - call __ecp_nistz256_mul_montq -L$mul_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_mul_montq: - - - movq %rax,%rbp - mulq %r9 - movq L$poly+8(%rip),%r14 - movq %rax,%r8 - movq %rbp,%rax - movq %rdx,%r9 - - mulq %r10 - movq L$poly+24(%rip),%r15 - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r10 - - mulq %r11 - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r12 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - xorq %r13,%r13 - movq %rdx,%r12 - - - - - - - - - - - movq %r8,%rbp - shlq $32,%r8 - mulq %r15 - shrq $32,%rbp - addq %r8,%r9 - adcq %rbp,%r10 - adcq %rax,%r11 - movq 8(%rbx),%rax - adcq %rdx,%r12 - adcq $0,%r13 - xorq %r8,%r8 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r9 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r10 - adcq $0,%rdx - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %r9,%rax - adcq %rdx,%r13 - adcq $0,%r8 - - - - movq %r9,%rbp - shlq $32,%r9 - mulq %r15 - shrq $32,%rbp - addq %r9,%r10 - adcq %rbp,%r11 - adcq %rax,%r12 - movq 16(%rbx),%rax - adcq %rdx,%r13 - adcq $0,%r8 - xorq %r9,%r9 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r10 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r11 - adcq $0,%rdx - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %r10,%rax - adcq %rdx,%r8 - adcq $0,%r9 - - - - movq %r10,%rbp - shlq $32,%r10 - mulq %r15 - shrq $32,%rbp - addq %r10,%r11 - adcq %rbp,%r12 - adcq %rax,%r13 - movq 24(%rbx),%rax - adcq %rdx,%r8 - adcq $0,%r9 - xorq %r10,%r10 - - - - movq %rax,%rbp - mulq 0(%rsi) - addq %rax,%r11 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 8(%rsi) - addq %rcx,%r12 - adcq $0,%rdx - addq %rax,%r12 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 16(%rsi) - addq %rcx,%r13 - adcq $0,%rdx - addq %rax,%r13 - movq %rbp,%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq 24(%rsi) - addq %rcx,%r8 - adcq $0,%rdx - addq %rax,%r8 - movq %r11,%rax - adcq %rdx,%r9 - adcq $0,%r10 - - - - movq %r11,%rbp - shlq $32,%r11 - mulq %r15 - shrq $32,%rbp - addq %r11,%r12 - adcq %rbp,%r13 - movq %r12,%rcx - adcq %rax,%r8 - adcq %rdx,%r9 - movq %r13,%rbp - adcq $0,%r10 - - - - subq $-1,%r12 - movq %r8,%rbx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%rdx - sbbq %r15,%r9 - sbbq $0,%r10 - - cmovcq %rcx,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rbx,%r8 - movq %r13,8(%rdi) - cmovcq %rdx,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - - - - - - - -.globl _ecp_nistz256_sqr_mont - -.p2align 5 -_ecp_nistz256_sqr_mont: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq 0(%rsi),%rax - movq 8(%rsi),%r14 - movq 16(%rsi),%r15 - movq 24(%rsi),%r8 - - call __ecp_nistz256_sqr_montq -L$sqr_mont_done: - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sqr_montq: - movq %rax,%r13 - mulq %r14 - movq %rax,%r9 - movq %r15,%rax - movq %rdx,%r10 - - mulq %r13 - addq %rax,%r10 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%r11 - - mulq %r13 - addq %rax,%r11 - movq %r15,%rax - adcq $0,%rdx - movq %rdx,%r12 - - - mulq %r14 - addq %rax,%r11 - movq %r8,%rax - adcq $0,%rdx - movq %rdx,%rbp - - mulq %r14 - addq %rax,%r12 - movq %r8,%rax - adcq $0,%rdx - addq %rbp,%r12 - movq %rdx,%r13 - adcq $0,%r13 - - - mulq %r15 - xorq %r15,%r15 - addq %rax,%r13 - movq 0(%rsi),%rax - movq %rdx,%r14 - adcq $0,%r14 - - addq %r9,%r9 - adcq %r10,%r10 - adcq %r11,%r11 - adcq %r12,%r12 - adcq %r13,%r13 - adcq %r14,%r14 - adcq $0,%r15 - - mulq %rax - movq %rax,%r8 - movq 8(%rsi),%rax - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r9 - adcq %rax,%r10 - movq 16(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r11 - adcq %rax,%r12 - movq 24(%rsi),%rax - adcq $0,%rdx - movq %rdx,%rcx - - mulq %rax - addq %rcx,%r13 - adcq %rax,%r14 - movq %r8,%rax - adcq %rdx,%r15 - - movq L$poly+8(%rip),%rsi - movq L$poly+24(%rip),%rbp - - - - - movq %r8,%rcx - shlq $32,%r8 - mulq %rbp - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %rbp - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %rbp - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %rbp - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - adcq %rax,%r10 - adcq $0,%rdx - xorq %r11,%r11 - - - - addq %r8,%r12 - adcq %r9,%r13 - movq %r12,%r8 - adcq %r10,%r14 - adcq %rdx,%r15 - movq %r13,%r9 - adcq $0,%r11 - - subq $-1,%r12 - movq %r14,%r10 - sbbq %rsi,%r13 - sbbq $0,%r14 - movq %r15,%rcx - sbbq %rbp,%r15 - sbbq $0,%r11 - - cmovcq %r8,%r12 - cmovcq %r9,%r13 - movq %r12,0(%rdi) - cmovcq %r10,%r14 - movq %r13,8(%rdi) - cmovcq %rcx,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - - .byte 0xf3,0xc3 - - - - - - - -.globl _ecp_nistz256_from_mont - -.p2align 5 -_ecp_nistz256_from_mont: - pushq %r12 - pushq %r13 - - movq 0(%rsi),%rax - movq L$poly+24(%rip),%r13 - movq 8(%rsi),%r9 - movq 16(%rsi),%r10 - movq 24(%rsi),%r11 - movq %rax,%r8 - movq L$poly+8(%rip),%r12 - - - - movq %rax,%rcx - shlq $32,%r8 - mulq %r13 - shrq $32,%rcx - addq %r8,%r9 - adcq %rcx,%r10 - adcq %rax,%r11 - movq %r9,%rax - adcq $0,%rdx - - - - movq %r9,%rcx - shlq $32,%r9 - movq %rdx,%r8 - mulq %r13 - shrq $32,%rcx - addq %r9,%r10 - adcq %rcx,%r11 - adcq %rax,%r8 - movq %r10,%rax - adcq $0,%rdx - - - - movq %r10,%rcx - shlq $32,%r10 - movq %rdx,%r9 - mulq %r13 - shrq $32,%rcx - addq %r10,%r11 - adcq %rcx,%r8 - adcq %rax,%r9 - movq %r11,%rax - adcq $0,%rdx - - - - movq %r11,%rcx - shlq $32,%r11 - movq %rdx,%r10 - mulq %r13 - shrq $32,%rcx - addq %r11,%r8 - adcq %rcx,%r9 - movq %r8,%rcx - adcq %rax,%r10 - movq %r9,%rsi - adcq $0,%rdx - - - - subq $-1,%r8 - movq %r10,%rax - sbbq %r12,%r9 - sbbq $0,%r10 - movq %rdx,%r11 - sbbq %r13,%rdx - sbbq %r13,%r13 - - cmovnzq %rcx,%r8 - cmovnzq %rsi,%r9 - movq %r8,0(%rdi) - cmovnzq %rax,%r10 - movq %r9,8(%rdi) - cmovzq %rdx,%r11 - movq %r10,16(%rdi) - movq %r11,24(%rdi) - - popq %r13 - popq %r12 - .byte 0xf3,0xc3 - - - -.globl _ecp_nistz256_select_w5 - -.p2align 5 -_ecp_nistz256_select_w5: - movdqa L$One(%rip),%xmm0 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - - movdqa %xmm0,%xmm8 - pshufd $0,%xmm1,%xmm1 - - movq $16,%rax -L$select_loop_sse_w5: - - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - pcmpeqd %xmm1,%xmm15 - - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - movdqa 64(%rsi),%xmm13 - movdqa 80(%rsi),%xmm14 - leaq 96(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - pand %xmm15,%xmm13 - por %xmm12,%xmm5 - pand %xmm15,%xmm14 - por %xmm13,%xmm6 - por %xmm14,%xmm7 - - decq %rax - jnz L$select_loop_sse_w5 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - movdqu %xmm6,64(%rdi) - movdqu %xmm7,80(%rdi) - .byte 0xf3,0xc3 - - - - -.globl _ecp_nistz256_select_w7 - -.p2align 5 -_ecp_nistz256_select_w7: - movdqa L$One(%rip),%xmm8 - movd %edx,%xmm1 - - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - - movdqa %xmm8,%xmm0 - pshufd $0,%xmm1,%xmm1 - movq $64,%rax - -L$select_loop_sse_w7: - movdqa %xmm8,%xmm15 - paddd %xmm0,%xmm8 - movdqa 0(%rsi),%xmm9 - movdqa 16(%rsi),%xmm10 - pcmpeqd %xmm1,%xmm15 - movdqa 32(%rsi),%xmm11 - movdqa 48(%rsi),%xmm12 - leaq 64(%rsi),%rsi - - pand %xmm15,%xmm9 - pand %xmm15,%xmm10 - por %xmm9,%xmm2 - pand %xmm15,%xmm11 - por %xmm10,%xmm3 - pand %xmm15,%xmm12 - por %xmm11,%xmm4 - prefetcht0 255(%rsi) - por %xmm12,%xmm5 - - decq %rax - jnz L$select_loop_sse_w7 - - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - movdqu %xmm4,32(%rdi) - movdqu %xmm5,48(%rdi) - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_avx2_select_w7 - -.p2align 5 -_ecp_nistz256_avx2_select_w7: -.byte 0x0f,0x0b - .byte 0xf3,0xc3 - - -.p2align 5 -__ecp_nistz256_add_toq: - xorq %r11,%r11 - addq 0(%rbx),%r12 - adcq 8(%rbx),%r13 - movq %r12,%rax - adcq 16(%rbx),%r8 - adcq 24(%rbx),%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_sub_fromq: - subq 0(%rbx),%r12 - sbbq 8(%rbx),%r13 - movq %r12,%rax - sbbq 16(%rbx),%r8 - sbbq 24(%rbx),%r9 - movq %r13,%rbp - sbbq %r11,%r11 - - addq $-1,%r12 - movq %r8,%rcx - adcq %r14,%r13 - adcq $0,%r8 - movq %r9,%r10 - adcq %r15,%r9 - testq %r11,%r11 - - cmovzq %rax,%r12 - cmovzq %rbp,%r13 - movq %r12,0(%rdi) - cmovzq %rcx,%r8 - movq %r13,8(%rdi) - cmovzq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_subq: - subq %r12,%rax - sbbq %r13,%rbp - movq %rax,%r12 - sbbq %r8,%rcx - sbbq %r9,%r10 - movq %rbp,%r13 - sbbq %r11,%r11 - - addq $-1,%rax - movq %rcx,%r8 - adcq %r14,%rbp - adcq $0,%rcx - movq %r10,%r9 - adcq %r15,%r10 - testq %r11,%r11 - - cmovnzq %rax,%r12 - cmovnzq %rbp,%r13 - cmovnzq %rcx,%r8 - cmovnzq %r10,%r9 - - .byte 0xf3,0xc3 - - - -.p2align 5 -__ecp_nistz256_mul_by_2q: - xorq %r11,%r11 - addq %r12,%r12 - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - cmovcq %rbp,%r13 - movq %r12,0(%rdi) - cmovcq %rcx,%r8 - movq %r13,8(%rdi) - cmovcq %r10,%r9 - movq %r8,16(%rdi) - movq %r9,24(%rdi) - - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_double - -.p2align 5 -_ecp_nistz256_point_double: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $160+8,%rsp - -L$point_double_shortcutq: - movdqu 0(%rsi),%xmm0 - movq %rsi,%rbx - movdqu 16(%rsi),%xmm1 - movq 32+0(%rsi),%r12 - movq 32+8(%rsi),%r13 - movq 32+16(%rsi),%r8 - movq 32+24(%rsi),%r9 - movq L$poly+8(%rip),%r14 - movq L$poly+24(%rip),%r15 - movdqa %xmm0,96(%rsp) - movdqa %xmm1,96+16(%rsp) - leaq 32(%rdi),%r10 - leaq 64(%rdi),%r11 -.byte 102,72,15,110,199 -.byte 102,73,15,110,202 -.byte 102,73,15,110,211 - - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - leaq 64-0(%rsi),%rsi - leaq 64(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 0(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 32(%rbx),%rax - movq 64+0(%rbx),%r9 - movq 64+8(%rbx),%r10 - movq 64+16(%rbx),%r11 - movq 64+24(%rbx),%r12 - leaq 64-0(%rbx),%rsi - leaq 32(%rbx),%rbx -.byte 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96+0(%rsp),%r12 - movq 96+8(%rsp),%r13 - leaq 64(%rsp),%rbx - movq 96+16(%rsp),%r8 - movq 96+24(%rsp),%r9 - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 -.byte 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xorq %r9,%r9 - movq %r12,%rax - addq $-1,%r12 - movq %r13,%r10 - adcq %rsi,%r13 - movq %r14,%rcx - adcq $0,%r14 - movq %r15,%r8 - adcq %rbp,%r15 - adcq $0,%r9 - xorq %rsi,%rsi - testq $1,%rax - - cmovzq %rax,%r12 - cmovzq %r10,%r13 - cmovzq %rcx,%r14 - cmovzq %r8,%r15 - cmovzq %rsi,%r9 - - movq %r13,%rax - shrq $1,%r12 - shlq $63,%rax - movq %r14,%r10 - shrq $1,%r13 - orq %rax,%r12 - shlq $63,%r10 - movq %r15,%rcx - shrq $1,%r14 - orq %r10,%r13 - shlq $63,%rcx - movq %r12,0(%rdi) - shrq $1,%r15 - movq %r13,8(%rdi) - shlq $63,%r9 - orq %rcx,%r14 - orq %r9,%r15 - movq %r14,16(%rdi) - movq %r15,24(%rdi) - movq 64(%rsp),%rax - leaq 64(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - leaq 32(%rsp),%rbx - leaq 32(%rsp),%rdi - call __ecp_nistz256_add_toq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_by_2q - - movq 0+32(%rsp),%rax - movq 8+32(%rsp),%r14 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r15 - movq 24+32(%rsp),%r8 -.byte 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - leaq 128(%rsp),%rbx - movq %r14,%r8 - movq %r15,%r9 - movq %rsi,%r14 - movq %rbp,%r15 - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 0(%rsp),%rdi - call __ecp_nistz256_subq - - movq 32(%rsp),%rax - leaq 32(%rsp),%rbx - movq %r12,%r14 - xorl %ecx,%ecx - movq %r12,0+0(%rsp) - movq %r13,%r10 - movq %r13,0+8(%rsp) - cmovzq %r8,%r11 - movq %r8,0+16(%rsp) - leaq 0-0(%rsp),%rsi - cmovzq %r9,%r12 - movq %r9,0+24(%rsp) - movq %r14,%r9 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - -.byte 102,72,15,126,203 -.byte 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - addq $160+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_add - -.p2align 5 -_ecp_nistz256_point_add: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $576+8,%rsp - - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq %rsi,%rbx - movq %rdx,%rsi - movdqa %xmm0,384(%rsp) - movdqa %xmm1,384+16(%rsp) - movdqa %xmm2,416(%rsp) - movdqa %xmm3,416+16(%rsp) - movdqa %xmm4,448(%rsp) - movdqa %xmm5,448+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rsi),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rsi),%xmm3 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,480(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,480+16(%rsp) - movdqu 64(%rsi),%xmm0 - movdqu 80(%rsi),%xmm1 - movdqa %xmm2,512(%rsp) - movdqa %xmm3,512+16(%rsp) - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - - leaq 64-0(%rsi),%rsi - movq %rax,544+0(%rsp) - movq %r14,544+8(%rsp) - movq %r15,544+16(%rsp) - movq %r8,544+24(%rsp) - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm1,%xmm4 - por %xmm1,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - movq 64+0(%rbx),%rax - movq 64+8(%rbx),%r14 - movq 64+16(%rbx),%r15 - movq 64+24(%rbx),%r8 -.byte 102,72,15,110,203 - - leaq 64-0(%rbx),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 416(%rsp),%rax - leaq 416(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 224(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 512(%rsp),%rax - leaq 512(%rsp),%rbx - movq 0+256(%rsp),%r9 - movq 8+256(%rsp),%r10 - leaq 0+256(%rsp),%rsi - movq 16+256(%rsp),%r11 - movq 24+256(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 224(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - movdqa %xmm4,%xmm2 - orq %r8,%r12 - orq %r9,%r12 - por %xmm5,%xmm2 -.byte 102,73,15,110,220 - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+96(%rsp),%r9 - movq 8+96(%rsp),%r10 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r11 - movq 24+96(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 480(%rsp),%rax - leaq 480(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 160(%rsp),%rbx - leaq 0(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - orq %r13,%r12 - orq %r8,%r12 - orq %r9,%r12 - -.byte 0x3e - jnz L$add_proceedq -.byte 102,73,15,126,208 -.byte 102,73,15,126,217 - testq %r8,%r8 - jnz L$add_proceedq - testq %r9,%r9 - jz L$add_doubleq - -.byte 102,72,15,126,199 - pxor %xmm0,%xmm0 - movdqu %xmm0,0(%rdi) - movdqu %xmm0,16(%rdi) - movdqu %xmm0,32(%rdi) - movdqu %xmm0,48(%rdi) - movdqu %xmm0,64(%rdi) - movdqu %xmm0,80(%rdi) - jmp L$add_doneq - -.p2align 5 -L$add_doubleq: -.byte 102,72,15,126,206 -.byte 102,72,15,126,199 - addq $416,%rsp - jmp L$point_double_shortcutq - -.p2align 5 -L$add_proceedq: - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 96(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+0(%rsp),%r9 - movq 8+0(%rsp),%r10 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r11 - movq 24+0(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0+0(%rsp),%rax - movq 8+0(%rsp),%r14 - leaq 0+0(%rsp),%rsi - movq 16+0(%rsp),%r15 - movq 24+0(%rsp),%r8 - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 544(%rsp),%rax - leaq 544(%rsp),%rbx - movq 0+352(%rsp),%r9 - movq 8+352(%rsp),%r10 - leaq 0+352(%rsp),%rsi - movq 16+352(%rsp),%r11 - movq 24+352(%rsp),%r12 - leaq 352(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 0(%rsp),%rax - leaq 0(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 128(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 160(%rsp),%rax - leaq 160(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 192(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 96(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 128(%rsp),%rbx - leaq 288(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 192+0(%rsp),%rax - movq 192+8(%rsp),%rbp - movq 192+16(%rsp),%rcx - movq 192+24(%rsp),%r10 - leaq 320(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+224(%rsp),%r9 - movq 8+224(%rsp),%r10 - leaq 0+224(%rsp),%rsi - movq 16+224(%rsp),%r11 - movq 24+224(%rsp),%r12 - leaq 256(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 320(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 256(%rsp),%rbx - leaq 320(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 352(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 352+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 544(%rsp),%xmm2 - pand 544+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 480(%rsp),%xmm2 - pand 480+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 320(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 320+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 512(%rsp),%xmm2 - pand 512+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - -L$add_doneq: - addq $576+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 - -.globl _ecp_nistz256_point_add_affine - -.p2align 5 -_ecp_nistz256_point_add_affine: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $480+8,%rsp - - movdqu 0(%rsi),%xmm0 - movq %rdx,%rbx - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 - movdqu 48(%rsi),%xmm3 - movdqu 64(%rsi),%xmm4 - movdqu 80(%rsi),%xmm5 - movq 64+0(%rsi),%rax - movq 64+8(%rsi),%r14 - movq 64+16(%rsi),%r15 - movq 64+24(%rsi),%r8 - movdqa %xmm0,320(%rsp) - movdqa %xmm1,320+16(%rsp) - movdqa %xmm2,352(%rsp) - movdqa %xmm3,352+16(%rsp) - movdqa %xmm4,384(%rsp) - movdqa %xmm5,384+16(%rsp) - por %xmm4,%xmm5 - - movdqu 0(%rbx),%xmm0 - pshufd $0xb1,%xmm5,%xmm3 - movdqu 16(%rbx),%xmm1 - movdqu 32(%rbx),%xmm2 - por %xmm3,%xmm5 - movdqu 48(%rbx),%xmm3 - movdqa %xmm0,416(%rsp) - pshufd $0x1e,%xmm5,%xmm4 - movdqa %xmm1,416+16(%rsp) - por %xmm0,%xmm1 -.byte 102,72,15,110,199 - movdqa %xmm2,448(%rsp) - movdqa %xmm3,448+16(%rsp) - por %xmm2,%xmm3 - por %xmm4,%xmm5 - pxor %xmm4,%xmm4 - por %xmm1,%xmm3 - - leaq 64-0(%rsi),%rsi - leaq 32(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - pcmpeqd %xmm4,%xmm5 - pshufd $0xb1,%xmm3,%xmm4 - movq 0(%rbx),%rax - - movq %r12,%r9 - por %xmm3,%xmm4 - pshufd $0,%xmm5,%xmm5 - pshufd $0x1e,%xmm4,%xmm3 - movq %r13,%r10 - por %xmm3,%xmm4 - pxor %xmm3,%xmm3 - movq %r14,%r11 - pcmpeqd %xmm3,%xmm4 - pshufd $0,%xmm4,%xmm4 - - leaq 32-0(%rsp),%rsi - movq %r15,%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 320(%rsp),%rbx - leaq 64(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 384(%rsp),%rax - leaq 384(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 288(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 448(%rsp),%rax - leaq 448(%rsp),%rbx - movq 0+32(%rsp),%r9 - movq 8+32(%rsp),%r10 - leaq 0+32(%rsp),%rsi - movq 16+32(%rsp),%r11 - movq 24+32(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 352(%rsp),%rbx - leaq 96(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+64(%rsp),%rax - movq 8+64(%rsp),%r14 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r15 - movq 24+64(%rsp),%r8 - leaq 128(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 0+96(%rsp),%rax - movq 8+96(%rsp),%r14 - leaq 0+96(%rsp),%rsi - movq 16+96(%rsp),%r15 - movq 24+96(%rsp),%r8 - leaq 192(%rsp),%rdi - call __ecp_nistz256_sqr_montq - - movq 128(%rsp),%rax - leaq 128(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 160(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 320(%rsp),%rax - leaq 320(%rsp),%rbx - movq 0+128(%rsp),%r9 - movq 8+128(%rsp),%r10 - leaq 0+128(%rsp),%rsi - movq 16+128(%rsp),%r11 - movq 24+128(%rsp),%r12 - leaq 0(%rsp),%rdi - call __ecp_nistz256_mul_montq - - - - - xorq %r11,%r11 - addq %r12,%r12 - leaq 192(%rsp),%rsi - adcq %r13,%r13 - movq %r12,%rax - adcq %r8,%r8 - adcq %r9,%r9 - movq %r13,%rbp - adcq $0,%r11 - - subq $-1,%r12 - movq %r8,%rcx - sbbq %r14,%r13 - sbbq $0,%r8 - movq %r9,%r10 - sbbq %r15,%r9 - sbbq $0,%r11 - - cmovcq %rax,%r12 - movq 0(%rsi),%rax - cmovcq %rbp,%r13 - movq 8(%rsi),%rbp - cmovcq %rcx,%r8 - movq 16(%rsi),%rcx - cmovcq %r10,%r9 - movq 24(%rsi),%r10 - - call __ecp_nistz256_subq - - leaq 160(%rsp),%rbx - leaq 224(%rsp),%rdi - call __ecp_nistz256_sub_fromq - - movq 0+0(%rsp),%rax - movq 0+8(%rsp),%rbp - movq 0+16(%rsp),%rcx - movq 0+24(%rsp),%r10 - leaq 64(%rsp),%rdi - - call __ecp_nistz256_subq - - movq %r12,0(%rdi) - movq %r13,8(%rdi) - movq %r8,16(%rdi) - movq %r9,24(%rdi) - movq 352(%rsp),%rax - leaq 352(%rsp),%rbx - movq 0+160(%rsp),%r9 - movq 8+160(%rsp),%r10 - leaq 0+160(%rsp),%rsi - movq 16+160(%rsp),%r11 - movq 24+160(%rsp),%r12 - leaq 32(%rsp),%rdi - call __ecp_nistz256_mul_montq - - movq 96(%rsp),%rax - leaq 96(%rsp),%rbx - movq 0+64(%rsp),%r9 - movq 8+64(%rsp),%r10 - leaq 0+64(%rsp),%rsi - movq 16+64(%rsp),%r11 - movq 24+64(%rsp),%r12 - leaq 64(%rsp),%rdi - call __ecp_nistz256_mul_montq - - leaq 32(%rsp),%rbx - leaq 256(%rsp),%rdi - call __ecp_nistz256_sub_fromq - -.byte 102,72,15,126,199 - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 288(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 288+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand L$ONE_mont(%rip),%xmm2 - pand L$ONE_mont+16(%rip),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 384(%rsp),%xmm2 - pand 384+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,64(%rdi) - movdqu %xmm3,80(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 224(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 224+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 416(%rsp),%xmm2 - pand 416+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 320(%rsp),%xmm2 - pand 320+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,0(%rdi) - movdqu %xmm3,16(%rdi) - - movdqa %xmm5,%xmm0 - movdqa %xmm5,%xmm1 - pandn 256(%rsp),%xmm0 - movdqa %xmm5,%xmm2 - pandn 256+16(%rsp),%xmm1 - movdqa %xmm5,%xmm3 - pand 448(%rsp),%xmm2 - pand 448+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - - movdqa %xmm4,%xmm0 - movdqa %xmm4,%xmm1 - pandn %xmm2,%xmm0 - movdqa %xmm4,%xmm2 - pandn %xmm3,%xmm1 - movdqa %xmm4,%xmm3 - pand 352(%rsp),%xmm2 - pand 352+16(%rsp),%xmm3 - por %xmm0,%xmm2 - por %xmm1,%xmm3 - movdqu %xmm2,32(%rdi) - movdqu %xmm3,48(%rdi) - - addq $480+8,%rsp - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %rbx - popq %rbp - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/md5/md5-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/md5/md5-x86_64.s deleted file mode 100644 index 5b1f44ea01a076..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/md5/md5-x86_64.s +++ /dev/null @@ -1,667 +0,0 @@ -.text -.p2align 4 - -.globl _md5_block_asm_data_order - -_md5_block_asm_data_order: - pushq %rbp - pushq %rbx - pushq %r12 - pushq %r14 - pushq %r15 -L$prologue: - - - - - movq %rdi,%rbp - shlq $6,%rdx - leaq (%rsi,%rdx,1),%rdi - movl 0(%rbp),%eax - movl 4(%rbp),%ebx - movl 8(%rbp),%ecx - movl 12(%rbp),%edx - - - - - - - - cmpq %rdi,%rsi - je L$end - - -L$loop: - movl %eax,%r8d - movl %ebx,%r9d - movl %ecx,%r14d - movl %edx,%r15d - movl 0(%rsi),%r10d - movl %edx,%r11d - xorl %ecx,%r11d - leal -680876936(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 4(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -389564586(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 8(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal 606105819(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 12(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1044525330(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 16(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal -176418897(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 20(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal 1200080426(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 24(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1473231341(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 28(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -45705983(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 32(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1770035416(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 36(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -1958414417(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 40(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -42063(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 44(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal -1990404162(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 48(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - xorl %ecx,%r11d - leal 1804603682(%rax,%r10,1),%eax - andl %ebx,%r11d - xorl %edx,%r11d - movl 52(%rsi),%r10d - addl %r11d,%eax - roll $7,%eax - movl %ecx,%r11d - addl %ebx,%eax - xorl %ebx,%r11d - leal -40341101(%rdx,%r10,1),%edx - andl %eax,%r11d - xorl %ecx,%r11d - movl 56(%rsi),%r10d - addl %r11d,%edx - roll $12,%edx - movl %ebx,%r11d - addl %eax,%edx - xorl %eax,%r11d - leal -1502002290(%rcx,%r10,1),%ecx - andl %edx,%r11d - xorl %ebx,%r11d - movl 60(%rsi),%r10d - addl %r11d,%ecx - roll $17,%ecx - movl %eax,%r11d - addl %edx,%ecx - xorl %edx,%r11d - leal 1236535329(%rbx,%r10,1),%ebx - andl %ecx,%r11d - xorl %eax,%r11d - movl 0(%rsi),%r10d - addl %r11d,%ebx - roll $22,%ebx - movl %edx,%r11d - addl %ecx,%ebx - movl 4(%rsi),%r10d - movl %edx,%r11d - movl %edx,%r12d - notl %r11d - leal -165796510(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 24(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1069501632(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 44(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 643717713(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -373897302(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 20(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -701558691(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 40(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal 38016083(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 60(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -660478335(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 16(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -405537848(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 36(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal 568446438(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 56(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -1019803690(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 12(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal -187363961(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 32(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal 1163531501(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 52(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - notl %r11d - leal -1444681467(%rax,%r10,1),%eax - andl %ebx,%r12d - andl %ecx,%r11d - movl 8(%rsi),%r10d - orl %r11d,%r12d - movl %ecx,%r11d - addl %r12d,%eax - movl %ecx,%r12d - roll $5,%eax - addl %ebx,%eax - notl %r11d - leal -51403784(%rdx,%r10,1),%edx - andl %eax,%r12d - andl %ebx,%r11d - movl 28(%rsi),%r10d - orl %r11d,%r12d - movl %ebx,%r11d - addl %r12d,%edx - movl %ebx,%r12d - roll $9,%edx - addl %eax,%edx - notl %r11d - leal 1735328473(%rcx,%r10,1),%ecx - andl %edx,%r12d - andl %eax,%r11d - movl 48(%rsi),%r10d - orl %r11d,%r12d - movl %eax,%r11d - addl %r12d,%ecx - movl %eax,%r12d - roll $14,%ecx - addl %edx,%ecx - notl %r11d - leal -1926607734(%rbx,%r10,1),%ebx - andl %ecx,%r12d - andl %edx,%r11d - movl 0(%rsi),%r10d - orl %r11d,%r12d - movl %edx,%r11d - addl %r12d,%ebx - movl %edx,%r12d - roll $20,%ebx - addl %ecx,%ebx - movl 20(%rsi),%r10d - movl %ecx,%r11d - leal -378558(%rax,%r10,1),%eax - movl 32(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -2022574463(%rdx,%r10,1),%edx - movl 44(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 1839030562(%rcx,%r10,1),%ecx - movl 56(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -35309556(%rbx,%r10,1),%ebx - movl 4(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -1530992060(%rax,%r10,1),%eax - movl 16(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal 1272893353(%rdx,%r10,1),%edx - movl 28(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -155497632(%rcx,%r10,1),%ecx - movl 40(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -1094730640(%rbx,%r10,1),%ebx - movl 52(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal 681279174(%rax,%r10,1),%eax - movl 0(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -358537222(%rdx,%r10,1),%edx - movl 12(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal -722521979(%rcx,%r10,1),%ecx - movl 24(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal 76029189(%rbx,%r10,1),%ebx - movl 36(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - leal -640364487(%rax,%r10,1),%eax - movl 48(%rsi),%r10d - xorl %edx,%r11d - xorl %ebx,%r11d - addl %r11d,%eax - roll $4,%eax - movl %ebx,%r11d - addl %ebx,%eax - leal -421815835(%rdx,%r10,1),%edx - movl 60(%rsi),%r10d - xorl %ecx,%r11d - xorl %eax,%r11d - addl %r11d,%edx - roll $11,%edx - movl %eax,%r11d - addl %eax,%edx - leal 530742520(%rcx,%r10,1),%ecx - movl 8(%rsi),%r10d - xorl %ebx,%r11d - xorl %edx,%r11d - addl %r11d,%ecx - roll $16,%ecx - movl %edx,%r11d - addl %edx,%ecx - leal -995338651(%rbx,%r10,1),%ebx - movl 0(%rsi),%r10d - xorl %eax,%r11d - xorl %ecx,%r11d - addl %r11d,%ebx - roll $23,%ebx - movl %ecx,%r11d - addl %ecx,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - xorl %edx,%r11d - leal -198630844(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 28(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal 1126891415(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 56(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1416354905(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 20(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -57434055(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 48(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1700485571(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 12(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1894986606(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 40(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1051523(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 4(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -2054922799(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 32(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal 1873313359(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 60(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -30611744(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 24(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal -1560198380(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 52(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal 1309151649(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 16(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - leal -145523070(%rax,%r10,1),%eax - orl %ebx,%r11d - xorl %ecx,%r11d - addl %r11d,%eax - movl 44(%rsi),%r10d - movl $0xffffffff,%r11d - roll $6,%eax - xorl %ecx,%r11d - addl %ebx,%eax - leal -1120210379(%rdx,%r10,1),%edx - orl %eax,%r11d - xorl %ebx,%r11d - addl %r11d,%edx - movl 8(%rsi),%r10d - movl $0xffffffff,%r11d - roll $10,%edx - xorl %ebx,%r11d - addl %eax,%edx - leal 718787259(%rcx,%r10,1),%ecx - orl %edx,%r11d - xorl %eax,%r11d - addl %r11d,%ecx - movl 36(%rsi),%r10d - movl $0xffffffff,%r11d - roll $15,%ecx - xorl %eax,%r11d - addl %edx,%ecx - leal -343485551(%rbx,%r10,1),%ebx - orl %ecx,%r11d - xorl %edx,%r11d - addl %r11d,%ebx - movl 0(%rsi),%r10d - movl $0xffffffff,%r11d - roll $21,%ebx - xorl %edx,%r11d - addl %ecx,%ebx - - addl %r8d,%eax - addl %r9d,%ebx - addl %r14d,%ecx - addl %r15d,%edx - - - addq $64,%rsi - cmpq %rdi,%rsi - jb L$loop - - -L$end: - movl %eax,0(%rbp) - movl %ebx,4(%rbp) - movl %ecx,8(%rbp) - movl %edx,12(%rbp) - - movq (%rsp),%r15 - movq 8(%rsp),%r14 - movq 16(%rsp),%r12 - movq 24(%rsp),%rbx - movq 32(%rsp),%rbp - addq $40,%rsp -L$epilogue: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/modes/aesni-gcm-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/modes/aesni-gcm-x86_64.s deleted file mode 100644 index e2bf1bb53a19be..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/modes/aesni-gcm-x86_64.s +++ /dev/null @@ -1,14 +0,0 @@ -.text - -.globl _aesni_gcm_encrypt - -_aesni_gcm_encrypt: - xorl %eax,%eax - .byte 0xf3,0xc3 - - -.globl _aesni_gcm_decrypt - -_aesni_gcm_decrypt: - xorl %eax,%eax - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/modes/ghash-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/modes/ghash-x86_64.s deleted file mode 100644 index ba706df1d14685..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/modes/ghash-x86_64.s +++ /dev/null @@ -1,1318 +0,0 @@ -.text - - -.globl _gcm_gmult_4bit - -.p2align 4 -_gcm_gmult_4bit: - pushq %rbx - pushq %rbp - pushq %r12 -L$gmult_prologue: - - movzbq 15(%rdi),%r8 - leaq L$rem_4bit(%rip),%r11 - xorq %rax,%rax - xorq %rbx,%rbx - movb %r8b,%al - movb %r8b,%bl - shlb $4,%al - movq $14,%rcx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - movq %r8,%rdx - jmp L$oop1 - -.p2align 4 -L$oop1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - movb (%rdi,%rcx,1),%al - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - movb %al,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - shlb $4,%al - xorq %r10,%r8 - decq %rcx - js L$break1 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - jmp L$oop1 - -.p2align 4 -L$break1: - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rax,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rax,1),%r9 - andb $0xf0,%bl - xorq (%r11,%rdx,8),%r9 - movq %r8,%rdx - xorq %r10,%r8 - - shrq $4,%r8 - andq $0xf,%rdx - movq %r9,%r10 - shrq $4,%r9 - xorq 8(%rsi,%rbx,1),%r8 - shlq $60,%r10 - xorq (%rsi,%rbx,1),%r9 - xorq %r10,%r8 - xorq (%r11,%rdx,8),%r9 - - bswapq %r8 - bswapq %r9 - movq %r8,8(%rdi) - movq %r9,(%rdi) - - movq 16(%rsp),%rbx - leaq 24(%rsp),%rsp -L$gmult_epilogue: - .byte 0xf3,0xc3 - -.globl _gcm_ghash_4bit - -.p2align 4 -_gcm_ghash_4bit: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - subq $280,%rsp -L$ghash_prologue: - movq %rdx,%r14 - movq %rcx,%r15 - subq $-128,%rsi - leaq 16+128(%rsp),%rbp - xorl %edx,%edx - movq 0+0-128(%rsi),%r8 - movq 0+8-128(%rsi),%rax - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq 16+0-128(%rsi),%r9 - shlb $4,%dl - movq 16+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,0(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,0(%rbp) - movq 32+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,0-128(%rbp) - movq 32+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,1(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,8(%rbp) - movq 48+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,8-128(%rbp) - movq 48+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,2(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,16(%rbp) - movq 64+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,16-128(%rbp) - movq 64+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,3(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,24(%rbp) - movq 80+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,24-128(%rbp) - movq 80+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,4(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,32(%rbp) - movq 96+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,32-128(%rbp) - movq 96+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,5(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,40(%rbp) - movq 112+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,40-128(%rbp) - movq 112+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,6(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,48(%rbp) - movq 128+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,48-128(%rbp) - movq 128+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,7(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,56(%rbp) - movq 144+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,56-128(%rbp) - movq 144+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,8(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,64(%rbp) - movq 160+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,64-128(%rbp) - movq 160+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,9(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,72(%rbp) - movq 176+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,72-128(%rbp) - movq 176+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,10(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,80(%rbp) - movq 192+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,80-128(%rbp) - movq 192+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,11(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,88(%rbp) - movq 208+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,88-128(%rbp) - movq 208+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,12(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,96(%rbp) - movq 224+0-128(%rsi),%r8 - shlb $4,%dl - movq %rax,96-128(%rbp) - movq 224+8-128(%rsi),%rax - shlq $60,%r10 - movb %dl,13(%rsp) - orq %r10,%rbx - movb %al,%dl - shrq $4,%rax - movq %r8,%r10 - shrq $4,%r8 - movq %r9,104(%rbp) - movq 240+0-128(%rsi),%r9 - shlb $4,%dl - movq %rbx,104-128(%rbp) - movq 240+8-128(%rsi),%rbx - shlq $60,%r10 - movb %dl,14(%rsp) - orq %r10,%rax - movb %bl,%dl - shrq $4,%rbx - movq %r9,%r10 - shrq $4,%r9 - movq %r8,112(%rbp) - shlb $4,%dl - movq %rax,112-128(%rbp) - shlq $60,%r10 - movb %dl,15(%rsp) - orq %r10,%rbx - movq %r9,120(%rbp) - movq %rbx,120-128(%rbp) - addq $-128,%rsi - movq 8(%rdi),%r8 - movq 0(%rdi),%r9 - addq %r14,%r15 - leaq L$rem_8bit(%rip),%r11 - jmp L$outer_loop -.p2align 4 -L$outer_loop: - xorq (%r14),%r9 - movq 8(%r14),%rdx - leaq 16(%r14),%r14 - xorq %r8,%rdx - movq %r9,(%rdi) - movq %rdx,8(%rdi) - shrq $32,%rdx - xorq %rax,%rax - roll $8,%edx - movb %dl,%al - movzbl %dl,%ebx - shlb $4,%al - shrl $4,%ebx - roll $8,%edx - movq 8(%rsi,%rax,1),%r8 - movq (%rsi,%rax,1),%r9 - movb %dl,%al - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - xorq %r8,%r12 - movq %r9,%r10 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 8(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl 0(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - shrl $4,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r12,2),%r12 - movzbl %dl,%ebx - shlb $4,%al - movzbq (%rsp,%rcx,1),%r13 - shrl $4,%ebx - shlq $48,%r12 - xorq %r8,%r13 - movq %r9,%r10 - xorq %r12,%r9 - shrq $8,%r8 - movzbq %r13b,%r13 - shrq $8,%r9 - xorq -128(%rbp,%rcx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rcx,8),%r9 - roll $8,%edx - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - movb %dl,%al - xorq %r10,%r8 - movzwq (%r11,%r13,2),%r13 - movzbl %dl,%ecx - shlb $4,%al - movzbq (%rsp,%rbx,1),%r12 - andl $240,%ecx - shlq $48,%r13 - xorq %r8,%r12 - movq %r9,%r10 - xorq %r13,%r9 - shrq $8,%r8 - movzbq %r12b,%r12 - movl -4(%rdi),%edx - shrq $8,%r9 - xorq -128(%rbp,%rbx,8),%r8 - shlq $56,%r10 - xorq (%rbp,%rbx,8),%r9 - movzwq (%r11,%r12,2),%r12 - xorq 8(%rsi,%rax,1),%r8 - xorq (%rsi,%rax,1),%r9 - shlq $48,%r12 - xorq %r10,%r8 - xorq %r12,%r9 - movzbq %r8b,%r13 - shrq $4,%r8 - movq %r9,%r10 - shlb $4,%r13b - shrq $4,%r9 - xorq 8(%rsi,%rcx,1),%r8 - movzwq (%r11,%r13,2),%r13 - shlq $60,%r10 - xorq (%rsi,%rcx,1),%r9 - xorq %r10,%r8 - shlq $48,%r13 - bswapq %r8 - xorq %r13,%r9 - bswapq %r9 - cmpq %r15,%r14 - jb L$outer_loop - movq %r8,8(%rdi) - movq %r9,(%rdi) - - leaq 280(%rsp),%rsi - movq 0(%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$ghash_epilogue: - .byte 0xf3,0xc3 - -.globl _gcm_init_clmul - -.p2align 4 -_gcm_init_clmul: -L$_init_clmul: - movdqu (%rsi),%xmm2 - pshufd $78,%xmm2,%xmm2 - - - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - - - pand L$0x1c2_polynomial(%rip),%xmm5 - pxor %xmm5,%xmm2 - - - pshufd $78,%xmm2,%xmm6 - movdqa %xmm2,%xmm0 - pxor %xmm2,%xmm6 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,0(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%rdi) - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm5 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,222,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm5,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm5,%xmm3 - movdqu %xmm5,48(%rdi) - pxor %xmm0,%xmm4 - movdqu %xmm0,64(%rdi) -.byte 102,15,58,15,227,8 - movdqu %xmm4,80(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_gmult_clmul - -.p2align 4 -_gcm_gmult_clmul: -L$_gmult_clmul: - movdqu (%rdi),%xmm0 - movdqa L$bswap_mask(%rip),%xmm5 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm4 -.byte 102,15,56,0,197 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_ghash_clmul - -.p2align 5 -_gcm_ghash_clmul: -L$_ghash_clmul: - movdqa L$bswap_mask(%rip),%xmm10 - - movdqu (%rdi),%xmm0 - movdqu (%rsi),%xmm2 - movdqu 32(%rsi),%xmm7 -.byte 102,65,15,56,0,194 - - subq $0x10,%rcx - jz L$odd_tail - - movdqu 16(%rsi),%xmm6 - movl _OPENSSL_ia32cap_P+4(%rip),%eax - cmpq $0x30,%rcx - jb L$skip4x - - andl $71303168,%eax - cmpl $4194304,%eax - je L$skip4x - - subq $0x30,%rcx - movq $0xA040608020C0E000,%rax - movdqu 48(%rsi),%xmm14 - movdqu 64(%rsi),%xmm15 - - - - - movdqu 48(%rdx),%xmm3 - movdqu 32(%rdx),%xmm11 -.byte 102,65,15,56,0,218 -.byte 102,69,15,56,0,218 - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm11,%xmm12 -.byte 102,68,15,58,68,222,0 -.byte 102,68,15,58,68,238,17 -.byte 102,68,15,58,68,231,16 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 - xorps %xmm12,%xmm4 - - movdqu 16(%rdx),%xmm11 - movdqu 0(%rdx),%xmm8 -.byte 102,69,15,56,0,218 -.byte 102,69,15,56,0,194 - movdqa %xmm11,%xmm13 - pshufd $78,%xmm11,%xmm12 - pxor %xmm8,%xmm0 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 -.byte 102,69,15,58,68,238,17 -.byte 102,68,15,58,68,231,0 - xorps %xmm11,%xmm3 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jc L$tail4x - - jmp L$mod4_loop -.p2align 5 -L$mod4_loop: -.byte 102,65,15,58,68,199,0 - xorps %xmm12,%xmm4 - movdqu 48(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,65,15,58,68,207,17 - xorps %xmm3,%xmm0 - movdqu 32(%rdx),%xmm3 - movdqa %xmm11,%xmm13 -.byte 102,68,15,58,68,199,16 - pshufd $78,%xmm11,%xmm12 - xorps %xmm5,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,65,15,56,0,218 - movups 32(%rsi),%xmm7 - xorps %xmm4,%xmm8 -.byte 102,68,15,58,68,218,0 - pshufd $78,%xmm3,%xmm4 - - pxor %xmm0,%xmm8 - movdqa %xmm3,%xmm5 - pxor %xmm1,%xmm8 - pxor %xmm3,%xmm4 - movdqa %xmm8,%xmm9 -.byte 102,68,15,58,68,234,17 - pslldq $8,%xmm8 - psrldq $8,%xmm9 - pxor %xmm8,%xmm0 - movdqa L$7_mask(%rip),%xmm8 - pxor %xmm9,%xmm1 -.byte 102,76,15,110,200 - - pand %xmm0,%xmm8 -.byte 102,69,15,56,0,200 - pxor %xmm0,%xmm9 -.byte 102,68,15,58,68,231,0 - psllq $57,%xmm9 - movdqa %xmm9,%xmm8 - pslldq $8,%xmm9 -.byte 102,15,58,68,222,0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - movdqu 0(%rdx),%xmm8 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,238,17 - xorps %xmm11,%xmm3 - movdqu 16(%rdx),%xmm11 -.byte 102,69,15,56,0,218 -.byte 102,15,58,68,231,16 - xorps %xmm13,%xmm5 - movups 80(%rsi),%xmm7 -.byte 102,69,15,56,0,194 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - - movdqa %xmm11,%xmm13 - pxor %xmm12,%xmm4 - pshufd $78,%xmm11,%xmm12 - pxor %xmm9,%xmm0 - pxor %xmm8,%xmm1 - pxor %xmm11,%xmm12 -.byte 102,69,15,58,68,222,0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - movdqa %xmm0,%xmm1 -.byte 102,69,15,58,68,238,17 - xorps %xmm11,%xmm3 - pshufd $78,%xmm0,%xmm8 - pxor %xmm0,%xmm8 - -.byte 102,68,15,58,68,231,0 - xorps %xmm13,%xmm5 - - leaq 64(%rdx),%rdx - subq $0x40,%rcx - jnc L$mod4_loop - -L$tail4x: -.byte 102,65,15,58,68,199,0 -.byte 102,65,15,58,68,207,17 -.byte 102,68,15,58,68,199,16 - xorps %xmm12,%xmm4 - xorps %xmm3,%xmm0 - xorps %xmm5,%xmm1 - pxor %xmm0,%xmm1 - pxor %xmm4,%xmm8 - - pxor %xmm1,%xmm8 - pxor %xmm0,%xmm1 - - movdqa %xmm8,%xmm9 - psrldq $8,%xmm8 - pslldq $8,%xmm9 - pxor %xmm8,%xmm1 - pxor %xmm9,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - addq $0x40,%rcx - jz L$done - movdqu 32(%rsi),%xmm7 - subq $0x10,%rcx - jz L$odd_tail -L$skip4x: - - - - - - movdqu (%rdx),%xmm8 - movdqu 16(%rdx),%xmm3 -.byte 102,69,15,56,0,194 -.byte 102,65,15,56,0,218 - pxor %xmm8,%xmm0 - - movdqa %xmm3,%xmm5 - pshufd $78,%xmm3,%xmm4 - pxor %xmm3,%xmm4 -.byte 102,15,58,68,218,0 -.byte 102,15,58,68,234,17 -.byte 102,15,58,68,231,0 - - leaq 32(%rdx),%rdx - nop - subq $0x20,%rcx - jbe L$even_tail - nop - jmp L$mod_loop - -.p2align 5 -L$mod_loop: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - movdqu (%rdx),%xmm9 - pxor %xmm0,%xmm8 -.byte 102,69,15,56,0,202 - movdqu 16(%rdx),%xmm3 - - pxor %xmm1,%xmm8 - pxor %xmm9,%xmm1 - pxor %xmm8,%xmm4 -.byte 102,65,15,56,0,218 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm3,%xmm5 - - movdqa %xmm0,%xmm9 - movdqa %xmm0,%xmm8 - psllq $5,%xmm0 - pxor %xmm0,%xmm8 -.byte 102,15,58,68,218,0 - psllq $1,%xmm0 - pxor %xmm8,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm8 - pslldq $8,%xmm0 - psrldq $8,%xmm8 - pxor %xmm9,%xmm0 - pshufd $78,%xmm5,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm5,%xmm4 - - movdqa %xmm0,%xmm9 - psrlq $1,%xmm0 -.byte 102,15,58,68,234,17 - pxor %xmm9,%xmm1 - pxor %xmm0,%xmm9 - psrlq $5,%xmm0 - pxor %xmm9,%xmm0 - leaq 32(%rdx),%rdx - psrlq $1,%xmm0 -.byte 102,15,58,68,231,0 - pxor %xmm1,%xmm0 - - subq $0x20,%rcx - ja L$mod_loop - -L$even_tail: - movdqa %xmm0,%xmm1 - movdqa %xmm4,%xmm8 - pshufd $78,%xmm0,%xmm4 - pxor %xmm0,%xmm4 - -.byte 102,15,58,68,198,0 -.byte 102,15,58,68,206,17 -.byte 102,15,58,68,231,16 - - pxor %xmm3,%xmm0 - pxor %xmm5,%xmm1 - pxor %xmm0,%xmm8 - pxor %xmm1,%xmm8 - pxor %xmm8,%xmm4 - movdqa %xmm4,%xmm8 - psrldq $8,%xmm8 - pslldq $8,%xmm4 - pxor %xmm8,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testq %rcx,%rcx - jnz L$done - -L$odd_tail: - movdqu (%rdx),%xmm8 -.byte 102,69,15,56,0,194 - pxor %xmm8,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,223,0 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - - - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -L$done: -.byte 102,65,15,56,0,194 - movdqu %xmm0,(%rdi) - .byte 0xf3,0xc3 - -.globl _gcm_init_avx - -.p2align 5 -_gcm_init_avx: - jmp L$_init_clmul - -.globl _gcm_gmult_avx - -.p2align 5 -_gcm_gmult_avx: - jmp L$_gmult_clmul - -.globl _gcm_ghash_avx - -.p2align 5 -_gcm_ghash_avx: - jmp L$_ghash_clmul - -.p2align 6 -L$bswap_mask: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -L$0x1c2_polynomial: -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 -L$7_mask: -.long 7,0,7,0 -L$7_mask_poly: -.long 7,0,450,0 -.p2align 6 - -L$rem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 - -L$rem_8bit: -.value 0x0000,0x01C2,0x0384,0x0246,0x0708,0x06CA,0x048C,0x054E -.value 0x0E10,0x0FD2,0x0D94,0x0C56,0x0918,0x08DA,0x0A9C,0x0B5E -.value 0x1C20,0x1DE2,0x1FA4,0x1E66,0x1B28,0x1AEA,0x18AC,0x196E -.value 0x1230,0x13F2,0x11B4,0x1076,0x1538,0x14FA,0x16BC,0x177E -.value 0x3840,0x3982,0x3BC4,0x3A06,0x3F48,0x3E8A,0x3CCC,0x3D0E -.value 0x3650,0x3792,0x35D4,0x3416,0x3158,0x309A,0x32DC,0x331E -.value 0x2460,0x25A2,0x27E4,0x2626,0x2368,0x22AA,0x20EC,0x212E -.value 0x2A70,0x2BB2,0x29F4,0x2836,0x2D78,0x2CBA,0x2EFC,0x2F3E -.value 0x7080,0x7142,0x7304,0x72C6,0x7788,0x764A,0x740C,0x75CE -.value 0x7E90,0x7F52,0x7D14,0x7CD6,0x7998,0x785A,0x7A1C,0x7BDE -.value 0x6CA0,0x6D62,0x6F24,0x6EE6,0x6BA8,0x6A6A,0x682C,0x69EE -.value 0x62B0,0x6372,0x6134,0x60F6,0x65B8,0x647A,0x663C,0x67FE -.value 0x48C0,0x4902,0x4B44,0x4A86,0x4FC8,0x4E0A,0x4C4C,0x4D8E -.value 0x46D0,0x4712,0x4554,0x4496,0x41D8,0x401A,0x425C,0x439E -.value 0x54E0,0x5522,0x5764,0x56A6,0x53E8,0x522A,0x506C,0x51AE -.value 0x5AF0,0x5B32,0x5974,0x58B6,0x5DF8,0x5C3A,0x5E7C,0x5FBE -.value 0xE100,0xE0C2,0xE284,0xE346,0xE608,0xE7CA,0xE58C,0xE44E -.value 0xEF10,0xEED2,0xEC94,0xED56,0xE818,0xE9DA,0xEB9C,0xEA5E -.value 0xFD20,0xFCE2,0xFEA4,0xFF66,0xFA28,0xFBEA,0xF9AC,0xF86E -.value 0xF330,0xF2F2,0xF0B4,0xF176,0xF438,0xF5FA,0xF7BC,0xF67E -.value 0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A,0xDDCC,0xDC0E -.value 0xD750,0xD692,0xD4D4,0xD516,0xD058,0xD19A,0xD3DC,0xD21E -.value 0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E -.value 0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE3E -.value 0x9180,0x9042,0x9204,0x93C6,0x9688,0x974A,0x950C,0x94CE -.value 0x9F90,0x9E52,0x9C14,0x9DD6,0x9898,0x995A,0x9B1C,0x9ADE -.value 0x8DA0,0x8C62,0x8E24,0x8FE6,0x8AA8,0x8B6A,0x892C,0x88EE -.value 0x83B0,0x8272,0x8034,0x81F6,0x84B8,0x857A,0x873C,0x86FE -.value 0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A,0xAD4C,0xAC8E -.value 0xA7D0,0xA612,0xA454,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E -.value 0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE -.value 0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBEBE - -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-mb-x86_64.s deleted file mode 100644 index 4976be6d7b9438..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-mb-x86_64.s +++ /dev/null @@ -1,2934 +0,0 @@ -.text - - - -.globl _sha1_multi_block - -.p2align 5 -_sha1_multi_block: - movq _OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body: - leaq K_XX_XX(%rip),%rbp - leaq 256(%rsp),%rbx - -L$oop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done - - movdqu 0(%rdi),%xmm10 - leaq 128(%rsp),%rax - movdqu 32(%rdi),%xmm11 - movdqu 64(%rdi),%xmm12 - movdqu 96(%rdi),%xmm13 - movdqu 128(%rdi),%xmm14 - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - jmp L$oop - -.p2align 5 -L$oop: - movd (%r8),%xmm0 - leaq 64(%r8),%r8 - movd (%r9),%xmm2 - leaq 64(%r9),%r9 - movd (%r10),%xmm3 - leaq 64(%r10),%r10 - movd (%r11),%xmm4 - leaq 64(%r11),%r11 - punpckldq %xmm3,%xmm0 - movd -60(%r8),%xmm1 - punpckldq %xmm4,%xmm2 - movd -60(%r9),%xmm9 - punpckldq %xmm2,%xmm0 - movd -60(%r10),%xmm8 -.byte 102,15,56,0,197 - movd -60(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,0-128(%rax) - paddd %xmm0,%xmm14 - movd -56(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -56(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -56(%r10),%xmm8 - por %xmm7,%xmm11 - movd -56(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,16-128(%rax) - paddd %xmm1,%xmm13 - movd -52(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -52(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -52(%r10),%xmm8 - por %xmm7,%xmm10 - movd -52(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,32-128(%rax) - paddd %xmm2,%xmm12 - movd -48(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -48(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -48(%r10),%xmm8 - por %xmm7,%xmm14 - movd -48(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,48-128(%rax) - paddd %xmm3,%xmm11 - movd -44(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -44(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -44(%r10),%xmm8 - por %xmm7,%xmm13 - movd -44(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,64-128(%rax) - paddd %xmm4,%xmm10 - movd -40(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -40(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -40(%r10),%xmm8 - por %xmm7,%xmm12 - movd -40(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,80-128(%rax) - paddd %xmm0,%xmm14 - movd -36(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -36(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -36(%r10),%xmm8 - por %xmm7,%xmm11 - movd -36(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,96-128(%rax) - paddd %xmm1,%xmm13 - movd -32(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -32(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -32(%r10),%xmm8 - por %xmm7,%xmm10 - movd -32(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,112-128(%rax) - paddd %xmm2,%xmm12 - movd -28(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -28(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -28(%r10),%xmm8 - por %xmm7,%xmm14 - movd -28(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,128-128(%rax) - paddd %xmm3,%xmm11 - movd -24(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -24(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -24(%r10),%xmm8 - por %xmm7,%xmm13 - movd -24(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,144-128(%rax) - paddd %xmm4,%xmm10 - movd -20(%r8),%xmm1 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - - por %xmm9,%xmm8 - movd -20(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - movd -20(%r10),%xmm8 - por %xmm7,%xmm12 - movd -20(%r11),%xmm7 - punpckldq %xmm8,%xmm1 - movdqa %xmm10,%xmm8 - paddd %xmm15,%xmm14 - punpckldq %xmm7,%xmm9 - movdqa %xmm11,%xmm7 - movdqa %xmm11,%xmm6 - pslld $5,%xmm8 - pandn %xmm13,%xmm7 - pand %xmm12,%xmm6 - punpckldq %xmm9,%xmm1 - movdqa %xmm10,%xmm9 - - movdqa %xmm0,160-128(%rax) - paddd %xmm0,%xmm14 - movd -16(%r8),%xmm2 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm11,%xmm7 - - por %xmm9,%xmm8 - movd -16(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 -.byte 102,15,56,0,205 - movd -16(%r10),%xmm8 - por %xmm7,%xmm11 - movd -16(%r11),%xmm7 - punpckldq %xmm8,%xmm2 - movdqa %xmm14,%xmm8 - paddd %xmm15,%xmm13 - punpckldq %xmm7,%xmm9 - movdqa %xmm10,%xmm7 - movdqa %xmm10,%xmm6 - pslld $5,%xmm8 - pandn %xmm12,%xmm7 - pand %xmm11,%xmm6 - punpckldq %xmm9,%xmm2 - movdqa %xmm14,%xmm9 - - movdqa %xmm1,176-128(%rax) - paddd %xmm1,%xmm13 - movd -12(%r8),%xmm3 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm10,%xmm7 - - por %xmm9,%xmm8 - movd -12(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 -.byte 102,15,56,0,213 - movd -12(%r10),%xmm8 - por %xmm7,%xmm10 - movd -12(%r11),%xmm7 - punpckldq %xmm8,%xmm3 - movdqa %xmm13,%xmm8 - paddd %xmm15,%xmm12 - punpckldq %xmm7,%xmm9 - movdqa %xmm14,%xmm7 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pandn %xmm11,%xmm7 - pand %xmm10,%xmm6 - punpckldq %xmm9,%xmm3 - movdqa %xmm13,%xmm9 - - movdqa %xmm2,192-128(%rax) - paddd %xmm2,%xmm12 - movd -8(%r8),%xmm4 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm14,%xmm7 - - por %xmm9,%xmm8 - movd -8(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 -.byte 102,15,56,0,221 - movd -8(%r10),%xmm8 - por %xmm7,%xmm14 - movd -8(%r11),%xmm7 - punpckldq %xmm8,%xmm4 - movdqa %xmm12,%xmm8 - paddd %xmm15,%xmm11 - punpckldq %xmm7,%xmm9 - movdqa %xmm13,%xmm7 - movdqa %xmm13,%xmm6 - pslld $5,%xmm8 - pandn %xmm10,%xmm7 - pand %xmm14,%xmm6 - punpckldq %xmm9,%xmm4 - movdqa %xmm12,%xmm9 - - movdqa %xmm3,208-128(%rax) - paddd %xmm3,%xmm11 - movd -4(%r8),%xmm0 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm13,%xmm7 - - por %xmm9,%xmm8 - movd -4(%r9),%xmm9 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 -.byte 102,15,56,0,229 - movd -4(%r10),%xmm8 - por %xmm7,%xmm13 - movdqa 0-128(%rax),%xmm1 - movd -4(%r11),%xmm7 - punpckldq %xmm8,%xmm0 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - punpckldq %xmm7,%xmm9 - movdqa %xmm12,%xmm7 - movdqa %xmm12,%xmm6 - pslld $5,%xmm8 - prefetcht0 63(%r8) - pandn %xmm14,%xmm7 - pand %xmm13,%xmm6 - punpckldq %xmm9,%xmm0 - movdqa %xmm11,%xmm9 - - movdqa %xmm4,224-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - movdqa %xmm12,%xmm7 - prefetcht0 63(%r9) - - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - prefetcht0 63(%r10) - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 -.byte 102,15,56,0,197 - prefetcht0 63(%r11) - por %xmm7,%xmm12 - movdqa 16-128(%rax),%xmm2 - pxor %xmm3,%xmm1 - movdqa 32-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - pxor 128-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - movdqa %xmm11,%xmm7 - pslld $5,%xmm8 - pxor %xmm3,%xmm1 - movdqa %xmm11,%xmm6 - pandn %xmm13,%xmm7 - movdqa %xmm1,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm10,%xmm9 - psrld $31,%xmm5 - paddd %xmm1,%xmm1 - - movdqa %xmm0,240-128(%rax) - paddd %xmm0,%xmm14 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm11,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 48-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - pxor 144-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - movdqa %xmm10,%xmm7 - pslld $5,%xmm8 - pxor %xmm4,%xmm2 - movdqa %xmm10,%xmm6 - pandn %xmm12,%xmm7 - movdqa %xmm2,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm14,%xmm9 - psrld $31,%xmm5 - paddd %xmm2,%xmm2 - - movdqa %xmm1,0-128(%rax) - paddd %xmm1,%xmm13 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm10,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 64-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - pxor 160-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - movdqa %xmm14,%xmm7 - pslld $5,%xmm8 - pxor %xmm0,%xmm3 - movdqa %xmm14,%xmm6 - pandn %xmm11,%xmm7 - movdqa %xmm3,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm13,%xmm9 - psrld $31,%xmm5 - paddd %xmm3,%xmm3 - - movdqa %xmm2,16-128(%rax) - paddd %xmm2,%xmm12 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm14,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 80-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - pxor 176-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - movdqa %xmm13,%xmm7 - pslld $5,%xmm8 - pxor %xmm1,%xmm4 - movdqa %xmm13,%xmm6 - pandn %xmm10,%xmm7 - movdqa %xmm4,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm12,%xmm9 - psrld $31,%xmm5 - paddd %xmm4,%xmm4 - - movdqa %xmm3,32-128(%rax) - paddd %xmm3,%xmm11 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm13,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 96-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - pxor 192-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - movdqa %xmm12,%xmm7 - pslld $5,%xmm8 - pxor %xmm2,%xmm0 - movdqa %xmm12,%xmm6 - pandn %xmm14,%xmm7 - movdqa %xmm0,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm11,%xmm9 - psrld $31,%xmm5 - paddd %xmm0,%xmm0 - - movdqa %xmm4,48-128(%rax) - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - pxor %xmm7,%xmm6 - - movdqa %xmm12,%xmm7 - por %xmm9,%xmm8 - pslld $30,%xmm7 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 0(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 112-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 208-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,64-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 128-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 224-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,80-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 144-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 240-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,96-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 160-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 0-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,112-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 176-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 16-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,128-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 192-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 32-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,144-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 208-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 48-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,160-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 224-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 64-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,176-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 240-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 80-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,192-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 0-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 96-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,208-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 16-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 112-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,224-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 32-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 128-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,240-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 48-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 144-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,0-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 64-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 160-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,16-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 80-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 176-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,32-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 96-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 192-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,48-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 112-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 208-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,64-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 128-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 224-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,80-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 144-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 240-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,96-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 160-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 0-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,112-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 32(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 176-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 16-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,128-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 192-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 32-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,144-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 208-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 48-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,160-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 224-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 64-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,176-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 240-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 80-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,192-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 0-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 96-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,208-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 16-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 112-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,224-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 32-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 128-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,240-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 48-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 144-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,0-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 64-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 160-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,16-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 80-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 176-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,32-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 96-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 192-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,48-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 112-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 208-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,64-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 128-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 224-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,80-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 144-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 240-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,96-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 160-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm7 - pxor 0-128(%rax),%xmm1 - pxor %xmm3,%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - movdqa %xmm10,%xmm9 - pand %xmm12,%xmm7 - - movdqa %xmm13,%xmm6 - movdqa %xmm1,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm14 - pxor %xmm12,%xmm6 - - movdqa %xmm0,112-128(%rax) - paddd %xmm0,%xmm14 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm11,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - paddd %xmm1,%xmm1 - paddd %xmm6,%xmm14 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 176-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm7 - pxor 16-128(%rax),%xmm2 - pxor %xmm4,%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - movdqa %xmm14,%xmm9 - pand %xmm11,%xmm7 - - movdqa %xmm12,%xmm6 - movdqa %xmm2,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm13 - pxor %xmm11,%xmm6 - - movdqa %xmm1,128-128(%rax) - paddd %xmm1,%xmm13 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm10,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - paddd %xmm2,%xmm2 - paddd %xmm6,%xmm13 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 192-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm7 - pxor 32-128(%rax),%xmm3 - pxor %xmm0,%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - movdqa %xmm13,%xmm9 - pand %xmm10,%xmm7 - - movdqa %xmm11,%xmm6 - movdqa %xmm3,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm12 - pxor %xmm10,%xmm6 - - movdqa %xmm2,144-128(%rax) - paddd %xmm2,%xmm12 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm14,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - paddd %xmm3,%xmm3 - paddd %xmm6,%xmm12 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 208-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm7 - pxor 48-128(%rax),%xmm4 - pxor %xmm1,%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - movdqa %xmm12,%xmm9 - pand %xmm14,%xmm7 - - movdqa %xmm10,%xmm6 - movdqa %xmm4,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm11 - pxor %xmm14,%xmm6 - - movdqa %xmm3,160-128(%rax) - paddd %xmm3,%xmm11 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm13,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - paddd %xmm4,%xmm4 - paddd %xmm6,%xmm11 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 224-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm7 - pxor 64-128(%rax),%xmm0 - pxor %xmm2,%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - movdqa %xmm11,%xmm9 - pand %xmm13,%xmm7 - - movdqa %xmm14,%xmm6 - movdqa %xmm0,%xmm5 - psrld $27,%xmm9 - paddd %xmm7,%xmm10 - pxor %xmm13,%xmm6 - - movdqa %xmm4,176-128(%rax) - paddd %xmm4,%xmm10 - por %xmm9,%xmm8 - psrld $31,%xmm5 - pand %xmm12,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - paddd %xmm0,%xmm0 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - movdqa 64(%rbp),%xmm15 - pxor %xmm3,%xmm1 - movdqa 240-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 80-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,192-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 0-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 96-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,208-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 16-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 112-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,224-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 32-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 128-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,240-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 48-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 144-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,0-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 64-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 160-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,16-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 80-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 176-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,32-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 96-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 192-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - movdqa %xmm2,48-128(%rax) - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 112-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 208-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - movdqa %xmm3,64-128(%rax) - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 128-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 224-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - movdqa %xmm4,80-128(%rax) - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 144-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 240-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - movdqa %xmm0,96-128(%rax) - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 160-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 0-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - movdqa %xmm1,112-128(%rax) - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 176-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 16-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 192-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 32-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - pxor %xmm2,%xmm0 - movdqa 208-128(%rax),%xmm2 - - movdqa %xmm11,%xmm8 - movdqa %xmm14,%xmm6 - pxor 48-128(%rax),%xmm0 - paddd %xmm15,%xmm10 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - pxor %xmm2,%xmm0 - psrld $27,%xmm9 - pxor %xmm13,%xmm6 - movdqa %xmm12,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm0,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm10 - paddd %xmm0,%xmm0 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm5,%xmm0 - por %xmm7,%xmm12 - pxor %xmm3,%xmm1 - movdqa 224-128(%rax),%xmm3 - - movdqa %xmm10,%xmm8 - movdqa %xmm13,%xmm6 - pxor 64-128(%rax),%xmm1 - paddd %xmm15,%xmm14 - pslld $5,%xmm8 - pxor %xmm11,%xmm6 - - movdqa %xmm10,%xmm9 - paddd %xmm0,%xmm14 - pxor %xmm3,%xmm1 - psrld $27,%xmm9 - pxor %xmm12,%xmm6 - movdqa %xmm11,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm1,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm14 - paddd %xmm1,%xmm1 - - psrld $2,%xmm11 - paddd %xmm8,%xmm14 - por %xmm5,%xmm1 - por %xmm7,%xmm11 - pxor %xmm4,%xmm2 - movdqa 240-128(%rax),%xmm4 - - movdqa %xmm14,%xmm8 - movdqa %xmm12,%xmm6 - pxor 80-128(%rax),%xmm2 - paddd %xmm15,%xmm13 - pslld $5,%xmm8 - pxor %xmm10,%xmm6 - - movdqa %xmm14,%xmm9 - paddd %xmm1,%xmm13 - pxor %xmm4,%xmm2 - psrld $27,%xmm9 - pxor %xmm11,%xmm6 - movdqa %xmm10,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm2,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm13 - paddd %xmm2,%xmm2 - - psrld $2,%xmm10 - paddd %xmm8,%xmm13 - por %xmm5,%xmm2 - por %xmm7,%xmm10 - pxor %xmm0,%xmm3 - movdqa 0-128(%rax),%xmm0 - - movdqa %xmm13,%xmm8 - movdqa %xmm11,%xmm6 - pxor 96-128(%rax),%xmm3 - paddd %xmm15,%xmm12 - pslld $5,%xmm8 - pxor %xmm14,%xmm6 - - movdqa %xmm13,%xmm9 - paddd %xmm2,%xmm12 - pxor %xmm0,%xmm3 - psrld $27,%xmm9 - pxor %xmm10,%xmm6 - movdqa %xmm14,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm3,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm12 - paddd %xmm3,%xmm3 - - psrld $2,%xmm14 - paddd %xmm8,%xmm12 - por %xmm5,%xmm3 - por %xmm7,%xmm14 - pxor %xmm1,%xmm4 - movdqa 16-128(%rax),%xmm1 - - movdqa %xmm12,%xmm8 - movdqa %xmm10,%xmm6 - pxor 112-128(%rax),%xmm4 - paddd %xmm15,%xmm11 - pslld $5,%xmm8 - pxor %xmm13,%xmm6 - - movdqa %xmm12,%xmm9 - paddd %xmm3,%xmm11 - pxor %xmm1,%xmm4 - psrld $27,%xmm9 - pxor %xmm14,%xmm6 - movdqa %xmm13,%xmm7 - - pslld $30,%xmm7 - movdqa %xmm4,%xmm5 - por %xmm9,%xmm8 - psrld $31,%xmm5 - paddd %xmm6,%xmm11 - paddd %xmm4,%xmm4 - - psrld $2,%xmm13 - paddd %xmm8,%xmm11 - por %xmm5,%xmm4 - por %xmm7,%xmm13 - movdqa %xmm11,%xmm8 - paddd %xmm15,%xmm10 - movdqa %xmm14,%xmm6 - pslld $5,%xmm8 - pxor %xmm12,%xmm6 - - movdqa %xmm11,%xmm9 - paddd %xmm4,%xmm10 - psrld $27,%xmm9 - movdqa %xmm12,%xmm7 - pxor %xmm13,%xmm6 - - pslld $30,%xmm7 - por %xmm9,%xmm8 - paddd %xmm6,%xmm10 - - psrld $2,%xmm12 - paddd %xmm8,%xmm10 - por %xmm7,%xmm12 - movdqa (%rbx),%xmm0 - movl $1,%ecx - cmpl 0(%rbx),%ecx - pxor %xmm8,%xmm8 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm0,%xmm1 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm8,%xmm1 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm1,%xmm0 - cmovgeq %rbp,%r11 - - movdqu 0(%rdi),%xmm6 - pand %xmm1,%xmm10 - movdqu 32(%rdi),%xmm7 - pand %xmm1,%xmm11 - paddd %xmm6,%xmm10 - movdqu 64(%rdi),%xmm8 - pand %xmm1,%xmm12 - paddd %xmm7,%xmm11 - movdqu 96(%rdi),%xmm9 - pand %xmm1,%xmm13 - paddd %xmm8,%xmm12 - movdqu 128(%rdi),%xmm5 - pand %xmm1,%xmm14 - movdqu %xmm10,0(%rdi) - paddd %xmm9,%xmm13 - movdqu %xmm11,32(%rdi) - paddd %xmm5,%xmm14 - movdqu %xmm12,64(%rdi) - movdqu %xmm13,96(%rdi) - movdqu %xmm14,128(%rdi) - - movdqa %xmm0,(%rbx) - movdqa 96(%rbp),%xmm5 - movdqa -32(%rbp),%xmm15 - decl %edx - jnz L$oop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande - -L$done: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 64(%rdi),%rdi - movq %rax,272(%rsp) -L$body_shaext: - leaq 256(%rsp),%rbx - movdqa K_XX_XX+128(%rip),%xmm3 - -L$oop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz L$done_shaext - - movq 0-64(%rdi),%xmm0 - movq 32-64(%rdi),%xmm4 - movq 64-64(%rdi),%xmm5 - movq 96-64(%rdi),%xmm6 - movq 128-64(%rdi),%xmm7 - - punpckldq %xmm4,%xmm0 - punpckldq %xmm6,%xmm5 - - movdqa %xmm0,%xmm8 - punpcklqdq %xmm5,%xmm0 - punpckhqdq %xmm5,%xmm8 - - pshufd $63,%xmm7,%xmm1 - pshufd $127,%xmm7,%xmm9 - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - jmp L$oop_shaext - -.p2align 5 -L$oop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm11 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm12 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm13 -.byte 102,68,15,56,0,219 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 -.byte 102,15,56,0,235 - movdqu 48(%r9),%xmm14 - leaq 64(%r9),%r9 -.byte 102,68,15,56,0,227 - - movdqa %xmm1,80(%rsp) - paddd %xmm4,%xmm1 - movdqa %xmm9,112(%rsp) - paddd %xmm11,%xmm9 - movdqa %xmm0,64(%rsp) - movdqa %xmm0,%xmm2 - movdqa %xmm8,96(%rsp) - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 102,15,56,0,243 - prefetcht0 127(%r8) -.byte 15,56,201,229 -.byte 102,68,15,56,0,235 - prefetcht0 127(%r9) -.byte 69,15,56,201,220 - -.byte 102,15,56,0,251 - movdqa %xmm0,%xmm1 -.byte 102,68,15,56,0,243 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,206 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,205 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,215 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,0 -.byte 15,56,200,204 -.byte 69,15,58,204,194,0 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,0 -.byte 15,56,200,213 -.byte 69,15,58,204,193,0 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,215 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,204 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,1 -.byte 15,56,200,213 -.byte 69,15,58,204,193,1 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,1 -.byte 15,56,200,206 -.byte 69,15,58,204,194,1 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,204 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,213 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 -.byte 15,56,201,229 - pxor %xmm12,%xmm14 -.byte 69,15,56,201,220 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,2 -.byte 15,56,200,206 -.byte 69,15,58,204,194,2 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 - pxor %xmm13,%xmm11 -.byte 69,15,56,201,229 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,2 -.byte 15,56,200,215 -.byte 69,15,58,204,193,2 -.byte 69,15,56,200,214 -.byte 15,56,202,231 -.byte 69,15,56,202,222 - pxor %xmm7,%xmm5 -.byte 15,56,201,247 - pxor %xmm14,%xmm12 -.byte 69,15,56,201,238 - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,203 -.byte 15,56,202,236 -.byte 69,15,56,202,227 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 - pxor %xmm11,%xmm13 -.byte 69,15,56,201,243 - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,213 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,212 -.byte 15,56,202,245 -.byte 69,15,56,202,236 - pxor %xmm5,%xmm7 - pxor %xmm12,%xmm14 - - movl $1,%ecx - pxor %xmm4,%xmm4 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,206 -.byte 69,15,58,204,194,3 -.byte 69,15,56,200,205 -.byte 15,56,202,254 -.byte 69,15,56,202,245 - - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - movq (%rbx),%xmm6 - - movdqa %xmm0,%xmm2 - movdqa %xmm8,%xmm10 -.byte 15,58,204,193,3 -.byte 15,56,200,215 -.byte 69,15,58,204,193,3 -.byte 69,15,56,200,214 - - pshufd $0x00,%xmm6,%xmm11 - pshufd $0x55,%xmm6,%xmm12 - movdqa %xmm6,%xmm7 - pcmpgtd %xmm4,%xmm11 - pcmpgtd %xmm4,%xmm12 - - movdqa %xmm0,%xmm1 - movdqa %xmm8,%xmm9 -.byte 15,58,204,194,3 -.byte 15,56,200,204 -.byte 69,15,58,204,194,3 -.byte 68,15,56,200,204 - - pcmpgtd %xmm4,%xmm7 - pand %xmm11,%xmm0 - pand %xmm11,%xmm1 - pand %xmm12,%xmm8 - pand %xmm12,%xmm9 - paddd %xmm7,%xmm6 - - paddd 64(%rsp),%xmm0 - paddd 80(%rsp),%xmm1 - paddd 96(%rsp),%xmm8 - paddd 112(%rsp),%xmm9 - - movq %xmm6,(%rbx) - decl %edx - jnz L$oop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm8,%xmm8 - - movdqa %xmm0,%xmm6 - punpckldq %xmm8,%xmm0 - punpckhdq %xmm8,%xmm6 - punpckhdq %xmm9,%xmm1 - movq %xmm0,0-64(%rdi) - psrldq $8,%xmm0 - movq %xmm6,64-64(%rdi) - psrldq $8,%xmm6 - movq %xmm0,32-64(%rdi) - psrldq $8,%xmm1 - movq %xmm6,96-64(%rdi) - movq %xmm1,128-64(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz L$oop_grande_shaext - -L$done_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_shaext: - .byte 0xf3,0xc3 - - -.p2align 8 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -K_XX_XX: -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-x86_64.s deleted file mode 100644 index 47c5f633cd8149..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-x86_64.s +++ /dev/null @@ -1,2591 +0,0 @@ -.text - - -.globl _sha1_block_data_order - -.p2align 4 -_sha1_block_data_order: - movl _OPENSSL_ia32cap_P+0(%rip),%r9d - movl _OPENSSL_ia32cap_P+4(%rip),%r8d - movl _OPENSSL_ia32cap_P+8(%rip),%r10d - testl $512,%r8d - jz L$ialu - testl $536870912,%r10d - jnz _shaext_shortcut - jmp _ssse3_shortcut - -.p2align 4 -L$ialu: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - movq %rdi,%r8 - subq $72,%rsp - movq %rsi,%r9 - andq $-64,%rsp - movq %rdx,%r10 - movq %rax,64(%rsp) -L$prologue: - - movl 0(%r8),%esi - movl 4(%r8),%edi - movl 8(%r8),%r11d - movl 12(%r8),%r12d - movl 16(%r8),%r13d - jmp L$loop - -.p2align 4 -L$loop: - movl 0(%r9),%edx - bswapl %edx - movl 4(%r9),%ebp - movl %r12d,%eax - movl %edx,0(%rsp) - movl %esi,%ecx - bswapl %ebp - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 8(%r9),%r14d - movl %r11d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ecx - bswapl %r14d - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 12(%r9),%edx - movl %edi,%eax - movl %r14d,8(%rsp) - movl %r12d,%ecx - bswapl %edx - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 16(%r9),%ebp - movl %esi,%eax - movl %edx,12(%rsp) - movl %r11d,%ecx - bswapl %ebp - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 20(%r9),%r14d - movl %r13d,%eax - movl %ebp,16(%rsp) - movl %edi,%ecx - bswapl %r14d - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 24(%r9),%edx - movl %r12d,%eax - movl %r14d,20(%rsp) - movl %esi,%ecx - bswapl %edx - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%r14,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 28(%r9),%ebp - movl %r11d,%eax - movl %edx,24(%rsp) - movl %r13d,%ecx - bswapl %ebp - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%rdx,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 32(%r9),%r14d - movl %edi,%eax - movl %ebp,28(%rsp) - movl %r12d,%ecx - bswapl %r14d - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rbp,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 36(%r9),%edx - movl %esi,%eax - movl %r14d,32(%rsp) - movl %r11d,%ecx - bswapl %edx - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%r14,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 40(%r9),%ebp - movl %r13d,%eax - movl %edx,36(%rsp) - movl %edi,%ecx - bswapl %ebp - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%rdx,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - movl 44(%r9),%r14d - movl %r12d,%eax - movl %ebp,40(%rsp) - movl %esi,%ecx - bswapl %r14d - xorl %r11d,%eax - roll $5,%ecx - andl %edi,%eax - leal 1518500249(%rbp,%r13,1),%r13d - addl %ecx,%r13d - xorl %r12d,%eax - roll $30,%edi - addl %eax,%r13d - movl 48(%r9),%edx - movl %r11d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ecx - bswapl %edx - xorl %edi,%eax - roll $5,%ecx - andl %esi,%eax - leal 1518500249(%r14,%r12,1),%r12d - addl %ecx,%r12d - xorl %r11d,%eax - roll $30,%esi - addl %eax,%r12d - movl 52(%r9),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %r12d,%ecx - bswapl %ebp - xorl %esi,%eax - roll $5,%ecx - andl %r13d,%eax - leal 1518500249(%rdx,%r11,1),%r11d - addl %ecx,%r11d - xorl %edi,%eax - roll $30,%r13d - addl %eax,%r11d - movl 56(%r9),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r11d,%ecx - bswapl %r14d - xorl %r13d,%eax - roll $5,%ecx - andl %r12d,%eax - leal 1518500249(%rbp,%rdi,1),%edi - addl %ecx,%edi - xorl %esi,%eax - roll $30,%r12d - addl %eax,%edi - movl 60(%r9),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %edi,%ecx - bswapl %edx - xorl %r12d,%eax - roll $5,%ecx - andl %r11d,%eax - leal 1518500249(%r14,%rsi,1),%esi - addl %ecx,%esi - xorl %r13d,%eax - roll $30,%r11d - addl %eax,%esi - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %esi,%ecx - xorl 8(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - andl %edi,%eax - leal 1518500249(%rdx,%r13,1),%r13d - roll $30,%edi - xorl %r12d,%eax - addl %ecx,%r13d - roll $1,%ebp - addl %eax,%r13d - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %r13d,%ecx - xorl 12(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - andl %esi,%eax - leal 1518500249(%rbp,%r12,1),%r12d - roll $30,%esi - xorl %r11d,%eax - addl %ecx,%r12d - roll $1,%r14d - addl %eax,%r12d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %r12d,%ecx - xorl 16(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - andl %r13d,%eax - leal 1518500249(%r14,%r11,1),%r11d - roll $30,%r13d - xorl %edi,%eax - addl %ecx,%r11d - roll $1,%edx - addl %eax,%r11d - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r11d,%ecx - xorl 20(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - andl %r12d,%eax - leal 1518500249(%rdx,%rdi,1),%edi - roll $30,%r12d - xorl %esi,%eax - addl %ecx,%edi - roll $1,%ebp - addl %eax,%edi - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %edi,%ecx - xorl 24(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - andl %r11d,%eax - leal 1518500249(%rbp,%rsi,1),%esi - roll $30,%r11d - xorl %r13d,%eax - addl %ecx,%esi - roll $1,%r14d - addl %eax,%esi - xorl 20(%rsp),%edx - movl %edi,%eax - movl %r14d,16(%rsp) - movl %esi,%ecx - xorl 28(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 24(%rsp),%ebp - movl %esi,%eax - movl %edx,20(%rsp) - movl %r13d,%ecx - xorl 32(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %r13d,%eax - movl %ebp,24(%rsp) - movl %r12d,%ecx - xorl 36(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %r12d,%eax - movl %r14d,28(%rsp) - movl %r11d,%ecx - xorl 40(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r11d,%eax - movl %edx,32(%rsp) - movl %edi,%ecx - xorl 44(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %edi,%eax - movl %ebp,36(%rsp) - movl %esi,%ecx - xorl 48(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal 1859775393(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 44(%rsp),%edx - movl %esi,%eax - movl %r14d,40(%rsp) - movl %r13d,%ecx - xorl 52(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal 1859775393(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 48(%rsp),%ebp - movl %r13d,%eax - movl %edx,44(%rsp) - movl %r12d,%ecx - xorl 56(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal 1859775393(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %r12d,%eax - movl %ebp,48(%rsp) - movl %r11d,%ecx - xorl 60(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal 1859775393(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r11d,%eax - movl %r14d,52(%rsp) - movl %edi,%ecx - xorl 0(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal 1859775393(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 60(%rsp),%ebp - movl %edi,%eax - movl %edx,56(%rsp) - movl %esi,%ecx - xorl 4(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal 1859775393(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 0(%rsp),%r14d - movl %esi,%eax - movl %ebp,60(%rsp) - movl %r13d,%ecx - xorl 8(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 32(%rsp),%r14d - leal 1859775393(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 4(%rsp),%edx - movl %r13d,%eax - movl %r14d,0(%rsp) - movl %r12d,%ecx - xorl 12(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 36(%rsp),%edx - leal 1859775393(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 8(%rsp),%ebp - movl %r12d,%eax - movl %edx,4(%rsp) - movl %r11d,%ecx - xorl 16(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 40(%rsp),%ebp - leal 1859775393(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 12(%rsp),%r14d - movl %r11d,%eax - movl %ebp,8(%rsp) - movl %edi,%ecx - xorl 20(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 44(%rsp),%r14d - leal 1859775393(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 16(%rsp),%edx - movl %edi,%eax - movl %r14d,12(%rsp) - movl %esi,%ecx - xorl 24(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 48(%rsp),%edx - leal 1859775393(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 20(%rsp),%ebp - movl %esi,%eax - movl %edx,16(%rsp) - movl %r13d,%ecx - xorl 28(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 52(%rsp),%ebp - leal 1859775393(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 24(%rsp),%r14d - movl %r13d,%eax - movl %ebp,20(%rsp) - movl %r12d,%ecx - xorl 32(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 56(%rsp),%r14d - leal 1859775393(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 28(%rsp),%edx - movl %r12d,%eax - movl %r14d,24(%rsp) - movl %r11d,%ecx - xorl 36(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 60(%rsp),%edx - leal 1859775393(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 32(%rsp),%ebp - movl %r11d,%eax - movl %edx,28(%rsp) - movl %edi,%ecx - xorl 40(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 0(%rsp),%ebp - leal 1859775393(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 36(%rsp),%r14d - movl %r12d,%eax - movl %ebp,32(%rsp) - movl %r12d,%ebx - xorl 44(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 4(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 40(%rsp),%edx - movl %r11d,%eax - movl %r14d,36(%rsp) - movl %r11d,%ebx - xorl 48(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 8(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 44(%rsp),%ebp - movl %edi,%eax - movl %edx,40(%rsp) - movl %edi,%ebx - xorl 52(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 12(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 48(%rsp),%r14d - movl %esi,%eax - movl %ebp,44(%rsp) - movl %esi,%ebx - xorl 56(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 16(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 52(%rsp),%edx - movl %r13d,%eax - movl %r14d,48(%rsp) - movl %r13d,%ebx - xorl 60(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 20(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 56(%rsp),%ebp - movl %r12d,%eax - movl %edx,52(%rsp) - movl %r12d,%ebx - xorl 0(%rsp),%ebp - andl %r11d,%eax - movl %esi,%ecx - xorl 24(%rsp),%ebp - leal -1894007588(%rdx,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%ebp - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 60(%rsp),%r14d - movl %r11d,%eax - movl %ebp,56(%rsp) - movl %r11d,%ebx - xorl 4(%rsp),%r14d - andl %edi,%eax - movl %r13d,%ecx - xorl 28(%rsp),%r14d - leal -1894007588(%rbp,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%r14d - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 0(%rsp),%edx - movl %edi,%eax - movl %r14d,60(%rsp) - movl %edi,%ebx - xorl 8(%rsp),%edx - andl %esi,%eax - movl %r12d,%ecx - xorl 32(%rsp),%edx - leal -1894007588(%r14,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%edx - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 4(%rsp),%ebp - movl %esi,%eax - movl %edx,0(%rsp) - movl %esi,%ebx - xorl 12(%rsp),%ebp - andl %r13d,%eax - movl %r11d,%ecx - xorl 36(%rsp),%ebp - leal -1894007588(%rdx,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%ebp - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 8(%rsp),%r14d - movl %r13d,%eax - movl %ebp,4(%rsp) - movl %r13d,%ebx - xorl 16(%rsp),%r14d - andl %r12d,%eax - movl %edi,%ecx - xorl 40(%rsp),%r14d - leal -1894007588(%rbp,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%r14d - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 12(%rsp),%edx - movl %r12d,%eax - movl %r14d,8(%rsp) - movl %r12d,%ebx - xorl 20(%rsp),%edx - andl %r11d,%eax - movl %esi,%ecx - xorl 44(%rsp),%edx - leal -1894007588(%r14,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%edx - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 16(%rsp),%ebp - movl %r11d,%eax - movl %edx,12(%rsp) - movl %r11d,%ebx - xorl 24(%rsp),%ebp - andl %edi,%eax - movl %r13d,%ecx - xorl 48(%rsp),%ebp - leal -1894007588(%rdx,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%ebp - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 20(%rsp),%r14d - movl %edi,%eax - movl %ebp,16(%rsp) - movl %edi,%ebx - xorl 28(%rsp),%r14d - andl %esi,%eax - movl %r12d,%ecx - xorl 52(%rsp),%r14d - leal -1894007588(%rbp,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%r14d - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 24(%rsp),%edx - movl %esi,%eax - movl %r14d,20(%rsp) - movl %esi,%ebx - xorl 32(%rsp),%edx - andl %r13d,%eax - movl %r11d,%ecx - xorl 56(%rsp),%edx - leal -1894007588(%r14,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%edx - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 28(%rsp),%ebp - movl %r13d,%eax - movl %edx,24(%rsp) - movl %r13d,%ebx - xorl 36(%rsp),%ebp - andl %r12d,%eax - movl %edi,%ecx - xorl 60(%rsp),%ebp - leal -1894007588(%rdx,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%ebp - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 32(%rsp),%r14d - movl %r12d,%eax - movl %ebp,28(%rsp) - movl %r12d,%ebx - xorl 40(%rsp),%r14d - andl %r11d,%eax - movl %esi,%ecx - xorl 0(%rsp),%r14d - leal -1894007588(%rbp,%r13,1),%r13d - xorl %r11d,%ebx - roll $5,%ecx - addl %eax,%r13d - roll $1,%r14d - andl %edi,%ebx - addl %ecx,%r13d - roll $30,%edi - addl %ebx,%r13d - xorl 36(%rsp),%edx - movl %r11d,%eax - movl %r14d,32(%rsp) - movl %r11d,%ebx - xorl 44(%rsp),%edx - andl %edi,%eax - movl %r13d,%ecx - xorl 4(%rsp),%edx - leal -1894007588(%r14,%r12,1),%r12d - xorl %edi,%ebx - roll $5,%ecx - addl %eax,%r12d - roll $1,%edx - andl %esi,%ebx - addl %ecx,%r12d - roll $30,%esi - addl %ebx,%r12d - xorl 40(%rsp),%ebp - movl %edi,%eax - movl %edx,36(%rsp) - movl %edi,%ebx - xorl 48(%rsp),%ebp - andl %esi,%eax - movl %r12d,%ecx - xorl 8(%rsp),%ebp - leal -1894007588(%rdx,%r11,1),%r11d - xorl %esi,%ebx - roll $5,%ecx - addl %eax,%r11d - roll $1,%ebp - andl %r13d,%ebx - addl %ecx,%r11d - roll $30,%r13d - addl %ebx,%r11d - xorl 44(%rsp),%r14d - movl %esi,%eax - movl %ebp,40(%rsp) - movl %esi,%ebx - xorl 52(%rsp),%r14d - andl %r13d,%eax - movl %r11d,%ecx - xorl 12(%rsp),%r14d - leal -1894007588(%rbp,%rdi,1),%edi - xorl %r13d,%ebx - roll $5,%ecx - addl %eax,%edi - roll $1,%r14d - andl %r12d,%ebx - addl %ecx,%edi - roll $30,%r12d - addl %ebx,%edi - xorl 48(%rsp),%edx - movl %r13d,%eax - movl %r14d,44(%rsp) - movl %r13d,%ebx - xorl 56(%rsp),%edx - andl %r12d,%eax - movl %edi,%ecx - xorl 16(%rsp),%edx - leal -1894007588(%r14,%rsi,1),%esi - xorl %r12d,%ebx - roll $5,%ecx - addl %eax,%esi - roll $1,%edx - andl %r11d,%ebx - addl %ecx,%esi - roll $30,%r11d - addl %ebx,%esi - xorl 52(%rsp),%ebp - movl %edi,%eax - movl %edx,48(%rsp) - movl %esi,%ecx - xorl 60(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 20(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 56(%rsp),%r14d - movl %esi,%eax - movl %ebp,52(%rsp) - movl %r13d,%ecx - xorl 0(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 24(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 60(%rsp),%edx - movl %r13d,%eax - movl %r14d,56(%rsp) - movl %r12d,%ecx - xorl 4(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 28(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 0(%rsp),%ebp - movl %r12d,%eax - movl %edx,60(%rsp) - movl %r11d,%ecx - xorl 8(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 32(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - xorl 4(%rsp),%r14d - movl %r11d,%eax - movl %ebp,0(%rsp) - movl %edi,%ecx - xorl 12(%rsp),%r14d - xorl %r13d,%eax - roll $5,%ecx - xorl 36(%rsp),%r14d - leal -899497514(%rbp,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%r14d - xorl 8(%rsp),%edx - movl %edi,%eax - movl %r14d,4(%rsp) - movl %esi,%ecx - xorl 16(%rsp),%edx - xorl %r12d,%eax - roll $5,%ecx - xorl 40(%rsp),%edx - leal -899497514(%r14,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%edx - xorl 12(%rsp),%ebp - movl %esi,%eax - movl %edx,8(%rsp) - movl %r13d,%ecx - xorl 20(%rsp),%ebp - xorl %r11d,%eax - roll $5,%ecx - xorl 44(%rsp),%ebp - leal -899497514(%rdx,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%ebp - xorl 16(%rsp),%r14d - movl %r13d,%eax - movl %ebp,12(%rsp) - movl %r12d,%ecx - xorl 24(%rsp),%r14d - xorl %edi,%eax - roll $5,%ecx - xorl 48(%rsp),%r14d - leal -899497514(%rbp,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%r14d - xorl 20(%rsp),%edx - movl %r12d,%eax - movl %r14d,16(%rsp) - movl %r11d,%ecx - xorl 28(%rsp),%edx - xorl %esi,%eax - roll $5,%ecx - xorl 52(%rsp),%edx - leal -899497514(%r14,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%edx - xorl 24(%rsp),%ebp - movl %r11d,%eax - movl %edx,20(%rsp) - movl %edi,%ecx - xorl 32(%rsp),%ebp - xorl %r13d,%eax - roll $5,%ecx - xorl 56(%rsp),%ebp - leal -899497514(%rdx,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%ebp - xorl 28(%rsp),%r14d - movl %edi,%eax - movl %ebp,24(%rsp) - movl %esi,%ecx - xorl 36(%rsp),%r14d - xorl %r12d,%eax - roll $5,%ecx - xorl 60(%rsp),%r14d - leal -899497514(%rbp,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%r14d - xorl 32(%rsp),%edx - movl %esi,%eax - movl %r14d,28(%rsp) - movl %r13d,%ecx - xorl 40(%rsp),%edx - xorl %r11d,%eax - roll $5,%ecx - xorl 0(%rsp),%edx - leal -899497514(%r14,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%edx - xorl 36(%rsp),%ebp - movl %r13d,%eax - - movl %r12d,%ecx - xorl 44(%rsp),%ebp - xorl %edi,%eax - roll $5,%ecx - xorl 4(%rsp),%ebp - leal -899497514(%rdx,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%ebp - xorl 40(%rsp),%r14d - movl %r12d,%eax - - movl %r11d,%ecx - xorl 48(%rsp),%r14d - xorl %esi,%eax - roll $5,%ecx - xorl 8(%rsp),%r14d - leal -899497514(%rbp,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%r14d - xorl 44(%rsp),%edx - movl %r11d,%eax - - movl %edi,%ecx - xorl 52(%rsp),%edx - xorl %r13d,%eax - roll $5,%ecx - xorl 12(%rsp),%edx - leal -899497514(%r14,%rsi,1),%esi - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - roll $1,%edx - xorl 48(%rsp),%ebp - movl %edi,%eax - - movl %esi,%ecx - xorl 56(%rsp),%ebp - xorl %r12d,%eax - roll $5,%ecx - xorl 16(%rsp),%ebp - leal -899497514(%rdx,%r13,1),%r13d - xorl %r11d,%eax - addl %ecx,%r13d - roll $30,%edi - addl %eax,%r13d - roll $1,%ebp - xorl 52(%rsp),%r14d - movl %esi,%eax - - movl %r13d,%ecx - xorl 60(%rsp),%r14d - xorl %r11d,%eax - roll $5,%ecx - xorl 20(%rsp),%r14d - leal -899497514(%rbp,%r12,1),%r12d - xorl %edi,%eax - addl %ecx,%r12d - roll $30,%esi - addl %eax,%r12d - roll $1,%r14d - xorl 56(%rsp),%edx - movl %r13d,%eax - - movl %r12d,%ecx - xorl 0(%rsp),%edx - xorl %edi,%eax - roll $5,%ecx - xorl 24(%rsp),%edx - leal -899497514(%r14,%r11,1),%r11d - xorl %esi,%eax - addl %ecx,%r11d - roll $30,%r13d - addl %eax,%r11d - roll $1,%edx - xorl 60(%rsp),%ebp - movl %r12d,%eax - - movl %r11d,%ecx - xorl 4(%rsp),%ebp - xorl %esi,%eax - roll $5,%ecx - xorl 28(%rsp),%ebp - leal -899497514(%rdx,%rdi,1),%edi - xorl %r13d,%eax - addl %ecx,%edi - roll $30,%r12d - addl %eax,%edi - roll $1,%ebp - movl %r11d,%eax - movl %edi,%ecx - xorl %r13d,%eax - leal -899497514(%rbp,%rsi,1),%esi - roll $5,%ecx - xorl %r12d,%eax - addl %ecx,%esi - roll $30,%r11d - addl %eax,%esi - addl 0(%r8),%esi - addl 4(%r8),%edi - addl 8(%r8),%r11d - addl 12(%r8),%r12d - addl 16(%r8),%r13d - movl %esi,0(%r8) - movl %edi,4(%r8) - movl %r11d,8(%r8) - movl %r12d,12(%r8) - movl %r13d,16(%r8) - - subq $1,%r10 - leaq 64(%r9),%r9 - jnz L$loop - - movq 64(%rsp),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha1_block_data_order_shaext: -_shaext_shortcut: - movdqu (%rdi),%xmm0 - movd 16(%rdi),%xmm1 - movdqa K_XX_XX+160(%rip),%xmm3 - - movdqu (%rsi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%rsi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 - movdqa %xmm1,%xmm9 -.byte 102,15,56,0,251 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - decq %rdx - leaq 64(%rsi),%r8 - paddd %xmm4,%xmm1 - cmovneq %r8,%rsi - movdqa %xmm0,%xmm8 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%rsi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%rsi),%xmm5 -.byte 102,15,56,0,227 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%rsi),%xmm6 -.byte 102,15,56,0,235 - - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%rsi),%xmm7 -.byte 102,15,56,0,243 - - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 65,15,56,200,201 -.byte 102,15,56,0,251 - - paddd %xmm8,%xmm0 - movdqa %xmm1,%xmm9 - - jnz L$oop_shaext - - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%rdi) - movd %xmm1,16(%rdi) - .byte 0xf3,0xc3 - - -.p2align 4 -sha1_block_data_order_ssse3: -_ssse3_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - leaq -64(%rsp),%rsp - movq %rax,%r14 - andq $-64,%rsp - movq %rdi,%r8 - movq %rsi,%r9 - movq %rdx,%r10 - - shlq $6,%r10 - addq %r9,%r10 - leaq K_XX_XX+64(%rip),%r11 - - movl 0(%r8),%eax - movl 4(%r8),%ebx - movl 8(%r8),%ecx - movl 12(%r8),%edx - movl %ebx,%esi - movl 16(%r8),%ebp - movl %ecx,%edi - xorl %edx,%edi - andl %edi,%esi - - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - addq $64,%r9 - paddd %xmm9,%xmm0 -.byte 102,15,56,0,222 - paddd %xmm9,%xmm1 - paddd %xmm9,%xmm2 - movdqa %xmm0,0(%rsp) - psubd %xmm9,%xmm0 - movdqa %xmm1,16(%rsp) - psubd %xmm9,%xmm1 - movdqa %xmm2,32(%rsp) - psubd %xmm9,%xmm2 - jmp L$oop_ssse3 -.p2align 4 -L$oop_ssse3: - rorl $2,%ebx - pshufd $238,%xmm0,%xmm4 - xorl %edx,%esi - movdqa %xmm3,%xmm8 - paddd %xmm3,%xmm9 - movl %eax,%edi - addl 0(%rsp),%ebp - punpcklqdq %xmm1,%xmm4 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - psrldq $4,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%ebp - rorl $7,%eax - pxor %xmm2,%xmm8 - xorl %ecx,%edi - movl %ebp,%esi - addl 4(%rsp),%edx - pxor %xmm8,%xmm4 - xorl %ebx,%eax - roll $5,%ebp - movdqa %xmm9,48(%rsp) - addl %edi,%edx - andl %eax,%esi - movdqa %xmm4,%xmm10 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - movdqa %xmm4,%xmm8 - xorl %ebx,%esi - pslldq $12,%xmm10 - paddd %xmm4,%xmm4 - movl %edx,%edi - addl 8(%rsp),%ecx - psrld $31,%xmm8 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm9 - andl %ebp,%edi - xorl %eax,%ebp - psrld $30,%xmm10 - addl %edx,%ecx - rorl $7,%edx - por %xmm8,%xmm4 - xorl %eax,%edi - movl %ecx,%esi - addl 12(%rsp),%ebx - pslld $2,%xmm9 - pxor %xmm10,%xmm4 - xorl %ebp,%edx - movdqa -64(%r11),%xmm10 - roll $5,%ecx - addl %edi,%ebx - andl %edx,%esi - pxor %xmm9,%xmm4 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - pshufd $238,%xmm1,%xmm5 - xorl %ebp,%esi - movdqa %xmm4,%xmm9 - paddd %xmm4,%xmm10 - movl %ebx,%edi - addl 16(%rsp),%eax - punpcklqdq %xmm2,%xmm5 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm9 - xorl %edx,%edi - movl %eax,%esi - addl 20(%rsp),%ebp - pxor %xmm9,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm10,0(%rsp) - addl %edi,%ebp - andl %ebx,%esi - movdqa %xmm5,%xmm8 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - movdqa %xmm5,%xmm9 - xorl %ecx,%esi - pslldq $12,%xmm8 - paddd %xmm5,%xmm5 - movl %ebp,%edi - addl 24(%rsp),%edx - psrld $31,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm10 - andl %eax,%edi - xorl %ebx,%eax - psrld $30,%xmm8 - addl %ebp,%edx - rorl $7,%ebp - por %xmm9,%xmm5 - xorl %ebx,%edi - movl %edx,%esi - addl 28(%rsp),%ecx - pslld $2,%xmm10 - pxor %xmm8,%xmm5 - xorl %eax,%ebp - movdqa -32(%r11),%xmm8 - roll $5,%edx - addl %edi,%ecx - andl %ebp,%esi - pxor %xmm10,%xmm5 - xorl %eax,%ebp - addl %edx,%ecx - rorl $7,%edx - pshufd $238,%xmm2,%xmm6 - xorl %eax,%esi - movdqa %xmm5,%xmm10 - paddd %xmm5,%xmm8 - movl %ecx,%edi - addl 32(%rsp),%ebx - punpcklqdq %xmm3,%xmm6 - xorl %ebp,%edx - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm10 - andl %edx,%edi - xorl %ebp,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm10 - xorl %ebp,%edi - movl %ebx,%esi - addl 36(%rsp),%eax - pxor %xmm10,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm8,16(%rsp) - addl %edi,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm9 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm10 - xorl %edx,%esi - pslldq $12,%xmm9 - paddd %xmm6,%xmm6 - movl %eax,%edi - addl 40(%rsp),%ebp - psrld $31,%xmm10 - xorl %ecx,%ebx - roll $5,%eax - addl %esi,%ebp - movdqa %xmm9,%xmm8 - andl %ebx,%edi - xorl %ecx,%ebx - psrld $30,%xmm9 - addl %eax,%ebp - rorl $7,%eax - por %xmm10,%xmm6 - xorl %ecx,%edi - movl %ebp,%esi - addl 44(%rsp),%edx - pslld $2,%xmm8 - pxor %xmm9,%xmm6 - xorl %ebx,%eax - movdqa -32(%r11),%xmm9 - roll $5,%ebp - addl %edi,%edx - andl %eax,%esi - pxor %xmm8,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - rorl $7,%ebp - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%esi - movdqa %xmm6,%xmm8 - paddd %xmm6,%xmm9 - movl %edx,%edi - addl 48(%rsp),%ecx - punpcklqdq %xmm4,%xmm7 - xorl %eax,%ebp - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm8 - andl %ebp,%edi - xorl %eax,%ebp - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm8 - xorl %eax,%edi - movl %ecx,%esi - addl 52(%rsp),%ebx - pxor %xmm8,%xmm7 - xorl %ebp,%edx - roll $5,%ecx - movdqa %xmm9,32(%rsp) - addl %edi,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm10 - xorl %ebp,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm8 - xorl %ebp,%esi - pslldq $12,%xmm10 - paddd %xmm7,%xmm7 - movl %ebx,%edi - addl 56(%rsp),%eax - psrld $31,%xmm8 - xorl %edx,%ecx - roll $5,%ebx - addl %esi,%eax - movdqa %xmm10,%xmm9 - andl %ecx,%edi - xorl %edx,%ecx - psrld $30,%xmm10 - addl %ebx,%eax - rorl $7,%ebx - por %xmm8,%xmm7 - xorl %edx,%edi - movl %eax,%esi - addl 60(%rsp),%ebp - pslld $2,%xmm9 - pxor %xmm10,%xmm7 - xorl %ecx,%ebx - movdqa -32(%r11),%xmm10 - roll $5,%eax - addl %edi,%ebp - andl %ebx,%esi - pxor %xmm9,%xmm7 - pshufd $238,%xmm6,%xmm9 - xorl %ecx,%ebx - addl %eax,%ebp - rorl $7,%eax - pxor %xmm4,%xmm0 - xorl %ecx,%esi - movl %ebp,%edi - addl 0(%rsp),%edx - punpcklqdq %xmm7,%xmm9 - xorl %ebx,%eax - roll $5,%ebp - pxor %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%edi - movdqa %xmm10,%xmm8 - xorl %ebx,%eax - paddd %xmm7,%xmm10 - addl %ebp,%edx - pxor %xmm9,%xmm0 - rorl $7,%ebp - xorl %ebx,%edi - movl %edx,%esi - addl 4(%rsp),%ecx - movdqa %xmm0,%xmm9 - xorl %eax,%ebp - roll $5,%edx - movdqa %xmm10,48(%rsp) - addl %edi,%ecx - andl %ebp,%esi - xorl %eax,%ebp - pslld $2,%xmm0 - addl %edx,%ecx - rorl $7,%edx - psrld $30,%xmm9 - xorl %eax,%esi - movl %ecx,%edi - addl 8(%rsp),%ebx - por %xmm9,%xmm0 - xorl %ebp,%edx - roll $5,%ecx - pshufd $238,%xmm7,%xmm10 - addl %esi,%ebx - andl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 12(%rsp),%eax - xorl %ebp,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pxor %xmm5,%xmm1 - addl 16(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm0,%xmm10 - movl %eax,%edi - roll $5,%eax - pxor %xmm2,%xmm1 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebx - paddd %xmm0,%xmm8 - addl %eax,%ebp - pxor %xmm10,%xmm1 - addl 20(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm1,%xmm10 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm8,0(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 24(%rsp),%ecx - pslld $2,%xmm1 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm10 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm10,%xmm1 - addl %edx,%ecx - addl 28(%rsp),%ebx - pshufd $238,%xmm0,%xmm8 - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - pxor %xmm6,%xmm2 - addl 32(%rsp),%eax - xorl %edx,%esi - punpcklqdq %xmm1,%xmm8 - movl %ebx,%edi - roll $5,%ebx - pxor %xmm3,%xmm2 - addl %esi,%eax - xorl %edx,%edi - movdqa 0(%r11),%xmm10 - rorl $7,%ecx - paddd %xmm1,%xmm9 - addl %ebx,%eax - pxor %xmm8,%xmm2 - addl 36(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm8 - addl %edi,%ebp - xorl %ecx,%esi - movdqa %xmm9,16(%rsp) - rorl $7,%ebx - addl %eax,%ebp - addl 40(%rsp),%edx - pslld $2,%xmm2 - xorl %ebx,%esi - movl %ebp,%edi - psrld $30,%xmm8 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - por %xmm8,%xmm2 - addl %ebp,%edx - addl 44(%rsp),%ecx - pshufd $238,%xmm1,%xmm9 - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebx - xorl %ebp,%esi - punpcklqdq %xmm2,%xmm9 - movl %ecx,%edi - roll $5,%ecx - pxor %xmm4,%xmm3 - addl %esi,%ebx - xorl %ebp,%edi - movdqa %xmm10,%xmm8 - rorl $7,%edx - paddd %xmm2,%xmm10 - addl %ecx,%ebx - pxor %xmm9,%xmm3 - addl 52(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm9 - addl %edi,%eax - xorl %edx,%esi - movdqa %xmm10,32(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 56(%rsp),%ebp - pslld $2,%xmm3 - xorl %ecx,%esi - movl %eax,%edi - psrld $30,%xmm9 - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - por %xmm9,%xmm3 - addl %eax,%ebp - addl 60(%rsp),%edx - pshufd $238,%xmm2,%xmm10 - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - pxor %xmm0,%xmm4 - addl 0(%rsp),%ecx - xorl %eax,%esi - punpcklqdq %xmm3,%xmm10 - movl %edx,%edi - roll $5,%edx - pxor %xmm5,%xmm4 - addl %esi,%ecx - xorl %eax,%edi - movdqa %xmm8,%xmm9 - rorl $7,%ebp - paddd %xmm3,%xmm8 - addl %edx,%ecx - pxor %xmm10,%xmm4 - addl 4(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm10 - addl %edi,%ebx - xorl %ebp,%esi - movdqa %xmm8,48(%rsp) - rorl $7,%edx - addl %ecx,%ebx - addl 8(%rsp),%eax - pslld $2,%xmm4 - xorl %edx,%esi - movl %ebx,%edi - psrld $30,%xmm10 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - por %xmm10,%xmm4 - addl %ebx,%eax - addl 12(%rsp),%ebp - pshufd $238,%xmm3,%xmm8 - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - pxor %xmm1,%xmm5 - addl 16(%rsp),%edx - xorl %ebx,%esi - punpcklqdq %xmm4,%xmm8 - movl %ebp,%edi - roll $5,%ebp - pxor %xmm6,%xmm5 - addl %esi,%edx - xorl %ebx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%eax - paddd %xmm4,%xmm9 - addl %ebp,%edx - pxor %xmm8,%xmm5 - addl 20(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm8 - addl %edi,%ecx - xorl %eax,%esi - movdqa %xmm9,0(%rsp) - rorl $7,%ebp - addl %edx,%ecx - addl 24(%rsp),%ebx - pslld $2,%xmm5 - xorl %ebp,%esi - movl %ecx,%edi - psrld $30,%xmm8 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - por %xmm8,%xmm5 - addl %ecx,%ebx - addl 28(%rsp),%eax - pshufd $238,%xmm4,%xmm9 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - pxor %xmm2,%xmm6 - addl 32(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - punpcklqdq %xmm5,%xmm9 - movl %eax,%edi - xorl %ecx,%esi - pxor %xmm7,%xmm6 - roll $5,%eax - addl %esi,%ebp - movdqa %xmm10,%xmm8 - xorl %ebx,%edi - paddd %xmm5,%xmm10 - xorl %ecx,%ebx - pxor %xmm9,%xmm6 - addl %eax,%ebp - addl 36(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movdqa %xmm6,%xmm9 - movl %ebp,%esi - xorl %ebx,%edi - movdqa %xmm10,16(%rsp) - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - pslld $2,%xmm6 - xorl %ebx,%eax - addl %ebp,%edx - psrld $30,%xmm9 - addl 40(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - por %xmm9,%xmm6 - rorl $7,%ebp - movl %edx,%edi - xorl %eax,%esi - roll $5,%edx - pshufd $238,%xmm5,%xmm10 - addl %esi,%ecx - xorl %ebp,%edi - xorl %eax,%ebp - addl %edx,%ecx - addl 44(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movl %ecx,%esi - xorl %ebp,%edi - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - xorl %ebp,%edx - addl %ecx,%ebx - pxor %xmm3,%xmm7 - addl 48(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - rorl $7,%ecx - punpcklqdq %xmm6,%xmm10 - movl %ebx,%edi - xorl %edx,%esi - pxor %xmm0,%xmm7 - roll $5,%ebx - addl %esi,%eax - movdqa 32(%r11),%xmm9 - xorl %ecx,%edi - paddd %xmm6,%xmm8 - xorl %edx,%ecx - pxor %xmm10,%xmm7 - addl %ebx,%eax - addl 52(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movdqa %xmm7,%xmm10 - movl %eax,%esi - xorl %ecx,%edi - movdqa %xmm8,32(%rsp) - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - pslld $2,%xmm7 - xorl %ecx,%ebx - addl %eax,%ebp - psrld $30,%xmm10 - addl 56(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - por %xmm10,%xmm7 - rorl $7,%eax - movl %ebp,%edi - xorl %ebx,%esi - roll $5,%ebp - pshufd $238,%xmm6,%xmm8 - addl %esi,%edx - xorl %eax,%edi - xorl %ebx,%eax - addl %ebp,%edx - addl 60(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movl %edx,%esi - xorl %eax,%edi - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - xorl %eax,%ebp - addl %edx,%ecx - pxor %xmm4,%xmm0 - addl 0(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - rorl $7,%edx - punpcklqdq %xmm7,%xmm8 - movl %ecx,%edi - xorl %ebp,%esi - pxor %xmm1,%xmm0 - roll $5,%ecx - addl %esi,%ebx - movdqa %xmm9,%xmm10 - xorl %edx,%edi - paddd %xmm7,%xmm9 - xorl %ebp,%edx - pxor %xmm8,%xmm0 - addl %ecx,%ebx - addl 4(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movdqa %xmm0,%xmm8 - movl %ebx,%esi - xorl %edx,%edi - movdqa %xmm9,48(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %ecx,%esi - pslld $2,%xmm0 - xorl %edx,%ecx - addl %ebx,%eax - psrld $30,%xmm8 - addl 8(%rsp),%ebp - andl %ecx,%esi - xorl %edx,%ecx - por %xmm8,%xmm0 - rorl $7,%ebx - movl %eax,%edi - xorl %ecx,%esi - roll $5,%eax - pshufd $238,%xmm7,%xmm9 - addl %esi,%ebp - xorl %ebx,%edi - xorl %ecx,%ebx - addl %eax,%ebp - addl 12(%rsp),%edx - andl %ebx,%edi - xorl %ecx,%ebx - rorl $7,%eax - movl %ebp,%esi - xorl %ebx,%edi - roll $5,%ebp - addl %edi,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %ebp,%edx - pxor %xmm5,%xmm1 - addl 16(%rsp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%ebp - punpcklqdq %xmm0,%xmm9 - movl %edx,%edi - xorl %eax,%esi - pxor %xmm2,%xmm1 - roll $5,%edx - addl %esi,%ecx - movdqa %xmm10,%xmm8 - xorl %ebp,%edi - paddd %xmm0,%xmm10 - xorl %eax,%ebp - pxor %xmm9,%xmm1 - addl %edx,%ecx - addl 20(%rsp),%ebx - andl %ebp,%edi - xorl %eax,%ebp - rorl $7,%edx - movdqa %xmm1,%xmm9 - movl %ecx,%esi - xorl %ebp,%edi - movdqa %xmm10,0(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %edx,%esi - pslld $2,%xmm1 - xorl %ebp,%edx - addl %ecx,%ebx - psrld $30,%xmm9 - addl 24(%rsp),%eax - andl %edx,%esi - xorl %ebp,%edx - por %xmm9,%xmm1 - rorl $7,%ecx - movl %ebx,%edi - xorl %edx,%esi - roll $5,%ebx - pshufd $238,%xmm0,%xmm10 - addl %esi,%eax - xorl %ecx,%edi - xorl %edx,%ecx - addl %ebx,%eax - addl 28(%rsp),%ebp - andl %ecx,%edi - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%edi - roll $5,%eax - addl %edi,%ebp - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%ebp - pxor %xmm6,%xmm2 - addl 32(%rsp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - punpcklqdq %xmm1,%xmm10 - movl %ebp,%edi - xorl %ebx,%esi - pxor %xmm3,%xmm2 - roll $5,%ebp - addl %esi,%edx - movdqa %xmm8,%xmm9 - xorl %eax,%edi - paddd %xmm1,%xmm8 - xorl %ebx,%eax - pxor %xmm10,%xmm2 - addl %ebp,%edx - addl 36(%rsp),%ecx - andl %eax,%edi - xorl %ebx,%eax - rorl $7,%ebp - movdqa %xmm2,%xmm10 - movl %edx,%esi - xorl %eax,%edi - movdqa %xmm8,16(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %ebp,%esi - pslld $2,%xmm2 - xorl %eax,%ebp - addl %edx,%ecx - psrld $30,%xmm10 - addl 40(%rsp),%ebx - andl %ebp,%esi - xorl %eax,%ebp - por %xmm10,%xmm2 - rorl $7,%edx - movl %ecx,%edi - xorl %ebp,%esi - roll $5,%ecx - pshufd $238,%xmm1,%xmm8 - addl %esi,%ebx - xorl %edx,%edi - xorl %ebp,%edx - addl %ecx,%ebx - addl 44(%rsp),%eax - andl %edx,%edi - xorl %ebp,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%edi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - addl %ebx,%eax - pxor %xmm7,%xmm3 - addl 48(%rsp),%ebp - xorl %ecx,%esi - punpcklqdq %xmm2,%xmm8 - movl %eax,%edi - roll $5,%eax - pxor %xmm4,%xmm3 - addl %esi,%ebp - xorl %ecx,%edi - movdqa %xmm9,%xmm10 - rorl $7,%ebx - paddd %xmm2,%xmm9 - addl %eax,%ebp - pxor %xmm8,%xmm3 - addl 52(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - movdqa %xmm3,%xmm8 - addl %edi,%edx - xorl %ebx,%esi - movdqa %xmm9,32(%rsp) - rorl $7,%eax - addl %ebp,%edx - addl 56(%rsp),%ecx - pslld $2,%xmm3 - xorl %eax,%esi - movl %edx,%edi - psrld $30,%xmm8 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - por %xmm8,%xmm3 - addl %edx,%ecx - addl 60(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 0(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - paddd %xmm3,%xmm10 - addl %esi,%eax - xorl %edx,%edi - movdqa %xmm10,48(%rsp) - rorl $7,%ecx - addl %ebx,%eax - addl 4(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 8(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 12(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - cmpq %r10,%r9 - je L$done_ssse3 - movdqa 64(%r11),%xmm6 - movdqa -64(%r11),%xmm9 - movdqu 0(%r9),%xmm0 - movdqu 16(%r9),%xmm1 - movdqu 32(%r9),%xmm2 - movdqu 48(%r9),%xmm3 -.byte 102,15,56,0,198 - addq $64,%r9 - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi -.byte 102,15,56,0,206 - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - paddd %xmm9,%xmm0 - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - movdqa %xmm0,0(%rsp) - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - psubd %xmm9,%xmm0 - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi -.byte 102,15,56,0,214 - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - paddd %xmm9,%xmm1 - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - movdqa %xmm1,16(%rsp) - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - psubd %xmm9,%xmm1 - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi -.byte 102,15,56,0,222 - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - paddd %xmm9,%xmm2 - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - movdqa %xmm2,32(%rsp) - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - psubd %xmm9,%xmm2 - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - addl 12(%r8),%edx - movl %eax,0(%r8) - addl 16(%r8),%ebp - movl %esi,4(%r8) - movl %esi,%ebx - movl %ecx,8(%r8) - movl %ecx,%edi - movl %edx,12(%r8) - xorl %edx,%edi - movl %ebp,16(%r8) - andl %edi,%esi - jmp L$oop_ssse3 - -.p2align 4 -L$done_ssse3: - addl 16(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 20(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%rsp),%ebp - xorl %ecx,%esi - movl %eax,%edi - roll $5,%eax - addl %esi,%ebp - xorl %ecx,%edi - rorl $7,%ebx - addl %eax,%ebp - addl 28(%rsp),%edx - xorl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - addl %edi,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %ebp,%edx - addl 32(%rsp),%ecx - xorl %eax,%esi - movl %edx,%edi - roll $5,%edx - addl %esi,%ecx - xorl %eax,%edi - rorl $7,%ebp - addl %edx,%ecx - addl 36(%rsp),%ebx - xorl %ebp,%edi - movl %ecx,%esi - roll $5,%ecx - addl %edi,%ebx - xorl %ebp,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%rsp),%eax - xorl %edx,%esi - movl %ebx,%edi - roll $5,%ebx - addl %esi,%eax - xorl %edx,%edi - rorl $7,%ecx - addl %ebx,%eax - addl 44(%rsp),%ebp - xorl %ecx,%edi - movl %eax,%esi - roll $5,%eax - addl %edi,%ebp - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%ebp - addl 48(%rsp),%edx - xorl %ebx,%esi - movl %ebp,%edi - roll $5,%ebp - addl %esi,%edx - xorl %ebx,%edi - rorl $7,%eax - addl %ebp,%edx - addl 52(%rsp),%ecx - xorl %eax,%edi - movl %edx,%esi - roll $5,%edx - addl %edi,%ecx - xorl %eax,%esi - rorl $7,%ebp - addl %edx,%ecx - addl 56(%rsp),%ebx - xorl %ebp,%esi - movl %ecx,%edi - roll $5,%ecx - addl %esi,%ebx - xorl %ebp,%edi - rorl $7,%edx - addl %ecx,%ebx - addl 60(%rsp),%eax - xorl %edx,%edi - movl %ebx,%esi - roll $5,%ebx - addl %edi,%eax - rorl $7,%ecx - addl %ebx,%eax - addl 0(%r8),%eax - addl 4(%r8),%esi - addl 8(%r8),%ecx - movl %eax,0(%r8) - addl 12(%r8),%edx - movl %esi,4(%r8) - addl 16(%r8),%ebp - movl %ecx,8(%r8) - movl %edx,12(%r8) - movl %ebp,16(%r8) - leaq (%r14),%rsi - movq -40(%rsi),%r14 - movq -32(%rsi),%r13 - movq -24(%rsi),%r12 - movq -16(%rsi),%rbp - movq -8(%rsi),%rbx - leaq (%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 - -.p2align 6 -K_XX_XX: -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.p2align 6 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-mb-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-mb-x86_64.s deleted file mode 100644 index 796ce2c951e39b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-mb-x86_64.s +++ /dev/null @@ -1,3258 +0,0 @@ -.text - - - -.globl _sha256_multi_block - -.p2align 5 -_sha256_multi_block: - movq _OPENSSL_ia32cap_P+4(%rip),%rcx - btq $61,%rcx - jc _shaext_shortcut - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - andq $-256,%rsp - movq %rax,272(%rsp) -L$body: - leaq K256+128(%rip),%rbp - leaq 256(%rsp),%rbx - leaq 128(%rdi),%rdi - -L$oop_grande: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rbp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rbp,%r9 - movq 32(%rsi),%r10 - movl 40(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,8(%rbx) - cmovleq %rbp,%r10 - movq 48(%rsi),%r11 - movl 56(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,12(%rbx) - cmovleq %rbp,%r11 - testl %edx,%edx - jz L$done - - movdqu 0-128(%rdi),%xmm8 - leaq 128(%rsp),%rax - movdqu 32-128(%rdi),%xmm9 - movdqu 64-128(%rdi),%xmm10 - movdqu 96-128(%rdi),%xmm11 - movdqu 128-128(%rdi),%xmm12 - movdqu 160-128(%rdi),%xmm13 - movdqu 192-128(%rdi),%xmm14 - movdqu 224-128(%rdi),%xmm15 - movdqu L$pbswap(%rip),%xmm6 - jmp L$oop - -.p2align 5 -L$oop: - movdqa %xmm10,%xmm4 - pxor %xmm9,%xmm4 - movd 0(%r8),%xmm5 - movd 0(%r9),%xmm0 - movd 0(%r10),%xmm1 - movd 0(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 4(%r8),%xmm5 - movd 4(%r9),%xmm0 - movd 4(%r10),%xmm1 - movd 4(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,16-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 8(%r8),%xmm5 - movd 8(%r9),%xmm0 - movd 8(%r10),%xmm1 - movd 8(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 12(%r8),%xmm5 - movd 12(%r9),%xmm0 - movd 12(%r10),%xmm1 - movd 12(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,48-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 16(%r8),%xmm5 - movd 16(%r9),%xmm0 - movd 16(%r10),%xmm1 - movd 16(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 20(%r8),%xmm5 - movd 20(%r9),%xmm0 - movd 20(%r10),%xmm1 - movd 20(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,80-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 24(%r8),%xmm5 - movd 24(%r9),%xmm0 - movd 24(%r10),%xmm1 - movd 24(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 28(%r8),%xmm5 - movd 28(%r9),%xmm0 - movd 28(%r10),%xmm1 - movd 28(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,112-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movd 32(%r8),%xmm5 - movd 32(%r9),%xmm0 - movd 32(%r10),%xmm1 - movd 32(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm12,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movd 36(%r8),%xmm5 - movd 36(%r9),%xmm0 - movd 36(%r10),%xmm1 - movd 36(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,144-128(%rax) - paddd %xmm14,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm5,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm14 - paddd %xmm7,%xmm14 - movd 40(%r8),%xmm5 - movd 40(%r9),%xmm0 - movd 40(%r10),%xmm1 - movd 40(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm10,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movd 44(%r8),%xmm5 - movd 44(%r9),%xmm0 - movd 44(%r10),%xmm1 - movd 44(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,176-128(%rax) - paddd %xmm12,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm5,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm12 - paddd %xmm7,%xmm12 - movd 48(%r8),%xmm5 - movd 48(%r9),%xmm0 - movd 48(%r10),%xmm1 - movd 48(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm8,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movd 52(%r8),%xmm5 - movd 52(%r9),%xmm0 - movd 52(%r10),%xmm1 - movd 52(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,208-128(%rax) - paddd %xmm10,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm5,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm10 - paddd %xmm7,%xmm10 - movd 56(%r8),%xmm5 - movd 56(%r9),%xmm0 - movd 56(%r10),%xmm1 - movd 56(%r11),%xmm2 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm14,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movd 60(%r8),%xmm5 - leaq 64(%r8),%r8 - movd 60(%r9),%xmm0 - leaq 64(%r9),%r9 - movd 60(%r10),%xmm1 - leaq 64(%r10),%r10 - movd 60(%r11),%xmm2 - leaq 64(%r11),%r11 - punpckldq %xmm1,%xmm5 - punpckldq %xmm2,%xmm0 - punpckldq %xmm0,%xmm5 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 -.byte 102,15,56,0,238 - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,240-128(%rax) - paddd %xmm8,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - prefetcht0 63(%r8) - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - prefetcht0 63(%r9) - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - prefetcht0 63(%r10) - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - prefetcht0 63(%r11) - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm5,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqu 0-128(%rax),%xmm5 - movl $3,%ecx - jmp L$oop_16_xx -.p2align 5 -L$oop_16_xx: - movdqa 16-128(%rax),%xmm6 - paddd 144-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 224-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,0-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 32-128(%rax),%xmm5 - paddd 160-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 240-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,16-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 48-128(%rax),%xmm6 - paddd 176-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 0-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,32-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 64-128(%rax),%xmm5 - paddd 192-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 16-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,48-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 80-128(%rax),%xmm6 - paddd 208-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 32-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,64-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 96-128(%rax),%xmm5 - paddd 224-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 48-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,80-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 112-128(%rax),%xmm6 - paddd 240-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 64-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,96-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 128-128(%rax),%xmm5 - paddd 0-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 80-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,112-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - movdqa 144-128(%rax),%xmm6 - paddd 16-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 96-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm12,%xmm7 - - movdqa %xmm12,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm12,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,128-128(%rax) - paddd %xmm15,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -128(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm12,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm14,%xmm0 - pand %xmm13,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm8,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm9,%xmm3 - movdqa %xmm8,%xmm7 - pslld $10,%xmm2 - pxor %xmm8,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm9,%xmm15 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm15 - paddd %xmm5,%xmm11 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm15 - paddd %xmm7,%xmm15 - movdqa 160-128(%rax),%xmm5 - paddd 32-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 112-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm11,%xmm7 - - movdqa %xmm11,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm11,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,144-128(%rax) - paddd %xmm14,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm11,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm13,%xmm0 - pand %xmm12,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm15,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm8,%xmm4 - movdqa %xmm15,%xmm7 - pslld $10,%xmm2 - pxor %xmm15,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm8,%xmm14 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm14 - paddd %xmm6,%xmm10 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm14 - paddd %xmm7,%xmm14 - movdqa 176-128(%rax),%xmm6 - paddd 48-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 128-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm10,%xmm7 - - movdqa %xmm10,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm10,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,160-128(%rax) - paddd %xmm13,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm10,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm12,%xmm0 - pand %xmm11,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm14,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm15,%xmm3 - movdqa %xmm14,%xmm7 - pslld $10,%xmm2 - pxor %xmm14,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm15,%xmm13 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm13 - paddd %xmm5,%xmm9 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm13 - paddd %xmm7,%xmm13 - movdqa 192-128(%rax),%xmm5 - paddd 64-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 144-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm9,%xmm7 - - movdqa %xmm9,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm9,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,176-128(%rax) - paddd %xmm12,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd -32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm9,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm11,%xmm0 - pand %xmm10,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm13,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm14,%xmm4 - movdqa %xmm13,%xmm7 - pslld $10,%xmm2 - pxor %xmm13,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm14,%xmm12 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm12 - paddd %xmm6,%xmm8 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm12 - paddd %xmm7,%xmm12 - movdqa 208-128(%rax),%xmm6 - paddd 80-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 160-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm8,%xmm7 - - movdqa %xmm8,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm8,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,192-128(%rax) - paddd %xmm11,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 0(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm8,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm8,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm10,%xmm0 - pand %xmm9,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm12,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm12,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm13,%xmm3 - movdqa %xmm12,%xmm7 - pslld $10,%xmm2 - pxor %xmm12,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm13,%xmm11 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm11 - paddd %xmm5,%xmm15 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm11 - paddd %xmm7,%xmm11 - movdqa 224-128(%rax),%xmm5 - paddd 96-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 176-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm15,%xmm7 - - movdqa %xmm15,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm15,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,208-128(%rax) - paddd %xmm10,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 32(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm15,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm15,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm9,%xmm0 - pand %xmm8,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm11,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm11,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm12,%xmm4 - movdqa %xmm11,%xmm7 - pslld $10,%xmm2 - pxor %xmm11,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm12,%xmm10 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm10 - paddd %xmm6,%xmm14 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm10 - paddd %xmm7,%xmm10 - movdqa 240-128(%rax),%xmm6 - paddd 112-128(%rax),%xmm5 - - movdqa %xmm6,%xmm7 - movdqa %xmm6,%xmm1 - psrld $3,%xmm7 - movdqa %xmm6,%xmm2 - - psrld $7,%xmm1 - movdqa 192-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm3 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm3,%xmm1 - - psrld $17,%xmm3 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - psrld $19-17,%xmm3 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm3,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm5 - movdqa %xmm14,%xmm7 - - movdqa %xmm14,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm14,%xmm1 - pslld $7,%xmm2 - movdqa %xmm5,224-128(%rax) - paddd %xmm9,%xmm5 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 64(%rbp),%xmm5 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm14,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm14,%xmm3 - pslld $26-21,%xmm2 - pandn %xmm8,%xmm0 - pand %xmm15,%xmm3 - pxor %xmm1,%xmm7 - - - movdqa %xmm10,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm10,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm5 - pxor %xmm3,%xmm0 - movdqa %xmm11,%xmm3 - movdqa %xmm10,%xmm7 - pslld $10,%xmm2 - pxor %xmm10,%xmm3 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm5 - pslld $19-10,%xmm2 - pand %xmm3,%xmm4 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm11,%xmm9 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm4,%xmm9 - paddd %xmm5,%xmm13 - pxor %xmm2,%xmm7 - - paddd %xmm5,%xmm9 - paddd %xmm7,%xmm9 - movdqa 0-128(%rax),%xmm5 - paddd 128-128(%rax),%xmm6 - - movdqa %xmm5,%xmm7 - movdqa %xmm5,%xmm1 - psrld $3,%xmm7 - movdqa %xmm5,%xmm2 - - psrld $7,%xmm1 - movdqa 208-128(%rax),%xmm0 - pslld $14,%xmm2 - pxor %xmm1,%xmm7 - psrld $18-7,%xmm1 - movdqa %xmm0,%xmm4 - pxor %xmm2,%xmm7 - pslld $25-14,%xmm2 - pxor %xmm1,%xmm7 - psrld $10,%xmm0 - movdqa %xmm4,%xmm1 - - psrld $17,%xmm4 - pxor %xmm2,%xmm7 - pslld $13,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - psrld $19-17,%xmm4 - pxor %xmm1,%xmm0 - pslld $15-13,%xmm1 - pxor %xmm4,%xmm0 - pxor %xmm1,%xmm0 - paddd %xmm0,%xmm6 - movdqa %xmm13,%xmm7 - - movdqa %xmm13,%xmm2 - - psrld $6,%xmm7 - movdqa %xmm13,%xmm1 - pslld $7,%xmm2 - movdqa %xmm6,240-128(%rax) - paddd %xmm8,%xmm6 - - psrld $11,%xmm1 - pxor %xmm2,%xmm7 - pslld $21-7,%xmm2 - paddd 96(%rbp),%xmm6 - pxor %xmm1,%xmm7 - - psrld $25-11,%xmm1 - movdqa %xmm13,%xmm0 - - pxor %xmm2,%xmm7 - movdqa %xmm13,%xmm4 - pslld $26-21,%xmm2 - pandn %xmm15,%xmm0 - pand %xmm14,%xmm4 - pxor %xmm1,%xmm7 - - - movdqa %xmm9,%xmm1 - pxor %xmm2,%xmm7 - movdqa %xmm9,%xmm2 - psrld $2,%xmm1 - paddd %xmm7,%xmm6 - pxor %xmm4,%xmm0 - movdqa %xmm10,%xmm4 - movdqa %xmm9,%xmm7 - pslld $10,%xmm2 - pxor %xmm9,%xmm4 - - - psrld $13,%xmm7 - pxor %xmm2,%xmm1 - paddd %xmm0,%xmm6 - pslld $19-10,%xmm2 - pand %xmm4,%xmm3 - pxor %xmm7,%xmm1 - - - psrld $22-13,%xmm7 - pxor %xmm2,%xmm1 - movdqa %xmm10,%xmm8 - pslld $30-19,%xmm2 - pxor %xmm1,%xmm7 - pxor %xmm3,%xmm8 - paddd %xmm6,%xmm12 - pxor %xmm2,%xmm7 - - paddd %xmm6,%xmm8 - paddd %xmm7,%xmm8 - leaq 256(%rbp),%rbp - decl %ecx - jnz L$oop_16_xx - - movl $1,%ecx - leaq K256+128(%rip),%rbp - - movdqa (%rbx),%xmm7 - cmpl 0(%rbx),%ecx - pxor %xmm0,%xmm0 - cmovgeq %rbp,%r8 - cmpl 4(%rbx),%ecx - movdqa %xmm7,%xmm6 - cmovgeq %rbp,%r9 - cmpl 8(%rbx),%ecx - pcmpgtd %xmm0,%xmm6 - cmovgeq %rbp,%r10 - cmpl 12(%rbx),%ecx - paddd %xmm6,%xmm7 - cmovgeq %rbp,%r11 - - movdqu 0-128(%rdi),%xmm0 - pand %xmm6,%xmm8 - movdqu 32-128(%rdi),%xmm1 - pand %xmm6,%xmm9 - movdqu 64-128(%rdi),%xmm2 - pand %xmm6,%xmm10 - movdqu 96-128(%rdi),%xmm5 - pand %xmm6,%xmm11 - paddd %xmm0,%xmm8 - movdqu 128-128(%rdi),%xmm0 - pand %xmm6,%xmm12 - paddd %xmm1,%xmm9 - movdqu 160-128(%rdi),%xmm1 - pand %xmm6,%xmm13 - paddd %xmm2,%xmm10 - movdqu 192-128(%rdi),%xmm2 - pand %xmm6,%xmm14 - paddd %xmm5,%xmm11 - movdqu 224-128(%rdi),%xmm5 - pand %xmm6,%xmm15 - paddd %xmm0,%xmm12 - paddd %xmm1,%xmm13 - movdqu %xmm8,0-128(%rdi) - paddd %xmm2,%xmm14 - movdqu %xmm9,32-128(%rdi) - paddd %xmm5,%xmm15 - movdqu %xmm10,64-128(%rdi) - movdqu %xmm11,96-128(%rdi) - movdqu %xmm12,128-128(%rdi) - movdqu %xmm13,160-128(%rdi) - movdqu %xmm14,192-128(%rdi) - movdqu %xmm15,224-128(%rdi) - - movdqa %xmm7,(%rbx) - movdqa L$pbswap(%rip),%xmm6 - decl %edx - jnz L$oop - - movl 280(%rsp),%edx - leaq 16(%rdi),%rdi - leaq 64(%rsi),%rsi - decl %edx - jnz L$oop_grande - -L$done: - movq 272(%rsp),%rax - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 5 -sha256_multi_block_shaext: -_shaext_shortcut: - movq %rsp,%rax - pushq %rbx - pushq %rbp - subq $288,%rsp - shll $1,%edx - andq $-256,%rsp - leaq 128(%rdi),%rdi - movq %rax,272(%rsp) -L$body_shaext: - leaq 256(%rsp),%rbx - leaq K256_shaext+128(%rip),%rbp - -L$oop_grande_shaext: - movl %edx,280(%rsp) - xorl %edx,%edx - movq 0(%rsi),%r8 - movl 8(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,0(%rbx) - cmovleq %rsp,%r8 - movq 16(%rsi),%r9 - movl 24(%rsi),%ecx - cmpl %edx,%ecx - cmovgl %ecx,%edx - testl %ecx,%ecx - movl %ecx,4(%rbx) - cmovleq %rsp,%r9 - testl %edx,%edx - jz L$done_shaext - - movq 0-128(%rdi),%xmm12 - movq 32-128(%rdi),%xmm4 - movq 64-128(%rdi),%xmm13 - movq 96-128(%rdi),%xmm5 - movq 128-128(%rdi),%xmm8 - movq 160-128(%rdi),%xmm9 - movq 192-128(%rdi),%xmm10 - movq 224-128(%rdi),%xmm11 - - punpckldq %xmm4,%xmm12 - punpckldq %xmm5,%xmm13 - punpckldq %xmm9,%xmm8 - punpckldq %xmm11,%xmm10 - movdqa K256_shaext-16(%rip),%xmm3 - - movdqa %xmm12,%xmm14 - movdqa %xmm13,%xmm15 - punpcklqdq %xmm8,%xmm12 - punpcklqdq %xmm10,%xmm13 - punpckhqdq %xmm8,%xmm14 - punpckhqdq %xmm10,%xmm15 - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - jmp L$oop_shaext - -.p2align 5 -L$oop_shaext: - movdqu 0(%r8),%xmm4 - movdqu 0(%r9),%xmm8 - movdqu 16(%r8),%xmm5 - movdqu 16(%r9),%xmm9 - movdqu 32(%r8),%xmm6 -.byte 102,15,56,0,227 - movdqu 32(%r9),%xmm10 -.byte 102,68,15,56,0,195 - movdqu 48(%r8),%xmm7 - leaq 64(%r8),%r8 - movdqu 48(%r9),%xmm11 - leaq 64(%r9),%r9 - - movdqa 0-128(%rbp),%xmm0 -.byte 102,15,56,0,235 - paddd %xmm4,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm0,%xmm1 - movdqa 0-128(%rbp),%xmm2 -.byte 102,68,15,56,0,203 - paddd %xmm8,%xmm2 - movdqa %xmm13,80(%rsp) -.byte 69,15,56,203,236 - pxor %xmm14,%xmm8 - movdqa %xmm2,%xmm0 - movdqa %xmm15,112(%rsp) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pxor %xmm12,%xmm4 - movdqa %xmm12,64(%rsp) -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pxor %xmm14,%xmm8 - movdqa %xmm14,96(%rsp) - movdqa 16-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 102,15,56,0,243 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 16-128(%rbp),%xmm2 - paddd %xmm9,%xmm2 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - prefetcht0 127(%r8) -.byte 102,15,56,0,251 -.byte 102,68,15,56,0,211 - prefetcht0 127(%r9) -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,68,15,56,0,219 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 32-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 32-128(%rbp),%xmm2 - paddd %xmm10,%xmm2 -.byte 69,15,56,203,236 -.byte 69,15,56,204,193 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 -.byte 102,15,58,15,222,4 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 48-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - - movdqa %xmm1,%xmm0 - movdqa 48-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 64-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 64-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 80-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 80-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 96-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 96-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 112-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 112-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 128-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 128-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 144-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 144-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 -.byte 15,56,204,229 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 160-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,193 - movdqa %xmm1,%xmm0 - movdqa 160-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm3 -.byte 102,15,58,15,222,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm4 - movdqa %xmm11,%xmm3 -.byte 102,65,15,58,15,218,4 -.byte 15,56,204,238 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 176-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,202 - movdqa %xmm1,%xmm0 - movdqa 176-128(%rbp),%xmm2 - paddd %xmm3,%xmm8 - paddd %xmm11,%xmm2 -.byte 15,56,205,231 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,223,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,195 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm5 - movdqa %xmm8,%xmm3 -.byte 102,65,15,58,15,219,4 -.byte 15,56,204,247 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 192-128(%rbp),%xmm1 - paddd %xmm4,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,211 - movdqa %xmm1,%xmm0 - movdqa 192-128(%rbp),%xmm2 - paddd %xmm3,%xmm9 - paddd %xmm8,%xmm2 -.byte 15,56,205,236 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,58,15,220,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,200 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm6 - movdqa %xmm9,%xmm3 -.byte 102,65,15,58,15,216,4 -.byte 15,56,204,252 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 208-128(%rbp),%xmm1 - paddd %xmm5,%xmm1 -.byte 69,15,56,203,247 -.byte 69,15,56,204,216 - movdqa %xmm1,%xmm0 - movdqa 208-128(%rbp),%xmm2 - paddd %xmm3,%xmm10 - paddd %xmm9,%xmm2 -.byte 15,56,205,245 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movdqa %xmm6,%xmm3 -.byte 102,15,58,15,221,4 -.byte 69,15,56,203,254 -.byte 69,15,56,205,209 - pshufd $0x0e,%xmm1,%xmm0 - paddd %xmm3,%xmm7 - movdqa %xmm10,%xmm3 -.byte 102,65,15,58,15,217,4 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 224-128(%rbp),%xmm1 - paddd %xmm6,%xmm1 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - movdqa 224-128(%rbp),%xmm2 - paddd %xmm3,%xmm11 - paddd %xmm10,%xmm2 -.byte 15,56,205,254 - nop -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - movl $1,%ecx - pxor %xmm6,%xmm6 -.byte 69,15,56,203,254 -.byte 69,15,56,205,218 - pshufd $0x0e,%xmm1,%xmm0 - movdqa 240-128(%rbp),%xmm1 - paddd %xmm7,%xmm1 - movq (%rbx),%xmm7 - nop -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - movdqa 240-128(%rbp),%xmm2 - paddd %xmm11,%xmm2 -.byte 69,15,56,203,247 - - movdqa %xmm1,%xmm0 - cmpl 0(%rbx),%ecx - cmovgeq %rsp,%r8 - cmpl 4(%rbx),%ecx - cmovgeq %rsp,%r9 - pshufd $0x00,%xmm7,%xmm9 -.byte 69,15,56,203,236 - movdqa %xmm2,%xmm0 - pshufd $0x55,%xmm7,%xmm10 - movdqa %xmm7,%xmm11 -.byte 69,15,56,203,254 - pshufd $0x0e,%xmm1,%xmm0 - pcmpgtd %xmm6,%xmm9 - pcmpgtd %xmm6,%xmm10 -.byte 69,15,56,203,229 - pshufd $0x0e,%xmm2,%xmm0 - pcmpgtd %xmm6,%xmm11 - movdqa K256_shaext-16(%rip),%xmm3 -.byte 69,15,56,203,247 - - pand %xmm9,%xmm13 - pand %xmm10,%xmm15 - pand %xmm9,%xmm12 - pand %xmm10,%xmm14 - paddd %xmm7,%xmm11 - - paddd 80(%rsp),%xmm13 - paddd 112(%rsp),%xmm15 - paddd 64(%rsp),%xmm12 - paddd 96(%rsp),%xmm14 - - movq %xmm11,(%rbx) - decl %edx - jnz L$oop_shaext - - movl 280(%rsp),%edx - - pshufd $27,%xmm12,%xmm12 - pshufd $27,%xmm13,%xmm13 - pshufd $27,%xmm14,%xmm14 - pshufd $27,%xmm15,%xmm15 - - movdqa %xmm12,%xmm5 - movdqa %xmm13,%xmm6 - punpckldq %xmm14,%xmm12 - punpckhdq %xmm14,%xmm5 - punpckldq %xmm15,%xmm13 - punpckhdq %xmm15,%xmm6 - - movq %xmm12,0-128(%rdi) - psrldq $8,%xmm12 - movq %xmm5,128-128(%rdi) - psrldq $8,%xmm5 - movq %xmm12,32-128(%rdi) - movq %xmm5,160-128(%rdi) - - movq %xmm13,64-128(%rdi) - psrldq $8,%xmm13 - movq %xmm6,192-128(%rdi) - psrldq $8,%xmm6 - movq %xmm13,96-128(%rdi) - movq %xmm6,224-128(%rdi) - - leaq 8(%rdi),%rdi - leaq 32(%rsi),%rsi - decl %edx - jnz L$oop_grande_shaext - -L$done_shaext: - - movq -16(%rax),%rbp - movq -8(%rax),%rbx - leaq (%rax),%rsp -L$epilogue_shaext: - .byte 0xf3,0xc3 - -.p2align 8 -K256: -.long 1116352408,1116352408,1116352408,1116352408 -.long 1116352408,1116352408,1116352408,1116352408 -.long 1899447441,1899447441,1899447441,1899447441 -.long 1899447441,1899447441,1899447441,1899447441 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3049323471,3049323471,3049323471,3049323471 -.long 3921009573,3921009573,3921009573,3921009573 -.long 3921009573,3921009573,3921009573,3921009573 -.long 961987163,961987163,961987163,961987163 -.long 961987163,961987163,961987163,961987163 -.long 1508970993,1508970993,1508970993,1508970993 -.long 1508970993,1508970993,1508970993,1508970993 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2453635748,2453635748,2453635748,2453635748 -.long 2870763221,2870763221,2870763221,2870763221 -.long 2870763221,2870763221,2870763221,2870763221 -.long 3624381080,3624381080,3624381080,3624381080 -.long 3624381080,3624381080,3624381080,3624381080 -.long 310598401,310598401,310598401,310598401 -.long 310598401,310598401,310598401,310598401 -.long 607225278,607225278,607225278,607225278 -.long 607225278,607225278,607225278,607225278 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1426881987,1426881987,1426881987,1426881987 -.long 1925078388,1925078388,1925078388,1925078388 -.long 1925078388,1925078388,1925078388,1925078388 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2162078206,2162078206,2162078206,2162078206 -.long 2614888103,2614888103,2614888103,2614888103 -.long 2614888103,2614888103,2614888103,2614888103 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3248222580,3248222580,3248222580,3248222580 -.long 3835390401,3835390401,3835390401,3835390401 -.long 3835390401,3835390401,3835390401,3835390401 -.long 4022224774,4022224774,4022224774,4022224774 -.long 4022224774,4022224774,4022224774,4022224774 -.long 264347078,264347078,264347078,264347078 -.long 264347078,264347078,264347078,264347078 -.long 604807628,604807628,604807628,604807628 -.long 604807628,604807628,604807628,604807628 -.long 770255983,770255983,770255983,770255983 -.long 770255983,770255983,770255983,770255983 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1249150122,1249150122,1249150122,1249150122 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1555081692,1555081692,1555081692,1555081692 -.long 1996064986,1996064986,1996064986,1996064986 -.long 1996064986,1996064986,1996064986,1996064986 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2554220882,2554220882,2554220882,2554220882 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2821834349,2821834349,2821834349,2821834349 -.long 2952996808,2952996808,2952996808,2952996808 -.long 2952996808,2952996808,2952996808,2952996808 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3210313671,3210313671,3210313671,3210313671 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3336571891,3336571891,3336571891,3336571891 -.long 3584528711,3584528711,3584528711,3584528711 -.long 3584528711,3584528711,3584528711,3584528711 -.long 113926993,113926993,113926993,113926993 -.long 113926993,113926993,113926993,113926993 -.long 338241895,338241895,338241895,338241895 -.long 338241895,338241895,338241895,338241895 -.long 666307205,666307205,666307205,666307205 -.long 666307205,666307205,666307205,666307205 -.long 773529912,773529912,773529912,773529912 -.long 773529912,773529912,773529912,773529912 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1294757372,1294757372,1294757372,1294757372 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1396182291,1396182291,1396182291,1396182291 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1695183700,1695183700,1695183700,1695183700 -.long 1986661051,1986661051,1986661051,1986661051 -.long 1986661051,1986661051,1986661051,1986661051 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2177026350,2177026350,2177026350,2177026350 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2456956037,2456956037,2456956037,2456956037 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2730485921,2730485921,2730485921,2730485921 -.long 2820302411,2820302411,2820302411,2820302411 -.long 2820302411,2820302411,2820302411,2820302411 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3259730800,3259730800,3259730800,3259730800 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3345764771,3345764771,3345764771,3345764771 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3516065817,3516065817,3516065817,3516065817 -.long 3600352804,3600352804,3600352804,3600352804 -.long 3600352804,3600352804,3600352804,3600352804 -.long 4094571909,4094571909,4094571909,4094571909 -.long 4094571909,4094571909,4094571909,4094571909 -.long 275423344,275423344,275423344,275423344 -.long 275423344,275423344,275423344,275423344 -.long 430227734,430227734,430227734,430227734 -.long 430227734,430227734,430227734,430227734 -.long 506948616,506948616,506948616,506948616 -.long 506948616,506948616,506948616,506948616 -.long 659060556,659060556,659060556,659060556 -.long 659060556,659060556,659060556,659060556 -.long 883997877,883997877,883997877,883997877 -.long 883997877,883997877,883997877,883997877 -.long 958139571,958139571,958139571,958139571 -.long 958139571,958139571,958139571,958139571 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1322822218,1322822218,1322822218,1322822218 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1537002063,1537002063,1537002063,1537002063 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1747873779,1747873779,1747873779,1747873779 -.long 1955562222,1955562222,1955562222,1955562222 -.long 1955562222,1955562222,1955562222,1955562222 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2024104815,2024104815,2024104815,2024104815 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2227730452,2227730452,2227730452,2227730452 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2361852424,2361852424,2361852424,2361852424 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2428436474,2428436474,2428436474,2428436474 -.long 2756734187,2756734187,2756734187,2756734187 -.long 2756734187,2756734187,2756734187,2756734187 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3204031479,3204031479,3204031479,3204031479 -.long 3329325298,3329325298,3329325298,3329325298 -.long 3329325298,3329325298,3329325298,3329325298 -L$pbswap: -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -K256_shaext: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-x86_64.s deleted file mode 100644 index 5566d587610ea7..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-x86_64.s +++ /dev/null @@ -1,3048 +0,0 @@ -.text - - -.globl _sha256_block_data_order - -.p2align 4 -_sha256_block_data_order: - leaq _OPENSSL_ia32cap_P(%rip),%r11 - movl 0(%r11),%r9d - movl 4(%r11),%r10d - movl 8(%r11),%r11d - testl $536870912,%r11d - jnz _shaext_shortcut - testl $512,%r10d - jnz L$ssse3_shortcut - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $64+32,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - jmp L$loop - -.p2align 4 -L$loop: - movl %ebx,%edi - leaq K256(%rip),%rbp - xorl %ecx,%edi - movl 0(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 4(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 8(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 12(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 16(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 20(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 24(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 28(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - addl %r14d,%eax - movl 32(%rsi),%r12d - movl %r8d,%r13d - movl %eax,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - addl %r14d,%r11d - movl 36(%rsi),%r12d - movl %edx,%r13d - movl %r11d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - addl %r14d,%r10d - movl 40(%rsi),%r12d - movl %ecx,%r13d - movl %r10d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - addl %r14d,%r9d - movl 44(%rsi),%r12d - movl %ebx,%r13d - movl %r9d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - addl %r14d,%r8d - movl 48(%rsi),%r12d - movl %eax,%r13d - movl %r8d,%r14d - bswapl %r12d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - addl %r14d,%edx - movl 52(%rsi),%r12d - movl %r11d,%r13d - movl %edx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - addl %r14d,%ecx - movl 56(%rsi),%r12d - movl %r10d,%r13d - movl %ecx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - addl %r14d,%ebx - movl 60(%rsi),%r12d - movl %r9d,%r13d - movl %ebx,%r14d - bswapl %r12d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - jmp L$rounds_16_xx -.p2align 4 -L$rounds_16_xx: - movl 4(%rsp),%r13d - movl 56(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 36(%rsp),%r12d - - addl 0(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,0(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 8(%rsp),%r13d - movl 60(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 40(%rsp),%r12d - - addl 4(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,4(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 12(%rsp),%r13d - movl 0(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 44(%rsp),%r12d - - addl 8(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,8(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 16(%rsp),%r13d - movl 4(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 48(%rsp),%r12d - - addl 12(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,12(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 20(%rsp),%r13d - movl 8(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 52(%rsp),%r12d - - addl 16(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,16(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 24(%rsp),%r13d - movl 12(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 56(%rsp),%r12d - - addl 20(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,20(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 28(%rsp),%r13d - movl 16(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 60(%rsp),%r12d - - addl 24(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,24(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 32(%rsp),%r13d - movl 20(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 0(%rsp),%r12d - - addl 28(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,28(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - movl 36(%rsp),%r13d - movl 24(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%eax - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 4(%rsp),%r12d - - addl 32(%rsp),%r12d - movl %r8d,%r13d - addl %r15d,%r12d - movl %eax,%r14d - rorl $14,%r13d - movl %r9d,%r15d - - xorl %r8d,%r13d - rorl $9,%r14d - xorl %r10d,%r15d - - movl %r12d,32(%rsp) - xorl %eax,%r14d - andl %r8d,%r15d - - rorl $5,%r13d - addl %r11d,%r12d - xorl %r10d,%r15d - - rorl $11,%r14d - xorl %r8d,%r13d - addl %r15d,%r12d - - movl %eax,%r15d - addl (%rbp),%r12d - xorl %eax,%r14d - - xorl %ebx,%r15d - rorl $6,%r13d - movl %ebx,%r11d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r11d - addl %r12d,%edx - addl %r12d,%r11d - - leaq 4(%rbp),%rbp - movl 40(%rsp),%r13d - movl 28(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r11d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 8(%rsp),%r12d - - addl 36(%rsp),%r12d - movl %edx,%r13d - addl %edi,%r12d - movl %r11d,%r14d - rorl $14,%r13d - movl %r8d,%edi - - xorl %edx,%r13d - rorl $9,%r14d - xorl %r9d,%edi - - movl %r12d,36(%rsp) - xorl %r11d,%r14d - andl %edx,%edi - - rorl $5,%r13d - addl %r10d,%r12d - xorl %r9d,%edi - - rorl $11,%r14d - xorl %edx,%r13d - addl %edi,%r12d - - movl %r11d,%edi - addl (%rbp),%r12d - xorl %r11d,%r14d - - xorl %eax,%edi - rorl $6,%r13d - movl %eax,%r10d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r10d - addl %r12d,%ecx - addl %r12d,%r10d - - leaq 4(%rbp),%rbp - movl 44(%rsp),%r13d - movl 32(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r10d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 12(%rsp),%r12d - - addl 40(%rsp),%r12d - movl %ecx,%r13d - addl %r15d,%r12d - movl %r10d,%r14d - rorl $14,%r13d - movl %edx,%r15d - - xorl %ecx,%r13d - rorl $9,%r14d - xorl %r8d,%r15d - - movl %r12d,40(%rsp) - xorl %r10d,%r14d - andl %ecx,%r15d - - rorl $5,%r13d - addl %r9d,%r12d - xorl %r8d,%r15d - - rorl $11,%r14d - xorl %ecx,%r13d - addl %r15d,%r12d - - movl %r10d,%r15d - addl (%rbp),%r12d - xorl %r10d,%r14d - - xorl %r11d,%r15d - rorl $6,%r13d - movl %r11d,%r9d - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%r9d - addl %r12d,%ebx - addl %r12d,%r9d - - leaq 4(%rbp),%rbp - movl 48(%rsp),%r13d - movl 36(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r9d - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 16(%rsp),%r12d - - addl 44(%rsp),%r12d - movl %ebx,%r13d - addl %edi,%r12d - movl %r9d,%r14d - rorl $14,%r13d - movl %ecx,%edi - - xorl %ebx,%r13d - rorl $9,%r14d - xorl %edx,%edi - - movl %r12d,44(%rsp) - xorl %r9d,%r14d - andl %ebx,%edi - - rorl $5,%r13d - addl %r8d,%r12d - xorl %edx,%edi - - rorl $11,%r14d - xorl %ebx,%r13d - addl %edi,%r12d - - movl %r9d,%edi - addl (%rbp),%r12d - xorl %r9d,%r14d - - xorl %r10d,%edi - rorl $6,%r13d - movl %r10d,%r8d - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%r8d - addl %r12d,%eax - addl %r12d,%r8d - - leaq 20(%rbp),%rbp - movl 52(%rsp),%r13d - movl 40(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%r8d - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 20(%rsp),%r12d - - addl 48(%rsp),%r12d - movl %eax,%r13d - addl %r15d,%r12d - movl %r8d,%r14d - rorl $14,%r13d - movl %ebx,%r15d - - xorl %eax,%r13d - rorl $9,%r14d - xorl %ecx,%r15d - - movl %r12d,48(%rsp) - xorl %r8d,%r14d - andl %eax,%r15d - - rorl $5,%r13d - addl %edx,%r12d - xorl %ecx,%r15d - - rorl $11,%r14d - xorl %eax,%r13d - addl %r15d,%r12d - - movl %r8d,%r15d - addl (%rbp),%r12d - xorl %r8d,%r14d - - xorl %r9d,%r15d - rorl $6,%r13d - movl %r9d,%edx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%edx - addl %r12d,%r11d - addl %r12d,%edx - - leaq 4(%rbp),%rbp - movl 56(%rsp),%r13d - movl 44(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%edx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 24(%rsp),%r12d - - addl 52(%rsp),%r12d - movl %r11d,%r13d - addl %edi,%r12d - movl %edx,%r14d - rorl $14,%r13d - movl %eax,%edi - - xorl %r11d,%r13d - rorl $9,%r14d - xorl %ebx,%edi - - movl %r12d,52(%rsp) - xorl %edx,%r14d - andl %r11d,%edi - - rorl $5,%r13d - addl %ecx,%r12d - xorl %ebx,%edi - - rorl $11,%r14d - xorl %r11d,%r13d - addl %edi,%r12d - - movl %edx,%edi - addl (%rbp),%r12d - xorl %edx,%r14d - - xorl %r8d,%edi - rorl $6,%r13d - movl %r8d,%ecx - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%ecx - addl %r12d,%r10d - addl %r12d,%ecx - - leaq 4(%rbp),%rbp - movl 60(%rsp),%r13d - movl 48(%rsp),%r15d - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ecx - movl %r15d,%r14d - rorl $2,%r15d - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%r15d - shrl $10,%r14d - - rorl $17,%r15d - xorl %r13d,%r12d - xorl %r14d,%r15d - addl 28(%rsp),%r12d - - addl 56(%rsp),%r12d - movl %r10d,%r13d - addl %r15d,%r12d - movl %ecx,%r14d - rorl $14,%r13d - movl %r11d,%r15d - - xorl %r10d,%r13d - rorl $9,%r14d - xorl %eax,%r15d - - movl %r12d,56(%rsp) - xorl %ecx,%r14d - andl %r10d,%r15d - - rorl $5,%r13d - addl %ebx,%r12d - xorl %eax,%r15d - - rorl $11,%r14d - xorl %r10d,%r13d - addl %r15d,%r12d - - movl %ecx,%r15d - addl (%rbp),%r12d - xorl %ecx,%r14d - - xorl %edx,%r15d - rorl $6,%r13d - movl %edx,%ebx - - andl %r15d,%edi - rorl $2,%r14d - addl %r13d,%r12d - - xorl %edi,%ebx - addl %r12d,%r9d - addl %r12d,%ebx - - leaq 4(%rbp),%rbp - movl 0(%rsp),%r13d - movl 52(%rsp),%edi - - movl %r13d,%r12d - rorl $11,%r13d - addl %r14d,%ebx - movl %edi,%r14d - rorl $2,%edi - - xorl %r12d,%r13d - shrl $3,%r12d - rorl $7,%r13d - xorl %r14d,%edi - shrl $10,%r14d - - rorl $17,%edi - xorl %r13d,%r12d - xorl %r14d,%edi - addl 32(%rsp),%r12d - - addl 60(%rsp),%r12d - movl %r9d,%r13d - addl %edi,%r12d - movl %ebx,%r14d - rorl $14,%r13d - movl %r10d,%edi - - xorl %r9d,%r13d - rorl $9,%r14d - xorl %r11d,%edi - - movl %r12d,60(%rsp) - xorl %ebx,%r14d - andl %r9d,%edi - - rorl $5,%r13d - addl %eax,%r12d - xorl %r11d,%edi - - rorl $11,%r14d - xorl %r9d,%r13d - addl %edi,%r12d - - movl %ebx,%edi - addl (%rbp),%r12d - xorl %ebx,%r14d - - xorl %ecx,%edi - rorl $6,%r13d - movl %ecx,%eax - - andl %edi,%r15d - rorl $2,%r14d - addl %r13d,%r12d - - xorl %r15d,%eax - addl %r12d,%r8d - addl %r12d,%eax - - leaq 20(%rbp),%rbp - cmpb $0,3(%rbp) - jnz L$rounds_16_xx - - movq 64+0(%rsp),%rdi - addl %r14d,%eax - leaq 64(%rsi),%rsi - - addl 0(%rdi),%eax - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb L$loop - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - -.p2align 6 - -K256: -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 -.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 - -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 - -.p2align 6 -sha256_block_data_order_shaext: -_shaext_shortcut: - leaq K256+128(%rip),%rcx - movdqu (%rdi),%xmm1 - movdqu 16(%rdi),%xmm2 - movdqa 512-128(%rcx),%xmm7 - - pshufd $0x1b,%xmm1,%xmm0 - pshufd $0xb1,%xmm1,%xmm1 - pshufd $0x1b,%xmm2,%xmm2 - movdqa %xmm7,%xmm8 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp L$oop_shaext - -.p2align 4 -L$oop_shaext: - movdqu (%rsi),%xmm3 - movdqu 16(%rsi),%xmm4 - movdqu 32(%rsi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%rsi),%xmm6 - - movdqa 0-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 - movdqa %xmm2,%xmm10 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - nop - movdqa %xmm1,%xmm9 -.byte 15,56,203,202 - - movdqa 32-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - leaq 64(%rsi),%rsi -.byte 15,56,204,220 -.byte 15,56,203,202 - - movdqa 64-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - - movdqa 96-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 128-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 160-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 192-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 224-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 256-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 288-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 320-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 352-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 384-128(%rcx),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 416-128(%rcx),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - - movdqa 448-128(%rcx),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa %xmm8,%xmm7 -.byte 15,56,203,202 - - movdqa 480-128(%rcx),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $0x0e,%xmm0,%xmm0 - decq %rdx - nop -.byte 15,56,203,202 - - paddd %xmm10,%xmm2 - paddd %xmm9,%xmm1 - jnz L$oop_shaext - - pshufd $0xb1,%xmm2,%xmm2 - pshufd $0x1b,%xmm1,%xmm7 - pshufd $0xb1,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - - movdqu %xmm1,(%rdi) - movdqu %xmm2,16(%rdi) - .byte 0xf3,0xc3 - - -.p2align 6 -sha256_block_data_order_ssse3: -L$ssse3_shortcut: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $96,%rsp - leaq (%rsi,%rdx,4),%rdx - andq $-64,%rsp - movq %rdi,64+0(%rsp) - movq %rsi,64+8(%rsp) - movq %rdx,64+16(%rsp) - movq %r11,64+24(%rsp) -L$prologue_ssse3: - - movl 0(%rdi),%eax - movl 4(%rdi),%ebx - movl 8(%rdi),%ecx - movl 12(%rdi),%edx - movl 16(%rdi),%r8d - movl 20(%rdi),%r9d - movl 24(%rdi),%r10d - movl 28(%rdi),%r11d - - - jmp L$loop_ssse3 -.p2align 4 -L$loop_ssse3: - movdqa K256+512(%rip),%xmm7 - movdqu 0(%rsi),%xmm0 - movdqu 16(%rsi),%xmm1 - movdqu 32(%rsi),%xmm2 -.byte 102,15,56,0,199 - movdqu 48(%rsi),%xmm3 - leaq K256(%rip),%rbp -.byte 102,15,56,0,207 - movdqa 0(%rbp),%xmm4 - movdqa 32(%rbp),%xmm5 -.byte 102,15,56,0,215 - paddd %xmm0,%xmm4 - movdqa 64(%rbp),%xmm6 -.byte 102,15,56,0,223 - movdqa 96(%rbp),%xmm7 - paddd %xmm1,%xmm5 - paddd %xmm2,%xmm6 - paddd %xmm3,%xmm7 - movdqa %xmm4,0(%rsp) - movl %eax,%r14d - movdqa %xmm5,16(%rsp) - movl %ebx,%edi - movdqa %xmm6,32(%rsp) - xorl %ecx,%edi - movdqa %xmm7,48(%rsp) - movl %r8d,%r13d - jmp L$ssse3_00_47 - -.p2align 4 -L$ssse3_00_47: - subq $-128,%rbp - rorl $14,%r13d - movdqa %xmm1,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm3,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,224,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,250,4 - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm3,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 4(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm0 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm0 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm0,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 0(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm0 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm0,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,0(%rsp) - rorl $14,%r13d - movdqa %xmm2,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm0,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,225,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,251,4 - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm0,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 20(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm1 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm1 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm1,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 32(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm1 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm1,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,16(%rsp) - rorl $14,%r13d - movdqa %xmm3,%xmm4 - movl %r14d,%eax - movl %r9d,%r12d - movdqa %xmm1,%xmm7 - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d -.byte 102,15,58,15,226,4 - andl %r8d,%r12d - xorl %r8d,%r13d -.byte 102,15,58,15,248,4 - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %ebx,%r15d - addl %r12d,%r11d - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r11d,%edx - psrld $7,%xmm6 - addl %edi,%r11d - movl %edx,%r13d - pshufd $250,%xmm1,%xmm7 - addl %r11d,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%r11d - movl %r8d,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %r11d,%r14d - pxor %xmm5,%xmm4 - andl %edx,%r12d - xorl %edx,%r13d - pslld $11,%xmm5 - addl 36(%rsp),%r10d - movl %r11d,%edi - pxor %xmm6,%xmm4 - xorl %r9d,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %eax,%edi - addl %r12d,%r10d - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - psrld $10,%xmm7 - addl %r13d,%r10d - xorl %eax,%r15d - paddd %xmm4,%xmm2 - rorl $2,%r14d - addl %r10d,%ecx - psrlq $17,%xmm6 - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %ecx,%r13d - xorl %r8d,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - psrldq $8,%xmm7 - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - paddd %xmm7,%xmm2 - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - pshufd $80,%xmm2,%xmm7 - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - movdqa %xmm7,%xmm6 - addl %edi,%r9d - movl %ebx,%r13d - psrld $10,%xmm7 - addl %r9d,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%r9d - movl %ecx,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - psrlq $2,%xmm6 - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - pxor %xmm6,%xmm7 - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %r10d,%edi - addl %r12d,%r8d - movdqa 64(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - paddd %xmm7,%xmm2 - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - paddd %xmm2,%xmm6 - movl %eax,%r13d - addl %r8d,%r14d - movdqa %xmm6,32(%rsp) - rorl $14,%r13d - movdqa %xmm0,%xmm4 - movl %r14d,%r8d - movl %ebx,%r12d - movdqa %xmm2,%xmm7 - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d -.byte 102,15,58,15,227,4 - andl %eax,%r12d - xorl %eax,%r13d -.byte 102,15,58,15,249,4 - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - movdqa %xmm4,%xmm5 - xorl %r9d,%r15d - addl %r12d,%edx - movdqa %xmm4,%xmm6 - rorl $6,%r13d - andl %r15d,%edi - psrld $3,%xmm4 - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %edx,%r11d - psrld $7,%xmm6 - addl %edi,%edx - movl %r11d,%r13d - pshufd $250,%xmm2,%xmm7 - addl %edx,%r14d - rorl $14,%r13d - pslld $14,%xmm5 - movl %r14d,%edx - movl %eax,%r12d - pxor %xmm6,%xmm4 - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - psrld $11,%xmm6 - xorl %edx,%r14d - pxor %xmm5,%xmm4 - andl %r11d,%r12d - xorl %r11d,%r13d - pslld $11,%xmm5 - addl 52(%rsp),%ecx - movl %edx,%edi - pxor %xmm6,%xmm4 - xorl %ebx,%r12d - rorl $11,%r14d - movdqa %xmm7,%xmm6 - xorl %r8d,%edi - addl %r12d,%ecx - pxor %xmm5,%xmm4 - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - psrld $10,%xmm7 - addl %r13d,%ecx - xorl %r8d,%r15d - paddd %xmm4,%xmm3 - rorl $2,%r14d - addl %ecx,%r10d - psrlq $17,%xmm6 - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - pxor %xmm6,%xmm7 - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - psrlq $2,%xmm6 - xorl %r10d,%r13d - xorl %eax,%r12d - pxor %xmm6,%xmm7 - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - pshufd $128,%xmm7,%xmm7 - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - psrldq $8,%xmm7 - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - paddd %xmm7,%xmm3 - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - pshufd $80,%xmm3,%xmm7 - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - movdqa %xmm7,%xmm6 - addl %edi,%ebx - movl %r9d,%r13d - psrld $10,%xmm7 - addl %ebx,%r14d - rorl $14,%r13d - psrlq $17,%xmm6 - movl %r14d,%ebx - movl %r10d,%r12d - pxor %xmm6,%xmm7 - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - psrlq $2,%xmm6 - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - pxor %xmm6,%xmm7 - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - pshufd $8,%xmm7,%xmm7 - xorl %ecx,%edi - addl %r12d,%eax - movdqa 96(%rbp),%xmm6 - rorl $6,%r13d - andl %edi,%r15d - pslldq $8,%xmm7 - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - paddd %xmm7,%xmm3 - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - paddd %xmm3,%xmm6 - movl %r8d,%r13d - addl %eax,%r14d - movdqa %xmm6,48(%rsp) - cmpb $0,131(%rbp) - jne L$ssse3_00_47 - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 0(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 4(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 8(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 12(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 16(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 20(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 24(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 28(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - rorl $14,%r13d - movl %r14d,%eax - movl %r9d,%r12d - rorl $9,%r14d - xorl %r8d,%r13d - xorl %r10d,%r12d - rorl $5,%r13d - xorl %eax,%r14d - andl %r8d,%r12d - xorl %r8d,%r13d - addl 32(%rsp),%r11d - movl %eax,%r15d - xorl %r10d,%r12d - rorl $11,%r14d - xorl %ebx,%r15d - addl %r12d,%r11d - rorl $6,%r13d - andl %r15d,%edi - xorl %eax,%r14d - addl %r13d,%r11d - xorl %ebx,%edi - rorl $2,%r14d - addl %r11d,%edx - addl %edi,%r11d - movl %edx,%r13d - addl %r11d,%r14d - rorl $14,%r13d - movl %r14d,%r11d - movl %r8d,%r12d - rorl $9,%r14d - xorl %edx,%r13d - xorl %r9d,%r12d - rorl $5,%r13d - xorl %r11d,%r14d - andl %edx,%r12d - xorl %edx,%r13d - addl 36(%rsp),%r10d - movl %r11d,%edi - xorl %r9d,%r12d - rorl $11,%r14d - xorl %eax,%edi - addl %r12d,%r10d - rorl $6,%r13d - andl %edi,%r15d - xorl %r11d,%r14d - addl %r13d,%r10d - xorl %eax,%r15d - rorl $2,%r14d - addl %r10d,%ecx - addl %r15d,%r10d - movl %ecx,%r13d - addl %r10d,%r14d - rorl $14,%r13d - movl %r14d,%r10d - movl %edx,%r12d - rorl $9,%r14d - xorl %ecx,%r13d - xorl %r8d,%r12d - rorl $5,%r13d - xorl %r10d,%r14d - andl %ecx,%r12d - xorl %ecx,%r13d - addl 40(%rsp),%r9d - movl %r10d,%r15d - xorl %r8d,%r12d - rorl $11,%r14d - xorl %r11d,%r15d - addl %r12d,%r9d - rorl $6,%r13d - andl %r15d,%edi - xorl %r10d,%r14d - addl %r13d,%r9d - xorl %r11d,%edi - rorl $2,%r14d - addl %r9d,%ebx - addl %edi,%r9d - movl %ebx,%r13d - addl %r9d,%r14d - rorl $14,%r13d - movl %r14d,%r9d - movl %ecx,%r12d - rorl $9,%r14d - xorl %ebx,%r13d - xorl %edx,%r12d - rorl $5,%r13d - xorl %r9d,%r14d - andl %ebx,%r12d - xorl %ebx,%r13d - addl 44(%rsp),%r8d - movl %r9d,%edi - xorl %edx,%r12d - rorl $11,%r14d - xorl %r10d,%edi - addl %r12d,%r8d - rorl $6,%r13d - andl %edi,%r15d - xorl %r9d,%r14d - addl %r13d,%r8d - xorl %r10d,%r15d - rorl $2,%r14d - addl %r8d,%eax - addl %r15d,%r8d - movl %eax,%r13d - addl %r8d,%r14d - rorl $14,%r13d - movl %r14d,%r8d - movl %ebx,%r12d - rorl $9,%r14d - xorl %eax,%r13d - xorl %ecx,%r12d - rorl $5,%r13d - xorl %r8d,%r14d - andl %eax,%r12d - xorl %eax,%r13d - addl 48(%rsp),%edx - movl %r8d,%r15d - xorl %ecx,%r12d - rorl $11,%r14d - xorl %r9d,%r15d - addl %r12d,%edx - rorl $6,%r13d - andl %r15d,%edi - xorl %r8d,%r14d - addl %r13d,%edx - xorl %r9d,%edi - rorl $2,%r14d - addl %edx,%r11d - addl %edi,%edx - movl %r11d,%r13d - addl %edx,%r14d - rorl $14,%r13d - movl %r14d,%edx - movl %eax,%r12d - rorl $9,%r14d - xorl %r11d,%r13d - xorl %ebx,%r12d - rorl $5,%r13d - xorl %edx,%r14d - andl %r11d,%r12d - xorl %r11d,%r13d - addl 52(%rsp),%ecx - movl %edx,%edi - xorl %ebx,%r12d - rorl $11,%r14d - xorl %r8d,%edi - addl %r12d,%ecx - rorl $6,%r13d - andl %edi,%r15d - xorl %edx,%r14d - addl %r13d,%ecx - xorl %r8d,%r15d - rorl $2,%r14d - addl %ecx,%r10d - addl %r15d,%ecx - movl %r10d,%r13d - addl %ecx,%r14d - rorl $14,%r13d - movl %r14d,%ecx - movl %r11d,%r12d - rorl $9,%r14d - xorl %r10d,%r13d - xorl %eax,%r12d - rorl $5,%r13d - xorl %ecx,%r14d - andl %r10d,%r12d - xorl %r10d,%r13d - addl 56(%rsp),%ebx - movl %ecx,%r15d - xorl %eax,%r12d - rorl $11,%r14d - xorl %edx,%r15d - addl %r12d,%ebx - rorl $6,%r13d - andl %r15d,%edi - xorl %ecx,%r14d - addl %r13d,%ebx - xorl %edx,%edi - rorl $2,%r14d - addl %ebx,%r9d - addl %edi,%ebx - movl %r9d,%r13d - addl %ebx,%r14d - rorl $14,%r13d - movl %r14d,%ebx - movl %r10d,%r12d - rorl $9,%r14d - xorl %r9d,%r13d - xorl %r11d,%r12d - rorl $5,%r13d - xorl %ebx,%r14d - andl %r9d,%r12d - xorl %r9d,%r13d - addl 60(%rsp),%eax - movl %ebx,%edi - xorl %r11d,%r12d - rorl $11,%r14d - xorl %ecx,%edi - addl %r12d,%eax - rorl $6,%r13d - andl %edi,%r15d - xorl %ebx,%r14d - addl %r13d,%eax - xorl %ecx,%r15d - rorl $2,%r14d - addl %eax,%r8d - addl %r15d,%eax - movl %r8d,%r13d - addl %eax,%r14d - movq 64+0(%rsp),%rdi - movl %r14d,%eax - - addl 0(%rdi),%eax - leaq 64(%rsi),%rsi - addl 4(%rdi),%ebx - addl 8(%rdi),%ecx - addl 12(%rdi),%edx - addl 16(%rdi),%r8d - addl 20(%rdi),%r9d - addl 24(%rdi),%r10d - addl 28(%rdi),%r11d - - cmpq 64+16(%rsp),%rsi - - movl %eax,0(%rdi) - movl %ebx,4(%rdi) - movl %ecx,8(%rdi) - movl %edx,12(%rdi) - movl %r8d,16(%rdi) - movl %r9d,20(%rdi) - movl %r10d,24(%rdi) - movl %r11d,28(%rdi) - jb L$loop_ssse3 - - movq 64+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue_ssse3: - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha512-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha512-x86_64.s deleted file mode 100644 index 1cae4e11fb33db..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha512-x86_64.s +++ /dev/null @@ -1,1783 +0,0 @@ -.text - - -.globl _sha512_block_data_order - -.p2align 4 -_sha512_block_data_order: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - movq %rsp,%r11 - shlq $4,%rdx - subq $128+32,%rsp - leaq (%rsi,%rdx,8),%rdx - andq $-64,%rsp - movq %rdi,128+0(%rsp) - movq %rsi,128+8(%rsp) - movq %rdx,128+16(%rsp) - movq %r11,128+24(%rsp) -L$prologue: - - movq 0(%rdi),%rax - movq 8(%rdi),%rbx - movq 16(%rdi),%rcx - movq 24(%rdi),%rdx - movq 32(%rdi),%r8 - movq 40(%rdi),%r9 - movq 48(%rdi),%r10 - movq 56(%rdi),%r11 - jmp L$loop - -.p2align 4 -L$loop: - movq %rbx,%rdi - leaq K512(%rip),%rbp - xorq %rcx,%rdi - movq 0(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 8(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 16(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 24(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 32(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 40(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 48(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 56(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - addq %r14,%rax - movq 64(%rsi),%r12 - movq %r8,%r13 - movq %rax,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - addq %r14,%r11 - movq 72(%rsi),%r12 - movq %rdx,%r13 - movq %r11,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - addq %r14,%r10 - movq 80(%rsi),%r12 - movq %rcx,%r13 - movq %r10,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - addq %r14,%r9 - movq 88(%rsi),%r12 - movq %rbx,%r13 - movq %r9,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - addq %r14,%r8 - movq 96(%rsi),%r12 - movq %rax,%r13 - movq %r8,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - addq %r14,%rdx - movq 104(%rsi),%r12 - movq %r11,%r13 - movq %rdx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - addq %r14,%rcx - movq 112(%rsi),%r12 - movq %r10,%r13 - movq %rcx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - addq %r14,%rbx - movq 120(%rsi),%r12 - movq %r9,%r13 - movq %rbx,%r14 - bswapq %r12 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - jmp L$rounds_16_xx -.p2align 4 -L$rounds_16_xx: - movq 8(%rsp),%r13 - movq 112(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 72(%rsp),%r12 - - addq 0(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,0(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 16(%rsp),%r13 - movq 120(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 80(%rsp),%r12 - - addq 8(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,8(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 24(%rsp),%r13 - movq 0(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 88(%rsp),%r12 - - addq 16(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,16(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 32(%rsp),%r13 - movq 8(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 96(%rsp),%r12 - - addq 24(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,24(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 40(%rsp),%r13 - movq 16(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 104(%rsp),%r12 - - addq 32(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,32(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 48(%rsp),%r13 - movq 24(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 112(%rsp),%r12 - - addq 40(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,40(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 56(%rsp),%r13 - movq 32(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 120(%rsp),%r12 - - addq 48(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,48(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 64(%rsp),%r13 - movq 40(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 0(%rsp),%r12 - - addq 56(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,56(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - movq 72(%rsp),%r13 - movq 48(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rax - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 8(%rsp),%r12 - - addq 64(%rsp),%r12 - movq %r8,%r13 - addq %r15,%r12 - movq %rax,%r14 - rorq $23,%r13 - movq %r9,%r15 - - xorq %r8,%r13 - rorq $5,%r14 - xorq %r10,%r15 - - movq %r12,64(%rsp) - xorq %rax,%r14 - andq %r8,%r15 - - rorq $4,%r13 - addq %r11,%r12 - xorq %r10,%r15 - - rorq $6,%r14 - xorq %r8,%r13 - addq %r15,%r12 - - movq %rax,%r15 - addq (%rbp),%r12 - xorq %rax,%r14 - - xorq %rbx,%r15 - rorq $14,%r13 - movq %rbx,%r11 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r11 - addq %r12,%rdx - addq %r12,%r11 - - leaq 8(%rbp),%rbp - movq 80(%rsp),%r13 - movq 56(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r11 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 16(%rsp),%r12 - - addq 72(%rsp),%r12 - movq %rdx,%r13 - addq %rdi,%r12 - movq %r11,%r14 - rorq $23,%r13 - movq %r8,%rdi - - xorq %rdx,%r13 - rorq $5,%r14 - xorq %r9,%rdi - - movq %r12,72(%rsp) - xorq %r11,%r14 - andq %rdx,%rdi - - rorq $4,%r13 - addq %r10,%r12 - xorq %r9,%rdi - - rorq $6,%r14 - xorq %rdx,%r13 - addq %rdi,%r12 - - movq %r11,%rdi - addq (%rbp),%r12 - xorq %r11,%r14 - - xorq %rax,%rdi - rorq $14,%r13 - movq %rax,%r10 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r10 - addq %r12,%rcx - addq %r12,%r10 - - leaq 24(%rbp),%rbp - movq 88(%rsp),%r13 - movq 64(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r10 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 24(%rsp),%r12 - - addq 80(%rsp),%r12 - movq %rcx,%r13 - addq %r15,%r12 - movq %r10,%r14 - rorq $23,%r13 - movq %rdx,%r15 - - xorq %rcx,%r13 - rorq $5,%r14 - xorq %r8,%r15 - - movq %r12,80(%rsp) - xorq %r10,%r14 - andq %rcx,%r15 - - rorq $4,%r13 - addq %r9,%r12 - xorq %r8,%r15 - - rorq $6,%r14 - xorq %rcx,%r13 - addq %r15,%r12 - - movq %r10,%r15 - addq (%rbp),%r12 - xorq %r10,%r14 - - xorq %r11,%r15 - rorq $14,%r13 - movq %r11,%r9 - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%r9 - addq %r12,%rbx - addq %r12,%r9 - - leaq 8(%rbp),%rbp - movq 96(%rsp),%r13 - movq 72(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r9 - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 32(%rsp),%r12 - - addq 88(%rsp),%r12 - movq %rbx,%r13 - addq %rdi,%r12 - movq %r9,%r14 - rorq $23,%r13 - movq %rcx,%rdi - - xorq %rbx,%r13 - rorq $5,%r14 - xorq %rdx,%rdi - - movq %r12,88(%rsp) - xorq %r9,%r14 - andq %rbx,%rdi - - rorq $4,%r13 - addq %r8,%r12 - xorq %rdx,%rdi - - rorq $6,%r14 - xorq %rbx,%r13 - addq %rdi,%r12 - - movq %r9,%rdi - addq (%rbp),%r12 - xorq %r9,%r14 - - xorq %r10,%rdi - rorq $14,%r13 - movq %r10,%r8 - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%r8 - addq %r12,%rax - addq %r12,%r8 - - leaq 24(%rbp),%rbp - movq 104(%rsp),%r13 - movq 80(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%r8 - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 40(%rsp),%r12 - - addq 96(%rsp),%r12 - movq %rax,%r13 - addq %r15,%r12 - movq %r8,%r14 - rorq $23,%r13 - movq %rbx,%r15 - - xorq %rax,%r13 - rorq $5,%r14 - xorq %rcx,%r15 - - movq %r12,96(%rsp) - xorq %r8,%r14 - andq %rax,%r15 - - rorq $4,%r13 - addq %rdx,%r12 - xorq %rcx,%r15 - - rorq $6,%r14 - xorq %rax,%r13 - addq %r15,%r12 - - movq %r8,%r15 - addq (%rbp),%r12 - xorq %r8,%r14 - - xorq %r9,%r15 - rorq $14,%r13 - movq %r9,%rdx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rdx - addq %r12,%r11 - addq %r12,%rdx - - leaq 8(%rbp),%rbp - movq 112(%rsp),%r13 - movq 88(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rdx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 48(%rsp),%r12 - - addq 104(%rsp),%r12 - movq %r11,%r13 - addq %rdi,%r12 - movq %rdx,%r14 - rorq $23,%r13 - movq %rax,%rdi - - xorq %r11,%r13 - rorq $5,%r14 - xorq %rbx,%rdi - - movq %r12,104(%rsp) - xorq %rdx,%r14 - andq %r11,%rdi - - rorq $4,%r13 - addq %rcx,%r12 - xorq %rbx,%rdi - - rorq $6,%r14 - xorq %r11,%r13 - addq %rdi,%r12 - - movq %rdx,%rdi - addq (%rbp),%r12 - xorq %rdx,%r14 - - xorq %r8,%rdi - rorq $14,%r13 - movq %r8,%rcx - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rcx - addq %r12,%r10 - addq %r12,%rcx - - leaq 24(%rbp),%rbp - movq 120(%rsp),%r13 - movq 96(%rsp),%r15 - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rcx - movq %r15,%r14 - rorq $42,%r15 - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%r15 - shrq $6,%r14 - - rorq $19,%r15 - xorq %r13,%r12 - xorq %r14,%r15 - addq 56(%rsp),%r12 - - addq 112(%rsp),%r12 - movq %r10,%r13 - addq %r15,%r12 - movq %rcx,%r14 - rorq $23,%r13 - movq %r11,%r15 - - xorq %r10,%r13 - rorq $5,%r14 - xorq %rax,%r15 - - movq %r12,112(%rsp) - xorq %rcx,%r14 - andq %r10,%r15 - - rorq $4,%r13 - addq %rbx,%r12 - xorq %rax,%r15 - - rorq $6,%r14 - xorq %r10,%r13 - addq %r15,%r12 - - movq %rcx,%r15 - addq (%rbp),%r12 - xorq %rcx,%r14 - - xorq %rdx,%r15 - rorq $14,%r13 - movq %rdx,%rbx - - andq %r15,%rdi - rorq $28,%r14 - addq %r13,%r12 - - xorq %rdi,%rbx - addq %r12,%r9 - addq %r12,%rbx - - leaq 8(%rbp),%rbp - movq 0(%rsp),%r13 - movq 104(%rsp),%rdi - - movq %r13,%r12 - rorq $7,%r13 - addq %r14,%rbx - movq %rdi,%r14 - rorq $42,%rdi - - xorq %r12,%r13 - shrq $7,%r12 - rorq $1,%r13 - xorq %r14,%rdi - shrq $6,%r14 - - rorq $19,%rdi - xorq %r13,%r12 - xorq %r14,%rdi - addq 64(%rsp),%r12 - - addq 120(%rsp),%r12 - movq %r9,%r13 - addq %rdi,%r12 - movq %rbx,%r14 - rorq $23,%r13 - movq %r10,%rdi - - xorq %r9,%r13 - rorq $5,%r14 - xorq %r11,%rdi - - movq %r12,120(%rsp) - xorq %rbx,%r14 - andq %r9,%rdi - - rorq $4,%r13 - addq %rax,%r12 - xorq %r11,%rdi - - rorq $6,%r14 - xorq %r9,%r13 - addq %rdi,%r12 - - movq %rbx,%rdi - addq (%rbp),%r12 - xorq %rbx,%r14 - - xorq %rcx,%rdi - rorq $14,%r13 - movq %rcx,%rax - - andq %rdi,%r15 - rorq $28,%r14 - addq %r13,%r12 - - xorq %r15,%rax - addq %r12,%r8 - addq %r12,%rax - - leaq 24(%rbp),%rbp - cmpb $0,7(%rbp) - jnz L$rounds_16_xx - - movq 128+0(%rsp),%rdi - addq %r14,%rax - leaq 128(%rsi),%rsi - - addq 0(%rdi),%rax - addq 8(%rdi),%rbx - addq 16(%rdi),%rcx - addq 24(%rdi),%rdx - addq 32(%rdi),%r8 - addq 40(%rdi),%r9 - addq 48(%rdi),%r10 - addq 56(%rdi),%r11 - - cmpq 128+16(%rsp),%rsi - - movq %rax,0(%rdi) - movq %rbx,8(%rdi) - movq %rcx,16(%rdi) - movq %rdx,24(%rdi) - movq %r8,32(%rdi) - movq %r9,40(%rdi) - movq %r10,48(%rdi) - movq %r11,56(%rdi) - jb L$loop - - movq 128+24(%rsp),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - -.p2align 6 - -K512: -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0x428a2f98d728ae22,0x7137449123ef65cd -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x3956c25bf348b538,0x59f111f1b605d019 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0xd807aa98a3030242,0x12835b0145706fbe -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0x9bdc06a725c71235,0xc19bf174cf692694 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0x983e5152ee66dfab,0xa831c66d2db43210 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x06ca6351e003826f,0x142929670a0e6e70 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0x81c2c92e47edaee6,0x92722c851482353b -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xd192e819d6ef5218,0xd69906245565a910 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0xf40e35855771202a,0x106aa07032bbd1b8 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0x90befffa23631e28,0xa4506cebde82bde9 -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xca273eceea26619c,0xd186b8c721c0c207 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x113f9804bef90dae,0x1b710b35131c471b -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x28db77f523047d84,0x32caab7b40c72493 -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 -.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 - -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.quad 0x0001020304050607,0x08090a0b0c0d0e0f -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/whrlpool/wp-x86_64.s b/deps/openssl/asm_obsolete/x64-macosx-gas/whrlpool/wp-x86_64.s deleted file mode 100644 index ad43b5a1b35149..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/whrlpool/wp-x86_64.s +++ /dev/null @@ -1,861 +0,0 @@ -.text - -.globl _whirlpool_block - -.p2align 4 -_whirlpool_block: - pushq %rbx - pushq %rbp - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 - - movq %rsp,%r11 - subq $128+40,%rsp - andq $-64,%rsp - - leaq 128(%rsp),%r10 - movq %rdi,0(%r10) - movq %rsi,8(%r10) - movq %rdx,16(%r10) - movq %r11,32(%r10) -L$prologue: - - movq %r10,%rbx - leaq L$table(%rip),%rbp - - xorq %rcx,%rcx - xorq %rdx,%rdx - movq 0(%rdi),%r8 - movq 8(%rdi),%r9 - movq 16(%rdi),%r10 - movq 24(%rdi),%r11 - movq 32(%rdi),%r12 - movq 40(%rdi),%r13 - movq 48(%rdi),%r14 - movq 56(%rdi),%r15 -L$outerloop: - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - xorq %rsi,%rsi - movq %rsi,24(%rbx) - jmp L$round -.p2align 4 -L$round: - movq 4096(%rbp,%rsi,8),%r8 - movl 0(%rsp),%eax - movl 4(%rsp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - movq 7(%rbp,%rdi,8),%r9 - movl 0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 6(%rbp,%rsi,8),%r10 - movq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - movq 4(%rbp,%rsi,8),%r12 - movq 3(%rbp,%rdi,8),%r13 - movl 0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - movq 2(%rbp,%rsi,8),%r14 - movq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - movl 56+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - movl 56+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - movq %r8,0(%rsp) - movq %r9,8(%rsp) - movq %r10,16(%rsp) - movq %r11,24(%rsp) - movq %r12,32(%rsp) - movq %r13,40(%rsp) - movq %r14,48(%rsp) - movq %r15,56(%rsp) - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r8 - xorq 7(%rbp,%rdi,8),%r9 - movl 64+0+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r10 - xorq 5(%rbp,%rdi,8),%r11 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r12 - xorq 3(%rbp,%rdi,8),%r13 - movl 64+0+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r14 - xorq 1(%rbp,%rdi,8),%r15 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r9 - xorq 7(%rbp,%rdi,8),%r10 - movl 64+8+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r11 - xorq 5(%rbp,%rdi,8),%r12 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r13 - xorq 3(%rbp,%rdi,8),%r14 - movl 64+8+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r15 - xorq 1(%rbp,%rdi,8),%r8 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r10 - xorq 7(%rbp,%rdi,8),%r11 - movl 64+16+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r12 - xorq 5(%rbp,%rdi,8),%r13 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r14 - xorq 3(%rbp,%rdi,8),%r15 - movl 64+16+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r8 - xorq 1(%rbp,%rdi,8),%r9 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r11 - xorq 7(%rbp,%rdi,8),%r12 - movl 64+24+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r13 - xorq 5(%rbp,%rdi,8),%r14 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r15 - xorq 3(%rbp,%rdi,8),%r8 - movl 64+24+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r9 - xorq 1(%rbp,%rdi,8),%r10 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r12 - xorq 7(%rbp,%rdi,8),%r13 - movl 64+32+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r14 - xorq 5(%rbp,%rdi,8),%r15 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r8 - xorq 3(%rbp,%rdi,8),%r9 - movl 64+32+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r10 - xorq 1(%rbp,%rdi,8),%r11 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r13 - xorq 7(%rbp,%rdi,8),%r14 - movl 64+40+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r15 - xorq 5(%rbp,%rdi,8),%r8 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r9 - xorq 3(%rbp,%rdi,8),%r10 - movl 64+40+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r11 - xorq 1(%rbp,%rdi,8),%r12 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r14 - xorq 7(%rbp,%rdi,8),%r15 - movl 64+48+8(%rsp),%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r8 - xorq 5(%rbp,%rdi,8),%r9 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r10 - xorq 3(%rbp,%rdi,8),%r11 - movl 64+48+8+4(%rsp),%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r12 - xorq 1(%rbp,%rdi,8),%r13 - shrl $16,%eax - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 0(%rbp,%rsi,8),%r15 - xorq 7(%rbp,%rdi,8),%r8 - - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 6(%rbp,%rsi,8),%r9 - xorq 5(%rbp,%rdi,8),%r10 - shrl $16,%ebx - leaq (%rcx,%rcx,1),%rsi - movzbl %bl,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %bh,%edx - xorq 4(%rbp,%rsi,8),%r11 - xorq 3(%rbp,%rdi,8),%r12 - - leaq (%rcx,%rcx,1),%rsi - movzbl %al,%ecx - leaq (%rdx,%rdx,1),%rdi - movzbl %ah,%edx - xorq 2(%rbp,%rsi,8),%r13 - xorq 1(%rbp,%rdi,8),%r14 - leaq 128(%rsp),%rbx - movq 24(%rbx),%rsi - addq $1,%rsi - cmpq $10,%rsi - je L$roundsdone - - movq %rsi,24(%rbx) - movq %r8,64+0(%rsp) - movq %r9,64+8(%rsp) - movq %r10,64+16(%rsp) - movq %r11,64+24(%rsp) - movq %r12,64+32(%rsp) - movq %r13,64+40(%rsp) - movq %r14,64+48(%rsp) - movq %r15,64+56(%rsp) - jmp L$round -.p2align 4 -L$roundsdone: - movq 0(%rbx),%rdi - movq 8(%rbx),%rsi - movq 16(%rbx),%rax - xorq 0(%rsi),%r8 - xorq 8(%rsi),%r9 - xorq 16(%rsi),%r10 - xorq 24(%rsi),%r11 - xorq 32(%rsi),%r12 - xorq 40(%rsi),%r13 - xorq 48(%rsi),%r14 - xorq 56(%rsi),%r15 - xorq 0(%rdi),%r8 - xorq 8(%rdi),%r9 - xorq 16(%rdi),%r10 - xorq 24(%rdi),%r11 - xorq 32(%rdi),%r12 - xorq 40(%rdi),%r13 - xorq 48(%rdi),%r14 - xorq 56(%rdi),%r15 - movq %r8,0(%rdi) - movq %r9,8(%rdi) - movq %r10,16(%rdi) - movq %r11,24(%rdi) - movq %r12,32(%rdi) - movq %r13,40(%rdi) - movq %r14,48(%rdi) - movq %r15,56(%rdi) - leaq 64(%rsi),%rsi - subq $1,%rax - jz L$alldone - movq %rsi,8(%rbx) - movq %rax,16(%rbx) - jmp L$outerloop -L$alldone: - movq 32(%rbx),%rsi - movq (%rsi),%r15 - movq 8(%rsi),%r14 - movq 16(%rsi),%r13 - movq 24(%rsi),%r12 - movq 32(%rsi),%rbp - movq 40(%rsi),%rbx - leaq 48(%rsi),%rsp -L$epilogue: - .byte 0xf3,0xc3 - - -.p2align 6 - -L$table: -.byte 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm_obsolete/x64-macosx-gas/x86_64cpuid.s b/deps/openssl/asm_obsolete/x64-macosx-gas/x86_64cpuid.s deleted file mode 100644 index 7075cf80d3015b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-macosx-gas/x86_64cpuid.s +++ /dev/null @@ -1,275 +0,0 @@ - -.private_extern _OPENSSL_cpuid_setup -.mod_init_func - .p2align 3 - .quad _OPENSSL_cpuid_setup - -.private_extern _OPENSSL_ia32cap_P -.comm _OPENSSL_ia32cap_P,16,2 - -.text - -.globl _OPENSSL_atomic_add - -.p2align 4 -_OPENSSL_atomic_add: - movl (%rdi),%eax -L$spin: leaq (%rsi,%rax,1),%r8 -.byte 0xf0 - cmpxchgl %r8d,(%rdi) - jne L$spin - movl %r8d,%eax -.byte 0x48,0x98 - .byte 0xf3,0xc3 - - -.globl _OPENSSL_rdtsc - -.p2align 4 -_OPENSSL_rdtsc: - rdtsc - shlq $32,%rdx - orq %rdx,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_ia32_cpuid - -.p2align 4 -_OPENSSL_ia32_cpuid: - movq %rbx,%r8 - - xorl %eax,%eax - movl %eax,8(%rdi) - cpuid - movl %eax,%r11d - - xorl %eax,%eax - cmpl $0x756e6547,%ebx - setne %al - movl %eax,%r9d - cmpl $0x49656e69,%edx - setne %al - orl %eax,%r9d - cmpl $0x6c65746e,%ecx - setne %al - orl %eax,%r9d - jz L$intel - - cmpl $0x68747541,%ebx - setne %al - movl %eax,%r10d - cmpl $0x69746E65,%edx - setne %al - orl %eax,%r10d - cmpl $0x444D4163,%ecx - setne %al - orl %eax,%r10d - jnz L$intel - - - movl $0x80000000,%eax - cpuid - cmpl $0x80000001,%eax - jb L$intel - movl %eax,%r10d - movl $0x80000001,%eax - cpuid - orl %ecx,%r9d - andl $0x00000801,%r9d - - cmpl $0x80000008,%r10d - jb L$intel - - movl $0x80000008,%eax - cpuid - movzbq %cl,%r10 - incq %r10 - - movl $1,%eax - cpuid - btl $28,%edx - jnc L$generic - shrl $16,%ebx - cmpb %r10b,%bl - ja L$generic - andl $0xefffffff,%edx - jmp L$generic - -L$intel: - cmpl $4,%r11d - movl $-1,%r10d - jb L$nocacheinfo - - movl $4,%eax - movl $0,%ecx - cpuid - movl %eax,%r10d - shrl $14,%r10d - andl $0xfff,%r10d - -L$nocacheinfo: - movl $1,%eax - cpuid - andl $0xbfefffff,%edx - cmpl $0,%r9d - jne L$notintel - orl $0x40000000,%edx - andb $15,%ah - cmpb $15,%ah - jne L$notP4 - orl $0x00100000,%edx -L$notP4: - cmpb $6,%ah - jne L$notintel - andl $0x0fff0ff0,%eax - cmpl $0x00050670,%eax - je L$knights - cmpl $0x00080650,%eax - jne L$notintel -L$knights: - andl $0xfbffffff,%ecx - -L$notintel: - btl $28,%edx - jnc L$generic - andl $0xefffffff,%edx - cmpl $0,%r10d - je L$generic - - orl $0x10000000,%edx - shrl $16,%ebx - cmpb $1,%bl - ja L$generic - andl $0xefffffff,%edx -L$generic: - andl $0x00000800,%r9d - andl $0xfffff7ff,%ecx - orl %ecx,%r9d - - movl %edx,%r10d - - cmpl $7,%r11d - jb L$no_extended_info - movl $7,%eax - xorl %ecx,%ecx - cpuid - btl $26,%r9d - jc L$notknights - andl $0xfff7ffff,%ebx -L$notknights: - movl %ebx,8(%rdi) -L$no_extended_info: - - btl $27,%r9d - jnc L$clear_avx - xorl %ecx,%ecx -.byte 0x0f,0x01,0xd0 - andl $6,%eax - cmpl $6,%eax - je L$done -L$clear_avx: - movl $0xefffe7ff,%eax - andl %eax,%r9d - andl $0xffffffdf,8(%rdi) -L$done: - shlq $32,%r9 - movl %r10d,%eax - movq %r8,%rbx - orq %r9,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_cleanse - -.p2align 4 -_OPENSSL_cleanse: - xorq %rax,%rax - cmpq $15,%rsi - jae L$ot - cmpq $0,%rsi - je L$ret -L$ittle: - movb %al,(%rdi) - subq $1,%rsi - leaq 1(%rdi),%rdi - jnz L$ittle -L$ret: - .byte 0xf3,0xc3 -.p2align 4 -L$ot: - testq $7,%rdi - jz L$aligned - movb %al,(%rdi) - leaq -1(%rsi),%rsi - leaq 1(%rdi),%rdi - jmp L$ot -L$aligned: - movq %rax,(%rdi) - leaq -8(%rsi),%rsi - testq $-8,%rsi - leaq 8(%rdi),%rdi - jnz L$aligned - cmpq $0,%rsi - jne L$ittle - .byte 0xf3,0xc3 - -.globl _OPENSSL_wipe_cpu - -.p2align 4 -_OPENSSL_wipe_cpu: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - pxor %xmm8,%xmm8 - pxor %xmm9,%xmm9 - pxor %xmm10,%xmm10 - pxor %xmm11,%xmm11 - pxor %xmm12,%xmm12 - pxor %xmm13,%xmm13 - pxor %xmm14,%xmm14 - pxor %xmm15,%xmm15 - xorq %rcx,%rcx - xorq %rdx,%rdx - xorq %rsi,%rsi - xorq %rdi,%rdi - xorq %r8,%r8 - xorq %r9,%r9 - xorq %r10,%r10 - xorq %r11,%r11 - leaq 8(%rsp),%rax - .byte 0xf3,0xc3 - -.globl _OPENSSL_ia32_rdrand - -.p2align 4 -_OPENSSL_ia32_rdrand: - movl $8,%ecx -L$oop_rdrand: -.byte 72,15,199,240 - jc L$break_rdrand - loop L$oop_rdrand -L$break_rdrand: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 - - -.globl _OPENSSL_ia32_rdseed - -.p2align 4 -_OPENSSL_ia32_rdseed: - movl $8,%ecx -L$oop_rdseed: -.byte 72,15,199,248 - jc L$break_rdseed - loop L$oop_rdseed -L$break_rdseed: - cmpq $0,%rax - cmoveq %rcx,%rax - .byte 0xf3,0xc3 diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aes-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/aes-x86_64.asm deleted file mode 100644 index 64f07ad589a53d..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aes-x86_64.asm +++ /dev/null @@ -1,2870 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -ALIGN 16 -_x86_64_AES_encrypt PROC PRIVATE - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - - mov r13d,DWORD PTR[240+r15] - sub r13d,1 - jmp $L$enc_loop -ALIGN 16 -$L$enc_loop:: - - movzx esi,al - movzx edi,bl - movzx ebp,cl - mov r10d,DWORD PTR[rsi*8+r14] - mov r11d,DWORD PTR[rdi*8+r14] - mov r12d,DWORD PTR[rbp*8+r14] - - movzx esi,bh - movzx edi,ch - movzx ebp,dl - xor r10d,DWORD PTR[3+rsi*8+r14] - xor r11d,DWORD PTR[3+rdi*8+r14] - mov r8d,DWORD PTR[rbp*8+r14] - - movzx esi,dh - shr ecx,16 - movzx ebp,ah - xor r12d,DWORD PTR[3+rsi*8+r14] - shr edx,16 - xor r8d,DWORD PTR[3+rbp*8+r14] - - shr ebx,16 - lea r15,QWORD PTR[16+r15] - shr eax,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - xor r10d,DWORD PTR[2+rsi*8+r14] - xor r11d,DWORD PTR[2+rdi*8+r14] - xor r12d,DWORD PTR[2+rbp*8+r14] - - movzx esi,dh - movzx edi,ah - movzx ebp,bl - xor r10d,DWORD PTR[1+rsi*8+r14] - xor r11d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[2+rbp*8+r14] - - mov edx,DWORD PTR[12+r15] - movzx edi,bh - movzx ebp,ch - mov eax,DWORD PTR[r15] - xor r12d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[1+rbp*8+r14] - - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d - sub r13d,1 - jnz $L$enc_loop - movzx esi,al - movzx edi,bl - movzx ebp,cl - movzx r10d,BYTE PTR[2+rsi*8+r14] - movzx r11d,BYTE PTR[2+rdi*8+r14] - movzx r12d,BYTE PTR[2+rbp*8+r14] - - movzx esi,dl - movzx edi,bh - movzx ebp,ch - movzx r8d,BYTE PTR[2+rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - mov ebp,DWORD PTR[rbp*8+r14] - - and edi,00000ff00h - and ebp,00000ff00h - - xor r10d,edi - xor r11d,ebp - shr ecx,16 - - movzx esi,dh - movzx edi,ah - shr edx,16 - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - - and esi,00000ff00h - and edi,00000ff00h - shr ebx,16 - xor r12d,esi - xor r8d,edi - shr eax,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[rdi*8+r14] - mov ebp,DWORD PTR[rbp*8+r14] - - and esi,000ff0000h - and edi,000ff0000h - and ebp,000ff0000h - - xor r10d,esi - xor r11d,edi - xor r12d,ebp - - movzx esi,bl - movzx edi,dh - movzx ebp,ah - mov esi,DWORD PTR[rsi*8+r14] - mov edi,DWORD PTR[2+rdi*8+r14] - mov ebp,DWORD PTR[2+rbp*8+r14] - - and esi,000ff0000h - and edi,0ff000000h - and ebp,0ff000000h - - xor r8d,esi - xor r10d,edi - xor r11d,ebp - - movzx esi,bh - movzx edi,ch - mov edx,DWORD PTR[((16+12))+r15] - mov esi,DWORD PTR[2+rsi*8+r14] - mov edi,DWORD PTR[2+rdi*8+r14] - mov eax,DWORD PTR[((16+0))+r15] - - and esi,0ff000000h - and edi,0ff000000h - - xor r12d,esi - xor r8d,edi - - mov ebx,DWORD PTR[((16+4))+r15] - mov ecx,DWORD PTR[((16+8))+r15] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d -DB 0f3h,0c3h -_x86_64_AES_encrypt ENDP - -ALIGN 16 -_x86_64_AES_encrypt_compact PROC PRIVATE - lea r8,QWORD PTR[128+r14] - mov edi,DWORD PTR[((0-128))+r8] - mov ebp,DWORD PTR[((32-128))+r8] - mov r10d,DWORD PTR[((64-128))+r8] - mov r11d,DWORD PTR[((96-128))+r8] - mov edi,DWORD PTR[((128-128))+r8] - mov ebp,DWORD PTR[((160-128))+r8] - mov r10d,DWORD PTR[((192-128))+r8] - mov r11d,DWORD PTR[((224-128))+r8] - jmp $L$enc_loop_compact -ALIGN 16 -$L$enc_loop_compact:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - lea r15,QWORD PTR[16+r15] - movzx r10d,al - movzx r11d,bl - movzx r12d,cl - movzx r8d,dl - movzx esi,bh - movzx edi,ch - shr ecx,16 - movzx ebp,dh - movzx r10d,BYTE PTR[r10*1+r14] - movzx r11d,BYTE PTR[r11*1+r14] - movzx r12d,BYTE PTR[r12*1+r14] - movzx r8d,BYTE PTR[r8*1+r14] - - movzx r9d,BYTE PTR[rsi*1+r14] - movzx esi,ah - movzx r13d,BYTE PTR[rdi*1+r14] - movzx edi,cl - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - - shl r9d,8 - shr edx,16 - shl r13d,8 - xor r10d,r9d - shr eax,16 - movzx r9d,dl - shr ebx,16 - xor r11d,r13d - shl ebp,8 - movzx r13d,al - movzx edi,BYTE PTR[rdi*1+r14] - xor r12d,ebp - - shl esi,8 - movzx ebp,bl - shl edi,16 - xor r8d,esi - movzx r9d,BYTE PTR[r9*1+r14] - movzx esi,dh - movzx r13d,BYTE PTR[r13*1+r14] - xor r10d,edi - - shr ecx,8 - movzx edi,ah - shl r9d,16 - shr ebx,8 - shl r13d,16 - xor r11d,r9d - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx edx,BYTE PTR[rcx*1+r14] - movzx ecx,BYTE PTR[rbx*1+r14] - - shl ebp,16 - xor r12d,r13d - shl esi,24 - xor r8d,ebp - shl edi,24 - xor r10d,esi - shl edx,24 - xor r11d,edi - shl ecx,24 - mov eax,r10d - mov ebx,r11d - xor ecx,r12d - xor edx,r8d - cmp r15,QWORD PTR[16+rsp] - je $L$enc_compact_done - mov r10d,080808080h - mov r11d,080808080h - and r10d,eax - and r11d,ebx - mov esi,r10d - mov edi,r11d - shr r10d,7 - lea r8d,DWORD PTR[rax*1+rax] - shr r11d,7 - lea r9d,DWORD PTR[rbx*1+rbx] - sub esi,r10d - sub edi,r11d - and r8d,0fefefefeh - and r9d,0fefefefeh - and esi,01b1b1b1bh - and edi,01b1b1b1bh - mov r10d,eax - mov r11d,ebx - xor r8d,esi - xor r9d,edi - - xor eax,r8d - xor ebx,r9d - mov r12d,080808080h - rol eax,24 - mov ebp,080808080h - rol ebx,24 - and r12d,ecx - and ebp,edx - xor eax,r8d - xor ebx,r9d - mov esi,r12d - ror r10d,16 - mov edi,ebp - ror r11d,16 - lea r8d,DWORD PTR[rcx*1+rcx] - shr r12d,7 - xor eax,r10d - shr ebp,7 - xor ebx,r11d - ror r10d,8 - lea r9d,DWORD PTR[rdx*1+rdx] - ror r11d,8 - sub esi,r12d - sub edi,ebp - xor eax,r10d - xor ebx,r11d - - and r8d,0fefefefeh - and r9d,0fefefefeh - and esi,01b1b1b1bh - and edi,01b1b1b1bh - mov r12d,ecx - mov ebp,edx - xor r8d,esi - xor r9d,edi - - ror r12d,16 - xor ecx,r8d - ror ebp,16 - xor edx,r9d - rol ecx,24 - mov esi,DWORD PTR[r14] - rol edx,24 - xor ecx,r8d - mov edi,DWORD PTR[64+r14] - xor edx,r9d - mov r8d,DWORD PTR[128+r14] - xor ecx,r12d - ror r12d,8 - xor edx,ebp - ror ebp,8 - xor ecx,r12d - mov r9d,DWORD PTR[192+r14] - xor edx,ebp - jmp $L$enc_loop_compact -ALIGN 16 -$L$enc_compact_done:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] -DB 0f3h,0c3h -_x86_64_AES_encrypt_compact ENDP -PUBLIC AES_encrypt - -ALIGN 16 -PUBLIC asm_AES_encrypt - -asm_AES_encrypt:: -AES_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - - mov r10,rsp - lea rcx,QWORD PTR[((-63))+rdx] - and rsp,-64 - sub rcx,rsp - neg rcx - and rcx,03c0h - sub rsp,rcx - sub rsp,32 - - mov QWORD PTR[16+rsp],rsi - mov QWORD PTR[24+rsp],r10 -$L$enc_prologue:: - - mov r15,rdx - mov r13d,DWORD PTR[240+r15] - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - - shl r13d,4 - lea rbp,QWORD PTR[r13*1+r15] - mov QWORD PTR[rsp],r15 - mov QWORD PTR[8+rsp],rbp - - - lea r14,QWORD PTR[(($L$AES_Te+2048))] - lea rbp,QWORD PTR[768+rsp] - sub rbp,r14 - and rbp,0300h - lea r14,QWORD PTR[rbp*1+r14] - - call _x86_64_AES_encrypt_compact - - mov r9,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_encrypt:: -AES_encrypt ENDP - -ALIGN 16 -_x86_64_AES_decrypt PROC PRIVATE - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - - mov r13d,DWORD PTR[240+r15] - sub r13d,1 - jmp $L$dec_loop -ALIGN 16 -$L$dec_loop:: - - movzx esi,al - movzx edi,bl - movzx ebp,cl - mov r10d,DWORD PTR[rsi*8+r14] - mov r11d,DWORD PTR[rdi*8+r14] - mov r12d,DWORD PTR[rbp*8+r14] - - movzx esi,dh - movzx edi,ah - movzx ebp,dl - xor r10d,DWORD PTR[3+rsi*8+r14] - xor r11d,DWORD PTR[3+rdi*8+r14] - mov r8d,DWORD PTR[rbp*8+r14] - - movzx esi,bh - shr eax,16 - movzx ebp,ch - xor r12d,DWORD PTR[3+rsi*8+r14] - shr edx,16 - xor r8d,DWORD PTR[3+rbp*8+r14] - - shr ebx,16 - lea r15,QWORD PTR[16+r15] - shr ecx,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - xor r10d,DWORD PTR[2+rsi*8+r14] - xor r11d,DWORD PTR[2+rdi*8+r14] - xor r12d,DWORD PTR[2+rbp*8+r14] - - movzx esi,bh - movzx edi,ch - movzx ebp,bl - xor r10d,DWORD PTR[1+rsi*8+r14] - xor r11d,DWORD PTR[1+rdi*8+r14] - xor r8d,DWORD PTR[2+rbp*8+r14] - - movzx esi,dh - mov edx,DWORD PTR[12+r15] - movzx ebp,ah - xor r12d,DWORD PTR[1+rsi*8+r14] - mov eax,DWORD PTR[r15] - xor r8d,DWORD PTR[1+rbp*8+r14] - - xor eax,r10d - mov ebx,DWORD PTR[4+r15] - mov ecx,DWORD PTR[8+r15] - xor ecx,r12d - xor ebx,r11d - xor edx,r8d - sub r13d,1 - jnz $L$dec_loop - lea r14,QWORD PTR[2048+r14] - movzx esi,al - movzx edi,bl - movzx ebp,cl - movzx r10d,BYTE PTR[rsi*1+r14] - movzx r11d,BYTE PTR[rdi*1+r14] - movzx r12d,BYTE PTR[rbp*1+r14] - - movzx esi,dl - movzx edi,dh - movzx ebp,ah - movzx r8d,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl edi,8 - shl ebp,8 - - xor r10d,edi - xor r11d,ebp - shr edx,16 - - movzx esi,bh - movzx edi,ch - shr eax,16 - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - - shl esi,8 - shl edi,8 - shr ebx,16 - xor r12d,esi - xor r8d,edi - shr ecx,16 - - movzx esi,cl - movzx edi,dl - movzx ebp,al - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl esi,16 - shl edi,16 - shl ebp,16 - - xor r10d,esi - xor r11d,edi - xor r12d,ebp - - movzx esi,bl - movzx edi,bh - movzx ebp,ch - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - - shl esi,16 - shl edi,24 - shl ebp,24 - - xor r8d,esi - xor r10d,edi - xor r11d,ebp - - movzx esi,dh - movzx edi,ah - mov edx,DWORD PTR[((16+12))+r15] - movzx esi,BYTE PTR[rsi*1+r14] - movzx edi,BYTE PTR[rdi*1+r14] - mov eax,DWORD PTR[((16+0))+r15] - - shl esi,24 - shl edi,24 - - xor r12d,esi - xor r8d,edi - - mov ebx,DWORD PTR[((16+4))+r15] - mov ecx,DWORD PTR[((16+8))+r15] - lea r14,QWORD PTR[((-2048))+r14] - xor eax,r10d - xor ebx,r11d - xor ecx,r12d - xor edx,r8d -DB 0f3h,0c3h -_x86_64_AES_decrypt ENDP - -ALIGN 16 -_x86_64_AES_decrypt_compact PROC PRIVATE - lea r8,QWORD PTR[128+r14] - mov edi,DWORD PTR[((0-128))+r8] - mov ebp,DWORD PTR[((32-128))+r8] - mov r10d,DWORD PTR[((64-128))+r8] - mov r11d,DWORD PTR[((96-128))+r8] - mov edi,DWORD PTR[((128-128))+r8] - mov ebp,DWORD PTR[((160-128))+r8] - mov r10d,DWORD PTR[((192-128))+r8] - mov r11d,DWORD PTR[((224-128))+r8] - jmp $L$dec_loop_compact - -ALIGN 16 -$L$dec_loop_compact:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] - lea r15,QWORD PTR[16+r15] - movzx r10d,al - movzx r11d,bl - movzx r12d,cl - movzx r8d,dl - movzx esi,dh - movzx edi,ah - shr edx,16 - movzx ebp,bh - movzx r10d,BYTE PTR[r10*1+r14] - movzx r11d,BYTE PTR[r11*1+r14] - movzx r12d,BYTE PTR[r12*1+r14] - movzx r8d,BYTE PTR[r8*1+r14] - - movzx r9d,BYTE PTR[rsi*1+r14] - movzx esi,ch - movzx r13d,BYTE PTR[rdi*1+r14] - movzx ebp,BYTE PTR[rbp*1+r14] - movzx esi,BYTE PTR[rsi*1+r14] - - shr ecx,16 - shl r13d,8 - shl r9d,8 - movzx edi,cl - shr eax,16 - xor r10d,r9d - shr ebx,16 - movzx r9d,dl - - shl ebp,8 - xor r11d,r13d - shl esi,8 - movzx r13d,al - movzx edi,BYTE PTR[rdi*1+r14] - xor r12d,ebp - movzx ebp,bl - - shl edi,16 - xor r8d,esi - movzx r9d,BYTE PTR[r9*1+r14] - movzx esi,bh - movzx ebp,BYTE PTR[rbp*1+r14] - xor r10d,edi - movzx r13d,BYTE PTR[r13*1+r14] - movzx edi,ch - - shl ebp,16 - shl r9d,16 - shl r13d,16 - xor r8d,ebp - movzx ebp,dh - xor r11d,r9d - shr eax,8 - xor r12d,r13d - - movzx esi,BYTE PTR[rsi*1+r14] - movzx ebx,BYTE PTR[rdi*1+r14] - movzx ecx,BYTE PTR[rbp*1+r14] - movzx edx,BYTE PTR[rax*1+r14] - - mov eax,r10d - shl esi,24 - shl ebx,24 - shl ecx,24 - xor eax,esi - shl edx,24 - xor ebx,r11d - xor ecx,r12d - xor edx,r8d - cmp r15,QWORD PTR[16+rsp] - je $L$dec_compact_done - - mov rsi,QWORD PTR[((256+0))+r14] - shl rbx,32 - shl rdx,32 - mov rdi,QWORD PTR[((256+8))+r14] - or rax,rbx - or rcx,rdx - mov rbp,QWORD PTR[((256+16))+r14] - mov r9,rsi - mov r12,rsi - and r9,rax - and r12,rcx - mov rbx,r9 - mov rdx,r12 - shr r9,7 - lea r8,QWORD PTR[rax*1+rax] - shr r12,7 - lea r11,QWORD PTR[rcx*1+rcx] - sub rbx,r9 - sub rdx,r12 - and r8,rdi - and r11,rdi - and rbx,rbp - and rdx,rbp - xor r8,rbx - xor r11,rdx - mov r10,rsi - mov r13,rsi - - and r10,r8 - and r13,r11 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - lea r9,QWORD PTR[r8*1+r8] - shr r13,7 - lea r12,QWORD PTR[r11*1+r11] - sub rbx,r10 - sub rdx,r13 - and r9,rdi - and r12,rdi - and rbx,rbp - and rdx,rbp - xor r9,rbx - xor r12,rdx - mov r10,rsi - mov r13,rsi - - and r10,r9 - and r13,r12 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - xor r8,rax - shr r13,7 - xor r11,rcx - sub rbx,r10 - sub rdx,r13 - lea r10,QWORD PTR[r9*1+r9] - lea r13,QWORD PTR[r12*1+r12] - xor r9,rax - xor r12,rcx - and r10,rdi - and r13,rdi - and rbx,rbp - and rdx,rbp - xor r10,rbx - xor r13,rdx - - xor rax,r10 - xor rcx,r13 - xor r8,r10 - xor r11,r13 - mov rbx,rax - mov rdx,rcx - xor r9,r10 - shr rbx,32 - xor r12,r13 - shr rdx,32 - xor r10,r8 - rol eax,8 - xor r13,r11 - rol ecx,8 - xor r10,r9 - rol ebx,8 - xor r13,r12 - - rol edx,8 - xor eax,r10d - shr r10,32 - xor ecx,r13d - shr r13,32 - xor ebx,r10d - xor edx,r13d - - mov r10,r8 - rol r8d,24 - mov r13,r11 - rol r11d,24 - shr r10,32 - xor eax,r8d - shr r13,32 - xor ecx,r11d - rol r10d,24 - mov r8,r9 - rol r13d,24 - mov r11,r12 - shr r8,32 - xor ebx,r10d - shr r11,32 - xor edx,r13d - - mov rsi,QWORD PTR[r14] - rol r9d,16 - mov rdi,QWORD PTR[64+r14] - rol r12d,16 - mov rbp,QWORD PTR[128+r14] - rol r8d,16 - mov r10,QWORD PTR[192+r14] - xor eax,r9d - rol r11d,16 - xor ecx,r12d - mov r13,QWORD PTR[256+r14] - xor ebx,r8d - xor edx,r11d - jmp $L$dec_loop_compact -ALIGN 16 -$L$dec_compact_done:: - xor eax,DWORD PTR[r15] - xor ebx,DWORD PTR[4+r15] - xor ecx,DWORD PTR[8+r15] - xor edx,DWORD PTR[12+r15] -DB 0f3h,0c3h -_x86_64_AES_decrypt_compact ENDP -PUBLIC AES_decrypt - -ALIGN 16 -PUBLIC asm_AES_decrypt - -asm_AES_decrypt:: -AES_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - - mov r10,rsp - lea rcx,QWORD PTR[((-63))+rdx] - and rsp,-64 - sub rcx,rsp - neg rcx - and rcx,03c0h - sub rsp,rcx - sub rsp,32 - - mov QWORD PTR[16+rsp],rsi - mov QWORD PTR[24+rsp],r10 -$L$dec_prologue:: - - mov r15,rdx - mov r13d,DWORD PTR[240+r15] - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - - shl r13d,4 - lea rbp,QWORD PTR[r13*1+r15] - mov QWORD PTR[rsp],r15 - mov QWORD PTR[8+rsp],rbp - - - lea r14,QWORD PTR[(($L$AES_Td+2048))] - lea rbp,QWORD PTR[768+rsp] - sub rbp,r14 - and rbp,0300h - lea r14,QWORD PTR[rbp*1+r14] - shr rbp,3 - add r14,rbp - - call _x86_64_AES_decrypt_compact - - mov r9,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_decrypt:: -AES_decrypt ENDP -PUBLIC private_AES_set_encrypt_key - -ALIGN 16 -private_AES_set_encrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_AES_set_encrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,8 -$L$enc_key_prologue:: - - call _x86_64_AES_set_encrypt_key - - mov rbp,QWORD PTR[40+rsp] - mov rbx,QWORD PTR[48+rsp] - add rsp,56 -$L$enc_key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_AES_set_encrypt_key:: -private_AES_set_encrypt_key ENDP - - -ALIGN 16 -_x86_64_AES_set_encrypt_key PROC PRIVATE - mov ecx,esi - mov rsi,rdi - mov rdi,rdx - - test rsi,-1 - jz $L$badpointer - test rdi,-1 - jz $L$badpointer - - lea rbp,QWORD PTR[$L$AES_Te] - lea rbp,QWORD PTR[((2048+128))+rbp] - - - mov eax,DWORD PTR[((0-128))+rbp] - mov ebx,DWORD PTR[((32-128))+rbp] - mov r8d,DWORD PTR[((64-128))+rbp] - mov edx,DWORD PTR[((96-128))+rbp] - mov eax,DWORD PTR[((128-128))+rbp] - mov ebx,DWORD PTR[((160-128))+rbp] - mov r8d,DWORD PTR[((192-128))+rbp] - mov edx,DWORD PTR[((224-128))+rbp] - - cmp ecx,128 - je $L$10rounds - cmp ecx,192 - je $L$12rounds - cmp ecx,256 - je $L$14rounds - mov rax,-2 - jmp $L$exit - -$L$10rounds:: - mov rax,QWORD PTR[rsi] - mov rdx,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$10shortcut -ALIGN 4 -$L$10loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[12+rdi] -$L$10shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[16+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[20+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[24+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[28+rdi],eax - add ecx,1 - lea rdi,QWORD PTR[16+rdi] - cmp ecx,10 - jl $L$10loop - - mov DWORD PTR[80+rdi],10 - xor rax,rax - jmp $L$exit - -$L$12rounds:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rdx,QWORD PTR[16+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$12shortcut -ALIGN 4 -$L$12loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[20+rdi] -$L$12shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[24+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[28+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[32+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[36+rdi],eax - - cmp ecx,7 - je $L$12break - add ecx,1 - - xor eax,DWORD PTR[16+rdi] - mov DWORD PTR[40+rdi],eax - xor eax,DWORD PTR[20+rdi] - mov DWORD PTR[44+rdi],eax - - lea rdi,QWORD PTR[24+rdi] - jmp $L$12loop -$L$12break:: - mov DWORD PTR[72+rdi],12 - xor rax,rax - jmp $L$exit - -$L$14rounds:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rcx,QWORD PTR[16+rsi] - mov rdx,QWORD PTR[24+rsi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - - shr rdx,32 - xor ecx,ecx - jmp $L$14shortcut -ALIGN 4 -$L$14loop:: - mov eax,DWORD PTR[rdi] - mov edx,DWORD PTR[28+rdi] -$L$14shortcut:: - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,24 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,8 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,16 - xor eax,ebx - - xor eax,DWORD PTR[((1024-128))+rcx*4+rbp] - mov DWORD PTR[32+rdi],eax - xor eax,DWORD PTR[4+rdi] - mov DWORD PTR[36+rdi],eax - xor eax,DWORD PTR[8+rdi] - mov DWORD PTR[40+rdi],eax - xor eax,DWORD PTR[12+rdi] - mov DWORD PTR[44+rdi],eax - - cmp ecx,6 - je $L$14break - add ecx,1 - - mov edx,eax - mov eax,DWORD PTR[16+rdi] - movzx esi,dl - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shr edx,16 - shl ebx,8 - movzx esi,dl - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - movzx esi,dh - shl ebx,16 - xor eax,ebx - - movzx ebx,BYTE PTR[((-128))+rsi*1+rbp] - shl ebx,24 - xor eax,ebx - - mov DWORD PTR[48+rdi],eax - xor eax,DWORD PTR[20+rdi] - mov DWORD PTR[52+rdi],eax - xor eax,DWORD PTR[24+rdi] - mov DWORD PTR[56+rdi],eax - xor eax,DWORD PTR[28+rdi] - mov DWORD PTR[60+rdi],eax - - lea rdi,QWORD PTR[32+rdi] - jmp $L$14loop -$L$14break:: - mov DWORD PTR[48+rdi],14 - xor rax,rax - jmp $L$exit - -$L$badpointer:: - mov rax,-1 -$L$exit:: -DB 0f3h,0c3h -_x86_64_AES_set_encrypt_key ENDP -PUBLIC private_AES_set_decrypt_key - -ALIGN 16 -private_AES_set_decrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_AES_set_decrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - push rdx -$L$dec_key_prologue:: - - call _x86_64_AES_set_encrypt_key - mov r8,QWORD PTR[rsp] - cmp eax,0 - jne $L$abort - - mov r14d,DWORD PTR[240+r8] - xor rdi,rdi - lea rcx,QWORD PTR[r14*4+rdi] - mov rsi,r8 - lea rdi,QWORD PTR[rcx*4+r8] -ALIGN 4 -$L$invert:: - mov rax,QWORD PTR[rsi] - mov rbx,QWORD PTR[8+rsi] - mov rcx,QWORD PTR[rdi] - mov rdx,QWORD PTR[8+rdi] - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[rsi],rcx - mov QWORD PTR[8+rsi],rdx - lea rsi,QWORD PTR[16+rsi] - lea rdi,QWORD PTR[((-16))+rdi] - cmp rdi,rsi - jne $L$invert - - lea rax,QWORD PTR[(($L$AES_Te+2048+1024))] - - mov rsi,QWORD PTR[40+rax] - mov rdi,QWORD PTR[48+rax] - mov rbp,QWORD PTR[56+rax] - - mov r15,r8 - sub r14d,1 -ALIGN 4 -$L$permute:: - lea r15,QWORD PTR[16+r15] - mov rax,QWORD PTR[r15] - mov rcx,QWORD PTR[8+r15] - mov r9,rsi - mov r12,rsi - and r9,rax - and r12,rcx - mov rbx,r9 - mov rdx,r12 - shr r9,7 - lea r8,QWORD PTR[rax*1+rax] - shr r12,7 - lea r11,QWORD PTR[rcx*1+rcx] - sub rbx,r9 - sub rdx,r12 - and r8,rdi - and r11,rdi - and rbx,rbp - and rdx,rbp - xor r8,rbx - xor r11,rdx - mov r10,rsi - mov r13,rsi - - and r10,r8 - and r13,r11 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - lea r9,QWORD PTR[r8*1+r8] - shr r13,7 - lea r12,QWORD PTR[r11*1+r11] - sub rbx,r10 - sub rdx,r13 - and r9,rdi - and r12,rdi - and rbx,rbp - and rdx,rbp - xor r9,rbx - xor r12,rdx - mov r10,rsi - mov r13,rsi - - and r10,r9 - and r13,r12 - mov rbx,r10 - mov rdx,r13 - shr r10,7 - xor r8,rax - shr r13,7 - xor r11,rcx - sub rbx,r10 - sub rdx,r13 - lea r10,QWORD PTR[r9*1+r9] - lea r13,QWORD PTR[r12*1+r12] - xor r9,rax - xor r12,rcx - and r10,rdi - and r13,rdi - and rbx,rbp - and rdx,rbp - xor r10,rbx - xor r13,rdx - - xor rax,r10 - xor rcx,r13 - xor r8,r10 - xor r11,r13 - mov rbx,rax - mov rdx,rcx - xor r9,r10 - shr rbx,32 - xor r12,r13 - shr rdx,32 - xor r10,r8 - rol eax,8 - xor r13,r11 - rol ecx,8 - xor r10,r9 - rol ebx,8 - xor r13,r12 - - rol edx,8 - xor eax,r10d - shr r10,32 - xor ecx,r13d - shr r13,32 - xor ebx,r10d - xor edx,r13d - - mov r10,r8 - rol r8d,24 - mov r13,r11 - rol r11d,24 - shr r10,32 - xor eax,r8d - shr r13,32 - xor ecx,r11d - rol r10d,24 - mov r8,r9 - rol r13d,24 - mov r11,r12 - shr r8,32 - xor ebx,r10d - shr r11,32 - xor edx,r13d - - - rol r9d,16 - - rol r12d,16 - - rol r8d,16 - - xor eax,r9d - rol r11d,16 - xor ecx,r12d - - xor ebx,r8d - xor edx,r11d - mov DWORD PTR[r15],eax - mov DWORD PTR[4+r15],ebx - mov DWORD PTR[8+r15],ecx - mov DWORD PTR[12+r15],edx - sub r14d,1 - jnz $L$permute - - xor rax,rax -$L$abort:: - mov r15,QWORD PTR[8+rsp] - mov r14,QWORD PTR[16+rsp] - mov r13,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov rbp,QWORD PTR[40+rsp] - mov rbx,QWORD PTR[48+rsp] - add rsp,56 -$L$dec_key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_AES_set_decrypt_key:: -private_AES_set_decrypt_key ENDP -PUBLIC AES_cbc_encrypt - -ALIGN 16 -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC asm_AES_cbc_encrypt - -asm_AES_cbc_encrypt:: -AES_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_AES_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp rdx,0 - je $L$cbc_epilogue - pushfq - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$cbc_prologue:: - - cld - mov r9d,r9d - - lea r14,QWORD PTR[$L$AES_Te] - cmp r9,0 - jne $L$cbc_picked_te - lea r14,QWORD PTR[$L$AES_Td] -$L$cbc_picked_te:: - - mov r10d,DWORD PTR[OPENSSL_ia32cap_P] - cmp rdx,512 - jb $L$cbc_slow_prologue - test rdx,15 - jnz $L$cbc_slow_prologue - bt r10d,28 - jc $L$cbc_slow_prologue - - - lea r15,QWORD PTR[((-88-248))+rsp] - and r15,-64 - - - mov r10,r14 - lea r11,QWORD PTR[2304+r14] - mov r12,r15 - and r10,0FFFh - and r11,0FFFh - and r12,0FFFh - - cmp r12,r11 - jb $L$cbc_te_break_out - sub r12,r11 - sub r15,r12 - jmp $L$cbc_te_ok -$L$cbc_te_break_out:: - sub r12,r10 - and r12,0FFFh - add r12,320 - sub r15,r12 -ALIGN 4 -$L$cbc_te_ok:: - - xchg r15,rsp - - mov QWORD PTR[16+rsp],r15 -$L$cbc_fast_body:: - mov QWORD PTR[24+rsp],rdi - mov QWORD PTR[32+rsp],rsi - mov QWORD PTR[40+rsp],rdx - mov QWORD PTR[48+rsp],rcx - mov QWORD PTR[56+rsp],r8 - mov DWORD PTR[((80+240))+rsp],0 - mov rbp,r8 - mov rbx,r9 - mov r9,rsi - mov r8,rdi - mov r15,rcx - - mov eax,DWORD PTR[240+r15] - - mov r10,r15 - sub r10,r14 - and r10,0fffh - cmp r10,2304 - jb $L$cbc_do_ecopy - cmp r10,4096-248 - jb $L$cbc_skip_ecopy -ALIGN 4 -$L$cbc_do_ecopy:: - mov rsi,r15 - lea rdi,QWORD PTR[80+rsp] - lea r15,QWORD PTR[80+rsp] - mov ecx,240/8 - DD 090A548F3h - mov DWORD PTR[rdi],eax -$L$cbc_skip_ecopy:: - mov QWORD PTR[rsp],r15 - - mov ecx,18 -ALIGN 4 -$L$cbc_prefetch_te:: - mov r10,QWORD PTR[r14] - mov r11,QWORD PTR[32+r14] - mov r12,QWORD PTR[64+r14] - mov r13,QWORD PTR[96+r14] - lea r14,QWORD PTR[128+r14] - sub ecx,1 - jnz $L$cbc_prefetch_te - lea r14,QWORD PTR[((-2304))+r14] - - cmp rbx,0 - je $L$FAST_DECRYPT - - - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - -ALIGN 4 -$L$cbc_fast_enc_loop:: - xor eax,DWORD PTR[r8] - xor ebx,DWORD PTR[4+r8] - xor ecx,DWORD PTR[8+r8] - xor edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_encrypt - - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - sub r10,16 - test r10,-16 - mov QWORD PTR[40+rsp],r10 - jnz $L$cbc_fast_enc_loop - mov rbp,QWORD PTR[56+rsp] - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - jmp $L$cbc_fast_cleanup - - -ALIGN 16 -$L$FAST_DECRYPT:: - cmp r9,r8 - je $L$cbc_fast_dec_in_place - - mov QWORD PTR[64+rsp],rbp -ALIGN 4 -$L$cbc_fast_dec_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_decrypt - - mov rbp,QWORD PTR[64+rsp] - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[rbp] - xor ebx,DWORD PTR[4+rbp] - xor ecx,DWORD PTR[8+rbp] - xor edx,DWORD PTR[12+rbp] - mov rbp,r8 - - sub r10,16 - mov QWORD PTR[40+rsp],r10 - mov QWORD PTR[64+rsp],rbp - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - jnz $L$cbc_fast_dec_loop - mov r12,QWORD PTR[56+rsp] - mov r10,QWORD PTR[rbp] - mov r11,QWORD PTR[8+rbp] - mov QWORD PTR[r12],r10 - mov QWORD PTR[8+r12],r11 - jmp $L$cbc_fast_cleanup - -ALIGN 16 -$L$cbc_fast_dec_in_place:: - mov r10,QWORD PTR[rbp] - mov r11,QWORD PTR[8+rbp] - mov QWORD PTR[((0+64))+rsp],r10 - mov QWORD PTR[((8+64))+rsp],r11 -ALIGN 4 -$L$cbc_fast_dec_in_place_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - - call _x86_64_AES_decrypt - - mov r8,QWORD PTR[24+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[((0+64))+rsp] - xor ebx,DWORD PTR[((4+64))+rsp] - xor ecx,DWORD PTR[((8+64))+rsp] - xor edx,DWORD PTR[((12+64))+rsp] - - mov r11,QWORD PTR[r8] - mov r12,QWORD PTR[8+r8] - sub r10,16 - jz $L$cbc_fast_dec_in_place_done - - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - mov QWORD PTR[40+rsp],r10 - jmp $L$cbc_fast_dec_in_place_loop -$L$cbc_fast_dec_in_place_done:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - -ALIGN 4 -$L$cbc_fast_cleanup:: - cmp DWORD PTR[((80+240))+rsp],0 - lea rdi,QWORD PTR[80+rsp] - je $L$cbc_exit - mov ecx,240/8 - xor rax,rax - DD 090AB48F3h - - jmp $L$cbc_exit - - -ALIGN 16 -$L$cbc_slow_prologue:: - - lea rbp,QWORD PTR[((-88))+rsp] - and rbp,-64 - - lea r10,QWORD PTR[((-88-63))+rcx] - sub r10,rbp - neg r10 - and r10,03c0h - sub rbp,r10 - - xchg rbp,rsp - - mov QWORD PTR[16+rsp],rbp -$L$cbc_slow_body:: - - - - - mov QWORD PTR[56+rsp],r8 - mov rbp,r8 - mov rbx,r9 - mov r9,rsi - mov r8,rdi - mov r15,rcx - mov r10,rdx - - mov eax,DWORD PTR[240+r15] - mov QWORD PTR[rsp],r15 - shl eax,4 - lea rax,QWORD PTR[rax*1+r15] - mov QWORD PTR[8+rsp],rax - - - lea r14,QWORD PTR[2048+r14] - lea rax,QWORD PTR[((768-8))+rsp] - sub rax,r14 - and rax,0300h - lea r14,QWORD PTR[rax*1+r14] - - cmp rbx,0 - je $L$SLOW_DECRYPT - - - test r10,-16 - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - jz $L$cbc_slow_enc_tail - -ALIGN 4 -$L$cbc_slow_enc_loop:: - xor eax,DWORD PTR[r8] - xor ebx,DWORD PTR[4+r8] - xor ecx,DWORD PTR[8+r8] - xor edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - mov QWORD PTR[32+rsp],r9 - mov QWORD PTR[40+rsp],r10 - - call _x86_64_AES_encrypt_compact - - mov r8,QWORD PTR[24+rsp] - mov r9,QWORD PTR[32+rsp] - mov r10,QWORD PTR[40+rsp] - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - sub r10,16 - test r10,-16 - jnz $L$cbc_slow_enc_loop - test r10,15 - jnz $L$cbc_slow_enc_tail - mov rbp,QWORD PTR[56+rsp] - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - jmp $L$cbc_exit - -ALIGN 4 -$L$cbc_slow_enc_tail:: - mov r11,rax - mov r12,rcx - mov rcx,r10 - mov rsi,r8 - mov rdi,r9 - DD 09066A4F3h - mov rcx,16 - sub rcx,r10 - xor rax,rax - DD 09066AAF3h - mov r8,r9 - mov r10,16 - mov rax,r11 - mov rcx,r12 - jmp $L$cbc_slow_enc_loop - -ALIGN 16 -$L$SLOW_DECRYPT:: - shr rax,3 - add r14,rax - - mov r11,QWORD PTR[rbp] - mov r12,QWORD PTR[8+rbp] - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - -ALIGN 4 -$L$cbc_slow_dec_loop:: - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov r15,QWORD PTR[rsp] - mov QWORD PTR[24+rsp],r8 - mov QWORD PTR[32+rsp],r9 - mov QWORD PTR[40+rsp],r10 - - call _x86_64_AES_decrypt_compact - - mov r8,QWORD PTR[24+rsp] - mov r9,QWORD PTR[32+rsp] - mov r10,QWORD PTR[40+rsp] - xor eax,DWORD PTR[((0+64))+rsp] - xor ebx,DWORD PTR[((4+64))+rsp] - xor ecx,DWORD PTR[((8+64))+rsp] - xor edx,DWORD PTR[((12+64))+rsp] - - mov r11,QWORD PTR[r8] - mov r12,QWORD PTR[8+r8] - sub r10,16 - jc $L$cbc_slow_dec_partial - jz $L$cbc_slow_dec_done - - mov QWORD PTR[((0+64))+rsp],r11 - mov QWORD PTR[((8+64))+rsp],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - lea r8,QWORD PTR[16+r8] - lea r9,QWORD PTR[16+r9] - jmp $L$cbc_slow_dec_loop -$L$cbc_slow_dec_done:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[r9],eax - mov DWORD PTR[4+r9],ebx - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - - jmp $L$cbc_exit - -ALIGN 4 -$L$cbc_slow_dec_partial:: - mov rdi,QWORD PTR[56+rsp] - mov QWORD PTR[rdi],r11 - mov QWORD PTR[8+rdi],r12 - - mov DWORD PTR[((0+64))+rsp],eax - mov DWORD PTR[((4+64))+rsp],ebx - mov DWORD PTR[((8+64))+rsp],ecx - mov DWORD PTR[((12+64))+rsp],edx - - mov rdi,r9 - lea rsi,QWORD PTR[64+rsp] - lea rcx,QWORD PTR[16+r10] - DD 09066A4F3h - jmp $L$cbc_exit - -ALIGN 16 -$L$cbc_exit:: - mov rsi,QWORD PTR[16+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$cbc_popfq:: - popfq -$L$cbc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_AES_cbc_encrypt:: -AES_cbc_encrypt ENDP -ALIGN 64 -$L$AES_Te:: - DD 0a56363c6h,0a56363c6h - DD 0847c7cf8h,0847c7cf8h - DD 0997777eeh,0997777eeh - DD 08d7b7bf6h,08d7b7bf6h - DD 00df2f2ffh,00df2f2ffh - DD 0bd6b6bd6h,0bd6b6bd6h - DD 0b16f6fdeh,0b16f6fdeh - DD 054c5c591h,054c5c591h - DD 050303060h,050303060h - DD 003010102h,003010102h - DD 0a96767ceh,0a96767ceh - DD 07d2b2b56h,07d2b2b56h - DD 019fefee7h,019fefee7h - DD 062d7d7b5h,062d7d7b5h - DD 0e6abab4dh,0e6abab4dh - DD 09a7676ech,09a7676ech - DD 045caca8fh,045caca8fh - DD 09d82821fh,09d82821fh - DD 040c9c989h,040c9c989h - DD 0877d7dfah,0877d7dfah - DD 015fafaefh,015fafaefh - DD 0eb5959b2h,0eb5959b2h - DD 0c947478eh,0c947478eh - DD 00bf0f0fbh,00bf0f0fbh - DD 0ecadad41h,0ecadad41h - DD 067d4d4b3h,067d4d4b3h - DD 0fda2a25fh,0fda2a25fh - DD 0eaafaf45h,0eaafaf45h - DD 0bf9c9c23h,0bf9c9c23h - DD 0f7a4a453h,0f7a4a453h - DD 0967272e4h,0967272e4h - DD 05bc0c09bh,05bc0c09bh - DD 0c2b7b775h,0c2b7b775h - DD 01cfdfde1h,01cfdfde1h - DD 0ae93933dh,0ae93933dh - DD 06a26264ch,06a26264ch - DD 05a36366ch,05a36366ch - DD 0413f3f7eh,0413f3f7eh - DD 002f7f7f5h,002f7f7f5h - DD 04fcccc83h,04fcccc83h - DD 05c343468h,05c343468h - DD 0f4a5a551h,0f4a5a551h - DD 034e5e5d1h,034e5e5d1h - DD 008f1f1f9h,008f1f1f9h - DD 0937171e2h,0937171e2h - DD 073d8d8abh,073d8d8abh - DD 053313162h,053313162h - DD 03f15152ah,03f15152ah - DD 00c040408h,00c040408h - DD 052c7c795h,052c7c795h - DD 065232346h,065232346h - DD 05ec3c39dh,05ec3c39dh - DD 028181830h,028181830h - DD 0a1969637h,0a1969637h - DD 00f05050ah,00f05050ah - DD 0b59a9a2fh,0b59a9a2fh - DD 00907070eh,00907070eh - DD 036121224h,036121224h - DD 09b80801bh,09b80801bh - DD 03de2e2dfh,03de2e2dfh - DD 026ebebcdh,026ebebcdh - DD 06927274eh,06927274eh - DD 0cdb2b27fh,0cdb2b27fh - DD 09f7575eah,09f7575eah - DD 01b090912h,01b090912h - DD 09e83831dh,09e83831dh - DD 0742c2c58h,0742c2c58h - DD 02e1a1a34h,02e1a1a34h - DD 02d1b1b36h,02d1b1b36h - DD 0b26e6edch,0b26e6edch - DD 0ee5a5ab4h,0ee5a5ab4h - DD 0fba0a05bh,0fba0a05bh - DD 0f65252a4h,0f65252a4h - DD 04d3b3b76h,04d3b3b76h - DD 061d6d6b7h,061d6d6b7h - DD 0ceb3b37dh,0ceb3b37dh - DD 07b292952h,07b292952h - DD 03ee3e3ddh,03ee3e3ddh - DD 0712f2f5eh,0712f2f5eh - DD 097848413h,097848413h - DD 0f55353a6h,0f55353a6h - DD 068d1d1b9h,068d1d1b9h - DD 000000000h,000000000h - DD 02cededc1h,02cededc1h - DD 060202040h,060202040h - DD 01ffcfce3h,01ffcfce3h - DD 0c8b1b179h,0c8b1b179h - DD 0ed5b5bb6h,0ed5b5bb6h - DD 0be6a6ad4h,0be6a6ad4h - DD 046cbcb8dh,046cbcb8dh - DD 0d9bebe67h,0d9bebe67h - DD 04b393972h,04b393972h - DD 0de4a4a94h,0de4a4a94h - DD 0d44c4c98h,0d44c4c98h - DD 0e85858b0h,0e85858b0h - DD 04acfcf85h,04acfcf85h - DD 06bd0d0bbh,06bd0d0bbh - DD 02aefefc5h,02aefefc5h - DD 0e5aaaa4fh,0e5aaaa4fh - DD 016fbfbedh,016fbfbedh - DD 0c5434386h,0c5434386h - DD 0d74d4d9ah,0d74d4d9ah - DD 055333366h,055333366h - DD 094858511h,094858511h - DD 0cf45458ah,0cf45458ah - DD 010f9f9e9h,010f9f9e9h - DD 006020204h,006020204h - DD 0817f7ffeh,0817f7ffeh - DD 0f05050a0h,0f05050a0h - DD 0443c3c78h,0443c3c78h - DD 0ba9f9f25h,0ba9f9f25h - DD 0e3a8a84bh,0e3a8a84bh - DD 0f35151a2h,0f35151a2h - DD 0fea3a35dh,0fea3a35dh - DD 0c0404080h,0c0404080h - DD 08a8f8f05h,08a8f8f05h - DD 0ad92923fh,0ad92923fh - DD 0bc9d9d21h,0bc9d9d21h - DD 048383870h,048383870h - DD 004f5f5f1h,004f5f5f1h - DD 0dfbcbc63h,0dfbcbc63h - DD 0c1b6b677h,0c1b6b677h - DD 075dadaafh,075dadaafh - DD 063212142h,063212142h - DD 030101020h,030101020h - DD 01affffe5h,01affffe5h - DD 00ef3f3fdh,00ef3f3fdh - DD 06dd2d2bfh,06dd2d2bfh - DD 04ccdcd81h,04ccdcd81h - DD 0140c0c18h,0140c0c18h - DD 035131326h,035131326h - DD 02fececc3h,02fececc3h - DD 0e15f5fbeh,0e15f5fbeh - DD 0a2979735h,0a2979735h - DD 0cc444488h,0cc444488h - DD 03917172eh,03917172eh - DD 057c4c493h,057c4c493h - DD 0f2a7a755h,0f2a7a755h - DD 0827e7efch,0827e7efch - DD 0473d3d7ah,0473d3d7ah - DD 0ac6464c8h,0ac6464c8h - DD 0e75d5dbah,0e75d5dbah - DD 02b191932h,02b191932h - DD 0957373e6h,0957373e6h - DD 0a06060c0h,0a06060c0h - DD 098818119h,098818119h - DD 0d14f4f9eh,0d14f4f9eh - DD 07fdcdca3h,07fdcdca3h - DD 066222244h,066222244h - DD 07e2a2a54h,07e2a2a54h - DD 0ab90903bh,0ab90903bh - DD 08388880bh,08388880bh - DD 0ca46468ch,0ca46468ch - DD 029eeeec7h,029eeeec7h - DD 0d3b8b86bh,0d3b8b86bh - DD 03c141428h,03c141428h - DD 079dedea7h,079dedea7h - DD 0e25e5ebch,0e25e5ebch - DD 01d0b0b16h,01d0b0b16h - DD 076dbdbadh,076dbdbadh - DD 03be0e0dbh,03be0e0dbh - DD 056323264h,056323264h - DD 04e3a3a74h,04e3a3a74h - DD 01e0a0a14h,01e0a0a14h - DD 0db494992h,0db494992h - DD 00a06060ch,00a06060ch - DD 06c242448h,06c242448h - DD 0e45c5cb8h,0e45c5cb8h - DD 05dc2c29fh,05dc2c29fh - DD 06ed3d3bdh,06ed3d3bdh - DD 0efacac43h,0efacac43h - DD 0a66262c4h,0a66262c4h - DD 0a8919139h,0a8919139h - DD 0a4959531h,0a4959531h - DD 037e4e4d3h,037e4e4d3h - DD 08b7979f2h,08b7979f2h - DD 032e7e7d5h,032e7e7d5h - DD 043c8c88bh,043c8c88bh - DD 05937376eh,05937376eh - DD 0b76d6ddah,0b76d6ddah - DD 08c8d8d01h,08c8d8d01h - DD 064d5d5b1h,064d5d5b1h - DD 0d24e4e9ch,0d24e4e9ch - DD 0e0a9a949h,0e0a9a949h - DD 0b46c6cd8h,0b46c6cd8h - DD 0fa5656ach,0fa5656ach - DD 007f4f4f3h,007f4f4f3h - DD 025eaeacfh,025eaeacfh - DD 0af6565cah,0af6565cah - DD 08e7a7af4h,08e7a7af4h - DD 0e9aeae47h,0e9aeae47h - DD 018080810h,018080810h - DD 0d5baba6fh,0d5baba6fh - DD 0887878f0h,0887878f0h - DD 06f25254ah,06f25254ah - DD 0722e2e5ch,0722e2e5ch - DD 0241c1c38h,0241c1c38h - DD 0f1a6a657h,0f1a6a657h - DD 0c7b4b473h,0c7b4b473h - DD 051c6c697h,051c6c697h - DD 023e8e8cbh,023e8e8cbh - DD 07cdddda1h,07cdddda1h - DD 09c7474e8h,09c7474e8h - DD 0211f1f3eh,0211f1f3eh - DD 0dd4b4b96h,0dd4b4b96h - DD 0dcbdbd61h,0dcbdbd61h - DD 0868b8b0dh,0868b8b0dh - DD 0858a8a0fh,0858a8a0fh - DD 0907070e0h,0907070e0h - DD 0423e3e7ch,0423e3e7ch - DD 0c4b5b571h,0c4b5b571h - DD 0aa6666cch,0aa6666cch - DD 0d8484890h,0d8484890h - DD 005030306h,005030306h - DD 001f6f6f7h,001f6f6f7h - DD 0120e0e1ch,0120e0e1ch - DD 0a36161c2h,0a36161c2h - DD 05f35356ah,05f35356ah - DD 0f95757aeh,0f95757aeh - DD 0d0b9b969h,0d0b9b969h - DD 091868617h,091868617h - DD 058c1c199h,058c1c199h - DD 0271d1d3ah,0271d1d3ah - DD 0b99e9e27h,0b99e9e27h - DD 038e1e1d9h,038e1e1d9h - DD 013f8f8ebh,013f8f8ebh - DD 0b398982bh,0b398982bh - DD 033111122h,033111122h - DD 0bb6969d2h,0bb6969d2h - DD 070d9d9a9h,070d9d9a9h - DD 0898e8e07h,0898e8e07h - DD 0a7949433h,0a7949433h - DD 0b69b9b2dh,0b69b9b2dh - DD 0221e1e3ch,0221e1e3ch - DD 092878715h,092878715h - DD 020e9e9c9h,020e9e9c9h - DD 049cece87h,049cece87h - DD 0ff5555aah,0ff5555aah - DD 078282850h,078282850h - DD 07adfdfa5h,07adfdfa5h - DD 08f8c8c03h,08f8c8c03h - DD 0f8a1a159h,0f8a1a159h - DD 080898909h,080898909h - DD 0170d0d1ah,0170d0d1ah - DD 0dabfbf65h,0dabfbf65h - DD 031e6e6d7h,031e6e6d7h - DD 0c6424284h,0c6424284h - DD 0b86868d0h,0b86868d0h - DD 0c3414182h,0c3414182h - DD 0b0999929h,0b0999929h - DD 0772d2d5ah,0772d2d5ah - DD 0110f0f1eh,0110f0f1eh - DD 0cbb0b07bh,0cbb0b07bh - DD 0fc5454a8h,0fc5454a8h - DD 0d6bbbb6dh,0d6bbbb6dh - DD 03a16162ch,03a16162ch -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h -DB 063h,07ch,077h,07bh,0f2h,06bh,06fh,0c5h -DB 030h,001h,067h,02bh,0feh,0d7h,0abh,076h -DB 0cah,082h,0c9h,07dh,0fah,059h,047h,0f0h -DB 0adh,0d4h,0a2h,0afh,09ch,0a4h,072h,0c0h -DB 0b7h,0fdh,093h,026h,036h,03fh,0f7h,0cch -DB 034h,0a5h,0e5h,0f1h,071h,0d8h,031h,015h -DB 004h,0c7h,023h,0c3h,018h,096h,005h,09ah -DB 007h,012h,080h,0e2h,0ebh,027h,0b2h,075h -DB 009h,083h,02ch,01ah,01bh,06eh,05ah,0a0h -DB 052h,03bh,0d6h,0b3h,029h,0e3h,02fh,084h -DB 053h,0d1h,000h,0edh,020h,0fch,0b1h,05bh -DB 06ah,0cbh,0beh,039h,04ah,04ch,058h,0cfh -DB 0d0h,0efh,0aah,0fbh,043h,04dh,033h,085h -DB 045h,0f9h,002h,07fh,050h,03ch,09fh,0a8h -DB 051h,0a3h,040h,08fh,092h,09dh,038h,0f5h -DB 0bch,0b6h,0dah,021h,010h,0ffh,0f3h,0d2h -DB 0cdh,00ch,013h,0ech,05fh,097h,044h,017h -DB 0c4h,0a7h,07eh,03dh,064h,05dh,019h,073h -DB 060h,081h,04fh,0dch,022h,02ah,090h,088h -DB 046h,0eeh,0b8h,014h,0deh,05eh,00bh,0dbh -DB 0e0h,032h,03ah,00ah,049h,006h,024h,05ch -DB 0c2h,0d3h,0ach,062h,091h,095h,0e4h,079h -DB 0e7h,0c8h,037h,06dh,08dh,0d5h,04eh,0a9h -DB 06ch,056h,0f4h,0eah,065h,07ah,0aeh,008h -DB 0bah,078h,025h,02eh,01ch,0a6h,0b4h,0c6h -DB 0e8h,0ddh,074h,01fh,04bh,0bdh,08bh,08ah -DB 070h,03eh,0b5h,066h,048h,003h,0f6h,00eh -DB 061h,035h,057h,0b9h,086h,0c1h,01dh,09eh -DB 0e1h,0f8h,098h,011h,069h,0d9h,08eh,094h -DB 09bh,01eh,087h,0e9h,0ceh,055h,028h,0dfh -DB 08ch,0a1h,089h,00dh,0bfh,0e6h,042h,068h -DB 041h,099h,02dh,00fh,0b0h,054h,0bbh,016h - DD 000000001h,000000002h,000000004h,000000008h - DD 000000010h,000000020h,000000040h,000000080h - DD 00000001bh,000000036h,080808080h,080808080h - DD 0fefefefeh,0fefefefeh,01b1b1b1bh,01b1b1b1bh -ALIGN 64 -$L$AES_Td:: - DD 050a7f451h,050a7f451h - DD 05365417eh,05365417eh - DD 0c3a4171ah,0c3a4171ah - DD 0965e273ah,0965e273ah - DD 0cb6bab3bh,0cb6bab3bh - DD 0f1459d1fh,0f1459d1fh - DD 0ab58faach,0ab58faach - DD 09303e34bh,09303e34bh - DD 055fa3020h,055fa3020h - DD 0f66d76adh,0f66d76adh - DD 09176cc88h,09176cc88h - DD 0254c02f5h,0254c02f5h - DD 0fcd7e54fh,0fcd7e54fh - DD 0d7cb2ac5h,0d7cb2ac5h - DD 080443526h,080443526h - DD 08fa362b5h,08fa362b5h - DD 0495ab1deh,0495ab1deh - DD 0671bba25h,0671bba25h - DD 0980eea45h,0980eea45h - DD 0e1c0fe5dh,0e1c0fe5dh - DD 002752fc3h,002752fc3h - DD 012f04c81h,012f04c81h - DD 0a397468dh,0a397468dh - DD 0c6f9d36bh,0c6f9d36bh - DD 0e75f8f03h,0e75f8f03h - DD 0959c9215h,0959c9215h - DD 0eb7a6dbfh,0eb7a6dbfh - DD 0da595295h,0da595295h - DD 02d83bed4h,02d83bed4h - DD 0d3217458h,0d3217458h - DD 02969e049h,02969e049h - DD 044c8c98eh,044c8c98eh - DD 06a89c275h,06a89c275h - DD 078798ef4h,078798ef4h - DD 06b3e5899h,06b3e5899h - DD 0dd71b927h,0dd71b927h - DD 0b64fe1beh,0b64fe1beh - DD 017ad88f0h,017ad88f0h - DD 066ac20c9h,066ac20c9h - DD 0b43ace7dh,0b43ace7dh - DD 0184adf63h,0184adf63h - DD 082311ae5h,082311ae5h - DD 060335197h,060335197h - DD 0457f5362h,0457f5362h - DD 0e07764b1h,0e07764b1h - DD 084ae6bbbh,084ae6bbbh - DD 01ca081feh,01ca081feh - DD 0942b08f9h,0942b08f9h - DD 058684870h,058684870h - DD 019fd458fh,019fd458fh - DD 0876cde94h,0876cde94h - DD 0b7f87b52h,0b7f87b52h - DD 023d373abh,023d373abh - DD 0e2024b72h,0e2024b72h - DD 0578f1fe3h,0578f1fe3h - DD 02aab5566h,02aab5566h - DD 00728ebb2h,00728ebb2h - DD 003c2b52fh,003c2b52fh - DD 09a7bc586h,09a7bc586h - DD 0a50837d3h,0a50837d3h - DD 0f2872830h,0f2872830h - DD 0b2a5bf23h,0b2a5bf23h - DD 0ba6a0302h,0ba6a0302h - DD 05c8216edh,05c8216edh - DD 02b1ccf8ah,02b1ccf8ah - DD 092b479a7h,092b479a7h - DD 0f0f207f3h,0f0f207f3h - DD 0a1e2694eh,0a1e2694eh - DD 0cdf4da65h,0cdf4da65h - DD 0d5be0506h,0d5be0506h - DD 01f6234d1h,01f6234d1h - DD 08afea6c4h,08afea6c4h - DD 09d532e34h,09d532e34h - DD 0a055f3a2h,0a055f3a2h - DD 032e18a05h,032e18a05h - DD 075ebf6a4h,075ebf6a4h - DD 039ec830bh,039ec830bh - DD 0aaef6040h,0aaef6040h - DD 0069f715eh,0069f715eh - DD 051106ebdh,051106ebdh - DD 0f98a213eh,0f98a213eh - DD 03d06dd96h,03d06dd96h - DD 0ae053eddh,0ae053eddh - DD 046bde64dh,046bde64dh - DD 0b58d5491h,0b58d5491h - DD 0055dc471h,0055dc471h - DD 06fd40604h,06fd40604h - DD 0ff155060h,0ff155060h - DD 024fb9819h,024fb9819h - DD 097e9bdd6h,097e9bdd6h - DD 0cc434089h,0cc434089h - DD 0779ed967h,0779ed967h - DD 0bd42e8b0h,0bd42e8b0h - DD 0888b8907h,0888b8907h - DD 0385b19e7h,0385b19e7h - DD 0dbeec879h,0dbeec879h - DD 0470a7ca1h,0470a7ca1h - DD 0e90f427ch,0e90f427ch - DD 0c91e84f8h,0c91e84f8h - DD 000000000h,000000000h - DD 083868009h,083868009h - DD 048ed2b32h,048ed2b32h - DD 0ac70111eh,0ac70111eh - DD 04e725a6ch,04e725a6ch - DD 0fbff0efdh,0fbff0efdh - DD 05638850fh,05638850fh - DD 01ed5ae3dh,01ed5ae3dh - DD 027392d36h,027392d36h - DD 064d90f0ah,064d90f0ah - DD 021a65c68h,021a65c68h - DD 0d1545b9bh,0d1545b9bh - DD 03a2e3624h,03a2e3624h - DD 0b1670a0ch,0b1670a0ch - DD 00fe75793h,00fe75793h - DD 0d296eeb4h,0d296eeb4h - DD 09e919b1bh,09e919b1bh - DD 04fc5c080h,04fc5c080h - DD 0a220dc61h,0a220dc61h - DD 0694b775ah,0694b775ah - DD 0161a121ch,0161a121ch - DD 00aba93e2h,00aba93e2h - DD 0e52aa0c0h,0e52aa0c0h - DD 043e0223ch,043e0223ch - DD 01d171b12h,01d171b12h - DD 00b0d090eh,00b0d090eh - DD 0adc78bf2h,0adc78bf2h - DD 0b9a8b62dh,0b9a8b62dh - DD 0c8a91e14h,0c8a91e14h - DD 08519f157h,08519f157h - DD 04c0775afh,04c0775afh - DD 0bbdd99eeh,0bbdd99eeh - DD 0fd607fa3h,0fd607fa3h - DD 09f2601f7h,09f2601f7h - DD 0bcf5725ch,0bcf5725ch - DD 0c53b6644h,0c53b6644h - DD 0347efb5bh,0347efb5bh - DD 07629438bh,07629438bh - DD 0dcc623cbh,0dcc623cbh - DD 068fcedb6h,068fcedb6h - DD 063f1e4b8h,063f1e4b8h - DD 0cadc31d7h,0cadc31d7h - DD 010856342h,010856342h - DD 040229713h,040229713h - DD 02011c684h,02011c684h - DD 07d244a85h,07d244a85h - DD 0f83dbbd2h,0f83dbbd2h - DD 01132f9aeh,01132f9aeh - DD 06da129c7h,06da129c7h - DD 04b2f9e1dh,04b2f9e1dh - DD 0f330b2dch,0f330b2dch - DD 0ec52860dh,0ec52860dh - DD 0d0e3c177h,0d0e3c177h - DD 06c16b32bh,06c16b32bh - DD 099b970a9h,099b970a9h - DD 0fa489411h,0fa489411h - DD 02264e947h,02264e947h - DD 0c48cfca8h,0c48cfca8h - DD 01a3ff0a0h,01a3ff0a0h - DD 0d82c7d56h,0d82c7d56h - DD 0ef903322h,0ef903322h - DD 0c74e4987h,0c74e4987h - DD 0c1d138d9h,0c1d138d9h - DD 0fea2ca8ch,0fea2ca8ch - DD 0360bd498h,0360bd498h - DD 0cf81f5a6h,0cf81f5a6h - DD 028de7aa5h,028de7aa5h - DD 0268eb7dah,0268eb7dah - DD 0a4bfad3fh,0a4bfad3fh - DD 0e49d3a2ch,0e49d3a2ch - DD 00d927850h,00d927850h - DD 09bcc5f6ah,09bcc5f6ah - DD 062467e54h,062467e54h - DD 0c2138df6h,0c2138df6h - DD 0e8b8d890h,0e8b8d890h - DD 05ef7392eh,05ef7392eh - DD 0f5afc382h,0f5afc382h - DD 0be805d9fh,0be805d9fh - DD 07c93d069h,07c93d069h - DD 0a92dd56fh,0a92dd56fh - DD 0b31225cfh,0b31225cfh - DD 03b99acc8h,03b99acc8h - DD 0a77d1810h,0a77d1810h - DD 06e639ce8h,06e639ce8h - DD 07bbb3bdbh,07bbb3bdbh - DD 0097826cdh,0097826cdh - DD 0f418596eh,0f418596eh - DD 001b79aech,001b79aech - DD 0a89a4f83h,0a89a4f83h - DD 0656e95e6h,0656e95e6h - DD 07ee6ffaah,07ee6ffaah - DD 008cfbc21h,008cfbc21h - DD 0e6e815efh,0e6e815efh - DD 0d99be7bah,0d99be7bah - DD 0ce366f4ah,0ce366f4ah - DD 0d4099feah,0d4099feah - DD 0d67cb029h,0d67cb029h - DD 0afb2a431h,0afb2a431h - DD 031233f2ah,031233f2ah - DD 03094a5c6h,03094a5c6h - DD 0c066a235h,0c066a235h - DD 037bc4e74h,037bc4e74h - DD 0a6ca82fch,0a6ca82fch - DD 0b0d090e0h,0b0d090e0h - DD 015d8a733h,015d8a733h - DD 04a9804f1h,04a9804f1h - DD 0f7daec41h,0f7daec41h - DD 00e50cd7fh,00e50cd7fh - DD 02ff69117h,02ff69117h - DD 08dd64d76h,08dd64d76h - DD 04db0ef43h,04db0ef43h - DD 0544daacch,0544daacch - DD 0df0496e4h,0df0496e4h - DD 0e3b5d19eh,0e3b5d19eh - DD 01b886a4ch,01b886a4ch - DD 0b81f2cc1h,0b81f2cc1h - DD 07f516546h,07f516546h - DD 004ea5e9dh,004ea5e9dh - DD 05d358c01h,05d358c01h - DD 0737487fah,0737487fah - DD 02e410bfbh,02e410bfbh - DD 05a1d67b3h,05a1d67b3h - DD 052d2db92h,052d2db92h - DD 0335610e9h,0335610e9h - DD 01347d66dh,01347d66dh - DD 08c61d79ah,08c61d79ah - DD 07a0ca137h,07a0ca137h - DD 08e14f859h,08e14f859h - DD 0893c13ebh,0893c13ebh - DD 0ee27a9ceh,0ee27a9ceh - DD 035c961b7h,035c961b7h - DD 0ede51ce1h,0ede51ce1h - DD 03cb1477ah,03cb1477ah - DD 059dfd29ch,059dfd29ch - DD 03f73f255h,03f73f255h - DD 079ce1418h,079ce1418h - DD 0bf37c773h,0bf37c773h - DD 0eacdf753h,0eacdf753h - DD 05baafd5fh,05baafd5fh - DD 0146f3ddfh,0146f3ddfh - DD 086db4478h,086db4478h - DD 081f3afcah,081f3afcah - DD 03ec468b9h,03ec468b9h - DD 02c342438h,02c342438h - DD 05f40a3c2h,05f40a3c2h - DD 072c31d16h,072c31d16h - DD 00c25e2bch,00c25e2bch - DD 08b493c28h,08b493c28h - DD 041950dffh,041950dffh - DD 07101a839h,07101a839h - DD 0deb30c08h,0deb30c08h - DD 09ce4b4d8h,09ce4b4d8h - DD 090c15664h,090c15664h - DD 06184cb7bh,06184cb7bh - DD 070b632d5h,070b632d5h - DD 0745c6c48h,0745c6c48h - DD 04257b8d0h,04257b8d0h -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 052h,009h,06ah,0d5h,030h,036h,0a5h,038h -DB 0bfh,040h,0a3h,09eh,081h,0f3h,0d7h,0fbh -DB 07ch,0e3h,039h,082h,09bh,02fh,0ffh,087h -DB 034h,08eh,043h,044h,0c4h,0deh,0e9h,0cbh -DB 054h,07bh,094h,032h,0a6h,0c2h,023h,03dh -DB 0eeh,04ch,095h,00bh,042h,0fah,0c3h,04eh -DB 008h,02eh,0a1h,066h,028h,0d9h,024h,0b2h -DB 076h,05bh,0a2h,049h,06dh,08bh,0d1h,025h -DB 072h,0f8h,0f6h,064h,086h,068h,098h,016h -DB 0d4h,0a4h,05ch,0cch,05dh,065h,0b6h,092h -DB 06ch,070h,048h,050h,0fdh,0edh,0b9h,0dah -DB 05eh,015h,046h,057h,0a7h,08dh,09dh,084h -DB 090h,0d8h,0abh,000h,08ch,0bch,0d3h,00ah -DB 0f7h,0e4h,058h,005h,0b8h,0b3h,045h,006h -DB 0d0h,02ch,01eh,08fh,0cah,03fh,00fh,002h -DB 0c1h,0afh,0bdh,003h,001h,013h,08ah,06bh -DB 03ah,091h,011h,041h,04fh,067h,0dch,0eah -DB 097h,0f2h,0cfh,0ceh,0f0h,0b4h,0e6h,073h -DB 096h,0ach,074h,022h,0e7h,0adh,035h,085h -DB 0e2h,0f9h,037h,0e8h,01ch,075h,0dfh,06eh -DB 047h,0f1h,01ah,071h,01dh,029h,0c5h,089h -DB 06fh,0b7h,062h,00eh,0aah,018h,0beh,01bh -DB 0fch,056h,03eh,04bh,0c6h,0d2h,079h,020h -DB 09ah,0dbh,0c0h,0feh,078h,0cdh,05ah,0f4h -DB 01fh,0ddh,0a8h,033h,088h,007h,0c7h,031h -DB 0b1h,012h,010h,059h,027h,080h,0ech,05fh -DB 060h,051h,07fh,0a9h,019h,0b5h,04ah,00dh -DB 02dh,0e5h,07ah,09fh,093h,0c9h,09ch,0efh -DB 0a0h,0e0h,03bh,04dh,0aeh,02ah,0f5h,0b0h -DB 0c8h,0ebh,0bbh,03ch,083h,053h,099h,061h -DB 017h,02bh,004h,07eh,0bah,077h,0d6h,026h -DB 0e1h,069h,014h,063h,055h,021h,00ch,07dh - DD 080808080h,080808080h,0fefefefeh,0fefefefeh - DD 01b1b1b1bh,01b1b1b1bh,0,0 -DB 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -block_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_block_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_block_prologue - - mov rax,QWORD PTR[24+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_block_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -block_se_handler ENDP - - -ALIGN 16 -key_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_key_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_key_prologue - - lea rax,QWORD PTR[56+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_key_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -key_se_handler ENDP - - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_prologue] - cmp rbx,r10 - jb $L$in_cbc_prologue - - lea r10,QWORD PTR[$L$cbc_fast_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - - lea r10,QWORD PTR[$L$cbc_slow_prologue] - cmp rbx,r10 - jb $L$in_cbc_body - - lea r10,QWORD PTR[$L$cbc_slow_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - -$L$in_cbc_body:: - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$cbc_epilogue] - cmp rbx,r10 - jae $L$in_cbc_prologue - - lea rax,QWORD PTR[8+rax] - - lea r10,QWORD PTR[$L$cbc_popfq] - cmp rbx,r10 - jae $L$in_cbc_prologue - - mov rax,QWORD PTR[8+rax] - lea rax,QWORD PTR[56+rax] - -$L$in_cbc_frame_setup:: - mov rbx,QWORD PTR[((-16))+rax] - mov rbp,QWORD PTR[((-24))+rax] - mov r12,QWORD PTR[((-32))+rax] - mov r13,QWORD PTR[((-40))+rax] - mov r14,QWORD PTR[((-48))+rax] - mov r15,QWORD PTR[((-56))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_cbc_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_AES_encrypt - DD imagerel $L$SEH_end_AES_encrypt - DD imagerel $L$SEH_info_AES_encrypt - - DD imagerel $L$SEH_begin_AES_decrypt - DD imagerel $L$SEH_end_AES_decrypt - DD imagerel $L$SEH_info_AES_decrypt - - DD imagerel $L$SEH_begin_private_AES_set_encrypt_key - DD imagerel $L$SEH_end_private_AES_set_encrypt_key - DD imagerel $L$SEH_info_private_AES_set_encrypt_key - - DD imagerel $L$SEH_begin_private_AES_set_decrypt_key - DD imagerel $L$SEH_end_private_AES_set_decrypt_key - DD imagerel $L$SEH_info_private_AES_set_decrypt_key - - DD imagerel $L$SEH_begin_AES_cbc_encrypt - DD imagerel $L$SEH_end_AES_cbc_encrypt - DD imagerel $L$SEH_info_AES_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_AES_encrypt:: -DB 9,0,0,0 - DD imagerel block_se_handler - DD imagerel $L$enc_prologue,imagerel $L$enc_epilogue -$L$SEH_info_AES_decrypt:: -DB 9,0,0,0 - DD imagerel block_se_handler - DD imagerel $L$dec_prologue,imagerel $L$dec_epilogue -$L$SEH_info_private_AES_set_encrypt_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - DD imagerel $L$enc_key_prologue,imagerel $L$enc_key_epilogue -$L$SEH_info_private_AES_set_decrypt_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - DD imagerel $L$dec_key_prologue,imagerel $L$dec_key_epilogue -$L$SEH_info_AES_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel cbc_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-mb-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-mb-x86_64.asm deleted file mode 100644 index be408eec687ddb..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-mb-x86_64.asm +++ /dev/null @@ -1,689 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC aesni_multi_cbc_encrypt - -ALIGN 32 -aesni_multi_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[96+rsp],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - sub rsp,48 - and rsp,-64 - mov QWORD PTR[16+rsp],rax - -$L$enc4x_body:: - movdqu xmm12,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[80+rdi] - -$L$enc4x_loop_grande:: - mov DWORD PTR[24+rsp],edx - xor edx,edx - mov ecx,DWORD PTR[((-64))+rdi] - mov r8,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov r12,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm2,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - mov ecx,DWORD PTR[((-24))+rdi] - mov r9,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov r13,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm3,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - mov ecx,DWORD PTR[16+rdi] - mov r10,QWORD PTR[rdi] - cmp ecx,edx - mov r14,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm4,XMMWORD PTR[24+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - mov ecx,DWORD PTR[56+rdi] - mov r11,QWORD PTR[40+rdi] - cmp ecx,edx - mov r15,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm5,XMMWORD PTR[64+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - test edx,edx - jz $L$enc4x_done - - movups xmm1,XMMWORD PTR[((16-120))+rsi] - pxor xmm2,xmm12 - movups xmm0,XMMWORD PTR[((32-120))+rsi] - pxor xmm3,xmm12 - mov eax,DWORD PTR[((240-120))+rsi] - pxor xmm4,xmm12 - movdqu xmm6,XMMWORD PTR[r8] - pxor xmm5,xmm12 - movdqu xmm7,XMMWORD PTR[r9] - pxor xmm2,xmm6 - movdqu xmm8,XMMWORD PTR[r10] - pxor xmm3,xmm7 - movdqu xmm9,XMMWORD PTR[r11] - pxor xmm4,xmm8 - pxor xmm5,xmm9 - movdqa xmm10,XMMWORD PTR[32+rsp] - xor rbx,rbx - jmp $L$oop_enc4x - -ALIGN 32 -$L$oop_enc4x:: - add rbx,16 - lea rbp,QWORD PTR[16+rsp] - mov ecx,1 - sub rbp,rbx - -DB 102,15,56,220,209 - prefetcht0 [31+rbx*1+r8] - prefetcht0 [31+rbx*1+r9] -DB 102,15,56,220,217 - prefetcht0 [31+rbx*1+r10] - prefetcht0 [31+rbx*1+r10] -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((48-120))+rsi] - cmp ecx,DWORD PTR[32+rsp] -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - cmovge r8,rbp - cmovg r12,rbp -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-56))+rsi] - cmp ecx,DWORD PTR[36+rsp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - cmovge r9,rbp - cmovg r13,rbp -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((-40))+rsi] - cmp ecx,DWORD PTR[40+rsp] -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - cmovge r10,rbp - cmovg r14,rbp -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-24))+rsi] - cmp ecx,DWORD PTR[44+rsp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - cmovge r11,rbp - cmovg r15,rbp -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((-8))+rsi] - movdqa xmm11,xmm10 -DB 102,15,56,220,208 - prefetcht0 [15+rbx*1+r12] - prefetcht0 [15+rbx*1+r13] -DB 102,15,56,220,216 - prefetcht0 [15+rbx*1+r14] - prefetcht0 [15+rbx*1+r15] -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((128-120))+rsi] - pxor xmm12,xmm12 - -DB 102,15,56,220,209 - pcmpgtd xmm11,xmm12 - movdqu xmm12,XMMWORD PTR[((-120))+rsi] -DB 102,15,56,220,217 - paddd xmm10,xmm11 - movdqa XMMWORD PTR[32+rsp],xmm10 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((144-120))+rsi] - - cmp eax,11 - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((160-120))+rsi] - - jb $L$enc4x_tail - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((176-120))+rsi] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((192-120))+rsi] - - je $L$enc4x_tail - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[((208-120))+rsi] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((224-120))+rsi] - jmp $L$enc4x_tail - -ALIGN 32 -$L$enc4x_tail:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movdqu xmm6,XMMWORD PTR[rbx*1+r8] - movdqu xmm1,XMMWORD PTR[((16-120))+rsi] - -DB 102,15,56,221,208 - movdqu xmm7,XMMWORD PTR[rbx*1+r9] - pxor xmm6,xmm12 -DB 102,15,56,221,216 - movdqu xmm8,XMMWORD PTR[rbx*1+r10] - pxor xmm7,xmm12 -DB 102,15,56,221,224 - movdqu xmm9,XMMWORD PTR[rbx*1+r11] - pxor xmm8,xmm12 -DB 102,15,56,221,232 - movdqu xmm0,XMMWORD PTR[((32-120))+rsi] - pxor xmm9,xmm12 - - movups XMMWORD PTR[(-16)+rbx*1+r12],xmm2 - pxor xmm2,xmm6 - movups XMMWORD PTR[(-16)+rbx*1+r13],xmm3 - pxor xmm3,xmm7 - movups XMMWORD PTR[(-16)+rbx*1+r14],xmm4 - pxor xmm4,xmm8 - movups XMMWORD PTR[(-16)+rbx*1+r15],xmm5 - pxor xmm5,xmm9 - - dec edx - jnz $L$oop_enc4x - - mov rax,QWORD PTR[16+rsp] - mov edx,DWORD PTR[24+rsp] - - - - - - - - - - - lea rdi,QWORD PTR[160+rdi] - dec edx - jnz $L$enc4x_loop_grande - -$L$enc4x_done:: - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - - - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$enc4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_encrypt:: -aesni_multi_cbc_encrypt ENDP - -PUBLIC aesni_multi_cbc_decrypt - -ALIGN 32 -aesni_multi_cbc_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_multi_cbc_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[64+rsp],xmm10 - movaps XMMWORD PTR[80+rsp],xmm11 - movaps XMMWORD PTR[96+rsp],xmm12 - movaps XMMWORD PTR[(-104)+rax],xmm13 - movaps XMMWORD PTR[(-88)+rax],xmm14 - movaps XMMWORD PTR[(-72)+rax],xmm15 - - - - - - - sub rsp,48 - and rsp,-64 - mov QWORD PTR[16+rsp],rax - -$L$dec4x_body:: - movdqu xmm12,XMMWORD PTR[rsi] - lea rsi,QWORD PTR[120+rsi] - lea rdi,QWORD PTR[80+rdi] - -$L$dec4x_loop_grande:: - mov DWORD PTR[24+rsp],edx - xor edx,edx - mov ecx,DWORD PTR[((-64))+rdi] - mov r8,QWORD PTR[((-80))+rdi] - cmp ecx,edx - mov r12,QWORD PTR[((-72))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm6,XMMWORD PTR[((-56))+rdi] - mov DWORD PTR[32+rsp],ecx - cmovle r8,rsp - mov ecx,DWORD PTR[((-24))+rdi] - mov r9,QWORD PTR[((-40))+rdi] - cmp ecx,edx - mov r13,QWORD PTR[((-32))+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm7,XMMWORD PTR[((-16))+rdi] - mov DWORD PTR[36+rsp],ecx - cmovle r9,rsp - mov ecx,DWORD PTR[16+rdi] - mov r10,QWORD PTR[rdi] - cmp ecx,edx - mov r14,QWORD PTR[8+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm8,XMMWORD PTR[24+rdi] - mov DWORD PTR[40+rsp],ecx - cmovle r10,rsp - mov ecx,DWORD PTR[56+rdi] - mov r11,QWORD PTR[40+rdi] - cmp ecx,edx - mov r15,QWORD PTR[48+rdi] - cmovg edx,ecx - test ecx,ecx - movdqu xmm9,XMMWORD PTR[64+rdi] - mov DWORD PTR[44+rsp],ecx - cmovle r11,rsp - test edx,edx - jz $L$dec4x_done - - movups xmm1,XMMWORD PTR[((16-120))+rsi] - movups xmm0,XMMWORD PTR[((32-120))+rsi] - mov eax,DWORD PTR[((240-120))+rsi] - movdqu xmm2,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[r9] - pxor xmm2,xmm12 - movdqu xmm4,XMMWORD PTR[r10] - pxor xmm3,xmm12 - movdqu xmm5,XMMWORD PTR[r11] - pxor xmm4,xmm12 - pxor xmm5,xmm12 - movdqa xmm10,XMMWORD PTR[32+rsp] - xor rbx,rbx - jmp $L$oop_dec4x - -ALIGN 32 -$L$oop_dec4x:: - add rbx,16 - lea rbp,QWORD PTR[16+rsp] - mov ecx,1 - sub rbp,rbx - -DB 102,15,56,222,209 - prefetcht0 [31+rbx*1+r8] - prefetcht0 [31+rbx*1+r9] -DB 102,15,56,222,217 - prefetcht0 [31+rbx*1+r10] - prefetcht0 [31+rbx*1+r11] -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((48-120))+rsi] - cmp ecx,DWORD PTR[32+rsp] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - cmovge r8,rbp - cmovg r12,rbp -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-56))+rsi] - cmp ecx,DWORD PTR[36+rsp] -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - cmovge r9,rbp - cmovg r13,rbp -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((-40))+rsi] - cmp ecx,DWORD PTR[40+rsp] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - cmovge r10,rbp - cmovg r14,rbp -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-24))+rsi] - cmp ecx,DWORD PTR[44+rsp] -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - cmovge r11,rbp - cmovg r15,rbp -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((-8))+rsi] - movdqa xmm11,xmm10 -DB 102,15,56,222,208 - prefetcht0 [15+rbx*1+r12] - prefetcht0 [15+rbx*1+r13] -DB 102,15,56,222,216 - prefetcht0 [15+rbx*1+r14] - prefetcht0 [15+rbx*1+r15] -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((128-120))+rsi] - pxor xmm12,xmm12 - -DB 102,15,56,222,209 - pcmpgtd xmm11,xmm12 - movdqu xmm12,XMMWORD PTR[((-120))+rsi] -DB 102,15,56,222,217 - paddd xmm10,xmm11 - movdqa XMMWORD PTR[32+rsp],xmm10 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((144-120))+rsi] - - cmp eax,11 - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((160-120))+rsi] - - jb $L$dec4x_tail - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((176-120))+rsi] - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((192-120))+rsi] - - je $L$dec4x_tail - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[((208-120))+rsi] - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((224-120))+rsi] - jmp $L$dec4x_tail - -ALIGN 32 -$L$dec4x_tail:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - pxor xmm6,xmm0 - pxor xmm7,xmm0 -DB 102,15,56,222,233 - movdqu xmm1,XMMWORD PTR[((16-120))+rsi] - pxor xmm8,xmm0 - pxor xmm9,xmm0 - movdqu xmm0,XMMWORD PTR[((32-120))+rsi] - -DB 102,15,56,223,214 -DB 102,15,56,223,223 - movdqu xmm6,XMMWORD PTR[((-16))+rbx*1+r8] - movdqu xmm7,XMMWORD PTR[((-16))+rbx*1+r9] -DB 102,65,15,56,223,224 -DB 102,65,15,56,223,233 - movdqu xmm8,XMMWORD PTR[((-16))+rbx*1+r10] - movdqu xmm9,XMMWORD PTR[((-16))+rbx*1+r11] - - movups XMMWORD PTR[(-16)+rbx*1+r12],xmm2 - movdqu xmm2,XMMWORD PTR[rbx*1+r8] - movups XMMWORD PTR[(-16)+rbx*1+r13],xmm3 - movdqu xmm3,XMMWORD PTR[rbx*1+r9] - pxor xmm2,xmm12 - movups XMMWORD PTR[(-16)+rbx*1+r14],xmm4 - movdqu xmm4,XMMWORD PTR[rbx*1+r10] - pxor xmm3,xmm12 - movups XMMWORD PTR[(-16)+rbx*1+r15],xmm5 - movdqu xmm5,XMMWORD PTR[rbx*1+r11] - pxor xmm4,xmm12 - pxor xmm5,xmm12 - - dec edx - jnz $L$oop_dec4x - - mov rax,QWORD PTR[16+rsp] - mov edx,DWORD PTR[24+rsp] - - lea rdi,QWORD PTR[160+rdi] - dec edx - jnz $L$dec4x_loop_grande - -$L$dec4x_done:: - movaps xmm6,XMMWORD PTR[((-216))+rax] - movaps xmm7,XMMWORD PTR[((-200))+rax] - movaps xmm8,XMMWORD PTR[((-184))+rax] - movaps xmm9,XMMWORD PTR[((-168))+rax] - movaps xmm10,XMMWORD PTR[((-152))+rax] - movaps xmm11,XMMWORD PTR[((-136))+rax] - movaps xmm12,XMMWORD PTR[((-120))+rax] - - - - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$dec4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_multi_cbc_decrypt:: -aesni_multi_cbc_decrypt ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[16+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea rsi,QWORD PTR[((-56-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_end_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_info_aesni_multi_cbc_encrypt - DD imagerel $L$SEH_begin_aesni_multi_cbc_decrypt - DD imagerel $L$SEH_end_aesni_multi_cbc_decrypt - DD imagerel $L$SEH_info_aesni_multi_cbc_decrypt -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_aesni_multi_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc4x_body,imagerel $L$enc4x_epilogue -$L$SEH_info_aesni_multi_cbc_decrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec4x_body,imagerel $L$dec4x_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha1-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha1-x86_64.asm deleted file mode 100644 index dbad8c5e233db6..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha1-x86_64.asm +++ /dev/null @@ -1,1888 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC aesni_cbc_sha1_enc - -ALIGN 32 -aesni_cbc_sha1_enc PROC PUBLIC - - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+0))] - mov r11,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt r11,61 - jc aesni_cbc_sha1_enc_shaext - jmp aesni_cbc_sha1_enc_ssse3 - DB 0F3h,0C3h ;repret -aesni_cbc_sha1_enc ENDP - -ALIGN 32 -aesni_cbc_sha1_enc_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha1_enc_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-264))+rsp] - - - movaps XMMWORD PTR[(96+0)+rsp],xmm6 - movaps XMMWORD PTR[(96+16)+rsp],xmm7 - movaps XMMWORD PTR[(96+32)+rsp],xmm8 - movaps XMMWORD PTR[(96+48)+rsp],xmm9 - movaps XMMWORD PTR[(96+64)+rsp],xmm10 - movaps XMMWORD PTR[(96+80)+rsp],xmm11 - movaps XMMWORD PTR[(96+96)+rsp],xmm12 - movaps XMMWORD PTR[(96+112)+rsp],xmm13 - movaps XMMWORD PTR[(96+128)+rsp],xmm14 - movaps XMMWORD PTR[(96+144)+rsp],xmm15 -$L$prologue_ssse3:: - mov r12,rdi - mov r13,rsi - mov r14,rdx - lea r15,QWORD PTR[112+rcx] - movdqu xmm2,XMMWORD PTR[r8] - mov QWORD PTR[88+rsp],r8 - shl r14,6 - sub r13,r12 - mov r8d,DWORD PTR[((240-112))+r15] - add r14,r10 - - lea r11,QWORD PTR[K_XX_XX] - mov eax,DWORD PTR[r9] - mov ebx,DWORD PTR[4+r9] - mov ecx,DWORD PTR[8+r9] - mov edx,DWORD PTR[12+r9] - mov esi,ebx - mov ebp,DWORD PTR[16+r9] - mov edi,ecx - xor edi,edx - and esi,edi - - movdqa xmm3,XMMWORD PTR[64+r11] - movdqa xmm13,XMMWORD PTR[r11] - movdqu xmm4,XMMWORD PTR[r10] - movdqu xmm5,XMMWORD PTR[16+r10] - movdqu xmm6,XMMWORD PTR[32+r10] - movdqu xmm7,XMMWORD PTR[48+r10] -DB 102,15,56,0,227 -DB 102,15,56,0,235 -DB 102,15,56,0,243 - add r10,64 - paddd xmm4,xmm13 -DB 102,15,56,0,251 - paddd xmm5,xmm13 - paddd xmm6,xmm13 - movdqa XMMWORD PTR[rsp],xmm4 - psubd xmm4,xmm13 - movdqa XMMWORD PTR[16+rsp],xmm5 - psubd xmm5,xmm13 - movdqa XMMWORD PTR[32+rsp],xmm6 - psubd xmm6,xmm13 - movups xmm15,XMMWORD PTR[((-112))+r15] - movups xmm0,XMMWORD PTR[((16-112))+r15] - jmp $L$oop_ssse3 -ALIGN 32 -$L$oop_ssse3:: - ror ebx,2 - movups xmm14,XMMWORD PTR[r12] - xorps xmm14,xmm15 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - pshufd xmm8,xmm4,238 - xor esi,edx - movdqa xmm12,xmm7 - paddd xmm13,xmm7 - mov edi,eax - add ebp,DWORD PTR[rsp] - punpcklqdq xmm8,xmm5 - xor ebx,ecx - rol eax,5 - add ebp,esi - psrldq xmm12,4 - and edi,ebx - xor ebx,ecx - pxor xmm8,xmm4 - add ebp,eax - ror eax,7 - pxor xmm12,xmm6 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - pxor xmm8,xmm12 - xor eax,ebx - rol ebp,5 - movdqa XMMWORD PTR[48+rsp],xmm13 - add edx,edi - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - and esi,eax - movdqa xmm3,xmm8 - xor eax,ebx - add edx,ebp - ror ebp,7 - movdqa xmm12,xmm8 - xor esi,ebx - pslldq xmm3,12 - paddd xmm8,xmm8 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - psrld xmm12,31 - xor ebp,eax - rol edx,5 - add ecx,esi - movdqa xmm13,xmm3 - and edi,ebp - xor ebp,eax - psrld xmm3,30 - add ecx,edx - ror edx,7 - por xmm8,xmm12 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - pslld xmm13,2 - pxor xmm8,xmm3 - xor edx,ebp - movdqa xmm3,XMMWORD PTR[r11] - rol ecx,5 - add ebx,edi - and esi,edx - pxor xmm8,xmm13 - xor edx,ebp - add ebx,ecx - ror ecx,7 - pshufd xmm9,xmm5,238 - xor esi,ebp - movdqa xmm13,xmm8 - paddd xmm3,xmm8 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - punpcklqdq xmm9,xmm6 - xor ecx,edx - rol ebx,5 - add eax,esi - psrldq xmm13,4 - and edi,ecx - xor ecx,edx - pxor xmm9,xmm5 - add eax,ebx - ror ebx,7 - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - pxor xmm13,xmm7 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - pxor xmm9,xmm13 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR[rsp],xmm3 - add ebp,edi - and esi,ebx - movdqa xmm12,xmm9 - xor ebx,ecx - add ebp,eax - ror eax,7 - movdqa xmm13,xmm9 - xor esi,ecx - pslldq xmm12,12 - paddd xmm9,xmm9 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - psrld xmm13,31 - xor eax,ebx - rol ebp,5 - add edx,esi - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - movdqa xmm3,xmm12 - and edi,eax - xor eax,ebx - psrld xmm12,30 - add edx,ebp - ror ebp,7 - por xmm9,xmm13 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - pslld xmm3,2 - pxor xmm9,xmm12 - xor ebp,eax - movdqa xmm12,XMMWORD PTR[16+r11] - rol edx,5 - add ecx,edi - and esi,ebp - pxor xmm9,xmm3 - xor ebp,eax - add ecx,edx - ror edx,7 - pshufd xmm10,xmm6,238 - xor esi,eax - movdqa xmm3,xmm9 - paddd xmm12,xmm9 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - punpcklqdq xmm10,xmm7 - xor edx,ebp - rol ecx,5 - add ebx,esi - psrldq xmm3,4 - and edi,edx - xor edx,ebp - pxor xmm10,xmm6 - add ebx,ecx - ror ecx,7 - pxor xmm3,xmm8 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - pxor xmm10,xmm3 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR[16+rsp],xmm12 - add eax,edi - and esi,ecx - movdqa xmm13,xmm10 - xor ecx,edx - add eax,ebx - ror ebx,7 - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - movdqa xmm3,xmm10 - xor esi,edx - pslldq xmm13,12 - paddd xmm10,xmm10 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - psrld xmm3,31 - xor ebx,ecx - rol eax,5 - add ebp,esi - movdqa xmm12,xmm13 - and edi,ebx - xor ebx,ecx - psrld xmm13,30 - add ebp,eax - ror eax,7 - por xmm10,xmm3 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - pslld xmm12,2 - pxor xmm10,xmm13 - xor eax,ebx - movdqa xmm13,XMMWORD PTR[16+r11] - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - and esi,eax - pxor xmm10,xmm12 - xor eax,ebx - add edx,ebp - ror ebp,7 - pshufd xmm11,xmm7,238 - xor esi,ebx - movdqa xmm12,xmm10 - paddd xmm13,xmm10 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - punpcklqdq xmm11,xmm8 - xor ebp,eax - rol edx,5 - add ecx,esi - psrldq xmm12,4 - and edi,ebp - xor ebp,eax - pxor xmm11,xmm7 - add ecx,edx - ror edx,7 - pxor xmm12,xmm9 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - pxor xmm11,xmm12 - xor edx,ebp - rol ecx,5 - movdqa XMMWORD PTR[32+rsp],xmm13 - add ebx,edi - and esi,edx - movdqa xmm3,xmm11 - xor edx,ebp - add ebx,ecx - ror ecx,7 - movdqa xmm12,xmm11 - xor esi,ebp - pslldq xmm3,12 - paddd xmm11,xmm11 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - psrld xmm12,31 - xor ecx,edx - rol ebx,5 - add eax,esi - movdqa xmm13,xmm3 - and edi,ecx - xor ecx,edx - psrld xmm3,30 - add eax,ebx - ror ebx,7 - cmp r8d,11 - jb $L$aesenclast1 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast1 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast1:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - por xmm11,xmm12 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - pslld xmm13,2 - pxor xmm11,xmm3 - xor ebx,ecx - movdqa xmm3,XMMWORD PTR[16+r11] - rol eax,5 - add ebp,edi - and esi,ebx - pxor xmm11,xmm13 - pshufd xmm13,xmm10,238 - xor ebx,ecx - add ebp,eax - ror eax,7 - pxor xmm4,xmm8 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - punpcklqdq xmm13,xmm11 - xor eax,ebx - rol ebp,5 - pxor xmm4,xmm5 - add edx,esi - movups xmm14,XMMWORD PTR[16+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[r13*1+r12],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - and edi,eax - movdqa xmm12,xmm3 - xor eax,ebx - paddd xmm3,xmm11 - add edx,ebp - pxor xmm4,xmm13 - ror ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[4+rsp] - movdqa xmm13,xmm4 - xor ebp,eax - rol edx,5 - movdqa XMMWORD PTR[48+rsp],xmm3 - add ecx,edi - and esi,ebp - xor ebp,eax - pslld xmm4,2 - add ecx,edx - ror edx,7 - psrld xmm13,30 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - por xmm4,xmm13 - xor edx,ebp - rol ecx,5 - pshufd xmm3,xmm11,238 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - pxor xmm5,xmm9 - add ebp,DWORD PTR[16+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - xor esi,ecx - punpcklqdq xmm3,xmm4 - mov edi,eax - rol eax,5 - pxor xmm5,xmm6 - add ebp,esi - xor edi,ecx - movdqa xmm13,xmm12 - ror ebx,7 - paddd xmm12,xmm4 - add ebp,eax - pxor xmm5,xmm3 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm3,xmm5 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[rsp],xmm12 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[24+rsp] - pslld xmm5,2 - xor esi,eax - mov edi,edx - psrld xmm3,30 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - por xmm5,xmm3 - add ecx,edx - add ebx,DWORD PTR[28+rsp] - pshufd xmm12,xmm4,238 - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - pxor xmm6,xmm10 - add eax,DWORD PTR[32+rsp] - xor esi,edx - punpcklqdq xmm12,xmm5 - mov edi,ebx - rol ebx,5 - pxor xmm6,xmm7 - add eax,esi - xor edi,edx - movdqa xmm3,XMMWORD PTR[32+r11] - ror ecx,7 - paddd xmm13,xmm5 - add eax,ebx - pxor xmm6,xmm12 - add ebp,DWORD PTR[36+rsp] - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - movdqa xmm12,xmm6 - add ebp,edi - xor esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm13 - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[40+rsp] - pslld xmm6,2 - xor esi,ebx - mov edi,ebp - psrld xmm12,30 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - por xmm6,xmm12 - add edx,ebp - add ecx,DWORD PTR[44+rsp] - pshufd xmm13,xmm5,238 - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - xor esi,eax - ror ebp,7 - add ecx,edx - pxor xmm7,xmm11 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - punpcklqdq xmm13,xmm6 - mov edi,ecx - rol ecx,5 - pxor xmm7,xmm8 - add ebx,esi - xor edi,ebp - movdqa xmm12,xmm3 - ror edx,7 - paddd xmm3,xmm6 - add ebx,ecx - pxor xmm7,xmm13 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - movdqa xmm13,xmm7 - add eax,edi - xor esi,edx - movdqa XMMWORD PTR[32+rsp],xmm3 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[56+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - pslld xmm7,2 - xor esi,ecx - mov edi,eax - psrld xmm13,30 - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - por xmm7,xmm13 - add ebp,eax - add edx,DWORD PTR[60+rsp] - pshufd xmm3,xmm6,238 - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - pxor xmm8,xmm4 - add ecx,DWORD PTR[rsp] - xor esi,eax - punpcklqdq xmm3,xmm7 - mov edi,edx - rol edx,5 - pxor xmm8,xmm9 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - movdqa xmm13,xmm12 - ror ebp,7 - paddd xmm12,xmm7 - add ecx,edx - pxor xmm8,xmm3 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - movdqa xmm3,xmm8 - add ebx,edi - xor esi,ebp - movdqa XMMWORD PTR[48+rsp],xmm12 - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[8+rsp] - pslld xmm8,2 - xor esi,edx - mov edi,ebx - psrld xmm3,30 - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - por xmm8,xmm3 - add eax,ebx - add ebp,DWORD PTR[12+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - pshufd xmm12,xmm7,238 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - pxor xmm9,xmm5 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - punpcklqdq xmm12,xmm8 - mov edi,ebp - rol ebp,5 - pxor xmm9,xmm10 - add edx,esi - xor edi,ebx - movdqa xmm3,xmm13 - ror eax,7 - paddd xmm13,xmm8 - add edx,ebp - pxor xmm9,xmm12 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - movdqa xmm12,xmm9 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast2 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast2 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast2:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - movdqa XMMWORD PTR[rsp],xmm13 - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[24+rsp] - pslld xmm9,2 - xor esi,ebp - mov edi,ecx - psrld xmm12,30 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - por xmm9,xmm12 - add ebx,ecx - add eax,DWORD PTR[28+rsp] - pshufd xmm13,xmm8,238 - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - pxor xmm10,xmm6 - add ebp,DWORD PTR[32+rsp] - movups xmm14,XMMWORD PTR[32+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[16+r12*1+r13],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - and esi,ecx - xor ecx,edx - ror ebx,7 - punpcklqdq xmm13,xmm9 - mov edi,eax - xor esi,ecx - pxor xmm10,xmm11 - rol eax,5 - add ebp,esi - movdqa xmm12,xmm3 - xor edi,ebx - paddd xmm3,xmm9 - xor ebx,ecx - pxor xmm10,xmm13 - add ebp,eax - add edx,DWORD PTR[36+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - movdqa xmm13,xmm10 - mov esi,ebp - xor edi,ebx - movdqa XMMWORD PTR[16+rsp],xmm3 - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - xor esi,eax - pslld xmm10,2 - xor eax,ebx - add edx,ebp - psrld xmm13,30 - add ecx,DWORD PTR[40+rsp] - and esi,eax - xor eax,ebx - por xmm10,xmm13 - ror ebp,7 - mov edi,edx - xor esi,eax - rol edx,5 - pshufd xmm3,xmm9,238 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - mov esi,ecx - xor edi,ebp - rol ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - pxor xmm11,xmm7 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - ror ecx,7 - punpcklqdq xmm3,xmm10 - mov edi,ebx - xor esi,edx - pxor xmm11,xmm4 - rol ebx,5 - add eax,esi - movdqa xmm13,XMMWORD PTR[48+r11] - xor edi,ecx - paddd xmm12,xmm10 - xor ecx,edx - pxor xmm11,xmm3 - add eax,ebx - add ebp,DWORD PTR[52+rsp] - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - and edi,ecx - xor ecx,edx - ror ebx,7 - movdqa xmm3,xmm11 - mov esi,eax - xor edi,ecx - movdqa XMMWORD PTR[32+rsp],xmm12 - rol eax,5 - add ebp,edi - xor esi,ebx - pslld xmm11,2 - xor ebx,ecx - add ebp,eax - psrld xmm3,30 - add edx,DWORD PTR[56+rsp] - and esi,ebx - xor ebx,ecx - por xmm11,xmm3 - ror eax,7 - mov edi,ebp - xor esi,ebx - rol ebp,5 - pshufd xmm12,xmm10,238 - add edx,esi - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - mov esi,edx - xor edi,eax - rol edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - pxor xmm4,xmm8 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - ror edx,7 - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - punpcklqdq xmm12,xmm11 - mov edi,ecx - xor esi,ebp - pxor xmm4,xmm5 - rol ecx,5 - add ebx,esi - movdqa xmm3,xmm13 - xor edi,edx - paddd xmm13,xmm11 - xor edx,ebp - pxor xmm4,xmm12 - add ebx,ecx - add eax,DWORD PTR[4+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - movdqa xmm12,xmm4 - mov esi,ebx - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm13 - rol ebx,5 - add eax,edi - xor esi,ecx - pslld xmm4,2 - xor ecx,edx - add eax,ebx - psrld xmm12,30 - add ebp,DWORD PTR[8+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - and esi,ecx - xor ecx,edx - por xmm4,xmm12 - ror ebx,7 - mov edi,eax - xor esi,ecx - rol eax,5 - pshufd xmm13,xmm11,238 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - mov esi,ebp - xor edi,ebx - rol ebp,5 - add edx,edi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor esi,eax - xor eax,ebx - add edx,ebp - pxor xmm5,xmm9 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - ror ebp,7 - punpcklqdq xmm13,xmm4 - mov edi,edx - xor esi,eax - pxor xmm5,xmm6 - rol edx,5 - add ecx,esi - movdqa xmm12,xmm3 - xor edi,ebp - paddd xmm3,xmm4 - xor ebp,eax - pxor xmm5,xmm13 - add ecx,edx - add ebx,DWORD PTR[20+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - movdqa xmm13,xmm5 - mov esi,ecx - xor edi,ebp - movdqa XMMWORD PTR[rsp],xmm3 - rol ecx,5 - add ebx,edi - xor esi,edx - pslld xmm5,2 - xor edx,ebp - add ebx,ecx - psrld xmm13,30 - add eax,DWORD PTR[24+rsp] - and esi,edx - xor edx,ebp - por xmm5,xmm13 - ror ecx,7 - mov edi,ebx - xor esi,edx - rol ebx,5 - pshufd xmm3,xmm4,238 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - cmp r8d,11 - jb $L$aesenclast3 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast3 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast3:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - and edi,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor edi,ecx - rol eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - pxor xmm6,xmm10 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - ror eax,7 - punpcklqdq xmm3,xmm5 - mov edi,ebp - xor esi,ebx - pxor xmm6,xmm7 - rol ebp,5 - add edx,esi - movups xmm14,XMMWORD PTR[48+r12] - xorps xmm14,xmm15 - movups XMMWORD PTR[32+r12*1+r13],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+r15] -DB 102,15,56,220,208 - movdqa xmm13,xmm12 - xor edi,eax - paddd xmm12,xmm5 - xor eax,ebx - pxor xmm6,xmm3 - add edx,ebp - add ecx,DWORD PTR[36+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - movdqa xmm3,xmm6 - mov esi,edx - xor edi,eax - movdqa XMMWORD PTR[16+rsp],xmm12 - rol edx,5 - add ecx,edi - xor esi,ebp - pslld xmm6,2 - xor ebp,eax - add ecx,edx - psrld xmm3,30 - add ebx,DWORD PTR[40+rsp] - and esi,ebp - xor ebp,eax - por xmm6,xmm3 - ror edx,7 - movups xmm0,XMMWORD PTR[((-64))+r15] -DB 102,15,56,220,209 - mov edi,ecx - xor esi,ebp - rol ecx,5 - pshufd xmm12,xmm5,238 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - pxor xmm7,xmm11 - add ebp,DWORD PTR[48+rsp] - movups xmm1,XMMWORD PTR[((-48))+r15] -DB 102,15,56,220,208 - xor esi,ecx - punpcklqdq xmm12,xmm6 - mov edi,eax - rol eax,5 - pxor xmm7,xmm8 - add ebp,esi - xor edi,ecx - movdqa xmm3,xmm13 - ror ebx,7 - paddd xmm13,xmm6 - add ebp,eax - pxor xmm7,xmm12 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm12,xmm7 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[32+rsp],xmm13 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[56+rsp] - pslld xmm7,2 - xor esi,eax - mov edi,edx - psrld xmm12,30 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[((-32))+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - por xmm7,xmm12 - add ecx,edx - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - paddd xmm3,xmm7 - add eax,esi - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm3 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - movups xmm1,XMMWORD PTR[((-16))+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - movups xmm0,XMMWORD PTR[r15] -DB 102,15,56,220,209 - xor esi,eax - ror ebp,7 - add ecx,edx - cmp r10,r14 - je $L$done_ssse3 - movdqa xmm3,XMMWORD PTR[64+r11] - movdqa xmm13,XMMWORD PTR[r11] - movdqu xmm4,XMMWORD PTR[r10] - movdqu xmm5,XMMWORD PTR[16+r10] - movdqu xmm6,XMMWORD PTR[32+r10] - movdqu xmm7,XMMWORD PTR[48+r10] -DB 102,15,56,0,227 - add r10,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx -DB 102,15,56,0,235 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - paddd xmm4,xmm13 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - movdqa XMMWORD PTR[rsp],xmm4 - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - psubd xmm4,xmm13 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx -DB 102,15,56,0,243 - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - paddd xmm5,xmm13 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm5 - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - psubd xmm5,xmm13 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp -DB 102,15,56,0,251 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - paddd xmm6,xmm13 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - movdqa XMMWORD PTR[32+rsp],xmm6 - rol edx,5 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast4 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast4 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast4:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - ror ebp,7 - psubd xmm6,xmm13 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - movups XMMWORD PTR[48+r12*1+r13],xmm2 - lea r12,QWORD PTR[64+r12] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - add edx,DWORD PTR[12+r9] - mov DWORD PTR[r9],eax - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[4+r9],esi - mov ebx,esi - mov DWORD PTR[8+r9],ecx - mov edi,ecx - mov DWORD PTR[12+r9],edx - xor edi,edx - mov DWORD PTR[16+r9],ebp - and esi,edi - jmp $L$oop_ssse3 - -$L$done_ssse3:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - movups xmm1,XMMWORD PTR[16+r15] -DB 102,15,56,220,208 - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - rol edx,5 - add ecx,esi - movups xmm0,XMMWORD PTR[32+r15] -DB 102,15,56,220,209 - xor edi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - movups xmm1,XMMWORD PTR[48+r15] -DB 102,15,56,220,208 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - cmp r8d,11 - jb $L$aesenclast5 - movups xmm0,XMMWORD PTR[64+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+r15] -DB 102,15,56,220,208 - je $L$aesenclast5 - movups xmm0,XMMWORD PTR[96+r15] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+r15] -DB 102,15,56,220,208 -$L$aesenclast5:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+r15] - xor esi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - movups XMMWORD PTR[48+r12*1+r13],xmm2 - mov r8,QWORD PTR[88+rsp] - - add eax,DWORD PTR[r9] - add esi,DWORD PTR[4+r9] - add ecx,DWORD PTR[8+r9] - mov DWORD PTR[r9],eax - add edx,DWORD PTR[12+r9] - mov DWORD PTR[4+r9],esi - add ebp,DWORD PTR[16+r9] - mov DWORD PTR[8+r9],ecx - mov DWORD PTR[12+r9],edx - mov DWORD PTR[16+r9],ebp - movups XMMWORD PTR[r8],xmm2 - movaps xmm6,XMMWORD PTR[((96+0))+rsp] - movaps xmm7,XMMWORD PTR[((96+16))+rsp] - movaps xmm8,XMMWORD PTR[((96+32))+rsp] - movaps xmm9,XMMWORD PTR[((96+48))+rsp] - movaps xmm10,XMMWORD PTR[((96+64))+rsp] - movaps xmm11,XMMWORD PTR[((96+80))+rsp] - movaps xmm12,XMMWORD PTR[((96+96))+rsp] - movaps xmm13,XMMWORD PTR[((96+112))+rsp] - movaps xmm14,XMMWORD PTR[((96+128))+rsp] - movaps xmm15,XMMWORD PTR[((96+144))+rsp] - lea rsi,QWORD PTR[264+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha1_enc_ssse3:: -aesni_cbc_sha1_enc_ssse3 ENDP -ALIGN 64 -K_XX_XX:: - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h - -DB 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115 -DB 116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52 -DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 -DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 -DB 114,103,62,0 -ALIGN 64 - -ALIGN 32 -aesni_cbc_sha1_enc_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_sha1_enc_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r10,QWORD PTR[56+rsp] - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[(-8-160)+rax],xmm6 - movaps XMMWORD PTR[(-8-144)+rax],xmm7 - movaps XMMWORD PTR[(-8-128)+rax],xmm8 - movaps XMMWORD PTR[(-8-112)+rax],xmm9 - movaps XMMWORD PTR[(-8-96)+rax],xmm10 - movaps XMMWORD PTR[(-8-80)+rax],xmm11 - movaps XMMWORD PTR[(-8-64)+rax],xmm12 - movaps XMMWORD PTR[(-8-48)+rax],xmm13 - movaps XMMWORD PTR[(-8-32)+rax],xmm14 - movaps XMMWORD PTR[(-8-16)+rax],xmm15 -$L$prologue_shaext:: - movdqu xmm8,XMMWORD PTR[r9] - movd xmm9,DWORD PTR[16+r9] - movdqa xmm7,XMMWORD PTR[((K_XX_XX+80))] - - mov r11d,DWORD PTR[240+rcx] - sub rsi,rdi - movups xmm15,XMMWORD PTR[rcx] - movups xmm2,XMMWORD PTR[r8] - movups xmm0,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[112+rcx] - - pshufd xmm8,xmm8,27 - pshufd xmm9,xmm9,27 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - movups xmm14,XMMWORD PTR[rdi] - xorps xmm14,xmm15 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 - movdqu xmm3,XMMWORD PTR[r10] - movdqa xmm12,xmm9 -DB 102,15,56,0,223 - movdqu xmm4,XMMWORD PTR[16+r10] - movdqa xmm11,xmm8 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 -DB 102,15,56,0,231 - - paddd xmm9,xmm3 - movdqu xmm5,XMMWORD PTR[32+r10] - lea r10,QWORD PTR[64+r10] - pxor xmm3,xmm12 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 - pxor xmm3,xmm12 - movdqa xmm10,xmm8 -DB 102,15,56,0,239 -DB 69,15,58,204,193,0 -DB 68,15,56,200,212 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 -DB 15,56,201,220 - movdqu xmm6,XMMWORD PTR[((-16))+r10] - movdqa xmm9,xmm8 -DB 102,15,56,0,247 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 69,15,58,204,194,0 -DB 68,15,56,200,205 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,0 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,0 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - cmp r11d,11 - jb $L$aesenclast6 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast6 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast6:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm10,xmm8 -DB 69,15,58,204,193,0 -DB 68,15,56,200,212 - movups xmm14,XMMWORD PTR[16+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,205 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,1 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,1 -DB 68,15,56,200,212 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - cmp r11d,11 - jb $L$aesenclast7 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast7 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast7:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm9,xmm8 -DB 69,15,58,204,194,1 -DB 68,15,56,200,205 - movups xmm14,XMMWORD PTR[32+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[16+rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,2 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,212 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 -DB 15,56,202,236 - pxor xmm6,xmm4 -DB 15,56,201,220 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,2 -DB 68,15,56,200,205 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 -DB 15,56,202,245 - pxor xmm3,xmm5 -DB 15,56,201,229 - cmp r11d,11 - jb $L$aesenclast8 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast8 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast8:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - movdqa xmm10,xmm8 -DB 69,15,58,204,193,2 -DB 68,15,56,200,214 - movups xmm14,XMMWORD PTR[48+rdi] - xorps xmm14,xmm15 - movups XMMWORD PTR[32+rdi*1+rsi],xmm2 - xorps xmm2,xmm14 - movups xmm1,XMMWORD PTR[((-80))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,222 - pxor xmm4,xmm6 -DB 15,56,201,238 - movups xmm0,XMMWORD PTR[((-64))+rcx] -DB 102,15,56,220,209 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,203 - movups xmm1,XMMWORD PTR[((-48))+rcx] -DB 102,15,56,220,208 -DB 15,56,202,227 - pxor xmm5,xmm3 -DB 15,56,201,243 - movups xmm0,XMMWORD PTR[((-32))+rcx] -DB 102,15,56,220,209 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,3 -DB 68,15,56,200,212 -DB 15,56,202,236 - pxor xmm6,xmm4 - movups xmm1,XMMWORD PTR[((-16))+rcx] -DB 102,15,56,220,208 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,205 -DB 15,56,202,245 - movups xmm0,XMMWORD PTR[rcx] -DB 102,15,56,220,209 - movdqa xmm5,xmm12 - movdqa xmm10,xmm8 -DB 69,15,58,204,193,3 -DB 68,15,56,200,214 - movups xmm1,XMMWORD PTR[16+rcx] -DB 102,15,56,220,208 - movdqa xmm9,xmm8 -DB 69,15,58,204,194,3 -DB 68,15,56,200,205 - movups xmm0,XMMWORD PTR[32+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[48+rcx] -DB 102,15,56,220,208 - cmp r11d,11 - jb $L$aesenclast9 - movups xmm0,XMMWORD PTR[64+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[80+rcx] -DB 102,15,56,220,208 - je $L$aesenclast9 - movups xmm0,XMMWORD PTR[96+rcx] -DB 102,15,56,220,209 - movups xmm1,XMMWORD PTR[112+rcx] -DB 102,15,56,220,208 -$L$aesenclast9:: -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[((16-112))+rcx] - dec rdx - - paddd xmm8,xmm11 - movups XMMWORD PTR[48+rdi*1+rsi],xmm2 - lea rdi,QWORD PTR[64+rdi] - jnz $L$oop_shaext - - pshufd xmm8,xmm8,27 - pshufd xmm9,xmm9,27 - movups XMMWORD PTR[r8],xmm2 - movdqu XMMWORD PTR[r9],xmm8 - movd DWORD PTR[16+r9],xmm9 - movaps xmm6,XMMWORD PTR[((-8-160))+rax] - movaps xmm7,XMMWORD PTR[((-8-144))+rax] - movaps xmm8,XMMWORD PTR[((-8-128))+rax] - movaps xmm9,XMMWORD PTR[((-8-112))+rax] - movaps xmm10,XMMWORD PTR[((-8-96))+rax] - movaps xmm11,XMMWORD PTR[((-8-80))+rax] - movaps xmm12,XMMWORD PTR[((-8-64))+rax] - movaps xmm13,XMMWORD PTR[((-8-48))+rax] - movaps xmm14,XMMWORD PTR[((-8-32))+rax] - movaps xmm15,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_sha1_enc_shaext:: -aesni_cbc_sha1_enc_shaext ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -ssse3_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - lea r10,QWORD PTR[aesni_cbc_sha1_enc_shaext] - cmp rbx,r10 - jb $L$seh_no_shaext - - lea rsi,QWORD PTR[rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[168+rax] - jmp $L$common_seh_tail -$L$seh_no_shaext:: - lea rsi,QWORD PTR[96+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[264+rax] - - mov r15,QWORD PTR[rax] - mov r14,QWORD PTR[8+rax] - mov r13,QWORD PTR[16+rax] - mov r12,QWORD PTR[24+rax] - mov rbp,QWORD PTR[32+rax] - mov rbx,QWORD PTR[40+rax] - lea rax,QWORD PTR[48+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -ssse3_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_end_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_info_aesni_cbc_sha1_enc_ssse3 - DD imagerel $L$SEH_begin_aesni_cbc_sha1_enc_shaext - DD imagerel $L$SEH_end_aesni_cbc_sha1_enc_shaext - DD imagerel $L$SEH_info_aesni_cbc_sha1_enc_shaext -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_aesni_cbc_sha1_enc_ssse3:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 -$L$SEH_info_aesni_cbc_sha1_enc_shaext:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_shaext,imagerel $L$epilogue_shaext - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha256-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha256-x86_64.asm deleted file mode 100644 index 34b554f9a91281..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha256-x86_64.asm +++ /dev/null @@ -1,65 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC aesni_cbc_sha256_enc - -ALIGN 16 -aesni_cbc_sha256_enc PROC PUBLIC - xor eax,eax - cmp rcx,0 - je $L$probe - ud2 -$L$probe:: - DB 0F3h,0C3h ;repret -aesni_cbc_sha256_enc ENDP - -ALIGN 64 - -K256:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 0,0,0,0,0,0,0,0,-1,-1,-1,-1 - DD 0,0,0,0,0,0,0,0 -DB 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54 -DB 32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95 -DB 54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98 -DB 121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108 -DB 46,111,114,103,62,0 -ALIGN 64 - -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-x86_64.asm deleted file mode 100644 index 5e848125d679fe..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-x86_64.asm +++ /dev/null @@ -1,4035 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC aesni_encrypt - -ALIGN 16 -aesni_encrypt PROC PUBLIC - movups xmm2,XMMWORD PTR[rcx] - mov eax,DWORD PTR[240+r8] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_1:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_1 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[rdx],xmm2 - pxor xmm2,xmm2 - DB 0F3h,0C3h ;repret -aesni_encrypt ENDP - -PUBLIC aesni_decrypt - -ALIGN 16 -aesni_decrypt PROC PUBLIC - movups xmm2,XMMWORD PTR[rcx] - mov eax,DWORD PTR[240+r8] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_dec1_2:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_dec1_2 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[rdx],xmm2 - pxor xmm2,xmm2 - DB 0F3h,0C3h ;repret -aesni_decrypt ENDP - -ALIGN 16 -_aesni_encrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$enc_loop2:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop2 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - DB 0F3h,0C3h ;repret -_aesni_encrypt2 ENDP - -ALIGN 16 -_aesni_decrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$dec_loop2:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop2 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,223,208 -DB 102,15,56,223,216 - DB 0F3h,0C3h ;repret -_aesni_decrypt2 ENDP - -ALIGN 16 -_aesni_encrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$enc_loop3:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop3 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 - DB 0F3h,0C3h ;repret -_aesni_encrypt3 ENDP - -ALIGN 16 -_aesni_decrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax - add rax,16 - -$L$dec_loop3:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop3 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 - DB 0F3h,0C3h ;repret -_aesni_decrypt3 ENDP - -ALIGN 16 -_aesni_encrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - xorps xmm5,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 00fh,01fh,000h - add rax,16 - -$L$enc_loop4:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop4 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 - DB 0F3h,0C3h ;repret -_aesni_encrypt4 ENDP - -ALIGN 16 -_aesni_decrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - xorps xmm4,xmm0 - xorps xmm5,xmm0 - movups xmm0,XMMWORD PTR[32+rcx] - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 00fh,01fh,000h - add rax,16 - -$L$dec_loop4:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop4 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 - DB 0F3h,0C3h ;repret -_aesni_decrypt4 ENDP - -ALIGN 16 -_aesni_encrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,220,209 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,220,217 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,220,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$enc_loop6_enter -ALIGN 16 -$L$enc_loop6:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -$L$enc_loop6_enter:: -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop6 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 - DB 0F3h,0C3h ;repret -_aesni_encrypt6 ENDP - -ALIGN 16 -_aesni_decrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,222,209 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,222,217 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,222,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$dec_loop6_enter -ALIGN 16 -$L$dec_loop6:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -$L$dec_loop6_enter:: -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop6 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 - DB 0F3h,0C3h ;repret -_aesni_decrypt6 ENDP - -ALIGN 16 -_aesni_encrypt8 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - pxor xmm6,xmm0 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,220,209 - pxor xmm7,xmm0 - pxor xmm8,xmm0 -DB 102,15,56,220,217 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$enc_loop8_inner -ALIGN 16 -$L$enc_loop8:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -$L$enc_loop8_inner:: -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 -$L$enc_loop8_enter:: - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$enc_loop8 - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 -DB 102,68,15,56,221,192 -DB 102,68,15,56,221,200 - DB 0F3h,0C3h ;repret -_aesni_encrypt8 ENDP - -ALIGN 16 -_aesni_decrypt8 PROC PRIVATE - movups xmm0,XMMWORD PTR[rcx] - shl eax,4 - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm2,xmm0 - xorps xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - pxor xmm6,xmm0 - lea rcx,QWORD PTR[32+rax*1+rcx] - neg rax -DB 102,15,56,222,209 - pxor xmm7,xmm0 - pxor xmm8,xmm0 -DB 102,15,56,222,217 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[rax*1+rcx] - add rax,16 - jmp $L$dec_loop8_inner -ALIGN 16 -$L$dec_loop8:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -$L$dec_loop8_inner:: -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 -$L$dec_loop8_enter:: - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$dec_loop8 - -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 -DB 102,68,15,56,223,192 -DB 102,68,15,56,223,200 - DB 0F3h,0C3h ;repret -_aesni_decrypt8 ENDP -PUBLIC aesni_ecb_encrypt - -ALIGN 16 -aesni_ecb_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ecb_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ecb_enc_body:: - and rdx,-16 - jz $L$ecb_ret - - mov eax,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov r10d,eax - test r8d,r8d - jz $L$ecb_decrypt - - cmp rdx,080h - jb $L$ecb_enc_tail - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqu xmm8,XMMWORD PTR[96+rdi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] - sub rdx,080h - jmp $L$ecb_enc_loop8_enter -ALIGN 16 -$L$ecb_enc_loop8:: - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movdqu xmm2,XMMWORD PTR[rdi] - mov eax,r10d - movups XMMWORD PTR[16+rsi],xmm3 - movdqu xmm3,XMMWORD PTR[16+rdi] - movups XMMWORD PTR[32+rsi],xmm4 - movdqu xmm4,XMMWORD PTR[32+rdi] - movups XMMWORD PTR[48+rsi],xmm5 - movdqu xmm5,XMMWORD PTR[48+rdi] - movups XMMWORD PTR[64+rsi],xmm6 - movdqu xmm6,XMMWORD PTR[64+rdi] - movups XMMWORD PTR[80+rsi],xmm7 - movdqu xmm7,XMMWORD PTR[80+rdi] - movups XMMWORD PTR[96+rsi],xmm8 - movdqu xmm8,XMMWORD PTR[96+rdi] - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] -$L$ecb_enc_loop8_enter:: - - call _aesni_encrypt8 - - sub rdx,080h - jnc $L$ecb_enc_loop8 - - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movups XMMWORD PTR[16+rsi],xmm3 - mov eax,r10d - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - add rdx,080h - jz $L$ecb_ret - -$L$ecb_enc_tail:: - movups xmm2,XMMWORD PTR[rdi] - cmp rdx,020h - jb $L$ecb_enc_one - movups xmm3,XMMWORD PTR[16+rdi] - je $L$ecb_enc_two - movups xmm4,XMMWORD PTR[32+rdi] - cmp rdx,040h - jb $L$ecb_enc_three - movups xmm5,XMMWORD PTR[48+rdi] - je $L$ecb_enc_four - movups xmm6,XMMWORD PTR[64+rdi] - cmp rdx,060h - jb $L$ecb_enc_five - movups xmm7,XMMWORD PTR[80+rdi] - je $L$ecb_enc_six - movdqu xmm8,XMMWORD PTR[96+rdi] - xorps xmm9,xmm9 - call _aesni_encrypt8 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_one:: - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_3:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_3 -DB 102,15,56,221,209 - movups XMMWORD PTR[rsi],xmm2 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_two:: - call _aesni_encrypt2 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_three:: - call _aesni_encrypt3 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_four:: - call _aesni_encrypt4 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_five:: - xorps xmm7,xmm7 - call _aesni_encrypt6 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_enc_six:: - call _aesni_encrypt6 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - jmp $L$ecb_ret - -ALIGN 16 -$L$ecb_decrypt:: - cmp rdx,080h - jb $L$ecb_dec_tail - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqu xmm8,XMMWORD PTR[96+rdi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] - sub rdx,080h - jmp $L$ecb_dec_loop8_enter -ALIGN 16 -$L$ecb_dec_loop8:: - movups XMMWORD PTR[rsi],xmm2 - mov rcx,r11 - movdqu xmm2,XMMWORD PTR[rdi] - mov eax,r10d - movups XMMWORD PTR[16+rsi],xmm3 - movdqu xmm3,XMMWORD PTR[16+rdi] - movups XMMWORD PTR[32+rsi],xmm4 - movdqu xmm4,XMMWORD PTR[32+rdi] - movups XMMWORD PTR[48+rsi],xmm5 - movdqu xmm5,XMMWORD PTR[48+rdi] - movups XMMWORD PTR[64+rsi],xmm6 - movdqu xmm6,XMMWORD PTR[64+rdi] - movups XMMWORD PTR[80+rsi],xmm7 - movdqu xmm7,XMMWORD PTR[80+rdi] - movups XMMWORD PTR[96+rsi],xmm8 - movdqu xmm8,XMMWORD PTR[96+rdi] - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - movdqu xmm9,XMMWORD PTR[112+rdi] - lea rdi,QWORD PTR[128+rdi] -$L$ecb_dec_loop8_enter:: - - call _aesni_decrypt8 - - movups xmm0,XMMWORD PTR[r11] - sub rdx,080h - jnc $L$ecb_dec_loop8 - - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - mov rcx,r11 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - mov eax,r10d - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - pxor xmm8,xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - pxor xmm9,xmm9 - lea rsi,QWORD PTR[128+rsi] - add rdx,080h - jz $L$ecb_ret - -$L$ecb_dec_tail:: - movups xmm2,XMMWORD PTR[rdi] - cmp rdx,020h - jb $L$ecb_dec_one - movups xmm3,XMMWORD PTR[16+rdi] - je $L$ecb_dec_two - movups xmm4,XMMWORD PTR[32+rdi] - cmp rdx,040h - jb $L$ecb_dec_three - movups xmm5,XMMWORD PTR[48+rdi] - je $L$ecb_dec_four - movups xmm6,XMMWORD PTR[64+rdi] - cmp rdx,060h - jb $L$ecb_dec_five - movups xmm7,XMMWORD PTR[80+rdi] - je $L$ecb_dec_six - movups xmm8,XMMWORD PTR[96+rdi] - movups xmm0,XMMWORD PTR[rcx] - xorps xmm9,xmm9 - call _aesni_decrypt8 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - movups XMMWORD PTR[96+rsi],xmm8 - pxor xmm8,xmm8 - pxor xmm9,xmm9 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_one:: - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_4:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_4 -DB 102,15,56,223,209 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_two:: - call _aesni_decrypt2 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_three:: - call _aesni_decrypt3 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_four:: - call _aesni_decrypt4 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_five:: - xorps xmm7,xmm7 - call _aesni_decrypt6 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - jmp $L$ecb_ret -ALIGN 16 -$L$ecb_dec_six:: - call _aesni_decrypt6 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - movups XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - movups XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - -$L$ecb_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ecb_enc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ecb_encrypt:: -aesni_ecb_encrypt ENDP -PUBLIC aesni_ccm64_encrypt_blocks - -ALIGN 16 -aesni_ccm64_encrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ccm64_encrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ccm64_enc_body:: - mov eax,DWORD PTR[240+rcx] - movdqu xmm6,XMMWORD PTR[r8] - movdqa xmm9,XMMWORD PTR[$L$increment64] - movdqa xmm7,XMMWORD PTR[$L$bswap_mask] - - shl eax,4 - mov r10d,16 - lea r11,QWORD PTR[rcx] - movdqu xmm3,XMMWORD PTR[r9] - movdqa xmm2,xmm6 - lea rcx,QWORD PTR[32+rax*1+rcx] -DB 102,15,56,0,247 - sub r10,rax - jmp $L$ccm64_enc_outer -ALIGN 16 -$L$ccm64_enc_outer:: - movups xmm0,XMMWORD PTR[r11] - mov rax,r10 - movups xmm8,XMMWORD PTR[rdi] - - xorps xmm2,xmm0 - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm0,xmm8 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR[32+r11] - -$L$ccm64_enc2_loop:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$ccm64_enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 - paddq xmm6,xmm9 - dec rdx -DB 102,15,56,221,208 -DB 102,15,56,221,216 - - lea rdi,QWORD PTR[16+rdi] - xorps xmm8,xmm2 - movdqa xmm2,xmm6 - movups XMMWORD PTR[rsi],xmm8 -DB 102,15,56,0,215 - lea rsi,QWORD PTR[16+rsi] - jnz $L$ccm64_enc_outer - - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movups XMMWORD PTR[r9],xmm3 - pxor xmm3,xmm3 - pxor xmm8,xmm8 - pxor xmm6,xmm6 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ccm64_enc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ccm64_encrypt_blocks:: -aesni_ccm64_encrypt_blocks ENDP -PUBLIC aesni_ccm64_decrypt_blocks - -ALIGN 16 -aesni_ccm64_decrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ccm64_decrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 -$L$ccm64_dec_body:: - mov eax,DWORD PTR[240+rcx] - movups xmm6,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[r9] - movdqa xmm9,XMMWORD PTR[$L$increment64] - movdqa xmm7,XMMWORD PTR[$L$bswap_mask] - - movaps xmm2,xmm6 - mov r10d,eax - mov r11,rcx -DB 102,15,56,0,247 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_5:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_5 -DB 102,15,56,221,209 - shl r10d,4 - mov eax,16 - movups xmm8,XMMWORD PTR[rdi] - paddq xmm6,xmm9 - lea rdi,QWORD PTR[16+rdi] - sub rax,r10 - lea rcx,QWORD PTR[32+r10*1+r11] - mov r10,rax - jmp $L$ccm64_dec_outer -ALIGN 16 -$L$ccm64_dec_outer:: - xorps xmm8,xmm2 - movdqa xmm2,xmm6 - movups XMMWORD PTR[rsi],xmm8 - lea rsi,QWORD PTR[16+rsi] -DB 102,15,56,0,215 - - sub rdx,1 - jz $L$ccm64_dec_break - - movups xmm0,XMMWORD PTR[r11] - mov rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm8,xmm0 - xorps xmm2,xmm0 - xorps xmm3,xmm8 - movups xmm0,XMMWORD PTR[32+r11] - jmp $L$ccm64_dec2_loop -ALIGN 16 -$L$ccm64_dec2_loop:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR[rax*1+rcx] - add rax,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR[((-16))+rax*1+rcx] - jnz $L$ccm64_dec2_loop - movups xmm8,XMMWORD PTR[rdi] - paddq xmm6,xmm9 -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea rdi,QWORD PTR[16+rdi] - jmp $L$ccm64_dec_outer - -ALIGN 16 -$L$ccm64_dec_break:: - - mov eax,DWORD PTR[240+r11] - movups xmm0,XMMWORD PTR[r11] - movups xmm1,XMMWORD PTR[16+r11] - xorps xmm8,xmm0 - lea r11,QWORD PTR[32+r11] - xorps xmm3,xmm8 -$L$oop_enc1_6:: -DB 102,15,56,220,217 - dec eax - movups xmm1,XMMWORD PTR[r11] - lea r11,QWORD PTR[16+r11] - jnz $L$oop_enc1_6 -DB 102,15,56,221,217 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movups XMMWORD PTR[r9],xmm3 - pxor xmm3,xmm3 - pxor xmm8,xmm8 - pxor xmm6,xmm6 - movaps xmm6,XMMWORD PTR[rsp] - movaps XMMWORD PTR[rsp],xmm0 - movaps xmm7,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm8,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm9,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - lea rsp,QWORD PTR[88+rsp] -$L$ccm64_dec_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ccm64_decrypt_blocks:: -aesni_ccm64_decrypt_blocks ENDP -PUBLIC aesni_ctr32_encrypt_blocks - -ALIGN 16 -aesni_ctr32_encrypt_blocks PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_ctr32_encrypt_blocks:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - cmp rdx,1 - jne $L$ctr32_bulk - - - - movups xmm2,XMMWORD PTR[r8] - movups xmm3,XMMWORD PTR[rdi] - mov edx,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_7:: -DB 102,15,56,220,209 - dec edx - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_7 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - xorps xmm2,xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[rsi],xmm2 - xorps xmm2,xmm2 - jmp $L$ctr32_epilogue - -ALIGN 16 -$L$ctr32_bulk:: - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,288 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$ctr32_body:: - lea rbp,QWORD PTR[((-8))+rax] - - - - - movdqu xmm2,XMMWORD PTR[r8] - movdqu xmm0,XMMWORD PTR[rcx] - mov r8d,DWORD PTR[12+r8] - pxor xmm2,xmm0 - mov r11d,DWORD PTR[12+rcx] - movdqa XMMWORD PTR[rsp],xmm2 - bswap r8d - movdqa xmm3,xmm2 - movdqa xmm4,xmm2 - movdqa xmm5,xmm2 - movdqa XMMWORD PTR[64+rsp],xmm2 - movdqa XMMWORD PTR[80+rsp],xmm2 - movdqa XMMWORD PTR[96+rsp],xmm2 - mov r10,rdx - movdqa XMMWORD PTR[112+rsp],xmm2 - - lea rax,QWORD PTR[1+r8] - lea rdx,QWORD PTR[2+r8] - bswap eax - bswap edx - xor eax,r11d - xor edx,r11d -DB 102,15,58,34,216,3 - lea rax,QWORD PTR[3+r8] - movdqa XMMWORD PTR[16+rsp],xmm3 -DB 102,15,58,34,226,3 - bswap eax - mov rdx,r10 - lea r10,QWORD PTR[4+r8] - movdqa XMMWORD PTR[32+rsp],xmm4 - xor eax,r11d - bswap r10d -DB 102,15,58,34,232,3 - xor r10d,r11d - movdqa XMMWORD PTR[48+rsp],xmm5 - lea r9,QWORD PTR[5+r8] - mov DWORD PTR[((64+12))+rsp],r10d - bswap r9d - lea r10,QWORD PTR[6+r8] - mov eax,DWORD PTR[240+rcx] - xor r9d,r11d - bswap r10d - mov DWORD PTR[((80+12))+rsp],r9d - xor r10d,r11d - lea r9,QWORD PTR[7+r8] - mov DWORD PTR[((96+12))+rsp],r10d - bswap r9d - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - xor r9d,r11d - and r10d,71303168 - mov DWORD PTR[((112+12))+rsp],r9d - - movups xmm1,XMMWORD PTR[16+rcx] - - movdqa xmm6,XMMWORD PTR[64+rsp] - movdqa xmm7,XMMWORD PTR[80+rsp] - - cmp rdx,8 - jb $L$ctr32_tail - - sub rdx,6 - cmp r10d,4194304 - je $L$ctr32_6x - - lea rcx,QWORD PTR[128+rcx] - sub rdx,2 - jmp $L$ctr32_loop8 - -ALIGN 16 -$L$ctr32_6x:: - shl eax,4 - mov r10d,48 - bswap r11d - lea rcx,QWORD PTR[32+rax*1+rcx] - sub r10,rax - jmp $L$ctr32_loop6 - -ALIGN 16 -$L$ctr32_loop6:: - add r8d,6 - movups xmm0,XMMWORD PTR[((-48))+r10*1+rcx] -DB 102,15,56,220,209 - mov eax,r8d - xor eax,r11d -DB 102,15,56,220,217 -DB 00fh,038h,0f1h,044h,024h,12 - lea eax,DWORD PTR[1+r8] -DB 102,15,56,220,225 - xor eax,r11d -DB 00fh,038h,0f1h,044h,024h,28 -DB 102,15,56,220,233 - lea eax,DWORD PTR[2+r8] - xor eax,r11d -DB 102,15,56,220,241 -DB 00fh,038h,0f1h,044h,024h,44 - lea eax,DWORD PTR[3+r8] -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-32))+r10*1+rcx] - xor eax,r11d - -DB 102,15,56,220,208 -DB 00fh,038h,0f1h,044h,024h,60 - lea eax,DWORD PTR[4+r8] -DB 102,15,56,220,216 - xor eax,r11d -DB 00fh,038h,0f1h,044h,024h,76 -DB 102,15,56,220,224 - lea eax,DWORD PTR[5+r8] - xor eax,r11d -DB 102,15,56,220,232 -DB 00fh,038h,0f1h,044h,024h,92 - mov rax,r10 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-16))+r10*1+rcx] - - call $L$enc_loop6 - - movdqu xmm8,XMMWORD PTR[rdi] - movdqu xmm9,XMMWORD PTR[16+rdi] - movdqu xmm10,XMMWORD PTR[32+rdi] - movdqu xmm11,XMMWORD PTR[48+rdi] - movdqu xmm12,XMMWORD PTR[64+rdi] - movdqu xmm13,XMMWORD PTR[80+rdi] - lea rdi,QWORD PTR[96+rdi] - movups xmm1,XMMWORD PTR[((-64))+r10*1+rcx] - pxor xmm8,xmm2 - movaps xmm2,XMMWORD PTR[rsp] - pxor xmm9,xmm3 - movaps xmm3,XMMWORD PTR[16+rsp] - pxor xmm10,xmm4 - movaps xmm4,XMMWORD PTR[32+rsp] - pxor xmm11,xmm5 - movaps xmm5,XMMWORD PTR[48+rsp] - pxor xmm12,xmm6 - movaps xmm6,XMMWORD PTR[64+rsp] - pxor xmm13,xmm7 - movaps xmm7,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[rsi],xmm8 - movdqu XMMWORD PTR[16+rsi],xmm9 - movdqu XMMWORD PTR[32+rsi],xmm10 - movdqu XMMWORD PTR[48+rsi],xmm11 - movdqu XMMWORD PTR[64+rsi],xmm12 - movdqu XMMWORD PTR[80+rsi],xmm13 - lea rsi,QWORD PTR[96+rsi] - - sub rdx,6 - jnc $L$ctr32_loop6 - - add rdx,6 - jz $L$ctr32_done - - lea eax,DWORD PTR[((-48))+r10] - lea rcx,QWORD PTR[((-80))+r10*1+rcx] - neg eax - shr eax,4 - jmp $L$ctr32_tail - -ALIGN 32 -$L$ctr32_loop8:: - add r8d,8 - movdqa xmm8,XMMWORD PTR[96+rsp] -DB 102,15,56,220,209 - mov r9d,r8d - movdqa xmm9,XMMWORD PTR[112+rsp] -DB 102,15,56,220,217 - bswap r9d - movups xmm0,XMMWORD PTR[((32-128))+rcx] -DB 102,15,56,220,225 - xor r9d,r11d - nop -DB 102,15,56,220,233 - mov DWORD PTR[((0+12))+rsp],r9d - lea r9,QWORD PTR[1+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((48-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((16+12))+rsp],r9d - lea r9,QWORD PTR[2+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((64-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((32+12))+rsp],r9d - lea r9,QWORD PTR[3+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((80-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((48+12))+rsp],r9d - lea r9,QWORD PTR[4+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((96-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((64+12))+rsp],r9d - lea r9,QWORD PTR[5+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((112-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,224 -DB 102,15,56,220,232 - mov DWORD PTR[((80+12))+rsp],r9d - lea r9,QWORD PTR[6+r8] -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((128-128))+rcx] - bswap r9d -DB 102,15,56,220,209 -DB 102,15,56,220,217 - xor r9d,r11d -DB 066h,090h -DB 102,15,56,220,225 -DB 102,15,56,220,233 - mov DWORD PTR[((96+12))+rsp],r9d - lea r9,QWORD PTR[7+r8] -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((144-128))+rcx] - bswap r9d -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - xor r9d,r11d - movdqu xmm10,XMMWORD PTR[rdi] -DB 102,15,56,220,232 - mov DWORD PTR[((112+12))+rsp],r9d - cmp eax,11 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((160-128))+rcx] - - jb $L$ctr32_enc_done - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((176-128))+rcx] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((192-128))+rcx] - je $L$ctr32_enc_done - -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movups xmm1,XMMWORD PTR[((208-128))+rcx] - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 -DB 102,68,15,56,220,192 -DB 102,68,15,56,220,200 - movups xmm0,XMMWORD PTR[((224-128))+rcx] - jmp $L$ctr32_enc_done - -ALIGN 16 -$L$ctr32_enc_done:: - movdqu xmm11,XMMWORD PTR[16+rdi] - pxor xmm10,xmm0 - movdqu xmm12,XMMWORD PTR[32+rdi] - pxor xmm11,xmm0 - movdqu xmm13,XMMWORD PTR[48+rdi] - pxor xmm12,xmm0 - movdqu xmm14,XMMWORD PTR[64+rdi] - pxor xmm13,xmm0 - movdqu xmm15,XMMWORD PTR[80+rdi] - pxor xmm14,xmm0 - pxor xmm15,xmm0 -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 -DB 102,68,15,56,220,201 - movdqu xmm1,XMMWORD PTR[96+rdi] - lea rdi,QWORD PTR[128+rdi] - -DB 102,65,15,56,221,210 - pxor xmm1,xmm0 - movdqu xmm10,XMMWORD PTR[((112-128))+rdi] -DB 102,65,15,56,221,219 - pxor xmm10,xmm0 - movdqa xmm11,XMMWORD PTR[rsp] -DB 102,65,15,56,221,228 -DB 102,65,15,56,221,237 - movdqa xmm12,XMMWORD PTR[16+rsp] - movdqa xmm13,XMMWORD PTR[32+rsp] -DB 102,65,15,56,221,246 -DB 102,65,15,56,221,255 - movdqa xmm14,XMMWORD PTR[48+rsp] - movdqa xmm15,XMMWORD PTR[64+rsp] -DB 102,68,15,56,221,193 - movdqa xmm0,XMMWORD PTR[80+rsp] - movups xmm1,XMMWORD PTR[((16-128))+rcx] -DB 102,69,15,56,221,202 - - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - movdqa xmm3,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - movdqa xmm4,xmm13 - movups XMMWORD PTR[48+rsi],xmm5 - movdqa xmm5,xmm14 - movups XMMWORD PTR[64+rsi],xmm6 - movdqa xmm6,xmm15 - movups XMMWORD PTR[80+rsi],xmm7 - movdqa xmm7,xmm0 - movups XMMWORD PTR[96+rsi],xmm8 - movups XMMWORD PTR[112+rsi],xmm9 - lea rsi,QWORD PTR[128+rsi] - - sub rdx,8 - jnc $L$ctr32_loop8 - - add rdx,8 - jz $L$ctr32_done - lea rcx,QWORD PTR[((-128))+rcx] - -$L$ctr32_tail:: - - - lea rcx,QWORD PTR[16+rcx] - cmp rdx,4 - jb $L$ctr32_loop3 - je $L$ctr32_loop4 - - - shl eax,4 - movdqa xmm8,XMMWORD PTR[96+rsp] - pxor xmm9,xmm9 - - movups xmm0,XMMWORD PTR[16+rcx] -DB 102,15,56,220,209 -DB 102,15,56,220,217 - lea rcx,QWORD PTR[((32-16))+rax*1+rcx] - neg rax -DB 102,15,56,220,225 - add rax,16 - movups xmm10,XMMWORD PTR[rdi] -DB 102,15,56,220,233 -DB 102,15,56,220,241 - movups xmm11,XMMWORD PTR[16+rdi] - movups xmm12,XMMWORD PTR[32+rdi] -DB 102,15,56,220,249 -DB 102,68,15,56,220,193 - - call $L$enc_loop8_enter - - movdqu xmm13,XMMWORD PTR[48+rdi] - pxor xmm2,xmm10 - movdqu xmm10,XMMWORD PTR[64+rdi] - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm6,xmm10 - movdqu XMMWORD PTR[48+rsi],xmm5 - movdqu XMMWORD PTR[64+rsi],xmm6 - cmp rdx,6 - jb $L$ctr32_done - - movups xmm11,XMMWORD PTR[80+rdi] - xorps xmm7,xmm11 - movups XMMWORD PTR[80+rsi],xmm7 - je $L$ctr32_done - - movups xmm12,XMMWORD PTR[96+rdi] - xorps xmm8,xmm12 - movups XMMWORD PTR[96+rsi],xmm8 - jmp $L$ctr32_done - -ALIGN 32 -$L$ctr32_loop4:: -DB 102,15,56,220,209 - lea rcx,QWORD PTR[16+rcx] - dec eax -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR[rcx] - jnz $L$ctr32_loop4 -DB 102,15,56,221,209 -DB 102,15,56,221,217 - movups xmm10,XMMWORD PTR[rdi] - movups xmm11,XMMWORD PTR[16+rdi] -DB 102,15,56,221,225 -DB 102,15,56,221,233 - movups xmm12,XMMWORD PTR[32+rdi] - movups xmm13,XMMWORD PTR[48+rdi] - - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - xorps xmm3,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[48+rsi],xmm5 - jmp $L$ctr32_done - -ALIGN 32 -$L$ctr32_loop3:: -DB 102,15,56,220,209 - lea rcx,QWORD PTR[16+rcx] - dec eax -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR[rcx] - jnz $L$ctr32_loop3 -DB 102,15,56,221,209 -DB 102,15,56,221,217 -DB 102,15,56,221,225 - - movups xmm10,XMMWORD PTR[rdi] - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - cmp rdx,2 - jb $L$ctr32_done - - movups xmm11,XMMWORD PTR[16+rdi] - xorps xmm3,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - je $L$ctr32_done - - movups xmm12,XMMWORD PTR[32+rdi] - xorps xmm4,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - -$L$ctr32_done:: - xorps xmm0,xmm0 - xor r11d,r11d - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - movaps XMMWORD PTR[112+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$ctr32_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_ctr32_encrypt_blocks:: -aesni_ctr32_encrypt_blocks ENDP -PUBLIC aesni_xts_encrypt - -ALIGN 16 -aesni_xts_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_xts_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,272 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$xts_enc_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm2,XMMWORD PTR[r9] - mov eax,DWORD PTR[240+r8] - mov r10d,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_8:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_8 -DB 102,15,56,221,209 - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov eax,r10d - shl r10d,4 - mov r9,rdx - and rdx,-16 - - movups xmm1,XMMWORD PTR[16+r10*1+rcx] - - movdqa xmm8,XMMWORD PTR[$L$xts_magic] - movdqa xmm15,xmm2 - pshufd xmm9,xmm2,05fh - pxor xmm1,xmm0 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm10,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm10,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm11,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm11,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm12,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm12,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm13,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm13,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm15 - psrad xmm9,31 - paddq xmm15,xmm15 - pand xmm9,xmm8 - pxor xmm14,xmm0 - pxor xmm15,xmm9 - movaps XMMWORD PTR[96+rsp],xmm1 - - sub rdx,16*6 - jc $L$xts_enc_short - - mov eax,16+96 - lea rcx,QWORD PTR[32+r10*1+r11] - sub rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - mov r10,rax - lea r8,QWORD PTR[$L$xts_magic] - jmp $L$xts_enc_grandloop - -ALIGN 32 -$L$xts_enc_grandloop:: - movdqu xmm2,XMMWORD PTR[rdi] - movdqa xmm8,xmm0 - movdqu xmm3,XMMWORD PTR[16+rdi] - pxor xmm2,xmm10 - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm3,xmm11 -DB 102,15,56,220,209 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm4,xmm12 -DB 102,15,56,220,217 - movdqu xmm6,XMMWORD PTR[64+rdi] - pxor xmm5,xmm13 -DB 102,15,56,220,225 - movdqu xmm7,XMMWORD PTR[80+rdi] - pxor xmm8,xmm15 - movdqa xmm9,XMMWORD PTR[96+rsp] - pxor xmm6,xmm14 -DB 102,15,56,220,233 - movups xmm0,XMMWORD PTR[32+r11] - lea rdi,QWORD PTR[96+rdi] - pxor xmm7,xmm8 - - pxor xmm10,xmm9 -DB 102,15,56,220,241 - pxor xmm11,xmm9 - movdqa XMMWORD PTR[rsp],xmm10 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[48+r11] - pxor xmm12,xmm9 - -DB 102,15,56,220,208 - pxor xmm13,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm11 -DB 102,15,56,220,216 - pxor xmm14,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm12 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - pxor xmm8,xmm9 - movdqa XMMWORD PTR[64+rsp],xmm14 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[64+r11] - movdqa XMMWORD PTR[80+rsp],xmm8 - pshufd xmm9,xmm15,05fh - jmp $L$xts_enc_loop6 -ALIGN 32 -$L$xts_enc_loop6:: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-64))+rax*1+rcx] - add rax,32 - -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-80))+rax*1+rcx] - jnz $L$xts_enc_loop6 - - movdqa xmm8,XMMWORD PTR[r8] - movdqa xmm14,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,220,209 - paddq xmm15,xmm15 - psrad xmm14,31 -DB 102,15,56,220,217 - pand xmm14,xmm8 - movups xmm10,XMMWORD PTR[r11] -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 - pxor xmm15,xmm14 - movaps xmm11,xmm10 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-64))+rcx] - - movdqa xmm14,xmm9 -DB 102,15,56,220,208 - paddd xmm9,xmm9 - pxor xmm10,xmm15 -DB 102,15,56,220,216 - psrad xmm14,31 - paddq xmm15,xmm15 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - pand xmm14,xmm8 - movaps xmm12,xmm11 -DB 102,15,56,220,240 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR[((-48))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,220,209 - pxor xmm11,xmm15 - psrad xmm14,31 -DB 102,15,56,220,217 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movdqa XMMWORD PTR[48+rsp],xmm13 - pxor xmm15,xmm14 -DB 102,15,56,220,241 - movaps xmm13,xmm12 - movdqa xmm14,xmm9 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[((-32))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,220,208 - pxor xmm12,xmm15 - psrad xmm14,31 -DB 102,15,56,220,216 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 - pxor xmm15,xmm14 - movaps xmm14,xmm13 -DB 102,15,56,220,248 - - movdqa xmm0,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,220,209 - pxor xmm13,xmm15 - psrad xmm0,31 -DB 102,15,56,220,217 - paddq xmm15,xmm15 - pand xmm0,xmm8 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - pxor xmm15,xmm0 - movups xmm0,XMMWORD PTR[r11] -DB 102,15,56,220,241 -DB 102,15,56,220,249 - movups xmm1,XMMWORD PTR[16+r11] - - pxor xmm14,xmm15 -DB 102,15,56,221,84,36,0 - psrad xmm9,31 - paddq xmm15,xmm15 -DB 102,15,56,221,92,36,16 -DB 102,15,56,221,100,36,32 - pand xmm9,xmm8 - mov rax,r10 -DB 102,15,56,221,108,36,48 -DB 102,15,56,221,116,36,64 -DB 102,15,56,221,124,36,80 - pxor xmm15,xmm9 - - lea rsi,QWORD PTR[96+rsi] - movups XMMWORD PTR[(-96)+rsi],xmm2 - movups XMMWORD PTR[(-80)+rsi],xmm3 - movups XMMWORD PTR[(-64)+rsi],xmm4 - movups XMMWORD PTR[(-48)+rsi],xmm5 - movups XMMWORD PTR[(-32)+rsi],xmm6 - movups XMMWORD PTR[(-16)+rsi],xmm7 - sub rdx,16*6 - jnc $L$xts_enc_grandloop - - mov eax,16+96 - sub eax,r10d - mov rcx,r11 - shr eax,4 - -$L$xts_enc_short:: - - mov r10d,eax - pxor xmm10,xmm0 - add rdx,16*6 - jz $L$xts_enc_done - - pxor xmm11,xmm0 - cmp rdx,020h - jb $L$xts_enc_one - pxor xmm12,xmm0 - je $L$xts_enc_two - - pxor xmm13,xmm0 - cmp rdx,040h - jb $L$xts_enc_three - pxor xmm14,xmm0 - je $L$xts_enc_four - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm2,xmm10 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm3,xmm11 - movdqu xmm6,XMMWORD PTR[64+rdi] - lea rdi,QWORD PTR[80+rdi] - pxor xmm4,xmm12 - pxor xmm5,xmm13 - pxor xmm6,xmm14 - pxor xmm7,xmm7 - - call _aesni_encrypt6 - - xorps xmm2,xmm10 - movdqa xmm10,xmm15 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - xorps xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - xorps xmm6,xmm14 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_one:: - movups xmm2,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_9:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_9 -DB 102,15,56,221,209 - xorps xmm2,xmm10 - movdqa xmm10,xmm11 - movups XMMWORD PTR[rsi],xmm2 - lea rsi,QWORD PTR[16+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_two:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - - call _aesni_encrypt2 - - xorps xmm2,xmm10 - movdqa xmm10,xmm12 - xorps xmm3,xmm11 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - lea rsi,QWORD PTR[32+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_three:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - lea rdi,QWORD PTR[48+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - - call _aesni_encrypt3 - - xorps xmm2,xmm10 - movdqa xmm10,xmm13 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - lea rsi,QWORD PTR[48+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_four:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - xorps xmm2,xmm10 - movups xmm5,XMMWORD PTR[48+rdi] - lea rdi,QWORD PTR[64+rdi] - xorps xmm3,xmm11 - xorps xmm4,xmm12 - xorps xmm5,xmm13 - - call _aesni_encrypt4 - - pxor xmm2,xmm10 - movdqa xmm10,xmm14 - pxor xmm3,xmm11 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - lea rsi,QWORD PTR[64+rsi] - jmp $L$xts_enc_done - -ALIGN 16 -$L$xts_enc_done:: - and r9,15 - jz $L$xts_enc_ret - mov rdx,r9 - -$L$xts_enc_steal:: - movzx eax,BYTE PTR[rdi] - movzx ecx,BYTE PTR[((-16))+rsi] - lea rdi,QWORD PTR[1+rdi] - mov BYTE PTR[((-16))+rsi],al - mov BYTE PTR[rsi],cl - lea rsi,QWORD PTR[1+rsi] - sub rdx,1 - jnz $L$xts_enc_steal - - sub rsi,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[((-16))+rsi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_enc1_10:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_10 -DB 102,15,56,221,209 - xorps xmm2,xmm10 - movups XMMWORD PTR[(-16)+rsi],xmm2 - -$L$xts_enc_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$xts_enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_xts_encrypt:: -aesni_xts_encrypt ENDP -PUBLIC aesni_xts_decrypt - -ALIGN 16 -aesni_xts_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_xts_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,272 - and rsp,-16 - movaps XMMWORD PTR[(-168)+rax],xmm6 - movaps XMMWORD PTR[(-152)+rax],xmm7 - movaps XMMWORD PTR[(-136)+rax],xmm8 - movaps XMMWORD PTR[(-120)+rax],xmm9 - movaps XMMWORD PTR[(-104)+rax],xmm10 - movaps XMMWORD PTR[(-88)+rax],xmm11 - movaps XMMWORD PTR[(-72)+rax],xmm12 - movaps XMMWORD PTR[(-56)+rax],xmm13 - movaps XMMWORD PTR[(-40)+rax],xmm14 - movaps XMMWORD PTR[(-24)+rax],xmm15 -$L$xts_dec_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm2,XMMWORD PTR[r9] - mov eax,DWORD PTR[240+r8] - mov r10d,DWORD PTR[240+rcx] - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[16+r8] - lea r8,QWORD PTR[32+r8] - xorps xmm2,xmm0 -$L$oop_enc1_11:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[r8] - lea r8,QWORD PTR[16+r8] - jnz $L$oop_enc1_11 -DB 102,15,56,221,209 - xor eax,eax - test rdx,15 - setnz al - shl rax,4 - sub rdx,rax - - movups xmm0,XMMWORD PTR[rcx] - mov r11,rcx - mov eax,r10d - shl r10d,4 - mov r9,rdx - and rdx,-16 - - movups xmm1,XMMWORD PTR[16+r10*1+rcx] - - movdqa xmm8,XMMWORD PTR[$L$xts_magic] - movdqa xmm15,xmm2 - pshufd xmm9,xmm2,05fh - pxor xmm1,xmm0 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm10,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm10,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm11,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm11,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm12,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm12,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 - paddd xmm9,xmm9 - movdqa xmm13,xmm15 - psrad xmm14,31 - paddq xmm15,xmm15 - pand xmm14,xmm8 - pxor xmm13,xmm0 - pxor xmm15,xmm14 - movdqa xmm14,xmm15 - psrad xmm9,31 - paddq xmm15,xmm15 - pand xmm9,xmm8 - pxor xmm14,xmm0 - pxor xmm15,xmm9 - movaps XMMWORD PTR[96+rsp],xmm1 - - sub rdx,16*6 - jc $L$xts_dec_short - - mov eax,16+96 - lea rcx,QWORD PTR[32+r10*1+r11] - sub rax,r10 - movups xmm1,XMMWORD PTR[16+r11] - mov r10,rax - lea r8,QWORD PTR[$L$xts_magic] - jmp $L$xts_dec_grandloop - -ALIGN 32 -$L$xts_dec_grandloop:: - movdqu xmm2,XMMWORD PTR[rdi] - movdqa xmm8,xmm0 - movdqu xmm3,XMMWORD PTR[16+rdi] - pxor xmm2,xmm10 - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm3,xmm11 -DB 102,15,56,222,209 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm4,xmm12 -DB 102,15,56,222,217 - movdqu xmm6,XMMWORD PTR[64+rdi] - pxor xmm5,xmm13 -DB 102,15,56,222,225 - movdqu xmm7,XMMWORD PTR[80+rdi] - pxor xmm8,xmm15 - movdqa xmm9,XMMWORD PTR[96+rsp] - pxor xmm6,xmm14 -DB 102,15,56,222,233 - movups xmm0,XMMWORD PTR[32+r11] - lea rdi,QWORD PTR[96+rdi] - pxor xmm7,xmm8 - - pxor xmm10,xmm9 -DB 102,15,56,222,241 - pxor xmm11,xmm9 - movdqa XMMWORD PTR[rsp],xmm10 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[48+r11] - pxor xmm12,xmm9 - -DB 102,15,56,222,208 - pxor xmm13,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm11 -DB 102,15,56,222,216 - pxor xmm14,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm12 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - pxor xmm8,xmm9 - movdqa XMMWORD PTR[64+rsp],xmm14 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[64+r11] - movdqa XMMWORD PTR[80+rsp],xmm8 - pshufd xmm9,xmm15,05fh - jmp $L$xts_dec_loop6 -ALIGN 32 -$L$xts_dec_loop6:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-64))+rax*1+rcx] - add rax,32 - -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-80))+rax*1+rcx] - jnz $L$xts_dec_loop6 - - movdqa xmm8,XMMWORD PTR[r8] - movdqa xmm14,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,222,209 - paddq xmm15,xmm15 - psrad xmm14,31 -DB 102,15,56,222,217 - pand xmm14,xmm8 - movups xmm10,XMMWORD PTR[r11] -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 - pxor xmm15,xmm14 - movaps xmm11,xmm10 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-64))+rcx] - - movdqa xmm14,xmm9 -DB 102,15,56,222,208 - paddd xmm9,xmm9 - pxor xmm10,xmm15 -DB 102,15,56,222,216 - psrad xmm14,31 - paddq xmm15,xmm15 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - pand xmm14,xmm8 - movaps xmm12,xmm11 -DB 102,15,56,222,240 - pxor xmm15,xmm14 - movdqa xmm14,xmm9 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR[((-48))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,222,209 - pxor xmm11,xmm15 - psrad xmm14,31 -DB 102,15,56,222,217 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movdqa XMMWORD PTR[48+rsp],xmm13 - pxor xmm15,xmm14 -DB 102,15,56,222,241 - movaps xmm13,xmm12 - movdqa xmm14,xmm9 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[((-32))+rcx] - - paddd xmm9,xmm9 -DB 102,15,56,222,208 - pxor xmm12,xmm15 - psrad xmm14,31 -DB 102,15,56,222,216 - paddq xmm15,xmm15 - pand xmm14,xmm8 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 - pxor xmm15,xmm14 - movaps xmm14,xmm13 -DB 102,15,56,222,248 - - movdqa xmm0,xmm9 - paddd xmm9,xmm9 -DB 102,15,56,222,209 - pxor xmm13,xmm15 - psrad xmm0,31 -DB 102,15,56,222,217 - paddq xmm15,xmm15 - pand xmm0,xmm8 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - pxor xmm15,xmm0 - movups xmm0,XMMWORD PTR[r11] -DB 102,15,56,222,241 -DB 102,15,56,222,249 - movups xmm1,XMMWORD PTR[16+r11] - - pxor xmm14,xmm15 -DB 102,15,56,223,84,36,0 - psrad xmm9,31 - paddq xmm15,xmm15 -DB 102,15,56,223,92,36,16 -DB 102,15,56,223,100,36,32 - pand xmm9,xmm8 - mov rax,r10 -DB 102,15,56,223,108,36,48 -DB 102,15,56,223,116,36,64 -DB 102,15,56,223,124,36,80 - pxor xmm15,xmm9 - - lea rsi,QWORD PTR[96+rsi] - movups XMMWORD PTR[(-96)+rsi],xmm2 - movups XMMWORD PTR[(-80)+rsi],xmm3 - movups XMMWORD PTR[(-64)+rsi],xmm4 - movups XMMWORD PTR[(-48)+rsi],xmm5 - movups XMMWORD PTR[(-32)+rsi],xmm6 - movups XMMWORD PTR[(-16)+rsi],xmm7 - sub rdx,16*6 - jnc $L$xts_dec_grandloop - - mov eax,16+96 - sub eax,r10d - mov rcx,r11 - shr eax,4 - -$L$xts_dec_short:: - - mov r10d,eax - pxor xmm10,xmm0 - pxor xmm11,xmm0 - add rdx,16*6 - jz $L$xts_dec_done - - pxor xmm12,xmm0 - cmp rdx,020h - jb $L$xts_dec_one - pxor xmm13,xmm0 - je $L$xts_dec_two - - pxor xmm14,xmm0 - cmp rdx,040h - jb $L$xts_dec_three - je $L$xts_dec_four - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqu xmm4,XMMWORD PTR[32+rdi] - pxor xmm2,xmm10 - movdqu xmm5,XMMWORD PTR[48+rdi] - pxor xmm3,xmm11 - movdqu xmm6,XMMWORD PTR[64+rdi] - lea rdi,QWORD PTR[80+rdi] - pxor xmm4,xmm12 - pxor xmm5,xmm13 - pxor xmm6,xmm14 - - call _aesni_decrypt6 - - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - xorps xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - xorps xmm6,xmm14 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm14,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pcmpgtd xmm14,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - pshufd xmm11,xmm14,013h - and r9,15 - jz $L$xts_dec_ret - - movdqa xmm10,xmm15 - paddq xmm15,xmm15 - pand xmm11,xmm8 - pxor xmm11,xmm15 - jmp $L$xts_dec_done2 - -ALIGN 16 -$L$xts_dec_one:: - movups xmm2,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_12:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_12 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movdqa xmm10,xmm11 - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm11,xmm12 - lea rsi,QWORD PTR[16+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_two:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - - call _aesni_decrypt2 - - xorps xmm2,xmm10 - movdqa xmm10,xmm12 - xorps xmm3,xmm11 - movdqa xmm11,xmm13 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - lea rsi,QWORD PTR[32+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_three:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - lea rdi,QWORD PTR[48+rdi] - xorps xmm2,xmm10 - xorps xmm3,xmm11 - xorps xmm4,xmm12 - - call _aesni_decrypt3 - - xorps xmm2,xmm10 - movdqa xmm10,xmm13 - xorps xmm3,xmm11 - movdqa xmm11,xmm14 - xorps xmm4,xmm12 - movups XMMWORD PTR[rsi],xmm2 - movups XMMWORD PTR[16+rsi],xmm3 - movups XMMWORD PTR[32+rsi],xmm4 - lea rsi,QWORD PTR[48+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_four:: - movups xmm2,XMMWORD PTR[rdi] - movups xmm3,XMMWORD PTR[16+rdi] - movups xmm4,XMMWORD PTR[32+rdi] - xorps xmm2,xmm10 - movups xmm5,XMMWORD PTR[48+rdi] - lea rdi,QWORD PTR[64+rdi] - xorps xmm3,xmm11 - xorps xmm4,xmm12 - xorps xmm5,xmm13 - - call _aesni_decrypt4 - - pxor xmm2,xmm10 - movdqa xmm10,xmm14 - pxor xmm3,xmm11 - movdqa xmm11,xmm15 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[16+rsi],xmm3 - movdqu XMMWORD PTR[32+rsi],xmm4 - movdqu XMMWORD PTR[48+rsi],xmm5 - lea rsi,QWORD PTR[64+rsi] - jmp $L$xts_dec_done - -ALIGN 16 -$L$xts_dec_done:: - and r9,15 - jz $L$xts_dec_ret -$L$xts_dec_done2:: - mov rdx,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[rdi] - xorps xmm2,xmm11 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_13:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_13 -DB 102,15,56,223,209 - xorps xmm2,xmm11 - movups XMMWORD PTR[rsi],xmm2 - -$L$xts_dec_steal:: - movzx eax,BYTE PTR[16+rdi] - movzx ecx,BYTE PTR[rsi] - lea rdi,QWORD PTR[1+rdi] - mov BYTE PTR[rsi],al - mov BYTE PTR[16+rsi],cl - lea rsi,QWORD PTR[1+rsi] - sub rdx,1 - jnz $L$xts_dec_steal - - sub rsi,r9 - mov rcx,r11 - mov eax,r10d - - movups xmm2,XMMWORD PTR[rsi] - xorps xmm2,xmm10 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_14:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_14 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movups XMMWORD PTR[rsi],xmm2 - -$L$xts_dec_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movaps xmm6,XMMWORD PTR[((-160))+rbp] - movaps XMMWORD PTR[(-160)+rbp],xmm0 - movaps xmm7,XMMWORD PTR[((-144))+rbp] - movaps XMMWORD PTR[(-144)+rbp],xmm0 - movaps xmm8,XMMWORD PTR[((-128))+rbp] - movaps XMMWORD PTR[(-128)+rbp],xmm0 - movaps xmm9,XMMWORD PTR[((-112))+rbp] - movaps XMMWORD PTR[(-112)+rbp],xmm0 - movaps xmm10,XMMWORD PTR[((-96))+rbp] - movaps XMMWORD PTR[(-96)+rbp],xmm0 - movaps xmm11,XMMWORD PTR[((-80))+rbp] - movaps XMMWORD PTR[(-80)+rbp],xmm0 - movaps xmm12,XMMWORD PTR[((-64))+rbp] - movaps XMMWORD PTR[(-64)+rbp],xmm0 - movaps xmm13,XMMWORD PTR[((-48))+rbp] - movaps XMMWORD PTR[(-48)+rbp],xmm0 - movaps xmm14,XMMWORD PTR[((-32))+rbp] - movaps XMMWORD PTR[(-32)+rbp],xmm0 - movaps xmm15,XMMWORD PTR[((-16))+rbp] - movaps XMMWORD PTR[(-16)+rbp],xmm0 - movaps XMMWORD PTR[rsp],xmm0 - movaps XMMWORD PTR[16+rsp],xmm0 - movaps XMMWORD PTR[32+rsp],xmm0 - movaps XMMWORD PTR[48+rsp],xmm0 - movaps XMMWORD PTR[64+rsp],xmm0 - movaps XMMWORD PTR[80+rsp],xmm0 - movaps XMMWORD PTR[96+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$xts_dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_xts_decrypt:: -aesni_xts_decrypt ENDP -PUBLIC aesni_cbc_encrypt - -ALIGN 16 -aesni_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_aesni_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - test rdx,rdx - jz $L$cbc_ret - - mov r10d,DWORD PTR[240+rcx] - mov r11,rcx - test r9d,r9d - jz $L$cbc_decrypt - - movups xmm2,XMMWORD PTR[r8] - mov eax,r10d - cmp rdx,16 - jb $L$cbc_enc_tail - sub rdx,16 - jmp $L$cbc_enc_loop -ALIGN 16 -$L$cbc_enc_loop:: - movups xmm3,XMMWORD PTR[rdi] - lea rdi,QWORD PTR[16+rdi] - - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - xorps xmm3,xmm0 - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm3 -$L$oop_enc1_15:: -DB 102,15,56,220,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_enc1_15 -DB 102,15,56,221,209 - mov eax,r10d - mov rcx,r11 - movups XMMWORD PTR[rsi],xmm2 - lea rsi,QWORD PTR[16+rsi] - sub rdx,16 - jnc $L$cbc_enc_loop - add rdx,16 - jnz $L$cbc_enc_tail - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR[r8],xmm2 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - jmp $L$cbc_ret - -$L$cbc_enc_tail:: - mov rcx,rdx - xchg rsi,rdi - DD 09066A4F3h - mov ecx,16 - sub rcx,rdx - xor eax,eax - DD 09066AAF3h - lea rdi,QWORD PTR[((-16))+rdi] - mov eax,r10d - mov rsi,rdi - mov rcx,r11 - xor rdx,rdx - jmp $L$cbc_enc_loop - -ALIGN 16 -$L$cbc_decrypt:: - cmp rdx,16 - jne $L$cbc_decrypt_bulk - - - - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[r8] - movdqa xmm4,xmm2 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_16:: -DB 102,15,56,222,209 - dec r10d - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_16 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movdqu XMMWORD PTR[r8],xmm4 - xorps xmm2,xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$cbc_ret -ALIGN 16 -$L$cbc_decrypt_bulk:: - lea rax,QWORD PTR[rsp] - push rbp - sub rsp,176 - and rsp,-16 - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$cbc_decrypt_body:: - lea rbp,QWORD PTR[((-8))+rax] - movups xmm10,XMMWORD PTR[r8] - mov eax,r10d - cmp rdx,050h - jbe $L$cbc_dec_tail - - movups xmm0,XMMWORD PTR[rcx] - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqa xmm11,xmm2 - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqa xmm12,xmm3 - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqa xmm13,xmm4 - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqa xmm14,xmm5 - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqa xmm15,xmm6 - mov r9d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - cmp rdx,070h - jbe $L$cbc_dec_six_or_seven - - and r9d,71303168 - sub rdx,050h - cmp r9d,4194304 - je $L$cbc_dec_loop6_enter - sub rdx,020h - lea rcx,QWORD PTR[112+rcx] - jmp $L$cbc_dec_loop8_enter -ALIGN 16 -$L$cbc_dec_loop8:: - movups XMMWORD PTR[rsi],xmm9 - lea rsi,QWORD PTR[16+rsi] -$L$cbc_dec_loop8_enter:: - movdqu xmm8,XMMWORD PTR[96+rdi] - pxor xmm2,xmm0 - movdqu xmm9,XMMWORD PTR[112+rdi] - pxor xmm3,xmm0 - movups xmm1,XMMWORD PTR[((16-112))+rcx] - pxor xmm4,xmm0 - xor r11,r11 - cmp rdx,070h - pxor xmm5,xmm0 - pxor xmm6,xmm0 - pxor xmm7,xmm0 - pxor xmm8,xmm0 - -DB 102,15,56,222,209 - pxor xmm9,xmm0 - movups xmm0,XMMWORD PTR[((32-112))+rcx] -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 - setnc r11b - shl r11,7 -DB 102,68,15,56,222,201 - add r11,rdi - movups xmm1,XMMWORD PTR[((48-112))+rcx] -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((64-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((80-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((96-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((112-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((128-112))+rcx] - nop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((144-112))+rcx] - cmp eax,11 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((160-112))+rcx] - jb $L$cbc_dec_done -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((176-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((192-112))+rcx] - je $L$cbc_dec_done -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movups xmm1,XMMWORD PTR[((208-112))+rcx] - nop -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 -DB 102,68,15,56,222,192 -DB 102,68,15,56,222,200 - movups xmm0,XMMWORD PTR[((224-112))+rcx] - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_done:: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - pxor xmm10,xmm0 - pxor xmm11,xmm0 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - pxor xmm12,xmm0 - pxor xmm13,xmm0 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - pxor xmm14,xmm0 - pxor xmm15,xmm0 -DB 102,68,15,56,222,193 -DB 102,68,15,56,222,201 - movdqu xmm1,XMMWORD PTR[80+rdi] - -DB 102,65,15,56,223,210 - movdqu xmm10,XMMWORD PTR[96+rdi] - pxor xmm1,xmm0 -DB 102,65,15,56,223,219 - pxor xmm10,xmm0 - movdqu xmm0,XMMWORD PTR[112+rdi] -DB 102,65,15,56,223,228 - lea rdi,QWORD PTR[128+rdi] - movdqu xmm11,XMMWORD PTR[r11] -DB 102,65,15,56,223,237 -DB 102,65,15,56,223,246 - movdqu xmm12,XMMWORD PTR[16+r11] - movdqu xmm13,XMMWORD PTR[32+r11] -DB 102,65,15,56,223,255 -DB 102,68,15,56,223,193 - movdqu xmm14,XMMWORD PTR[48+r11] - movdqu xmm15,XMMWORD PTR[64+r11] -DB 102,69,15,56,223,202 - movdqa xmm10,xmm0 - movdqu xmm1,XMMWORD PTR[80+r11] - movups xmm0,XMMWORD PTR[((-112))+rcx] - - movups XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm11 - movups XMMWORD PTR[16+rsi],xmm3 - movdqa xmm3,xmm12 - movups XMMWORD PTR[32+rsi],xmm4 - movdqa xmm4,xmm13 - movups XMMWORD PTR[48+rsi],xmm5 - movdqa xmm5,xmm14 - movups XMMWORD PTR[64+rsi],xmm6 - movdqa xmm6,xmm15 - movups XMMWORD PTR[80+rsi],xmm7 - movdqa xmm7,xmm1 - movups XMMWORD PTR[96+rsi],xmm8 - lea rsi,QWORD PTR[112+rsi] - - sub rdx,080h - ja $L$cbc_dec_loop8 - - movaps xmm2,xmm9 - lea rcx,QWORD PTR[((-112))+rcx] - add rdx,070h - jle $L$cbc_dec_clear_tail_collected - movups XMMWORD PTR[rsi],xmm9 - lea rsi,QWORD PTR[16+rsi] - cmp rdx,050h - jbe $L$cbc_dec_tail - - movaps xmm2,xmm11 -$L$cbc_dec_six_or_seven:: - cmp rdx,060h - ja $L$cbc_dec_seven - - movaps xmm8,xmm7 - call _aesni_decrypt6 - pxor xmm2,xmm10 - movaps xmm10,xmm8 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - pxor xmm7,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - lea rsi,QWORD PTR[80+rsi] - movdqa xmm2,xmm7 - pxor xmm7,xmm7 - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_seven:: - movups xmm8,XMMWORD PTR[96+rdi] - xorps xmm9,xmm9 - call _aesni_decrypt8 - movups xmm9,XMMWORD PTR[80+rdi] - pxor xmm2,xmm10 - movups xmm10,XMMWORD PTR[96+rdi] - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - pxor xmm7,xmm15 - movdqu XMMWORD PTR[64+rsi],xmm6 - pxor xmm6,xmm6 - pxor xmm8,xmm9 - movdqu XMMWORD PTR[80+rsi],xmm7 - pxor xmm7,xmm7 - lea rsi,QWORD PTR[96+rsi] - movdqa xmm2,xmm8 - pxor xmm8,xmm8 - pxor xmm9,xmm9 - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_loop6:: - movups XMMWORD PTR[rsi],xmm7 - lea rsi,QWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[rdi] - movdqu xmm3,XMMWORD PTR[16+rdi] - movdqa xmm11,xmm2 - movdqu xmm4,XMMWORD PTR[32+rdi] - movdqa xmm12,xmm3 - movdqu xmm5,XMMWORD PTR[48+rdi] - movdqa xmm13,xmm4 - movdqu xmm6,XMMWORD PTR[64+rdi] - movdqa xmm14,xmm5 - movdqu xmm7,XMMWORD PTR[80+rdi] - movdqa xmm15,xmm6 -$L$cbc_dec_loop6_enter:: - lea rdi,QWORD PTR[96+rdi] - movdqa xmm8,xmm7 - - call _aesni_decrypt6 - - pxor xmm2,xmm10 - movdqa xmm10,xmm8 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm6,xmm14 - mov rcx,r11 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm7,xmm15 - mov eax,r10d - movdqu XMMWORD PTR[64+rsi],xmm6 - lea rsi,QWORD PTR[80+rsi] - sub rdx,060h - ja $L$cbc_dec_loop6 - - movdqa xmm2,xmm7 - add rdx,050h - jle $L$cbc_dec_clear_tail_collected - movups XMMWORD PTR[rsi],xmm7 - lea rsi,QWORD PTR[16+rsi] - -$L$cbc_dec_tail:: - movups xmm2,XMMWORD PTR[rdi] - sub rdx,010h - jbe $L$cbc_dec_one - - movups xmm3,XMMWORD PTR[16+rdi] - movaps xmm11,xmm2 - sub rdx,010h - jbe $L$cbc_dec_two - - movups xmm4,XMMWORD PTR[32+rdi] - movaps xmm12,xmm3 - sub rdx,010h - jbe $L$cbc_dec_three - - movups xmm5,XMMWORD PTR[48+rdi] - movaps xmm13,xmm4 - sub rdx,010h - jbe $L$cbc_dec_four - - movups xmm6,XMMWORD PTR[64+rdi] - movaps xmm14,xmm5 - movaps xmm15,xmm6 - xorps xmm7,xmm7 - call _aesni_decrypt6 - pxor xmm2,xmm10 - movaps xmm10,xmm15 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - pxor xmm6,xmm14 - movdqu XMMWORD PTR[48+rsi],xmm5 - pxor xmm5,xmm5 - lea rsi,QWORD PTR[64+rsi] - movdqa xmm2,xmm6 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - sub rdx,010h - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_one:: - movaps xmm11,xmm2 - movups xmm0,XMMWORD PTR[rcx] - movups xmm1,XMMWORD PTR[16+rcx] - lea rcx,QWORD PTR[32+rcx] - xorps xmm2,xmm0 -$L$oop_dec1_17:: -DB 102,15,56,222,209 - dec eax - movups xmm1,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - jnz $L$oop_dec1_17 -DB 102,15,56,223,209 - xorps xmm2,xmm10 - movaps xmm10,xmm11 - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_two:: - movaps xmm12,xmm3 - call _aesni_decrypt2 - pxor xmm2,xmm10 - movaps xmm10,xmm12 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - movdqa xmm2,xmm3 - pxor xmm3,xmm3 - lea rsi,QWORD PTR[16+rsi] - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_three:: - movaps xmm13,xmm4 - call _aesni_decrypt3 - pxor xmm2,xmm10 - movaps xmm10,xmm13 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - movdqa xmm2,xmm4 - pxor xmm4,xmm4 - lea rsi,QWORD PTR[32+rsi] - jmp $L$cbc_dec_tail_collected -ALIGN 16 -$L$cbc_dec_four:: - movaps xmm14,xmm5 - call _aesni_decrypt4 - pxor xmm2,xmm10 - movaps xmm10,xmm14 - pxor xmm3,xmm11 - movdqu XMMWORD PTR[rsi],xmm2 - pxor xmm4,xmm12 - movdqu XMMWORD PTR[16+rsi],xmm3 - pxor xmm3,xmm3 - pxor xmm5,xmm13 - movdqu XMMWORD PTR[32+rsi],xmm4 - pxor xmm4,xmm4 - movdqa xmm2,xmm5 - pxor xmm5,xmm5 - lea rsi,QWORD PTR[48+rsi] - jmp $L$cbc_dec_tail_collected - -ALIGN 16 -$L$cbc_dec_clear_tail_collected:: - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 -$L$cbc_dec_tail_collected:: - movups XMMWORD PTR[r8],xmm10 - and rdx,15 - jnz $L$cbc_dec_tail_partial - movups XMMWORD PTR[rsi],xmm2 - pxor xmm2,xmm2 - jmp $L$cbc_dec_ret -ALIGN 16 -$L$cbc_dec_tail_partial:: - movaps XMMWORD PTR[rsp],xmm2 - pxor xmm2,xmm2 - mov rcx,16 - mov rdi,rsi - sub rcx,rdx - lea rsi,QWORD PTR[rsp] - DD 09066A4F3h - movdqa XMMWORD PTR[rsp],xmm2 - -$L$cbc_dec_ret:: - xorps xmm0,xmm0 - pxor xmm1,xmm1 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps XMMWORD PTR[16+rsp],xmm0 - movaps xmm7,XMMWORD PTR[32+rsp] - movaps XMMWORD PTR[32+rsp],xmm0 - movaps xmm8,XMMWORD PTR[48+rsp] - movaps XMMWORD PTR[48+rsp],xmm0 - movaps xmm9,XMMWORD PTR[64+rsp] - movaps XMMWORD PTR[64+rsp],xmm0 - movaps xmm10,XMMWORD PTR[80+rsp] - movaps XMMWORD PTR[80+rsp],xmm0 - movaps xmm11,XMMWORD PTR[96+rsp] - movaps XMMWORD PTR[96+rsp],xmm0 - movaps xmm12,XMMWORD PTR[112+rsp] - movaps XMMWORD PTR[112+rsp],xmm0 - movaps xmm13,XMMWORD PTR[128+rsp] - movaps XMMWORD PTR[128+rsp],xmm0 - movaps xmm14,XMMWORD PTR[144+rsp] - movaps XMMWORD PTR[144+rsp],xmm0 - movaps xmm15,XMMWORD PTR[160+rsp] - movaps XMMWORD PTR[160+rsp],xmm0 - lea rsp,QWORD PTR[rbp] - pop rbp -$L$cbc_ret:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_aesni_cbc_encrypt:: -aesni_cbc_encrypt ENDP -PUBLIC aesni_set_decrypt_key - -ALIGN 16 -aesni_set_decrypt_key PROC PUBLIC -DB 048h,083h,0ECh,008h - call __aesni_set_encrypt_key - shl edx,4 - test eax,eax - jnz $L$dec_key_ret - lea rcx,QWORD PTR[16+rdx*1+r8] - - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[rcx] - movups XMMWORD PTR[rcx],xmm0 - movups XMMWORD PTR[r8],xmm1 - lea r8,QWORD PTR[16+r8] - lea rcx,QWORD PTR[((-16))+rcx] - -$L$dec_key_inverse:: - movups xmm0,XMMWORD PTR[r8] - movups xmm1,XMMWORD PTR[rcx] -DB 102,15,56,219,192 -DB 102,15,56,219,201 - lea r8,QWORD PTR[16+r8] - lea rcx,QWORD PTR[((-16))+rcx] - movups XMMWORD PTR[16+rcx],xmm0 - movups XMMWORD PTR[(-16)+r8],xmm1 - cmp rcx,r8 - ja $L$dec_key_inverse - - movups xmm0,XMMWORD PTR[r8] -DB 102,15,56,219,192 - pxor xmm1,xmm1 - movups XMMWORD PTR[rcx],xmm0 - pxor xmm0,xmm0 -$L$dec_key_ret:: - add rsp,8 - DB 0F3h,0C3h ;repret -$L$SEH_end_set_decrypt_key:: -aesni_set_decrypt_key ENDP -PUBLIC aesni_set_encrypt_key - -ALIGN 16 -aesni_set_encrypt_key PROC PUBLIC -__aesni_set_encrypt_key:: -DB 048h,083h,0ECh,008h - mov rax,-1 - test rcx,rcx - jz $L$enc_key_ret - test r8,r8 - jz $L$enc_key_ret - - mov r10d,268437504 - movups xmm0,XMMWORD PTR[rcx] - xorps xmm4,xmm4 - and r10d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - lea rax,QWORD PTR[16+r8] - cmp edx,256 - je $L$14rounds - cmp edx,192 - je $L$12rounds - cmp edx,128 - jne $L$bad_keybits - -$L$10rounds:: - mov edx,9 - cmp r10d,268435456 - je $L$10rounds_alt - - movups XMMWORD PTR[r8],xmm0 -DB 102,15,58,223,200,1 - call $L$key_expansion_128_cold -DB 102,15,58,223,200,2 - call $L$key_expansion_128 -DB 102,15,58,223,200,4 - call $L$key_expansion_128 -DB 102,15,58,223,200,8 - call $L$key_expansion_128 -DB 102,15,58,223,200,16 - call $L$key_expansion_128 -DB 102,15,58,223,200,32 - call $L$key_expansion_128 -DB 102,15,58,223,200,64 - call $L$key_expansion_128 -DB 102,15,58,223,200,128 - call $L$key_expansion_128 -DB 102,15,58,223,200,27 - call $L$key_expansion_128 -DB 102,15,58,223,200,54 - call $L$key_expansion_128 - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[80+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$10rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate] - mov r10d,8 - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - movdqa xmm2,xmm0 - movdqu XMMWORD PTR[r8],xmm0 - jmp $L$oop_key128 - -ALIGN 16 -$L$oop_key128:: -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - lea rax,QWORD PTR[16+rax] - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[(-16)+rax],xmm0 - movdqa xmm2,xmm0 - - dec r10d - jnz $L$oop_key128 - - movdqa xmm4,XMMWORD PTR[$L$key_rcon1b] - -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[rax],xmm0 - - movdqa xmm2,xmm0 -DB 102,15,56,0,197 -DB 102,15,56,221,196 - - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[16+rax],xmm0 - - mov DWORD PTR[96+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$12rounds:: - movq xmm2,QWORD PTR[16+rcx] - mov edx,11 - cmp r10d,268435456 - je $L$12rounds_alt - - movups XMMWORD PTR[r8],xmm0 -DB 102,15,58,223,202,1 - call $L$key_expansion_192a_cold -DB 102,15,58,223,202,2 - call $L$key_expansion_192b -DB 102,15,58,223,202,4 - call $L$key_expansion_192a -DB 102,15,58,223,202,8 - call $L$key_expansion_192b -DB 102,15,58,223,202,16 - call $L$key_expansion_192a -DB 102,15,58,223,202,32 - call $L$key_expansion_192b -DB 102,15,58,223,202,64 - call $L$key_expansion_192a -DB 102,15,58,223,202,128 - call $L$key_expansion_192b - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[48+rax],edx - xor rax,rax - jmp $L$enc_key_ret - -ALIGN 16 -$L$12rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate192] - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - mov r10d,8 - movdqu XMMWORD PTR[r8],xmm0 - jmp $L$oop_key192 - -ALIGN 16 -$L$oop_key192:: - movq QWORD PTR[rax],xmm2 - movdqa xmm1,xmm2 -DB 102,15,56,0,213 -DB 102,15,56,221,212 - pslld xmm4,1 - lea rax,QWORD PTR[24+rax] - - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - - pshufd xmm3,xmm0,0ffh - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - - pxor xmm0,xmm2 - pxor xmm2,xmm3 - movdqu XMMWORD PTR[(-16)+rax],xmm0 - - dec r10d - jnz $L$oop_key192 - - mov DWORD PTR[32+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$14rounds:: - movups xmm2,XMMWORD PTR[16+rcx] - mov edx,13 - lea rax,QWORD PTR[16+rax] - cmp r10d,268435456 - je $L$14rounds_alt - - movups XMMWORD PTR[r8],xmm0 - movups XMMWORD PTR[16+r8],xmm2 -DB 102,15,58,223,202,1 - call $L$key_expansion_256a_cold -DB 102,15,58,223,200,1 - call $L$key_expansion_256b -DB 102,15,58,223,202,2 - call $L$key_expansion_256a -DB 102,15,58,223,200,2 - call $L$key_expansion_256b -DB 102,15,58,223,202,4 - call $L$key_expansion_256a -DB 102,15,58,223,200,4 - call $L$key_expansion_256b -DB 102,15,58,223,202,8 - call $L$key_expansion_256a -DB 102,15,58,223,200,8 - call $L$key_expansion_256b -DB 102,15,58,223,202,16 - call $L$key_expansion_256a -DB 102,15,58,223,200,16 - call $L$key_expansion_256b -DB 102,15,58,223,202,32 - call $L$key_expansion_256a -DB 102,15,58,223,200,32 - call $L$key_expansion_256b -DB 102,15,58,223,202,64 - call $L$key_expansion_256a - movups XMMWORD PTR[rax],xmm0 - mov DWORD PTR[16+rax],edx - xor rax,rax - jmp $L$enc_key_ret - -ALIGN 16 -$L$14rounds_alt:: - movdqa xmm5,XMMWORD PTR[$L$key_rotate] - movdqa xmm4,XMMWORD PTR[$L$key_rcon1] - mov r10d,7 - movdqu XMMWORD PTR[r8],xmm0 - movdqa xmm1,xmm2 - movdqu XMMWORD PTR[16+r8],xmm2 - jmp $L$oop_key256 - -ALIGN 16 -$L$oop_key256:: -DB 102,15,56,0,213 -DB 102,15,56,221,212 - - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pslld xmm4,1 - - pxor xmm0,xmm2 - movdqu XMMWORD PTR[rax],xmm0 - - dec r10d - jz $L$done_key256 - - pshufd xmm2,xmm0,0ffh - pxor xmm3,xmm3 -DB 102,15,56,221,211 - - movdqa xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm1,xmm3 - - pxor xmm2,xmm1 - movdqu XMMWORD PTR[16+rax],xmm2 - lea rax,QWORD PTR[32+rax] - movdqa xmm1,xmm2 - - jmp $L$oop_key256 - -$L$done_key256:: - mov DWORD PTR[16+rax],edx - xor eax,eax - jmp $L$enc_key_ret - -ALIGN 16 -$L$bad_keybits:: - mov rax,-2 -$L$enc_key_ret:: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - add rsp,8 - DB 0F3h,0C3h ;repret -$L$SEH_end_set_encrypt_key:: - -ALIGN 16 -$L$key_expansion_128:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_128_cold:: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_192a:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_192a_cold:: - movaps xmm5,xmm2 -$L$key_expansion_192b_warm:: - shufps xmm4,xmm0,16 - movdqa xmm3,xmm2 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - pslldq xmm3,4 - xorps xmm0,xmm4 - pshufd xmm1,xmm1,85 - pxor xmm2,xmm3 - pxor xmm0,xmm1 - pshufd xmm3,xmm0,255 - pxor xmm2,xmm3 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_192b:: - movaps xmm3,xmm0 - shufps xmm5,xmm0,68 - movups XMMWORD PTR[rax],xmm5 - shufps xmm3,xmm2,78 - movups XMMWORD PTR[16+rax],xmm3 - lea rax,QWORD PTR[32+rax] - jmp $L$key_expansion_192b_warm - -ALIGN 16 -$L$key_expansion_256a:: - movups XMMWORD PTR[rax],xmm2 - lea rax,QWORD PTR[16+rax] -$L$key_expansion_256a_cold:: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$key_expansion_256b:: - movups XMMWORD PTR[rax],xmm0 - lea rax,QWORD PTR[16+rax] - - shufps xmm4,xmm2,16 - xorps xmm2,xmm4 - shufps xmm4,xmm2,140 - xorps xmm2,xmm4 - shufps xmm1,xmm1,170 - xorps xmm2,xmm1 - DB 0F3h,0C3h ;repret -aesni_set_encrypt_key ENDP - -ALIGN 64 -$L$bswap_mask:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -$L$increment32:: - DD 6,6,6,0 -$L$increment64:: - DD 1,0,0,0 -$L$xts_magic:: - DD 087h,0,1,0 -$L$increment1:: -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 -$L$key_rotate:: - DD 00c0f0e0dh,00c0f0e0dh,00c0f0e0dh,00c0f0e0dh -$L$key_rotate192:: - DD 004070605h,004070605h,004070605h,004070605h -$L$key_rcon1:: - DD 1,1,1,1 -$L$key_rcon1b:: - DD 01bh,01bh,01bh,01bh - -DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -ecb_ccm64_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - lea rax,QWORD PTR[88+rax] - - jmp $L$common_seh_tail -ecb_ccm64_se_handler ENDP - - -ALIGN 16 -ctr_xts_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[160+r8] - lea rsi,QWORD PTR[((-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - - jmp $L$common_rbp_tail -ctr_xts_se_handler ENDP - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_decrypt_bulk] - cmp rbx,r10 - jb $L$common_seh_tail - - lea r10,QWORD PTR[$L$cbc_decrypt_body] - cmp rbx,r10 - jb $L$restore_cbc_rax - - lea r10,QWORD PTR[$L$cbc_ret] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[16+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$common_rbp_tail:: - mov rax,QWORD PTR[160+r8] - mov rbp,QWORD PTR[rax] - lea rax,QWORD PTR[8+rax] - mov QWORD PTR[160+r8],rbp - jmp $L$common_seh_tail - -$L$restore_cbc_rax:: - mov rax,QWORD PTR[120+r8] - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_aesni_ecb_encrypt - DD imagerel $L$SEH_end_aesni_ecb_encrypt - DD imagerel $L$SEH_info_ecb - - DD imagerel $L$SEH_begin_aesni_ccm64_encrypt_blocks - DD imagerel $L$SEH_end_aesni_ccm64_encrypt_blocks - DD imagerel $L$SEH_info_ccm64_enc - - DD imagerel $L$SEH_begin_aesni_ccm64_decrypt_blocks - DD imagerel $L$SEH_end_aesni_ccm64_decrypt_blocks - DD imagerel $L$SEH_info_ccm64_dec - - DD imagerel $L$SEH_begin_aesni_ctr32_encrypt_blocks - DD imagerel $L$SEH_end_aesni_ctr32_encrypt_blocks - DD imagerel $L$SEH_info_ctr32 - - DD imagerel $L$SEH_begin_aesni_xts_encrypt - DD imagerel $L$SEH_end_aesni_xts_encrypt - DD imagerel $L$SEH_info_xts_enc - - DD imagerel $L$SEH_begin_aesni_xts_decrypt - DD imagerel $L$SEH_end_aesni_xts_decrypt - DD imagerel $L$SEH_info_xts_dec - DD imagerel $L$SEH_begin_aesni_cbc_encrypt - DD imagerel $L$SEH_end_aesni_cbc_encrypt - DD imagerel $L$SEH_info_cbc - - DD imagerel aesni_set_decrypt_key - DD imagerel $L$SEH_end_set_decrypt_key - DD imagerel $L$SEH_info_key - - DD imagerel aesni_set_encrypt_key - DD imagerel $L$SEH_end_set_encrypt_key - DD imagerel $L$SEH_info_key -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_ecb:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ecb_enc_body,imagerel $L$ecb_enc_ret -$L$SEH_info_ccm64_enc:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ccm64_enc_body,imagerel $L$ccm64_enc_ret -$L$SEH_info_ccm64_dec:: -DB 9,0,0,0 - DD imagerel ecb_ccm64_se_handler - DD imagerel $L$ccm64_dec_body,imagerel $L$ccm64_dec_ret -$L$SEH_info_ctr32:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$ctr32_body,imagerel $L$ctr32_epilogue -$L$SEH_info_xts_enc:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$xts_enc_body,imagerel $L$xts_enc_epilogue -$L$SEH_info_xts_dec:: -DB 9,0,0,0 - DD imagerel ctr_xts_se_handler - DD imagerel $L$xts_dec_body,imagerel $L$xts_dec_epilogue -$L$SEH_info_cbc:: -DB 9,0,0,0 - DD imagerel cbc_se_handler -$L$SEH_info_key:: -DB 001h,004h,001h,000h -DB 004h,002h,000h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/bsaes-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/bsaes-x86_64.asm deleted file mode 100644 index 3346a7e25b4657..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/bsaes-x86_64.asm +++ /dev/null @@ -1,2734 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN asm_AES_encrypt:NEAR -EXTERN asm_AES_decrypt:NEAR - - -ALIGN 64 -_bsaes_encrypt8 PROC PRIVATE - lea r11,QWORD PTR[$L$BS0] - - movdqa xmm8,XMMWORD PTR[rax] - lea rax,QWORD PTR[16+rax] - movdqa xmm7,XMMWORD PTR[80+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 -_bsaes_encrypt8_bitslice:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm3 - psrlq xmm3,1 - pxor xmm5,xmm6 - pxor xmm3,xmm4 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm6,xmm5 - psllq xmm5,1 - pxor xmm4,xmm3 - psllq xmm3,1 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm1,xmm2 - pxor xmm15,xmm0 - pand xmm1,xmm7 - pand xmm15,xmm7 - pxor xmm2,xmm1 - psllq xmm1,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm1,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm4 - psrlq xmm4,2 - movdqa xmm10,xmm3 - psrlq xmm3,2 - pxor xmm4,xmm6 - pxor xmm3,xmm5 - pand xmm4,xmm8 - pand xmm3,xmm8 - pxor xmm6,xmm4 - psllq xmm4,2 - pxor xmm5,xmm3 - psllq xmm3,2 - pxor xmm4,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm2 - pxor xmm15,xmm1 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm2,xmm0 - psllq xmm0,2 - pxor xmm1,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm2 - psrlq xmm2,4 - movdqa xmm10,xmm1 - psrlq xmm1,4 - pxor xmm2,xmm6 - pxor xmm1,xmm5 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm6,xmm2 - psllq xmm2,4 - pxor xmm5,xmm1 - psllq xmm1,4 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm4 - pxor xmm15,xmm3 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm4,xmm0 - psllq xmm0,4 - pxor xmm3,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - dec r10d - jmp $L$enc_sbox -ALIGN 16 -$L$enc_loop:: - pxor xmm15,XMMWORD PTR[rax] - pxor xmm0,XMMWORD PTR[16+rax] - pxor xmm1,XMMWORD PTR[32+rax] - pxor xmm2,XMMWORD PTR[48+rax] -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,XMMWORD PTR[64+rax] - pxor xmm4,XMMWORD PTR[80+rax] -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,XMMWORD PTR[96+rax] - pxor xmm6,XMMWORD PTR[112+rax] -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea rax,QWORD PTR[128+rax] -$L$enc_sbox:: - pxor xmm4,xmm5 - pxor xmm1,xmm0 - pxor xmm2,xmm15 - pxor xmm5,xmm1 - pxor xmm4,xmm15 - - pxor xmm5,xmm2 - pxor xmm2,xmm6 - pxor xmm6,xmm4 - pxor xmm2,xmm3 - pxor xmm3,xmm4 - pxor xmm2,xmm0 - - pxor xmm1,xmm6 - pxor xmm0,xmm4 - movdqa xmm10,xmm6 - movdqa xmm9,xmm0 - movdqa xmm8,xmm4 - movdqa xmm12,xmm1 - movdqa xmm11,xmm5 - - pxor xmm10,xmm3 - pxor xmm9,xmm1 - pxor xmm8,xmm2 - movdqa xmm13,xmm10 - pxor xmm12,xmm3 - movdqa xmm7,xmm9 - pxor xmm11,xmm15 - movdqa xmm14,xmm10 - - por xmm9,xmm8 - por xmm10,xmm11 - pxor xmm14,xmm7 - pand xmm13,xmm11 - pxor xmm11,xmm8 - pand xmm7,xmm8 - pand xmm14,xmm11 - movdqa xmm11,xmm2 - pxor xmm11,xmm15 - pand xmm12,xmm11 - pxor xmm10,xmm12 - pxor xmm9,xmm12 - movdqa xmm12,xmm6 - movdqa xmm11,xmm4 - pxor xmm12,xmm0 - pxor xmm11,xmm5 - movdqa xmm8,xmm12 - pand xmm12,xmm11 - por xmm8,xmm11 - pxor xmm7,xmm12 - pxor xmm10,xmm14 - pxor xmm9,xmm13 - pxor xmm8,xmm14 - movdqa xmm11,xmm1 - pxor xmm7,xmm13 - movdqa xmm12,xmm3 - pxor xmm8,xmm13 - movdqa xmm13,xmm0 - pand xmm11,xmm2 - movdqa xmm14,xmm6 - pand xmm12,xmm15 - pand xmm13,xmm4 - por xmm14,xmm5 - pxor xmm10,xmm11 - pxor xmm9,xmm12 - pxor xmm8,xmm13 - pxor xmm7,xmm14 - - - - - - movdqa xmm11,xmm10 - pand xmm10,xmm8 - pxor xmm11,xmm9 - - movdqa xmm13,xmm7 - movdqa xmm14,xmm11 - pxor xmm13,xmm10 - pand xmm14,xmm13 - - movdqa xmm12,xmm8 - pxor xmm14,xmm9 - pxor xmm12,xmm7 - - pxor xmm10,xmm9 - - pand xmm12,xmm10 - - movdqa xmm9,xmm13 - pxor xmm12,xmm7 - - pxor xmm9,xmm12 - pxor xmm8,xmm12 - - pand xmm9,xmm7 - - pxor xmm13,xmm9 - pxor xmm8,xmm9 - - pand xmm13,xmm14 - - pxor xmm13,xmm11 - movdqa xmm11,xmm5 - movdqa xmm7,xmm4 - movdqa xmm9,xmm14 - pxor xmm9,xmm13 - pand xmm9,xmm5 - pxor xmm5,xmm4 - pand xmm4,xmm14 - pand xmm5,xmm13 - pxor xmm5,xmm4 - pxor xmm4,xmm9 - pxor xmm11,xmm15 - pxor xmm7,xmm2 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm15 - pxor xmm11,xmm7 - pxor xmm15,xmm2 - pand xmm7,xmm14 - pand xmm2,xmm12 - pand xmm11,xmm13 - pand xmm15,xmm8 - pxor xmm7,xmm11 - pxor xmm15,xmm2 - pxor xmm11,xmm10 - pxor xmm2,xmm9 - pxor xmm5,xmm11 - pxor xmm15,xmm11 - pxor xmm4,xmm7 - pxor xmm2,xmm7 - - movdqa xmm11,xmm6 - movdqa xmm7,xmm0 - pxor xmm11,xmm3 - pxor xmm7,xmm1 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm3 - pxor xmm11,xmm7 - pxor xmm3,xmm1 - pand xmm7,xmm14 - pand xmm1,xmm12 - pand xmm11,xmm13 - pand xmm3,xmm8 - pxor xmm7,xmm11 - pxor xmm3,xmm1 - pxor xmm11,xmm10 - pxor xmm1,xmm9 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - pxor xmm10,xmm13 - pand xmm10,xmm6 - pxor xmm6,xmm0 - pand xmm0,xmm14 - pand xmm6,xmm13 - pxor xmm6,xmm0 - pxor xmm0,xmm10 - pxor xmm6,xmm11 - pxor xmm3,xmm11 - pxor xmm0,xmm7 - pxor xmm1,xmm7 - pxor xmm6,xmm15 - pxor xmm0,xmm5 - pxor xmm3,xmm6 - pxor xmm5,xmm15 - pxor xmm15,xmm0 - - pxor xmm0,xmm4 - pxor xmm4,xmm1 - pxor xmm1,xmm2 - pxor xmm2,xmm4 - pxor xmm3,xmm4 - - pxor xmm5,xmm2 - dec r10d - jl $L$enc_done - pshufd xmm7,xmm15,093h - pshufd xmm8,xmm0,093h - pxor xmm15,xmm7 - pshufd xmm9,xmm3,093h - pxor xmm0,xmm8 - pshufd xmm10,xmm5,093h - pxor xmm3,xmm9 - pshufd xmm11,xmm2,093h - pxor xmm5,xmm10 - pshufd xmm12,xmm6,093h - pxor xmm2,xmm11 - pshufd xmm13,xmm1,093h - pxor xmm6,xmm12 - pshufd xmm14,xmm4,093h - pxor xmm1,xmm13 - pxor xmm4,xmm14 - - pxor xmm8,xmm15 - pxor xmm7,xmm4 - pxor xmm8,xmm4 - pshufd xmm15,xmm15,04Eh - pxor xmm9,xmm0 - pshufd xmm0,xmm0,04Eh - pxor xmm12,xmm2 - pxor xmm15,xmm7 - pxor xmm13,xmm6 - pxor xmm0,xmm8 - pxor xmm11,xmm5 - pshufd xmm7,xmm2,04Eh - pxor xmm14,xmm1 - pshufd xmm8,xmm6,04Eh - pxor xmm10,xmm3 - pshufd xmm2,xmm5,04Eh - pxor xmm10,xmm4 - pshufd xmm6,xmm4,04Eh - pxor xmm11,xmm4 - pshufd xmm5,xmm1,04Eh - pxor xmm7,xmm11 - pshufd xmm1,xmm3,04Eh - pxor xmm8,xmm12 - pxor xmm2,xmm10 - pxor xmm6,xmm14 - pxor xmm5,xmm13 - movdqa xmm3,xmm7 - pxor xmm1,xmm9 - movdqa xmm4,xmm8 - movdqa xmm7,XMMWORD PTR[48+r11] - jnz $L$enc_loop - movdqa xmm7,XMMWORD PTR[64+r11] - jmp $L$enc_loop -ALIGN 16 -$L$enc_done:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm2 - psrlq xmm2,1 - pxor xmm1,xmm4 - pxor xmm2,xmm6 - pand xmm1,xmm7 - pand xmm2,xmm7 - pxor xmm4,xmm1 - psllq xmm1,1 - pxor xmm6,xmm2 - psllq xmm2,1 - pxor xmm1,xmm9 - pxor xmm2,xmm10 - movdqa xmm9,xmm3 - psrlq xmm3,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm3,xmm5 - pxor xmm15,xmm0 - pand xmm3,xmm7 - pand xmm15,xmm7 - pxor xmm5,xmm3 - psllq xmm3,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm3,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm6 - psrlq xmm6,2 - movdqa xmm10,xmm2 - psrlq xmm2,2 - pxor xmm6,xmm4 - pxor xmm2,xmm1 - pand xmm6,xmm8 - pand xmm2,xmm8 - pxor xmm4,xmm6 - psllq xmm6,2 - pxor xmm1,xmm2 - psllq xmm2,2 - pxor xmm6,xmm9 - pxor xmm2,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm5 - pxor xmm15,xmm3 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm5,xmm0 - psllq xmm0,2 - pxor xmm3,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm5 - psrlq xmm5,4 - movdqa xmm10,xmm3 - psrlq xmm3,4 - pxor xmm5,xmm4 - pxor xmm3,xmm1 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm4,xmm5 - psllq xmm5,4 - pxor xmm1,xmm3 - psllq xmm3,4 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm6 - pxor xmm15,xmm2 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm6,xmm0 - psllq xmm0,4 - pxor xmm2,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[rax] - pxor xmm3,xmm7 - pxor xmm5,xmm7 - pxor xmm2,xmm7 - pxor xmm6,xmm7 - pxor xmm1,xmm7 - pxor xmm4,xmm7 - pxor xmm15,xmm7 - pxor xmm0,xmm7 - DB 0F3h,0C3h ;repret -_bsaes_encrypt8 ENDP - - -ALIGN 64 -_bsaes_decrypt8 PROC PRIVATE - lea r11,QWORD PTR[$L$BS0] - - movdqa xmm8,XMMWORD PTR[rax] - lea rax,QWORD PTR[16+rax] - movdqa xmm7,XMMWORD PTR[((-48))+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm3 - psrlq xmm3,1 - pxor xmm5,xmm6 - pxor xmm3,xmm4 - pand xmm5,xmm7 - pand xmm3,xmm7 - pxor xmm6,xmm5 - psllq xmm5,1 - pxor xmm4,xmm3 - psllq xmm3,1 - pxor xmm5,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm1 - psrlq xmm1,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm1,xmm2 - pxor xmm15,xmm0 - pand xmm1,xmm7 - pand xmm15,xmm7 - pxor xmm2,xmm1 - psllq xmm1,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm1,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm4 - psrlq xmm4,2 - movdqa xmm10,xmm3 - psrlq xmm3,2 - pxor xmm4,xmm6 - pxor xmm3,xmm5 - pand xmm4,xmm8 - pand xmm3,xmm8 - pxor xmm6,xmm4 - psllq xmm4,2 - pxor xmm5,xmm3 - psllq xmm3,2 - pxor xmm4,xmm9 - pxor xmm3,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm2 - pxor xmm15,xmm1 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm2,xmm0 - psllq xmm0,2 - pxor xmm1,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm2 - psrlq xmm2,4 - movdqa xmm10,xmm1 - psrlq xmm1,4 - pxor xmm2,xmm6 - pxor xmm1,xmm5 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm6,xmm2 - psllq xmm2,4 - pxor xmm5,xmm1 - psllq xmm1,4 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm4 - pxor xmm15,xmm3 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm4,xmm0 - psllq xmm0,4 - pxor xmm3,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - dec r10d - jmp $L$dec_sbox -ALIGN 16 -$L$dec_loop:: - pxor xmm15,XMMWORD PTR[rax] - pxor xmm0,XMMWORD PTR[16+rax] - pxor xmm1,XMMWORD PTR[32+rax] - pxor xmm2,XMMWORD PTR[48+rax] -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,XMMWORD PTR[64+rax] - pxor xmm4,XMMWORD PTR[80+rax] -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,XMMWORD PTR[96+rax] - pxor xmm6,XMMWORD PTR[112+rax] -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea rax,QWORD PTR[128+rax] -$L$dec_sbox:: - pxor xmm2,xmm3 - - pxor xmm3,xmm6 - pxor xmm1,xmm6 - pxor xmm5,xmm3 - pxor xmm6,xmm5 - pxor xmm0,xmm6 - - pxor xmm15,xmm0 - pxor xmm1,xmm4 - pxor xmm2,xmm15 - pxor xmm4,xmm15 - pxor xmm0,xmm2 - movdqa xmm10,xmm2 - movdqa xmm9,xmm6 - movdqa xmm8,xmm0 - movdqa xmm12,xmm3 - movdqa xmm11,xmm4 - - pxor xmm10,xmm15 - pxor xmm9,xmm3 - pxor xmm8,xmm5 - movdqa xmm13,xmm10 - pxor xmm12,xmm15 - movdqa xmm7,xmm9 - pxor xmm11,xmm1 - movdqa xmm14,xmm10 - - por xmm9,xmm8 - por xmm10,xmm11 - pxor xmm14,xmm7 - pand xmm13,xmm11 - pxor xmm11,xmm8 - pand xmm7,xmm8 - pand xmm14,xmm11 - movdqa xmm11,xmm5 - pxor xmm11,xmm1 - pand xmm12,xmm11 - pxor xmm10,xmm12 - pxor xmm9,xmm12 - movdqa xmm12,xmm2 - movdqa xmm11,xmm0 - pxor xmm12,xmm6 - pxor xmm11,xmm4 - movdqa xmm8,xmm12 - pand xmm12,xmm11 - por xmm8,xmm11 - pxor xmm7,xmm12 - pxor xmm10,xmm14 - pxor xmm9,xmm13 - pxor xmm8,xmm14 - movdqa xmm11,xmm3 - pxor xmm7,xmm13 - movdqa xmm12,xmm15 - pxor xmm8,xmm13 - movdqa xmm13,xmm6 - pand xmm11,xmm5 - movdqa xmm14,xmm2 - pand xmm12,xmm1 - pand xmm13,xmm0 - por xmm14,xmm4 - pxor xmm10,xmm11 - pxor xmm9,xmm12 - pxor xmm8,xmm13 - pxor xmm7,xmm14 - - - - - - movdqa xmm11,xmm10 - pand xmm10,xmm8 - pxor xmm11,xmm9 - - movdqa xmm13,xmm7 - movdqa xmm14,xmm11 - pxor xmm13,xmm10 - pand xmm14,xmm13 - - movdqa xmm12,xmm8 - pxor xmm14,xmm9 - pxor xmm12,xmm7 - - pxor xmm10,xmm9 - - pand xmm12,xmm10 - - movdqa xmm9,xmm13 - pxor xmm12,xmm7 - - pxor xmm9,xmm12 - pxor xmm8,xmm12 - - pand xmm9,xmm7 - - pxor xmm13,xmm9 - pxor xmm8,xmm9 - - pand xmm13,xmm14 - - pxor xmm13,xmm11 - movdqa xmm11,xmm4 - movdqa xmm7,xmm0 - movdqa xmm9,xmm14 - pxor xmm9,xmm13 - pand xmm9,xmm4 - pxor xmm4,xmm0 - pand xmm0,xmm14 - pand xmm4,xmm13 - pxor xmm4,xmm0 - pxor xmm0,xmm9 - pxor xmm11,xmm1 - pxor xmm7,xmm5 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm1 - pxor xmm11,xmm7 - pxor xmm1,xmm5 - pand xmm7,xmm14 - pand xmm5,xmm12 - pand xmm11,xmm13 - pand xmm1,xmm8 - pxor xmm7,xmm11 - pxor xmm1,xmm5 - pxor xmm11,xmm10 - pxor xmm5,xmm9 - pxor xmm4,xmm11 - pxor xmm1,xmm11 - pxor xmm0,xmm7 - pxor xmm5,xmm7 - - movdqa xmm11,xmm2 - movdqa xmm7,xmm6 - pxor xmm11,xmm15 - pxor xmm7,xmm3 - movdqa xmm10,xmm14 - movdqa xmm9,xmm12 - pxor xmm10,xmm13 - pxor xmm9,xmm8 - pand xmm10,xmm11 - pand xmm9,xmm15 - pxor xmm11,xmm7 - pxor xmm15,xmm3 - pand xmm7,xmm14 - pand xmm3,xmm12 - pand xmm11,xmm13 - pand xmm15,xmm8 - pxor xmm7,xmm11 - pxor xmm15,xmm3 - pxor xmm11,xmm10 - pxor xmm3,xmm9 - pxor xmm14,xmm12 - pxor xmm13,xmm8 - movdqa xmm10,xmm14 - pxor xmm10,xmm13 - pand xmm10,xmm2 - pxor xmm2,xmm6 - pand xmm6,xmm14 - pand xmm2,xmm13 - pxor xmm2,xmm6 - pxor xmm6,xmm10 - pxor xmm2,xmm11 - pxor xmm15,xmm11 - pxor xmm6,xmm7 - pxor xmm3,xmm7 - pxor xmm0,xmm6 - pxor xmm5,xmm4 - - pxor xmm3,xmm0 - pxor xmm1,xmm6 - pxor xmm4,xmm6 - pxor xmm3,xmm1 - pxor xmm6,xmm15 - pxor xmm3,xmm4 - pxor xmm2,xmm5 - pxor xmm5,xmm0 - pxor xmm2,xmm3 - - pxor xmm3,xmm15 - pxor xmm6,xmm2 - dec r10d - jl $L$dec_done - - pshufd xmm7,xmm15,04Eh - pshufd xmm13,xmm2,04Eh - pxor xmm7,xmm15 - pshufd xmm14,xmm4,04Eh - pxor xmm13,xmm2 - pshufd xmm8,xmm0,04Eh - pxor xmm14,xmm4 - pshufd xmm9,xmm5,04Eh - pxor xmm8,xmm0 - pshufd xmm10,xmm3,04Eh - pxor xmm9,xmm5 - pxor xmm15,xmm13 - pxor xmm0,xmm13 - pshufd xmm11,xmm1,04Eh - pxor xmm10,xmm3 - pxor xmm5,xmm7 - pxor xmm3,xmm8 - pshufd xmm12,xmm6,04Eh - pxor xmm11,xmm1 - pxor xmm0,xmm14 - pxor xmm1,xmm9 - pxor xmm12,xmm6 - - pxor xmm5,xmm14 - pxor xmm3,xmm13 - pxor xmm1,xmm13 - pxor xmm6,xmm10 - pxor xmm2,xmm11 - pxor xmm1,xmm14 - pxor xmm6,xmm14 - pxor xmm4,xmm12 - pshufd xmm7,xmm15,093h - pshufd xmm8,xmm0,093h - pxor xmm15,xmm7 - pshufd xmm9,xmm5,093h - pxor xmm0,xmm8 - pshufd xmm10,xmm3,093h - pxor xmm5,xmm9 - pshufd xmm11,xmm1,093h - pxor xmm3,xmm10 - pshufd xmm12,xmm6,093h - pxor xmm1,xmm11 - pshufd xmm13,xmm2,093h - pxor xmm6,xmm12 - pshufd xmm14,xmm4,093h - pxor xmm2,xmm13 - pxor xmm4,xmm14 - - pxor xmm8,xmm15 - pxor xmm7,xmm4 - pxor xmm8,xmm4 - pshufd xmm15,xmm15,04Eh - pxor xmm9,xmm0 - pshufd xmm0,xmm0,04Eh - pxor xmm12,xmm1 - pxor xmm15,xmm7 - pxor xmm13,xmm6 - pxor xmm0,xmm8 - pxor xmm11,xmm3 - pshufd xmm7,xmm1,04Eh - pxor xmm14,xmm2 - pshufd xmm8,xmm6,04Eh - pxor xmm10,xmm5 - pshufd xmm1,xmm3,04Eh - pxor xmm10,xmm4 - pshufd xmm6,xmm4,04Eh - pxor xmm11,xmm4 - pshufd xmm3,xmm2,04Eh - pxor xmm7,xmm11 - pshufd xmm2,xmm5,04Eh - pxor xmm8,xmm12 - pxor xmm10,xmm1 - pxor xmm6,xmm14 - pxor xmm13,xmm3 - movdqa xmm3,xmm7 - pxor xmm2,xmm9 - movdqa xmm5,xmm13 - movdqa xmm4,xmm8 - movdqa xmm1,xmm2 - movdqa xmm2,xmm10 - movdqa xmm7,XMMWORD PTR[((-16))+r11] - jnz $L$dec_loop - movdqa xmm7,XMMWORD PTR[((-32))+r11] - jmp $L$dec_loop -ALIGN 16 -$L$dec_done:: - movdqa xmm7,XMMWORD PTR[r11] - movdqa xmm8,XMMWORD PTR[16+r11] - movdqa xmm9,xmm2 - psrlq xmm2,1 - movdqa xmm10,xmm1 - psrlq xmm1,1 - pxor xmm2,xmm4 - pxor xmm1,xmm6 - pand xmm2,xmm7 - pand xmm1,xmm7 - pxor xmm4,xmm2 - psllq xmm2,1 - pxor xmm6,xmm1 - psllq xmm1,1 - pxor xmm2,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm5 - psrlq xmm5,1 - movdqa xmm10,xmm15 - psrlq xmm15,1 - pxor xmm5,xmm3 - pxor xmm15,xmm0 - pand xmm5,xmm7 - pand xmm15,xmm7 - pxor xmm3,xmm5 - psllq xmm5,1 - pxor xmm0,xmm15 - psllq xmm15,1 - pxor xmm5,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[32+r11] - movdqa xmm9,xmm6 - psrlq xmm6,2 - movdqa xmm10,xmm1 - psrlq xmm1,2 - pxor xmm6,xmm4 - pxor xmm1,xmm2 - pand xmm6,xmm8 - pand xmm1,xmm8 - pxor xmm4,xmm6 - psllq xmm6,2 - pxor xmm2,xmm1 - psllq xmm1,2 - pxor xmm6,xmm9 - pxor xmm1,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,2 - movdqa xmm10,xmm15 - psrlq xmm15,2 - pxor xmm0,xmm3 - pxor xmm15,xmm5 - pand xmm0,xmm8 - pand xmm15,xmm8 - pxor xmm3,xmm0 - psllq xmm0,2 - pxor xmm5,xmm15 - psllq xmm15,2 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm9,xmm3 - psrlq xmm3,4 - movdqa xmm10,xmm5 - psrlq xmm5,4 - pxor xmm3,xmm4 - pxor xmm5,xmm2 - pand xmm3,xmm7 - pand xmm5,xmm7 - pxor xmm4,xmm3 - psllq xmm3,4 - pxor xmm2,xmm5 - psllq xmm5,4 - pxor xmm3,xmm9 - pxor xmm5,xmm10 - movdqa xmm9,xmm0 - psrlq xmm0,4 - movdqa xmm10,xmm15 - psrlq xmm15,4 - pxor xmm0,xmm6 - pxor xmm15,xmm1 - pand xmm0,xmm7 - pand xmm15,xmm7 - pxor xmm6,xmm0 - psllq xmm0,4 - pxor xmm1,xmm15 - psllq xmm15,4 - pxor xmm0,xmm9 - pxor xmm15,xmm10 - movdqa xmm7,XMMWORD PTR[rax] - pxor xmm5,xmm7 - pxor xmm3,xmm7 - pxor xmm1,xmm7 - pxor xmm6,xmm7 - pxor xmm2,xmm7 - pxor xmm4,xmm7 - pxor xmm15,xmm7 - pxor xmm0,xmm7 - DB 0F3h,0C3h ;repret -_bsaes_decrypt8 ENDP - -ALIGN 16 -_bsaes_key_convert PROC PRIVATE - lea r11,QWORD PTR[$L$masks] - movdqu xmm7,XMMWORD PTR[rcx] - lea rcx,QWORD PTR[16+rcx] - movdqa xmm0,XMMWORD PTR[r11] - movdqa xmm1,XMMWORD PTR[16+r11] - movdqa xmm2,XMMWORD PTR[32+r11] - movdqa xmm3,XMMWORD PTR[48+r11] - movdqa xmm4,XMMWORD PTR[64+r11] - pcmpeqd xmm5,xmm5 - - movdqu xmm6,XMMWORD PTR[rcx] - movdqa XMMWORD PTR[rax],xmm7 - lea rax,QWORD PTR[16+rax] - dec r10d - jmp $L$key_loop -ALIGN 16 -$L$key_loop:: -DB 102,15,56,0,244 - - movdqa xmm8,xmm0 - movdqa xmm9,xmm1 - - pand xmm8,xmm6 - pand xmm9,xmm6 - movdqa xmm10,xmm2 - pcmpeqb xmm8,xmm0 - psllq xmm0,4 - movdqa xmm11,xmm3 - pcmpeqb xmm9,xmm1 - psllq xmm1,4 - - pand xmm10,xmm6 - pand xmm11,xmm6 - movdqa xmm12,xmm0 - pcmpeqb xmm10,xmm2 - psllq xmm2,4 - movdqa xmm13,xmm1 - pcmpeqb xmm11,xmm3 - psllq xmm3,4 - - movdqa xmm14,xmm2 - movdqa xmm15,xmm3 - pxor xmm8,xmm5 - pxor xmm9,xmm5 - - pand xmm12,xmm6 - pand xmm13,xmm6 - movdqa XMMWORD PTR[rax],xmm8 - pcmpeqb xmm12,xmm0 - psrlq xmm0,4 - movdqa XMMWORD PTR[16+rax],xmm9 - pcmpeqb xmm13,xmm1 - psrlq xmm1,4 - lea rcx,QWORD PTR[16+rcx] - - pand xmm14,xmm6 - pand xmm15,xmm6 - movdqa XMMWORD PTR[32+rax],xmm10 - pcmpeqb xmm14,xmm2 - psrlq xmm2,4 - movdqa XMMWORD PTR[48+rax],xmm11 - pcmpeqb xmm15,xmm3 - psrlq xmm3,4 - movdqu xmm6,XMMWORD PTR[rcx] - - pxor xmm13,xmm5 - pxor xmm14,xmm5 - movdqa XMMWORD PTR[64+rax],xmm12 - movdqa XMMWORD PTR[80+rax],xmm13 - movdqa XMMWORD PTR[96+rax],xmm14 - movdqa XMMWORD PTR[112+rax],xmm15 - lea rax,QWORD PTR[128+rax] - dec r10d - jnz $L$key_loop - - movdqa xmm7,XMMWORD PTR[80+r11] - - DB 0F3h,0C3h ;repret -_bsaes_key_convert ENDP -EXTERN asm_AES_cbc_encrypt:NEAR -PUBLIC bsaes_cbc_encrypt - -ALIGN 16 -bsaes_cbc_encrypt PROC PUBLIC - mov r11d,DWORD PTR[48+rsp] - cmp r11d,0 - jne asm_AES_cbc_encrypt - cmp r8,128 - jb asm_AES_cbc_encrypt - - mov rax,rsp -$L$cbc_dec_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$cbc_dec_body:: - mov rbp,rsp - mov eax,DWORD PTR[240+r9] - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - mov rbx,r10 - shr r14,4 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,XMMWORD PTR[rsp] - movdqa XMMWORD PTR[rax],xmm6 - movdqa XMMWORD PTR[rsp],xmm7 - - movdqu xmm14,XMMWORD PTR[rbx] - sub r14,8 -$L$cbc_dec_loop:: - movdqu xmm15,XMMWORD PTR[r12] - movdqu xmm0,XMMWORD PTR[16+r12] - movdqu xmm1,XMMWORD PTR[32+r12] - movdqu xmm2,XMMWORD PTR[48+r12] - movdqu xmm3,XMMWORD PTR[64+r12] - movdqu xmm4,XMMWORD PTR[80+r12] - mov rax,rsp - movdqu xmm5,XMMWORD PTR[96+r12] - mov r10d,edx - movdqu xmm6,XMMWORD PTR[112+r12] - movdqa XMMWORD PTR[32+rbp],xmm14 - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm2,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - pxor xmm4,xmm13 - movdqu XMMWORD PTR[r13],xmm15 - lea r12,QWORD PTR[128+r12] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - sub r14,8 - jnc $L$cbc_dec_loop - - add r14,8 - jz $L$cbc_dec_done - - movdqu xmm15,XMMWORD PTR[r12] - mov rax,rsp - mov r10d,edx - cmp r14,2 - jb $L$cbc_dec_one - movdqu xmm0,XMMWORD PTR[16+r12] - je $L$cbc_dec_two - movdqu xmm1,XMMWORD PTR[32+r12] - cmp r14,4 - jb $L$cbc_dec_three - movdqu xmm2,XMMWORD PTR[48+r12] - je $L$cbc_dec_four - movdqu xmm3,XMMWORD PTR[64+r12] - cmp r14,6 - jb $L$cbc_dec_five - movdqu xmm4,XMMWORD PTR[80+r12] - je $L$cbc_dec_six - movdqu xmm5,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu xmm14,XMMWORD PTR[96+r12] - pxor xmm2,xmm12 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_six:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu xmm14,XMMWORD PTR[80+r12] - pxor xmm6,xmm11 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_five:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu xmm14,XMMWORD PTR[64+r12] - pxor xmm1,xmm10 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_four:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu xmm14,XMMWORD PTR[48+r12] - pxor xmm3,xmm9 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_three:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu xmm14,XMMWORD PTR[32+r12] - pxor xmm5,xmm8 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_two:: - movdqa XMMWORD PTR[32+rbp],xmm14 - call _bsaes_decrypt8 - pxor xmm15,XMMWORD PTR[32+rbp] - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm14,XMMWORD PTR[16+r12] - pxor xmm0,xmm7 - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - jmp $L$cbc_dec_done -ALIGN 16 -$L$cbc_dec_one:: - lea rcx,QWORD PTR[r12] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm14,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[r13],xmm14 - movdqa xmm14,xmm15 - -$L$cbc_dec_done:: - movdqu XMMWORD PTR[rbx],xmm14 - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$cbc_dec_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$cbc_dec_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$cbc_dec_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_cbc_encrypt ENDP - -PUBLIC bsaes_ctr32_encrypt_blocks - -ALIGN 16 -bsaes_ctr32_encrypt_blocks PROC PUBLIC - mov rax,rsp -$L$ctr_enc_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$ctr_enc_body:: - mov rbp,rsp - movdqu xmm0,XMMWORD PTR[r10] - mov eax,DWORD PTR[240+r9] - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - movdqa XMMWORD PTR[32+rbp],xmm0 - cmp r8,8 - jb $L$ctr_enc_short - - mov ebx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,ebx - call _bsaes_key_convert - pxor xmm7,xmm6 - movdqa XMMWORD PTR[rax],xmm7 - - movdqa xmm8,XMMWORD PTR[rsp] - lea r11,QWORD PTR[$L$ADD1] - movdqa xmm15,XMMWORD PTR[32+rbp] - movdqa xmm7,XMMWORD PTR[((-32))+r11] -DB 102,68,15,56,0,199 -DB 102,68,15,56,0,255 - movdqa XMMWORD PTR[rsp],xmm8 - jmp $L$ctr_enc_loop -ALIGN 16 -$L$ctr_enc_loop:: - movdqa XMMWORD PTR[32+rbp],xmm15 - movdqa xmm0,xmm15 - movdqa xmm1,xmm15 - paddd xmm0,XMMWORD PTR[r11] - movdqa xmm2,xmm15 - paddd xmm1,XMMWORD PTR[16+r11] - movdqa xmm3,xmm15 - paddd xmm2,XMMWORD PTR[32+r11] - movdqa xmm4,xmm15 - paddd xmm3,XMMWORD PTR[48+r11] - movdqa xmm5,xmm15 - paddd xmm4,XMMWORD PTR[64+r11] - movdqa xmm6,xmm15 - paddd xmm5,XMMWORD PTR[80+r11] - paddd xmm6,XMMWORD PTR[96+r11] - - - - movdqa xmm8,XMMWORD PTR[rsp] - lea rax,QWORD PTR[16+rsp] - movdqa xmm7,XMMWORD PTR[((-16))+r11] - pxor xmm15,xmm8 - pxor xmm0,xmm8 - pxor xmm1,xmm8 - pxor xmm2,xmm8 -DB 102,68,15,56,0,255 -DB 102,15,56,0,199 - pxor xmm3,xmm8 - pxor xmm4,xmm8 -DB 102,15,56,0,207 -DB 102,15,56,0,215 - pxor xmm5,xmm8 - pxor xmm6,xmm8 -DB 102,15,56,0,223 -DB 102,15,56,0,231 -DB 102,15,56,0,239 -DB 102,15,56,0,247 - lea r11,QWORD PTR[$L$BS0] - mov r10d,ebx - - call _bsaes_encrypt8_bitslice - - sub r14,8 - jc $L$ctr_enc_loop_done - - movdqu xmm7,XMMWORD PTR[r12] - movdqu xmm8,XMMWORD PTR[16+r12] - movdqu xmm9,XMMWORD PTR[32+r12] - movdqu xmm10,XMMWORD PTR[48+r12] - movdqu xmm11,XMMWORD PTR[64+r12] - movdqu xmm12,XMMWORD PTR[80+r12] - movdqu xmm13,XMMWORD PTR[96+r12] - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - pxor xmm7,xmm15 - movdqa xmm15,XMMWORD PTR[32+rbp] - pxor xmm0,xmm8 - movdqu XMMWORD PTR[r13],xmm7 - pxor xmm3,xmm9 - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,xmm10 - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,xmm11 - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,xmm12 - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,xmm13 - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,xmm14 - movdqu XMMWORD PTR[96+r13],xmm1 - lea r11,QWORD PTR[$L$ADD1] - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - paddd xmm15,XMMWORD PTR[112+r11] - jnz $L$ctr_enc_loop - - jmp $L$ctr_enc_done -ALIGN 16 -$L$ctr_enc_loop_done:: - add r14,8 - movdqu xmm7,XMMWORD PTR[r12] - pxor xmm15,xmm7 - movdqu XMMWORD PTR[r13],xmm15 - cmp r14,2 - jb $L$ctr_enc_done - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm0,xmm8 - movdqu XMMWORD PTR[16+r13],xmm0 - je $L$ctr_enc_done - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm3,xmm9 - movdqu XMMWORD PTR[32+r13],xmm3 - cmp r14,4 - jb $L$ctr_enc_done - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm5,xmm10 - movdqu XMMWORD PTR[48+r13],xmm5 - je $L$ctr_enc_done - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm11 - movdqu XMMWORD PTR[64+r13],xmm2 - cmp r14,6 - jb $L$ctr_enc_done - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm6,xmm12 - movdqu XMMWORD PTR[80+r13],xmm6 - je $L$ctr_enc_done - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm1,xmm13 - movdqu XMMWORD PTR[96+r13],xmm1 - jmp $L$ctr_enc_done - -ALIGN 16 -$L$ctr_enc_short:: - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[48+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - movdqu xmm0,XMMWORD PTR[r12] - lea r12,QWORD PTR[16+r12] - mov eax,DWORD PTR[44+rbp] - bswap eax - pxor xmm0,XMMWORD PTR[48+rbp] - inc eax - movdqu XMMWORD PTR[r13],xmm0 - bswap eax - lea r13,QWORD PTR[16+r13] - mov DWORD PTR[44+rsp],eax - dec r14 - jnz $L$ctr_enc_short - -$L$ctr_enc_done:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$ctr_enc_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$ctr_enc_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$ctr_enc_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_ctr32_encrypt_blocks ENDP -PUBLIC bsaes_xts_encrypt - -ALIGN 16 -bsaes_xts_encrypt PROC PUBLIC - mov rax,rsp -$L$xts_enc_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - mov r11,QWORD PTR[168+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$xts_enc_body:: - mov rbp,rsp - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - - lea rcx,QWORD PTR[r11] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r10] - call asm_AES_encrypt - - mov eax,DWORD PTR[240+r15] - mov rbx,r14 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,xmm6 - movdqa XMMWORD PTR[rax],xmm7 - - and r14,-16 - sub rsp,080h - movdqa xmm6,XMMWORD PTR[32+rbp] - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - - sub r14,080h - jc $L$xts_enc_short - jmp $L$xts_enc_loop - -ALIGN 16 -$L$xts_enc_loop:: - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - movdqa XMMWORD PTR[112+rsp],xmm6 - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - pxor xmm6,xmm14 - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,XMMWORD PTR[112+rsp] - movdqu XMMWORD PTR[96+r13],xmm1 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - - sub r14,080h - jnc $L$xts_enc_loop - -$L$xts_enc_short:: - add r14,080h - jz $L$xts_enc_done - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - cmp r14,16 - je $L$xts_enc_1 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - cmp r14,32 - je $L$xts_enc_2 - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - cmp r14,48 - je $L$xts_enc_3 - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - cmp r14,64 - je $L$xts_enc_4 - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - cmp r14,80 - je $L$xts_enc_5 - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - cmp r14,96 - je $L$xts_enc_6 - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqa XMMWORD PTR[112+rsp],xmm6 - lea r12,QWORD PTR[112+r12] - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - pxor xmm1,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm1 - lea r13,QWORD PTR[112+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_6:: - pxor xmm3,xmm11 - lea r12,QWORD PTR[96+r12] - pxor xmm4,xmm12 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm2 - movdqu XMMWORD PTR[80+r13],xmm6 - lea r13,QWORD PTR[96+r13] - - movdqa xmm6,XMMWORD PTR[96+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_5:: - pxor xmm2,xmm10 - lea r12,QWORD PTR[80+r12] - pxor xmm3,xmm11 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - pxor xmm2,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm5 - movdqu XMMWORD PTR[64+r13],xmm2 - lea r13,QWORD PTR[80+r13] - - movdqa xmm6,XMMWORD PTR[80+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_4:: - pxor xmm1,xmm9 - lea r12,QWORD PTR[64+r12] - pxor xmm2,xmm10 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm5,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm3 - movdqu XMMWORD PTR[48+r13],xmm5 - lea r13,QWORD PTR[64+r13] - - movdqa xmm6,XMMWORD PTR[64+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_3:: - pxor xmm0,xmm8 - lea r12,QWORD PTR[48+r12] - pxor xmm1,xmm9 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm3,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm3 - lea r13,QWORD PTR[48+r13] - - movdqa xmm6,XMMWORD PTR[48+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_2:: - pxor xmm15,xmm7 - lea r12,QWORD PTR[32+r12] - pxor xmm0,xmm8 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_encrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - lea r13,QWORD PTR[32+r13] - - movdqa xmm6,XMMWORD PTR[32+rsp] - jmp $L$xts_enc_done -ALIGN 16 -$L$xts_enc_1:: - pxor xmm7,xmm15 - lea r12,QWORD PTR[16+r12] - movdqa XMMWORD PTR[32+rbp],xmm7 - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - pxor xmm15,XMMWORD PTR[32+rbp] - - - - - - movdqu XMMWORD PTR[r13],xmm15 - lea r13,QWORD PTR[16+r13] - - movdqa xmm6,XMMWORD PTR[16+rsp] - -$L$xts_enc_done:: - and ebx,15 - jz $L$xts_enc_ret - mov rdx,r13 - -$L$xts_enc_steal:: - movzx eax,BYTE PTR[r12] - movzx ecx,BYTE PTR[((-16))+rdx] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[((-16))+rdx],al - mov BYTE PTR[rdx],cl - lea rdx,QWORD PTR[1+rdx] - sub ebx,1 - jnz $L$xts_enc_steal - - movdqu xmm15,XMMWORD PTR[((-16))+r13] - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm6 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_encrypt - pxor xmm6,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[(-16)+r13],xmm6 - -$L$xts_enc_ret:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$xts_enc_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$xts_enc_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$xts_enc_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_xts_encrypt ENDP - -PUBLIC bsaes_xts_decrypt - -ALIGN 16 -bsaes_xts_decrypt PROC PUBLIC - mov rax,rsp -$L$xts_dec_prologue:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - lea rsp,QWORD PTR[((-72))+rsp] - mov r10,QWORD PTR[160+rsp] - mov r11,QWORD PTR[168+rsp] - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[64+rsp],xmm6 - movaps XMMWORD PTR[80+rsp],xmm7 - movaps XMMWORD PTR[96+rsp],xmm8 - movaps XMMWORD PTR[112+rsp],xmm9 - movaps XMMWORD PTR[128+rsp],xmm10 - movaps XMMWORD PTR[144+rsp],xmm11 - movaps XMMWORD PTR[160+rsp],xmm12 - movaps XMMWORD PTR[176+rsp],xmm13 - movaps XMMWORD PTR[192+rsp],xmm14 - movaps XMMWORD PTR[208+rsp],xmm15 -$L$xts_dec_body:: - mov rbp,rsp - mov r12,rcx - mov r13,rdx - mov r14,r8 - mov r15,r9 - - lea rcx,QWORD PTR[r11] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r10] - call asm_AES_encrypt - - mov eax,DWORD PTR[240+r15] - mov rbx,r14 - - mov edx,eax - shl rax,7 - sub rax,96 - sub rsp,rax - - mov rax,rsp - mov rcx,r15 - mov r10d,edx - call _bsaes_key_convert - pxor xmm7,XMMWORD PTR[rsp] - movdqa XMMWORD PTR[rax],xmm6 - movdqa XMMWORD PTR[rsp],xmm7 - - xor eax,eax - and r14,-16 - test ebx,15 - setnz al - shl rax,4 - sub r14,rax - - sub rsp,080h - movdqa xmm6,XMMWORD PTR[32+rbp] - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - - sub r14,080h - jc $L$xts_dec_short - jmp $L$xts_dec_loop - -ALIGN 16 -$L$xts_dec_loop:: - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqu xmm14,XMMWORD PTR[112+r12] - lea r12,QWORD PTR[128+r12] - movdqa XMMWORD PTR[112+rsp],xmm6 - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - pxor xmm6,xmm14 - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - pxor xmm2,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - pxor xmm4,XMMWORD PTR[112+rsp] - movdqu XMMWORD PTR[96+r13],xmm2 - movdqu XMMWORD PTR[112+r13],xmm4 - lea r13,QWORD PTR[128+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - - sub r14,080h - jnc $L$xts_dec_loop - -$L$xts_dec_short:: - add r14,080h - jz $L$xts_dec_done - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm15,xmm6 - movdqa XMMWORD PTR[rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm0,xmm6 - movdqa XMMWORD PTR[16+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm7,XMMWORD PTR[r12] - cmp r14,16 - je $L$xts_dec_1 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm1,xmm6 - movdqa XMMWORD PTR[32+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm8,XMMWORD PTR[16+r12] - cmp r14,32 - je $L$xts_dec_2 - pxor xmm15,xmm7 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm2,xmm6 - movdqa XMMWORD PTR[48+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm9,XMMWORD PTR[32+r12] - cmp r14,48 - je $L$xts_dec_3 - pxor xmm0,xmm8 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm3,xmm6 - movdqa XMMWORD PTR[64+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm10,XMMWORD PTR[48+r12] - cmp r14,64 - je $L$xts_dec_4 - pxor xmm1,xmm9 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm4,xmm6 - movdqa XMMWORD PTR[80+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm11,XMMWORD PTR[64+r12] - cmp r14,80 - je $L$xts_dec_5 - pxor xmm2,xmm10 - pshufd xmm13,xmm14,013h - pxor xmm14,xmm14 - movdqa xmm5,xmm6 - movdqa XMMWORD PTR[96+rsp],xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - pcmpgtd xmm14,xmm6 - pxor xmm6,xmm13 - movdqu xmm12,XMMWORD PTR[80+r12] - cmp r14,96 - je $L$xts_dec_6 - pxor xmm3,xmm11 - movdqu xmm13,XMMWORD PTR[96+r12] - pxor xmm4,xmm12 - movdqa XMMWORD PTR[112+rsp],xmm6 - lea r12,QWORD PTR[112+r12] - pxor xmm5,xmm13 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - pxor xmm2,XMMWORD PTR[96+rsp] - movdqu XMMWORD PTR[80+r13],xmm6 - movdqu XMMWORD PTR[96+r13],xmm2 - lea r13,QWORD PTR[112+r13] - - movdqa xmm6,XMMWORD PTR[112+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_6:: - pxor xmm3,xmm11 - lea r12,QWORD PTR[96+r12] - pxor xmm4,xmm12 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - pxor xmm6,XMMWORD PTR[80+rsp] - movdqu XMMWORD PTR[64+r13],xmm1 - movdqu XMMWORD PTR[80+r13],xmm6 - lea r13,QWORD PTR[96+r13] - - movdqa xmm6,XMMWORD PTR[96+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_5:: - pxor xmm2,xmm10 - lea r12,QWORD PTR[80+r12] - pxor xmm3,xmm11 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - pxor xmm1,XMMWORD PTR[64+rsp] - movdqu XMMWORD PTR[48+r13],xmm3 - movdqu XMMWORD PTR[64+r13],xmm1 - lea r13,QWORD PTR[80+r13] - - movdqa xmm6,XMMWORD PTR[80+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_4:: - pxor xmm1,xmm9 - lea r12,QWORD PTR[64+r12] - pxor xmm2,xmm10 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - pxor xmm3,XMMWORD PTR[48+rsp] - movdqu XMMWORD PTR[32+r13],xmm5 - movdqu XMMWORD PTR[48+r13],xmm3 - lea r13,QWORD PTR[64+r13] - - movdqa xmm6,XMMWORD PTR[64+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_3:: - pxor xmm0,xmm8 - lea r12,QWORD PTR[48+r12] - pxor xmm1,xmm9 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - pxor xmm5,XMMWORD PTR[32+rsp] - movdqu XMMWORD PTR[16+r13],xmm0 - movdqu XMMWORD PTR[32+r13],xmm5 - lea r13,QWORD PTR[48+r13] - - movdqa xmm6,XMMWORD PTR[48+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_2:: - pxor xmm15,xmm7 - lea r12,QWORD PTR[32+r12] - pxor xmm0,xmm8 - lea rax,QWORD PTR[128+rsp] - mov r10d,edx - - call _bsaes_decrypt8 - - pxor xmm15,XMMWORD PTR[rsp] - pxor xmm0,XMMWORD PTR[16+rsp] - movdqu XMMWORD PTR[r13],xmm15 - movdqu XMMWORD PTR[16+r13],xmm0 - lea r13,QWORD PTR[32+r13] - - movdqa xmm6,XMMWORD PTR[32+rsp] - jmp $L$xts_dec_done -ALIGN 16 -$L$xts_dec_1:: - pxor xmm7,xmm15 - lea r12,QWORD PTR[16+r12] - movdqa XMMWORD PTR[32+rbp],xmm7 - lea rcx,QWORD PTR[32+rbp] - lea rdx,QWORD PTR[32+rbp] - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm15,XMMWORD PTR[32+rbp] - - - - - - movdqu XMMWORD PTR[r13],xmm15 - lea r13,QWORD PTR[16+r13] - - movdqa xmm6,XMMWORD PTR[16+rsp] - -$L$xts_dec_done:: - and ebx,15 - jz $L$xts_dec_ret - - pxor xmm14,xmm14 - movdqa xmm12,XMMWORD PTR[$L$xts_magic] - pcmpgtd xmm14,xmm6 - pshufd xmm13,xmm14,013h - movdqa xmm5,xmm6 - paddq xmm6,xmm6 - pand xmm13,xmm12 - movdqu xmm15,XMMWORD PTR[r12] - pxor xmm6,xmm13 - - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm6 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm6,XMMWORD PTR[32+rbp] - mov rdx,r13 - movdqu XMMWORD PTR[r13],xmm6 - -$L$xts_dec_steal:: - movzx eax,BYTE PTR[16+r12] - movzx ecx,BYTE PTR[rdx] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[rdx],al - mov BYTE PTR[16+rdx],cl - lea rdx,QWORD PTR[1+rdx] - sub ebx,1 - jnz $L$xts_dec_steal - - movdqu xmm15,XMMWORD PTR[r13] - lea rcx,QWORD PTR[32+rbp] - pxor xmm15,xmm5 - lea rdx,QWORD PTR[32+rbp] - movdqa XMMWORD PTR[32+rbp],xmm15 - lea r8,QWORD PTR[r15] - call asm_AES_decrypt - pxor xmm5,XMMWORD PTR[32+rbp] - movdqu XMMWORD PTR[r13],xmm5 - -$L$xts_dec_ret:: - lea rax,QWORD PTR[rsp] - pxor xmm0,xmm0 -$L$xts_dec_bzero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - lea rax,QWORD PTR[32+rax] - cmp rbp,rax - ja $L$xts_dec_bzero - - lea rsp,QWORD PTR[rbp] - movaps xmm6,XMMWORD PTR[64+rbp] - movaps xmm7,XMMWORD PTR[80+rbp] - movaps xmm8,XMMWORD PTR[96+rbp] - movaps xmm9,XMMWORD PTR[112+rbp] - movaps xmm10,XMMWORD PTR[128+rbp] - movaps xmm11,XMMWORD PTR[144+rbp] - movaps xmm12,XMMWORD PTR[160+rbp] - movaps xmm13,XMMWORD PTR[176+rbp] - movaps xmm14,XMMWORD PTR[192+rbp] - movaps xmm15,XMMWORD PTR[208+rbp] - lea rsp,QWORD PTR[160+rbp] - mov r15,QWORD PTR[72+rsp] - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbx,QWORD PTR[104+rsp] - mov rax,QWORD PTR[112+rsp] - lea rsp,QWORD PTR[120+rsp] - mov rbp,rax -$L$xts_dec_epilogue:: - DB 0F3h,0C3h ;repret -bsaes_xts_decrypt ENDP - -ALIGN 64 -_bsaes_const:: -$L$M0ISR:: - DQ 00a0e0206070b0f03h,00004080c0d010509h -$L$ISRM0:: - DQ 001040b0e0205080fh,00306090c00070a0dh -$L$ISR:: - DQ 00504070602010003h,00f0e0d0c080b0a09h -$L$BS0:: - DQ 05555555555555555h,05555555555555555h -$L$BS1:: - DQ 03333333333333333h,03333333333333333h -$L$BS2:: - DQ 00f0f0f0f0f0f0f0fh,00f0f0f0f0f0f0f0fh -$L$SR:: - DQ 00504070600030201h,00f0e0d0c0a09080bh -$L$SRM0:: - DQ 00304090e00050a0fh,001060b0c0207080dh -$L$M0SR:: - DQ 00a0e02060f03070bh,00004080c05090d01h -$L$SWPUP:: - DQ 00706050403020100h,00c0d0e0f0b0a0908h -$L$SWPUPM0SR:: - DQ 00a0d02060c03070bh,00004080f05090e01h -$L$ADD1:: - DQ 00000000000000000h,00000000100000000h -$L$ADD2:: - DQ 00000000000000000h,00000000200000000h -$L$ADD3:: - DQ 00000000000000000h,00000000300000000h -$L$ADD4:: - DQ 00000000000000000h,00000000400000000h -$L$ADD5:: - DQ 00000000000000000h,00000000500000000h -$L$ADD6:: - DQ 00000000000000000h,00000000600000000h -$L$ADD7:: - DQ 00000000000000000h,00000000700000000h -$L$ADD8:: - DQ 00000000000000000h,00000000800000000h -$L$xts_magic:: - DD 087h,0,1,0 -$L$masks:: - DQ 00101010101010101h,00101010101010101h - DQ 00202020202020202h,00202020202020202h - DQ 00404040404040404h,00404040404040404h - DQ 00808080808080808h,00808080808080808h -$L$M0:: - DQ 002060a0e03070b0fh,00004080c0105090dh -$L$63:: - DQ 06363636363636363h,06363636363636363h -DB 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102 -DB 111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44 -DB 32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44 -DB 32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32 -DB 65,110,100,121,32,80,111,108,121,97,107,111,118,0 -ALIGN 64 - -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[160+r8] - - lea rsi,QWORD PTR[64+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[160+rax] - - mov rbp,QWORD PTR[112+rax] - mov rbx,QWORD PTR[104+rax] - mov r12,QWORD PTR[96+rax] - mov r13,QWORD PTR[88+rax] - mov r14,QWORD PTR[80+rax] - mov r15,QWORD PTR[72+rax] - lea rax,QWORD PTR[120+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov QWORD PTR[152+r8],rax - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$cbc_dec_prologue - DD imagerel $L$cbc_dec_epilogue - DD imagerel $L$cbc_dec_info - - DD imagerel $L$ctr_enc_prologue - DD imagerel $L$ctr_enc_epilogue - DD imagerel $L$ctr_enc_info - - DD imagerel $L$xts_enc_prologue - DD imagerel $L$xts_enc_epilogue - DD imagerel $L$xts_enc_info - - DD imagerel $L$xts_dec_prologue - DD imagerel $L$xts_dec_epilogue - DD imagerel $L$xts_dec_info - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$cbc_dec_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$cbc_dec_body,imagerel $L$cbc_dec_epilogue -$L$ctr_enc_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$ctr_enc_body,imagerel $L$ctr_enc_epilogue -$L$xts_enc_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$xts_enc_body,imagerel $L$xts_enc_epilogue -$L$xts_dec_info:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$xts_dec_body,imagerel $L$xts_dec_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/aes/vpaes-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/aes/vpaes-x86_64.asm deleted file mode 100644 index 292f64d58debb1..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/aes/vpaes-x86_64.asm +++ /dev/null @@ -1,1143 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_encrypt_core PROC PRIVATE - mov r9,rdx - mov r11,16 - mov eax,DWORD PTR[240+rdx] - movdqa xmm1,xmm9 - movdqa xmm2,XMMWORD PTR[$L$k_ipt] - pandn xmm1,xmm0 - movdqu xmm5,XMMWORD PTR[r9] - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[(($L$k_ipt+16))] -DB 102,15,56,0,193 - pxor xmm2,xmm5 - add r9,16 - pxor xmm0,xmm2 - lea r10,QWORD PTR[$L$k_mc_backward] - jmp $L$enc_entry - -ALIGN 16 -$L$enc_loop:: - - movdqa xmm4,xmm13 - movdqa xmm0,xmm12 -DB 102,15,56,0,226 -DB 102,15,56,0,195 - pxor xmm4,xmm5 - movdqa xmm5,xmm15 - pxor xmm0,xmm4 - movdqa xmm1,XMMWORD PTR[((-64))+r10*1+r11] -DB 102,15,56,0,234 - movdqa xmm4,XMMWORD PTR[r10*1+r11] - movdqa xmm2,xmm14 -DB 102,15,56,0,211 - movdqa xmm3,xmm0 - pxor xmm2,xmm5 -DB 102,15,56,0,193 - add r9,16 - pxor xmm0,xmm2 -DB 102,15,56,0,220 - add r11,16 - pxor xmm3,xmm0 -DB 102,15,56,0,193 - and r11,030h - sub rax,1 - pxor xmm0,xmm3 - -$L$enc_entry:: - - movdqa xmm1,xmm9 - movdqa xmm5,xmm11 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,232 - movdqa xmm3,xmm10 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm10 - pxor xmm3,xmm5 -DB 102,15,56,0,224 - movdqa xmm2,xmm10 - pxor xmm4,xmm5 -DB 102,15,56,0,211 - movdqa xmm3,xmm10 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm5,XMMWORD PTR[r9] - pxor xmm3,xmm1 - jnz $L$enc_loop - - - movdqa xmm4,XMMWORD PTR[((-96))+r10] - movdqa xmm0,XMMWORD PTR[((-80))+r10] -DB 102,15,56,0,226 - pxor xmm4,xmm5 -DB 102,15,56,0,195 - movdqa xmm1,XMMWORD PTR[64+r10*1+r11] - pxor xmm0,xmm4 -DB 102,15,56,0,193 - DB 0F3h,0C3h ;repret -_vpaes_encrypt_core ENDP - - - - - - - -ALIGN 16 -_vpaes_decrypt_core PROC PRIVATE - mov r9,rdx - mov eax,DWORD PTR[240+rdx] - movdqa xmm1,xmm9 - movdqa xmm2,XMMWORD PTR[$L$k_dipt] - pandn xmm1,xmm0 - mov r11,rax - psrld xmm1,4 - movdqu xmm5,XMMWORD PTR[r9] - shl r11,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[(($L$k_dipt+16))] - xor r11,030h - lea r10,QWORD PTR[$L$k_dsbd] -DB 102,15,56,0,193 - and r11,030h - pxor xmm2,xmm5 - movdqa xmm5,XMMWORD PTR[(($L$k_mc_forward+48))] - pxor xmm0,xmm2 - add r9,16 - add r11,r10 - jmp $L$dec_entry - -ALIGN 16 -$L$dec_loop:: - - - - movdqa xmm4,XMMWORD PTR[((-32))+r10] - movdqa xmm1,XMMWORD PTR[((-16))+r10] -DB 102,15,56,0,226 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[16+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[32+r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[48+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR[64+r10] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR[80+r10] - -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - add r9,16 -DB 102,15,58,15,237,12 - pxor xmm0,xmm1 - sub rax,1 - -$L$dec_entry:: - - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - movdqa xmm2,xmm11 - psrld xmm1,4 - pand xmm0,xmm9 -DB 102,15,56,0,208 - movdqa xmm3,xmm10 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm10 - pxor xmm3,xmm2 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm10 -DB 102,15,56,0,211 - movdqa xmm3,xmm10 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm0,XMMWORD PTR[r9] - pxor xmm3,xmm1 - jnz $L$dec_loop - - - movdqa xmm4,XMMWORD PTR[96+r10] -DB 102,15,56,0,226 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR[112+r10] - movdqa xmm2,XMMWORD PTR[((-352))+r11] -DB 102,15,56,0,195 - pxor xmm0,xmm4 -DB 102,15,56,0,194 - DB 0F3h,0C3h ;repret -_vpaes_decrypt_core ENDP - - - - - - - -ALIGN 16 -_vpaes_schedule_core PROC PRIVATE - - - - - - call _vpaes_preheat - movdqa xmm8,XMMWORD PTR[$L$k_rcon] - movdqu xmm0,XMMWORD PTR[rdi] - - - movdqa xmm3,xmm0 - lea r11,QWORD PTR[$L$k_ipt] - call _vpaes_schedule_transform - movdqa xmm7,xmm0 - - lea r10,QWORD PTR[$L$k_sr] - test rcx,rcx - jnz $L$schedule_am_decrypting - - - movdqu XMMWORD PTR[rdx],xmm0 - jmp $L$schedule_go - -$L$schedule_am_decrypting:: - - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,217 - movdqu XMMWORD PTR[rdx],xmm3 - xor r8,030h - -$L$schedule_go:: - cmp esi,192 - ja $L$schedule_256 - je $L$schedule_192 - - - - - - - - - - -$L$schedule_128:: - mov esi,10 - -$L$oop_schedule_128:: - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - jmp $L$oop_schedule_128 - - - - - - - - - - - - - - - - -ALIGN 16 -$L$schedule_192:: - movdqu xmm0,XMMWORD PTR[8+rdi] - call _vpaes_schedule_transform - movdqa xmm6,xmm0 - pxor xmm4,xmm4 - movhlps xmm6,xmm4 - mov esi,4 - -$L$oop_schedule_192:: - call _vpaes_schedule_round -DB 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp $L$oop_schedule_192 - - - - - - - - - - - -ALIGN 16 -$L$schedule_256:: - movdqu xmm0,XMMWORD PTR[16+rdi] - call _vpaes_schedule_transform - mov esi,7 - -$L$oop_schedule_256:: - call _vpaes_schedule_mangle - movdqa xmm6,xmm0 - - - call _vpaes_schedule_round - dec rsi - jz $L$schedule_mangle_last - call _vpaes_schedule_mangle - - - pshufd xmm0,xmm0,0FFh - movdqa xmm5,xmm7 - movdqa xmm7,xmm6 - call _vpaes_schedule_low_round - movdqa xmm7,xmm5 - - jmp $L$oop_schedule_256 - - - - - - - - - - - - -ALIGN 16 -$L$schedule_mangle_last:: - - lea r11,QWORD PTR[$L$k_deskew] - test rcx,rcx - jnz $L$schedule_mangle_last_dec - - - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,193 - lea r11,QWORD PTR[$L$k_opt] - add rdx,32 - -$L$schedule_mangle_last_dec:: - add rdx,-16 - pxor xmm0,XMMWORD PTR[$L$k_s63] - call _vpaes_schedule_transform - movdqu XMMWORD PTR[rdx],xmm0 - - - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - DB 0F3h,0C3h ;repret -_vpaes_schedule_core ENDP - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_192_smear PROC PRIVATE - pshufd xmm1,xmm6,080h - pshufd xmm0,xmm7,0FEh - pxor xmm6,xmm1 - pxor xmm1,xmm1 - pxor xmm6,xmm0 - movdqa xmm0,xmm6 - movhlps xmm6,xmm1 - DB 0F3h,0C3h ;repret -_vpaes_schedule_192_smear ENDP - - - - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_round PROC PRIVATE - - pxor xmm1,xmm1 -DB 102,65,15,58,15,200,15 -DB 102,69,15,58,15,192,15 - pxor xmm7,xmm1 - - - pshufd xmm0,xmm0,0FFh -DB 102,15,58,15,192,1 - - - - -_vpaes_schedule_low_round:: - - movdqa xmm1,xmm7 - pslldq xmm7,4 - pxor xmm7,xmm1 - movdqa xmm1,xmm7 - pslldq xmm7,8 - pxor xmm7,xmm1 - pxor xmm7,XMMWORD PTR[$L$k_s63] - - - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 - movdqa xmm2,xmm11 -DB 102,15,56,0,208 - pxor xmm0,xmm1 - movdqa xmm3,xmm10 -DB 102,15,56,0,217 - pxor xmm3,xmm2 - movdqa xmm4,xmm10 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm10 -DB 102,15,56,0,211 - pxor xmm2,xmm0 - movdqa xmm3,xmm10 -DB 102,15,56,0,220 - pxor xmm3,xmm1 - movdqa xmm4,xmm13 -DB 102,15,56,0,226 - movdqa xmm0,xmm12 -DB 102,15,56,0,195 - pxor xmm0,xmm4 - - - pxor xmm0,xmm7 - movdqa xmm7,xmm0 - DB 0F3h,0C3h ;repret -_vpaes_schedule_round ENDP - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_transform PROC PRIVATE - movdqa xmm1,xmm9 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm9 - movdqa xmm2,XMMWORD PTR[r11] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR[16+r11] -DB 102,15,56,0,193 - pxor xmm0,xmm2 - DB 0F3h,0C3h ;repret -_vpaes_schedule_transform ENDP - - - - - - - - - - - - - - - - - - - - - - - - - -ALIGN 16 -_vpaes_schedule_mangle PROC PRIVATE - movdqa xmm4,xmm0 - movdqa xmm5,XMMWORD PTR[$L$k_mc_forward] - test rcx,rcx - jnz $L$schedule_mangle_dec - - - add rdx,16 - pxor xmm4,XMMWORD PTR[$L$k_s63] -DB 102,15,56,0,229 - movdqa xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 - - jmp $L$schedule_mangle_both -ALIGN 16 -$L$schedule_mangle_dec:: - - lea r11,QWORD PTR[$L$k_dksd] - movdqa xmm1,xmm9 - pandn xmm1,xmm4 - psrld xmm1,4 - pand xmm4,xmm9 - - movdqa xmm2,XMMWORD PTR[r11] -DB 102,15,56,0,212 - movdqa xmm3,XMMWORD PTR[16+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[32+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[48+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[64+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[80+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - - movdqa xmm2,XMMWORD PTR[96+r11] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR[112+r11] -DB 102,15,56,0,217 - pxor xmm3,xmm2 - - add rdx,-16 - -$L$schedule_mangle_both:: - movdqa xmm1,XMMWORD PTR[r10*1+r8] -DB 102,15,56,0,217 - add r8,-16 - and r8,030h - movdqu XMMWORD PTR[rdx],xmm3 - DB 0F3h,0C3h ;repret -_vpaes_schedule_mangle ENDP - - - - -PUBLIC vpaes_set_encrypt_key - -ALIGN 16 -vpaes_set_encrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_set_encrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$enc_key_body:: - mov eax,esi - shr eax,5 - add eax,5 - mov DWORD PTR[240+rdx],eax - - mov ecx,0 - mov r8d,030h - call _vpaes_schedule_core - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$enc_key_epilogue:: - xor eax,eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_set_encrypt_key:: -vpaes_set_encrypt_key ENDP - -PUBLIC vpaes_set_decrypt_key - -ALIGN 16 -vpaes_set_decrypt_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_set_decrypt_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$dec_key_body:: - mov eax,esi - shr eax,5 - add eax,5 - mov DWORD PTR[240+rdx],eax - shl eax,4 - lea rdx,QWORD PTR[16+rax*1+rdx] - - mov ecx,1 - mov r8d,esi - shr r8d,1 - and r8d,32 - xor r8d,32 - call _vpaes_schedule_core - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$dec_key_epilogue:: - xor eax,eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_set_decrypt_key:: -vpaes_set_decrypt_key ENDP - -PUBLIC vpaes_encrypt - -ALIGN 16 -vpaes_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$enc_body:: - movdqu xmm0,XMMWORD PTR[rdi] - call _vpaes_preheat - call _vpaes_encrypt_core - movdqu XMMWORD PTR[rsi],xmm0 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_encrypt:: -vpaes_encrypt ENDP - -PUBLIC vpaes_decrypt - -ALIGN 16 -vpaes_decrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_decrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$dec_body:: - movdqu xmm0,XMMWORD PTR[rdi] - call _vpaes_preheat - call _vpaes_decrypt_core - movdqu XMMWORD PTR[rsi],xmm0 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_decrypt:: -vpaes_decrypt ENDP -PUBLIC vpaes_cbc_encrypt - -ALIGN 16 -vpaes_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_vpaes_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - xchg rdx,rcx - sub rcx,16 - jc $L$cbc_abort - lea rsp,QWORD PTR[((-184))+rsp] - movaps XMMWORD PTR[16+rsp],xmm6 - movaps XMMWORD PTR[32+rsp],xmm7 - movaps XMMWORD PTR[48+rsp],xmm8 - movaps XMMWORD PTR[64+rsp],xmm9 - movaps XMMWORD PTR[80+rsp],xmm10 - movaps XMMWORD PTR[96+rsp],xmm11 - movaps XMMWORD PTR[112+rsp],xmm12 - movaps XMMWORD PTR[128+rsp],xmm13 - movaps XMMWORD PTR[144+rsp],xmm14 - movaps XMMWORD PTR[160+rsp],xmm15 -$L$cbc_body:: - movdqu xmm6,XMMWORD PTR[r8] - sub rsi,rdi - call _vpaes_preheat - cmp r9d,0 - je $L$cbc_dec_loop - jmp $L$cbc_enc_loop -ALIGN 16 -$L$cbc_enc_loop:: - movdqu xmm0,XMMWORD PTR[rdi] - pxor xmm0,xmm6 - call _vpaes_encrypt_core - movdqa xmm6,xmm0 - movdqu XMMWORD PTR[rdi*1+rsi],xmm0 - lea rdi,QWORD PTR[16+rdi] - sub rcx,16 - jnc $L$cbc_enc_loop - jmp $L$cbc_done -ALIGN 16 -$L$cbc_dec_loop:: - movdqu xmm0,XMMWORD PTR[rdi] - movdqa xmm7,xmm0 - call _vpaes_decrypt_core - pxor xmm0,xmm6 - movdqa xmm6,xmm7 - movdqu XMMWORD PTR[rdi*1+rsi],xmm0 - lea rdi,QWORD PTR[16+rdi] - sub rcx,16 - jnc $L$cbc_dec_loop -$L$cbc_done:: - movdqu XMMWORD PTR[r8],xmm6 - movaps xmm6,XMMWORD PTR[16+rsp] - movaps xmm7,XMMWORD PTR[32+rsp] - movaps xmm8,XMMWORD PTR[48+rsp] - movaps xmm9,XMMWORD PTR[64+rsp] - movaps xmm10,XMMWORD PTR[80+rsp] - movaps xmm11,XMMWORD PTR[96+rsp] - movaps xmm12,XMMWORD PTR[112+rsp] - movaps xmm13,XMMWORD PTR[128+rsp] - movaps xmm14,XMMWORD PTR[144+rsp] - movaps xmm15,XMMWORD PTR[160+rsp] - lea rsp,QWORD PTR[184+rsp] -$L$cbc_epilogue:: -$L$cbc_abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_vpaes_cbc_encrypt:: -vpaes_cbc_encrypt ENDP - - - - - - - -ALIGN 16 -_vpaes_preheat PROC PRIVATE - lea r10,QWORD PTR[$L$k_s0F] - movdqa xmm10,XMMWORD PTR[((-32))+r10] - movdqa xmm11,XMMWORD PTR[((-16))+r10] - movdqa xmm9,XMMWORD PTR[r10] - movdqa xmm13,XMMWORD PTR[48+r10] - movdqa xmm12,XMMWORD PTR[64+r10] - movdqa xmm15,XMMWORD PTR[80+r10] - movdqa xmm14,XMMWORD PTR[96+r10] - DB 0F3h,0C3h ;repret -_vpaes_preheat ENDP - - - - - - -ALIGN 64 -_vpaes_consts:: -$L$k_inv:: - DQ 00E05060F0D080180h,0040703090A0B0C02h - DQ 001040A060F0B0780h,0030D0E0C02050809h - -$L$k_s0F:: - DQ 00F0F0F0F0F0F0F0Fh,00F0F0F0F0F0F0F0Fh - -$L$k_ipt:: - DQ 0C2B2E8985A2A7000h,0CABAE09052227808h - DQ 04C01307D317C4D00h,0CD80B1FCB0FDCC81h - -$L$k_sb1:: - DQ 0B19BE18FCB503E00h,0A5DF7A6E142AF544h - DQ 03618D415FAE22300h,03BF7CCC10D2ED9EFh -$L$k_sb2:: - DQ 0E27A93C60B712400h,05EB7E955BC982FCDh - DQ 069EB88400AE12900h,0C2A163C8AB82234Ah -$L$k_sbo:: - DQ 0D0D26D176FBDC700h,015AABF7AC502A878h - DQ 0CFE474A55FBB6A00h,08E1E90D1412B35FAh - -$L$k_mc_forward:: - DQ 00407060500030201h,00C0F0E0D080B0A09h - DQ 0080B0A0904070605h,0000302010C0F0E0Dh - DQ 00C0F0E0D080B0A09h,00407060500030201h - DQ 0000302010C0F0E0Dh,0080B0A0904070605h - -$L$k_mc_backward:: - DQ 00605040702010003h,00E0D0C0F0A09080Bh - DQ 0020100030E0D0C0Fh,00A09080B06050407h - DQ 00E0D0C0F0A09080Bh,00605040702010003h - DQ 00A09080B06050407h,0020100030E0D0C0Fh - -$L$k_sr:: - DQ 00706050403020100h,00F0E0D0C0B0A0908h - DQ 0030E09040F0A0500h,00B06010C07020D08h - DQ 00F060D040B020900h,0070E050C030A0108h - DQ 00B0E0104070A0D00h,00306090C0F020508h - -$L$k_rcon:: - DQ 01F8391B9AF9DEEB6h,0702A98084D7C7D81h - -$L$k_s63:: - DQ 05B5B5B5B5B5B5B5Bh,05B5B5B5B5B5B5B5Bh - -$L$k_opt:: - DQ 0FF9F4929D6B66000h,0F7974121DEBE6808h - DQ 001EDBD5150BCEC00h,0E10D5DB1B05C0CE0h - -$L$k_deskew:: - DQ 007E4A34047A4E300h,01DFEB95A5DBEF91Ah - DQ 05F36B5DC83EA6900h,02841C2ABF49D1E77h - - - - - -$L$k_dksd:: - DQ 0FEB91A5DA3E44700h,00740E3A45A1DBEF9h - DQ 041C277F4B5368300h,05FDC69EAAB289D1Eh -$L$k_dksb:: - DQ 09A4FCA1F8550D500h,003D653861CC94C99h - DQ 0115BEDA7B6FC4A00h,0D993256F7E3482C8h -$L$k_dkse:: - DQ 0D5031CCA1FC9D600h,053859A4C994F5086h - DQ 0A23196054FDC7BE8h,0CD5EF96A20B31487h -$L$k_dks9:: - DQ 0B6116FC87ED9A700h,04AED933482255BFCh - DQ 04576516227143300h,08BB89FACE9DAFDCEh - - - - - -$L$k_dipt:: - DQ 00F505B040B545F00h,0154A411E114E451Ah - DQ 086E383E660056500h,012771772F491F194h - -$L$k_dsb9:: - DQ 0851C03539A86D600h,0CAD51F504F994CC9h - DQ 0C03B1789ECD74900h,0725E2C9EB2FBA565h -$L$k_dsbd:: - DQ 07D57CCDFE6B1A200h,0F56E9B13882A4439h - DQ 03CE2FAF724C6CB00h,02931180D15DEEFD3h -$L$k_dsbb:: - DQ 0D022649296B44200h,0602646F6B0F2D404h - DQ 0C19498A6CD596700h,0F3FF0C3E3255AA6Bh -$L$k_dsbe:: - DQ 046F2929626D4D000h,02242600464B4F6B0h - DQ 00C55A6CDFFAAC100h,09467F36B98593E32h -$L$k_dsbo:: - DQ 01387EA537EF94000h,0C7AA6DB9D4943E2Dh - DQ 012D7560F93441D00h,0CA4B8159D8C58E9Ch -DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54 -DB 52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97 -DB 109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32 -DB 85,110,105,118,101,114,115,105,116,121,41,0 -ALIGN 64 - -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rsi,QWORD PTR[16+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - lea rax,QWORD PTR[184+rax] - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_vpaes_set_encrypt_key - DD imagerel $L$SEH_end_vpaes_set_encrypt_key - DD imagerel $L$SEH_info_vpaes_set_encrypt_key - - DD imagerel $L$SEH_begin_vpaes_set_decrypt_key - DD imagerel $L$SEH_end_vpaes_set_decrypt_key - DD imagerel $L$SEH_info_vpaes_set_decrypt_key - - DD imagerel $L$SEH_begin_vpaes_encrypt - DD imagerel $L$SEH_end_vpaes_encrypt - DD imagerel $L$SEH_info_vpaes_encrypt - - DD imagerel $L$SEH_begin_vpaes_decrypt - DD imagerel $L$SEH_end_vpaes_decrypt - DD imagerel $L$SEH_info_vpaes_decrypt - - DD imagerel $L$SEH_begin_vpaes_cbc_encrypt - DD imagerel $L$SEH_end_vpaes_cbc_encrypt - DD imagerel $L$SEH_info_vpaes_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_vpaes_set_encrypt_key:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc_key_body,imagerel $L$enc_key_epilogue -$L$SEH_info_vpaes_set_decrypt_key:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec_key_body,imagerel $L$dec_key_epilogue -$L$SEH_info_vpaes_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$enc_body,imagerel $L$enc_epilogue -$L$SEH_info_vpaes_decrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$dec_body,imagerel $L$dec_epilogue -$L$SEH_info_vpaes_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$cbc_body,imagerel $L$cbc_epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-avx2.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-avx2.asm deleted file mode 100644 index f9188f510e722a..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-avx2.asm +++ /dev/null @@ -1,29 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC rsaz_avx2_eligible - -rsaz_avx2_eligible PROC PUBLIC - xor eax,eax - DB 0F3h,0C3h ;repret -rsaz_avx2_eligible ENDP - -PUBLIC rsaz_1024_sqr_avx2 -PUBLIC rsaz_1024_mul_avx2 -PUBLIC rsaz_1024_norm2red_avx2 -PUBLIC rsaz_1024_red2norm_avx2 -PUBLIC rsaz_1024_scatter5_avx2 -PUBLIC rsaz_1024_gather5_avx2 - -rsaz_1024_sqr_avx2 PROC PUBLIC -rsaz_1024_mul_avx2:: -rsaz_1024_norm2red_avx2:: -rsaz_1024_red2norm_avx2:: -rsaz_1024_scatter5_avx2:: -rsaz_1024_gather5_avx2:: -DB 00fh,00bh - DB 0F3h,0C3h ;repret -rsaz_1024_sqr_avx2 ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-x86_64.asm deleted file mode 100644 index 89114311a56e7b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-x86_64.asm +++ /dev/null @@ -1,1501 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC rsaz_512_sqr - -ALIGN 32 -rsaz_512_sqr PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_sqr:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$sqr_body:: - mov rbp,rdx - mov rdx,QWORD PTR[rsi] - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[128+rsp],rcx - jmp $L$oop_sqr - -ALIGN 32 -$L$oop_sqr:: - mov DWORD PTR[((128+8))+rsp],r8d - - mov rbx,rdx - mul rdx - mov r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,rbx - mov r15,rdx - adc r15,0 - - add r8,r8 - mov rcx,r9 - adc r9,r9 - - mul rax - mov QWORD PTR[rsp],rax - add r8,rdx - adc r9,0 - - mov QWORD PTR[8+rsp],r8 - shr rcx,63 - - - mov r8,QWORD PTR[8+rsi] - mov rax,QWORD PTR[16+rsi] - mul r8 - add r10,rax - mov rax,QWORD PTR[24+rsi] - mov rbx,rdx - adc rbx,0 - - mul r8 - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r11,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r12,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r13,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r14,rbx - mov rbx,rdx - adc rbx,0 - - mul r8 - add r15,rax - mov rax,r8 - adc rdx,0 - add r15,rbx - mov r8,rdx - mov rdx,r10 - adc r8,0 - - add rdx,rdx - lea r10,QWORD PTR[r10*2+rcx] - mov rbx,r11 - adc r11,r11 - - mul rax - add r9,rax - adc r10,rdx - adc r11,0 - - mov QWORD PTR[16+rsp],r9 - mov QWORD PTR[24+rsp],r10 - shr rbx,63 - - - mov r9,QWORD PTR[16+rsi] - mov rax,QWORD PTR[24+rsi] - mul r9 - add r12,rax - mov rax,QWORD PTR[32+rsi] - mov rcx,rdx - adc rcx,0 - - mul r9 - add r13,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r13,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - add r14,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r14,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - mov r10,r12 - lea r12,QWORD PTR[r12*2+rbx] - add r15,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r15,rcx - mov rcx,rdx - adc rcx,0 - - mul r9 - shr r10,63 - add r8,rax - mov rax,r9 - adc rdx,0 - add r8,rcx - mov r9,rdx - adc r9,0 - - mov rcx,r13 - lea r13,QWORD PTR[r13*2+r10] - - mul rax - add r11,rax - adc r12,rdx - adc r13,0 - - mov QWORD PTR[32+rsp],r11 - mov QWORD PTR[40+rsp],r12 - shr rcx,63 - - - mov r10,QWORD PTR[24+rsi] - mov rax,QWORD PTR[32+rsi] - mul r10 - add r14,rax - mov rax,QWORD PTR[40+rsi] - mov rbx,rdx - adc rbx,0 - - mul r10 - add r15,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r15,rbx - mov rbx,rdx - adc rbx,0 - - mul r10 - mov r12,r14 - lea r14,QWORD PTR[r14*2+rcx] - add r8,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r8,rbx - mov rbx,rdx - adc rbx,0 - - mul r10 - shr r12,63 - add r9,rax - mov rax,r10 - adc rdx,0 - add r9,rbx - mov r10,rdx - adc r10,0 - - mov rbx,r15 - lea r15,QWORD PTR[r15*2+r12] - - mul rax - add r13,rax - adc r14,rdx - adc r15,0 - - mov QWORD PTR[48+rsp],r13 - mov QWORD PTR[56+rsp],r14 - shr rbx,63 - - - mov r11,QWORD PTR[32+rsi] - mov rax,QWORD PTR[40+rsi] - mul r11 - add r8,rax - mov rax,QWORD PTR[48+rsi] - mov rcx,rdx - adc rcx,0 - - mul r11 - add r9,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - mov r12,r8 - lea r8,QWORD PTR[r8*2+rbx] - add r9,rcx - mov rcx,rdx - adc rcx,0 - - mul r11 - shr r12,63 - add r10,rax - mov rax,r11 - adc rdx,0 - add r10,rcx - mov r11,rdx - adc r11,0 - - mov rcx,r9 - lea r9,QWORD PTR[r9*2+r12] - - mul rax - add r15,rax - adc r8,rdx - adc r9,0 - - mov QWORD PTR[64+rsp],r15 - mov QWORD PTR[72+rsp],r8 - shr rcx,63 - - - mov r12,QWORD PTR[40+rsi] - mov rax,QWORD PTR[48+rsi] - mul r12 - add r10,rax - mov rax,QWORD PTR[56+rsi] - mov rbx,rdx - adc rbx,0 - - mul r12 - add r11,rax - mov rax,r12 - mov r15,r10 - lea r10,QWORD PTR[r10*2+rcx] - adc rdx,0 - shr r15,63 - add r11,rbx - mov r12,rdx - adc r12,0 - - mov rbx,r11 - lea r11,QWORD PTR[r11*2+r15] - - mul rax - add r9,rax - adc r10,rdx - adc r11,0 - - mov QWORD PTR[80+rsp],r9 - mov QWORD PTR[88+rsp],r10 - - - mov r13,QWORD PTR[48+rsi] - mov rax,QWORD PTR[56+rsi] - mul r13 - add r12,rax - mov rax,r13 - mov r13,rdx - adc r13,0 - - xor r14,r14 - shl rbx,1 - adc r12,r12 - adc r13,r13 - adc r14,r14 - - mul rax - add r11,rax - adc r12,rdx - adc r13,0 - - mov QWORD PTR[96+rsp],r11 - mov QWORD PTR[104+rsp],r12 - - - mov rax,QWORD PTR[56+rsi] - mul rax - add r13,rax - adc rdx,0 - - add r14,rdx - - mov QWORD PTR[112+rsp],r13 - mov QWORD PTR[120+rsp],r14 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - mov rdx,r8 - mov rax,r9 - mov r8d,DWORD PTR[((128+8))+rsp] - mov rsi,rdi - - dec r8d - jnz $L$oop_sqr - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$sqr_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_sqr:: -rsaz_512_sqr ENDP -PUBLIC rsaz_512_mul - -ALIGN 32 -rsaz_512_mul PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$mul_body:: -DB 102,72,15,110,199 -DB 102,72,15,110,201 - mov QWORD PTR[128+rsp],r8 - mov rbx,QWORD PTR[rdx] - mov rbp,rdx - call __rsaz_512_mul - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul:: -rsaz_512_mul ENDP -PUBLIC rsaz_512_mul_gather4 - -ALIGN 32 -rsaz_512_mul_gather4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_gather4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,328 - movaps XMMWORD PTR[160+rsp],xmm6 - movaps XMMWORD PTR[176+rsp],xmm7 - movaps XMMWORD PTR[192+rsp],xmm8 - movaps XMMWORD PTR[208+rsp],xmm9 - movaps XMMWORD PTR[224+rsp],xmm10 - movaps XMMWORD PTR[240+rsp],xmm11 - movaps XMMWORD PTR[256+rsp],xmm12 - movaps XMMWORD PTR[272+rsp],xmm13 - movaps XMMWORD PTR[288+rsp],xmm14 - movaps XMMWORD PTR[304+rsp],xmm15 -$L$mul_gather4_body:: - movd xmm8,r9d - movdqa xmm1,XMMWORD PTR[(($L$inc+16))] - movdqa xmm0,XMMWORD PTR[$L$inc] - - pshufd xmm8,xmm8,0 - movdqa xmm7,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm8 - movdqa xmm3,xmm7 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm8 - movdqa xmm4,xmm7 - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm8 - movdqa xmm5,xmm7 - paddd xmm4,xmm3 - pcmpeqd xmm3,xmm8 - movdqa xmm6,xmm7 - paddd xmm5,xmm4 - pcmpeqd xmm4,xmm8 - paddd xmm6,xmm5 - pcmpeqd xmm5,xmm8 - paddd xmm7,xmm6 - pcmpeqd xmm6,xmm8 - pcmpeqd xmm7,xmm8 - - movdqa xmm8,XMMWORD PTR[rdx] - movdqa xmm9,XMMWORD PTR[16+rdx] - movdqa xmm10,XMMWORD PTR[32+rdx] - movdqa xmm11,XMMWORD PTR[48+rdx] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rdx] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rdx] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rdx] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rdx] - lea rbp,QWORD PTR[128+rdx] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 -DB 102,76,15,126,195 - - mov QWORD PTR[128+rsp],r8 - mov QWORD PTR[((128+8))+rsp],rdi - mov QWORD PTR[((128+16))+rsp],rcx - - mov rax,QWORD PTR[rsi] - mov rcx,QWORD PTR[8+rsi] - mul rbx - mov QWORD PTR[rsp],rax - mov rax,rcx - mov r8,rdx - - mul rbx - add r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - adc r9,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[rsi] - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rsp] - mov ecx,7 - jmp $L$oop_mul_gather - -ALIGN 32 -$L$oop_mul_gather:: - movdqa xmm8,XMMWORD PTR[rbp] - movdqa xmm9,XMMWORD PTR[16+rbp] - movdqa xmm10,XMMWORD PTR[32+rbp] - movdqa xmm11,XMMWORD PTR[48+rbp] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rbp] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rbp] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rbp] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rbp] - lea rbp,QWORD PTR[128+rbp] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 -DB 102,76,15,126,195 - - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - add r15,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rdi] - - dec ecx - jnz $L$oop_mul_gather - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - mov rdi,QWORD PTR[((128+8))+rsp] - mov rbp,QWORD PTR[((128+16))+rsp] - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] - sbb rcx,rcx - - call __rsaz_512_subtract - - lea rax,QWORD PTR[((128+24+48))+rsp] - movaps xmm6,XMMWORD PTR[((160-200))+rax] - movaps xmm7,XMMWORD PTR[((176-200))+rax] - movaps xmm8,XMMWORD PTR[((192-200))+rax] - movaps xmm9,XMMWORD PTR[((208-200))+rax] - movaps xmm10,XMMWORD PTR[((224-200))+rax] - movaps xmm11,XMMWORD PTR[((240-200))+rax] - movaps xmm12,XMMWORD PTR[((256-200))+rax] - movaps xmm13,XMMWORD PTR[((272-200))+rax] - movaps xmm14,XMMWORD PTR[((288-200))+rax] - movaps xmm15,XMMWORD PTR[((304-200))+rax] - lea rax,QWORD PTR[176+rax] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_gather4_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_gather4:: -rsaz_512_mul_gather4 ENDP -PUBLIC rsaz_512_mul_scatter4 - -ALIGN 32 -rsaz_512_mul_scatter4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_scatter4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - mov r9d,r9d - sub rsp,128+24 -$L$mul_scatter4_body:: - lea r8,QWORD PTR[r9*8+r8] -DB 102,72,15,110,199 -DB 102,72,15,110,202 -DB 102,73,15,110,208 - mov QWORD PTR[128+rsp],rcx - - mov rbp,rdi - mov rbx,QWORD PTR[rdi] - call __rsaz_512_mul - -DB 102,72,15,126,199 -DB 102,72,15,126,205 - - mov r8,QWORD PTR[rsp] - mov r9,QWORD PTR[8+rsp] - mov r10,QWORD PTR[16+rsp] - mov r11,QWORD PTR[24+rsp] - mov r12,QWORD PTR[32+rsp] - mov r13,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r15,QWORD PTR[56+rsp] - - call __rsaz_512_reduce - add r8,QWORD PTR[64+rsp] - adc r9,QWORD PTR[72+rsp] - adc r10,QWORD PTR[80+rsp] - adc r11,QWORD PTR[88+rsp] - adc r12,QWORD PTR[96+rsp] - adc r13,QWORD PTR[104+rsp] - adc r14,QWORD PTR[112+rsp] - adc r15,QWORD PTR[120+rsp] -DB 102,72,15,126,214 - sbb rcx,rcx - - call __rsaz_512_subtract - - mov QWORD PTR[rsi],r8 - mov QWORD PTR[128+rsi],r9 - mov QWORD PTR[256+rsi],r10 - mov QWORD PTR[384+rsi],r11 - mov QWORD PTR[512+rsi],r12 - mov QWORD PTR[640+rsi],r13 - mov QWORD PTR[768+rsi],r14 - mov QWORD PTR[896+rsi],r15 - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_scatter4_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_scatter4:: -rsaz_512_mul_scatter4 ENDP -PUBLIC rsaz_512_mul_by_one - -ALIGN 32 -rsaz_512_mul_by_one PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rsaz_512_mul_by_one:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - sub rsp,128+24 -$L$mul_by_one_body:: - mov rbp,rdx - mov QWORD PTR[128+rsp],rcx - - mov r8,QWORD PTR[rsi] - pxor xmm0,xmm0 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - mov r12,QWORD PTR[32+rsi] - mov r13,QWORD PTR[40+rsi] - mov r14,QWORD PTR[48+rsi] - mov r15,QWORD PTR[56+rsi] - - movdqa XMMWORD PTR[rsp],xmm0 - movdqa XMMWORD PTR[16+rsp],xmm0 - movdqa XMMWORD PTR[32+rsp],xmm0 - movdqa XMMWORD PTR[48+rsp],xmm0 - movdqa XMMWORD PTR[64+rsp],xmm0 - movdqa XMMWORD PTR[80+rsp],xmm0 - movdqa XMMWORD PTR[96+rsp],xmm0 - call __rsaz_512_reduce - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - lea rax,QWORD PTR[((128+24+48))+rsp] - mov r15,QWORD PTR[((-48))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$mul_by_one_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_mul_by_one:: -rsaz_512_mul_by_one ENDP - -ALIGN 32 -__rsaz_512_reduce PROC PRIVATE - mov rbx,r8 - imul rbx,QWORD PTR[((128+8))+rsp] - mov rax,QWORD PTR[rbp] - mov ecx,8 - jmp $L$reduction_loop - -ALIGN 32 -$L$reduction_loop:: - mul rbx - mov rax,QWORD PTR[8+rbp] - neg r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - add r10,r11 - mov rsi,QWORD PTR[((128+8))+rsp] - - - adc rdx,0 - mov r11,rdx - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - imul rsi,r8 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,rsi - add r15,rax - mov rax,QWORD PTR[rbp] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - dec ecx - jne $L$reduction_loop - - DB 0F3h,0C3h ;repret -__rsaz_512_reduce ENDP - -ALIGN 32 -__rsaz_512_subtract PROC PRIVATE - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - mov r8,QWORD PTR[rbp] - mov r9,QWORD PTR[8+rbp] - neg r8 - not r9 - and r8,rcx - mov r10,QWORD PTR[16+rbp] - and r9,rcx - not r10 - mov r11,QWORD PTR[24+rbp] - and r10,rcx - not r11 - mov r12,QWORD PTR[32+rbp] - and r11,rcx - not r12 - mov r13,QWORD PTR[40+rbp] - and r12,rcx - not r13 - mov r14,QWORD PTR[48+rbp] - and r13,rcx - not r14 - mov r15,QWORD PTR[56+rbp] - and r14,rcx - not r15 - and r15,rcx - - add r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - DB 0F3h,0C3h ;repret -__rsaz_512_subtract ENDP - -ALIGN 32 -__rsaz_512_mul PROC PRIVATE - lea rdi,QWORD PTR[8+rsp] - - mov rax,QWORD PTR[rsi] - mul rbx - mov QWORD PTR[rdi],rax - mov rax,QWORD PTR[8+rsi] - mov r8,rdx - - mul rbx - add r8,rax - mov rax,QWORD PTR[16+rsi] - mov r9,rdx - adc r9,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[24+rsi] - mov r10,rdx - adc r10,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[32+rsi] - mov r11,rdx - adc r11,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[40+rsi] - mov r12,rdx - adc r12,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[48+rsi] - mov r13,rdx - adc r13,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[56+rsi] - mov r14,rdx - adc r14,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[rsi] - mov r15,rdx - adc r15,0 - - lea rbp,QWORD PTR[8+rbp] - lea rdi,QWORD PTR[8+rdi] - - mov ecx,7 - jmp $L$oop_mul - -ALIGN 32 -$L$oop_mul:: - mov rbx,QWORD PTR[rbp] - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rsi] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add r8,r9 - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rsi] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rsi] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rsi] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rsi] - adc rdx,0 - add r13,r14 - mov r14,rdx - lea rbp,QWORD PTR[8+rbp] - adc r14,0 - - mul rbx - add r15,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - lea rdi,QWORD PTR[8+rdi] - - dec ecx - jnz $L$oop_mul - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - - DB 0F3h,0C3h ;repret -__rsaz_512_mul ENDP -PUBLIC rsaz_512_scatter4 - -ALIGN 16 -rsaz_512_scatter4 PROC PUBLIC - lea rcx,QWORD PTR[r8*8+rcx] - mov r9d,8 - jmp $L$oop_scatter -ALIGN 16 -$L$oop_scatter:: - mov rax,QWORD PTR[rdx] - lea rdx,QWORD PTR[8+rdx] - mov QWORD PTR[rcx],rax - lea rcx,QWORD PTR[128+rcx] - dec r9d - jnz $L$oop_scatter - DB 0F3h,0C3h ;repret -rsaz_512_scatter4 ENDP - -PUBLIC rsaz_512_gather4 - -ALIGN 16 -rsaz_512_gather4 PROC PUBLIC -$L$SEH_begin_rsaz_512_gather4:: -DB 048h,081h,0ech,0a8h,000h,000h,000h -DB 00fh,029h,034h,024h -DB 00fh,029h,07ch,024h,010h -DB 044h,00fh,029h,044h,024h,020h -DB 044h,00fh,029h,04ch,024h,030h -DB 044h,00fh,029h,054h,024h,040h -DB 044h,00fh,029h,05ch,024h,050h -DB 044h,00fh,029h,064h,024h,060h -DB 044h,00fh,029h,06ch,024h,070h -DB 044h,00fh,029h,0b4h,024h,080h,0,0,0 -DB 044h,00fh,029h,0bch,024h,090h,0,0,0 - movd xmm8,r8d - movdqa xmm1,XMMWORD PTR[(($L$inc+16))] - movdqa xmm0,XMMWORD PTR[$L$inc] - - pshufd xmm8,xmm8,0 - movdqa xmm7,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm8 - movdqa xmm3,xmm7 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm8 - movdqa xmm4,xmm7 - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm8 - movdqa xmm5,xmm7 - paddd xmm4,xmm3 - pcmpeqd xmm3,xmm8 - movdqa xmm6,xmm7 - paddd xmm5,xmm4 - pcmpeqd xmm4,xmm8 - paddd xmm6,xmm5 - pcmpeqd xmm5,xmm8 - paddd xmm7,xmm6 - pcmpeqd xmm6,xmm8 - pcmpeqd xmm7,xmm8 - mov r9d,8 - jmp $L$oop_gather -ALIGN 16 -$L$oop_gather:: - movdqa xmm8,XMMWORD PTR[rdx] - movdqa xmm9,XMMWORD PTR[16+rdx] - movdqa xmm10,XMMWORD PTR[32+rdx] - movdqa xmm11,XMMWORD PTR[48+rdx] - pand xmm8,xmm0 - movdqa xmm12,XMMWORD PTR[64+rdx] - pand xmm9,xmm1 - movdqa xmm13,XMMWORD PTR[80+rdx] - pand xmm10,xmm2 - movdqa xmm14,XMMWORD PTR[96+rdx] - pand xmm11,xmm3 - movdqa xmm15,XMMWORD PTR[112+rdx] - lea rdx,QWORD PTR[128+rdx] - pand xmm12,xmm4 - pand xmm13,xmm5 - pand xmm14,xmm6 - pand xmm15,xmm7 - por xmm8,xmm10 - por xmm9,xmm11 - por xmm8,xmm12 - por xmm9,xmm13 - por xmm8,xmm14 - por xmm9,xmm15 - - por xmm8,xmm9 - pshufd xmm9,xmm8,04eh - por xmm8,xmm9 - movq QWORD PTR[rcx],xmm8 - lea rcx,QWORD PTR[8+rcx] - dec r9d - jnz $L$oop_gather - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - add rsp,0a8h - DB 0F3h,0C3h ;repret -$L$SEH_end_rsaz_512_gather4:: -rsaz_512_gather4 ENDP - -ALIGN 64 -$L$inc:: - DD 0,0,1,1 - DD 2,2,2,2 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rax,QWORD PTR[((128+24+48))+rax] - - lea rbx,QWORD PTR[$L$mul_gather4_epilogue] - cmp rbx,r10 - jne $L$se_not_in_mul_gather4 - - lea rax,QWORD PTR[176+rax] - - lea rsi,QWORD PTR[((-48-168))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$se_not_in_mul_gather4:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_rsaz_512_sqr - DD imagerel $L$SEH_end_rsaz_512_sqr - DD imagerel $L$SEH_info_rsaz_512_sqr - - DD imagerel $L$SEH_begin_rsaz_512_mul - DD imagerel $L$SEH_end_rsaz_512_mul - DD imagerel $L$SEH_info_rsaz_512_mul - - DD imagerel $L$SEH_begin_rsaz_512_mul_gather4 - DD imagerel $L$SEH_end_rsaz_512_mul_gather4 - DD imagerel $L$SEH_info_rsaz_512_mul_gather4 - - DD imagerel $L$SEH_begin_rsaz_512_mul_scatter4 - DD imagerel $L$SEH_end_rsaz_512_mul_scatter4 - DD imagerel $L$SEH_info_rsaz_512_mul_scatter4 - - DD imagerel $L$SEH_begin_rsaz_512_mul_by_one - DD imagerel $L$SEH_end_rsaz_512_mul_by_one - DD imagerel $L$SEH_info_rsaz_512_mul_by_one - - DD imagerel $L$SEH_begin_rsaz_512_gather4 - DD imagerel $L$SEH_end_rsaz_512_gather4 - DD imagerel $L$SEH_info_rsaz_512_gather4 - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_rsaz_512_sqr:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$sqr_body,imagerel $L$sqr_epilogue -$L$SEH_info_rsaz_512_mul:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_body,imagerel $L$mul_epilogue -$L$SEH_info_rsaz_512_mul_gather4:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_gather4_body,imagerel $L$mul_gather4_epilogue -$L$SEH_info_rsaz_512_mul_scatter4:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_scatter4_body,imagerel $L$mul_scatter4_epilogue -$L$SEH_info_rsaz_512_mul_by_one:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$mul_by_one_body,imagerel $L$mul_by_one_epilogue -$L$SEH_info_rsaz_512_gather4:: -DB 001h,046h,016h,000h -DB 046h,0f8h,009h,000h -DB 03dh,0e8h,008h,000h -DB 034h,0d8h,007h,000h -DB 02eh,0c8h,006h,000h -DB 028h,0b8h,005h,000h -DB 022h,0a8h,004h,000h -DB 01ch,098h,003h,000h -DB 016h,088h,002h,000h -DB 010h,078h,001h,000h -DB 00bh,068h,000h,000h -DB 007h,001h,015h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-gf2m.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-gf2m.asm deleted file mode 100644 index d2e9c6600bfc47..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-gf2m.asm +++ /dev/null @@ -1,399 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - -ALIGN 16 -_mul_1x1 PROC PRIVATE - sub rsp,128+8 - mov r9,-1 - lea rsi,QWORD PTR[rax*1+rax] - shr r9,3 - lea rdi,QWORD PTR[rax*4] - and r9,rax - lea r12,QWORD PTR[rax*8] - sar rax,63 - lea r10,QWORD PTR[r9*1+r9] - sar rsi,63 - lea r11,QWORD PTR[r9*4] - and rax,rbp - sar rdi,63 - mov rdx,rax - shl rax,63 - and rsi,rbp - shr rdx,1 - mov rcx,rsi - shl rsi,62 - and rdi,rbp - shr rcx,2 - xor rax,rsi - mov rbx,rdi - shl rdi,61 - xor rdx,rcx - shr rbx,3 - xor rax,rdi - xor rdx,rbx - - mov r13,r9 - mov QWORD PTR[rsp],0 - xor r13,r10 - mov QWORD PTR[8+rsp],r9 - mov r14,r11 - mov QWORD PTR[16+rsp],r10 - xor r14,r12 - mov QWORD PTR[24+rsp],r13 - - xor r9,r11 - mov QWORD PTR[32+rsp],r11 - xor r10,r11 - mov QWORD PTR[40+rsp],r9 - xor r13,r11 - mov QWORD PTR[48+rsp],r10 - xor r9,r14 - mov QWORD PTR[56+rsp],r13 - xor r10,r14 - - mov QWORD PTR[64+rsp],r12 - xor r13,r14 - mov QWORD PTR[72+rsp],r9 - xor r9,r11 - mov QWORD PTR[80+rsp],r10 - xor r10,r11 - mov QWORD PTR[88+rsp],r13 - - xor r13,r11 - mov QWORD PTR[96+rsp],r14 - mov rsi,r8 - mov QWORD PTR[104+rsp],r9 - and rsi,rbp - mov QWORD PTR[112+rsp],r10 - shr rbp,4 - mov QWORD PTR[120+rsp],r13 - mov rdi,r8 - and rdi,rbp - shr rbp,4 - - movq xmm0,QWORD PTR[rsi*8+rsp] - mov rsi,r8 - and rsi,rbp - shr rbp,4 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,4 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,60 - xor rax,rcx - pslldq xmm1,1 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,12 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,52 - xor rax,rcx - pslldq xmm1,2 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,20 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,44 - xor rax,rcx - pslldq xmm1,3 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,28 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,36 - xor rax,rcx - pslldq xmm1,4 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,36 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,28 - xor rax,rcx - pslldq xmm1,5 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,44 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,20 - xor rax,rcx - pslldq xmm1,6 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rdi,r8 - mov rbx,rcx - shl rcx,52 - and rdi,rbp - movq xmm1,QWORD PTR[rsi*8+rsp] - shr rbx,12 - xor rax,rcx - pslldq xmm1,7 - mov rsi,r8 - shr rbp,4 - xor rdx,rbx - and rsi,rbp - shr rbp,4 - pxor xmm0,xmm1 - mov rcx,QWORD PTR[rdi*8+rsp] - mov rbx,rcx - shl rcx,60 -DB 102,72,15,126,198 - shr rbx,4 - xor rax,rcx - psrldq xmm0,8 - xor rdx,rbx -DB 102,72,15,126,199 - xor rax,rsi - xor rdx,rdi - - add rsp,128+8 - DB 0F3h,0C3h ;repret -$L$end_mul_1x1:: -_mul_1x1 ENDP -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC bn_GF2m_mul_2x2 - -ALIGN 16 -bn_GF2m_mul_2x2 PROC PUBLIC - mov rax,QWORD PTR[OPENSSL_ia32cap_P] - bt rax,33 - jnc $L$vanilla_mul_2x2 - -DB 102,72,15,110,194 -DB 102,73,15,110,201 -DB 102,73,15,110,208 - movq xmm3,QWORD PTR[40+rsp] - movdqa xmm4,xmm0 - movdqa xmm5,xmm1 -DB 102,15,58,68,193,0 - pxor xmm4,xmm2 - pxor xmm5,xmm3 -DB 102,15,58,68,211,0 -DB 102,15,58,68,229,0 - xorps xmm4,xmm0 - xorps xmm4,xmm2 - movdqa xmm5,xmm4 - pslldq xmm4,8 - psrldq xmm5,8 - pxor xmm2,xmm4 - pxor xmm0,xmm5 - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm0 - DB 0F3h,0C3h ;repret - -ALIGN 16 -$L$vanilla_mul_2x2:: - lea rsp,QWORD PTR[((-136))+rsp] - mov r10,QWORD PTR[176+rsp] - mov QWORD PTR[120+rsp],rdi - mov QWORD PTR[128+rsp],rsi - mov QWORD PTR[80+rsp],r14 - mov QWORD PTR[88+rsp],r13 - mov QWORD PTR[96+rsp],r12 - mov QWORD PTR[104+rsp],rbp - mov QWORD PTR[112+rsp],rbx -$L$body_mul_2x2:: - mov QWORD PTR[32+rsp],rcx - mov QWORD PTR[40+rsp],rdx - mov QWORD PTR[48+rsp],r8 - mov QWORD PTR[56+rsp],r9 - mov QWORD PTR[64+rsp],r10 - - mov r8,0fh - mov rax,rdx - mov rbp,r9 - call _mul_1x1 - mov QWORD PTR[16+rsp],rax - mov QWORD PTR[24+rsp],rdx - - mov rax,QWORD PTR[48+rsp] - mov rbp,QWORD PTR[64+rsp] - call _mul_1x1 - mov QWORD PTR[rsp],rax - mov QWORD PTR[8+rsp],rdx - - mov rax,QWORD PTR[40+rsp] - mov rbp,QWORD PTR[56+rsp] - xor rax,QWORD PTR[48+rsp] - xor rbp,QWORD PTR[64+rsp] - call _mul_1x1 - mov rbx,QWORD PTR[rsp] - mov rcx,QWORD PTR[8+rsp] - mov rdi,QWORD PTR[16+rsp] - mov rsi,QWORD PTR[24+rsp] - mov rbp,QWORD PTR[32+rsp] - - xor rax,rdx - xor rdx,rcx - xor rax,rbx - mov QWORD PTR[rbp],rbx - xor rdx,rdi - mov QWORD PTR[24+rbp],rsi - xor rax,rsi - xor rdx,rsi - xor rax,rdx - mov QWORD PTR[16+rbp],rdx - mov QWORD PTR[8+rbp],rax - - mov r14,QWORD PTR[80+rsp] - mov r13,QWORD PTR[88+rsp] - mov r12,QWORD PTR[96+rsp] - mov rbp,QWORD PTR[104+rsp] - mov rbx,QWORD PTR[112+rsp] - mov rdi,QWORD PTR[120+rsp] - mov rsi,QWORD PTR[128+rsp] - lea rsp,QWORD PTR[136+rsp] - DB 0F3h,0C3h ;repret -$L$end_mul_2x2:: -bn_GF2m_mul_2x2 ENDP -DB 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -DB 99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 -ALIGN 16 -EXTERN __imp_RtlVirtualUnwind:NEAR - - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$body_mul_2x2] - cmp rbx,r10 - jb $L$in_prologue - - mov r14,QWORD PTR[80+rax] - mov r13,QWORD PTR[88+rax] - mov r12,QWORD PTR[96+rax] - mov rbp,QWORD PTR[104+rax] - mov rbx,QWORD PTR[112+rax] - mov rdi,QWORD PTR[120+rax] - mov rsi,QWORD PTR[128+rax] - - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - -$L$in_prologue:: - lea rax,QWORD PTR[136+rax] - mov QWORD PTR[152+r8],rax - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel _mul_1x1 - DD imagerel $L$end_mul_1x1 - DD imagerel $L$SEH_info_1x1 - - DD imagerel $L$vanilla_mul_2x2 - DD imagerel $L$end_mul_2x2 - DD imagerel $L$SEH_info_2x2 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_1x1:: -DB 001h,007h,002h,000h -DB 007h,001h,011h,000h -$L$SEH_info_2x2:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont.asm deleted file mode 100644 index 2b46716247f87d..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont.asm +++ /dev/null @@ -1,1019 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC bn_mul_mont - -ALIGN 16 -bn_mul_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp - test r9d,3 - jnz $L$mul_enter - cmp r9d,8 - jb $L$mul_enter - cmp rdx,rsi - jne $L$mul4x_enter - test r9d,7 - jz $L$sqr8x_enter - jmp $L$mul4x_enter - -ALIGN 16 -$L$mul_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-16))+r9*8+rsp] - neg r9 - and r10,-1024 - - - - - - - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk - jmp $L$mul_page_walk_done - -ALIGN 16 -$L$mul_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk -$L$mul_page_walk_done:: - - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul_body:: - mov r12,rdx - mov r8,QWORD PTR[r8] - mov rbx,QWORD PTR[r12] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$1st_enter - -ALIGN 16 -$L$1st:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r11 - mov r11,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$1st_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[1+r15] - mov r10,rdx - - mul rbp - cmp r15,r9 - jne $L$1st - - add r13,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - mov r11,r10 - - xor rdx,rdx - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - jmp $L$outer -ALIGN 16 -$L$outer:: - mov rbx,QWORD PTR[r14*8+r12] - xor r15,r15 - mov rbp,r8 - mov r10,QWORD PTR[rsp] - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r10,QWORD PTR[8+rsp] - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$inner_enter - -ALIGN 16 -$L$inner:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$inner_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - lea r15,QWORD PTR[1+r15] - - mul rbp - cmp r15,r9 - jne $L$inner - - add r13,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - - xor rdx,rdx - add r13,r11 - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - cmp r14,r9 - jb $L$outer - - xor r14,r14 - mov rax,QWORD PTR[rsp] - lea rsi,QWORD PTR[rsp] - mov r15,r9 - jmp $L$sub -ALIGN 16 -$L$sub:: sbb rax,QWORD PTR[r14*8+rcx] - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[8+r14*8+rsi] - lea r14,QWORD PTR[1+r14] - dec r15 - jnz $L$sub - - sbb rax,0 - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - mov r15,r9 - or rsi,rcx -ALIGN 16 -$L$copy:: - mov rax,QWORD PTR[r14*8+rsi] - mov QWORD PTR[r14*8+rsp],r14 - mov QWORD PTR[r14*8+rdi],rax - lea r14,QWORD PTR[1+r14] - sub r15,1 - jnz $L$copy - - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul_mont:: -bn_mul_mont ENDP - -ALIGN 16 -bn_mul4x_mont PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul4x_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp -$L$mul4x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-32))+r9*8+rsp] - neg r9 - and r10,-1024 - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul4x_page_walk - jmp $L$mul4x_page_walk_done - -$L$mul4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul4x_page_walk -$L$mul4x_page_walk_done:: - - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul4x_body:: - mov QWORD PTR[16+r9*8+rsp],rdi - mov r12,rdx - mov r8,QWORD PTR[r8] - mov rbx,QWORD PTR[r12] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[4+r15] - adc rdx,0 - mov QWORD PTR[rsp],rdi - mov r13,rdx - jmp $L$1st4x -ALIGN 16 -$L$1st4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[4+r15] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[((-16))+r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-32))+r15*8+rsp],rdi - mov r13,rdx - cmp r15,r9 - jb $L$1st4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - xor rdi,rdi - add r13,r10 - adc rdi,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov QWORD PTR[r15*8+rsp],rdi - - lea r14,QWORD PTR[1+r14] -ALIGN 4 -$L$outer4x:: - mov rbx,QWORD PTR[r14*8+r12] - xor r15,r15 - mov r10,QWORD PTR[rsp] - mov rbp,r8 - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+rsp] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[4+r15] - adc rdx,0 - mov QWORD PTR[rsp],rdi - mov r13,rdx - jmp $L$inner4x -ALIGN 16 -$L$inner4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[((-16))+r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r15*8+rsp] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r15*8+rsp] - adc rdx,0 - lea r15,QWORD PTR[4+r15] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[((-16))+r15*8+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-32))+r15*8+rsp],rdi - mov r13,rdx - cmp r15,r9 - jb $L$inner4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+r15*8+rcx] - adc rdx,0 - add r10,QWORD PTR[((-16))+r15*8+rsp] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*8+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r15*8+rsp],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+r15*8+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r15*8+rsp] - adc rdx,0 - lea r14,QWORD PTR[1+r14] - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],rdi - mov r13,rdx - - xor rdi,rdi - add r13,r10 - adc rdi,0 - add r13,QWORD PTR[r9*8+rsp] - adc rdi,0 - mov QWORD PTR[((-8))+r15*8+rsp],r13 - mov QWORD PTR[r15*8+rsp],rdi - - cmp r14,r9 - jb $L$outer4x - mov rdi,QWORD PTR[16+r9*8+rsp] - mov rax,QWORD PTR[rsp] - pxor xmm0,xmm0 - mov rdx,QWORD PTR[8+rsp] - shr r9,2 - lea rsi,QWORD PTR[rsp] - xor r14,r14 - - sub rax,QWORD PTR[rcx] - mov rbx,QWORD PTR[16+rsi] - mov rbp,QWORD PTR[24+rsi] - sbb rdx,QWORD PTR[8+rcx] - lea r15,QWORD PTR[((-1))+r9] - jmp $L$sub4x -ALIGN 16 -$L$sub4x:: - mov QWORD PTR[r14*8+rdi],rax - mov QWORD PTR[8+r14*8+rdi],rdx - sbb rbx,QWORD PTR[16+r14*8+rcx] - mov rax,QWORD PTR[32+r14*8+rsi] - mov rdx,QWORD PTR[40+r14*8+rsi] - sbb rbp,QWORD PTR[24+r14*8+rcx] - mov QWORD PTR[16+r14*8+rdi],rbx - mov QWORD PTR[24+r14*8+rdi],rbp - sbb rax,QWORD PTR[32+r14*8+rcx] - mov rbx,QWORD PTR[48+r14*8+rsi] - mov rbp,QWORD PTR[56+r14*8+rsi] - sbb rdx,QWORD PTR[40+r14*8+rcx] - lea r14,QWORD PTR[4+r14] - dec r15 - jnz $L$sub4x - - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[32+r14*8+rsi] - sbb rbx,QWORD PTR[16+r14*8+rcx] - mov QWORD PTR[8+r14*8+rdi],rdx - sbb rbp,QWORD PTR[24+r14*8+rcx] - mov QWORD PTR[16+r14*8+rdi],rbx - - sbb rax,0 - mov QWORD PTR[24+r14*8+rdi],rbp - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - lea r15,QWORD PTR[((-1))+r9] - or rsi,rcx - - movdqu xmm1,XMMWORD PTR[rsi] - movdqa XMMWORD PTR[rsp],xmm0 - movdqu XMMWORD PTR[rdi],xmm1 - jmp $L$copy4x -ALIGN 16 -$L$copy4x:: - movdqu xmm2,XMMWORD PTR[16+r14*1+rsi] - movdqu xmm1,XMMWORD PTR[32+r14*1+rsi] - movdqa XMMWORD PTR[16+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[16+r14*1+rdi],xmm2 - movdqa XMMWORD PTR[32+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[32+r14*1+rdi],xmm1 - lea r14,QWORD PTR[32+r14] - dec r15 - jnz $L$copy4x - - shl r9,2 - movdqu xmm2,XMMWORD PTR[16+r14*1+rsi] - movdqa XMMWORD PTR[16+r14*1+rsp],xmm0 - movdqu XMMWORD PTR[16+r14*1+rdi],xmm2 - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul4x_mont:: -bn_mul4x_mont ENDP -EXTERN bn_sqr8x_internal:NEAR - - -ALIGN 32 -bn_sqr8x_mont PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_sqr8x_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp -$L$sqr8x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$sqr8x_prologue:: - - mov r10d,r9d - shl r9d,3 - shl r10,3+2 - neg r9 - - - - - - - lea r11,QWORD PTR[((-64))+r9*2+rsp] - mov rbp,rsp - mov r8,QWORD PTR[r8] - sub r11,rsi - and r11,4095 - cmp r10,r11 - jb $L$sqr8x_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-64))+r9*2+rbp] - jmp $L$sqr8x_sp_done - -ALIGN 32 -$L$sqr8x_sp_alt:: - lea r10,QWORD PTR[((4096-64))+r9*2] - lea rbp,QWORD PTR[((-64))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$sqr8x_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$sqr8x_page_walk - jmp $L$sqr8x_page_walk_done - -ALIGN 16 -$L$sqr8x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$sqr8x_page_walk -$L$sqr8x_page_walk_done:: - - mov r10,r9 - neg r9 - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$sqr8x_body:: - -DB 102,72,15,110,209 - pxor xmm0,xmm0 -DB 102,72,15,110,207 -DB 102,73,15,110,218 - call bn_sqr8x_internal - - - - - lea rbx,QWORD PTR[r9*1+rdi] - mov rcx,r9 - mov rdx,r9 -DB 102,72,15,126,207 - sar rcx,3+2 - jmp $L$sqr8x_sub - -ALIGN 32 -$L$sqr8x_sub:: - mov r12,QWORD PTR[rbx] - mov r13,QWORD PTR[8+rbx] - mov r14,QWORD PTR[16+rbx] - mov r15,QWORD PTR[24+rbx] - lea rbx,QWORD PTR[32+rbx] - sbb r12,QWORD PTR[rbp] - sbb r13,QWORD PTR[8+rbp] - sbb r14,QWORD PTR[16+rbp] - sbb r15,QWORD PTR[24+rbp] - lea rbp,QWORD PTR[32+rbp] - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - lea rdi,QWORD PTR[32+rdi] - inc rcx - jnz $L$sqr8x_sub - - sbb rax,0 - lea rbx,QWORD PTR[r9*1+rbx] - lea rdi,QWORD PTR[r9*1+rdi] - -DB 102,72,15,110,200 - pxor xmm0,xmm0 - pshufd xmm1,xmm1,0 - mov rsi,QWORD PTR[40+rsp] - jmp $L$sqr8x_cond_copy - -ALIGN 32 -$L$sqr8x_cond_copy:: - movdqa xmm2,XMMWORD PTR[rbx] - movdqa xmm3,XMMWORD PTR[16+rbx] - lea rbx,QWORD PTR[32+rbx] - movdqu xmm4,XMMWORD PTR[rdi] - movdqu xmm5,XMMWORD PTR[16+rdi] - lea rdi,QWORD PTR[32+rdi] - movdqa XMMWORD PTR[(-32)+rbx],xmm0 - movdqa XMMWORD PTR[(-16)+rbx],xmm0 - movdqa XMMWORD PTR[(-32)+rdx*1+rbx],xmm0 - movdqa XMMWORD PTR[(-16)+rdx*1+rbx],xmm0 - pcmpeqd xmm0,xmm1 - pand xmm2,xmm1 - pand xmm3,xmm1 - pand xmm4,xmm0 - pand xmm5,xmm0 - pxor xmm0,xmm0 - por xmm4,xmm2 - por xmm5,xmm3 - movdqu XMMWORD PTR[(-32)+rdi],xmm4 - movdqu XMMWORD PTR[(-16)+rdi],xmm5 - add r9,32 - jnz $L$sqr8x_cond_copy - - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$sqr8x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_sqr8x_mont:: -bn_sqr8x_mont ENDP -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -DB 54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -ALIGN 16 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -mul_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov r10,QWORD PTR[192+r8] - mov rax,QWORD PTR[8+r10*8+rax] - - jmp $L$common_pop_regs -mul_handler ENDP - - -ALIGN 16 -sqr_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_pop_regs - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[8+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[40+rax] - -$L$common_pop_regs:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -sqr_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_bn_mul_mont - DD imagerel $L$SEH_end_bn_mul_mont - DD imagerel $L$SEH_info_bn_mul_mont - - DD imagerel $L$SEH_begin_bn_mul4x_mont - DD imagerel $L$SEH_end_bn_mul4x_mont - DD imagerel $L$SEH_info_bn_mul4x_mont - - DD imagerel $L$SEH_begin_bn_sqr8x_mont - DD imagerel $L$SEH_end_bn_sqr8x_mont - DD imagerel $L$SEH_info_bn_sqr8x_mont -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_bn_mul_mont:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul_body,imagerel $L$mul_epilogue -$L$SEH_info_bn_mul4x_mont:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul4x_body,imagerel $L$mul4x_epilogue -$L$SEH_info_bn_sqr8x_mont:: -DB 9,0,0,0 - DD imagerel sqr_handler - DD imagerel $L$sqr8x_prologue,imagerel $L$sqr8x_body,imagerel $L$sqr8x_epilogue -ALIGN 8 - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm b/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm deleted file mode 100644 index a1cd3dd1b6606e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm +++ /dev/null @@ -1,2550 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC bn_mul_mont_gather5 - -ALIGN 64 -bn_mul_mont_gather5 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul_mont_gather5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov r9d,r9d - mov rax,rsp - test r9d,7 - jnz $L$mul_enter - jmp $L$mul4x_enter - -ALIGN 16 -$L$mul_enter:: - movd xmm5,DWORD PTR[56+rsp] - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - neg r9 - mov r11,rsp - lea r10,QWORD PTR[((-280))+r9*8+rsp] - neg r9 - and r10,-1024 - - - - - - - - sub r11,r10 - and r11,-4096 - lea rsp,QWORD PTR[r11*1+r10] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk - jmp $L$mul_page_walk_done - -$L$mul_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r11,QWORD PTR[rsp] - cmp rsp,r10 - ja $L$mul_page_walk -$L$mul_page_walk_done:: - - lea r10,QWORD PTR[$L$inc] - mov QWORD PTR[8+r9*8+rsp],rax -$L$mul_body:: - - lea r12,QWORD PTR[128+rdx] - movdqa xmm0,XMMWORD PTR[r10] - movdqa xmm1,XMMWORD PTR[16+r10] - lea r10,QWORD PTR[((24-112))+r9*8+rsp] - and r10,-16 - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 -DB 067h - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[112+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[128+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[144+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[160+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[176+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[192+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[208+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[224+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[240+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[256+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[272+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[288+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[304+r10],xmm0 - - paddd xmm3,xmm2 -DB 067h - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[320+r10],xmm1 - - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[336+r10],xmm2 - pand xmm0,XMMWORD PTR[64+r12] - - pand xmm1,XMMWORD PTR[80+r12] - pand xmm2,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[352+r10],xmm3 - pand xmm3,XMMWORD PTR[112+r12] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-128))+r12] - movdqa xmm5,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - pand xmm4,XMMWORD PTR[112+r10] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm5,XMMWORD PTR[128+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[144+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[160+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-64))+r12] - movdqa xmm5,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - pand xmm4,XMMWORD PTR[176+r10] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm5,XMMWORD PTR[192+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[208+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[224+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[r12] - movdqa xmm5,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - pand xmm4,XMMWORD PTR[240+r10] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm5,XMMWORD PTR[256+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[272+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[288+r10] - por xmm0,xmm2 - por xmm1,xmm3 - por xmm0,xmm1 - pshufd xmm1,xmm0,04eh - por xmm0,xmm1 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov r8,QWORD PTR[r8] - mov rax,QWORD PTR[rsi] - - xor r14,r14 - xor r15,r15 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$1st_enter - -ALIGN 16 -$L$1st:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r11 - mov r11,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$1st_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - lea r15,QWORD PTR[1+r15] - mov r10,rdx - - mul rbp - cmp r15,r9 - jne $L$1st - - - add r13,rax - adc rdx,0 - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r9*8+rsp],r13 - mov r13,rdx - mov r11,r10 - - xor rdx,rdx - add r13,r11 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - jmp $L$outer -ALIGN 16 -$L$outer:: - lea rdx,QWORD PTR[((24+128))+r9*8+rsp] - and rdx,-16 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r12] - movdqa xmm1,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm0,XMMWORD PTR[((-128))+rdx] - pand xmm1,XMMWORD PTR[((-112))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r12] - movdqa xmm1,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm0,XMMWORD PTR[((-64))+rdx] - pand xmm1,XMMWORD PTR[((-48))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r12] - movdqa xmm1,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm0,XMMWORD PTR[rdx] - pand xmm1,XMMWORD PTR[16+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r12] - movdqa xmm1,XMMWORD PTR[80+r12] - movdqa xmm2,XMMWORD PTR[96+r12] - movdqa xmm3,XMMWORD PTR[112+r12] - pand xmm0,XMMWORD PTR[64+rdx] - pand xmm1,XMMWORD PTR[80+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - lea r12,QWORD PTR[256+r12] - - mov rax,QWORD PTR[rsi] -DB 102,72,15,126,195 - - xor r15,r15 - mov rbp,r8 - mov r10,QWORD PTR[rsp] - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+rsi] - adc rdx,0 - mov r10,QWORD PTR[8+rsp] - mov r13,rdx - - lea r15,QWORD PTR[1+r15] - jmp $L$inner_enter - -ALIGN 16 -$L$inner:: - add r13,rax - mov rax,QWORD PTR[r15*8+rsi] - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r15*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r15*8+rsp],r13 - mov r13,rdx - -$L$inner_enter:: - mul rbx - add r11,rax - mov rax,QWORD PTR[r15*8+rcx] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - lea r15,QWORD PTR[1+r15] - - mul rbp - cmp r15,r9 - jne $L$inner - - add r13,rax - adc rdx,0 - add r13,r10 - mov r10,QWORD PTR[r9*8+rsp] - adc rdx,0 - mov QWORD PTR[((-16))+r9*8+rsp],r13 - mov r13,rdx - - xor rdx,rdx - add r13,r11 - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r9*8+rsp],r13 - mov QWORD PTR[r9*8+rsp],rdx - - lea r14,QWORD PTR[1+r14] - cmp r14,r9 - jb $L$outer - - xor r14,r14 - mov rax,QWORD PTR[rsp] - lea rsi,QWORD PTR[rsp] - mov r15,r9 - jmp $L$sub -ALIGN 16 -$L$sub:: sbb rax,QWORD PTR[r14*8+rcx] - mov QWORD PTR[r14*8+rdi],rax - mov rax,QWORD PTR[8+r14*8+rsi] - lea r14,QWORD PTR[1+r14] - dec r15 - jnz $L$sub - - sbb rax,0 - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - mov r15,r9 - or rsi,rcx -ALIGN 16 -$L$copy:: - mov rax,QWORD PTR[r14*8+rsi] - mov QWORD PTR[r14*8+rsp],r14 - mov QWORD PTR[r14*8+rdi],rax - lea r14,QWORD PTR[1+r14] - sub r15,1 - jnz $L$copy - - mov rsi,QWORD PTR[8+r9*8+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul_mont_gather5:: -bn_mul_mont_gather5 ENDP - -ALIGN 32 -bn_mul4x_mont_gather5 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_mul4x_mont_gather5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -DB 067h - mov rax,rsp -$L$mul4x_enter:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$mul4x_prologue:: - -DB 067h - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - - - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$mul4xsp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$mul4xsp_done - -ALIGN 32 -$L$mul4xsp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$mul4xsp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mul4x_page_walk - jmp $L$mul4x_page_walk_done - -$L$mul4x_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$mul4x_page_walk -$L$mul4x_page_walk_done:: - - neg r9 - - mov QWORD PTR[40+rsp],rax -$L$mul4x_body:: - - call mul4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$mul4x_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_mul4x_mont_gather5:: -bn_mul4x_mont_gather5 ENDP - - -ALIGN 32 -mul4x_internal PROC PRIVATE - shl r9,5 - movd xmm5,DWORD PTR[56+rax] - lea rax,QWORD PTR[$L$inc] - lea r13,QWORD PTR[128+r9*1+rdx] - shr r9,5 - movdqa xmm0,XMMWORD PTR[rax] - movdqa xmm1,XMMWORD PTR[16+rax] - lea r10,QWORD PTR[((88-112))+r9*1+rsp] - lea r12,QWORD PTR[128+rdx] - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 -DB 067h,067h - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 -DB 067h - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[112+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[128+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[144+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[160+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[176+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[192+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[208+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[224+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[240+r10],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[256+r10],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[272+r10],xmm2 - movdqa xmm2,xmm4 - - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[288+r10],xmm3 - movdqa xmm3,xmm4 - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[304+r10],xmm0 - - paddd xmm3,xmm2 -DB 067h - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[320+r10],xmm1 - - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[336+r10],xmm2 - pand xmm0,XMMWORD PTR[64+r12] - - pand xmm1,XMMWORD PTR[80+r12] - pand xmm2,XMMWORD PTR[96+r12] - movdqa XMMWORD PTR[352+r10],xmm3 - pand xmm3,XMMWORD PTR[112+r12] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-128))+r12] - movdqa xmm5,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - pand xmm4,XMMWORD PTR[112+r10] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm5,XMMWORD PTR[128+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[144+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[160+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[((-64))+r12] - movdqa xmm5,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - pand xmm4,XMMWORD PTR[176+r10] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm5,XMMWORD PTR[192+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[208+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[224+r10] - por xmm0,xmm2 - por xmm1,xmm3 - movdqa xmm4,XMMWORD PTR[r12] - movdqa xmm5,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - pand xmm4,XMMWORD PTR[240+r10] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm5,XMMWORD PTR[256+r10] - por xmm0,xmm4 - pand xmm2,XMMWORD PTR[272+r10] - por xmm1,xmm5 - pand xmm3,XMMWORD PTR[288+r10] - por xmm0,xmm2 - por xmm1,xmm3 - por xmm0,xmm1 - pshufd xmm1,xmm0,04eh - por xmm0,xmm1 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov QWORD PTR[((16+8))+rsp],r13 - mov QWORD PTR[((56+8))+rsp],rdi - - mov r8,QWORD PTR[r8] - mov rax,QWORD PTR[rsi] - lea rsi,QWORD PTR[r9*1+rsi] - neg r9 - - mov rbp,r8 - mul rbx - mov r10,rax - mov rax,QWORD PTR[rcx] - - imul rbp,r10 - lea r14,QWORD PTR[((64+8))+rsp] - mov r11,rdx - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+r9*1+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r9*1+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[32+r9] - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[r14],rdi - mov r13,rdx - jmp $L$1st4x - -ALIGN 32 -$L$1st4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-8))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r15*1+rsi] - adc rdx,0 - add rdi,r11 - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[r14],rdi - mov r13,rdx - - add r15,32 - jnz $L$1st4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r9*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov r13,rdx - - lea rcx,QWORD PTR[r9*1+rcx] - - xor rdi,rdi - add r13,r10 - adc rdi,0 - mov QWORD PTR[((-8))+r14],r13 - - jmp $L$outer4x - -ALIGN 32 -$L$outer4x:: - lea rdx,QWORD PTR[((16+128))+r14] - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r12] - movdqa xmm1,XMMWORD PTR[((-112))+r12] - movdqa xmm2,XMMWORD PTR[((-96))+r12] - movdqa xmm3,XMMWORD PTR[((-80))+r12] - pand xmm0,XMMWORD PTR[((-128))+rdx] - pand xmm1,XMMWORD PTR[((-112))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r12] - movdqa xmm1,XMMWORD PTR[((-48))+r12] - movdqa xmm2,XMMWORD PTR[((-32))+r12] - movdqa xmm3,XMMWORD PTR[((-16))+r12] - pand xmm0,XMMWORD PTR[((-64))+rdx] - pand xmm1,XMMWORD PTR[((-48))+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r12] - movdqa xmm1,XMMWORD PTR[16+r12] - movdqa xmm2,XMMWORD PTR[32+r12] - movdqa xmm3,XMMWORD PTR[48+r12] - pand xmm0,XMMWORD PTR[rdx] - pand xmm1,XMMWORD PTR[16+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r12] - movdqa xmm1,XMMWORD PTR[80+r12] - movdqa xmm2,XMMWORD PTR[96+r12] - movdqa xmm3,XMMWORD PTR[112+r12] - pand xmm0,XMMWORD PTR[64+rdx] - pand xmm1,XMMWORD PTR[80+rdx] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rdx] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rdx] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - lea r12,QWORD PTR[256+r12] -DB 102,72,15,126,195 - - mov r10,QWORD PTR[r9*1+r14] - mov rbp,r8 - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - - imul rbp,r10 - mov r11,rdx - mov QWORD PTR[r14],rdi - - lea r14,QWORD PTR[r9*1+r14] - - mul rbp - add r10,rax - mov rax,QWORD PTR[8+r9*1+rsi] - adc rdx,0 - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r9*1+rsi] - adc rdx,0 - add rdi,r11 - lea r15,QWORD PTR[32+r9] - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov r13,rdx - jmp $L$inner4x - -ALIGN 32 -$L$inner4x:: - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - adc rdx,0 - add r10,QWORD PTR[16+r14] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-32))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[((-8))+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r15*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov r13,rdx - - mul rbx - add r10,rax - mov rax,QWORD PTR[rcx] - adc rdx,0 - add r10,QWORD PTR[r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[8+r15*1+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-16))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,QWORD PTR[8+rcx] - adc rdx,0 - add r11,QWORD PTR[8+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[16+r15*1+rsi] - adc rdx,0 - add rdi,r11 - lea rcx,QWORD PTR[32+rcx] - adc rdx,0 - mov QWORD PTR[((-8))+r14],r13 - mov r13,rdx - - add r15,32 - jnz $L$inner4x - - mul rbx - add r10,rax - mov rax,QWORD PTR[((-16))+rcx] - adc rdx,0 - add r10,QWORD PTR[16+r14] - lea r14,QWORD PTR[32+r14] - adc rdx,0 - mov r11,rdx - - mul rbp - add r13,rax - mov rax,QWORD PTR[((-8))+rsi] - adc rdx,0 - add r13,r10 - adc rdx,0 - mov QWORD PTR[((-32))+r14],rdi - mov rdi,rdx - - mul rbx - add r11,rax - mov rax,rbp - mov rbp,QWORD PTR[((-8))+rcx] - adc rdx,0 - add r11,QWORD PTR[((-8))+r14] - adc rdx,0 - mov r10,rdx - - mul rbp - add rdi,rax - mov rax,QWORD PTR[r9*1+rsi] - adc rdx,0 - add rdi,r11 - adc rdx,0 - mov QWORD PTR[((-24))+r14],r13 - mov r13,rdx - - mov QWORD PTR[((-16))+r14],rdi - lea rcx,QWORD PTR[r9*1+rcx] - - xor rdi,rdi - add r13,r10 - adc rdi,0 - add r13,QWORD PTR[r14] - adc rdi,0 - mov QWORD PTR[((-8))+r14],r13 - - cmp r12,QWORD PTR[((16+8))+rsp] - jb $L$outer4x - xor rax,rax - sub rbp,r13 - adc r15,r15 - or rdi,r15 - sub rax,rdi - lea rbx,QWORD PTR[r9*1+r14] - mov r12,QWORD PTR[rcx] - lea rbp,QWORD PTR[rcx] - mov rcx,r9 - sar rcx,3+2 - mov rdi,QWORD PTR[((56+8))+rsp] - dec r12 - xor r10,r10 - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqr4x_sub_entry -mul4x_internal ENDP -PUBLIC bn_power5 - -ALIGN 32 -bn_power5 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_power5:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$power5_prologue:: - - shl r9d,3 - lea r10d,DWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$pwr_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$pwr_sp_done - -ALIGN 32 -$L$pwr_sp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$pwr_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwr_page_walk - jmp $L$pwr_page_walk_done - -$L$pwr_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$pwr_page_walk -$L$pwr_page_walk_done:: - - mov r10,r9 - neg r9 - - - - - - - - - - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$power5_body:: -DB 102,72,15,110,207 -DB 102,72,15,110,209 -DB 102,73,15,110,218 -DB 102,72,15,110,226 - - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - call __bn_sqr8x_internal - call __bn_post4x_internal - -DB 102,72,15,126,209 -DB 102,72,15,126,226 - mov rdi,rsi - mov rax,QWORD PTR[40+rsp] - lea r8,QWORD PTR[32+rsp] - - call mul4x_internal - - mov rsi,QWORD PTR[40+rsp] - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$power5_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_power5:: -bn_power5 ENDP - -PUBLIC bn_sqr8x_internal - - -ALIGN 32 -bn_sqr8x_internal PROC PUBLIC -__bn_sqr8x_internal:: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - lea rbp,QWORD PTR[32+r10] - lea rsi,QWORD PTR[r9*1+rsi] - - mov rcx,r9 - - - mov r14,QWORD PTR[((-32))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rbp*1+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rbp*1+rsi] - mov r15,rax - - mul r14 - mov r10,rax - mov rax,rbx - mov r11,rdx - mov QWORD PTR[((-24))+rbp*1+rdi],r10 - - mul r14 - add r11,rax - mov rax,rbx - adc rdx,0 - mov QWORD PTR[((-16))+rbp*1+rdi],r11 - mov r10,rdx - - - mov rbx,QWORD PTR[((-8))+rbp*1+rsi] - mul r15 - mov r12,rax - mov rax,rbx - mov r13,rdx - - lea rcx,QWORD PTR[rbp] - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - jmp $L$sqr4x_1st - -ALIGN 32 -$L$sqr4x_1st:: - mov rbx,QWORD PTR[rcx*1+rsi] - mul r15 - add r13,rax - mov rax,rbx - mov r12,rdx - adc r12,0 - - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[8+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[rcx*1+rdi],r11 - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - mov rbx,QWORD PTR[16+rcx*1+rsi] - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - - mul r15 - add r13,rax - mov rax,rbx - mov QWORD PTR[8+rcx*1+rdi],r10 - mov r12,rdx - adc r12,0 - - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[24+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[16+rcx*1+rdi],r11 - mov r13,rdx - adc r13,0 - lea rcx,QWORD PTR[32+rcx] - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - - cmp rcx,0 - jne $L$sqr4x_1st - - mul r15 - add r13,rax - lea rbp,QWORD PTR[16+rbp] - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - jmp $L$sqr4x_outer - -ALIGN 32 -$L$sqr4x_outer:: - mov r14,QWORD PTR[((-32))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rbp*1+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rbp*1+rsi] - mov r15,rax - - mul r14 - mov r10,QWORD PTR[((-24))+rbp*1+rdi] - add r10,rax - mov rax,rbx - adc rdx,0 - mov QWORD PTR[((-24))+rbp*1+rdi],r10 - mov r11,rdx - - mul r14 - add r11,rax - mov rax,rbx - adc rdx,0 - add r11,QWORD PTR[((-16))+rbp*1+rdi] - mov r10,rdx - adc r10,0 - mov QWORD PTR[((-16))+rbp*1+rdi],r11 - - xor r12,r12 - - mov rbx,QWORD PTR[((-8))+rbp*1+rsi] - mul r15 - add r12,rax - mov rax,rbx - adc rdx,0 - add r12,QWORD PTR[((-8))+rbp*1+rdi] - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - adc rdx,0 - add r10,r12 - mov r11,rdx - adc r11,0 - mov QWORD PTR[((-8))+rbp*1+rdi],r10 - - lea rcx,QWORD PTR[rbp] - jmp $L$sqr4x_inner - -ALIGN 32 -$L$sqr4x_inner:: - mov rbx,QWORD PTR[rcx*1+rsi] - mul r15 - add r13,rax - mov rax,rbx - mov r12,rdx - adc r12,0 - add r13,QWORD PTR[rcx*1+rdi] - adc r12,0 - -DB 067h - mul r14 - add r11,rax - mov rax,rbx - mov rbx,QWORD PTR[8+rcx*1+rsi] - mov r10,rdx - adc r10,0 - add r11,r13 - adc r10,0 - - mul r15 - add r12,rax - mov QWORD PTR[rcx*1+rdi],r11 - mov rax,rbx - mov r13,rdx - adc r13,0 - add r12,QWORD PTR[8+rcx*1+rdi] - lea rcx,QWORD PTR[16+rcx] - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - adc rdx,0 - add r10,r12 - mov r11,rdx - adc r11,0 - mov QWORD PTR[((-8))+rcx*1+rdi],r10 - - cmp rcx,0 - jne $L$sqr4x_inner - -DB 067h - mul r15 - add r13,rax - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - - add rbp,16 - jnz $L$sqr4x_outer - - - mov r14,QWORD PTR[((-32))+rsi] - lea rdi,QWORD PTR[((48+8))+r9*2+rsp] - mov rax,QWORD PTR[((-24))+rsi] - lea rdi,QWORD PTR[((-32))+rbp*1+rdi] - mov rbx,QWORD PTR[((-16))+rsi] - mov r15,rax - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - - mul r14 - add r11,rax - mov rax,rbx - mov QWORD PTR[((-24))+rdi],r10 - mov r10,rdx - adc r10,0 - add r11,r13 - mov rbx,QWORD PTR[((-8))+rsi] - adc r10,0 - - mul r15 - add r12,rax - mov rax,rbx - mov QWORD PTR[((-16))+rdi],r11 - mov r13,rdx - adc r13,0 - - mul r14 - add r10,rax - mov rax,rbx - mov r11,rdx - adc r11,0 - add r10,r12 - adc r11,0 - mov QWORD PTR[((-8))+rdi],r10 - - mul r15 - add r13,rax - mov rax,QWORD PTR[((-16))+rsi] - adc rdx,0 - add r13,r11 - adc rdx,0 - - mov QWORD PTR[rdi],r13 - mov r12,rdx - mov QWORD PTR[8+rdi],rdx - - mul rbx - add rbp,16 - xor r14,r14 - sub rbp,r9 - xor r15,r15 - - add rax,r12 - adc rdx,0 - mov QWORD PTR[8+rdi],rax - mov QWORD PTR[16+rdi],rdx - mov QWORD PTR[24+rdi],r15 - - mov rax,QWORD PTR[((-16))+rbp*1+rsi] - lea rdi,QWORD PTR[((48+8))+rsp] - xor r10,r10 - mov r11,QWORD PTR[8+rdi] - - lea r12,QWORD PTR[r10*2+r14] - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[16+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[24+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rbp*1+rsi] - mov QWORD PTR[rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[8+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[32+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[40+rdi] - adc rbx,rax - mov rax,QWORD PTR[rbp*1+rsi] - mov QWORD PTR[16+rdi],rbx - adc r8,rdx - lea rbp,QWORD PTR[16+rbp] - mov QWORD PTR[24+rdi],r8 - sbb r15,r15 - lea rdi,QWORD PTR[64+rdi] - jmp $L$sqr4x_shift_n_add - -ALIGN 32 -$L$sqr4x_shift_n_add:: - lea r12,QWORD PTR[r10*2+r14] - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[((-16))+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[((-8))+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rbp*1+rsi] - mov QWORD PTR[((-32))+rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-24))+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[8+rdi] - adc rbx,rax - mov rax,QWORD PTR[rbp*1+rsi] - mov QWORD PTR[((-16))+rdi],rbx - adc r8,rdx - - lea r12,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-8))+rdi],r8 - sbb r15,r15 - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[16+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[24+rdi] - adc r12,rax - mov rax,QWORD PTR[8+rbp*1+rsi] - mov QWORD PTR[rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[8+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mov r10,QWORD PTR[32+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[40+rdi] - adc rbx,rax - mov rax,QWORD PTR[16+rbp*1+rsi] - mov QWORD PTR[16+rdi],rbx - adc r8,rdx - mov QWORD PTR[24+rdi],r8 - sbb r15,r15 - lea rdi,QWORD PTR[64+rdi] - add rbp,32 - jnz $L$sqr4x_shift_n_add - - lea r12,QWORD PTR[r10*2+r14] -DB 067h - shr r10,63 - lea r13,QWORD PTR[r11*2+rcx] - shr r11,63 - or r13,r10 - mov r10,QWORD PTR[((-16))+rdi] - mov r14,r11 - mul rax - neg r15 - mov r11,QWORD PTR[((-8))+rdi] - adc r12,rax - mov rax,QWORD PTR[((-8))+rsi] - mov QWORD PTR[((-32))+rdi],r12 - adc r13,rdx - - lea rbx,QWORD PTR[r10*2+r14] - mov QWORD PTR[((-24))+rdi],r13 - sbb r15,r15 - shr r10,63 - lea r8,QWORD PTR[r11*2+rcx] - shr r11,63 - or r8,r10 - mul rax - neg r15 - adc rbx,rax - adc r8,rdx - mov QWORD PTR[((-16))+rdi],rbx - mov QWORD PTR[((-8))+rdi],r8 -DB 102,72,15,126,213 -__bn_sqr8x_reduction:: - xor rax,rax - lea rcx,QWORD PTR[rbp*1+r9] - lea rdx,QWORD PTR[((48+8))+r9*2+rsp] - mov QWORD PTR[((0+8))+rsp],rcx - lea rdi,QWORD PTR[((48+8))+r9*1+rsp] - mov QWORD PTR[((8+8))+rsp],rdx - neg r9 - jmp $L$8x_reduction_loop - -ALIGN 32 -$L$8x_reduction_loop:: - lea rdi,QWORD PTR[r9*1+rdi] -DB 066h - mov rbx,QWORD PTR[rdi] - mov r9,QWORD PTR[8+rdi] - mov r10,QWORD PTR[16+rdi] - mov r11,QWORD PTR[24+rdi] - mov r12,QWORD PTR[32+rdi] - mov r13,QWORD PTR[40+rdi] - mov r14,QWORD PTR[48+rdi] - mov r15,QWORD PTR[56+rdi] - mov QWORD PTR[rdx],rax - lea rdi,QWORD PTR[64+rdi] - -DB 067h - mov r8,rbx - imul rbx,QWORD PTR[((32+8))+rsp] - mov rax,QWORD PTR[rbp] - mov ecx,8 - jmp $L$8x_reduce - -ALIGN 32 -$L$8x_reduce:: - mul rbx - mov rax,QWORD PTR[8+rbp] - neg r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - mov QWORD PTR[((48-8+8))+rcx*8+rsp],rbx - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov rsi,QWORD PTR[((32+8))+rsp] - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - imul rsi,r8 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,rsi - add r15,rax - mov rax,QWORD PTR[rbp] - adc rdx,0 - add r14,r15 - mov r15,rdx - adc r15,0 - - dec ecx - jnz $L$8x_reduce - - lea rbp,QWORD PTR[64+rbp] - xor rax,rax - mov rdx,QWORD PTR[((8+8))+rsp] - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$8x_no_tail - -DB 066h - add r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - sbb rsi,rsi - - mov rbx,QWORD PTR[((48+56+8))+rsp] - mov ecx,8 - mov rax,QWORD PTR[rbp] - jmp $L$8x_tail - -ALIGN 32 -$L$8x_tail:: - mul rbx - add r8,rax - mov rax,QWORD PTR[8+rbp] - mov QWORD PTR[rdi],r8 - mov r8,rdx - adc r8,0 - - mul rbx - add r9,rax - mov rax,QWORD PTR[16+rbp] - adc rdx,0 - add r8,r9 - lea rdi,QWORD PTR[8+rdi] - mov r9,rdx - adc r9,0 - - mul rbx - add r10,rax - mov rax,QWORD PTR[24+rbp] - adc rdx,0 - add r9,r10 - mov r10,rdx - adc r10,0 - - mul rbx - add r11,rax - mov rax,QWORD PTR[32+rbp] - adc rdx,0 - add r10,r11 - mov r11,rdx - adc r11,0 - - mul rbx - add r12,rax - mov rax,QWORD PTR[40+rbp] - adc rdx,0 - add r11,r12 - mov r12,rdx - adc r12,0 - - mul rbx - add r13,rax - mov rax,QWORD PTR[48+rbp] - adc rdx,0 - add r12,r13 - mov r13,rdx - adc r13,0 - - mul rbx - add r14,rax - mov rax,QWORD PTR[56+rbp] - adc rdx,0 - add r13,r14 - mov r14,rdx - adc r14,0 - - mul rbx - mov rbx,QWORD PTR[((48-16+8))+rcx*8+rsp] - add r15,rax - adc rdx,0 - add r14,r15 - mov rax,QWORD PTR[rbp] - mov r15,rdx - adc r15,0 - - dec ecx - jnz $L$8x_tail - - lea rbp,QWORD PTR[64+rbp] - mov rdx,QWORD PTR[((8+8))+rsp] - cmp rbp,QWORD PTR[((0+8))+rsp] - jae $L$8x_tail_done - - mov rbx,QWORD PTR[((48+56+8))+rsp] - neg rsi - mov rax,QWORD PTR[rbp] - adc r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - sbb rsi,rsi - - mov ecx,8 - jmp $L$8x_tail - -ALIGN 32 -$L$8x_tail_done:: - xor rax,rax - add r8,QWORD PTR[rdx] - adc r9,0 - adc r10,0 - adc r11,0 - adc r12,0 - adc r13,0 - adc r14,0 - adc r15,0 - adc rax,0 - - neg rsi -$L$8x_no_tail:: - adc r8,QWORD PTR[rdi] - adc r9,QWORD PTR[8+rdi] - adc r10,QWORD PTR[16+rdi] - adc r11,QWORD PTR[24+rdi] - adc r12,QWORD PTR[32+rdi] - adc r13,QWORD PTR[40+rdi] - adc r14,QWORD PTR[48+rdi] - adc r15,QWORD PTR[56+rdi] - adc rax,0 - mov rcx,QWORD PTR[((-8))+rbp] - xor rsi,rsi - -DB 102,72,15,126,213 - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 -DB 102,73,15,126,217 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - lea rdi,QWORD PTR[64+rdi] - - cmp rdi,rdx - jb $L$8x_reduction_loop - DB 0F3h,0C3h ;repret -bn_sqr8x_internal ENDP - -ALIGN 32 -__bn_post4x_internal PROC PRIVATE - mov r12,QWORD PTR[rbp] - lea rbx,QWORD PTR[r9*1+rdi] - mov rcx,r9 -DB 102,72,15,126,207 - neg rax -DB 102,72,15,126,206 - sar rcx,3+2 - dec r12 - xor r10,r10 - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] - jmp $L$sqr4x_sub_entry - -ALIGN 16 -$L$sqr4x_sub:: - mov r12,QWORD PTR[rbp] - mov r13,QWORD PTR[8+rbp] - mov r14,QWORD PTR[16+rbp] - mov r15,QWORD PTR[24+rbp] -$L$sqr4x_sub_entry:: - lea rbp,QWORD PTR[32+rbp] - not r12 - not r13 - not r14 - not r15 - and r12,rax - and r13,rax - and r14,rax - and r15,rax - - neg r10 - adc r12,QWORD PTR[rbx] - adc r13,QWORD PTR[8+rbx] - adc r14,QWORD PTR[16+rbx] - adc r15,QWORD PTR[24+rbx] - mov QWORD PTR[rdi],r12 - lea rbx,QWORD PTR[32+rbx] - mov QWORD PTR[8+rdi],r13 - sbb r10,r10 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - lea rdi,QWORD PTR[32+rdi] - - inc rcx - jnz $L$sqr4x_sub - - mov r10,r9 - neg r9 - DB 0F3h,0C3h ;repret -__bn_post4x_internal ENDP -PUBLIC bn_from_montgomery - -ALIGN 32 -bn_from_montgomery PROC PUBLIC - test DWORD PTR[48+rsp],7 - jz bn_from_mont8x - xor eax,eax - DB 0F3h,0C3h ;repret -bn_from_montgomery ENDP - - -ALIGN 32 -bn_from_mont8x PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_bn_from_mont8x:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - -DB 067h - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$from_prologue:: - - shl r9d,3 - lea r10,QWORD PTR[r9*2+r9] - neg r9 - mov r8,QWORD PTR[r8] - - - - - - - - - lea r11,QWORD PTR[((-320))+r9*2+rsp] - mov rbp,rsp - sub r11,rdi - and r11,4095 - cmp r10,r11 - jb $L$from_sp_alt - sub rbp,r11 - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - jmp $L$from_sp_done - -ALIGN 32 -$L$from_sp_alt:: - lea r10,QWORD PTR[((4096-320))+r9*2] - lea rbp,QWORD PTR[((-320))+r9*2+rbp] - sub r11,r10 - mov r10,0 - cmovc r11,r10 - sub rbp,r11 -$L$from_sp_done:: - and rbp,-64 - mov r11,rsp - sub r11,rbp - and r11,-4096 - lea rsp,QWORD PTR[rbp*1+r11] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$from_page_walk - jmp $L$from_page_walk_done - -$L$from_page_walk:: - lea rsp,QWORD PTR[((-4096))+rsp] - mov r10,QWORD PTR[rsp] - cmp rsp,rbp - ja $L$from_page_walk -$L$from_page_walk_done:: - - mov r10,r9 - neg r9 - - - - - - - - - - - mov QWORD PTR[32+rsp],r8 - mov QWORD PTR[40+rsp],rax -$L$from_body:: - mov r11,r9 - lea rax,QWORD PTR[48+rsp] - pxor xmm0,xmm0 - jmp $L$mul_by_1 - -ALIGN 32 -$L$mul_by_1:: - movdqu xmm1,XMMWORD PTR[rsi] - movdqu xmm2,XMMWORD PTR[16+rsi] - movdqu xmm3,XMMWORD PTR[32+rsi] - movdqa XMMWORD PTR[r9*1+rax],xmm0 - movdqu xmm4,XMMWORD PTR[48+rsi] - movdqa XMMWORD PTR[16+r9*1+rax],xmm0 -DB 048h,08dh,0b6h,040h,000h,000h,000h - movdqa XMMWORD PTR[rax],xmm1 - movdqa XMMWORD PTR[32+r9*1+rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm2 - movdqa XMMWORD PTR[48+r9*1+rax],xmm0 - movdqa XMMWORD PTR[32+rax],xmm3 - movdqa XMMWORD PTR[48+rax],xmm4 - lea rax,QWORD PTR[64+rax] - sub r11,64 - jnz $L$mul_by_1 - -DB 102,72,15,110,207 -DB 102,72,15,110,209 -DB 067h - mov rbp,rcx -DB 102,73,15,110,218 - call __bn_sqr8x_reduction - call __bn_post4x_internal - - pxor xmm0,xmm0 - lea rax,QWORD PTR[48+rsp] - mov rsi,QWORD PTR[40+rsp] - jmp $L$from_mont_zero - -ALIGN 32 -$L$from_mont_zero:: - movdqa XMMWORD PTR[rax],xmm0 - movdqa XMMWORD PTR[16+rax],xmm0 - movdqa XMMWORD PTR[32+rax],xmm0 - movdqa XMMWORD PTR[48+rax],xmm0 - lea rax,QWORD PTR[64+rax] - sub r9,32 - jnz $L$from_mont_zero - - mov rax,1 - mov r15,QWORD PTR[((-48))+rsi] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$from_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_from_mont8x:: -bn_from_mont8x ENDP -PUBLIC bn_get_bits5 - -ALIGN 16 -bn_get_bits5 PROC PUBLIC - lea r10,QWORD PTR[rcx] - lea r11,QWORD PTR[1+rcx] - mov ecx,edx - shr edx,4 - and ecx,15 - lea eax,DWORD PTR[((-8))+rcx] - cmp ecx,11 - cmova r10,r11 - cmova ecx,eax - movzx eax,WORD PTR[rdx*2+r10] - shr eax,cl - and eax,31 - DB 0F3h,0C3h ;repret -bn_get_bits5 ENDP - -PUBLIC bn_scatter5 - -ALIGN 16 -bn_scatter5 PROC PUBLIC - cmp edx,0 - jz $L$scatter_epilogue - lea r8,QWORD PTR[r9*8+r8] -$L$scatter:: - mov rax,QWORD PTR[rcx] - lea rcx,QWORD PTR[8+rcx] - mov QWORD PTR[r8],rax - lea r8,QWORD PTR[256+r8] - sub edx,1 - jnz $L$scatter -$L$scatter_epilogue:: - DB 0F3h,0C3h ;repret -bn_scatter5 ENDP - -PUBLIC bn_gather5 - -ALIGN 32 -bn_gather5 PROC PUBLIC -$L$SEH_begin_bn_gather5:: - -DB 04ch,08dh,014h,024h -DB 048h,081h,0ech,008h,001h,000h,000h - lea rax,QWORD PTR[$L$inc] - and rsp,-16 - - movd xmm5,r9d - movdqa xmm0,XMMWORD PTR[rax] - movdqa xmm1,XMMWORD PTR[16+rax] - lea r11,QWORD PTR[128+r8] - lea rax,QWORD PTR[128+rsp] - - pshufd xmm5,xmm5,0 - movdqa xmm4,xmm1 - movdqa xmm2,xmm1 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[(-128)+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[(-112)+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[(-96)+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[(-80)+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[(-64)+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[(-48)+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[(-32)+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[(-16)+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[16+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[32+rax],xmm2 - movdqa xmm2,xmm4 - paddd xmm1,xmm0 - pcmpeqd xmm0,xmm5 - movdqa XMMWORD PTR[48+rax],xmm3 - movdqa xmm3,xmm4 - - paddd xmm2,xmm1 - pcmpeqd xmm1,xmm5 - movdqa XMMWORD PTR[64+rax],xmm0 - movdqa xmm0,xmm4 - - paddd xmm3,xmm2 - pcmpeqd xmm2,xmm5 - movdqa XMMWORD PTR[80+rax],xmm1 - movdqa xmm1,xmm4 - - paddd xmm0,xmm3 - pcmpeqd xmm3,xmm5 - movdqa XMMWORD PTR[96+rax],xmm2 - movdqa xmm2,xmm4 - movdqa XMMWORD PTR[112+rax],xmm3 - jmp $L$gather - -ALIGN 32 -$L$gather:: - pxor xmm4,xmm4 - pxor xmm5,xmm5 - movdqa xmm0,XMMWORD PTR[((-128))+r11] - movdqa xmm1,XMMWORD PTR[((-112))+r11] - movdqa xmm2,XMMWORD PTR[((-96))+r11] - pand xmm0,XMMWORD PTR[((-128))+rax] - movdqa xmm3,XMMWORD PTR[((-80))+r11] - pand xmm1,XMMWORD PTR[((-112))+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-96))+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-80))+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[((-64))+r11] - movdqa xmm1,XMMWORD PTR[((-48))+r11] - movdqa xmm2,XMMWORD PTR[((-32))+r11] - pand xmm0,XMMWORD PTR[((-64))+rax] - movdqa xmm3,XMMWORD PTR[((-16))+r11] - pand xmm1,XMMWORD PTR[((-48))+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[((-32))+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[((-16))+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[r11] - movdqa xmm1,XMMWORD PTR[16+r11] - movdqa xmm2,XMMWORD PTR[32+r11] - pand xmm0,XMMWORD PTR[rax] - movdqa xmm3,XMMWORD PTR[48+r11] - pand xmm1,XMMWORD PTR[16+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[32+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[48+rax] - por xmm4,xmm2 - por xmm5,xmm3 - movdqa xmm0,XMMWORD PTR[64+r11] - movdqa xmm1,XMMWORD PTR[80+r11] - movdqa xmm2,XMMWORD PTR[96+r11] - pand xmm0,XMMWORD PTR[64+rax] - movdqa xmm3,XMMWORD PTR[112+r11] - pand xmm1,XMMWORD PTR[80+rax] - por xmm4,xmm0 - pand xmm2,XMMWORD PTR[96+rax] - por xmm5,xmm1 - pand xmm3,XMMWORD PTR[112+rax] - por xmm4,xmm2 - por xmm5,xmm3 - por xmm4,xmm5 - lea r11,QWORD PTR[256+r11] - pshufd xmm0,xmm4,04eh - por xmm0,xmm4 - movq QWORD PTR[rcx],xmm0 - lea rcx,QWORD PTR[8+rcx] - sub edx,1 - jnz $L$gather - - lea rsp,QWORD PTR[r10] - DB 0F3h,0C3h ;repret -$L$SEH_end_bn_gather5:: -bn_gather5 ENDP -ALIGN 64 -$L$inc:: - DD 0,0,1,1 - DD 2,2,2,2 -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115 -DB 99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111 -DB 114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79 -DB 71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111 -DB 112,101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -mul_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_pop_regs - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[8+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - lea r10,QWORD PTR[$L$mul_epilogue] - cmp rbx,r10 - ja $L$body_40 - - mov r10,QWORD PTR[192+r8] - mov rax,QWORD PTR[8+r10*8+rax] - - jmp $L$common_pop_regs - -$L$body_40:: - mov rax,QWORD PTR[40+rax] -$L$common_pop_regs:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -mul_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_bn_mul_mont_gather5 - DD imagerel $L$SEH_end_bn_mul_mont_gather5 - DD imagerel $L$SEH_info_bn_mul_mont_gather5 - - DD imagerel $L$SEH_begin_bn_mul4x_mont_gather5 - DD imagerel $L$SEH_end_bn_mul4x_mont_gather5 - DD imagerel $L$SEH_info_bn_mul4x_mont_gather5 - - DD imagerel $L$SEH_begin_bn_power5 - DD imagerel $L$SEH_end_bn_power5 - DD imagerel $L$SEH_info_bn_power5 - - DD imagerel $L$SEH_begin_bn_from_mont8x - DD imagerel $L$SEH_end_bn_from_mont8x - DD imagerel $L$SEH_info_bn_from_mont8x - DD imagerel $L$SEH_begin_bn_gather5 - DD imagerel $L$SEH_end_bn_gather5 - DD imagerel $L$SEH_info_bn_gather5 - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_bn_mul_mont_gather5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul_body,imagerel $L$mul_body,imagerel $L$mul_epilogue -ALIGN 8 -$L$SEH_info_bn_mul4x_mont_gather5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$mul4x_prologue,imagerel $L$mul4x_body,imagerel $L$mul4x_epilogue -ALIGN 8 -$L$SEH_info_bn_power5:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$power5_prologue,imagerel $L$power5_body,imagerel $L$power5_epilogue -ALIGN 8 -$L$SEH_info_bn_from_mont8x:: -DB 9,0,0,0 - DD imagerel mul_handler - DD imagerel $L$from_prologue,imagerel $L$from_body,imagerel $L$from_epilogue -ALIGN 8 -$L$SEH_info_bn_gather5:: -DB 001h,00bh,003h,00ah -DB 00bh,001h,021h,000h -DB 004h,0a3h,000h,000h -ALIGN 8 - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/camellia/cmll-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/camellia/cmll-x86_64.asm deleted file mode 100644 index 5e6d45157645dc..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/camellia/cmll-x86_64.asm +++ /dev/null @@ -1,2099 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - - -PUBLIC Camellia_EncryptBlock - -ALIGN 16 -Camellia_EncryptBlock PROC PUBLIC - mov eax,128 - sub eax,ecx - mov ecx,3 - adc ecx,0 - jmp $L$enc_rounds -Camellia_EncryptBlock ENDP - -PUBLIC Camellia_EncryptBlock_Rounds - -ALIGN 16 -$L$enc_rounds:: -Camellia_EncryptBlock_Rounds PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_EncryptBlock_Rounds:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$enc_prologue:: - - - mov r13,rcx - mov r14,rdx - - shl edi,6 - lea rbp,QWORD PTR[$L$Camellia_SBOX] - lea r15,QWORD PTR[rdi*1+r14] - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - bswap r8d - mov r11d,DWORD PTR[12+rsi] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_encrypt - - bswap r8d - bswap r9d - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$enc_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_EncryptBlock_Rounds:: -Camellia_EncryptBlock_Rounds ENDP - - -ALIGN 16 -_x86_64_Camellia_encrypt PROC PRIVATE - xor r9d,DWORD PTR[r14] - xor r8d,DWORD PTR[4+r14] - xor r11d,DWORD PTR[8+r14] - xor r10d,DWORD PTR[12+r14] -ALIGN 16 -$L$eloop:: - mov ebx,DWORD PTR[16+r14] - mov eax,DWORD PTR[20+r14] - - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[24+r14] - mov eax,DWORD PTR[28+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[32+r14] - mov eax,DWORD PTR[36+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[40+r14] - mov eax,DWORD PTR[44+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[48+r14] - mov eax,DWORD PTR[52+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[56+r14] - mov eax,DWORD PTR[60+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[64+r14] - mov eax,DWORD PTR[68+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - lea r14,QWORD PTR[64+r14] - cmp r14,r15 - mov edx,DWORD PTR[8+r14] - mov ecx,DWORD PTR[12+r14] - je $L$edone - - and eax,r8d - or edx,r11d - rol eax,1 - xor r10d,edx - xor r9d,eax - and ecx,r10d - or ebx,r9d - rol ecx,1 - xor r8d,ebx - xor r11d,ecx - jmp $L$eloop - -ALIGN 16 -$L$edone:: - xor eax,r10d - xor ebx,r11d - xor ecx,r8d - xor edx,r9d - - mov r8d,eax - mov r9d,ebx - mov r10d,ecx - mov r11d,edx - -DB 0f3h,0c3h -_x86_64_Camellia_encrypt ENDP - - -PUBLIC Camellia_DecryptBlock - -ALIGN 16 -Camellia_DecryptBlock PROC PUBLIC - mov eax,128 - sub eax,ecx - mov ecx,3 - adc ecx,0 - jmp $L$dec_rounds -Camellia_DecryptBlock ENDP - -PUBLIC Camellia_DecryptBlock_Rounds - -ALIGN 16 -$L$dec_rounds:: -Camellia_DecryptBlock_Rounds PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_DecryptBlock_Rounds:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$dec_prologue:: - - - mov r13,rcx - mov r15,rdx - - shl edi,6 - lea rbp,QWORD PTR[$L$Camellia_SBOX] - lea r14,QWORD PTR[rdi*1+r15] - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - bswap r8d - mov r11d,DWORD PTR[12+rsi] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_decrypt - - bswap r8d - bswap r9d - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$dec_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_DecryptBlock_Rounds:: -Camellia_DecryptBlock_Rounds ENDP - - -ALIGN 16 -_x86_64_Camellia_decrypt PROC PRIVATE - xor r9d,DWORD PTR[r14] - xor r8d,DWORD PTR[4+r14] - xor r11d,DWORD PTR[8+r14] - xor r10d,DWORD PTR[12+r14] -ALIGN 16 -$L$dloop:: - mov ebx,DWORD PTR[((-8))+r14] - mov eax,DWORD PTR[((-4))+r14] - - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-16))+r14] - mov eax,DWORD PTR[((-12))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-24))+r14] - mov eax,DWORD PTR[((-20))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-32))+r14] - mov eax,DWORD PTR[((-28))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-40))+r14] - mov eax,DWORD PTR[((-36))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-48))+r14] - mov eax,DWORD PTR[((-44))+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[((-56))+r14] - mov eax,DWORD PTR[((-52))+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - lea r14,QWORD PTR[((-64))+r14] - cmp r14,r15 - mov edx,DWORD PTR[r14] - mov ecx,DWORD PTR[4+r14] - je $L$ddone - - and eax,r8d - or edx,r11d - rol eax,1 - xor r10d,edx - xor r9d,eax - and ecx,r10d - or ebx,r9d - rol ecx,1 - xor r8d,ebx - xor r11d,ecx - - jmp $L$dloop - -ALIGN 16 -$L$ddone:: - xor ecx,r10d - xor edx,r11d - xor eax,r8d - xor ebx,r9d - - mov r8d,ecx - mov r9d,edx - mov r10d,eax - mov r11d,ebx - -DB 0f3h,0c3h -_x86_64_Camellia_decrypt ENDP -PUBLIC Camellia_Ekeygen - -ALIGN 16 -Camellia_Ekeygen PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_Ekeygen:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r13 - push r14 - push r15 -$L$key_prologue:: - - mov r15d,edi - mov r13,rdx - - mov r8d,DWORD PTR[rsi] - mov r9d,DWORD PTR[4+rsi] - mov r10d,DWORD PTR[8+rsi] - mov r11d,DWORD PTR[12+rsi] - - bswap r8d - bswap r9d - bswap r10d - bswap r11d - mov DWORD PTR[r13],r9d - mov DWORD PTR[4+r13],r8d - mov DWORD PTR[8+r13],r11d - mov DWORD PTR[12+r13],r10d - cmp r15,128 - je $L$1st128 - - mov r8d,DWORD PTR[16+rsi] - mov r9d,DWORD PTR[20+rsi] - cmp r15,192 - je $L$1st192 - mov r10d,DWORD PTR[24+rsi] - mov r11d,DWORD PTR[28+rsi] - jmp $L$1st256 -$L$1st192:: - mov r10d,r8d - mov r11d,r9d - not r10d - not r11d -$L$1st256:: - bswap r8d - bswap r9d - bswap r10d - bswap r11d - mov DWORD PTR[32+r13],r9d - mov DWORD PTR[36+r13],r8d - mov DWORD PTR[40+r13],r11d - mov DWORD PTR[44+r13],r10d - xor r9d,DWORD PTR[r13] - xor r8d,DWORD PTR[4+r13] - xor r11d,DWORD PTR[8+r13] - xor r10d,DWORD PTR[12+r13] - -$L$1st128:: - lea r14,QWORD PTR[$L$Camellia_SIGMA] - lea rbp,QWORD PTR[$L$Camellia_SBOX] - - mov ebx,DWORD PTR[r14] - mov eax,DWORD PTR[4+r14] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[8+r14] - mov eax,DWORD PTR[12+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[16+r14] - mov eax,DWORD PTR[20+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - xor r9d,DWORD PTR[r13] - xor r8d,DWORD PTR[4+r13] - xor r11d,DWORD PTR[8+r13] - xor r10d,DWORD PTR[12+r13] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[24+r14] - mov eax,DWORD PTR[28+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[32+r14] - mov eax,DWORD PTR[36+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - cmp r15,128 - jne $L$2nd256 - - lea r13,QWORD PTR[128+r13] - shl r8,32 - shl r10,32 - or r8,r9 - or r10,r11 - mov rax,QWORD PTR[((-128))+r13] - mov rbx,QWORD PTR[((-120))+r13] - mov QWORD PTR[((-112))+r13],r8 - mov QWORD PTR[((-104))+r13],r10 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[((-96))+r13],rax - mov QWORD PTR[((-88))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-80))+r13],r8 - mov QWORD PTR[((-72))+r13],r10 - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-64))+r13],r8 - mov QWORD PTR[((-56))+r13],r10 - mov r11,rax - shl rax,30 - mov r9,rbx - shr r9,34 - shr r11,34 - or rax,r9 - shl rbx,30 - or rbx,r11 - mov QWORD PTR[((-48))+r13],rax - mov QWORD PTR[((-40))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-32))+r13],r8 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[((-24))+r13],rbx - mov r11,r8 - shl r8,15 - mov r9,r10 - shr r9,49 - shr r11,49 - or r8,r9 - shl r10,15 - or r10,r11 - mov QWORD PTR[((-16))+r13],r8 - mov QWORD PTR[((-8))+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[r13],rax - mov QWORD PTR[8+r13],rbx - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[16+r13],rax - mov QWORD PTR[24+r13],rbx - mov r11,r8 - shl r8,34 - mov r9,r10 - shr r9,30 - shr r11,30 - or r8,r9 - shl r10,34 - or r10,r11 - mov QWORD PTR[32+r13],r8 - mov QWORD PTR[40+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[48+r13],rax - mov QWORD PTR[56+r13],rbx - mov r11,r8 - shl r8,17 - mov r9,r10 - shr r9,47 - shr r11,47 - or r8,r9 - shl r10,17 - or r10,r11 - mov QWORD PTR[64+r13],r8 - mov QWORD PTR[72+r13],r10 - mov eax,3 - jmp $L$done -ALIGN 16 -$L$2nd256:: - mov DWORD PTR[48+r13],r9d - mov DWORD PTR[52+r13],r8d - mov DWORD PTR[56+r13],r11d - mov DWORD PTR[60+r13],r10d - xor r9d,DWORD PTR[32+r13] - xor r8d,DWORD PTR[36+r13] - xor r11d,DWORD PTR[40+r13] - xor r10d,DWORD PTR[44+r13] - xor eax,r8d - xor ebx,r9d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[40+r14] - mov eax,DWORD PTR[44+r14] - xor ecx,edx - ror edx,8 - xor r10d,ecx - xor r11d,ecx - xor r11d,edx - xor eax,r10d - xor ebx,r11d - movzx esi,ah - movzx edi,bl - mov edx,DWORD PTR[2052+rsi*8+rbp] - mov ecx,DWORD PTR[rdi*8+rbp] - movzx esi,al - shr eax,16 - movzx edi,bh - xor edx,DWORD PTR[4+rsi*8+rbp] - shr ebx,16 - xor ecx,DWORD PTR[4+rdi*8+rbp] - movzx esi,ah - movzx edi,bl - xor edx,DWORD PTR[rsi*8+rbp] - xor ecx,DWORD PTR[2052+rdi*8+rbp] - movzx esi,al - movzx edi,bh - xor edx,DWORD PTR[2048+rsi*8+rbp] - xor ecx,DWORD PTR[2048+rdi*8+rbp] - mov ebx,DWORD PTR[48+r14] - mov eax,DWORD PTR[52+r14] - xor ecx,edx - ror edx,8 - xor r8d,ecx - xor r9d,ecx - xor r9d,edx - mov rax,QWORD PTR[r13] - mov rbx,QWORD PTR[8+r13] - mov rcx,QWORD PTR[32+r13] - mov rdx,QWORD PTR[40+r13] - mov r14,QWORD PTR[48+r13] - mov r15,QWORD PTR[56+r13] - lea r13,QWORD PTR[128+r13] - shl r8,32 - shl r10,32 - or r8,r9 - or r10,r11 - mov QWORD PTR[((-112))+r13],r8 - mov QWORD PTR[((-104))+r13],r10 - mov r11,rcx - shl rcx,15 - mov r9,rdx - shr r9,49 - shr r11,49 - or rcx,r9 - shl rdx,15 - or rdx,r11 - mov QWORD PTR[((-96))+r13],rcx - mov QWORD PTR[((-88))+r13],rdx - mov r11,r14 - shl r14,15 - mov r9,r15 - shr r9,49 - shr r11,49 - or r14,r9 - shl r15,15 - or r15,r11 - mov QWORD PTR[((-80))+r13],r14 - mov QWORD PTR[((-72))+r13],r15 - mov r11,rcx - shl rcx,15 - mov r9,rdx - shr r9,49 - shr r11,49 - or rcx,r9 - shl rdx,15 - or rdx,r11 - mov QWORD PTR[((-64))+r13],rcx - mov QWORD PTR[((-56))+r13],rdx - mov r11,r8 - shl r8,30 - mov r9,r10 - shr r9,34 - shr r11,34 - or r8,r9 - shl r10,30 - or r10,r11 - mov QWORD PTR[((-48))+r13],r8 - mov QWORD PTR[((-40))+r13],r10 - mov r11,rax - shl rax,45 - mov r9,rbx - shr r9,19 - shr r11,19 - or rax,r9 - shl rbx,45 - or rbx,r11 - mov QWORD PTR[((-32))+r13],rax - mov QWORD PTR[((-24))+r13],rbx - mov r11,r14 - shl r14,30 - mov r9,r15 - shr r9,34 - shr r11,34 - or r14,r9 - shl r15,30 - or r15,r11 - mov QWORD PTR[((-16))+r13],r14 - mov QWORD PTR[((-8))+r13],r15 - mov r11,rax - shl rax,15 - mov r9,rbx - shr r9,49 - shr r11,49 - or rax,r9 - shl rbx,15 - or rbx,r11 - mov QWORD PTR[r13],rax - mov QWORD PTR[8+r13],rbx - mov r11,rcx - shl rcx,30 - mov r9,rdx - shr r9,34 - shr r11,34 - or rcx,r9 - shl rdx,30 - or rdx,r11 - mov QWORD PTR[16+r13],rcx - mov QWORD PTR[24+r13],rdx - mov r11,r8 - shl r8,30 - mov r9,r10 - shr r9,34 - shr r11,34 - or r8,r9 - shl r10,30 - or r10,r11 - mov QWORD PTR[32+r13],r8 - mov QWORD PTR[40+r13],r10 - mov r11,rax - shl rax,17 - mov r9,rbx - shr r9,47 - shr r11,47 - or rax,r9 - shl rbx,17 - or rbx,r11 - mov QWORD PTR[48+r13],rax - mov QWORD PTR[56+r13],rbx - mov r11,r14 - shl r14,32 - mov r9,r15 - shr r9,32 - shr r11,32 - or r14,r9 - shl r15,32 - or r15,r11 - mov QWORD PTR[64+r13],r14 - mov QWORD PTR[72+r13],r15 - mov r11,rcx - shl rcx,34 - mov r9,rdx - shr r9,30 - shr r11,30 - or rcx,r9 - shl rdx,34 - or rdx,r11 - mov QWORD PTR[80+r13],rcx - mov QWORD PTR[88+r13],rdx - mov r11,r14 - shl r14,17 - mov r9,r15 - shr r9,47 - shr r11,47 - or r14,r9 - shl r15,17 - or r15,r11 - mov QWORD PTR[96+r13],r14 - mov QWORD PTR[104+r13],r15 - mov r11,rax - shl rax,34 - mov r9,rbx - shr r9,30 - shr r11,30 - or rax,r9 - shl rbx,34 - or rbx,r11 - mov QWORD PTR[112+r13],rax - mov QWORD PTR[120+r13],rbx - mov r11,r8 - shl r8,51 - mov r9,r10 - shr r9,13 - shr r11,13 - or r8,r9 - shl r10,51 - or r10,r11 - mov QWORD PTR[128+r13],r8 - mov QWORD PTR[136+r13],r10 - mov eax,4 -$L$done:: - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r13,QWORD PTR[16+rsp] - mov rbp,QWORD PTR[24+rsp] - mov rbx,QWORD PTR[32+rsp] - lea rsp,QWORD PTR[40+rsp] -$L$key_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_Ekeygen:: -Camellia_Ekeygen ENDP -ALIGN 64 -$L$Camellia_SIGMA:: - DD 03bcc908bh,0a09e667fh,04caa73b2h,0b67ae858h - DD 0e94f82beh,0c6ef372fh,0f1d36f1ch,054ff53a5h - DD 0de682d1dh,010e527fah,0b3e6c1fdh,0b05688c2h - DD 0,0,0,0 -$L$Camellia_SBOX:: - DD 070707000h,070700070h - DD 082828200h,02c2c002ch - DD 02c2c2c00h,0b3b300b3h - DD 0ececec00h,0c0c000c0h - DD 0b3b3b300h,0e4e400e4h - DD 027272700h,057570057h - DD 0c0c0c000h,0eaea00eah - DD 0e5e5e500h,0aeae00aeh - DD 0e4e4e400h,023230023h - DD 085858500h,06b6b006bh - DD 057575700h,045450045h - DD 035353500h,0a5a500a5h - DD 0eaeaea00h,0eded00edh - DD 00c0c0c00h,04f4f004fh - DD 0aeaeae00h,01d1d001dh - DD 041414100h,092920092h - DD 023232300h,086860086h - DD 0efefef00h,0afaf00afh - DD 06b6b6b00h,07c7c007ch - DD 093939300h,01f1f001fh - DD 045454500h,03e3e003eh - DD 019191900h,0dcdc00dch - DD 0a5a5a500h,05e5e005eh - DD 021212100h,00b0b000bh - DD 0ededed00h,0a6a600a6h - DD 00e0e0e00h,039390039h - DD 04f4f4f00h,0d5d500d5h - DD 04e4e4e00h,05d5d005dh - DD 01d1d1d00h,0d9d900d9h - DD 065656500h,05a5a005ah - DD 092929200h,051510051h - DD 0bdbdbd00h,06c6c006ch - DD 086868600h,08b8b008bh - DD 0b8b8b800h,09a9a009ah - DD 0afafaf00h,0fbfb00fbh - DD 08f8f8f00h,0b0b000b0h - DD 07c7c7c00h,074740074h - DD 0ebebeb00h,02b2b002bh - DD 01f1f1f00h,0f0f000f0h - DD 0cecece00h,084840084h - DD 03e3e3e00h,0dfdf00dfh - DD 030303000h,0cbcb00cbh - DD 0dcdcdc00h,034340034h - DD 05f5f5f00h,076760076h - DD 05e5e5e00h,06d6d006dh - DD 0c5c5c500h,0a9a900a9h - DD 00b0b0b00h,0d1d100d1h - DD 01a1a1a00h,004040004h - DD 0a6a6a600h,014140014h - DD 0e1e1e100h,03a3a003ah - DD 039393900h,0dede00deh - DD 0cacaca00h,011110011h - DD 0d5d5d500h,032320032h - DD 047474700h,09c9c009ch - DD 05d5d5d00h,053530053h - DD 03d3d3d00h,0f2f200f2h - DD 0d9d9d900h,0fefe00feh - DD 001010100h,0cfcf00cfh - DD 05a5a5a00h,0c3c300c3h - DD 0d6d6d600h,07a7a007ah - DD 051515100h,024240024h - DD 056565600h,0e8e800e8h - DD 06c6c6c00h,060600060h - DD 04d4d4d00h,069690069h - DD 08b8b8b00h,0aaaa00aah - DD 00d0d0d00h,0a0a000a0h - DD 09a9a9a00h,0a1a100a1h - DD 066666600h,062620062h - DD 0fbfbfb00h,054540054h - DD 0cccccc00h,01e1e001eh - DD 0b0b0b000h,0e0e000e0h - DD 02d2d2d00h,064640064h - DD 074747400h,010100010h - DD 012121200h,000000000h - DD 02b2b2b00h,0a3a300a3h - DD 020202000h,075750075h - DD 0f0f0f000h,08a8a008ah - DD 0b1b1b100h,0e6e600e6h - DD 084848400h,009090009h - DD 099999900h,0dddd00ddh - DD 0dfdfdf00h,087870087h - DD 04c4c4c00h,083830083h - DD 0cbcbcb00h,0cdcd00cdh - DD 0c2c2c200h,090900090h - DD 034343400h,073730073h - DD 07e7e7e00h,0f6f600f6h - DD 076767600h,09d9d009dh - DD 005050500h,0bfbf00bfh - DD 06d6d6d00h,052520052h - DD 0b7b7b700h,0d8d800d8h - DD 0a9a9a900h,0c8c800c8h - DD 031313100h,0c6c600c6h - DD 0d1d1d100h,081810081h - DD 017171700h,06f6f006fh - DD 004040400h,013130013h - DD 0d7d7d700h,063630063h - DD 014141400h,0e9e900e9h - DD 058585800h,0a7a700a7h - DD 03a3a3a00h,09f9f009fh - DD 061616100h,0bcbc00bch - DD 0dedede00h,029290029h - DD 01b1b1b00h,0f9f900f9h - DD 011111100h,02f2f002fh - DD 01c1c1c00h,0b4b400b4h - DD 032323200h,078780078h - DD 00f0f0f00h,006060006h - DD 09c9c9c00h,0e7e700e7h - DD 016161600h,071710071h - DD 053535300h,0d4d400d4h - DD 018181800h,0abab00abh - DD 0f2f2f200h,088880088h - DD 022222200h,08d8d008dh - DD 0fefefe00h,072720072h - DD 044444400h,0b9b900b9h - DD 0cfcfcf00h,0f8f800f8h - DD 0b2b2b200h,0acac00ach - DD 0c3c3c300h,036360036h - DD 0b5b5b500h,02a2a002ah - DD 07a7a7a00h,03c3c003ch - DD 091919100h,0f1f100f1h - DD 024242400h,040400040h - DD 008080800h,0d3d300d3h - DD 0e8e8e800h,0bbbb00bbh - DD 0a8a8a800h,043430043h - DD 060606000h,015150015h - DD 0fcfcfc00h,0adad00adh - DD 069696900h,077770077h - DD 050505000h,080800080h - DD 0aaaaaa00h,082820082h - DD 0d0d0d000h,0ecec00ech - DD 0a0a0a000h,027270027h - DD 07d7d7d00h,0e5e500e5h - DD 0a1a1a100h,085850085h - DD 089898900h,035350035h - DD 062626200h,00c0c000ch - DD 097979700h,041410041h - DD 054545400h,0efef00efh - DD 05b5b5b00h,093930093h - DD 01e1e1e00h,019190019h - DD 095959500h,021210021h - DD 0e0e0e000h,00e0e000eh - DD 0ffffff00h,04e4e004eh - DD 064646400h,065650065h - DD 0d2d2d200h,0bdbd00bdh - DD 010101000h,0b8b800b8h - DD 0c4c4c400h,08f8f008fh - DD 000000000h,0ebeb00ebh - DD 048484800h,0cece00ceh - DD 0a3a3a300h,030300030h - DD 0f7f7f700h,05f5f005fh - DD 075757500h,0c5c500c5h - DD 0dbdbdb00h,01a1a001ah - DD 08a8a8a00h,0e1e100e1h - DD 003030300h,0caca00cah - DD 0e6e6e600h,047470047h - DD 0dadada00h,03d3d003dh - DD 009090900h,001010001h - DD 03f3f3f00h,0d6d600d6h - DD 0dddddd00h,056560056h - DD 094949400h,04d4d004dh - DD 087878700h,00d0d000dh - DD 05c5c5c00h,066660066h - DD 083838300h,0cccc00cch - DD 002020200h,02d2d002dh - DD 0cdcdcd00h,012120012h - DD 04a4a4a00h,020200020h - DD 090909000h,0b1b100b1h - DD 033333300h,099990099h - DD 073737300h,04c4c004ch - DD 067676700h,0c2c200c2h - DD 0f6f6f600h,07e7e007eh - DD 0f3f3f300h,005050005h - DD 09d9d9d00h,0b7b700b7h - DD 07f7f7f00h,031310031h - DD 0bfbfbf00h,017170017h - DD 0e2e2e200h,0d7d700d7h - DD 052525200h,058580058h - DD 09b9b9b00h,061610061h - DD 0d8d8d800h,01b1b001bh - DD 026262600h,01c1c001ch - DD 0c8c8c800h,00f0f000fh - DD 037373700h,016160016h - DD 0c6c6c600h,018180018h - DD 03b3b3b00h,022220022h - DD 081818100h,044440044h - DD 096969600h,0b2b200b2h - DD 06f6f6f00h,0b5b500b5h - DD 04b4b4b00h,091910091h - DD 013131300h,008080008h - DD 0bebebe00h,0a8a800a8h - DD 063636300h,0fcfc00fch - DD 02e2e2e00h,050500050h - DD 0e9e9e900h,0d0d000d0h - DD 079797900h,07d7d007dh - DD 0a7a7a700h,089890089h - DD 08c8c8c00h,097970097h - DD 09f9f9f00h,05b5b005bh - DD 06e6e6e00h,095950095h - DD 0bcbcbc00h,0ffff00ffh - DD 08e8e8e00h,0d2d200d2h - DD 029292900h,0c4c400c4h - DD 0f5f5f500h,048480048h - DD 0f9f9f900h,0f7f700f7h - DD 0b6b6b600h,0dbdb00dbh - DD 02f2f2f00h,003030003h - DD 0fdfdfd00h,0dada00dah - DD 0b4b4b400h,03f3f003fh - DD 059595900h,094940094h - DD 078787800h,05c5c005ch - DD 098989800h,002020002h - DD 006060600h,04a4a004ah - DD 06a6a6a00h,033330033h - DD 0e7e7e700h,067670067h - DD 046464600h,0f3f300f3h - DD 071717100h,07f7f007fh - DD 0bababa00h,0e2e200e2h - DD 0d4d4d400h,09b9b009bh - DD 025252500h,026260026h - DD 0ababab00h,037370037h - DD 042424200h,03b3b003bh - DD 088888800h,096960096h - DD 0a2a2a200h,04b4b004bh - DD 08d8d8d00h,0bebe00beh - DD 0fafafa00h,02e2e002eh - DD 072727200h,079790079h - DD 007070700h,08c8c008ch - DD 0b9b9b900h,06e6e006eh - DD 055555500h,08e8e008eh - DD 0f8f8f800h,0f5f500f5h - DD 0eeeeee00h,0b6b600b6h - DD 0acacac00h,0fdfd00fdh - DD 00a0a0a00h,059590059h - DD 036363600h,098980098h - DD 049494900h,06a6a006ah - DD 02a2a2a00h,046460046h - DD 068686800h,0baba00bah - DD 03c3c3c00h,025250025h - DD 038383800h,042420042h - DD 0f1f1f100h,0a2a200a2h - DD 0a4a4a400h,0fafa00fah - DD 040404000h,007070007h - DD 028282800h,055550055h - DD 0d3d3d300h,0eeee00eeh - DD 07b7b7b00h,00a0a000ah - DD 0bbbbbb00h,049490049h - DD 0c9c9c900h,068680068h - DD 043434300h,038380038h - DD 0c1c1c100h,0a4a400a4h - DD 015151500h,028280028h - DD 0e3e3e300h,07b7b007bh - DD 0adadad00h,0c9c900c9h - DD 0f4f4f400h,0c1c100c1h - DD 077777700h,0e3e300e3h - DD 0c7c7c700h,0f4f400f4h - DD 080808000h,0c7c700c7h - DD 09e9e9e00h,09e9e009eh - DD 000e0e0e0h,038003838h - DD 000050505h,041004141h - DD 000585858h,016001616h - DD 000d9d9d9h,076007676h - DD 000676767h,0d900d9d9h - DD 0004e4e4eh,093009393h - DD 000818181h,060006060h - DD 000cbcbcbh,0f200f2f2h - DD 000c9c9c9h,072007272h - DD 0000b0b0bh,0c200c2c2h - DD 000aeaeaeh,0ab00ababh - DD 0006a6a6ah,09a009a9ah - DD 000d5d5d5h,075007575h - DD 000181818h,006000606h - DD 0005d5d5dh,057005757h - DD 000828282h,0a000a0a0h - DD 000464646h,091009191h - DD 000dfdfdfh,0f700f7f7h - DD 000d6d6d6h,0b500b5b5h - DD 000272727h,0c900c9c9h - DD 0008a8a8ah,0a200a2a2h - DD 000323232h,08c008c8ch - DD 0004b4b4bh,0d200d2d2h - DD 000424242h,090009090h - DD 000dbdbdbh,0f600f6f6h - DD 0001c1c1ch,007000707h - DD 0009e9e9eh,0a700a7a7h - DD 0009c9c9ch,027002727h - DD 0003a3a3ah,08e008e8eh - DD 000cacacah,0b200b2b2h - DD 000252525h,049004949h - DD 0007b7b7bh,0de00dedeh - DD 0000d0d0dh,043004343h - DD 000717171h,05c005c5ch - DD 0005f5f5fh,0d700d7d7h - DD 0001f1f1fh,0c700c7c7h - DD 000f8f8f8h,03e003e3eh - DD 000d7d7d7h,0f500f5f5h - DD 0003e3e3eh,08f008f8fh - DD 0009d9d9dh,067006767h - DD 0007c7c7ch,01f001f1fh - DD 000606060h,018001818h - DD 000b9b9b9h,06e006e6eh - DD 000bebebeh,0af00afafh - DD 000bcbcbch,02f002f2fh - DD 0008b8b8bh,0e200e2e2h - DD 000161616h,085008585h - DD 000343434h,00d000d0dh - DD 0004d4d4dh,053005353h - DD 000c3c3c3h,0f000f0f0h - DD 000727272h,09c009c9ch - DD 000959595h,065006565h - DD 000abababh,0ea00eaeah - DD 0008e8e8eh,0a300a3a3h - DD 000bababah,0ae00aeaeh - DD 0007a7a7ah,09e009e9eh - DD 000b3b3b3h,0ec00ecech - DD 000020202h,080008080h - DD 000b4b4b4h,02d002d2dh - DD 000adadadh,06b006b6bh - DD 000a2a2a2h,0a800a8a8h - DD 000acacach,02b002b2bh - DD 000d8d8d8h,036003636h - DD 0009a9a9ah,0a600a6a6h - DD 000171717h,0c500c5c5h - DD 0001a1a1ah,086008686h - DD 000353535h,04d004d4dh - DD 000cccccch,033003333h - DD 000f7f7f7h,0fd00fdfdh - DD 000999999h,066006666h - DD 000616161h,058005858h - DD 0005a5a5ah,096009696h - DD 000e8e8e8h,03a003a3ah - DD 000242424h,009000909h - DD 000565656h,095009595h - DD 000404040h,010001010h - DD 000e1e1e1h,078007878h - DD 000636363h,0d800d8d8h - DD 000090909h,042004242h - DD 000333333h,0cc00cccch - DD 000bfbfbfh,0ef00efefh - DD 000989898h,026002626h - DD 000979797h,0e500e5e5h - DD 000858585h,061006161h - DD 000686868h,01a001a1ah - DD 000fcfcfch,03f003f3fh - DD 000ececech,03b003b3bh - DD 0000a0a0ah,082008282h - DD 000dadadah,0b600b6b6h - DD 0006f6f6fh,0db00dbdbh - DD 000535353h,0d400d4d4h - DD 000626262h,098009898h - DD 000a3a3a3h,0e800e8e8h - DD 0002e2e2eh,08b008b8bh - DD 000080808h,002000202h - DD 000afafafh,0eb00ebebh - DD 000282828h,00a000a0ah - DD 000b0b0b0h,02c002c2ch - DD 000747474h,01d001d1dh - DD 000c2c2c2h,0b000b0b0h - DD 000bdbdbdh,06f006f6fh - DD 000363636h,08d008d8dh - DD 000222222h,088008888h - DD 000383838h,00e000e0eh - DD 000646464h,019001919h - DD 0001e1e1eh,087008787h - DD 000393939h,04e004e4eh - DD 0002c2c2ch,00b000b0bh - DD 000a6a6a6h,0a900a9a9h - DD 000303030h,00c000c0ch - DD 000e5e5e5h,079007979h - DD 000444444h,011001111h - DD 000fdfdfdh,07f007f7fh - DD 000888888h,022002222h - DD 0009f9f9fh,0e700e7e7h - DD 000656565h,059005959h - DD 000878787h,0e100e1e1h - DD 0006b6b6bh,0da00dadah - DD 000f4f4f4h,03d003d3dh - DD 000232323h,0c800c8c8h - DD 000484848h,012001212h - DD 000101010h,004000404h - DD 000d1d1d1h,074007474h - DD 000515151h,054005454h - DD 000c0c0c0h,030003030h - DD 000f9f9f9h,07e007e7eh - DD 000d2d2d2h,0b400b4b4h - DD 000a0a0a0h,028002828h - DD 000555555h,055005555h - DD 000a1a1a1h,068006868h - DD 000414141h,050005050h - DD 000fafafah,0be00bebeh - DD 000434343h,0d000d0d0h - DD 000131313h,0c400c4c4h - DD 000c4c4c4h,031003131h - DD 0002f2f2fh,0cb00cbcbh - DD 000a8a8a8h,02a002a2ah - DD 000b6b6b6h,0ad00adadh - DD 0003c3c3ch,00f000f0fh - DD 0002b2b2bh,0ca00cacah - DD 000c1c1c1h,070007070h - DD 000ffffffh,0ff00ffffh - DD 000c8c8c8h,032003232h - DD 000a5a5a5h,069006969h - DD 000202020h,008000808h - DD 000898989h,062006262h - DD 000000000h,000000000h - DD 000909090h,024002424h - DD 000474747h,0d100d1d1h - DD 000efefefh,0fb00fbfbh - DD 000eaeaeah,0ba00babah - DD 000b7b7b7h,0ed00ededh - DD 000151515h,045004545h - DD 000060606h,081008181h - DD 000cdcdcdh,073007373h - DD 000b5b5b5h,06d006d6dh - DD 000121212h,084008484h - DD 0007e7e7eh,09f009f9fh - DD 000bbbbbbh,0ee00eeeeh - DD 000292929h,04a004a4ah - DD 0000f0f0fh,0c300c3c3h - DD 000b8b8b8h,02e002e2eh - DD 000070707h,0c100c1c1h - DD 000040404h,001000101h - DD 0009b9b9bh,0e600e6e6h - DD 000949494h,025002525h - DD 000212121h,048004848h - DD 000666666h,099009999h - DD 000e6e6e6h,0b900b9b9h - DD 000cececeh,0b300b3b3h - DD 000edededh,07b007b7bh - DD 000e7e7e7h,0f900f9f9h - DD 0003b3b3bh,0ce00ceceh - DD 000fefefeh,0bf00bfbfh - DD 0007f7f7fh,0df00dfdfh - DD 000c5c5c5h,071007171h - DD 000a4a4a4h,029002929h - DD 000373737h,0cd00cdcdh - DD 000b1b1b1h,06c006c6ch - DD 0004c4c4ch,013001313h - DD 000919191h,064006464h - DD 0006e6e6eh,09b009b9bh - DD 0008d8d8dh,063006363h - DD 000767676h,09d009d9dh - DD 000030303h,0c000c0c0h - DD 0002d2d2dh,04b004b4bh - DD 000dededeh,0b700b7b7h - DD 000969696h,0a500a5a5h - DD 000262626h,089008989h - DD 0007d7d7dh,05f005f5fh - DD 000c6c6c6h,0b100b1b1h - DD 0005c5c5ch,017001717h - DD 000d3d3d3h,0f400f4f4h - DD 000f2f2f2h,0bc00bcbch - DD 0004f4f4fh,0d300d3d3h - DD 000191919h,046004646h - DD 0003f3f3fh,0cf00cfcfh - DD 000dcdcdch,037003737h - DD 000797979h,05e005e5eh - DD 0001d1d1dh,047004747h - DD 000525252h,094009494h - DD 000ebebebh,0fa00fafah - DD 000f3f3f3h,0fc00fcfch - DD 0006d6d6dh,05b005b5bh - DD 0005e5e5eh,097009797h - DD 000fbfbfbh,0fe00fefeh - DD 000696969h,05a005a5ah - DD 000b2b2b2h,0ac00acach - DD 000f0f0f0h,03c003c3ch - DD 000313131h,04c004c4ch - DD 0000c0c0ch,003000303h - DD 000d4d4d4h,035003535h - DD 000cfcfcfh,0f300f3f3h - DD 0008c8c8ch,023002323h - DD 000e2e2e2h,0b800b8b8h - DD 000757575h,05d005d5dh - DD 000a9a9a9h,06a006a6ah - DD 0004a4a4ah,092009292h - DD 000575757h,0d500d5d5h - DD 000848484h,021002121h - DD 000111111h,044004444h - DD 000454545h,051005151h - DD 0001b1b1bh,0c600c6c6h - DD 000f5f5f5h,07d007d7dh - DD 000e4e4e4h,039003939h - DD 0000e0e0eh,083008383h - DD 000737373h,0dc00dcdch - DD 000aaaaaah,0aa00aaaah - DD 000f1f1f1h,07c007c7ch - DD 000ddddddh,077007777h - DD 000595959h,056005656h - DD 000141414h,005000505h - DD 0006c6c6ch,01b001b1bh - DD 000929292h,0a400a4a4h - DD 000545454h,015001515h - DD 000d0d0d0h,034003434h - DD 000787878h,01e001e1eh - DD 000707070h,01c001c1ch - DD 000e3e3e3h,0f800f8f8h - DD 000494949h,052005252h - DD 000808080h,020002020h - DD 000505050h,014001414h - DD 000a7a7a7h,0e900e9e9h - DD 000f6f6f6h,0bd00bdbdh - DD 000777777h,0dd00ddddh - DD 000939393h,0e400e4e4h - DD 000868686h,0a100a1a1h - DD 000838383h,0e000e0e0h - DD 0002a2a2ah,08a008a8ah - DD 000c7c7c7h,0f100f1f1h - DD 0005b5b5bh,0d600d6d6h - DD 000e9e9e9h,07a007a7ah - DD 000eeeeeeh,0bb00bbbbh - DD 0008f8f8fh,0e300e3e3h - DD 000010101h,040004040h - DD 0003d3d3dh,04f004f4fh -PUBLIC Camellia_cbc_encrypt - -ALIGN 16 -Camellia_cbc_encrypt PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_Camellia_cbc_encrypt:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp rdx,0 - je $L$cbc_abort - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 -$L$cbc_prologue:: - - mov rbp,rsp - sub rsp,64 - and rsp,-64 - - - - lea r10,QWORD PTR[((-64-63))+rcx] - sub r10,rsp - neg r10 - and r10,03C0h - sub rsp,r10 - - - mov r12,rdi - mov r13,rsi - mov rbx,r8 - mov r14,rcx - mov r15d,DWORD PTR[272+rcx] - - mov QWORD PTR[40+rsp],r8 - mov QWORD PTR[48+rsp],rbp - -$L$cbc_body:: - lea rbp,QWORD PTR[$L$Camellia_SBOX] - - mov ecx,32 -ALIGN 4 -$L$cbc_prefetch_sbox:: - mov rax,QWORD PTR[rbp] - mov rsi,QWORD PTR[32+rbp] - mov rdi,QWORD PTR[64+rbp] - mov r11,QWORD PTR[96+rbp] - lea rbp,QWORD PTR[128+rbp] - loop $L$cbc_prefetch_sbox - sub rbp,4096 - shl r15,6 - mov rcx,rdx - lea r15,QWORD PTR[r15*1+r14] - - cmp r9d,0 - je $L$CBC_DECRYPT - - and rdx,-16 - and rcx,15 - lea rdx,QWORD PTR[rdx*1+r12] - mov QWORD PTR[rsp],r14 - mov QWORD PTR[8+rsp],rdx - mov QWORD PTR[16+rsp],rcx - - cmp rdx,r12 - mov r8d,DWORD PTR[rbx] - mov r9d,DWORD PTR[4+rbx] - mov r10d,DWORD PTR[8+rbx] - mov r11d,DWORD PTR[12+rbx] - je $L$cbc_enc_tail - jmp $L$cbc_eloop - -ALIGN 16 -$L$cbc_eloop:: - xor r8d,DWORD PTR[r12] - xor r9d,DWORD PTR[4+r12] - xor r10d,DWORD PTR[8+r12] - bswap r8d - xor r11d,DWORD PTR[12+r12] - bswap r9d - bswap r10d - bswap r11d - - call _x86_64_Camellia_encrypt - - mov r14,QWORD PTR[rsp] - bswap r8d - mov rdx,QWORD PTR[8+rsp] - bswap r9d - mov rcx,QWORD PTR[16+rsp] - bswap r10d - mov DWORD PTR[r13],r8d - bswap r11d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - lea r12,QWORD PTR[16+r12] - mov DWORD PTR[12+r13],r11d - cmp r12,rdx - lea r13,QWORD PTR[16+r13] - jne $L$cbc_eloop - - cmp rcx,0 - jne $L$cbc_enc_tail - - mov r13,QWORD PTR[40+rsp] - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - jmp $L$cbc_done - -ALIGN 16 -$L$cbc_enc_tail:: - xor rax,rax - mov QWORD PTR[((0+24))+rsp],rax - mov QWORD PTR[((8+24))+rsp],rax - mov QWORD PTR[16+rsp],rax - -$L$cbc_enc_pushf:: - pushfq - cld - mov rsi,r12 - lea rdi,QWORD PTR[((8+24))+rsp] - DD 09066A4F3h - popfq -$L$cbc_enc_popf:: - - lea r12,QWORD PTR[24+rsp] - lea rax,QWORD PTR[((16+24))+rsp] - mov QWORD PTR[8+rsp],rax - jmp $L$cbc_eloop - -ALIGN 16 -$L$CBC_DECRYPT:: - xchg r15,r14 - add rdx,15 - and rcx,15 - and rdx,-16 - mov QWORD PTR[rsp],r14 - lea rdx,QWORD PTR[rdx*1+r12] - mov QWORD PTR[8+rsp],rdx - mov QWORD PTR[16+rsp],rcx - - mov rax,QWORD PTR[rbx] - mov rbx,QWORD PTR[8+rbx] - jmp $L$cbc_dloop -ALIGN 16 -$L$cbc_dloop:: - mov r8d,DWORD PTR[r12] - mov r9d,DWORD PTR[4+r12] - mov r10d,DWORD PTR[8+r12] - bswap r8d - mov r11d,DWORD PTR[12+r12] - bswap r9d - mov QWORD PTR[((0+24))+rsp],rax - bswap r10d - mov QWORD PTR[((8+24))+rsp],rbx - bswap r11d - - call _x86_64_Camellia_decrypt - - mov r14,QWORD PTR[rsp] - mov rdx,QWORD PTR[8+rsp] - mov rcx,QWORD PTR[16+rsp] - - bswap r8d - mov rax,QWORD PTR[r12] - bswap r9d - mov rbx,QWORD PTR[8+r12] - bswap r10d - xor r8d,DWORD PTR[((0+24))+rsp] - bswap r11d - xor r9d,DWORD PTR[((4+24))+rsp] - xor r10d,DWORD PTR[((8+24))+rsp] - lea r12,QWORD PTR[16+r12] - xor r11d,DWORD PTR[((12+24))+rsp] - cmp r12,rdx - je $L$cbc_ddone - - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - lea r13,QWORD PTR[16+r13] - jmp $L$cbc_dloop - -ALIGN 16 -$L$cbc_ddone:: - mov rdx,QWORD PTR[40+rsp] - cmp rcx,0 - jne $L$cbc_dec_tail - - mov DWORD PTR[r13],r8d - mov DWORD PTR[4+r13],r9d - mov DWORD PTR[8+r13],r10d - mov DWORD PTR[12+r13],r11d - - mov QWORD PTR[rdx],rax - mov QWORD PTR[8+rdx],rbx - jmp $L$cbc_done -ALIGN 16 -$L$cbc_dec_tail:: - mov DWORD PTR[((0+24))+rsp],r8d - mov DWORD PTR[((4+24))+rsp],r9d - mov DWORD PTR[((8+24))+rsp],r10d - mov DWORD PTR[((12+24))+rsp],r11d - -$L$cbc_dec_pushf:: - pushfq - cld - lea rsi,QWORD PTR[((8+24))+rsp] - lea rdi,QWORD PTR[r13] - DD 09066A4F3h - popfq -$L$cbc_dec_popf:: - - mov QWORD PTR[rdx],rax - mov QWORD PTR[8+rdx],rbx - jmp $L$cbc_done - -ALIGN 16 -$L$cbc_done:: - mov rcx,QWORD PTR[48+rsp] - mov r15,QWORD PTR[rcx] - mov r14,QWORD PTR[8+rcx] - mov r13,QWORD PTR[16+rcx] - mov r12,QWORD PTR[24+rcx] - mov rbp,QWORD PTR[32+rcx] - mov rbx,QWORD PTR[40+rcx] - lea rsp,QWORD PTR[48+rcx] -$L$cbc_abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_Camellia_cbc_encrypt:: -Camellia_cbc_encrypt ENDP - -DB 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -DB 95,54,52,32,98,121,32,60,97,112,112,114,111,64,111,112 -DB 101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -common_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - lea rsp,QWORD PTR[((-64))+rsp] - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[40+rax] - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r13,QWORD PTR[((-24))+rax] - mov r14,QWORD PTR[((-32))+rax] - mov r15,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -common_se_handler ENDP - - -ALIGN 16 -cbc_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - lea rsp,QWORD PTR[((-64))+rsp] - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$cbc_prologue] - cmp rbx,r10 - jb $L$in_cbc_prologue - - lea r10,QWORD PTR[$L$cbc_body] - cmp rbx,r10 - jb $L$in_cbc_frame_setup - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$cbc_abort] - cmp rbx,r10 - jae $L$in_cbc_prologue - - - lea r10,QWORD PTR[$L$cbc_enc_pushf] - cmp rbx,r10 - jbe $L$in_cbc_no_flag - lea rax,QWORD PTR[8+rax] - lea r10,QWORD PTR[$L$cbc_enc_popf] - cmp rbx,r10 - jb $L$in_cbc_no_flag - lea rax,QWORD PTR[((-8))+rax] - lea r10,QWORD PTR[$L$cbc_dec_pushf] - cmp rbx,r10 - jbe $L$in_cbc_no_flag - lea rax,QWORD PTR[8+rax] - lea r10,QWORD PTR[$L$cbc_dec_popf] - cmp rbx,r10 - jb $L$in_cbc_no_flag - lea rax,QWORD PTR[((-8))+rax] - -$L$in_cbc_no_flag:: - mov rax,QWORD PTR[48+rax] - lea rax,QWORD PTR[48+rax] - -$L$in_cbc_frame_setup:: - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_cbc_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -ALIGN 4 -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - lea rsp,QWORD PTR[64+rsp] - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -cbc_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_Camellia_EncryptBlock_Rounds - DD imagerel $L$SEH_end_Camellia_EncryptBlock_Rounds - DD imagerel $L$SEH_info_Camellia_EncryptBlock_Rounds - - DD imagerel $L$SEH_begin_Camellia_DecryptBlock_Rounds - DD imagerel $L$SEH_end_Camellia_DecryptBlock_Rounds - DD imagerel $L$SEH_info_Camellia_DecryptBlock_Rounds - - DD imagerel $L$SEH_begin_Camellia_Ekeygen - DD imagerel $L$SEH_end_Camellia_Ekeygen - DD imagerel $L$SEH_info_Camellia_Ekeygen - - DD imagerel $L$SEH_begin_Camellia_cbc_encrypt - DD imagerel $L$SEH_end_Camellia_cbc_encrypt - DD imagerel $L$SEH_info_Camellia_cbc_encrypt - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_Camellia_EncryptBlock_Rounds:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$enc_prologue,imagerel $L$enc_epilogue -$L$SEH_info_Camellia_DecryptBlock_Rounds:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$dec_prologue,imagerel $L$dec_epilogue -$L$SEH_info_Camellia_Ekeygen:: -DB 9,0,0,0 - DD imagerel common_se_handler - DD imagerel $L$key_prologue,imagerel $L$key_epilogue -$L$SEH_info_Camellia_cbc_encrypt:: -DB 9,0,0,0 - DD imagerel cbc_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/ec/ecp_nistz256-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/ec/ecp_nistz256-x86_64.asm deleted file mode 100644 index 4086b66e461889..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/ec/ecp_nistz256-x86_64.asm +++ /dev/null @@ -1,2226 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - - -ALIGN 64 -$L$poly:: - DQ 0ffffffffffffffffh,000000000ffffffffh,00000000000000000h,0ffffffff00000001h - - -$L$RR:: - DQ 00000000000000003h,0fffffffbffffffffh,0fffffffffffffffeh,000000004fffffffdh - -$L$One:: - DD 1,1,1,1,1,1,1,1 -$L$Two:: - DD 2,2,2,2,2,2,2,2 -$L$Three:: - DD 3,3,3,3,3,3,3,3 -$L$ONE_mont:: - DQ 00000000000000001h,0ffffffff00000000h,0ffffffffffffffffh,000000000fffffffeh - -PUBLIC ecp_nistz256_mul_by_2 - -ALIGN 64 -ecp_nistz256_mul_by_2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_by_2:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - add r8,r8 - mov r10,QWORD PTR[16+rsi] - adc r9,r9 - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - mov rax,r8 - adc r10,r10 - adc r11,r11 - mov rdx,r9 - adc r13,0 - - sub r8,QWORD PTR[rsi] - mov rcx,r10 - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov r12,r11 - sbb r11,QWORD PTR[24+rsi] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_by_2:: -ecp_nistz256_mul_by_2 ENDP - - - -PUBLIC ecp_nistz256_div_by_2 - -ALIGN 32 -ecp_nistz256_div_by_2 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_div_by_2:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov rax,r8 - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - mov rdx,r9 - xor r13,r13 - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - adc r13,0 - xor rsi,rsi - test rax,1 - - cmovz r8,rax - cmovz r9,rdx - cmovz r10,rcx - cmovz r11,r12 - cmovz r13,rsi - - mov rax,r9 - shr r8,1 - shl rax,63 - mov rdx,r10 - shr r9,1 - or r8,rax - shl rdx,63 - mov rcx,r11 - shr r10,1 - or r9,rdx - shl rcx,63 - shr r11,1 - shl r13,63 - or r10,rcx - or r11,r13 - - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_div_by_2:: -ecp_nistz256_div_by_2 ENDP - - - -PUBLIC ecp_nistz256_mul_by_3 - -ALIGN 32 -ecp_nistz256_mul_by_3 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_by_3:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - add r8,r8 - mov r10,QWORD PTR[16+rsi] - adc r9,r9 - mov r11,QWORD PTR[24+rsi] - mov rax,r8 - adc r10,r10 - adc r11,r11 - mov rdx,r9 - adc r13,0 - - sub r8,-1 - mov rcx,r10 - sbb r9,QWORD PTR[(($L$poly+8))] - sbb r10,0 - mov r12,r11 - sbb r11,QWORD PTR[(($L$poly+24))] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - cmovc r10,rcx - cmovc r11,r12 - - xor r13,r13 - add r8,QWORD PTR[rsi] - adc r9,QWORD PTR[8+rsi] - mov rax,r8 - adc r10,QWORD PTR[16+rsi] - adc r11,QWORD PTR[24+rsi] - mov rdx,r9 - adc r13,0 - - sub r8,-1 - mov rcx,r10 - sbb r9,QWORD PTR[(($L$poly+8))] - sbb r10,0 - mov r12,r11 - sbb r11,QWORD PTR[(($L$poly+24))] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_by_3:: -ecp_nistz256_mul_by_3 ENDP - - - -PUBLIC ecp_nistz256_add - -ALIGN 32 -ecp_nistz256_add PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_add:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - add r8,QWORD PTR[rdx] - adc r9,QWORD PTR[8+rdx] - mov rax,r8 - adc r10,QWORD PTR[16+rdx] - adc r11,QWORD PTR[24+rdx] - mov rdx,r9 - adc r13,0 - - sub r8,QWORD PTR[rsi] - mov rcx,r10 - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov r12,r11 - sbb r11,QWORD PTR[24+rsi] - sbb r13,0 - - cmovc r8,rax - cmovc r9,rdx - mov QWORD PTR[rdi],r8 - cmovc r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovc r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_add:: -ecp_nistz256_add ENDP - - - -PUBLIC ecp_nistz256_sub - -ALIGN 32 -ecp_nistz256_sub PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_sub:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push r12 - push r13 - - mov r8,QWORD PTR[rsi] - xor r13,r13 - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - - sub r8,QWORD PTR[rdx] - sbb r9,QWORD PTR[8+rdx] - mov rax,r8 - sbb r10,QWORD PTR[16+rdx] - sbb r11,QWORD PTR[24+rdx] - mov rdx,r9 - sbb r13,0 - - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - test r13,r13 - - cmovz r8,rax - cmovz r9,rdx - mov QWORD PTR[rdi],r8 - cmovz r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovz r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_sub:: -ecp_nistz256_sub ENDP - - - -PUBLIC ecp_nistz256_neg - -ALIGN 32 -ecp_nistz256_neg PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_neg:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - xor r8,r8 - xor r9,r9 - xor r10,r10 - xor r11,r11 - xor r13,r13 - - sub r8,QWORD PTR[rsi] - sbb r9,QWORD PTR[8+rsi] - sbb r10,QWORD PTR[16+rsi] - mov rax,r8 - sbb r11,QWORD PTR[24+rsi] - lea rsi,QWORD PTR[$L$poly] - mov rdx,r9 - sbb r13,0 - - add r8,QWORD PTR[rsi] - mov rcx,r10 - adc r9,QWORD PTR[8+rsi] - adc r10,QWORD PTR[16+rsi] - mov r12,r11 - adc r11,QWORD PTR[24+rsi] - test r13,r13 - - cmovz r8,rax - cmovz r9,rdx - mov QWORD PTR[rdi],r8 - cmovz r10,rcx - mov QWORD PTR[8+rdi],r9 - cmovz r11,r12 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_neg:: -ecp_nistz256_neg ENDP - - - - -PUBLIC ecp_nistz256_to_mont - -ALIGN 32 -ecp_nistz256_to_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_to_mont:: - mov rdi,rcx - mov rsi,rdx - - - lea rdx,QWORD PTR[$L$RR] - jmp $L$mul_mont -$L$SEH_end_ecp_nistz256_to_mont:: -ecp_nistz256_to_mont ENDP - - - - - - - -PUBLIC ecp_nistz256_mul_mont - -ALIGN 32 -ecp_nistz256_mul_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_mul_mont:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$mul_mont:: - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - mov rbx,rdx - mov rax,QWORD PTR[rdx] - mov r9,QWORD PTR[rsi] - mov r10,QWORD PTR[8+rsi] - mov r11,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - - call __ecp_nistz256_mul_montq -$L$mul_mont_done:: - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_mul_mont:: -ecp_nistz256_mul_mont ENDP - - -ALIGN 32 -__ecp_nistz256_mul_montq PROC PRIVATE - - - mov rbp,rax - mul r9 - mov r14,QWORD PTR[(($L$poly+8))] - mov r8,rax - mov rax,rbp - mov r9,rdx - - mul r10 - mov r15,QWORD PTR[(($L$poly+24))] - add r9,rax - mov rax,rbp - adc rdx,0 - mov r10,rdx - - mul r11 - add r10,rax - mov rax,rbp - adc rdx,0 - mov r11,rdx - - mul r12 - add r11,rax - mov rax,r8 - adc rdx,0 - xor r13,r13 - mov r12,rdx - - - - - - - - - - - mov rbp,r8 - shl r8,32 - mul r15 - shr rbp,32 - add r9,r8 - adc r10,rbp - adc r11,rax - mov rax,QWORD PTR[8+rbx] - adc r12,rdx - adc r13,0 - xor r8,r8 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r9,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r10,rcx - adc rdx,0 - add r10,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r11,rcx - adc rdx,0 - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,r9 - adc r13,rdx - adc r8,0 - - - - mov rbp,r9 - shl r9,32 - mul r15 - shr rbp,32 - add r10,r9 - adc r11,rbp - adc r12,rax - mov rax,QWORD PTR[16+rbx] - adc r13,rdx - adc r8,0 - xor r9,r9 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r10,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r11,rcx - adc rdx,0 - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r13,rcx - adc rdx,0 - add r13,rax - mov rax,r10 - adc r8,rdx - adc r9,0 - - - - mov rbp,r10 - shl r10,32 - mul r15 - shr rbp,32 - add r11,r10 - adc r12,rbp - adc r13,rax - mov rax,QWORD PTR[24+rbx] - adc r8,rdx - adc r9,0 - xor r10,r10 - - - - mov rbp,rax - mul QWORD PTR[rsi] - add r11,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[8+rsi] - add r12,rcx - adc rdx,0 - add r12,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[16+rsi] - add r13,rcx - adc rdx,0 - add r13,rax - mov rax,rbp - adc rdx,0 - mov rcx,rdx - - mul QWORD PTR[24+rsi] - add r8,rcx - adc rdx,0 - add r8,rax - mov rax,r11 - adc r9,rdx - adc r10,0 - - - - mov rbp,r11 - shl r11,32 - mul r15 - shr rbp,32 - add r12,r11 - adc r13,rbp - mov rcx,r12 - adc r8,rax - adc r9,rdx - mov rbp,r13 - adc r10,0 - - - - sub r12,-1 - mov rbx,r8 - sbb r13,r14 - sbb r8,0 - mov rdx,r9 - sbb r9,r15 - sbb r10,0 - - cmovc r12,rcx - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rbx - mov QWORD PTR[8+rdi],r13 - cmovc r9,rdx - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_montq ENDP - - - - - - - - -PUBLIC ecp_nistz256_sqr_mont - -ALIGN 32 -ecp_nistz256_sqr_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_sqr_mont:: - mov rdi,rcx - mov rsi,rdx - - - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - mov rax,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r15,QWORD PTR[16+rsi] - mov r8,QWORD PTR[24+rsi] - - call __ecp_nistz256_sqr_montq -$L$sqr_mont_done:: - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_sqr_mont:: -ecp_nistz256_sqr_mont ENDP - - -ALIGN 32 -__ecp_nistz256_sqr_montq PROC PRIVATE - mov r13,rax - mul r14 - mov r9,rax - mov rax,r15 - mov r10,rdx - - mul r13 - add r10,rax - mov rax,r8 - adc rdx,0 - mov r11,rdx - - mul r13 - add r11,rax - mov rax,r15 - adc rdx,0 - mov r12,rdx - - - mul r14 - add r11,rax - mov rax,r8 - adc rdx,0 - mov rbp,rdx - - mul r14 - add r12,rax - mov rax,r8 - adc rdx,0 - add r12,rbp - mov r13,rdx - adc r13,0 - - - mul r15 - xor r15,r15 - add r13,rax - mov rax,QWORD PTR[rsi] - mov r14,rdx - adc r14,0 - - add r9,r9 - adc r10,r10 - adc r11,r11 - adc r12,r12 - adc r13,r13 - adc r14,r14 - adc r15,0 - - mul rax - mov r8,rax - mov rax,QWORD PTR[8+rsi] - mov rcx,rdx - - mul rax - add r9,rcx - adc r10,rax - mov rax,QWORD PTR[16+rsi] - adc rdx,0 - mov rcx,rdx - - mul rax - add r11,rcx - adc r12,rax - mov rax,QWORD PTR[24+rsi] - adc rdx,0 - mov rcx,rdx - - mul rax - add r13,rcx - adc r14,rax - mov rax,r8 - adc r15,rdx - - mov rsi,QWORD PTR[(($L$poly+8))] - mov rbp,QWORD PTR[(($L$poly+24))] - - - - - mov rcx,r8 - shl r8,32 - mul rbp - shr rcx,32 - add r9,r8 - adc r10,rcx - adc r11,rax - mov rax,r9 - adc rdx,0 - - - - mov rcx,r9 - shl r9,32 - mov r8,rdx - mul rbp - shr rcx,32 - add r10,r9 - adc r11,rcx - adc r8,rax - mov rax,r10 - adc rdx,0 - - - - mov rcx,r10 - shl r10,32 - mov r9,rdx - mul rbp - shr rcx,32 - add r11,r10 - adc r8,rcx - adc r9,rax - mov rax,r11 - adc rdx,0 - - - - mov rcx,r11 - shl r11,32 - mov r10,rdx - mul rbp - shr rcx,32 - add r8,r11 - adc r9,rcx - adc r10,rax - adc rdx,0 - xor r11,r11 - - - - add r12,r8 - adc r13,r9 - mov r8,r12 - adc r14,r10 - adc r15,rdx - mov r9,r13 - adc r11,0 - - sub r12,-1 - mov r10,r14 - sbb r13,rsi - sbb r14,0 - mov rcx,r15 - sbb r15,rbp - sbb r11,0 - - cmovc r12,r8 - cmovc r13,r9 - mov QWORD PTR[rdi],r12 - cmovc r14,r10 - mov QWORD PTR[8+rdi],r13 - cmovc r15,rcx - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sqr_montq ENDP - - - - - - -PUBLIC ecp_nistz256_from_mont - -ALIGN 32 -ecp_nistz256_from_mont PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_from_mont:: - mov rdi,rcx - mov rsi,rdx - - - push r12 - push r13 - - mov rax,QWORD PTR[rsi] - mov r13,QWORD PTR[(($L$poly+24))] - mov r9,QWORD PTR[8+rsi] - mov r10,QWORD PTR[16+rsi] - mov r11,QWORD PTR[24+rsi] - mov r8,rax - mov r12,QWORD PTR[(($L$poly+8))] - - - - mov rcx,rax - shl r8,32 - mul r13 - shr rcx,32 - add r9,r8 - adc r10,rcx - adc r11,rax - mov rax,r9 - adc rdx,0 - - - - mov rcx,r9 - shl r9,32 - mov r8,rdx - mul r13 - shr rcx,32 - add r10,r9 - adc r11,rcx - adc r8,rax - mov rax,r10 - adc rdx,0 - - - - mov rcx,r10 - shl r10,32 - mov r9,rdx - mul r13 - shr rcx,32 - add r11,r10 - adc r8,rcx - adc r9,rax - mov rax,r11 - adc rdx,0 - - - - mov rcx,r11 - shl r11,32 - mov r10,rdx - mul r13 - shr rcx,32 - add r8,r11 - adc r9,rcx - mov rcx,r8 - adc r10,rax - mov rsi,r9 - adc rdx,0 - - - - sub r8,-1 - mov rax,r10 - sbb r9,r12 - sbb r10,0 - mov r11,rdx - sbb rdx,r13 - sbb r13,r13 - - cmovnz r8,rcx - cmovnz r9,rsi - mov QWORD PTR[rdi],r8 - cmovnz r10,rax - mov QWORD PTR[8+rdi],r9 - cmovz r11,rdx - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - - pop r13 - pop r12 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_from_mont:: -ecp_nistz256_from_mont ENDP - - -PUBLIC ecp_nistz256_select_w5 - -ALIGN 32 -ecp_nistz256_select_w5 PROC PUBLIC - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_select_w5:: -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm0,XMMWORD PTR[$L$One] - movd xmm1,r8d - - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - - movdqa xmm8,xmm0 - pshufd xmm1,xmm1,0 - - mov rax,16 -$L$select_loop_sse_w5:: - - movdqa xmm15,xmm8 - paddd xmm8,xmm0 - pcmpeqd xmm15,xmm1 - - movdqa xmm9,XMMWORD PTR[rdx] - movdqa xmm10,XMMWORD PTR[16+rdx] - movdqa xmm11,XMMWORD PTR[32+rdx] - movdqa xmm12,XMMWORD PTR[48+rdx] - movdqa xmm13,XMMWORD PTR[64+rdx] - movdqa xmm14,XMMWORD PTR[80+rdx] - lea rdx,QWORD PTR[96+rdx] - - pand xmm9,xmm15 - pand xmm10,xmm15 - por xmm2,xmm9 - pand xmm11,xmm15 - por xmm3,xmm10 - pand xmm12,xmm15 - por xmm4,xmm11 - pand xmm13,xmm15 - por xmm5,xmm12 - pand xmm14,xmm15 - por xmm6,xmm13 - por xmm7,xmm14 - - dec rax - jnz $L$select_loop_sse_w5 - - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm3 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqu XMMWORD PTR[48+rcx],xmm5 - movdqu XMMWORD PTR[64+rcx],xmm6 - movdqu XMMWORD PTR[80+rcx],xmm7 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_select_w5:: - DB 0F3h,0C3h ;repret -ecp_nistz256_select_w5 ENDP - - - -PUBLIC ecp_nistz256_select_w7 - -ALIGN 32 -ecp_nistz256_select_w7 PROC PUBLIC - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_ecp_nistz256_select_w7:: -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm8,XMMWORD PTR[$L$One] - movd xmm1,r8d - - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - - movdqa xmm0,xmm8 - pshufd xmm1,xmm1,0 - mov rax,64 - -$L$select_loop_sse_w7:: - movdqa xmm15,xmm8 - paddd xmm8,xmm0 - movdqa xmm9,XMMWORD PTR[rdx] - movdqa xmm10,XMMWORD PTR[16+rdx] - pcmpeqd xmm15,xmm1 - movdqa xmm11,XMMWORD PTR[32+rdx] - movdqa xmm12,XMMWORD PTR[48+rdx] - lea rdx,QWORD PTR[64+rdx] - - pand xmm9,xmm15 - pand xmm10,xmm15 - por xmm2,xmm9 - pand xmm11,xmm15 - por xmm3,xmm10 - pand xmm12,xmm15 - por xmm4,xmm11 - prefetcht0 [255+rdx] - por xmm5,xmm12 - - dec rax - jnz $L$select_loop_sse_w7 - - movdqu XMMWORD PTR[rcx],xmm2 - movdqu XMMWORD PTR[16+rcx],xmm3 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqu XMMWORD PTR[48+rcx],xmm5 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_ecp_nistz256_select_w7:: - DB 0F3h,0C3h ;repret -ecp_nistz256_select_w7 ENDP -PUBLIC ecp_nistz256_avx2_select_w7 - -ALIGN 32 -ecp_nistz256_avx2_select_w7 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_avx2_select_w7:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -DB 00fh,00bh - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_avx2_select_w7:: -ecp_nistz256_avx2_select_w7 ENDP - -ALIGN 32 -__ecp_nistz256_add_toq PROC PRIVATE - xor r11,r11 - add r12,QWORD PTR[rbx] - adc r13,QWORD PTR[8+rbx] - mov rax,r12 - adc r8,QWORD PTR[16+rbx] - adc r9,QWORD PTR[24+rbx] - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_add_toq ENDP - - -ALIGN 32 -__ecp_nistz256_sub_fromq PROC PRIVATE - sub r12,QWORD PTR[rbx] - sbb r13,QWORD PTR[8+rbx] - mov rax,r12 - sbb r8,QWORD PTR[16+rbx] - sbb r9,QWORD PTR[24+rbx] - mov rbp,r13 - sbb r11,r11 - - add r12,-1 - mov rcx,r8 - adc r13,r14 - adc r8,0 - mov r10,r9 - adc r9,r15 - test r11,r11 - - cmovz r12,rax - cmovz r13,rbp - mov QWORD PTR[rdi],r12 - cmovz r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovz r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_sub_fromq ENDP - - -ALIGN 32 -__ecp_nistz256_subq PROC PRIVATE - sub rax,r12 - sbb rbp,r13 - mov r12,rax - sbb rcx,r8 - sbb r10,r9 - mov r13,rbp - sbb r11,r11 - - add rax,-1 - mov r8,rcx - adc rbp,r14 - adc rcx,0 - mov r9,r10 - adc r10,r15 - test r11,r11 - - cmovnz r12,rax - cmovnz r13,rbp - cmovnz r8,rcx - cmovnz r9,r10 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_subq ENDP - - -ALIGN 32 -__ecp_nistz256_mul_by_2q PROC PRIVATE - xor r11,r11 - add r12,r12 - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - cmovc r13,rbp - mov QWORD PTR[rdi],r12 - cmovc r8,rcx - mov QWORD PTR[8+rdi],r13 - cmovc r9,r10 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - - DB 0F3h,0C3h ;repret -__ecp_nistz256_mul_by_2q ENDP -PUBLIC ecp_nistz256_point_double - -ALIGN 32 -ecp_nistz256_point_double PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_double:: - mov rdi,rcx - mov rsi,rdx - - - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*5+8 - -$L$point_double_shortcutq:: - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rsi - movdqu xmm1,XMMWORD PTR[16+rsi] - mov r12,QWORD PTR[((32+0))+rsi] - mov r13,QWORD PTR[((32+8))+rsi] - mov r8,QWORD PTR[((32+16))+rsi] - mov r9,QWORD PTR[((32+24))+rsi] - mov r14,QWORD PTR[(($L$poly+8))] - mov r15,QWORD PTR[(($L$poly+24))] - movdqa XMMWORD PTR[96+rsp],xmm0 - movdqa XMMWORD PTR[(96+16)+rsp],xmm1 - lea r10,QWORD PTR[32+rdi] - lea r11,QWORD PTR[64+rdi] -DB 102,72,15,110,199 -DB 102,73,15,110,202 -DB 102,73,15,110,211 - - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_by_2q - - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - lea rsi,QWORD PTR[((64-0))+rsi] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[32+rbx] - mov r9,QWORD PTR[((64+0))+rbx] - mov r10,QWORD PTR[((64+8))+rbx] - mov r11,QWORD PTR[((64+16))+rbx] - mov r12,QWORD PTR[((64+24))+rbx] - lea rsi,QWORD PTR[((64-0))+rbx] - lea rbx,QWORD PTR[32+rbx] -DB 102,72,15,126,215 - call __ecp_nistz256_mul_montq - call __ecp_nistz256_mul_by_2q - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_toq - - mov r12,QWORD PTR[((96+0))+rsp] - mov r13,QWORD PTR[((96+8))+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r8,QWORD PTR[((96+16))+rsp] - mov r9,QWORD PTR[((96+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] -DB 102,72,15,126,207 - call __ecp_nistz256_sqr_montq - xor r9,r9 - mov rax,r12 - add r12,-1 - mov r10,r13 - adc r13,rsi - mov rcx,r14 - adc r14,0 - mov r8,r15 - adc r15,rbp - adc r9,0 - xor rsi,rsi - test rax,1 - - cmovz r12,rax - cmovz r13,r10 - cmovz r14,rcx - cmovz r15,r8 - cmovz r9,rsi - - mov rax,r13 - shr r12,1 - shl rax,63 - mov r10,r14 - shr r13,1 - or r12,rax - shl r10,63 - mov rcx,r15 - shr r14,1 - or r13,r10 - shl rcx,63 - mov QWORD PTR[rdi],r12 - shr r15,1 - mov QWORD PTR[8+rdi],r13 - shl r9,63 - or r14,rcx - or r15,r9 - mov QWORD PTR[16+rdi],r14 - mov QWORD PTR[24+rdi],r15 - mov rax,QWORD PTR[64+rsp] - lea rbx,QWORD PTR[64+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2q - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_add_toq - - mov rax,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_by_2q - - mov rax,QWORD PTR[((0+32))+rsp] - mov r14,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r15,QWORD PTR[((16+32))+rsp] - mov r8,QWORD PTR[((24+32))+rsp] -DB 102,72,15,126,199 - call __ecp_nistz256_sqr_montq - - lea rbx,QWORD PTR[128+rsp] - mov r8,r14 - mov r9,r15 - mov r14,rsi - mov r15,rbp - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_subq - - mov rax,QWORD PTR[32+rsp] - lea rbx,QWORD PTR[32+rsp] - mov r14,r12 - xor ecx,ecx - mov QWORD PTR[((0+0))+rsp],r12 - mov r10,r13 - mov QWORD PTR[((0+8))+rsp],r13 - cmovz r11,r8 - mov QWORD PTR[((0+16))+rsp],r8 - lea rsi,QWORD PTR[((0-0))+rsp] - cmovz r12,r9 - mov QWORD PTR[((0+24))+rsp],r9 - mov r9,r14 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - -DB 102,72,15,126,203 -DB 102,72,15,126,207 - call __ecp_nistz256_sub_fromq - - add rsp,32*5+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_double:: -ecp_nistz256_point_double ENDP -PUBLIC ecp_nistz256_point_add - -ALIGN 32 -ecp_nistz256_point_add PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_add:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*18+8 - - movdqu xmm0,XMMWORD PTR[rsi] - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rbx,rsi - mov rsi,rdx - movdqa XMMWORD PTR[384+rsp],xmm0 - movdqa XMMWORD PTR[(384+16)+rsp],xmm1 - movdqa XMMWORD PTR[416+rsp],xmm2 - movdqa XMMWORD PTR[(416+16)+rsp],xmm3 - movdqa XMMWORD PTR[448+rsp],xmm4 - movdqa XMMWORD PTR[(448+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rsi] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rsi] - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[480+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(480+16)+rsp],xmm1 - movdqu xmm0,XMMWORD PTR[64+rsi] - movdqu xmm1,XMMWORD PTR[80+rsi] - movdqa XMMWORD PTR[512+rsp],xmm2 - movdqa XMMWORD PTR[(512+16)+rsp],xmm3 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm1,xmm0 -DB 102,72,15,110,199 - - lea rsi,QWORD PTR[((64-0))+rsi] - mov QWORD PTR[((544+0))+rsp],rax - mov QWORD PTR[((544+8))+rsp],r14 - mov QWORD PTR[((544+16))+rsp],r15 - mov QWORD PTR[((544+24))+rsp],r8 - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montq - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm1,0b1h - por xmm4,xmm1 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - por xmm4,xmm3 - pxor xmm3,xmm3 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - mov rax,QWORD PTR[((64+0))+rbx] - mov r14,QWORD PTR[((64+8))+rbx] - mov r15,QWORD PTR[((64+16))+rbx] - mov r8,QWORD PTR[((64+24))+rbx] -DB 102,72,15,110,203 - - lea rsi,QWORD PTR[((64-0))+rbx] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[416+rsp] - lea rbx,QWORD PTR[416+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((0+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[512+rsp] - lea rbx,QWORD PTR[512+rsp] - mov r9,QWORD PTR[((0+256))+rsp] - mov r10,QWORD PTR[((8+256))+rsp] - lea rsi,QWORD PTR[((0+256))+rsp] - mov r11,QWORD PTR[((16+256))+rsp] - mov r12,QWORD PTR[((24+256))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[224+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - or r12,r13 - movdqa xmm2,xmm4 - or r12,r8 - or r12,r9 - por xmm2,xmm5 -DB 102,73,15,110,220 - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+96))+rsp] - mov r10,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r11,QWORD PTR[((16+96))+rsp] - mov r12,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[480+rsp] - lea rbx,QWORD PTR[480+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_sub_fromq - - or r12,r13 - or r12,r8 - or r12,r9 - -DB 03eh - jnz $L$add_proceedq -DB 102,73,15,126,208 -DB 102,73,15,126,217 - test r8,r8 - jnz $L$add_proceedq - test r9,r9 - jz $L$add_doubleq - -DB 102,72,15,126,199 - pxor xmm0,xmm0 - movdqu XMMWORD PTR[rdi],xmm0 - movdqu XMMWORD PTR[16+rdi],xmm0 - movdqu XMMWORD PTR[32+rdi],xmm0 - movdqu XMMWORD PTR[48+rdi],xmm0 - movdqu XMMWORD PTR[64+rdi],xmm0 - movdqu XMMWORD PTR[80+rdi],xmm0 - jmp $L$add_doneq - -ALIGN 32 -$L$add_doubleq:: -DB 102,72,15,126,206 -DB 102,72,15,126,199 - add rsp,416 - jmp $L$point_double_shortcutq - -ALIGN 32 -$L$add_proceedq:: - mov rax,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+0))+rsp] - mov r10,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r11,QWORD PTR[((16+0))+rsp] - mov r12,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[((0+0))+rsp] - mov r14,QWORD PTR[((8+0))+rsp] - lea rsi,QWORD PTR[((0+0))+rsp] - mov r15,QWORD PTR[((16+0))+rsp] - mov r8,QWORD PTR[((24+0))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[544+rsp] - lea rbx,QWORD PTR[544+rsp] - mov r9,QWORD PTR[((0+352))+rsp] - mov r10,QWORD PTR[((8+352))+rsp] - lea rsi,QWORD PTR[((0+352))+rsp] - mov r11,QWORD PTR[((16+352))+rsp] - mov r12,QWORD PTR[((24+352))+rsp] - lea rdi,QWORD PTR[352+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[rsp] - lea rbx,QWORD PTR[rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[160+rsp] - lea rbx,QWORD PTR[160+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_mul_montq - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[96+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subq - - lea rbx,QWORD PTR[128+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((192+0))+rsp] - mov rbp,QWORD PTR[((192+8))+rsp] - mov rcx,QWORD PTR[((192+16))+rsp] - mov r10,QWORD PTR[((192+24))+rsp] - lea rdi,QWORD PTR[320+rsp] - - call __ecp_nistz256_subq - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rax,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+224))+rsp] - mov r10,QWORD PTR[((8+224))+rsp] - lea rsi,QWORD PTR[((0+224))+rsp] - mov r11,QWORD PTR[((16+224))+rsp] - mov r12,QWORD PTR[((24+224))+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[320+rsp] - call __ecp_nistz256_sub_fromq - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[352+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((352+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[544+rsp] - pand xmm3,XMMWORD PTR[((544+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[480+rsp] - pand xmm3,XMMWORD PTR[((480+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[320+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((320+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[512+rsp] - pand xmm3,XMMWORD PTR[((512+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - -$L$add_doneq:: - add rsp,32*18+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_add:: -ecp_nistz256_point_add ENDP -PUBLIC ecp_nistz256_point_add_affine - -ALIGN 32 -ecp_nistz256_point_add_affine PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_ecp_nistz256_point_add_affine:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbp - push rbx - push r12 - push r13 - push r14 - push r15 - sub rsp,32*15+8 - - movdqu xmm0,XMMWORD PTR[rsi] - mov rbx,rdx - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] - movdqu xmm3,XMMWORD PTR[48+rsi] - movdqu xmm4,XMMWORD PTR[64+rsi] - movdqu xmm5,XMMWORD PTR[80+rsi] - mov rax,QWORD PTR[((64+0))+rsi] - mov r14,QWORD PTR[((64+8))+rsi] - mov r15,QWORD PTR[((64+16))+rsi] - mov r8,QWORD PTR[((64+24))+rsi] - movdqa XMMWORD PTR[320+rsp],xmm0 - movdqa XMMWORD PTR[(320+16)+rsp],xmm1 - movdqa XMMWORD PTR[352+rsp],xmm2 - movdqa XMMWORD PTR[(352+16)+rsp],xmm3 - movdqa XMMWORD PTR[384+rsp],xmm4 - movdqa XMMWORD PTR[(384+16)+rsp],xmm5 - por xmm5,xmm4 - - movdqu xmm0,XMMWORD PTR[rbx] - pshufd xmm3,xmm5,0b1h - movdqu xmm1,XMMWORD PTR[16+rbx] - movdqu xmm2,XMMWORD PTR[32+rbx] - por xmm5,xmm3 - movdqu xmm3,XMMWORD PTR[48+rbx] - movdqa XMMWORD PTR[416+rsp],xmm0 - pshufd xmm4,xmm5,01eh - movdqa XMMWORD PTR[(416+16)+rsp],xmm1 - por xmm1,xmm0 -DB 102,72,15,110,199 - movdqa XMMWORD PTR[448+rsp],xmm2 - movdqa XMMWORD PTR[(448+16)+rsp],xmm3 - por xmm3,xmm2 - por xmm5,xmm4 - pxor xmm4,xmm4 - por xmm3,xmm1 - - lea rsi,QWORD PTR[((64-0))+rsi] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_sqr_montq - - pcmpeqd xmm5,xmm4 - pshufd xmm4,xmm3,0b1h - mov rax,QWORD PTR[rbx] - - mov r9,r12 - por xmm4,xmm3 - pshufd xmm5,xmm5,0 - pshufd xmm3,xmm4,01eh - mov r10,r13 - por xmm4,xmm3 - pxor xmm3,xmm3 - mov r11,r14 - pcmpeqd xmm4,xmm3 - pshufd xmm4,xmm4,0 - - lea rsi,QWORD PTR[((32-0))+rsp] - mov r12,r15 - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[320+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[384+rsp] - lea rbx,QWORD PTR[384+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[288+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[448+rsp] - lea rbx,QWORD PTR[448+rsp] - mov r9,QWORD PTR[((0+32))+rsp] - mov r10,QWORD PTR[((8+32))+rsp] - lea rsi,QWORD PTR[((0+32))+rsp] - mov r11,QWORD PTR[((16+32))+rsp] - mov r12,QWORD PTR[((24+32))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[352+rsp] - lea rdi,QWORD PTR[96+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+64))+rsp] - mov r14,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r15,QWORD PTR[((16+64))+rsp] - mov r8,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[128+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[((0+96))+rsp] - mov r14,QWORD PTR[((8+96))+rsp] - lea rsi,QWORD PTR[((0+96))+rsp] - mov r15,QWORD PTR[((16+96))+rsp] - mov r8,QWORD PTR[((24+96))+rsp] - lea rdi,QWORD PTR[192+rsp] - call __ecp_nistz256_sqr_montq - - mov rax,QWORD PTR[128+rsp] - lea rbx,QWORD PTR[128+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[160+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[320+rsp] - lea rbx,QWORD PTR[320+rsp] - mov r9,QWORD PTR[((0+128))+rsp] - mov r10,QWORD PTR[((8+128))+rsp] - lea rsi,QWORD PTR[((0+128))+rsp] - mov r11,QWORD PTR[((16+128))+rsp] - mov r12,QWORD PTR[((24+128))+rsp] - lea rdi,QWORD PTR[rsp] - call __ecp_nistz256_mul_montq - - - - - xor r11,r11 - add r12,r12 - lea rsi,QWORD PTR[192+rsp] - adc r13,r13 - mov rax,r12 - adc r8,r8 - adc r9,r9 - mov rbp,r13 - adc r11,0 - - sub r12,-1 - mov rcx,r8 - sbb r13,r14 - sbb r8,0 - mov r10,r9 - sbb r9,r15 - sbb r11,0 - - cmovc r12,rax - mov rax,QWORD PTR[rsi] - cmovc r13,rbp - mov rbp,QWORD PTR[8+rsi] - cmovc r8,rcx - mov rcx,QWORD PTR[16+rsi] - cmovc r9,r10 - mov r10,QWORD PTR[24+rsi] - - call __ecp_nistz256_subq - - lea rbx,QWORD PTR[160+rsp] - lea rdi,QWORD PTR[224+rsp] - call __ecp_nistz256_sub_fromq - - mov rax,QWORD PTR[((0+0))+rsp] - mov rbp,QWORD PTR[((0+8))+rsp] - mov rcx,QWORD PTR[((0+16))+rsp] - mov r10,QWORD PTR[((0+24))+rsp] - lea rdi,QWORD PTR[64+rsp] - - call __ecp_nistz256_subq - - mov QWORD PTR[rdi],r12 - mov QWORD PTR[8+rdi],r13 - mov QWORD PTR[16+rdi],r8 - mov QWORD PTR[24+rdi],r9 - mov rax,QWORD PTR[352+rsp] - lea rbx,QWORD PTR[352+rsp] - mov r9,QWORD PTR[((0+160))+rsp] - mov r10,QWORD PTR[((8+160))+rsp] - lea rsi,QWORD PTR[((0+160))+rsp] - mov r11,QWORD PTR[((16+160))+rsp] - mov r12,QWORD PTR[((24+160))+rsp] - lea rdi,QWORD PTR[32+rsp] - call __ecp_nistz256_mul_montq - - mov rax,QWORD PTR[96+rsp] - lea rbx,QWORD PTR[96+rsp] - mov r9,QWORD PTR[((0+64))+rsp] - mov r10,QWORD PTR[((8+64))+rsp] - lea rsi,QWORD PTR[((0+64))+rsp] - mov r11,QWORD PTR[((16+64))+rsp] - mov r12,QWORD PTR[((24+64))+rsp] - lea rdi,QWORD PTR[64+rsp] - call __ecp_nistz256_mul_montq - - lea rbx,QWORD PTR[32+rsp] - lea rdi,QWORD PTR[256+rsp] - call __ecp_nistz256_sub_fromq - -DB 102,72,15,126,199 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[288+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((288+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[$L$ONE_mont] - pand xmm3,XMMWORD PTR[(($L$ONE_mont+16))] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[384+rsp] - pand xmm3,XMMWORD PTR[((384+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[64+rdi],xmm2 - movdqu XMMWORD PTR[80+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[224+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((224+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[416+rsp] - pand xmm3,XMMWORD PTR[((416+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[320+rsp] - pand xmm3,XMMWORD PTR[((320+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[rdi],xmm2 - movdqu XMMWORD PTR[16+rdi],xmm3 - - movdqa xmm0,xmm5 - movdqa xmm1,xmm5 - pandn xmm0,XMMWORD PTR[256+rsp] - movdqa xmm2,xmm5 - pandn xmm1,XMMWORD PTR[((256+16))+rsp] - movdqa xmm3,xmm5 - pand xmm2,XMMWORD PTR[448+rsp] - pand xmm3,XMMWORD PTR[((448+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - - movdqa xmm0,xmm4 - movdqa xmm1,xmm4 - pandn xmm0,xmm2 - movdqa xmm2,xmm4 - pandn xmm1,xmm3 - movdqa xmm3,xmm4 - pand xmm2,XMMWORD PTR[352+rsp] - pand xmm3,XMMWORD PTR[((352+16))+rsp] - por xmm2,xmm0 - por xmm3,xmm1 - movdqu XMMWORD PTR[32+rdi],xmm2 - movdqu XMMWORD PTR[48+rdi],xmm3 - - add rsp,32*15+8 - pop r15 - pop r14 - pop r13 - pop r12 - pop rbx - pop rbp - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_ecp_nistz256_point_add_affine:: -ecp_nistz256_point_add_affine ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/md5/md5-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/md5/md5-x86_64.asm deleted file mode 100644 index d2faa88e8a5f9d..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/md5/md5-x86_64.asm +++ /dev/null @@ -1,778 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -ALIGN 16 - -PUBLIC md5_block_asm_data_order - -md5_block_asm_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_md5_block_asm_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbp - push rbx - push r12 - push r14 - push r15 -$L$prologue:: - - - - - mov rbp,rdi - shl rdx,6 - lea rdi,QWORD PTR[rdx*1+rsi] - mov eax,DWORD PTR[rbp] - mov ebx,DWORD PTR[4+rbp] - mov ecx,DWORD PTR[8+rbp] - mov edx,DWORD PTR[12+rbp] - - - - - - - - cmp rsi,rdi - je $L$end - - -$L$loop:: - mov r8d,eax - mov r9d,ebx - mov r14d,ecx - mov r15d,edx - mov r10d,DWORD PTR[rsi] - mov r11d,edx - xor r11d,ecx - lea eax,DWORD PTR[((-680876936))+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[4+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-389564586))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[8+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[606105819+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[12+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-1044525330))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[16+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[((-176418897))+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[20+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[1200080426+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[24+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-1473231341))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[28+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-45705983))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[32+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[1770035416+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[36+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-1958414417))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[40+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-42063))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[44+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[((-1990404162))+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[48+rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - xor r11d,ecx - lea eax,DWORD PTR[1804603682+r10*1+rax] - and r11d,ebx - xor r11d,edx - mov r10d,DWORD PTR[52+rsi] - add eax,r11d - rol eax,7 - mov r11d,ecx - add eax,ebx - xor r11d,ebx - lea edx,DWORD PTR[((-40341101))+r10*1+rdx] - and r11d,eax - xor r11d,ecx - mov r10d,DWORD PTR[56+rsi] - add edx,r11d - rol edx,12 - mov r11d,ebx - add edx,eax - xor r11d,eax - lea ecx,DWORD PTR[((-1502002290))+r10*1+rcx] - and r11d,edx - xor r11d,ebx - mov r10d,DWORD PTR[60+rsi] - add ecx,r11d - rol ecx,17 - mov r11d,eax - add ecx,edx - xor r11d,edx - lea ebx,DWORD PTR[1236535329+r10*1+rbx] - and r11d,ecx - xor r11d,eax - mov r10d,DWORD PTR[rsi] - add ebx,r11d - rol ebx,22 - mov r11d,edx - add ebx,ecx - mov r10d,DWORD PTR[4+rsi] - mov r11d,edx - mov r12d,edx - not r11d - lea eax,DWORD PTR[((-165796510))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[24+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-1069501632))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[44+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[643717713+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-373897302))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[20+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[((-701558691))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[40+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[38016083+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[60+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[((-660478335))+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[16+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-405537848))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[36+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[568446438+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[56+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-1019803690))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[12+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[((-187363961))+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[32+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[1163531501+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[52+rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - not r11d - lea eax,DWORD PTR[((-1444681467))+r10*1+rax] - and r12d,ebx - and r11d,ecx - mov r10d,DWORD PTR[8+rsi] - or r12d,r11d - mov r11d,ecx - add eax,r12d - mov r12d,ecx - rol eax,5 - add eax,ebx - not r11d - lea edx,DWORD PTR[((-51403784))+r10*1+rdx] - and r12d,eax - and r11d,ebx - mov r10d,DWORD PTR[28+rsi] - or r12d,r11d - mov r11d,ebx - add edx,r12d - mov r12d,ebx - rol edx,9 - add edx,eax - not r11d - lea ecx,DWORD PTR[1735328473+r10*1+rcx] - and r12d,edx - and r11d,eax - mov r10d,DWORD PTR[48+rsi] - or r12d,r11d - mov r11d,eax - add ecx,r12d - mov r12d,eax - rol ecx,14 - add ecx,edx - not r11d - lea ebx,DWORD PTR[((-1926607734))+r10*1+rbx] - and r12d,ecx - and r11d,edx - mov r10d,DWORD PTR[rsi] - or r12d,r11d - mov r11d,edx - add ebx,r12d - mov r12d,edx - rol ebx,20 - add ebx,ecx - mov r10d,DWORD PTR[20+rsi] - mov r11d,ecx - lea eax,DWORD PTR[((-378558))+r10*1+rax] - mov r10d,DWORD PTR[32+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-2022574463))+r10*1+rdx] - mov r10d,DWORD PTR[44+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[1839030562+r10*1+rcx] - mov r10d,DWORD PTR[56+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-35309556))+r10*1+rbx] - mov r10d,DWORD PTR[4+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[((-1530992060))+r10*1+rax] - mov r10d,DWORD PTR[16+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[1272893353+r10*1+rdx] - mov r10d,DWORD PTR[28+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[((-155497632))+r10*1+rcx] - mov r10d,DWORD PTR[40+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-1094730640))+r10*1+rbx] - mov r10d,DWORD PTR[52+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[681279174+r10*1+rax] - mov r10d,DWORD PTR[rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-358537222))+r10*1+rdx] - mov r10d,DWORD PTR[12+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[((-722521979))+r10*1+rcx] - mov r10d,DWORD PTR[24+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[76029189+r10*1+rbx] - mov r10d,DWORD PTR[36+rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - lea eax,DWORD PTR[((-640364487))+r10*1+rax] - mov r10d,DWORD PTR[48+rsi] - xor r11d,edx - xor r11d,ebx - add eax,r11d - rol eax,4 - mov r11d,ebx - add eax,ebx - lea edx,DWORD PTR[((-421815835))+r10*1+rdx] - mov r10d,DWORD PTR[60+rsi] - xor r11d,ecx - xor r11d,eax - add edx,r11d - rol edx,11 - mov r11d,eax - add edx,eax - lea ecx,DWORD PTR[530742520+r10*1+rcx] - mov r10d,DWORD PTR[8+rsi] - xor r11d,ebx - xor r11d,edx - add ecx,r11d - rol ecx,16 - mov r11d,edx - add ecx,edx - lea ebx,DWORD PTR[((-995338651))+r10*1+rbx] - mov r10d,DWORD PTR[rsi] - xor r11d,eax - xor r11d,ecx - add ebx,r11d - rol ebx,23 - mov r11d,ecx - add ebx,ecx - mov r10d,DWORD PTR[rsi] - mov r11d,0ffffffffh - xor r11d,edx - lea eax,DWORD PTR[((-198630844))+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[28+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[1126891415+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[56+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1416354905))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[20+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-57434055))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[48+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[1700485571+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[12+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-1894986606))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[40+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1051523))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[4+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-2054922799))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[32+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[1873313359+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[60+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-30611744))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[24+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[((-1560198380))+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[52+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[1309151649+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[16+rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - lea eax,DWORD PTR[((-145523070))+r10*1+rax] - or r11d,ebx - xor r11d,ecx - add eax,r11d - mov r10d,DWORD PTR[44+rsi] - mov r11d,0ffffffffh - rol eax,6 - xor r11d,ecx - add eax,ebx - lea edx,DWORD PTR[((-1120210379))+r10*1+rdx] - or r11d,eax - xor r11d,ebx - add edx,r11d - mov r10d,DWORD PTR[8+rsi] - mov r11d,0ffffffffh - rol edx,10 - xor r11d,ebx - add edx,eax - lea ecx,DWORD PTR[718787259+r10*1+rcx] - or r11d,edx - xor r11d,eax - add ecx,r11d - mov r10d,DWORD PTR[36+rsi] - mov r11d,0ffffffffh - rol ecx,15 - xor r11d,eax - add ecx,edx - lea ebx,DWORD PTR[((-343485551))+r10*1+rbx] - or r11d,ecx - xor r11d,edx - add ebx,r11d - mov r10d,DWORD PTR[rsi] - mov r11d,0ffffffffh - rol ebx,21 - xor r11d,edx - add ebx,ecx - - add eax,r8d - add ebx,r9d - add ecx,r14d - add edx,r15d - - - add rsi,64 - cmp rsi,rdi - jb $L$loop - - -$L$end:: - mov DWORD PTR[rbp],eax - mov DWORD PTR[4+rbp],ebx - mov DWORD PTR[8+rbp],ecx - mov DWORD PTR[12+rbp],edx - - mov r15,QWORD PTR[rsp] - mov r14,QWORD PTR[8+rsp] - mov r12,QWORD PTR[16+rsp] - mov rbx,QWORD PTR[24+rsp] - mov rbp,QWORD PTR[32+rsp] - add rsp,40 -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_md5_block_asm_data_order:: -md5_block_asm_data_order ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[40+rax] - - mov rbp,QWORD PTR[((-8))+rax] - mov rbx,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r14,QWORD PTR[((-32))+rax] - mov r15,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_md5_block_asm_data_order - DD imagerel $L$SEH_end_md5_block_asm_data_order - DD imagerel $L$SEH_info_md5_block_asm_data_order - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_md5_block_asm_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/modes/aesni-gcm-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/modes/aesni-gcm-x86_64.asm deleted file mode 100644 index 828be8d124e34e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/modes/aesni-gcm-x86_64.asm +++ /dev/null @@ -1,19 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC aesni_gcm_encrypt - -aesni_gcm_encrypt PROC PUBLIC - xor eax,eax - DB 0F3h,0C3h ;repret -aesni_gcm_encrypt ENDP - -PUBLIC aesni_gcm_decrypt - -aesni_gcm_decrypt PROC PUBLIC - xor eax,eax - DB 0F3h,0C3h ;repret -aesni_gcm_decrypt ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/modes/ghash-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/modes/ghash-x86_64.asm deleted file mode 100644 index 9993d75939bc58..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/modes/ghash-x86_64.asm +++ /dev/null @@ -1,1510 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC gcm_gmult_4bit - -ALIGN 16 -gcm_gmult_4bit PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_gcm_gmult_4bit:: - mov rdi,rcx - mov rsi,rdx - - - push rbx - push rbp - push r12 -$L$gmult_prologue:: - - movzx r8,BYTE PTR[15+rdi] - lea r11,QWORD PTR[$L$rem_4bit] - xor rax,rax - xor rbx,rbx - mov al,r8b - mov bl,r8b - shl al,4 - mov rcx,14 - mov r8,QWORD PTR[8+rax*1+rsi] - mov r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - mov rdx,r8 - jmp $L$oop1 - -ALIGN 16 -$L$oop1:: - shr r8,4 - and rdx,0fh - mov r10,r9 - mov al,BYTE PTR[rcx*1+rdi] - shr r9,4 - xor r8,QWORD PTR[8+rbx*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rbx*1+rsi] - mov bl,al - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - shl al,4 - xor r8,r10 - dec rcx - js $L$break1 - - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rax*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - xor r8,r10 - jmp $L$oop1 - -ALIGN 16 -$L$break1:: - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rax*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rax*1+rsi] - and bl,0f0h - xor r9,QWORD PTR[rdx*8+r11] - mov rdx,r8 - xor r8,r10 - - shr r8,4 - and rdx,0fh - mov r10,r9 - shr r9,4 - xor r8,QWORD PTR[8+rbx*1+rsi] - shl r10,60 - xor r9,QWORD PTR[rbx*1+rsi] - xor r8,r10 - xor r9,QWORD PTR[rdx*8+r11] - - bswap r8 - bswap r9 - mov QWORD PTR[8+rdi],r8 - mov QWORD PTR[rdi],r9 - - mov rbx,QWORD PTR[16+rsp] - lea rsp,QWORD PTR[24+rsp] -$L$gmult_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_gcm_gmult_4bit:: -gcm_gmult_4bit ENDP -PUBLIC gcm_ghash_4bit - -ALIGN 16 -gcm_ghash_4bit PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_gcm_ghash_4bit:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,280 -$L$ghash_prologue:: - mov r14,rdx - mov r15,rcx - sub rsi,-128 - lea rbp,QWORD PTR[((16+128))+rsp] - xor edx,edx - mov r8,QWORD PTR[((0+0-128))+rsi] - mov rax,QWORD PTR[((0+8-128))+rsi] - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov r9,QWORD PTR[((16+0-128))+rsi] - shl dl,4 - mov rbx,QWORD PTR[((16+8-128))+rsi] - shl r10,60 - mov BYTE PTR[rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[rbp],r8 - mov r8,QWORD PTR[((32+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((0-128))+rbp],rax - mov rax,QWORD PTR[((32+8-128))+rsi] - shl r10,60 - mov BYTE PTR[1+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[8+rbp],r9 - mov r9,QWORD PTR[((48+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((8-128))+rbp],rbx - mov rbx,QWORD PTR[((48+8-128))+rsi] - shl r10,60 - mov BYTE PTR[2+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[16+rbp],r8 - mov r8,QWORD PTR[((64+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((16-128))+rbp],rax - mov rax,QWORD PTR[((64+8-128))+rsi] - shl r10,60 - mov BYTE PTR[3+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[24+rbp],r9 - mov r9,QWORD PTR[((80+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((24-128))+rbp],rbx - mov rbx,QWORD PTR[((80+8-128))+rsi] - shl r10,60 - mov BYTE PTR[4+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[32+rbp],r8 - mov r8,QWORD PTR[((96+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((32-128))+rbp],rax - mov rax,QWORD PTR[((96+8-128))+rsi] - shl r10,60 - mov BYTE PTR[5+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[40+rbp],r9 - mov r9,QWORD PTR[((112+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((40-128))+rbp],rbx - mov rbx,QWORD PTR[((112+8-128))+rsi] - shl r10,60 - mov BYTE PTR[6+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[48+rbp],r8 - mov r8,QWORD PTR[((128+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((48-128))+rbp],rax - mov rax,QWORD PTR[((128+8-128))+rsi] - shl r10,60 - mov BYTE PTR[7+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[56+rbp],r9 - mov r9,QWORD PTR[((144+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((56-128))+rbp],rbx - mov rbx,QWORD PTR[((144+8-128))+rsi] - shl r10,60 - mov BYTE PTR[8+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[64+rbp],r8 - mov r8,QWORD PTR[((160+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((64-128))+rbp],rax - mov rax,QWORD PTR[((160+8-128))+rsi] - shl r10,60 - mov BYTE PTR[9+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[72+rbp],r9 - mov r9,QWORD PTR[((176+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((72-128))+rbp],rbx - mov rbx,QWORD PTR[((176+8-128))+rsi] - shl r10,60 - mov BYTE PTR[10+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[80+rbp],r8 - mov r8,QWORD PTR[((192+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((80-128))+rbp],rax - mov rax,QWORD PTR[((192+8-128))+rsi] - shl r10,60 - mov BYTE PTR[11+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[88+rbp],r9 - mov r9,QWORD PTR[((208+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((88-128))+rbp],rbx - mov rbx,QWORD PTR[((208+8-128))+rsi] - shl r10,60 - mov BYTE PTR[12+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[96+rbp],r8 - mov r8,QWORD PTR[((224+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((96-128))+rbp],rax - mov rax,QWORD PTR[((224+8-128))+rsi] - shl r10,60 - mov BYTE PTR[13+rsp],dl - or rbx,r10 - mov dl,al - shr rax,4 - mov r10,r8 - shr r8,4 - mov QWORD PTR[104+rbp],r9 - mov r9,QWORD PTR[((240+0-128))+rsi] - shl dl,4 - mov QWORD PTR[((104-128))+rbp],rbx - mov rbx,QWORD PTR[((240+8-128))+rsi] - shl r10,60 - mov BYTE PTR[14+rsp],dl - or rax,r10 - mov dl,bl - shr rbx,4 - mov r10,r9 - shr r9,4 - mov QWORD PTR[112+rbp],r8 - shl dl,4 - mov QWORD PTR[((112-128))+rbp],rax - shl r10,60 - mov BYTE PTR[15+rsp],dl - or rbx,r10 - mov QWORD PTR[120+rbp],r9 - mov QWORD PTR[((120-128))+rbp],rbx - add rsi,-128 - mov r8,QWORD PTR[8+rdi] - mov r9,QWORD PTR[rdi] - add r15,r14 - lea r11,QWORD PTR[$L$rem_8bit] - jmp $L$outer_loop -ALIGN 16 -$L$outer_loop:: - xor r9,QWORD PTR[r14] - mov rdx,QWORD PTR[8+r14] - lea r14,QWORD PTR[16+r14] - xor rdx,r8 - mov QWORD PTR[rdi],r9 - mov QWORD PTR[8+rdi],rdx - shr rdx,32 - xor rax,rax - rol edx,8 - mov al,dl - movzx ebx,dl - shl al,4 - shr ebx,4 - rol edx,8 - mov r8,QWORD PTR[8+rax*1+rsi] - mov r9,QWORD PTR[rax*1+rsi] - mov al,dl - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - xor r12,r8 - mov r10,r9 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[8+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[4+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - shr ecx,4 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r12,WORD PTR[r12*2+r11] - movzx ebx,dl - shl al,4 - movzx r13,BYTE PTR[rcx*1+rsp] - shr ebx,4 - shl r12,48 - xor r13,r8 - mov r10,r9 - xor r9,r12 - shr r8,8 - movzx r13,r13b - shr r9,8 - xor r8,QWORD PTR[((-128))+rcx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rcx*8+rbp] - rol edx,8 - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - mov al,dl - xor r8,r10 - movzx r13,WORD PTR[r13*2+r11] - movzx ecx,dl - shl al,4 - movzx r12,BYTE PTR[rbx*1+rsp] - and ecx,240 - shl r13,48 - xor r12,r8 - mov r10,r9 - xor r9,r13 - shr r8,8 - movzx r12,r12b - mov edx,DWORD PTR[((-4))+rdi] - shr r9,8 - xor r8,QWORD PTR[((-128))+rbx*8+rbp] - shl r10,56 - xor r9,QWORD PTR[rbx*8+rbp] - movzx r12,WORD PTR[r12*2+r11] - xor r8,QWORD PTR[8+rax*1+rsi] - xor r9,QWORD PTR[rax*1+rsi] - shl r12,48 - xor r8,r10 - xor r9,r12 - movzx r13,r8b - shr r8,4 - mov r10,r9 - shl r13b,4 - shr r9,4 - xor r8,QWORD PTR[8+rcx*1+rsi] - movzx r13,WORD PTR[r13*2+r11] - shl r10,60 - xor r9,QWORD PTR[rcx*1+rsi] - xor r8,r10 - shl r13,48 - bswap r8 - xor r9,r13 - bswap r9 - cmp r14,r15 - jb $L$outer_loop - mov QWORD PTR[8+rdi],r8 - mov QWORD PTR[rdi],r9 - - lea rsi,QWORD PTR[280+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$ghash_epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_gcm_ghash_4bit:: -gcm_ghash_4bit ENDP -PUBLIC gcm_init_clmul - -ALIGN 16 -gcm_init_clmul PROC PUBLIC -$L$_init_clmul:: -$L$SEH_begin_gcm_init_clmul:: - -DB 048h,083h,0ech,018h -DB 00fh,029h,034h,024h - movdqu xmm2,XMMWORD PTR[rdx] - pshufd xmm2,xmm2,78 - - - pshufd xmm4,xmm2,255 - movdqa xmm3,xmm2 - psllq xmm2,1 - pxor xmm5,xmm5 - psrlq xmm3,63 - pcmpgtd xmm5,xmm4 - pslldq xmm3,8 - por xmm2,xmm3 - - - pand xmm5,XMMWORD PTR[$L$0x1c2_polynomial] - pxor xmm2,xmm5 - - - pshufd xmm6,xmm2,78 - movdqa xmm0,xmm2 - pxor xmm6,xmm2 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm2,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm2 - movdqu XMMWORD PTR[rcx],xmm2 - pxor xmm4,xmm0 - movdqu XMMWORD PTR[16+rcx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR[32+rcx],xmm4 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - movdqa xmm5,xmm0 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,222,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm5,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm5 - movdqu XMMWORD PTR[48+rcx],xmm5 - pxor xmm4,xmm0 - movdqu XMMWORD PTR[64+rcx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR[80+rcx],xmm4 - movaps xmm6,XMMWORD PTR[rsp] - lea rsp,QWORD PTR[24+rsp] -$L$SEH_end_gcm_init_clmul:: - DB 0F3h,0C3h ;repret -gcm_init_clmul ENDP -PUBLIC gcm_gmult_clmul - -ALIGN 16 -gcm_gmult_clmul PROC PUBLIC -$L$_gmult_clmul:: - movdqu xmm0,XMMWORD PTR[rcx] - movdqa xmm5,XMMWORD PTR[$L$bswap_mask] - movdqu xmm2,XMMWORD PTR[rdx] - movdqu xmm4,XMMWORD PTR[32+rdx] -DB 102,15,56,0,197 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,56,0,197 - movdqu XMMWORD PTR[rcx],xmm0 - DB 0F3h,0C3h ;repret -gcm_gmult_clmul ENDP -PUBLIC gcm_ghash_clmul - -ALIGN 32 -gcm_ghash_clmul PROC PUBLIC -$L$_ghash_clmul:: - lea rax,QWORD PTR[((-136))+rsp] -$L$SEH_begin_gcm_ghash_clmul:: - -DB 048h,08dh,060h,0e0h -DB 00fh,029h,070h,0e0h -DB 00fh,029h,078h,0f0h -DB 044h,00fh,029h,000h -DB 044h,00fh,029h,048h,010h -DB 044h,00fh,029h,050h,020h -DB 044h,00fh,029h,058h,030h -DB 044h,00fh,029h,060h,040h -DB 044h,00fh,029h,068h,050h -DB 044h,00fh,029h,070h,060h -DB 044h,00fh,029h,078h,070h - movdqa xmm10,XMMWORD PTR[$L$bswap_mask] - - movdqu xmm0,XMMWORD PTR[rcx] - movdqu xmm2,XMMWORD PTR[rdx] - movdqu xmm7,XMMWORD PTR[32+rdx] -DB 102,65,15,56,0,194 - - sub r9,010h - jz $L$odd_tail - - movdqu xmm6,XMMWORD PTR[16+rdx] - mov eax,DWORD PTR[((OPENSSL_ia32cap_P+4))] - cmp r9,030h - jb $L$skip4x - - and eax,71303168 - cmp eax,4194304 - je $L$skip4x - - sub r9,030h - mov rax,0A040608020C0E000h - movdqu xmm14,XMMWORD PTR[48+rdx] - movdqu xmm15,XMMWORD PTR[64+rdx] - - - - - movdqu xmm3,XMMWORD PTR[48+r8] - movdqu xmm11,XMMWORD PTR[32+r8] -DB 102,65,15,56,0,218 -DB 102,69,15,56,0,218 - movdqa xmm5,xmm3 - pshufd xmm4,xmm3,78 - pxor xmm4,xmm3 -DB 102,15,58,68,218,0 -DB 102,15,58,68,234,17 -DB 102,15,58,68,231,0 - - movdqa xmm13,xmm11 - pshufd xmm12,xmm11,78 - pxor xmm12,xmm11 -DB 102,68,15,58,68,222,0 -DB 102,68,15,58,68,238,17 -DB 102,68,15,58,68,231,16 - xorps xmm3,xmm11 - xorps xmm5,xmm13 - movups xmm7,XMMWORD PTR[80+rdx] - xorps xmm4,xmm12 - - movdqu xmm11,XMMWORD PTR[16+r8] - movdqu xmm8,XMMWORD PTR[r8] -DB 102,69,15,56,0,218 -DB 102,69,15,56,0,194 - movdqa xmm13,xmm11 - pshufd xmm12,xmm11,78 - pxor xmm0,xmm8 - pxor xmm12,xmm11 -DB 102,69,15,58,68,222,0 - movdqa xmm1,xmm0 - pshufd xmm8,xmm0,78 - pxor xmm8,xmm0 -DB 102,69,15,58,68,238,17 -DB 102,68,15,58,68,231,0 - xorps xmm3,xmm11 - xorps xmm5,xmm13 - - lea r8,QWORD PTR[64+r8] - sub r9,040h - jc $L$tail4x - - jmp $L$mod4_loop -ALIGN 32 -$L$mod4_loop:: -DB 102,65,15,58,68,199,0 - xorps xmm4,xmm12 - movdqu xmm11,XMMWORD PTR[48+r8] -DB 102,69,15,56,0,218 -DB 102,65,15,58,68,207,17 - xorps xmm0,xmm3 - movdqu xmm3,XMMWORD PTR[32+r8] - movdqa xmm13,xmm11 -DB 102,68,15,58,68,199,16 - pshufd xmm12,xmm11,78 - xorps xmm1,xmm5 - pxor xmm12,xmm11 -DB 102,65,15,56,0,218 - movups xmm7,XMMWORD PTR[32+rdx] - xorps xmm8,xmm4 -DB 102,68,15,58,68,218,0 - pshufd xmm4,xmm3,78 - - pxor xmm8,xmm0 - movdqa xmm5,xmm3 - pxor xmm8,xmm1 - pxor xmm4,xmm3 - movdqa xmm9,xmm8 -DB 102,68,15,58,68,234,17 - pslldq xmm8,8 - psrldq xmm9,8 - pxor xmm0,xmm8 - movdqa xmm8,XMMWORD PTR[$L$7_mask] - pxor xmm1,xmm9 -DB 102,76,15,110,200 - - pand xmm8,xmm0 -DB 102,69,15,56,0,200 - pxor xmm9,xmm0 -DB 102,68,15,58,68,231,0 - psllq xmm9,57 - movdqa xmm8,xmm9 - pslldq xmm9,8 -DB 102,15,58,68,222,0 - psrldq xmm8,8 - pxor xmm0,xmm9 - pxor xmm1,xmm8 - movdqu xmm8,XMMWORD PTR[r8] - - movdqa xmm9,xmm0 - psrlq xmm0,1 -DB 102,15,58,68,238,17 - xorps xmm3,xmm11 - movdqu xmm11,XMMWORD PTR[16+r8] -DB 102,69,15,56,0,218 -DB 102,15,58,68,231,16 - xorps xmm5,xmm13 - movups xmm7,XMMWORD PTR[80+rdx] -DB 102,69,15,56,0,194 - pxor xmm1,xmm9 - pxor xmm9,xmm0 - psrlq xmm0,5 - - movdqa xmm13,xmm11 - pxor xmm4,xmm12 - pshufd xmm12,xmm11,78 - pxor xmm0,xmm9 - pxor xmm1,xmm8 - pxor xmm12,xmm11 -DB 102,69,15,58,68,222,0 - psrlq xmm0,1 - pxor xmm0,xmm1 - movdqa xmm1,xmm0 -DB 102,69,15,58,68,238,17 - xorps xmm3,xmm11 - pshufd xmm8,xmm0,78 - pxor xmm8,xmm0 - -DB 102,68,15,58,68,231,0 - xorps xmm5,xmm13 - - lea r8,QWORD PTR[64+r8] - sub r9,040h - jnc $L$mod4_loop - -$L$tail4x:: -DB 102,65,15,58,68,199,0 -DB 102,65,15,58,68,207,17 -DB 102,68,15,58,68,199,16 - xorps xmm4,xmm12 - xorps xmm0,xmm3 - xorps xmm1,xmm5 - pxor xmm1,xmm0 - pxor xmm8,xmm4 - - pxor xmm8,xmm1 - pxor xmm1,xmm0 - - movdqa xmm9,xmm8 - psrldq xmm8,8 - pslldq xmm9,8 - pxor xmm1,xmm8 - pxor xmm0,xmm9 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - add r9,040h - jz $L$done - movdqu xmm7,XMMWORD PTR[32+rdx] - sub r9,010h - jz $L$odd_tail -$L$skip4x:: - - - - - - movdqu xmm8,XMMWORD PTR[r8] - movdqu xmm3,XMMWORD PTR[16+r8] -DB 102,69,15,56,0,194 -DB 102,65,15,56,0,218 - pxor xmm0,xmm8 - - movdqa xmm5,xmm3 - pshufd xmm4,xmm3,78 - pxor xmm4,xmm3 -DB 102,15,58,68,218,0 -DB 102,15,58,68,234,17 -DB 102,15,58,68,231,0 - - lea r8,QWORD PTR[32+r8] - nop - sub r9,020h - jbe $L$even_tail - nop - jmp $L$mod_loop - -ALIGN 32 -$L$mod_loop:: - movdqa xmm1,xmm0 - movdqa xmm8,xmm4 - pshufd xmm4,xmm0,78 - pxor xmm4,xmm0 - -DB 102,15,58,68,198,0 -DB 102,15,58,68,206,17 -DB 102,15,58,68,231,16 - - pxor xmm0,xmm3 - pxor xmm1,xmm5 - movdqu xmm9,XMMWORD PTR[r8] - pxor xmm8,xmm0 -DB 102,69,15,56,0,202 - movdqu xmm3,XMMWORD PTR[16+r8] - - pxor xmm8,xmm1 - pxor xmm1,xmm9 - pxor xmm4,xmm8 -DB 102,65,15,56,0,218 - movdqa xmm8,xmm4 - psrldq xmm8,8 - pslldq xmm4,8 - pxor xmm1,xmm8 - pxor xmm0,xmm4 - - movdqa xmm5,xmm3 - - movdqa xmm9,xmm0 - movdqa xmm8,xmm0 - psllq xmm0,5 - pxor xmm8,xmm0 -DB 102,15,58,68,218,0 - psllq xmm0,1 - pxor xmm0,xmm8 - psllq xmm0,57 - movdqa xmm8,xmm0 - pslldq xmm0,8 - psrldq xmm8,8 - pxor xmm0,xmm9 - pshufd xmm4,xmm5,78 - pxor xmm1,xmm8 - pxor xmm4,xmm5 - - movdqa xmm9,xmm0 - psrlq xmm0,1 -DB 102,15,58,68,234,17 - pxor xmm1,xmm9 - pxor xmm9,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm9 - lea r8,QWORD PTR[32+r8] - psrlq xmm0,1 -DB 102,15,58,68,231,0 - pxor xmm0,xmm1 - - sub r9,020h - ja $L$mod_loop - -$L$even_tail:: - movdqa xmm1,xmm0 - movdqa xmm8,xmm4 - pshufd xmm4,xmm0,78 - pxor xmm4,xmm0 - -DB 102,15,58,68,198,0 -DB 102,15,58,68,206,17 -DB 102,15,58,68,231,16 - - pxor xmm0,xmm3 - pxor xmm1,xmm5 - pxor xmm8,xmm0 - pxor xmm8,xmm1 - pxor xmm4,xmm8 - movdqa xmm8,xmm4 - psrldq xmm8,8 - pslldq xmm4,8 - pxor xmm1,xmm8 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - test r9,r9 - jnz $L$done - -$L$odd_tail:: - movdqu xmm8,XMMWORD PTR[r8] -DB 102,69,15,56,0,194 - pxor xmm0,xmm8 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,223,0 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - - - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -$L$done:: -DB 102,65,15,56,0,194 - movdqu XMMWORD PTR[rcx],xmm0 - movaps xmm6,XMMWORD PTR[rsp] - movaps xmm7,XMMWORD PTR[16+rsp] - movaps xmm8,XMMWORD PTR[32+rsp] - movaps xmm9,XMMWORD PTR[48+rsp] - movaps xmm10,XMMWORD PTR[64+rsp] - movaps xmm11,XMMWORD PTR[80+rsp] - movaps xmm12,XMMWORD PTR[96+rsp] - movaps xmm13,XMMWORD PTR[112+rsp] - movaps xmm14,XMMWORD PTR[128+rsp] - movaps xmm15,XMMWORD PTR[144+rsp] - lea rsp,QWORD PTR[168+rsp] -$L$SEH_end_gcm_ghash_clmul:: - DB 0F3h,0C3h ;repret -gcm_ghash_clmul ENDP -PUBLIC gcm_init_avx - -ALIGN 32 -gcm_init_avx PROC PUBLIC - jmp $L$_init_clmul -gcm_init_avx ENDP -PUBLIC gcm_gmult_avx - -ALIGN 32 -gcm_gmult_avx PROC PUBLIC - jmp $L$_gmult_clmul -gcm_gmult_avx ENDP -PUBLIC gcm_ghash_avx - -ALIGN 32 -gcm_ghash_avx PROC PUBLIC - jmp $L$_ghash_clmul -gcm_ghash_avx ENDP -ALIGN 64 -$L$bswap_mask:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -$L$0x1c2_polynomial:: -DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0c2h -$L$7_mask:: - DD 7,0,7,0 -$L$7_mask_poly:: - DD 7,0,450,0 -ALIGN 64 - -$L$rem_4bit:: - DD 0,0,0,471859200,0,943718400,0,610271232 - DD 0,1887436800,0,1822425088,0,1220542464,0,1423966208 - DD 0,3774873600,0,4246732800,0,3644850176,0,3311403008 - DD 0,2441084928,0,2376073216,0,2847932416,0,3051356160 - -$L$rem_8bit:: - DW 00000h,001C2h,00384h,00246h,00708h,006CAh,0048Ch,0054Eh - DW 00E10h,00FD2h,00D94h,00C56h,00918h,008DAh,00A9Ch,00B5Eh - DW 01C20h,01DE2h,01FA4h,01E66h,01B28h,01AEAh,018ACh,0196Eh - DW 01230h,013F2h,011B4h,01076h,01538h,014FAh,016BCh,0177Eh - DW 03840h,03982h,03BC4h,03A06h,03F48h,03E8Ah,03CCCh,03D0Eh - DW 03650h,03792h,035D4h,03416h,03158h,0309Ah,032DCh,0331Eh - DW 02460h,025A2h,027E4h,02626h,02368h,022AAh,020ECh,0212Eh - DW 02A70h,02BB2h,029F4h,02836h,02D78h,02CBAh,02EFCh,02F3Eh - DW 07080h,07142h,07304h,072C6h,07788h,0764Ah,0740Ch,075CEh - DW 07E90h,07F52h,07D14h,07CD6h,07998h,0785Ah,07A1Ch,07BDEh - DW 06CA0h,06D62h,06F24h,06EE6h,06BA8h,06A6Ah,0682Ch,069EEh - DW 062B0h,06372h,06134h,060F6h,065B8h,0647Ah,0663Ch,067FEh - DW 048C0h,04902h,04B44h,04A86h,04FC8h,04E0Ah,04C4Ch,04D8Eh - DW 046D0h,04712h,04554h,04496h,041D8h,0401Ah,0425Ch,0439Eh - DW 054E0h,05522h,05764h,056A6h,053E8h,0522Ah,0506Ch,051AEh - DW 05AF0h,05B32h,05974h,058B6h,05DF8h,05C3Ah,05E7Ch,05FBEh - DW 0E100h,0E0C2h,0E284h,0E346h,0E608h,0E7CAh,0E58Ch,0E44Eh - DW 0EF10h,0EED2h,0EC94h,0ED56h,0E818h,0E9DAh,0EB9Ch,0EA5Eh - DW 0FD20h,0FCE2h,0FEA4h,0FF66h,0FA28h,0FBEAh,0F9ACh,0F86Eh - DW 0F330h,0F2F2h,0F0B4h,0F176h,0F438h,0F5FAh,0F7BCh,0F67Eh - DW 0D940h,0D882h,0DAC4h,0DB06h,0DE48h,0DF8Ah,0DDCCh,0DC0Eh - DW 0D750h,0D692h,0D4D4h,0D516h,0D058h,0D19Ah,0D3DCh,0D21Eh - DW 0C560h,0C4A2h,0C6E4h,0C726h,0C268h,0C3AAh,0C1ECh,0C02Eh - DW 0CB70h,0CAB2h,0C8F4h,0C936h,0CC78h,0CDBAh,0CFFCh,0CE3Eh - DW 09180h,09042h,09204h,093C6h,09688h,0974Ah,0950Ch,094CEh - DW 09F90h,09E52h,09C14h,09DD6h,09898h,0995Ah,09B1Ch,09ADEh - DW 08DA0h,08C62h,08E24h,08FE6h,08AA8h,08B6Ah,0892Ch,088EEh - DW 083B0h,08272h,08034h,081F6h,084B8h,0857Ah,0873Ch,086FEh - DW 0A9C0h,0A802h,0AA44h,0AB86h,0AEC8h,0AF0Ah,0AD4Ch,0AC8Eh - DW 0A7D0h,0A612h,0A454h,0A596h,0A0D8h,0A11Ah,0A35Ch,0A29Eh - DW 0B5E0h,0B422h,0B664h,0B7A6h,0B2E8h,0B32Ah,0B16Ch,0B0AEh - DW 0BBF0h,0BA32h,0B874h,0B9B6h,0BCF8h,0BD3Ah,0BF7Ch,0BEBEh - -DB 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52 -DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 -DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 -DB 114,103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[24+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_gcm_gmult_4bit - DD imagerel $L$SEH_end_gcm_gmult_4bit - DD imagerel $L$SEH_info_gcm_gmult_4bit - - DD imagerel $L$SEH_begin_gcm_ghash_4bit - DD imagerel $L$SEH_end_gcm_ghash_4bit - DD imagerel $L$SEH_info_gcm_ghash_4bit - - DD imagerel $L$SEH_begin_gcm_init_clmul - DD imagerel $L$SEH_end_gcm_init_clmul - DD imagerel $L$SEH_info_gcm_init_clmul - - DD imagerel $L$SEH_begin_gcm_ghash_clmul - DD imagerel $L$SEH_end_gcm_ghash_clmul - DD imagerel $L$SEH_info_gcm_ghash_clmul -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_gcm_gmult_4bit:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$gmult_prologue,imagerel $L$gmult_epilogue -$L$SEH_info_gcm_ghash_4bit:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$ghash_prologue,imagerel $L$ghash_epilogue -$L$SEH_info_gcm_init_clmul:: -DB 001h,008h,003h,000h -DB 008h,068h,000h,000h -DB 004h,022h,000h,000h -$L$SEH_info_gcm_ghash_clmul:: -DB 001h,033h,016h,000h -DB 033h,0f8h,009h,000h -DB 02eh,0e8h,008h,000h -DB 029h,0d8h,007h,000h -DB 024h,0c8h,006h,000h -DB 01fh,0b8h,005h,000h -DB 01ah,0a8h,004h,000h -DB 015h,098h,003h,000h -DB 010h,088h,002h,000h -DB 00ch,078h,001h,000h -DB 008h,068h,000h,000h -DB 004h,001h,015h,000h - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-md5-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-md5-x86_64.asm deleted file mode 100644 index 9d823aed573007..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-md5-x86_64.asm +++ /dev/null @@ -1,1374 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -ALIGN 16 - -PUBLIC rc4_md5_enc - -rc4_md5_enc PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_rc4_md5_enc:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - mov r8,QWORD PTR[40+rsp] - mov r9,QWORD PTR[48+rsp] - - - cmp r9,0 - je $L$abort - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - sub rsp,40 -$L$body:: - mov r11,rcx - mov r12,r9 - mov r13,rsi - mov r14,rdx - mov r15,r8 - xor rbp,rbp - xor rcx,rcx - - lea rdi,QWORD PTR[8+rdi] - mov bpl,BYTE PTR[((-8))+rdi] - mov cl,BYTE PTR[((-4))+rdi] - - inc bpl - sub r14,r13 - mov eax,DWORD PTR[rbp*4+rdi] - add cl,al - lea rsi,QWORD PTR[rbp*4+rdi] - shl r12,6 - add r12,r15 - mov QWORD PTR[16+rsp],r12 - - mov QWORD PTR[24+rsp],r11 - mov r8d,DWORD PTR[r11] - mov r9d,DWORD PTR[4+r11] - mov r10d,DWORD PTR[8+r11] - mov r11d,DWORD PTR[12+r11] - jmp $L$oop - -ALIGN 16 -$L$oop:: - mov DWORD PTR[rsp],r8d - mov DWORD PTR[4+rsp],r9d - mov DWORD PTR[8+rsp],r10d - mov r12d,r11d - mov DWORD PTR[12+rsp],r11d - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[r15] - add al,dl - mov ebx,DWORD PTR[4+rsi] - add r8d,3614090360 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[4+r15] - add bl,dl - mov eax,DWORD PTR[8+rsi] - add r11d,3905402710 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[4+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[8+r15] - add al,dl - mov ebx,DWORD PTR[12+rsi] - add r10d,606105819 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[8+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[12+r15] - add bl,dl - mov eax,DWORD PTR[16+rsi] - add r9d,3250441966 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[12+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[16+r15] - add al,dl - mov ebx,DWORD PTR[20+rsi] - add r8d,4118548399 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[16+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[20+r15] - add bl,dl - mov eax,DWORD PTR[24+rsi] - add r11d,1200080426 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[20+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[24+r15] - add al,dl - mov ebx,DWORD PTR[28+rsi] - add r10d,2821735955 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[24+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[28+r15] - add bl,dl - mov eax,DWORD PTR[32+rsi] - add r9d,4249261313 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[28+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[32+r15] - add al,dl - mov ebx,DWORD PTR[36+rsi] - add r8d,1770035416 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[32+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[36+r15] - add bl,dl - mov eax,DWORD PTR[40+rsi] - add r11d,2336552879 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[36+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[40+r15] - add al,dl - mov ebx,DWORD PTR[44+rsi] - add r10d,4294925233 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[40+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[44+r15] - add bl,dl - mov eax,DWORD PTR[48+rsi] - add r9d,2304563134 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[44+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r8d,DWORD PTR[48+r15] - add al,dl - mov ebx,DWORD PTR[52+rsi] - add r8d,1804603682 - xor r12d,r11d - movzx eax,al - mov DWORD PTR[48+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,7 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r11d,DWORD PTR[52+r15] - add bl,dl - mov eax,DWORD PTR[56+rsi] - add r11d,4254626195 - xor r12d,r10d - movzx ebx,bl - mov DWORD PTR[52+rsi],edx - add r11d,r12d - add cl,al - rol r11d,12 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r10d,DWORD PTR[56+r15] - add al,dl - mov ebx,DWORD PTR[60+rsi] - add r10d,2792965006 - xor r12d,r9d - movzx eax,al - mov DWORD PTR[56+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,17 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm2,XMMWORD PTR[r13] - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r9d,DWORD PTR[60+r15] - add bl,dl - mov eax,DWORD PTR[64+rsi] - add r9d,1236535329 - xor r12d,r8d - movzx ebx,bl - mov DWORD PTR[60+rsi],edx - add r9d,r12d - add cl,al - rol r9d,22 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - psllq xmm1,8 - pxor xmm2,xmm0 - pxor xmm2,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[4+r15] - add al,dl - mov ebx,DWORD PTR[68+rsi] - add r8d,4129170786 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[64+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[24+r15] - add bl,dl - mov eax,DWORD PTR[72+rsi] - add r11d,3225465664 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[68+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[44+r15] - add al,dl - mov ebx,DWORD PTR[76+rsi] - add r10d,643717713 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[72+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[r15] - add bl,dl - mov eax,DWORD PTR[80+rsi] - add r9d,3921069994 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[76+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[20+r15] - add al,dl - mov ebx,DWORD PTR[84+rsi] - add r8d,3593408605 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[80+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[40+r15] - add bl,dl - mov eax,DWORD PTR[88+rsi] - add r11d,38016083 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[84+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[60+r15] - add al,dl - mov ebx,DWORD PTR[92+rsi] - add r10d,3634488961 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[88+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[16+r15] - add bl,dl - mov eax,DWORD PTR[96+rsi] - add r9d,3889429448 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[92+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[36+r15] - add al,dl - mov ebx,DWORD PTR[100+rsi] - add r8d,568446438 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[96+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[56+r15] - add bl,dl - mov eax,DWORD PTR[104+rsi] - add r11d,3275163606 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[100+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[12+r15] - add al,dl - mov ebx,DWORD PTR[108+rsi] - add r10d,4107603335 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[104+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[32+r15] - add bl,dl - mov eax,DWORD PTR[112+rsi] - add r9d,1163531501 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[108+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r10d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r11d - add r8d,DWORD PTR[52+r15] - add al,dl - mov ebx,DWORD PTR[116+rsi] - add r8d,2850285829 - xor r12d,r10d - movzx eax,al - mov DWORD PTR[112+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,5 - mov r12d,r9d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r10d - add r11d,DWORD PTR[8+r15] - add bl,dl - mov eax,DWORD PTR[120+rsi] - add r11d,4243563512 - xor r12d,r9d - movzx ebx,bl - mov DWORD PTR[116+rsi],edx - add r11d,r12d - add cl,al - rol r11d,9 - mov r12d,r8d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - and r12d,r9d - add r10d,DWORD PTR[28+r15] - add al,dl - mov ebx,DWORD PTR[124+rsi] - add r10d,1735328473 - xor r12d,r8d - movzx eax,al - mov DWORD PTR[120+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,14 - mov r12d,r11d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm3,XMMWORD PTR[16+r13] - add bpl,32 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - and r12d,r8d - add r9d,DWORD PTR[48+r15] - add bl,dl - mov eax,DWORD PTR[rbp*4+rdi] - add r9d,2368359562 - xor r12d,r11d - movzx ebx,bl - mov DWORD PTR[124+rsi],edx - add r9d,r12d - add cl,al - rol r9d,20 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - mov rsi,rcx - xor rcx,rcx - mov cl,sil - lea rsi,QWORD PTR[rbp*4+rdi] - psllq xmm1,8 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[20+r15] - add al,dl - mov ebx,DWORD PTR[4+rsi] - add r8d,4294588738 - movzx eax,al - add r8d,r12d - mov DWORD PTR[rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[32+r15] - add bl,dl - mov eax,DWORD PTR[8+rsi] - add r11d,2272392833 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[4+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[44+r15] - add al,dl - mov ebx,DWORD PTR[12+rsi] - add r10d,1839030562 - movzx eax,al - add r10d,r12d - mov DWORD PTR[8+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[56+r15] - add bl,dl - mov eax,DWORD PTR[16+rsi] - add r9d,4259657740 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[12+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[4+r15] - add al,dl - mov ebx,DWORD PTR[20+rsi] - add r8d,2763975236 - movzx eax,al - add r8d,r12d - mov DWORD PTR[16+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[16+r15] - add bl,dl - mov eax,DWORD PTR[24+rsi] - add r11d,1272893353 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[20+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[28+r15] - add al,dl - mov ebx,DWORD PTR[28+rsi] - add r10d,4139469664 - movzx eax,al - add r10d,r12d - mov DWORD PTR[24+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[40+r15] - add bl,dl - mov eax,DWORD PTR[32+rsi] - add r9d,3200236656 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[28+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[52+r15] - add al,dl - mov ebx,DWORD PTR[36+rsi] - add r8d,681279174 - movzx eax,al - add r8d,r12d - mov DWORD PTR[32+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[r15] - add bl,dl - mov eax,DWORD PTR[40+rsi] - add r11d,3936430074 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[36+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[12+r15] - add al,dl - mov ebx,DWORD PTR[44+rsi] - add r10d,3572445317 - movzx eax,al - add r10d,r12d - mov DWORD PTR[40+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[24+r15] - add bl,dl - mov eax,DWORD PTR[48+rsi] - add r9d,76029189 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[44+rsi],edx - add cl,al - rol r9d,23 - mov r12d,r11d - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r9d - add r8d,DWORD PTR[36+r15] - add al,dl - mov ebx,DWORD PTR[52+rsi] - add r8d,3654602809 - movzx eax,al - add r8d,r12d - mov DWORD PTR[48+rsi],edx - add cl,bl - rol r8d,4 - mov r12d,r10d - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r8d - add r11d,DWORD PTR[48+r15] - add bl,dl - mov eax,DWORD PTR[56+rsi] - add r11d,3873151461 - movzx ebx,bl - add r11d,r12d - mov DWORD PTR[52+rsi],edx - add cl,al - rol r11d,11 - mov r12d,r9d - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],eax - xor r12d,r11d - add r10d,DWORD PTR[60+r15] - add al,dl - mov ebx,DWORD PTR[60+rsi] - add r10d,530742520 - movzx eax,al - add r10d,r12d - mov DWORD PTR[56+rsi],edx - add cl,bl - rol r10d,16 - mov r12d,r8d - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm4,XMMWORD PTR[32+r13] - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],ebx - xor r12d,r10d - add r9d,DWORD PTR[8+r15] - add bl,dl - mov eax,DWORD PTR[64+rsi] - add r9d,3299628645 - movzx ebx,bl - add r9d,r12d - mov DWORD PTR[60+rsi],edx - add cl,al - rol r9d,23 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - psllq xmm1,8 - pxor xmm4,xmm0 - pxor xmm4,xmm1 - pxor xmm0,xmm0 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[r15] - add al,dl - mov ebx,DWORD PTR[68+rsi] - add r8d,4096336452 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[64+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - movd xmm0,DWORD PTR[rax*4+rdi] - - add r8d,r9d - pxor xmm1,xmm1 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[28+r15] - add bl,dl - mov eax,DWORD PTR[72+rsi] - add r11d,1126891415 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[68+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - movd xmm1,DWORD PTR[rbx*4+rdi] - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[56+r15] - add al,dl - mov ebx,DWORD PTR[76+rsi] - add r10d,2878612391 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[72+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[20+r15] - add bl,dl - mov eax,DWORD PTR[80+rsi] - add r9d,4237533241 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[76+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[48+r15] - add al,dl - mov ebx,DWORD PTR[84+rsi] - add r8d,1700485571 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[80+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[12+r15] - add bl,dl - mov eax,DWORD PTR[88+rsi] - add r11d,2399980690 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[84+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[40+r15] - add al,dl - mov ebx,DWORD PTR[92+rsi] - add r10d,4293915773 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[88+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[4+r15] - add bl,dl - mov eax,DWORD PTR[96+rsi] - add r9d,2240044497 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[92+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[32+r15] - add al,dl - mov ebx,DWORD PTR[100+rsi] - add r8d,1873313359 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[96+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[60+r15] - add bl,dl - mov eax,DWORD PTR[104+rsi] - add r11d,4264355552 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[100+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[24+r15] - add al,dl - mov ebx,DWORD PTR[108+rsi] - add r10d,2734768916 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[104+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - - add r10d,r11d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[52+r15] - add bl,dl - mov eax,DWORD PTR[112+rsi] - add r9d,1309151649 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[108+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - - add r9d,r10d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r11d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r9d - add r8d,DWORD PTR[16+r15] - add al,dl - mov ebx,DWORD PTR[116+rsi] - add r8d,4149444226 - movzx eax,al - xor r12d,r10d - mov DWORD PTR[112+rsi],edx - add r8d,r12d - add cl,bl - rol r8d,6 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - - add r8d,r9d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r10d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r8d - add r11d,DWORD PTR[44+r15] - add bl,dl - mov eax,DWORD PTR[120+rsi] - add r11d,3174756917 - movzx ebx,bl - xor r12d,r9d - mov DWORD PTR[116+rsi],edx - add r11d,r12d - add cl,al - rol r11d,10 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - - add r11d,r8d - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r9d - mov DWORD PTR[rcx*4+rdi],eax - or r12d,r11d - add r10d,DWORD PTR[8+r15] - add al,dl - mov ebx,DWORD PTR[124+rsi] - add r10d,718787259 - movzx eax,al - xor r12d,r8d - mov DWORD PTR[120+rsi],edx - add r10d,r12d - add cl,bl - rol r10d,15 - mov r12d,-1 - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - - add r10d,r11d - movdqu xmm5,XMMWORD PTR[48+r13] - add bpl,32 - mov edx,DWORD PTR[rcx*4+rdi] - xor r12d,r8d - mov DWORD PTR[rcx*4+rdi],ebx - or r12d,r10d - add r9d,DWORD PTR[36+r15] - add bl,dl - mov eax,DWORD PTR[rbp*4+rdi] - add r9d,3951481745 - movzx ebx,bl - xor r12d,r11d - mov DWORD PTR[124+rsi],edx - add r9d,r12d - add cl,al - rol r9d,21 - mov r12d,-1 - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - - add r9d,r10d - mov rsi,rbp - xor rbp,rbp - mov bpl,sil - mov rsi,rcx - xor rcx,rcx - mov cl,sil - lea rsi,QWORD PTR[rbp*4+rdi] - psllq xmm1,8 - pxor xmm5,xmm0 - pxor xmm5,xmm1 - add r8d,DWORD PTR[rsp] - add r9d,DWORD PTR[4+rsp] - add r10d,DWORD PTR[8+rsp] - add r11d,DWORD PTR[12+rsp] - - movdqu XMMWORD PTR[r13*1+r14],xmm2 - movdqu XMMWORD PTR[16+r13*1+r14],xmm3 - movdqu XMMWORD PTR[32+r13*1+r14],xmm4 - movdqu XMMWORD PTR[48+r13*1+r14],xmm5 - lea r15,QWORD PTR[64+r15] - lea r13,QWORD PTR[64+r13] - cmp r15,QWORD PTR[16+rsp] - jb $L$oop - - mov r12,QWORD PTR[24+rsp] - sub cl,al - mov DWORD PTR[r12],r8d - mov DWORD PTR[4+r12],r9d - mov DWORD PTR[8+r12],r10d - mov DWORD PTR[12+r12],r11d - sub bpl,1 - mov DWORD PTR[((-8))+rdi],ebp - mov DWORD PTR[((-4))+rdi],ecx - - mov r15,QWORD PTR[40+rsp] - mov r14,QWORD PTR[48+rsp] - mov r13,QWORD PTR[56+rsp] - mov r12,QWORD PTR[64+rsp] - mov rbp,QWORD PTR[72+rsp] - mov rbx,QWORD PTR[80+rsp] - lea rsp,QWORD PTR[88+rsp] -$L$epilogue:: -$L$abort:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_rc4_md5_enc:: -rc4_md5_enc ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$body] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - mov r15,QWORD PTR[40+rax] - mov r14,QWORD PTR[48+rax] - mov r13,QWORD PTR[56+rax] - mov r12,QWORD PTR[64+rax] - mov rbp,QWORD PTR[72+rax] - mov rbx,QWORD PTR[80+rax] - lea rax,QWORD PTR[88+rax] - - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_rc4_md5_enc - DD imagerel $L$SEH_end_rc4_md5_enc - DD imagerel $L$SEH_info_rc4_md5_enc - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_rc4_md5_enc:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-x86_64.asm deleted file mode 100644 index a0e5553247b032..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-x86_64.asm +++ /dev/null @@ -1,771 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC RC4 - -ALIGN 16 -RC4 PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_RC4:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - mov rcx,r9 - - or rsi,rsi - jne $L$entry - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$entry:: - push rbx - push r12 - push r13 -$L$prologue:: - mov r11,rsi - mov r12,rdx - mov r13,rcx - xor r10,r10 - xor rcx,rcx - - lea rdi,QWORD PTR[8+rdi] - mov r10b,BYTE PTR[((-8))+rdi] - mov cl,BYTE PTR[((-4))+rdi] - cmp DWORD PTR[256+rdi],-1 - je $L$RC4_CHAR - mov r8d,DWORD PTR[OPENSSL_ia32cap_P] - xor rbx,rbx - inc r10b - sub rbx,r10 - sub r13,r12 - mov eax,DWORD PTR[r10*4+rdi] - test r11,-16 - jz $L$loop1 - bt r8d,30 - jc $L$intel - and rbx,7 - lea rsi,QWORD PTR[1+r10] - jz $L$oop8 - sub r11,rbx -$L$oop8_warmup:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec rbx - jnz $L$oop8_warmup - - lea rsi,QWORD PTR[1+r10] - jmp $L$oop8 -ALIGN 16 -$L$oop8:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[rsi*4+rdi] - ror r8,8 - mov DWORD PTR[r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[4+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[4+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[8+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[8+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[12+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[12+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[16+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[16+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[20+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[20+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov ebx,DWORD PTR[24+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[24+r10*4+rdi],edx - add dl,al - mov r8b,BYTE PTR[rdx*4+rdi] - add sil,8 - add cl,bl - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - mov eax,DWORD PTR[((-4))+rsi*4+rdi] - ror r8,8 - mov DWORD PTR[28+r10*4+rdi],edx - add dl,bl - mov r8b,BYTE PTR[rdx*4+rdi] - add r10b,8 - ror r8,8 - sub r11,8 - - xor r8,QWORD PTR[r12] - mov QWORD PTR[r13*1+r12],r8 - lea r12,QWORD PTR[8+r12] - - test r11,-8 - jnz $L$oop8 - cmp r11,0 - jne $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$intel:: - test r11,-32 - jz $L$loop1 - and rbx,15 - jz $L$oop16_is_hot - sub r11,rbx -$L$oop16_warmup:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec rbx - jnz $L$oop16_warmup - - mov rbx,rcx - xor rcx,rcx - mov cl,bl - -$L$oop16_is_hot:: - lea rsi,QWORD PTR[r10*4+rdi] - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm0,xmm0 - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[4+rsi] - movzx eax,al - mov DWORD PTR[rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],0 - jmp $L$oop16_enter -ALIGN 16 -$L$oop16:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm2,xmm0 - psllq xmm1,8 - pxor xmm0,xmm0 - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[4+rsi] - movzx eax,al - mov DWORD PTR[rsi],edx - pxor xmm2,xmm1 - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],0 - movdqu XMMWORD PTR[r13*1+r12],xmm2 - lea r12,QWORD PTR[16+r12] -$L$oop16_enter:: - mov edx,DWORD PTR[rcx*4+rdi] - pxor xmm1,xmm1 - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[8+rsi] - movzx ebx,bl - mov DWORD PTR[4+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],0 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[12+rsi] - movzx eax,al - mov DWORD PTR[8+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],1 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[16+rsi] - movzx ebx,bl - mov DWORD PTR[12+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],1 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[20+rsi] - movzx eax,al - mov DWORD PTR[16+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],2 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[24+rsi] - movzx ebx,bl - mov DWORD PTR[20+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],2 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[28+rsi] - movzx eax,al - mov DWORD PTR[24+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],3 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[32+rsi] - movzx ebx,bl - mov DWORD PTR[28+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],3 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[36+rsi] - movzx eax,al - mov DWORD PTR[32+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],4 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[40+rsi] - movzx ebx,bl - mov DWORD PTR[36+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],4 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[44+rsi] - movzx eax,al - mov DWORD PTR[40+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],5 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[48+rsi] - movzx ebx,bl - mov DWORD PTR[44+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],5 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[52+rsi] - movzx eax,al - mov DWORD PTR[48+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],6 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - mov eax,DWORD PTR[56+rsi] - movzx ebx,bl - mov DWORD PTR[52+rsi],edx - add cl,al - pinsrw xmm1,WORD PTR[rbx*4+rdi],6 - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - add al,dl - mov ebx,DWORD PTR[60+rsi] - movzx eax,al - mov DWORD PTR[56+rsi],edx - add cl,bl - pinsrw xmm0,WORD PTR[rax*4+rdi],7 - add r10b,16 - movdqu xmm2,XMMWORD PTR[r12] - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],ebx - add bl,dl - movzx ebx,bl - mov DWORD PTR[60+rsi],edx - lea rsi,QWORD PTR[r10*4+rdi] - pinsrw xmm1,WORD PTR[rbx*4+rdi],7 - mov eax,DWORD PTR[rsi] - mov rbx,rcx - xor rcx,rcx - sub r11,16 - mov cl,bl - test r11,-16 - jnz $L$oop16 - - psllq xmm1,8 - pxor xmm2,xmm0 - pxor xmm2,xmm1 - movdqu XMMWORD PTR[r13*1+r12],xmm2 - lea r12,QWORD PTR[16+r12] - - cmp r11,0 - jne $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$loop1:: - add cl,al - mov edx,DWORD PTR[rcx*4+rdi] - mov DWORD PTR[rcx*4+rdi],eax - mov DWORD PTR[r10*4+rdi],edx - add al,dl - inc r10b - mov edx,DWORD PTR[rax*4+rdi] - mov eax,DWORD PTR[r10*4+rdi] - xor dl,BYTE PTR[r12] - mov BYTE PTR[r13*1+r12],dl - lea r12,QWORD PTR[1+r12] - dec r11 - jnz $L$loop1 - jmp $L$exit - -ALIGN 16 -$L$RC4_CHAR:: - add r10b,1 - movzx eax,BYTE PTR[r10*1+rdi] - test r11,-8 - jz $L$cloop1 - jmp $L$cloop8 -ALIGN 16 -$L$cloop8:: - mov r8d,DWORD PTR[r12] - mov r9d,DWORD PTR[4+r12] - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov0 - mov rbx,rax -$L$cmov0:: - add dl,al - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov1 - mov rax,rbx -$L$cmov1:: - add dl,bl - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov2 - mov rbx,rax -$L$cmov2:: - add dl,al - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov3 - mov rax,rbx -$L$cmov3:: - add dl,bl - xor r8b,BYTE PTR[rdx*1+rdi] - ror r8d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov4 - mov rbx,rax -$L$cmov4:: - add dl,al - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov5 - mov rax,rbx -$L$cmov5:: - add dl,bl - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,al - lea rsi,QWORD PTR[1+r10] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx esi,sil - movzx ebx,BYTE PTR[rsi*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - cmp rcx,rsi - mov BYTE PTR[r10*1+rdi],dl - jne $L$cmov6 - mov rbx,rax -$L$cmov6:: - add dl,al - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - add cl,bl - lea r10,QWORD PTR[1+rsi] - movzx edx,BYTE PTR[rcx*1+rdi] - movzx r10d,r10b - movzx eax,BYTE PTR[r10*1+rdi] - mov BYTE PTR[rcx*1+rdi],bl - cmp rcx,r10 - mov BYTE PTR[rsi*1+rdi],dl - jne $L$cmov7 - mov rax,rbx -$L$cmov7:: - add dl,bl - xor r9b,BYTE PTR[rdx*1+rdi] - ror r9d,8 - lea r11,QWORD PTR[((-8))+r11] - mov DWORD PTR[r13],r8d - lea r12,QWORD PTR[8+r12] - mov DWORD PTR[4+r13],r9d - lea r13,QWORD PTR[8+r13] - - test r11,-8 - jnz $L$cloop8 - cmp r11,0 - jne $L$cloop1 - jmp $L$exit -ALIGN 16 -$L$cloop1:: - add cl,al - movzx ecx,cl - movzx edx,BYTE PTR[rcx*1+rdi] - mov BYTE PTR[rcx*1+rdi],al - mov BYTE PTR[r10*1+rdi],dl - add dl,al - add r10b,1 - movzx edx,dl - movzx r10d,r10b - movzx edx,BYTE PTR[rdx*1+rdi] - movzx eax,BYTE PTR[r10*1+rdi] - xor dl,BYTE PTR[r12] - lea r12,QWORD PTR[1+r12] - mov BYTE PTR[r13],dl - lea r13,QWORD PTR[1+r13] - sub r11,1 - jnz $L$cloop1 - jmp $L$exit - -ALIGN 16 -$L$exit:: - sub r10b,1 - mov DWORD PTR[((-8))+rdi],r10d - mov DWORD PTR[((-4))+rdi],ecx - - mov r13,QWORD PTR[rsp] - mov r12,QWORD PTR[8+rsp] - mov rbx,QWORD PTR[16+rsp] - add rsp,24 -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_RC4:: -RC4 ENDP -PUBLIC private_RC4_set_key - -ALIGN 16 -private_RC4_set_key PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_private_RC4_set_key:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea rdi,QWORD PTR[8+rdi] - lea rdx,QWORD PTR[rsi*1+rdx] - neg rsi - mov rcx,rsi - xor eax,eax - xor r9,r9 - xor r10,r10 - xor r11,r11 - - mov r8d,DWORD PTR[OPENSSL_ia32cap_P] - bt r8d,20 - jc $L$c1stloop - jmp $L$w1stloop - -ALIGN 16 -$L$w1stloop:: - mov DWORD PTR[rax*4+rdi],eax - add al,1 - jnc $L$w1stloop - - xor r9,r9 - xor r8,r8 -ALIGN 16 -$L$w2ndloop:: - mov r10d,DWORD PTR[r9*4+rdi] - add r8b,BYTE PTR[rsi*1+rdx] - add r8b,r10b - add rsi,1 - mov r11d,DWORD PTR[r8*4+rdi] - cmovz rsi,rcx - mov DWORD PTR[r8*4+rdi],r10d - mov DWORD PTR[r9*4+rdi],r11d - add r9b,1 - jnc $L$w2ndloop - jmp $L$exit_key - -ALIGN 16 -$L$c1stloop:: - mov BYTE PTR[rax*1+rdi],al - add al,1 - jnc $L$c1stloop - - xor r9,r9 - xor r8,r8 -ALIGN 16 -$L$c2ndloop:: - mov r10b,BYTE PTR[r9*1+rdi] - add r8b,BYTE PTR[rsi*1+rdx] - add r8b,r10b - add rsi,1 - mov r11b,BYTE PTR[r8*1+rdi] - jnz $L$cnowrap - mov rsi,rcx -$L$cnowrap:: - mov BYTE PTR[r8*1+rdi],r10b - mov BYTE PTR[r9*1+rdi],r11b - add r9b,1 - jnc $L$c2ndloop - mov DWORD PTR[256+rdi],-1 - -ALIGN 16 -$L$exit_key:: - xor eax,eax - mov DWORD PTR[((-8))+rdi],eax - mov DWORD PTR[((-4))+rdi],eax - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_private_RC4_set_key:: -private_RC4_set_key ENDP - -PUBLIC RC4_options - -ALIGN 16 -RC4_options PROC PUBLIC - lea rax,QWORD PTR[$L$opts] - mov edx,DWORD PTR[OPENSSL_ia32cap_P] - bt edx,20 - jc $L$8xchar - bt edx,30 - jnc $L$done - add rax,25 - DB 0F3h,0C3h ;repret -$L$8xchar:: - add rax,12 -$L$done:: - DB 0F3h,0C3h ;repret -ALIGN 64 -$L$opts:: -DB 114,99,52,40,56,120,44,105,110,116,41,0 -DB 114,99,52,40,56,120,44,99,104,97,114,41,0 -DB 114,99,52,40,49,54,120,44,105,110,116,41,0 -DB 82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 64 -RC4_options ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -stream_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - lea rax,QWORD PTR[24+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov r12,QWORD PTR[((-16))+rax] - mov r13,QWORD PTR[((-24))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - jmp $L$common_seh_exit -stream_se_handler ENDP - - -ALIGN 16 -key_se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[152+r8] - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - -$L$common_seh_exit:: - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -key_se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_RC4 - DD imagerel $L$SEH_end_RC4 - DD imagerel $L$SEH_info_RC4 - - DD imagerel $L$SEH_begin_private_RC4_set_key - DD imagerel $L$SEH_end_private_RC4_set_key - DD imagerel $L$SEH_info_private_RC4_set_key - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_RC4:: -DB 9,0,0,0 - DD imagerel stream_se_handler -$L$SEH_info_private_RC4_set_key:: -DB 9,0,0,0 - DD imagerel key_se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-mb-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-mb-x86_64.asm deleted file mode 100644 index 32919ea737333d..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-mb-x86_64.asm +++ /dev/null @@ -1,3112 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha1_multi_block - -ALIGN 32 -sha1_multi_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rcx,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt rcx,61 - jc _shaext_shortcut - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body:: - lea rbp,QWORD PTR[K_XX_XX] - lea rbx,QWORD PTR[256+rsp] - -$L$oop_grande:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done - - movdqu xmm10,XMMWORD PTR[rdi] - lea rax,QWORD PTR[128+rsp] - movdqu xmm11,XMMWORD PTR[32+rdi] - movdqu xmm12,XMMWORD PTR[64+rdi] - movdqu xmm13,XMMWORD PTR[96+rdi] - movdqu xmm14,XMMWORD PTR[128+rdi] - movdqa xmm5,XMMWORD PTR[96+rbp] - movdqa xmm15,XMMWORD PTR[((-32))+rbp] - jmp $L$oop - -ALIGN 32 -$L$oop:: - movd xmm0,DWORD PTR[r8] - lea r8,QWORD PTR[64+r8] - movd xmm2,DWORD PTR[r9] - lea r9,QWORD PTR[64+r9] - movd xmm3,DWORD PTR[r10] - lea r10,QWORD PTR[64+r10] - movd xmm4,DWORD PTR[r11] - lea r11,QWORD PTR[64+r11] - punpckldq xmm0,xmm3 - movd xmm1,DWORD PTR[((-60))+r8] - punpckldq xmm2,xmm4 - movd xmm9,DWORD PTR[((-60))+r9] - punpckldq xmm0,xmm2 - movd xmm8,DWORD PTR[((-60))+r10] -DB 102,15,56,0,197 - movd xmm7,DWORD PTR[((-60))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(0-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-56))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-56))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-56))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-56))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(16-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-52))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-52))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-52))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-52))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(32-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-48))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-48))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-48))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-48))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(48-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-44))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-44))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-44))+r10] - por xmm13,xmm7 - movd xmm7,DWORD PTR[((-44))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(64-128)+rax],xmm4 - paddd xmm10,xmm4 - movd xmm1,DWORD PTR[((-40))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-40))+r9] - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - movd xmm8,DWORD PTR[((-40))+r10] - por xmm12,xmm7 - movd xmm7,DWORD PTR[((-40))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(80-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-36))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-36))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-36))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-36))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(96-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-32))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-32))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-32))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-32))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(112-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-28))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-28))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-28))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-28))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(128-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-24))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-24))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-24))+r10] - por xmm13,xmm7 - movd xmm7,DWORD PTR[((-24))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(144-128)+rax],xmm4 - paddd xmm10,xmm4 - movd xmm1,DWORD PTR[((-20))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-20))+r9] - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - movd xmm8,DWORD PTR[((-20))+r10] - por xmm12,xmm7 - movd xmm7,DWORD PTR[((-20))+r11] - punpckldq xmm1,xmm8 - movdqa xmm8,xmm10 - paddd xmm14,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm11 - movdqa xmm6,xmm11 - pslld xmm8,5 - pandn xmm7,xmm13 - pand xmm6,xmm12 - punpckldq xmm1,xmm9 - movdqa xmm9,xmm10 - - movdqa XMMWORD PTR[(160-128)+rax],xmm0 - paddd xmm14,xmm0 - movd xmm2,DWORD PTR[((-16))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm11 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-16))+r9] - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 -DB 102,15,56,0,205 - movd xmm8,DWORD PTR[((-16))+r10] - por xmm11,xmm7 - movd xmm7,DWORD PTR[((-16))+r11] - punpckldq xmm2,xmm8 - movdqa xmm8,xmm14 - paddd xmm13,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm10 - movdqa xmm6,xmm10 - pslld xmm8,5 - pandn xmm7,xmm12 - pand xmm6,xmm11 - punpckldq xmm2,xmm9 - movdqa xmm9,xmm14 - - movdqa XMMWORD PTR[(176-128)+rax],xmm1 - paddd xmm13,xmm1 - movd xmm3,DWORD PTR[((-12))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm10 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-12))+r9] - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 -DB 102,15,56,0,213 - movd xmm8,DWORD PTR[((-12))+r10] - por xmm10,xmm7 - movd xmm7,DWORD PTR[((-12))+r11] - punpckldq xmm3,xmm8 - movdqa xmm8,xmm13 - paddd xmm12,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm14 - movdqa xmm6,xmm14 - pslld xmm8,5 - pandn xmm7,xmm11 - pand xmm6,xmm10 - punpckldq xmm3,xmm9 - movdqa xmm9,xmm13 - - movdqa XMMWORD PTR[(192-128)+rax],xmm2 - paddd xmm12,xmm2 - movd xmm4,DWORD PTR[((-8))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm14 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-8))+r9] - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 -DB 102,15,56,0,221 - movd xmm8,DWORD PTR[((-8))+r10] - por xmm14,xmm7 - movd xmm7,DWORD PTR[((-8))+r11] - punpckldq xmm4,xmm8 - movdqa xmm8,xmm12 - paddd xmm11,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm13 - movdqa xmm6,xmm13 - pslld xmm8,5 - pandn xmm7,xmm10 - pand xmm6,xmm14 - punpckldq xmm4,xmm9 - movdqa xmm9,xmm12 - - movdqa XMMWORD PTR[(208-128)+rax],xmm3 - paddd xmm11,xmm3 - movd xmm0,DWORD PTR[((-4))+r8] - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm13 - - por xmm8,xmm9 - movd xmm9,DWORD PTR[((-4))+r9] - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 -DB 102,15,56,0,229 - movd xmm8,DWORD PTR[((-4))+r10] - por xmm13,xmm7 - movdqa xmm1,XMMWORD PTR[((0-128))+rax] - movd xmm7,DWORD PTR[((-4))+r11] - punpckldq xmm0,xmm8 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - punpckldq xmm9,xmm7 - movdqa xmm7,xmm12 - movdqa xmm6,xmm12 - pslld xmm8,5 - prefetcht0 [63+r8] - pandn xmm7,xmm14 - pand xmm6,xmm13 - punpckldq xmm0,xmm9 - movdqa xmm9,xmm11 - - movdqa XMMWORD PTR[(224-128)+rax],xmm4 - paddd xmm10,xmm4 - psrld xmm9,27 - pxor xmm6,xmm7 - movdqa xmm7,xmm12 - prefetcht0 [63+r9] - - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm10,xmm6 - prefetcht0 [63+r10] - - psrld xmm12,2 - paddd xmm10,xmm8 -DB 102,15,56,0,197 - prefetcht0 [63+r11] - por xmm12,xmm7 - movdqa xmm2,XMMWORD PTR[((16-128))+rax] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm10 - pxor xmm1,XMMWORD PTR[((128-128))+rax] - paddd xmm14,xmm15 - movdqa xmm7,xmm11 - pslld xmm8,5 - pxor xmm1,xmm3 - movdqa xmm6,xmm11 - pandn xmm7,xmm13 - movdqa xmm5,xmm1 - pand xmm6,xmm12 - movdqa xmm9,xmm10 - psrld xmm5,31 - paddd xmm1,xmm1 - - movdqa XMMWORD PTR[(240-128)+rax],xmm0 - paddd xmm14,xmm0 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm11 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm14 - pxor xmm2,XMMWORD PTR[((144-128))+rax] - paddd xmm13,xmm15 - movdqa xmm7,xmm10 - pslld xmm8,5 - pxor xmm2,xmm4 - movdqa xmm6,xmm10 - pandn xmm7,xmm12 - movdqa xmm5,xmm2 - pand xmm6,xmm11 - movdqa xmm9,xmm14 - psrld xmm5,31 - paddd xmm2,xmm2 - - movdqa XMMWORD PTR[(0-128)+rax],xmm1 - paddd xmm13,xmm1 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm10 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm13 - pxor xmm3,XMMWORD PTR[((160-128))+rax] - paddd xmm12,xmm15 - movdqa xmm7,xmm14 - pslld xmm8,5 - pxor xmm3,xmm0 - movdqa xmm6,xmm14 - pandn xmm7,xmm11 - movdqa xmm5,xmm3 - pand xmm6,xmm10 - movdqa xmm9,xmm13 - psrld xmm5,31 - paddd xmm3,xmm3 - - movdqa XMMWORD PTR[(16-128)+rax],xmm2 - paddd xmm12,xmm2 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm14 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm12 - pxor xmm4,XMMWORD PTR[((176-128))+rax] - paddd xmm11,xmm15 - movdqa xmm7,xmm13 - pslld xmm8,5 - pxor xmm4,xmm1 - movdqa xmm6,xmm13 - pandn xmm7,xmm10 - movdqa xmm5,xmm4 - pand xmm6,xmm14 - movdqa xmm9,xmm12 - psrld xmm5,31 - paddd xmm4,xmm4 - - movdqa XMMWORD PTR[(32-128)+rax],xmm3 - paddd xmm11,xmm3 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm13 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm11 - pxor xmm0,XMMWORD PTR[((192-128))+rax] - paddd xmm10,xmm15 - movdqa xmm7,xmm12 - pslld xmm8,5 - pxor xmm0,xmm2 - movdqa xmm6,xmm12 - pandn xmm7,xmm14 - movdqa xmm5,xmm0 - pand xmm6,xmm13 - movdqa xmm9,xmm11 - psrld xmm5,31 - paddd xmm0,xmm0 - - movdqa XMMWORD PTR[(48-128)+rax],xmm4 - paddd xmm10,xmm4 - psrld xmm9,27 - pxor xmm6,xmm7 - - movdqa xmm7,xmm12 - por xmm8,xmm9 - pslld xmm7,30 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((208-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(64-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((224-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(80-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((240-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(96-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((0-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(112-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((16-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(128-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((32-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(144-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((48-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(160-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((64-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(176-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((80-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(192-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((96-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(208-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((112-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(224-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((128-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(240-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((144-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(0-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((160-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(16-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((176-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(32-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((192-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(48-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((208-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(64-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((224-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(80-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((240-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(96-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((0-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(112-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[32+rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((16-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(128-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((32-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(144-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((48-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(160-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((64-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(176-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((80-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(192-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((96-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(208-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((112-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(224-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((128-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(240-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((144-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(0-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((160-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(16-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((176-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(32-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((192-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(48-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((208-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(64-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((224-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(80-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((240-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(96-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm7,xmm13 - pxor xmm1,XMMWORD PTR[((0-128))+rax] - pxor xmm1,xmm3 - paddd xmm14,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm10 - pand xmm7,xmm12 - - movdqa xmm6,xmm13 - movdqa xmm5,xmm1 - psrld xmm9,27 - paddd xmm14,xmm7 - pxor xmm6,xmm12 - - movdqa XMMWORD PTR[(112-128)+rax],xmm0 - paddd xmm14,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm11 - movdqa xmm7,xmm11 - - pslld xmm7,30 - paddd xmm1,xmm1 - paddd xmm14,xmm6 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm7,xmm12 - pxor xmm2,XMMWORD PTR[((16-128))+rax] - pxor xmm2,xmm4 - paddd xmm13,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm14 - pand xmm7,xmm11 - - movdqa xmm6,xmm12 - movdqa xmm5,xmm2 - psrld xmm9,27 - paddd xmm13,xmm7 - pxor xmm6,xmm11 - - movdqa XMMWORD PTR[(128-128)+rax],xmm1 - paddd xmm13,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm10 - movdqa xmm7,xmm10 - - pslld xmm7,30 - paddd xmm2,xmm2 - paddd xmm13,xmm6 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm7,xmm11 - pxor xmm3,XMMWORD PTR[((32-128))+rax] - pxor xmm3,xmm0 - paddd xmm12,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm13 - pand xmm7,xmm10 - - movdqa xmm6,xmm11 - movdqa xmm5,xmm3 - psrld xmm9,27 - paddd xmm12,xmm7 - pxor xmm6,xmm10 - - movdqa XMMWORD PTR[(144-128)+rax],xmm2 - paddd xmm12,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm14 - movdqa xmm7,xmm14 - - pslld xmm7,30 - paddd xmm3,xmm3 - paddd xmm12,xmm6 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm7,xmm10 - pxor xmm4,XMMWORD PTR[((48-128))+rax] - pxor xmm4,xmm1 - paddd xmm11,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm12 - pand xmm7,xmm14 - - movdqa xmm6,xmm10 - movdqa xmm5,xmm4 - psrld xmm9,27 - paddd xmm11,xmm7 - pxor xmm6,xmm14 - - movdqa XMMWORD PTR[(160-128)+rax],xmm3 - paddd xmm11,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm13 - movdqa xmm7,xmm13 - - pslld xmm7,30 - paddd xmm4,xmm4 - paddd xmm11,xmm6 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm7,xmm14 - pxor xmm0,XMMWORD PTR[((64-128))+rax] - pxor xmm0,xmm2 - paddd xmm10,xmm15 - pslld xmm8,5 - movdqa xmm9,xmm11 - pand xmm7,xmm13 - - movdqa xmm6,xmm14 - movdqa xmm5,xmm0 - psrld xmm9,27 - paddd xmm10,xmm7 - pxor xmm6,xmm13 - - movdqa XMMWORD PTR[(176-128)+rax],xmm4 - paddd xmm10,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - pand xmm6,xmm12 - movdqa xmm7,xmm12 - - pslld xmm7,30 - paddd xmm0,xmm0 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - movdqa xmm15,XMMWORD PTR[64+rbp] - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((80-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(192-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((96-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(208-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((112-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(224-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((32-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((128-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(240-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((48-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((144-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(0-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((64-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((160-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(16-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((80-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((176-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(32-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((96-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((192-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - movdqa XMMWORD PTR[(48-128)+rax],xmm2 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((112-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((208-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - movdqa XMMWORD PTR[(64-128)+rax],xmm3 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((128-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((224-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - movdqa XMMWORD PTR[(80-128)+rax],xmm4 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((144-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((240-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - movdqa XMMWORD PTR[(96-128)+rax],xmm0 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((160-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((0-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - movdqa XMMWORD PTR[(112-128)+rax],xmm1 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((176-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((16-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((192-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((32-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - pxor xmm0,xmm2 - movdqa xmm2,XMMWORD PTR[((208-128))+rax] - - movdqa xmm8,xmm11 - movdqa xmm6,xmm14 - pxor xmm0,XMMWORD PTR[((48-128))+rax] - paddd xmm10,xmm15 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - paddd xmm10,xmm4 - pxor xmm0,xmm2 - psrld xmm9,27 - pxor xmm6,xmm13 - movdqa xmm7,xmm12 - - pslld xmm7,30 - movdqa xmm5,xmm0 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm10,xmm6 - paddd xmm0,xmm0 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm0,xmm5 - por xmm12,xmm7 - pxor xmm1,xmm3 - movdqa xmm3,XMMWORD PTR[((224-128))+rax] - - movdqa xmm8,xmm10 - movdqa xmm6,xmm13 - pxor xmm1,XMMWORD PTR[((64-128))+rax] - paddd xmm14,xmm15 - pslld xmm8,5 - pxor xmm6,xmm11 - - movdqa xmm9,xmm10 - paddd xmm14,xmm0 - pxor xmm1,xmm3 - psrld xmm9,27 - pxor xmm6,xmm12 - movdqa xmm7,xmm11 - - pslld xmm7,30 - movdqa xmm5,xmm1 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm14,xmm6 - paddd xmm1,xmm1 - - psrld xmm11,2 - paddd xmm14,xmm8 - por xmm1,xmm5 - por xmm11,xmm7 - pxor xmm2,xmm4 - movdqa xmm4,XMMWORD PTR[((240-128))+rax] - - movdqa xmm8,xmm14 - movdqa xmm6,xmm12 - pxor xmm2,XMMWORD PTR[((80-128))+rax] - paddd xmm13,xmm15 - pslld xmm8,5 - pxor xmm6,xmm10 - - movdqa xmm9,xmm14 - paddd xmm13,xmm1 - pxor xmm2,xmm4 - psrld xmm9,27 - pxor xmm6,xmm11 - movdqa xmm7,xmm10 - - pslld xmm7,30 - movdqa xmm5,xmm2 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm13,xmm6 - paddd xmm2,xmm2 - - psrld xmm10,2 - paddd xmm13,xmm8 - por xmm2,xmm5 - por xmm10,xmm7 - pxor xmm3,xmm0 - movdqa xmm0,XMMWORD PTR[((0-128))+rax] - - movdqa xmm8,xmm13 - movdqa xmm6,xmm11 - pxor xmm3,XMMWORD PTR[((96-128))+rax] - paddd xmm12,xmm15 - pslld xmm8,5 - pxor xmm6,xmm14 - - movdqa xmm9,xmm13 - paddd xmm12,xmm2 - pxor xmm3,xmm0 - psrld xmm9,27 - pxor xmm6,xmm10 - movdqa xmm7,xmm14 - - pslld xmm7,30 - movdqa xmm5,xmm3 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm12,xmm6 - paddd xmm3,xmm3 - - psrld xmm14,2 - paddd xmm12,xmm8 - por xmm3,xmm5 - por xmm14,xmm7 - pxor xmm4,xmm1 - movdqa xmm1,XMMWORD PTR[((16-128))+rax] - - movdqa xmm8,xmm12 - movdqa xmm6,xmm10 - pxor xmm4,XMMWORD PTR[((112-128))+rax] - paddd xmm11,xmm15 - pslld xmm8,5 - pxor xmm6,xmm13 - - movdqa xmm9,xmm12 - paddd xmm11,xmm3 - pxor xmm4,xmm1 - psrld xmm9,27 - pxor xmm6,xmm14 - movdqa xmm7,xmm13 - - pslld xmm7,30 - movdqa xmm5,xmm4 - por xmm8,xmm9 - psrld xmm5,31 - paddd xmm11,xmm6 - paddd xmm4,xmm4 - - psrld xmm13,2 - paddd xmm11,xmm8 - por xmm4,xmm5 - por xmm13,xmm7 - movdqa xmm8,xmm11 - paddd xmm10,xmm15 - movdqa xmm6,xmm14 - pslld xmm8,5 - pxor xmm6,xmm12 - - movdqa xmm9,xmm11 - paddd xmm10,xmm4 - psrld xmm9,27 - movdqa xmm7,xmm12 - pxor xmm6,xmm13 - - pslld xmm7,30 - por xmm8,xmm9 - paddd xmm10,xmm6 - - psrld xmm12,2 - paddd xmm10,xmm8 - por xmm12,xmm7 - movdqa xmm0,XMMWORD PTR[rbx] - mov ecx,1 - cmp ecx,DWORD PTR[rbx] - pxor xmm8,xmm8 - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - movdqa xmm1,xmm0 - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - pcmpgtd xmm1,xmm8 - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - paddd xmm0,xmm1 - cmovge r11,rbp - - movdqu xmm6,XMMWORD PTR[rdi] - pand xmm10,xmm1 - movdqu xmm7,XMMWORD PTR[32+rdi] - pand xmm11,xmm1 - paddd xmm10,xmm6 - movdqu xmm8,XMMWORD PTR[64+rdi] - pand xmm12,xmm1 - paddd xmm11,xmm7 - movdqu xmm9,XMMWORD PTR[96+rdi] - pand xmm13,xmm1 - paddd xmm12,xmm8 - movdqu xmm5,XMMWORD PTR[128+rdi] - pand xmm14,xmm1 - movdqu XMMWORD PTR[rdi],xmm10 - paddd xmm13,xmm9 - movdqu XMMWORD PTR[32+rdi],xmm11 - paddd xmm14,xmm5 - movdqu XMMWORD PTR[64+rdi],xmm12 - movdqu XMMWORD PTR[96+rdi],xmm13 - movdqu XMMWORD PTR[128+rdi],xmm14 - - movdqa XMMWORD PTR[rbx],xmm0 - movdqa xmm5,XMMWORD PTR[96+rbp] - movdqa xmm15,XMMWORD PTR[((-32))+rbp] - dec edx - jnz $L$oop - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande - -$L$done:: - mov rax,QWORD PTR[272+rsp] - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block:: -sha1_multi_block ENDP - -ALIGN 32 -sha1_multi_block_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_multi_block_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - shl edx,1 - and rsp,-256 - lea rdi,QWORD PTR[64+rdi] - mov QWORD PTR[272+rsp],rax -$L$body_shaext:: - lea rbx,QWORD PTR[256+rsp] - movdqa xmm3,XMMWORD PTR[((K_XX_XX+128))] - -$L$oop_grande_shaext:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rsp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rsp - test edx,edx - jz $L$done_shaext - - movq xmm0,QWORD PTR[((0-64))+rdi] - movq xmm4,QWORD PTR[((32-64))+rdi] - movq xmm5,QWORD PTR[((64-64))+rdi] - movq xmm6,QWORD PTR[((96-64))+rdi] - movq xmm7,QWORD PTR[((128-64))+rdi] - - punpckldq xmm0,xmm4 - punpckldq xmm5,xmm6 - - movdqa xmm8,xmm0 - punpcklqdq xmm0,xmm5 - punpckhqdq xmm8,xmm5 - - pshufd xmm1,xmm7,63 - pshufd xmm9,xmm7,127 - pshufd xmm0,xmm0,27 - pshufd xmm8,xmm8,27 - jmp $L$oop_shaext - -ALIGN 32 -$L$oop_shaext:: - movdqu xmm4,XMMWORD PTR[r8] - movdqu xmm11,XMMWORD PTR[r9] - movdqu xmm5,XMMWORD PTR[16+r8] - movdqu xmm12,XMMWORD PTR[16+r9] - movdqu xmm6,XMMWORD PTR[32+r8] -DB 102,15,56,0,227 - movdqu xmm13,XMMWORD PTR[32+r9] -DB 102,68,15,56,0,219 - movdqu xmm7,XMMWORD PTR[48+r8] - lea r8,QWORD PTR[64+r8] -DB 102,15,56,0,235 - movdqu xmm14,XMMWORD PTR[48+r9] - lea r9,QWORD PTR[64+r9] -DB 102,68,15,56,0,227 - - movdqa XMMWORD PTR[80+rsp],xmm1 - paddd xmm1,xmm4 - movdqa XMMWORD PTR[112+rsp],xmm9 - paddd xmm9,xmm11 - movdqa XMMWORD PTR[64+rsp],xmm0 - movdqa xmm2,xmm0 - movdqa XMMWORD PTR[96+rsp],xmm8 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,213 -DB 69,15,58,204,193,0 -DB 69,15,56,200,212 -DB 102,15,56,0,243 - prefetcht0 [127+r8] -DB 15,56,201,229 -DB 102,68,15,56,0,235 - prefetcht0 [127+r9] -DB 69,15,56,201,220 - -DB 102,15,56,0,251 - movdqa xmm1,xmm0 -DB 102,68,15,56,0,243 - movdqa xmm9,xmm8 -DB 15,58,204,194,0 -DB 15,56,200,206 -DB 69,15,58,204,194,0 -DB 69,15,56,200,205 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,215 -DB 69,15,58,204,193,0 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,0 -DB 15,56,200,204 -DB 69,15,58,204,194,0 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,0 -DB 15,56,200,213 -DB 69,15,58,204,193,0 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,206 -DB 69,15,58,204,194,1 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,1 -DB 15,56,200,215 -DB 69,15,58,204,193,1 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,204 -DB 69,15,58,204,194,1 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,1 -DB 15,56,200,213 -DB 69,15,58,204,193,1 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,1 -DB 15,56,200,206 -DB 69,15,58,204,194,1 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,215 -DB 69,15,58,204,193,2 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,2 -DB 15,56,200,204 -DB 69,15,58,204,194,2 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,213 -DB 69,15,58,204,193,2 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 -DB 15,56,201,229 - pxor xmm14,xmm12 -DB 69,15,56,201,220 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,2 -DB 15,56,200,206 -DB 69,15,58,204,194,2 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - pxor xmm4,xmm6 -DB 15,56,201,238 - pxor xmm11,xmm13 -DB 69,15,56,201,229 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,2 -DB 15,56,200,215 -DB 69,15,58,204,193,2 -DB 69,15,56,200,214 -DB 15,56,202,231 -DB 69,15,56,202,222 - pxor xmm5,xmm7 -DB 15,56,201,247 - pxor xmm12,xmm14 -DB 69,15,56,201,238 - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,204 -DB 69,15,58,204,194,3 -DB 69,15,56,200,203 -DB 15,56,202,236 -DB 69,15,56,202,227 - pxor xmm6,xmm4 -DB 15,56,201,252 - pxor xmm13,xmm11 -DB 69,15,56,201,243 - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,3 -DB 15,56,200,213 -DB 69,15,58,204,193,3 -DB 69,15,56,200,212 -DB 15,56,202,245 -DB 69,15,56,202,236 - pxor xmm7,xmm5 - pxor xmm14,xmm12 - - mov ecx,1 - pxor xmm4,xmm4 - cmp ecx,DWORD PTR[rbx] - cmovge r8,rsp - - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,206 -DB 69,15,58,204,194,3 -DB 69,15,56,200,205 -DB 15,56,202,254 -DB 69,15,56,202,245 - - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rsp - movq xmm6,QWORD PTR[rbx] - - movdqa xmm2,xmm0 - movdqa xmm10,xmm8 -DB 15,58,204,193,3 -DB 15,56,200,215 -DB 69,15,58,204,193,3 -DB 69,15,56,200,214 - - pshufd xmm11,xmm6,000h - pshufd xmm12,xmm6,055h - movdqa xmm7,xmm6 - pcmpgtd xmm11,xmm4 - pcmpgtd xmm12,xmm4 - - movdqa xmm1,xmm0 - movdqa xmm9,xmm8 -DB 15,58,204,194,3 -DB 15,56,200,204 -DB 69,15,58,204,194,3 -DB 68,15,56,200,204 - - pcmpgtd xmm7,xmm4 - pand xmm0,xmm11 - pand xmm1,xmm11 - pand xmm8,xmm12 - pand xmm9,xmm12 - paddd xmm6,xmm7 - - paddd xmm0,XMMWORD PTR[64+rsp] - paddd xmm1,XMMWORD PTR[80+rsp] - paddd xmm8,XMMWORD PTR[96+rsp] - paddd xmm9,XMMWORD PTR[112+rsp] - - movq QWORD PTR[rbx],xmm6 - dec edx - jnz $L$oop_shaext - - mov edx,DWORD PTR[280+rsp] - - pshufd xmm0,xmm0,27 - pshufd xmm8,xmm8,27 - - movdqa xmm6,xmm0 - punpckldq xmm0,xmm8 - punpckhdq xmm6,xmm8 - punpckhdq xmm1,xmm9 - movq QWORD PTR[(0-64)+rdi],xmm0 - psrldq xmm0,8 - movq QWORD PTR[(64-64)+rdi],xmm6 - psrldq xmm6,8 - movq QWORD PTR[(32-64)+rdi],xmm0 - psrldq xmm1,8 - movq QWORD PTR[(96-64)+rdi],xmm6 - movq QWORD PTR[(128-64)+rdi],xmm1 - - lea rdi,QWORD PTR[8+rdi] - lea rsi,QWORD PTR[32+rsi] - dec edx - jnz $L$oop_grande_shaext - -$L$done_shaext:: - - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_multi_block_shaext:: -sha1_multi_block_shaext ENDP - -ALIGN 256 - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 05a827999h,05a827999h,05a827999h,05a827999h -K_XX_XX:: - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h -DB 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107 -DB 32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120 -DB 56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77 -DB 83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110 -DB 115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[272+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - - lea rsi,QWORD PTR[((-24-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha1_multi_block - DD imagerel $L$SEH_end_sha1_multi_block - DD imagerel $L$SEH_info_sha1_multi_block - DD imagerel $L$SEH_begin_sha1_multi_block_shaext - DD imagerel $L$SEH_end_sha1_multi_block_shaext - DD imagerel $L$SEH_info_sha1_multi_block_shaext -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha1_multi_block:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body,imagerel $L$epilogue -$L$SEH_info_sha1_multi_block_shaext:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_shaext,imagerel $L$epilogue_shaext - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-x86_64.asm deleted file mode 100644 index 7528c8a8a69303..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-x86_64.asm +++ /dev/null @@ -1,2850 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha1_block_data_order - -ALIGN 16 -sha1_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov r9d,DWORD PTR[((OPENSSL_ia32cap_P+0))] - mov r8d,DWORD PTR[((OPENSSL_ia32cap_P+4))] - mov r10d,DWORD PTR[((OPENSSL_ia32cap_P+8))] - test r8d,512 - jz $L$ialu - test r10d,536870912 - jnz _shaext_shortcut - jmp _ssse3_shortcut - -ALIGN 16 -$L$ialu:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - mov r8,rdi - sub rsp,72 - mov r9,rsi - and rsp,-64 - mov r10,rdx - mov QWORD PTR[64+rsp],rax -$L$prologue:: - - mov esi,DWORD PTR[r8] - mov edi,DWORD PTR[4+r8] - mov r11d,DWORD PTR[8+r8] - mov r12d,DWORD PTR[12+r8] - mov r13d,DWORD PTR[16+r8] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov edx,DWORD PTR[r9] - bswap edx - mov ebp,DWORD PTR[4+r9] - mov eax,r12d - mov DWORD PTR[rsp],edx - mov ecx,esi - bswap ebp - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rdx] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov r14d,DWORD PTR[8+r9] - mov eax,r11d - mov DWORD PTR[4+rsp],ebp - mov ecx,r13d - bswap r14d - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rbp] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov edx,DWORD PTR[12+r9] - mov eax,edi - mov DWORD PTR[8+rsp],r14d - mov ecx,r12d - bswap edx - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+r14] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov ebp,DWORD PTR[16+r9] - mov eax,esi - mov DWORD PTR[12+rsp],edx - mov ecx,r11d - bswap ebp - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rdx] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov r14d,DWORD PTR[20+r9] - mov eax,r13d - mov DWORD PTR[16+rsp],ebp - mov ecx,edi - bswap r14d - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rbp] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - mov edx,DWORD PTR[24+r9] - mov eax,r12d - mov DWORD PTR[20+rsp],r14d - mov ecx,esi - bswap edx - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+r14] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov ebp,DWORD PTR[28+r9] - mov eax,r11d - mov DWORD PTR[24+rsp],edx - mov ecx,r13d - bswap ebp - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rdx] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov r14d,DWORD PTR[32+r9] - mov eax,edi - mov DWORD PTR[28+rsp],ebp - mov ecx,r12d - bswap r14d - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+rbp] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov edx,DWORD PTR[36+r9] - mov eax,esi - mov DWORD PTR[32+rsp],r14d - mov ecx,r11d - bswap edx - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+r14] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov ebp,DWORD PTR[40+r9] - mov eax,r13d - mov DWORD PTR[36+rsp],edx - mov ecx,edi - bswap ebp - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rdx] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - mov r14d,DWORD PTR[44+r9] - mov eax,r12d - mov DWORD PTR[40+rsp],ebp - mov ecx,esi - bswap r14d - xor eax,r11d - rol ecx,5 - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rbp] - add r13d,ecx - xor eax,r12d - rol edi,30 - add r13d,eax - mov edx,DWORD PTR[48+r9] - mov eax,r11d - mov DWORD PTR[44+rsp],r14d - mov ecx,r13d - bswap edx - xor eax,edi - rol ecx,5 - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+r14] - add r12d,ecx - xor eax,r11d - rol esi,30 - add r12d,eax - mov ebp,DWORD PTR[52+r9] - mov eax,edi - mov DWORD PTR[48+rsp],edx - mov ecx,r12d - bswap ebp - xor eax,esi - rol ecx,5 - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+rdx] - add r11d,ecx - xor eax,edi - rol r13d,30 - add r11d,eax - mov r14d,DWORD PTR[56+r9] - mov eax,esi - mov DWORD PTR[52+rsp],ebp - mov ecx,r11d - bswap r14d - xor eax,r13d - rol ecx,5 - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rbp] - add edi,ecx - xor eax,esi - rol r12d,30 - add edi,eax - mov edx,DWORD PTR[60+r9] - mov eax,r13d - mov DWORD PTR[56+rsp],r14d - mov ecx,edi - bswap edx - xor eax,r12d - rol ecx,5 - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+r14] - add esi,ecx - xor eax,r13d - rol r11d,30 - add esi,eax - xor ebp,DWORD PTR[rsp] - mov eax,r12d - mov DWORD PTR[60+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[8+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[32+rsp] - and eax,edi - lea r13d,DWORD PTR[1518500249+r13*1+rdx] - rol edi,30 - xor eax,r12d - add r13d,ecx - rol ebp,1 - add r13d,eax - xor r14d,DWORD PTR[4+rsp] - mov eax,r11d - mov DWORD PTR[rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[12+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[36+rsp] - and eax,esi - lea r12d,DWORD PTR[1518500249+r12*1+rbp] - rol esi,30 - xor eax,r11d - add r12d,ecx - rol r14d,1 - add r12d,eax - xor edx,DWORD PTR[8+rsp] - mov eax,edi - mov DWORD PTR[4+rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[16+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[40+rsp] - and eax,r13d - lea r11d,DWORD PTR[1518500249+r11*1+r14] - rol r13d,30 - xor eax,edi - add r11d,ecx - rol edx,1 - add r11d,eax - xor ebp,DWORD PTR[12+rsp] - mov eax,esi - mov DWORD PTR[8+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[20+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[44+rsp] - and eax,r12d - lea edi,DWORD PTR[1518500249+rdi*1+rdx] - rol r12d,30 - xor eax,esi - add edi,ecx - rol ebp,1 - add edi,eax - xor r14d,DWORD PTR[16+rsp] - mov eax,r13d - mov DWORD PTR[12+rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[24+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[48+rsp] - and eax,r11d - lea esi,DWORD PTR[1518500249+rsi*1+rbp] - rol r11d,30 - xor eax,r13d - add esi,ecx - rol r14d,1 - add esi,eax - xor edx,DWORD PTR[20+rsp] - mov eax,edi - mov DWORD PTR[16+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[28+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[52+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[24+rsp] - mov eax,esi - mov DWORD PTR[20+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[32+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[56+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[28+rsp] - mov eax,r13d - mov DWORD PTR[24+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[36+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[60+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[32+rsp] - mov eax,r12d - mov DWORD PTR[28+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[40+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[rsp] - lea edi,DWORD PTR[1859775393+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[36+rsp] - mov eax,r11d - mov DWORD PTR[32+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[44+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[4+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[40+rsp] - mov eax,edi - mov DWORD PTR[36+rsp],ebp - mov ecx,esi - xor r14d,DWORD PTR[48+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[8+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+rbp] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol r14d,1 - xor edx,DWORD PTR[44+rsp] - mov eax,esi - mov DWORD PTR[40+rsp],r14d - mov ecx,r13d - xor edx,DWORD PTR[52+rsp] - xor eax,r11d - rol ecx,5 - xor edx,DWORD PTR[12+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+r14] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol edx,1 - xor ebp,DWORD PTR[48+rsp] - mov eax,r13d - mov DWORD PTR[44+rsp],edx - mov ecx,r12d - xor ebp,DWORD PTR[56+rsp] - xor eax,edi - rol ecx,5 - xor ebp,DWORD PTR[16+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rdx] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol ebp,1 - xor r14d,DWORD PTR[52+rsp] - mov eax,r12d - mov DWORD PTR[48+rsp],ebp - mov ecx,r11d - xor r14d,DWORD PTR[60+rsp] - xor eax,esi - rol ecx,5 - xor r14d,DWORD PTR[20+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+rbp] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol r14d,1 - xor edx,DWORD PTR[56+rsp] - mov eax,r11d - mov DWORD PTR[52+rsp],r14d - mov ecx,edi - xor edx,DWORD PTR[rsp] - xor eax,r13d - rol ecx,5 - xor edx,DWORD PTR[24+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+r14] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol edx,1 - xor ebp,DWORD PTR[60+rsp] - mov eax,edi - mov DWORD PTR[56+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[4+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[28+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[rsp] - mov eax,esi - mov DWORD PTR[60+rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[8+rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[32+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[4+rsp] - mov eax,r13d - mov DWORD PTR[rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[12+rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[36+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[8+rsp] - mov eax,r12d - mov DWORD PTR[4+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[16+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[40+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - xor r14d,DWORD PTR[12+rsp] - mov eax,r11d - mov DWORD PTR[8+rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[20+rsp] - xor eax,r13d - rol ecx,5 - xor r14d,DWORD PTR[44+rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rbp] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol r14d,1 - xor edx,DWORD PTR[16+rsp] - mov eax,edi - mov DWORD PTR[12+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[24+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[48+rsp] - lea r13d,DWORD PTR[1859775393+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[20+rsp] - mov eax,esi - mov DWORD PTR[16+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[28+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[52+rsp] - lea r12d,DWORD PTR[1859775393+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[24+rsp] - mov eax,r13d - mov DWORD PTR[20+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[32+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[56+rsp] - lea r11d,DWORD PTR[1859775393+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[28+rsp] - mov eax,r12d - mov DWORD PTR[24+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[36+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[60+rsp] - lea edi,DWORD PTR[1859775393+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[32+rsp] - mov eax,r11d - mov DWORD PTR[28+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[40+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[rsp] - lea esi,DWORD PTR[1859775393+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[36+rsp] - mov eax,r12d - mov DWORD PTR[32+rsp],ebp - mov ebx,r12d - xor r14d,DWORD PTR[44+rsp] - and eax,r11d - mov ecx,esi - xor r14d,DWORD PTR[4+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rbp] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol r14d,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor edx,DWORD PTR[40+rsp] - mov eax,r11d - mov DWORD PTR[36+rsp],r14d - mov ebx,r11d - xor edx,DWORD PTR[48+rsp] - and eax,edi - mov ecx,r13d - xor edx,DWORD PTR[8+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+r14] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol edx,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor ebp,DWORD PTR[44+rsp] - mov eax,edi - mov DWORD PTR[40+rsp],edx - mov ebx,edi - xor ebp,DWORD PTR[52+rsp] - and eax,esi - mov ecx,r12d - xor ebp,DWORD PTR[12+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rdx] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol ebp,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor r14d,DWORD PTR[48+rsp] - mov eax,esi - mov DWORD PTR[44+rsp],ebp - mov ebx,esi - xor r14d,DWORD PTR[56+rsp] - and eax,r13d - mov ecx,r11d - xor r14d,DWORD PTR[16+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rbp] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol r14d,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor edx,DWORD PTR[52+rsp] - mov eax,r13d - mov DWORD PTR[48+rsp],r14d - mov ebx,r13d - xor edx,DWORD PTR[60+rsp] - and eax,r12d - mov ecx,edi - xor edx,DWORD PTR[20+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+r14] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol edx,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor ebp,DWORD PTR[56+rsp] - mov eax,r12d - mov DWORD PTR[52+rsp],edx - mov ebx,r12d - xor ebp,DWORD PTR[rsp] - and eax,r11d - mov ecx,esi - xor ebp,DWORD PTR[24+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rdx] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol ebp,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor r14d,DWORD PTR[60+rsp] - mov eax,r11d - mov DWORD PTR[56+rsp],ebp - mov ebx,r11d - xor r14d,DWORD PTR[4+rsp] - and eax,edi - mov ecx,r13d - xor r14d,DWORD PTR[28+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+rbp] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol r14d,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor edx,DWORD PTR[rsp] - mov eax,edi - mov DWORD PTR[60+rsp],r14d - mov ebx,edi - xor edx,DWORD PTR[8+rsp] - and eax,esi - mov ecx,r12d - xor edx,DWORD PTR[32+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+r14] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol edx,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor ebp,DWORD PTR[4+rsp] - mov eax,esi - mov DWORD PTR[rsp],edx - mov ebx,esi - xor ebp,DWORD PTR[12+rsp] - and eax,r13d - mov ecx,r11d - xor ebp,DWORD PTR[36+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rdx] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol ebp,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor r14d,DWORD PTR[8+rsp] - mov eax,r13d - mov DWORD PTR[4+rsp],ebp - mov ebx,r13d - xor r14d,DWORD PTR[16+rsp] - and eax,r12d - mov ecx,edi - xor r14d,DWORD PTR[40+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+rbp] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol r14d,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor edx,DWORD PTR[12+rsp] - mov eax,r12d - mov DWORD PTR[8+rsp],r14d - mov ebx,r12d - xor edx,DWORD PTR[20+rsp] - and eax,r11d - mov ecx,esi - xor edx,DWORD PTR[44+rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+r14] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol edx,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor ebp,DWORD PTR[16+rsp] - mov eax,r11d - mov DWORD PTR[12+rsp],edx - mov ebx,r11d - xor ebp,DWORD PTR[24+rsp] - and eax,edi - mov ecx,r13d - xor ebp,DWORD PTR[48+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+rdx] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol ebp,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor r14d,DWORD PTR[20+rsp] - mov eax,edi - mov DWORD PTR[16+rsp],ebp - mov ebx,edi - xor r14d,DWORD PTR[28+rsp] - and eax,esi - mov ecx,r12d - xor r14d,DWORD PTR[52+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rbp] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol r14d,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor edx,DWORD PTR[24+rsp] - mov eax,esi - mov DWORD PTR[20+rsp],r14d - mov ebx,esi - xor edx,DWORD PTR[32+rsp] - and eax,r13d - mov ecx,r11d - xor edx,DWORD PTR[56+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+r14] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol edx,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor ebp,DWORD PTR[28+rsp] - mov eax,r13d - mov DWORD PTR[24+rsp],edx - mov ebx,r13d - xor ebp,DWORD PTR[36+rsp] - and eax,r12d - mov ecx,edi - xor ebp,DWORD PTR[60+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+rdx] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol ebp,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor r14d,DWORD PTR[32+rsp] - mov eax,r12d - mov DWORD PTR[28+rsp],ebp - mov ebx,r12d - xor r14d,DWORD PTR[40+rsp] - and eax,r11d - mov ecx,esi - xor r14d,DWORD PTR[rsp] - lea r13d,DWORD PTR[((-1894007588))+r13*1+rbp] - xor ebx,r11d - rol ecx,5 - add r13d,eax - rol r14d,1 - and ebx,edi - add r13d,ecx - rol edi,30 - add r13d,ebx - xor edx,DWORD PTR[36+rsp] - mov eax,r11d - mov DWORD PTR[32+rsp],r14d - mov ebx,r11d - xor edx,DWORD PTR[44+rsp] - and eax,edi - mov ecx,r13d - xor edx,DWORD PTR[4+rsp] - lea r12d,DWORD PTR[((-1894007588))+r12*1+r14] - xor ebx,edi - rol ecx,5 - add r12d,eax - rol edx,1 - and ebx,esi - add r12d,ecx - rol esi,30 - add r12d,ebx - xor ebp,DWORD PTR[40+rsp] - mov eax,edi - mov DWORD PTR[36+rsp],edx - mov ebx,edi - xor ebp,DWORD PTR[48+rsp] - and eax,esi - mov ecx,r12d - xor ebp,DWORD PTR[8+rsp] - lea r11d,DWORD PTR[((-1894007588))+r11*1+rdx] - xor ebx,esi - rol ecx,5 - add r11d,eax - rol ebp,1 - and ebx,r13d - add r11d,ecx - rol r13d,30 - add r11d,ebx - xor r14d,DWORD PTR[44+rsp] - mov eax,esi - mov DWORD PTR[40+rsp],ebp - mov ebx,esi - xor r14d,DWORD PTR[52+rsp] - and eax,r13d - mov ecx,r11d - xor r14d,DWORD PTR[12+rsp] - lea edi,DWORD PTR[((-1894007588))+rdi*1+rbp] - xor ebx,r13d - rol ecx,5 - add edi,eax - rol r14d,1 - and ebx,r12d - add edi,ecx - rol r12d,30 - add edi,ebx - xor edx,DWORD PTR[48+rsp] - mov eax,r13d - mov DWORD PTR[44+rsp],r14d - mov ebx,r13d - xor edx,DWORD PTR[56+rsp] - and eax,r12d - mov ecx,edi - xor edx,DWORD PTR[16+rsp] - lea esi,DWORD PTR[((-1894007588))+rsi*1+r14] - xor ebx,r12d - rol ecx,5 - add esi,eax - rol edx,1 - and ebx,r11d - add esi,ecx - rol r11d,30 - add esi,ebx - xor ebp,DWORD PTR[52+rsp] - mov eax,edi - mov DWORD PTR[48+rsp],edx - mov ecx,esi - xor ebp,DWORD PTR[60+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[20+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[56+rsp] - mov eax,esi - mov DWORD PTR[52+rsp],ebp - mov ecx,r13d - xor r14d,DWORD PTR[rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[24+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[60+rsp] - mov eax,r13d - mov DWORD PTR[56+rsp],r14d - mov ecx,r12d - xor edx,DWORD PTR[4+rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[28+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[rsp] - mov eax,r12d - mov DWORD PTR[60+rsp],edx - mov ecx,r11d - xor ebp,DWORD PTR[8+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[32+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - xor r14d,DWORD PTR[4+rsp] - mov eax,r11d - mov DWORD PTR[rsp],ebp - mov ecx,edi - xor r14d,DWORD PTR[12+rsp] - xor eax,r13d - rol ecx,5 - xor r14d,DWORD PTR[36+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+rbp] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol r14d,1 - xor edx,DWORD PTR[8+rsp] - mov eax,edi - mov DWORD PTR[4+rsp],r14d - mov ecx,esi - xor edx,DWORD PTR[16+rsp] - xor eax,r12d - rol ecx,5 - xor edx,DWORD PTR[40+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+r14] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol edx,1 - xor ebp,DWORD PTR[12+rsp] - mov eax,esi - mov DWORD PTR[8+rsp],edx - mov ecx,r13d - xor ebp,DWORD PTR[20+rsp] - xor eax,r11d - rol ecx,5 - xor ebp,DWORD PTR[44+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rdx] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol ebp,1 - xor r14d,DWORD PTR[16+rsp] - mov eax,r13d - mov DWORD PTR[12+rsp],ebp - mov ecx,r12d - xor r14d,DWORD PTR[24+rsp] - xor eax,edi - rol ecx,5 - xor r14d,DWORD PTR[48+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+rbp] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol r14d,1 - xor edx,DWORD PTR[20+rsp] - mov eax,r12d - mov DWORD PTR[16+rsp],r14d - mov ecx,r11d - xor edx,DWORD PTR[28+rsp] - xor eax,esi - rol ecx,5 - xor edx,DWORD PTR[52+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+r14] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol edx,1 - xor ebp,DWORD PTR[24+rsp] - mov eax,r11d - mov DWORD PTR[20+rsp],edx - mov ecx,edi - xor ebp,DWORD PTR[32+rsp] - xor eax,r13d - rol ecx,5 - xor ebp,DWORD PTR[56+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+rdx] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol ebp,1 - xor r14d,DWORD PTR[28+rsp] - mov eax,edi - mov DWORD PTR[24+rsp],ebp - mov ecx,esi - xor r14d,DWORD PTR[36+rsp] - xor eax,r12d - rol ecx,5 - xor r14d,DWORD PTR[60+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rbp] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol r14d,1 - xor edx,DWORD PTR[32+rsp] - mov eax,esi - mov DWORD PTR[28+rsp],r14d - mov ecx,r13d - xor edx,DWORD PTR[40+rsp] - xor eax,r11d - rol ecx,5 - xor edx,DWORD PTR[rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+r14] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol edx,1 - xor ebp,DWORD PTR[36+rsp] - mov eax,r13d - - mov ecx,r12d - xor ebp,DWORD PTR[44+rsp] - xor eax,edi - rol ecx,5 - xor ebp,DWORD PTR[4+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+rdx] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol ebp,1 - xor r14d,DWORD PTR[40+rsp] - mov eax,r12d - - mov ecx,r11d - xor r14d,DWORD PTR[48+rsp] - xor eax,esi - rol ecx,5 - xor r14d,DWORD PTR[8+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rbp] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol r14d,1 - xor edx,DWORD PTR[44+rsp] - mov eax,r11d - - mov ecx,edi - xor edx,DWORD PTR[52+rsp] - xor eax,r13d - rol ecx,5 - xor edx,DWORD PTR[12+rsp] - lea esi,DWORD PTR[((-899497514))+rsi*1+r14] - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - rol edx,1 - xor ebp,DWORD PTR[48+rsp] - mov eax,edi - - mov ecx,esi - xor ebp,DWORD PTR[56+rsp] - xor eax,r12d - rol ecx,5 - xor ebp,DWORD PTR[16+rsp] - lea r13d,DWORD PTR[((-899497514))+r13*1+rdx] - xor eax,r11d - add r13d,ecx - rol edi,30 - add r13d,eax - rol ebp,1 - xor r14d,DWORD PTR[52+rsp] - mov eax,esi - - mov ecx,r13d - xor r14d,DWORD PTR[60+rsp] - xor eax,r11d - rol ecx,5 - xor r14d,DWORD PTR[20+rsp] - lea r12d,DWORD PTR[((-899497514))+r12*1+rbp] - xor eax,edi - add r12d,ecx - rol esi,30 - add r12d,eax - rol r14d,1 - xor edx,DWORD PTR[56+rsp] - mov eax,r13d - - mov ecx,r12d - xor edx,DWORD PTR[rsp] - xor eax,edi - rol ecx,5 - xor edx,DWORD PTR[24+rsp] - lea r11d,DWORD PTR[((-899497514))+r11*1+r14] - xor eax,esi - add r11d,ecx - rol r13d,30 - add r11d,eax - rol edx,1 - xor ebp,DWORD PTR[60+rsp] - mov eax,r12d - - mov ecx,r11d - xor ebp,DWORD PTR[4+rsp] - xor eax,esi - rol ecx,5 - xor ebp,DWORD PTR[28+rsp] - lea edi,DWORD PTR[((-899497514))+rdi*1+rdx] - xor eax,r13d - add edi,ecx - rol r12d,30 - add edi,eax - rol ebp,1 - mov eax,r11d - mov ecx,edi - xor eax,r13d - lea esi,DWORD PTR[((-899497514))+rsi*1+rbp] - rol ecx,5 - xor eax,r12d - add esi,ecx - rol r11d,30 - add esi,eax - add esi,DWORD PTR[r8] - add edi,DWORD PTR[4+r8] - add r11d,DWORD PTR[8+r8] - add r12d,DWORD PTR[12+r8] - add r13d,DWORD PTR[16+r8] - mov DWORD PTR[r8],esi - mov DWORD PTR[4+r8],edi - mov DWORD PTR[8+r8],r11d - mov DWORD PTR[12+r8],r12d - mov DWORD PTR[16+r8],r13d - - sub r10,1 - lea r9,QWORD PTR[64+r9] - jnz $L$loop - - mov rsi,QWORD PTR[64+rsp] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order:: -sha1_block_data_order ENDP - -ALIGN 32 -sha1_block_data_order_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - lea rsp,QWORD PTR[((-72))+rsp] - movaps XMMWORD PTR[(-8-64)+rax],xmm6 - movaps XMMWORD PTR[(-8-48)+rax],xmm7 - movaps XMMWORD PTR[(-8-32)+rax],xmm8 - movaps XMMWORD PTR[(-8-16)+rax],xmm9 -$L$prologue_shaext:: - movdqu xmm0,XMMWORD PTR[rdi] - movd xmm1,DWORD PTR[16+rdi] - movdqa xmm3,XMMWORD PTR[((K_XX_XX+160))] - - movdqu xmm4,XMMWORD PTR[rsi] - pshufd xmm0,xmm0,27 - movdqu xmm5,XMMWORD PTR[16+rsi] - pshufd xmm1,xmm1,27 - movdqu xmm6,XMMWORD PTR[32+rsi] -DB 102,15,56,0,227 - movdqu xmm7,XMMWORD PTR[48+rsi] -DB 102,15,56,0,235 -DB 102,15,56,0,243 - movdqa xmm9,xmm1 -DB 102,15,56,0,251 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - dec rdx - lea r8,QWORD PTR[64+rsi] - paddd xmm1,xmm4 - cmovne rsi,r8 - movdqa xmm8,xmm0 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 - movdqu xmm4,XMMWORD PTR[rsi] - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,213 - movdqu xmm5,XMMWORD PTR[16+rsi] -DB 102,15,56,0,227 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,206 - movdqu xmm6,XMMWORD PTR[32+rsi] -DB 102,15,56,0,235 - - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,215 - movdqu xmm7,XMMWORD PTR[48+rsi] -DB 102,15,56,0,243 - - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 65,15,56,200,201 -DB 102,15,56,0,251 - - paddd xmm0,xmm8 - movdqa xmm9,xmm1 - - jnz $L$oop_shaext - - pshufd xmm0,xmm0,27 - pshufd xmm1,xmm1,27 - movdqu XMMWORD PTR[rdi],xmm0 - movd DWORD PTR[16+rdi],xmm1 - movaps xmm6,XMMWORD PTR[((-8-64))+rax] - movaps xmm7,XMMWORD PTR[((-8-48))+rax] - movaps xmm8,XMMWORD PTR[((-8-32))+rax] - movaps xmm9,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_shaext:: -sha1_block_data_order_shaext ENDP - -ALIGN 16 -sha1_block_data_order_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha1_block_data_order_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_ssse3_shortcut:: - mov rax,rsp - push rbx - push rbp - push r12 - push r13 - push r14 - lea rsp,QWORD PTR[((-160))+rsp] - movaps XMMWORD PTR[(-40-96)+rax],xmm6 - movaps XMMWORD PTR[(-40-80)+rax],xmm7 - movaps XMMWORD PTR[(-40-64)+rax],xmm8 - movaps XMMWORD PTR[(-40-48)+rax],xmm9 - movaps XMMWORD PTR[(-40-32)+rax],xmm10 - movaps XMMWORD PTR[(-40-16)+rax],xmm11 -$L$prologue_ssse3:: - mov r14,rax - and rsp,-64 - mov r8,rdi - mov r9,rsi - mov r10,rdx - - shl r10,6 - add r10,r9 - lea r11,QWORD PTR[((K_XX_XX+64))] - - mov eax,DWORD PTR[r8] - mov ebx,DWORD PTR[4+r8] - mov ecx,DWORD PTR[8+r8] - mov edx,DWORD PTR[12+r8] - mov esi,ebx - mov ebp,DWORD PTR[16+r8] - mov edi,ecx - xor edi,edx - and esi,edi - - movdqa xmm6,XMMWORD PTR[64+r11] - movdqa xmm9,XMMWORD PTR[((-64))+r11] - movdqu xmm0,XMMWORD PTR[r9] - movdqu xmm1,XMMWORD PTR[16+r9] - movdqu xmm2,XMMWORD PTR[32+r9] - movdqu xmm3,XMMWORD PTR[48+r9] -DB 102,15,56,0,198 -DB 102,15,56,0,206 -DB 102,15,56,0,214 - add r9,64 - paddd xmm0,xmm9 -DB 102,15,56,0,222 - paddd xmm1,xmm9 - paddd xmm2,xmm9 - movdqa XMMWORD PTR[rsp],xmm0 - psubd xmm0,xmm9 - movdqa XMMWORD PTR[16+rsp],xmm1 - psubd xmm1,xmm9 - movdqa XMMWORD PTR[32+rsp],xmm2 - psubd xmm2,xmm9 - jmp $L$oop_ssse3 -ALIGN 16 -$L$oop_ssse3:: - ror ebx,2 - pshufd xmm4,xmm0,238 - xor esi,edx - movdqa xmm8,xmm3 - paddd xmm9,xmm3 - mov edi,eax - add ebp,DWORD PTR[rsp] - punpcklqdq xmm4,xmm1 - xor ebx,ecx - rol eax,5 - add ebp,esi - psrldq xmm8,4 - and edi,ebx - xor ebx,ecx - pxor xmm4,xmm0 - add ebp,eax - ror eax,7 - pxor xmm8,xmm2 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[4+rsp] - pxor xmm4,xmm8 - xor eax,ebx - rol ebp,5 - movdqa XMMWORD PTR[48+rsp],xmm9 - add edx,edi - and esi,eax - movdqa xmm10,xmm4 - xor eax,ebx - add edx,ebp - ror ebp,7 - movdqa xmm8,xmm4 - xor esi,ebx - pslldq xmm10,12 - paddd xmm4,xmm4 - mov edi,edx - add ecx,DWORD PTR[8+rsp] - psrld xmm8,31 - xor ebp,eax - rol edx,5 - add ecx,esi - movdqa xmm9,xmm10 - and edi,ebp - xor ebp,eax - psrld xmm10,30 - add ecx,edx - ror edx,7 - por xmm4,xmm8 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[12+rsp] - pslld xmm9,2 - pxor xmm4,xmm10 - xor edx,ebp - movdqa xmm10,XMMWORD PTR[((-64))+r11] - rol ecx,5 - add ebx,edi - and esi,edx - pxor xmm4,xmm9 - xor edx,ebp - add ebx,ecx - ror ecx,7 - pshufd xmm5,xmm1,238 - xor esi,ebp - movdqa xmm9,xmm4 - paddd xmm10,xmm4 - mov edi,ebx - add eax,DWORD PTR[16+rsp] - punpcklqdq xmm5,xmm2 - xor ecx,edx - rol ebx,5 - add eax,esi - psrldq xmm9,4 - and edi,ecx - xor ecx,edx - pxor xmm5,xmm1 - add eax,ebx - ror ebx,7 - pxor xmm9,xmm3 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[20+rsp] - pxor xmm5,xmm9 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR[rsp],xmm10 - add ebp,edi - and esi,ebx - movdqa xmm8,xmm5 - xor ebx,ecx - add ebp,eax - ror eax,7 - movdqa xmm9,xmm5 - xor esi,ecx - pslldq xmm8,12 - paddd xmm5,xmm5 - mov edi,ebp - add edx,DWORD PTR[24+rsp] - psrld xmm9,31 - xor eax,ebx - rol ebp,5 - add edx,esi - movdqa xmm10,xmm8 - and edi,eax - xor eax,ebx - psrld xmm8,30 - add edx,ebp - ror ebp,7 - por xmm5,xmm9 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[28+rsp] - pslld xmm10,2 - pxor xmm5,xmm8 - xor ebp,eax - movdqa xmm8,XMMWORD PTR[((-32))+r11] - rol edx,5 - add ecx,edi - and esi,ebp - pxor xmm5,xmm10 - xor ebp,eax - add ecx,edx - ror edx,7 - pshufd xmm6,xmm2,238 - xor esi,eax - movdqa xmm10,xmm5 - paddd xmm8,xmm5 - mov edi,ecx - add ebx,DWORD PTR[32+rsp] - punpcklqdq xmm6,xmm3 - xor edx,ebp - rol ecx,5 - add ebx,esi - psrldq xmm10,4 - and edi,edx - xor edx,ebp - pxor xmm6,xmm2 - add ebx,ecx - ror ecx,7 - pxor xmm10,xmm4 - xor edi,ebp - mov esi,ebx - add eax,DWORD PTR[36+rsp] - pxor xmm6,xmm10 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR[16+rsp],xmm8 - add eax,edi - and esi,ecx - movdqa xmm9,xmm6 - xor ecx,edx - add eax,ebx - ror ebx,7 - movdqa xmm10,xmm6 - xor esi,edx - pslldq xmm9,12 - paddd xmm6,xmm6 - mov edi,eax - add ebp,DWORD PTR[40+rsp] - psrld xmm10,31 - xor ebx,ecx - rol eax,5 - add ebp,esi - movdqa xmm8,xmm9 - and edi,ebx - xor ebx,ecx - psrld xmm9,30 - add ebp,eax - ror eax,7 - por xmm6,xmm10 - xor edi,ecx - mov esi,ebp - add edx,DWORD PTR[44+rsp] - pslld xmm8,2 - pxor xmm6,xmm9 - xor eax,ebx - movdqa xmm9,XMMWORD PTR[((-32))+r11] - rol ebp,5 - add edx,edi - and esi,eax - pxor xmm6,xmm8 - xor eax,ebx - add edx,ebp - ror ebp,7 - pshufd xmm7,xmm3,238 - xor esi,ebx - movdqa xmm8,xmm6 - paddd xmm9,xmm6 - mov edi,edx - add ecx,DWORD PTR[48+rsp] - punpcklqdq xmm7,xmm4 - xor ebp,eax - rol edx,5 - add ecx,esi - psrldq xmm8,4 - and edi,ebp - xor ebp,eax - pxor xmm7,xmm3 - add ecx,edx - ror edx,7 - pxor xmm8,xmm5 - xor edi,eax - mov esi,ecx - add ebx,DWORD PTR[52+rsp] - pxor xmm7,xmm8 - xor edx,ebp - rol ecx,5 - movdqa XMMWORD PTR[32+rsp],xmm9 - add ebx,edi - and esi,edx - movdqa xmm10,xmm7 - xor edx,ebp - add ebx,ecx - ror ecx,7 - movdqa xmm8,xmm7 - xor esi,ebp - pslldq xmm10,12 - paddd xmm7,xmm7 - mov edi,ebx - add eax,DWORD PTR[56+rsp] - psrld xmm8,31 - xor ecx,edx - rol ebx,5 - add eax,esi - movdqa xmm9,xmm10 - and edi,ecx - xor ecx,edx - psrld xmm10,30 - add eax,ebx - ror ebx,7 - por xmm7,xmm8 - xor edi,edx - mov esi,eax - add ebp,DWORD PTR[60+rsp] - pslld xmm9,2 - pxor xmm7,xmm10 - xor ebx,ecx - movdqa xmm10,XMMWORD PTR[((-32))+r11] - rol eax,5 - add ebp,edi - and esi,ebx - pxor xmm7,xmm9 - pshufd xmm9,xmm6,238 - xor ebx,ecx - add ebp,eax - ror eax,7 - pxor xmm0,xmm4 - xor esi,ecx - mov edi,ebp - add edx,DWORD PTR[rsp] - punpcklqdq xmm9,xmm7 - xor eax,ebx - rol ebp,5 - pxor xmm0,xmm1 - add edx,esi - and edi,eax - movdqa xmm8,xmm10 - xor eax,ebx - paddd xmm10,xmm7 - add edx,ebp - pxor xmm0,xmm9 - ror ebp,7 - xor edi,ebx - mov esi,edx - add ecx,DWORD PTR[4+rsp] - movdqa xmm9,xmm0 - xor ebp,eax - rol edx,5 - movdqa XMMWORD PTR[48+rsp],xmm10 - add ecx,edi - and esi,ebp - xor ebp,eax - pslld xmm0,2 - add ecx,edx - ror edx,7 - psrld xmm9,30 - xor esi,eax - mov edi,ecx - add ebx,DWORD PTR[8+rsp] - por xmm0,xmm9 - xor edx,ebp - rol ecx,5 - pshufd xmm10,xmm7,238 - add ebx,esi - and edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[12+rsp] - xor edi,ebp - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - pxor xmm1,xmm5 - add ebp,DWORD PTR[16+rsp] - xor esi,ecx - punpcklqdq xmm10,xmm0 - mov edi,eax - rol eax,5 - pxor xmm1,xmm2 - add ebp,esi - xor edi,ecx - movdqa xmm9,xmm8 - ror ebx,7 - paddd xmm8,xmm0 - add ebp,eax - pxor xmm1,xmm10 - add edx,DWORD PTR[20+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm10,xmm1 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[rsp],xmm8 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[24+rsp] - pslld xmm1,2 - xor esi,eax - mov edi,edx - psrld xmm10,30 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - por xmm1,xmm10 - add ecx,edx - add ebx,DWORD PTR[28+rsp] - pshufd xmm8,xmm0,238 - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - pxor xmm2,xmm6 - add eax,DWORD PTR[32+rsp] - xor esi,edx - punpcklqdq xmm8,xmm1 - mov edi,ebx - rol ebx,5 - pxor xmm2,xmm3 - add eax,esi - xor edi,edx - movdqa xmm10,XMMWORD PTR[r11] - ror ecx,7 - paddd xmm9,xmm1 - add eax,ebx - pxor xmm2,xmm8 - add ebp,DWORD PTR[36+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - movdqa xmm8,xmm2 - add ebp,edi - xor esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm9 - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[40+rsp] - pslld xmm2,2 - xor esi,ebx - mov edi,ebp - psrld xmm8,30 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - por xmm2,xmm8 - add edx,ebp - add ecx,DWORD PTR[44+rsp] - pshufd xmm9,xmm1,238 - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - pxor xmm3,xmm7 - add ebx,DWORD PTR[48+rsp] - xor esi,ebp - punpcklqdq xmm9,xmm2 - mov edi,ecx - rol ecx,5 - pxor xmm3,xmm4 - add ebx,esi - xor edi,ebp - movdqa xmm8,xmm10 - ror edx,7 - paddd xmm10,xmm2 - add ebx,ecx - pxor xmm3,xmm9 - add eax,DWORD PTR[52+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - movdqa xmm9,xmm3 - add eax,edi - xor esi,edx - movdqa XMMWORD PTR[32+rsp],xmm10 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[56+rsp] - pslld xmm3,2 - xor esi,ecx - mov edi,eax - psrld xmm9,30 - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - por xmm3,xmm9 - add ebp,eax - add edx,DWORD PTR[60+rsp] - pshufd xmm10,xmm2,238 - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - pxor xmm4,xmm0 - add ecx,DWORD PTR[rsp] - xor esi,eax - punpcklqdq xmm10,xmm3 - mov edi,edx - rol edx,5 - pxor xmm4,xmm5 - add ecx,esi - xor edi,eax - movdqa xmm9,xmm8 - ror ebp,7 - paddd xmm8,xmm3 - add ecx,edx - pxor xmm4,xmm10 - add ebx,DWORD PTR[4+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - movdqa xmm10,xmm4 - add ebx,edi - xor esi,ebp - movdqa XMMWORD PTR[48+rsp],xmm8 - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[8+rsp] - pslld xmm4,2 - xor esi,edx - mov edi,ebx - psrld xmm10,30 - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - por xmm4,xmm10 - add eax,ebx - add ebp,DWORD PTR[12+rsp] - pshufd xmm8,xmm3,238 - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - pxor xmm5,xmm1 - add edx,DWORD PTR[16+rsp] - xor esi,ebx - punpcklqdq xmm8,xmm4 - mov edi,ebp - rol ebp,5 - pxor xmm5,xmm6 - add edx,esi - xor edi,ebx - movdqa xmm10,xmm9 - ror eax,7 - paddd xmm9,xmm4 - add edx,ebp - pxor xmm5,xmm8 - add ecx,DWORD PTR[20+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - movdqa xmm8,xmm5 - add ecx,edi - xor esi,eax - movdqa XMMWORD PTR[rsp],xmm9 - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[24+rsp] - pslld xmm5,2 - xor esi,ebp - mov edi,ecx - psrld xmm8,30 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - por xmm5,xmm8 - add ebx,ecx - add eax,DWORD PTR[28+rsp] - pshufd xmm9,xmm4,238 - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,ecx - xor ecx,edx - add eax,ebx - pxor xmm6,xmm2 - add ebp,DWORD PTR[32+rsp] - and esi,ecx - xor ecx,edx - ror ebx,7 - punpcklqdq xmm9,xmm5 - mov edi,eax - xor esi,ecx - pxor xmm6,xmm7 - rol eax,5 - add ebp,esi - movdqa xmm8,xmm10 - xor edi,ebx - paddd xmm10,xmm5 - xor ebx,ecx - pxor xmm6,xmm9 - add ebp,eax - add edx,DWORD PTR[36+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - movdqa xmm9,xmm6 - mov esi,ebp - xor edi,ebx - movdqa XMMWORD PTR[16+rsp],xmm10 - rol ebp,5 - add edx,edi - xor esi,eax - pslld xmm6,2 - xor eax,ebx - add edx,ebp - psrld xmm9,30 - add ecx,DWORD PTR[40+rsp] - and esi,eax - xor eax,ebx - por xmm6,xmm9 - ror ebp,7 - mov edi,edx - xor esi,eax - rol edx,5 - pshufd xmm10,xmm5,238 - add ecx,esi - xor edi,ebp - xor ebp,eax - add ecx,edx - add ebx,DWORD PTR[44+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - mov esi,ecx - xor edi,ebp - rol ecx,5 - add ebx,edi - xor esi,edx - xor edx,ebp - add ebx,ecx - pxor xmm7,xmm3 - add eax,DWORD PTR[48+rsp] - and esi,edx - xor edx,ebp - ror ecx,7 - punpcklqdq xmm10,xmm6 - mov edi,ebx - xor esi,edx - pxor xmm7,xmm0 - rol ebx,5 - add eax,esi - movdqa xmm9,XMMWORD PTR[32+r11] - xor edi,ecx - paddd xmm8,xmm6 - xor ecx,edx - pxor xmm7,xmm10 - add eax,ebx - add ebp,DWORD PTR[52+rsp] - and edi,ecx - xor ecx,edx - ror ebx,7 - movdqa xmm10,xmm7 - mov esi,eax - xor edi,ecx - movdqa XMMWORD PTR[32+rsp],xmm8 - rol eax,5 - add ebp,edi - xor esi,ebx - pslld xmm7,2 - xor ebx,ecx - add ebp,eax - psrld xmm10,30 - add edx,DWORD PTR[56+rsp] - and esi,ebx - xor ebx,ecx - por xmm7,xmm10 - ror eax,7 - mov edi,ebp - xor esi,ebx - rol ebp,5 - pshufd xmm8,xmm6,238 - add edx,esi - xor edi,eax - xor eax,ebx - add edx,ebp - add ecx,DWORD PTR[60+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - mov esi,edx - xor edi,eax - rol edx,5 - add ecx,edi - xor esi,ebp - xor ebp,eax - add ecx,edx - pxor xmm0,xmm4 - add ebx,DWORD PTR[rsp] - and esi,ebp - xor ebp,eax - ror edx,7 - punpcklqdq xmm8,xmm7 - mov edi,ecx - xor esi,ebp - pxor xmm0,xmm1 - rol ecx,5 - add ebx,esi - movdqa xmm10,xmm9 - xor edi,edx - paddd xmm9,xmm7 - xor edx,ebp - pxor xmm0,xmm8 - add ebx,ecx - add eax,DWORD PTR[4+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - movdqa xmm8,xmm0 - mov esi,ebx - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm9 - rol ebx,5 - add eax,edi - xor esi,ecx - pslld xmm0,2 - xor ecx,edx - add eax,ebx - psrld xmm8,30 - add ebp,DWORD PTR[8+rsp] - and esi,ecx - xor ecx,edx - por xmm0,xmm8 - ror ebx,7 - mov edi,eax - xor esi,ecx - rol eax,5 - pshufd xmm9,xmm7,238 - add ebp,esi - xor edi,ebx - xor ebx,ecx - add ebp,eax - add edx,DWORD PTR[12+rsp] - and edi,ebx - xor ebx,ecx - ror eax,7 - mov esi,ebp - xor edi,ebx - rol ebp,5 - add edx,edi - xor esi,eax - xor eax,ebx - add edx,ebp - pxor xmm1,xmm5 - add ecx,DWORD PTR[16+rsp] - and esi,eax - xor eax,ebx - ror ebp,7 - punpcklqdq xmm9,xmm0 - mov edi,edx - xor esi,eax - pxor xmm1,xmm2 - rol edx,5 - add ecx,esi - movdqa xmm8,xmm10 - xor edi,ebp - paddd xmm10,xmm0 - xor ebp,eax - pxor xmm1,xmm9 - add ecx,edx - add ebx,DWORD PTR[20+rsp] - and edi,ebp - xor ebp,eax - ror edx,7 - movdqa xmm9,xmm1 - mov esi,ecx - xor edi,ebp - movdqa XMMWORD PTR[rsp],xmm10 - rol ecx,5 - add ebx,edi - xor esi,edx - pslld xmm1,2 - xor edx,ebp - add ebx,ecx - psrld xmm9,30 - add eax,DWORD PTR[24+rsp] - and esi,edx - xor edx,ebp - por xmm1,xmm9 - ror ecx,7 - mov edi,ebx - xor esi,edx - rol ebx,5 - pshufd xmm10,xmm0,238 - add eax,esi - xor edi,ecx - xor ecx,edx - add eax,ebx - add ebp,DWORD PTR[28+rsp] - and edi,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor edi,ecx - rol eax,5 - add ebp,edi - xor esi,ebx - xor ebx,ecx - add ebp,eax - pxor xmm2,xmm6 - add edx,DWORD PTR[32+rsp] - and esi,ebx - xor ebx,ecx - ror eax,7 - punpcklqdq xmm10,xmm1 - mov edi,ebp - xor esi,ebx - pxor xmm2,xmm3 - rol ebp,5 - add edx,esi - movdqa xmm9,xmm8 - xor edi,eax - paddd xmm8,xmm1 - xor eax,ebx - pxor xmm2,xmm10 - add edx,ebp - add ecx,DWORD PTR[36+rsp] - and edi,eax - xor eax,ebx - ror ebp,7 - movdqa xmm10,xmm2 - mov esi,edx - xor edi,eax - movdqa XMMWORD PTR[16+rsp],xmm8 - rol edx,5 - add ecx,edi - xor esi,ebp - pslld xmm2,2 - xor ebp,eax - add ecx,edx - psrld xmm10,30 - add ebx,DWORD PTR[40+rsp] - and esi,ebp - xor ebp,eax - por xmm2,xmm10 - ror edx,7 - mov edi,ecx - xor esi,ebp - rol ecx,5 - pshufd xmm8,xmm1,238 - add ebx,esi - xor edi,edx - xor edx,ebp - add ebx,ecx - add eax,DWORD PTR[44+rsp] - and edi,edx - xor edx,ebp - ror ecx,7 - mov esi,ebx - xor edi,edx - rol ebx,5 - add eax,edi - xor esi,edx - add eax,ebx - pxor xmm3,xmm7 - add ebp,DWORD PTR[48+rsp] - xor esi,ecx - punpcklqdq xmm8,xmm2 - mov edi,eax - rol eax,5 - pxor xmm3,xmm4 - add ebp,esi - xor edi,ecx - movdqa xmm10,xmm9 - ror ebx,7 - paddd xmm9,xmm2 - add ebp,eax - pxor xmm3,xmm8 - add edx,DWORD PTR[52+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - movdqa xmm8,xmm3 - add edx,edi - xor esi,ebx - movdqa XMMWORD PTR[32+rsp],xmm9 - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[56+rsp] - pslld xmm3,2 - xor esi,eax - mov edi,edx - psrld xmm8,30 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - por xmm3,xmm8 - add ecx,edx - add ebx,DWORD PTR[60+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - paddd xmm10,xmm3 - add eax,esi - xor edi,edx - movdqa XMMWORD PTR[48+rsp],xmm10 - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[4+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[8+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[12+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - cmp r9,r10 - je $L$done_ssse3 - movdqa xmm6,XMMWORD PTR[64+r11] - movdqa xmm9,XMMWORD PTR[((-64))+r11] - movdqu xmm0,XMMWORD PTR[r9] - movdqu xmm1,XMMWORD PTR[16+r9] - movdqu xmm2,XMMWORD PTR[32+r9] - movdqu xmm3,XMMWORD PTR[48+r9] -DB 102,15,56,0,198 - add r9,64 - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx -DB 102,15,56,0,206 - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - paddd xmm0,xmm9 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - movdqa XMMWORD PTR[rsp],xmm0 - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - psubd xmm0,xmm9 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx -DB 102,15,56,0,214 - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - paddd xmm1,xmm9 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - movdqa XMMWORD PTR[16+rsp],xmm1 - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - psubd xmm1,xmm9 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp -DB 102,15,56,0,222 - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - paddd xmm2,xmm9 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - movdqa XMMWORD PTR[32+rsp],xmm2 - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - psubd xmm2,xmm9 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - add edx,DWORD PTR[12+r8] - mov DWORD PTR[r8],eax - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[4+r8],esi - mov ebx,esi - mov DWORD PTR[8+r8],ecx - mov edi,ecx - mov DWORD PTR[12+r8],edx - xor edi,edx - mov DWORD PTR[16+r8],ebp - and esi,edi - jmp $L$oop_ssse3 - -ALIGN 16 -$L$done_ssse3:: - add ebx,DWORD PTR[16+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[20+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - xor esi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[24+rsp] - xor esi,ecx - mov edi,eax - rol eax,5 - add ebp,esi - xor edi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[28+rsp] - xor edi,ebx - mov esi,ebp - rol ebp,5 - add edx,edi - xor esi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[32+rsp] - xor esi,eax - mov edi,edx - rol edx,5 - add ecx,esi - xor edi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[36+rsp] - xor edi,ebp - mov esi,ecx - rol ecx,5 - add ebx,edi - xor esi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[40+rsp] - xor esi,edx - mov edi,ebx - rol ebx,5 - add eax,esi - xor edi,edx - ror ecx,7 - add eax,ebx - add ebp,DWORD PTR[44+rsp] - xor edi,ecx - mov esi,eax - rol eax,5 - add ebp,edi - xor esi,ecx - ror ebx,7 - add ebp,eax - add edx,DWORD PTR[48+rsp] - xor esi,ebx - mov edi,ebp - rol ebp,5 - add edx,esi - xor edi,ebx - ror eax,7 - add edx,ebp - add ecx,DWORD PTR[52+rsp] - xor edi,eax - mov esi,edx - rol edx,5 - add ecx,edi - xor esi,eax - ror ebp,7 - add ecx,edx - add ebx,DWORD PTR[56+rsp] - xor esi,ebp - mov edi,ecx - rol ecx,5 - add ebx,esi - xor edi,ebp - ror edx,7 - add ebx,ecx - add eax,DWORD PTR[60+rsp] - xor edi,edx - mov esi,ebx - rol ebx,5 - add eax,edi - ror ecx,7 - add eax,ebx - add eax,DWORD PTR[r8] - add esi,DWORD PTR[4+r8] - add ecx,DWORD PTR[8+r8] - mov DWORD PTR[r8],eax - add edx,DWORD PTR[12+r8] - mov DWORD PTR[4+r8],esi - add ebp,DWORD PTR[16+r8] - mov DWORD PTR[8+r8],ecx - mov DWORD PTR[12+r8],edx - mov DWORD PTR[16+r8],ebp - movaps xmm6,XMMWORD PTR[((-40-96))+r14] - movaps xmm7,XMMWORD PTR[((-40-80))+r14] - movaps xmm8,XMMWORD PTR[((-40-64))+r14] - movaps xmm9,XMMWORD PTR[((-40-48))+r14] - movaps xmm10,XMMWORD PTR[((-40-32))+r14] - movaps xmm11,XMMWORD PTR[((-40-16))+r14] - lea rsi,QWORD PTR[r14] - mov r14,QWORD PTR[((-40))+rsi] - mov r13,QWORD PTR[((-32))+rsi] - mov r12,QWORD PTR[((-24))+rsi] - mov rbp,QWORD PTR[((-16))+rsi] - mov rbx,QWORD PTR[((-8))+rsi] - lea rsp,QWORD PTR[rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha1_block_data_order_ssse3:: -sha1_block_data_order_ssse3 ENDP -ALIGN 64 -K_XX_XX:: - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 05a827999h,05a827999h,05a827999h,05a827999h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 06ed9eba1h,06ed9eba1h,06ed9eba1h,06ed9eba1h - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 08f1bbcdch,08f1bbcdch,08f1bbcdch,08f1bbcdch - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 0ca62c1d6h,0ca62c1d6h,0ca62c1d6h,0ca62c1d6h - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -DB 0fh,0eh,0dh,0ch,0bh,0ah,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h -DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -DB 102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44 -DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60 -DB 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114 -DB 103,62,0 -ALIGN 64 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[64+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - - jmp $L$common_seh_tail -se_handler ENDP - -ALIGN 16 -shaext_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue_shaext] - cmp rbx,r10 - jb $L$common_seh_tail - - lea r10,QWORD PTR[$L$epilogue_shaext] - cmp rbx,r10 - jae $L$common_seh_tail - - lea rsi,QWORD PTR[((-8-64))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - - jmp $L$common_seh_tail -shaext_handler ENDP - -ALIGN 16 -ssse3_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$common_seh_tail - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$common_seh_tail - - mov rax,QWORD PTR[232+r8] - - lea rsi,QWORD PTR[((-40-96))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,12 - DD 0a548f3fch - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - -$L$common_seh_tail:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -ssse3_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha1_block_data_order - DD imagerel $L$SEH_end_sha1_block_data_order - DD imagerel $L$SEH_info_sha1_block_data_order - DD imagerel $L$SEH_begin_sha1_block_data_order_shaext - DD imagerel $L$SEH_end_sha1_block_data_order_shaext - DD imagerel $L$SEH_info_sha1_block_data_order_shaext - DD imagerel $L$SEH_begin_sha1_block_data_order_ssse3 - DD imagerel $L$SEH_end_sha1_block_data_order_ssse3 - DD imagerel $L$SEH_info_sha1_block_data_order_ssse3 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha1_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler -$L$SEH_info_sha1_block_data_order_shaext:: -DB 9,0,0,0 - DD imagerel shaext_handler -$L$SEH_info_sha1_block_data_order_ssse3:: -DB 9,0,0,0 - DD imagerel ssse3_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-mb-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-mb-x86_64.asm deleted file mode 100644 index 6e5f865bbed68b..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-mb-x86_64.asm +++ /dev/null @@ -1,3436 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR - -PUBLIC sha256_multi_block - -ALIGN 32 -sha256_multi_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - mov rcx,QWORD PTR[((OPENSSL_ia32cap_P+4))] - bt rcx,61 - jc _shaext_shortcut - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - and rsp,-256 - mov QWORD PTR[272+rsp],rax -$L$body:: - lea rbp,QWORD PTR[((K256+128))] - lea rbx,QWORD PTR[256+rsp] - lea rdi,QWORD PTR[128+rdi] - -$L$oop_grande:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rbp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rbp - mov r10,QWORD PTR[32+rsi] - mov ecx,DWORD PTR[40+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[8+rbx],ecx - cmovle r10,rbp - mov r11,QWORD PTR[48+rsi] - mov ecx,DWORD PTR[56+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[12+rbx],ecx - cmovle r11,rbp - test edx,edx - jz $L$done - - movdqu xmm8,XMMWORD PTR[((0-128))+rdi] - lea rax,QWORD PTR[128+rsp] - movdqu xmm9,XMMWORD PTR[((32-128))+rdi] - movdqu xmm10,XMMWORD PTR[((64-128))+rdi] - movdqu xmm11,XMMWORD PTR[((96-128))+rdi] - movdqu xmm12,XMMWORD PTR[((128-128))+rdi] - movdqu xmm13,XMMWORD PTR[((160-128))+rdi] - movdqu xmm14,XMMWORD PTR[((192-128))+rdi] - movdqu xmm15,XMMWORD PTR[((224-128))+rdi] - movdqu xmm6,XMMWORD PTR[$L$pbswap] - jmp $L$oop - -ALIGN 32 -$L$oop:: - movdqa xmm4,xmm10 - pxor xmm4,xmm9 - movd xmm5,DWORD PTR[r8] - movd xmm0,DWORD PTR[r9] - movd xmm1,DWORD PTR[r10] - movd xmm2,DWORD PTR[r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm12 -DB 102,15,56,0,238 - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(0-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movd xmm5,DWORD PTR[4+r8] - movd xmm0,DWORD PTR[4+r9] - movd xmm1,DWORD PTR[4+r10] - movd xmm2,DWORD PTR[4+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(16-128)+rax],xmm5 - paddd xmm5,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm5 - pxor xmm7,xmm2 - - paddd xmm14,xmm5 - paddd xmm14,xmm7 - movd xmm5,DWORD PTR[8+r8] - movd xmm0,DWORD PTR[8+r9] - movd xmm1,DWORD PTR[8+r10] - movd xmm2,DWORD PTR[8+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm10 -DB 102,15,56,0,238 - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(32-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movd xmm5,DWORD PTR[12+r8] - movd xmm0,DWORD PTR[12+r9] - movd xmm1,DWORD PTR[12+r10] - movd xmm2,DWORD PTR[12+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(48-128)+rax],xmm5 - paddd xmm5,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm5 - pxor xmm7,xmm2 - - paddd xmm12,xmm5 - paddd xmm12,xmm7 - movd xmm5,DWORD PTR[16+r8] - movd xmm0,DWORD PTR[16+r9] - movd xmm1,DWORD PTR[16+r10] - movd xmm2,DWORD PTR[16+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm8 -DB 102,15,56,0,238 - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(64-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movd xmm5,DWORD PTR[20+r8] - movd xmm0,DWORD PTR[20+r9] - movd xmm1,DWORD PTR[20+r10] - movd xmm2,DWORD PTR[20+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(80-128)+rax],xmm5 - paddd xmm5,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm5 - pxor xmm7,xmm2 - - paddd xmm10,xmm5 - paddd xmm10,xmm7 - movd xmm5,DWORD PTR[24+r8] - movd xmm0,DWORD PTR[24+r9] - movd xmm1,DWORD PTR[24+r10] - movd xmm2,DWORD PTR[24+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm14 -DB 102,15,56,0,238 - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(96-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movd xmm5,DWORD PTR[28+r8] - movd xmm0,DWORD PTR[28+r9] - movd xmm1,DWORD PTR[28+r10] - movd xmm2,DWORD PTR[28+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(112-128)+rax],xmm5 - paddd xmm5,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm5 - pxor xmm7,xmm2 - - paddd xmm8,xmm5 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movd xmm5,DWORD PTR[32+r8] - movd xmm0,DWORD PTR[32+r9] - movd xmm1,DWORD PTR[32+r10] - movd xmm2,DWORD PTR[32+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm12 -DB 102,15,56,0,238 - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(128-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movd xmm5,DWORD PTR[36+r8] - movd xmm0,DWORD PTR[36+r9] - movd xmm1,DWORD PTR[36+r10] - movd xmm2,DWORD PTR[36+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(144-128)+rax],xmm5 - paddd xmm5,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm5 - pxor xmm7,xmm2 - - paddd xmm14,xmm5 - paddd xmm14,xmm7 - movd xmm5,DWORD PTR[40+r8] - movd xmm0,DWORD PTR[40+r9] - movd xmm1,DWORD PTR[40+r10] - movd xmm2,DWORD PTR[40+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm10 -DB 102,15,56,0,238 - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(160-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movd xmm5,DWORD PTR[44+r8] - movd xmm0,DWORD PTR[44+r9] - movd xmm1,DWORD PTR[44+r10] - movd xmm2,DWORD PTR[44+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(176-128)+rax],xmm5 - paddd xmm5,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm5 - pxor xmm7,xmm2 - - paddd xmm12,xmm5 - paddd xmm12,xmm7 - movd xmm5,DWORD PTR[48+r8] - movd xmm0,DWORD PTR[48+r9] - movd xmm1,DWORD PTR[48+r10] - movd xmm2,DWORD PTR[48+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm8 -DB 102,15,56,0,238 - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(192-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movd xmm5,DWORD PTR[52+r8] - movd xmm0,DWORD PTR[52+r9] - movd xmm1,DWORD PTR[52+r10] - movd xmm2,DWORD PTR[52+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(208-128)+rax],xmm5 - paddd xmm5,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm5 - pxor xmm7,xmm2 - - paddd xmm10,xmm5 - paddd xmm10,xmm7 - movd xmm5,DWORD PTR[56+r8] - movd xmm0,DWORD PTR[56+r9] - movd xmm1,DWORD PTR[56+r10] - movd xmm2,DWORD PTR[56+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm14 -DB 102,15,56,0,238 - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(224-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movd xmm5,DWORD PTR[60+r8] - lea r8,QWORD PTR[64+r8] - movd xmm0,DWORD PTR[60+r9] - lea r9,QWORD PTR[64+r9] - movd xmm1,DWORD PTR[60+r10] - lea r10,QWORD PTR[64+r10] - movd xmm2,DWORD PTR[60+r11] - lea r11,QWORD PTR[64+r11] - punpckldq xmm5,xmm1 - punpckldq xmm0,xmm2 - punpckldq xmm5,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 -DB 102,15,56,0,238 - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(240-128)+rax],xmm5 - paddd xmm5,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - prefetcht0 [63+r8] - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - prefetcht0 [63+r9] - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - prefetcht0 [63+r10] - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - prefetcht0 [63+r11] - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm5 - pxor xmm7,xmm2 - - paddd xmm8,xmm5 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movdqu xmm5,XMMWORD PTR[((0-128))+rax] - mov ecx,3 - jmp $L$oop_16_xx -ALIGN 32 -$L$oop_16_xx:: - movdqa xmm6,XMMWORD PTR[((16-128))+rax] - paddd xmm5,XMMWORD PTR[((144-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((224-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm12 - - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(0-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movdqa xmm5,XMMWORD PTR[((32-128))+rax] - paddd xmm6,XMMWORD PTR[((160-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((240-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 - - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(16-128)+rax],xmm6 - paddd xmm6,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm6 - pxor xmm7,xmm2 - - paddd xmm14,xmm6 - paddd xmm14,xmm7 - movdqa xmm6,XMMWORD PTR[((48-128))+rax] - paddd xmm5,XMMWORD PTR[((176-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((0-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm10 - - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(32-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movdqa xmm5,XMMWORD PTR[((64-128))+rax] - paddd xmm6,XMMWORD PTR[((192-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((16-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 - - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(48-128)+rax],xmm6 - paddd xmm6,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm6 - pxor xmm7,xmm2 - - paddd xmm12,xmm6 - paddd xmm12,xmm7 - movdqa xmm6,XMMWORD PTR[((80-128))+rax] - paddd xmm5,XMMWORD PTR[((208-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((32-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm8 - - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(64-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movdqa xmm5,XMMWORD PTR[((96-128))+rax] - paddd xmm6,XMMWORD PTR[((224-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((48-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 - - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(80-128)+rax],xmm6 - paddd xmm6,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm6 - pxor xmm7,xmm2 - - paddd xmm10,xmm6 - paddd xmm10,xmm7 - movdqa xmm6,XMMWORD PTR[((112-128))+rax] - paddd xmm5,XMMWORD PTR[((240-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((64-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm14 - - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(96-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movdqa xmm5,XMMWORD PTR[((128-128))+rax] - paddd xmm6,XMMWORD PTR[((0-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((80-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 - - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(112-128)+rax],xmm6 - paddd xmm6,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm6 - pxor xmm7,xmm2 - - paddd xmm8,xmm6 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - movdqa xmm6,XMMWORD PTR[((144-128))+rax] - paddd xmm5,XMMWORD PTR[((16-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((96-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm12 - - movdqa xmm2,xmm12 - - psrld xmm7,6 - movdqa xmm1,xmm12 - pslld xmm2,7 - movdqa XMMWORD PTR[(128-128)+rax],xmm5 - paddd xmm5,xmm15 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-128))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm12 - - pxor xmm7,xmm2 - movdqa xmm3,xmm12 - pslld xmm2,26-21 - pandn xmm0,xmm14 - pand xmm3,xmm13 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm8 - pxor xmm7,xmm2 - movdqa xmm2,xmm8 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm9 - movdqa xmm7,xmm8 - pslld xmm2,10 - pxor xmm3,xmm8 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm15,xmm9 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm15,xmm4 - paddd xmm11,xmm5 - pxor xmm7,xmm2 - - paddd xmm15,xmm5 - paddd xmm15,xmm7 - movdqa xmm5,XMMWORD PTR[((160-128))+rax] - paddd xmm6,XMMWORD PTR[((32-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((112-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm11 - - movdqa xmm2,xmm11 - - psrld xmm7,6 - movdqa xmm1,xmm11 - pslld xmm2,7 - movdqa XMMWORD PTR[(144-128)+rax],xmm6 - paddd xmm6,xmm14 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-96))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm11 - - pxor xmm7,xmm2 - movdqa xmm4,xmm11 - pslld xmm2,26-21 - pandn xmm0,xmm13 - pand xmm4,xmm12 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm15 - pxor xmm7,xmm2 - movdqa xmm2,xmm15 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm8 - movdqa xmm7,xmm15 - pslld xmm2,10 - pxor xmm4,xmm15 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm14,xmm8 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm14,xmm3 - paddd xmm10,xmm6 - pxor xmm7,xmm2 - - paddd xmm14,xmm6 - paddd xmm14,xmm7 - movdqa xmm6,XMMWORD PTR[((176-128))+rax] - paddd xmm5,XMMWORD PTR[((48-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((128-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm10 - - movdqa xmm2,xmm10 - - psrld xmm7,6 - movdqa xmm1,xmm10 - pslld xmm2,7 - movdqa XMMWORD PTR[(160-128)+rax],xmm5 - paddd xmm5,xmm13 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[((-64))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm10 - - pxor xmm7,xmm2 - movdqa xmm3,xmm10 - pslld xmm2,26-21 - pandn xmm0,xmm12 - pand xmm3,xmm11 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm14 - pxor xmm7,xmm2 - movdqa xmm2,xmm14 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm15 - movdqa xmm7,xmm14 - pslld xmm2,10 - pxor xmm3,xmm14 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm13,xmm15 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm13,xmm4 - paddd xmm9,xmm5 - pxor xmm7,xmm2 - - paddd xmm13,xmm5 - paddd xmm13,xmm7 - movdqa xmm5,XMMWORD PTR[((192-128))+rax] - paddd xmm6,XMMWORD PTR[((64-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((144-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm9 - - movdqa xmm2,xmm9 - - psrld xmm7,6 - movdqa xmm1,xmm9 - pslld xmm2,7 - movdqa XMMWORD PTR[(176-128)+rax],xmm6 - paddd xmm6,xmm12 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[((-32))+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm9 - - pxor xmm7,xmm2 - movdqa xmm4,xmm9 - pslld xmm2,26-21 - pandn xmm0,xmm11 - pand xmm4,xmm10 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm13 - pxor xmm7,xmm2 - movdqa xmm2,xmm13 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm14 - movdqa xmm7,xmm13 - pslld xmm2,10 - pxor xmm4,xmm13 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm12,xmm14 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm12,xmm3 - paddd xmm8,xmm6 - pxor xmm7,xmm2 - - paddd xmm12,xmm6 - paddd xmm12,xmm7 - movdqa xmm6,XMMWORD PTR[((208-128))+rax] - paddd xmm5,XMMWORD PTR[((80-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((160-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm8 - - movdqa xmm2,xmm8 - - psrld xmm7,6 - movdqa xmm1,xmm8 - pslld xmm2,7 - movdqa XMMWORD PTR[(192-128)+rax],xmm5 - paddd xmm5,xmm11 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm8 - - pxor xmm7,xmm2 - movdqa xmm3,xmm8 - pslld xmm2,26-21 - pandn xmm0,xmm10 - pand xmm3,xmm9 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm12 - pxor xmm7,xmm2 - movdqa xmm2,xmm12 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm13 - movdqa xmm7,xmm12 - pslld xmm2,10 - pxor xmm3,xmm12 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm11,xmm13 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm11,xmm4 - paddd xmm15,xmm5 - pxor xmm7,xmm2 - - paddd xmm11,xmm5 - paddd xmm11,xmm7 - movdqa xmm5,XMMWORD PTR[((224-128))+rax] - paddd xmm6,XMMWORD PTR[((96-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((176-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm15 - - movdqa xmm2,xmm15 - - psrld xmm7,6 - movdqa xmm1,xmm15 - pslld xmm2,7 - movdqa XMMWORD PTR[(208-128)+rax],xmm6 - paddd xmm6,xmm10 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[32+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm15 - - pxor xmm7,xmm2 - movdqa xmm4,xmm15 - pslld xmm2,26-21 - pandn xmm0,xmm9 - pand xmm4,xmm8 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm11 - pxor xmm7,xmm2 - movdqa xmm2,xmm11 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm12 - movdqa xmm7,xmm11 - pslld xmm2,10 - pxor xmm4,xmm11 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm10,xmm12 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm10,xmm3 - paddd xmm14,xmm6 - pxor xmm7,xmm2 - - paddd xmm10,xmm6 - paddd xmm10,xmm7 - movdqa xmm6,XMMWORD PTR[((240-128))+rax] - paddd xmm5,XMMWORD PTR[((112-128))+rax] - - movdqa xmm7,xmm6 - movdqa xmm1,xmm6 - psrld xmm7,3 - movdqa xmm2,xmm6 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((192-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm3,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm3 - - psrld xmm3,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - psrld xmm3,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm3 - pxor xmm0,xmm1 - paddd xmm5,xmm0 - movdqa xmm7,xmm14 - - movdqa xmm2,xmm14 - - psrld xmm7,6 - movdqa xmm1,xmm14 - pslld xmm2,7 - movdqa XMMWORD PTR[(224-128)+rax],xmm5 - paddd xmm5,xmm9 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm5,XMMWORD PTR[64+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm14 - - pxor xmm7,xmm2 - movdqa xmm3,xmm14 - pslld xmm2,26-21 - pandn xmm0,xmm8 - pand xmm3,xmm15 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm10 - pxor xmm7,xmm2 - movdqa xmm2,xmm10 - psrld xmm1,2 - paddd xmm5,xmm7 - pxor xmm0,xmm3 - movdqa xmm3,xmm11 - movdqa xmm7,xmm10 - pslld xmm2,10 - pxor xmm3,xmm10 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm5,xmm0 - pslld xmm2,19-10 - pand xmm4,xmm3 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm9,xmm11 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm9,xmm4 - paddd xmm13,xmm5 - pxor xmm7,xmm2 - - paddd xmm9,xmm5 - paddd xmm9,xmm7 - movdqa xmm5,XMMWORD PTR[((0-128))+rax] - paddd xmm6,XMMWORD PTR[((128-128))+rax] - - movdqa xmm7,xmm5 - movdqa xmm1,xmm5 - psrld xmm7,3 - movdqa xmm2,xmm5 - - psrld xmm1,7 - movdqa xmm0,XMMWORD PTR[((208-128))+rax] - pslld xmm2,14 - pxor xmm7,xmm1 - psrld xmm1,18-7 - movdqa xmm4,xmm0 - pxor xmm7,xmm2 - pslld xmm2,25-14 - pxor xmm7,xmm1 - psrld xmm0,10 - movdqa xmm1,xmm4 - - psrld xmm4,17 - pxor xmm7,xmm2 - pslld xmm1,13 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - psrld xmm4,19-17 - pxor xmm0,xmm1 - pslld xmm1,15-13 - pxor xmm0,xmm4 - pxor xmm0,xmm1 - paddd xmm6,xmm0 - movdqa xmm7,xmm13 - - movdqa xmm2,xmm13 - - psrld xmm7,6 - movdqa xmm1,xmm13 - pslld xmm2,7 - movdqa XMMWORD PTR[(240-128)+rax],xmm6 - paddd xmm6,xmm8 - - psrld xmm1,11 - pxor xmm7,xmm2 - pslld xmm2,21-7 - paddd xmm6,XMMWORD PTR[96+rbp] - pxor xmm7,xmm1 - - psrld xmm1,25-11 - movdqa xmm0,xmm13 - - pxor xmm7,xmm2 - movdqa xmm4,xmm13 - pslld xmm2,26-21 - pandn xmm0,xmm15 - pand xmm4,xmm14 - pxor xmm7,xmm1 - - - movdqa xmm1,xmm9 - pxor xmm7,xmm2 - movdqa xmm2,xmm9 - psrld xmm1,2 - paddd xmm6,xmm7 - pxor xmm0,xmm4 - movdqa xmm4,xmm10 - movdqa xmm7,xmm9 - pslld xmm2,10 - pxor xmm4,xmm9 - - - psrld xmm7,13 - pxor xmm1,xmm2 - paddd xmm6,xmm0 - pslld xmm2,19-10 - pand xmm3,xmm4 - pxor xmm1,xmm7 - - - psrld xmm7,22-13 - pxor xmm1,xmm2 - movdqa xmm8,xmm10 - pslld xmm2,30-19 - pxor xmm7,xmm1 - pxor xmm8,xmm3 - paddd xmm12,xmm6 - pxor xmm7,xmm2 - - paddd xmm8,xmm6 - paddd xmm8,xmm7 - lea rbp,QWORD PTR[256+rbp] - dec ecx - jnz $L$oop_16_xx - - mov ecx,1 - lea rbp,QWORD PTR[((K256+128))] - - movdqa xmm7,XMMWORD PTR[rbx] - cmp ecx,DWORD PTR[rbx] - pxor xmm0,xmm0 - cmovge r8,rbp - cmp ecx,DWORD PTR[4+rbx] - movdqa xmm6,xmm7 - cmovge r9,rbp - cmp ecx,DWORD PTR[8+rbx] - pcmpgtd xmm6,xmm0 - cmovge r10,rbp - cmp ecx,DWORD PTR[12+rbx] - paddd xmm7,xmm6 - cmovge r11,rbp - - movdqu xmm0,XMMWORD PTR[((0-128))+rdi] - pand xmm8,xmm6 - movdqu xmm1,XMMWORD PTR[((32-128))+rdi] - pand xmm9,xmm6 - movdqu xmm2,XMMWORD PTR[((64-128))+rdi] - pand xmm10,xmm6 - movdqu xmm5,XMMWORD PTR[((96-128))+rdi] - pand xmm11,xmm6 - paddd xmm8,xmm0 - movdqu xmm0,XMMWORD PTR[((128-128))+rdi] - pand xmm12,xmm6 - paddd xmm9,xmm1 - movdqu xmm1,XMMWORD PTR[((160-128))+rdi] - pand xmm13,xmm6 - paddd xmm10,xmm2 - movdqu xmm2,XMMWORD PTR[((192-128))+rdi] - pand xmm14,xmm6 - paddd xmm11,xmm5 - movdqu xmm5,XMMWORD PTR[((224-128))+rdi] - pand xmm15,xmm6 - paddd xmm12,xmm0 - paddd xmm13,xmm1 - movdqu XMMWORD PTR[(0-128)+rdi],xmm8 - paddd xmm14,xmm2 - movdqu XMMWORD PTR[(32-128)+rdi],xmm9 - paddd xmm15,xmm5 - movdqu XMMWORD PTR[(64-128)+rdi],xmm10 - movdqu XMMWORD PTR[(96-128)+rdi],xmm11 - movdqu XMMWORD PTR[(128-128)+rdi],xmm12 - movdqu XMMWORD PTR[(160-128)+rdi],xmm13 - movdqu XMMWORD PTR[(192-128)+rdi],xmm14 - movdqu XMMWORD PTR[(224-128)+rdi],xmm15 - - movdqa XMMWORD PTR[rbx],xmm7 - movdqa xmm6,XMMWORD PTR[$L$pbswap] - dec edx - jnz $L$oop - - mov edx,DWORD PTR[280+rsp] - lea rdi,QWORD PTR[16+rdi] - lea rsi,QWORD PTR[64+rsi] - dec edx - jnz $L$oop_grande - -$L$done:: - mov rax,QWORD PTR[272+rsp] - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block:: -sha256_multi_block ENDP - -ALIGN 32 -sha256_multi_block_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_multi_block_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - mov rax,rsp - push rbx - push rbp - lea rsp,QWORD PTR[((-168))+rsp] - movaps XMMWORD PTR[rsp],xmm6 - movaps XMMWORD PTR[16+rsp],xmm7 - movaps XMMWORD PTR[32+rsp],xmm8 - movaps XMMWORD PTR[48+rsp],xmm9 - movaps XMMWORD PTR[(-120)+rax],xmm10 - movaps XMMWORD PTR[(-104)+rax],xmm11 - movaps XMMWORD PTR[(-88)+rax],xmm12 - movaps XMMWORD PTR[(-72)+rax],xmm13 - movaps XMMWORD PTR[(-56)+rax],xmm14 - movaps XMMWORD PTR[(-40)+rax],xmm15 - sub rsp,288 - shl edx,1 - and rsp,-256 - lea rdi,QWORD PTR[128+rdi] - mov QWORD PTR[272+rsp],rax -$L$body_shaext:: - lea rbx,QWORD PTR[256+rsp] - lea rbp,QWORD PTR[((K256_shaext+128))] - -$L$oop_grande_shaext:: - mov DWORD PTR[280+rsp],edx - xor edx,edx - mov r8,QWORD PTR[rsi] - mov ecx,DWORD PTR[8+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[rbx],ecx - cmovle r8,rsp - mov r9,QWORD PTR[16+rsi] - mov ecx,DWORD PTR[24+rsi] - cmp ecx,edx - cmovg edx,ecx - test ecx,ecx - mov DWORD PTR[4+rbx],ecx - cmovle r9,rsp - test edx,edx - jz $L$done_shaext - - movq xmm12,QWORD PTR[((0-128))+rdi] - movq xmm4,QWORD PTR[((32-128))+rdi] - movq xmm13,QWORD PTR[((64-128))+rdi] - movq xmm5,QWORD PTR[((96-128))+rdi] - movq xmm8,QWORD PTR[((128-128))+rdi] - movq xmm9,QWORD PTR[((160-128))+rdi] - movq xmm10,QWORD PTR[((192-128))+rdi] - movq xmm11,QWORD PTR[((224-128))+rdi] - - punpckldq xmm12,xmm4 - punpckldq xmm13,xmm5 - punpckldq xmm8,xmm9 - punpckldq xmm10,xmm11 - movdqa xmm3,XMMWORD PTR[((K256_shaext-16))] - - movdqa xmm14,xmm12 - movdqa xmm15,xmm13 - punpcklqdq xmm12,xmm8 - punpcklqdq xmm13,xmm10 - punpckhqdq xmm14,xmm8 - punpckhqdq xmm15,xmm10 - - pshufd xmm12,xmm12,27 - pshufd xmm13,xmm13,27 - pshufd xmm14,xmm14,27 - pshufd xmm15,xmm15,27 - jmp $L$oop_shaext - -ALIGN 32 -$L$oop_shaext:: - movdqu xmm4,XMMWORD PTR[r8] - movdqu xmm8,XMMWORD PTR[r9] - movdqu xmm5,XMMWORD PTR[16+r8] - movdqu xmm9,XMMWORD PTR[16+r9] - movdqu xmm6,XMMWORD PTR[32+r8] -DB 102,15,56,0,227 - movdqu xmm10,XMMWORD PTR[32+r9] -DB 102,68,15,56,0,195 - movdqu xmm7,XMMWORD PTR[48+r8] - lea r8,QWORD PTR[64+r8] - movdqu xmm11,XMMWORD PTR[48+r9] - lea r9,QWORD PTR[64+r9] - - movdqa xmm0,XMMWORD PTR[((0-128))+rbp] -DB 102,15,56,0,235 - paddd xmm0,xmm4 - pxor xmm4,xmm12 - movdqa xmm1,xmm0 - movdqa xmm2,XMMWORD PTR[((0-128))+rbp] -DB 102,68,15,56,0,203 - paddd xmm2,xmm8 - movdqa XMMWORD PTR[80+rsp],xmm13 -DB 69,15,56,203,236 - pxor xmm8,xmm14 - movdqa xmm0,xmm2 - movdqa XMMWORD PTR[112+rsp],xmm15 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh - pxor xmm4,xmm12 - movdqa XMMWORD PTR[64+rsp],xmm12 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - pxor xmm8,xmm14 - movdqa XMMWORD PTR[96+rsp],xmm14 - movdqa xmm1,XMMWORD PTR[((16-128))+rbp] - paddd xmm1,xmm5 -DB 102,15,56,0,243 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((16-128))+rbp] - paddd xmm2,xmm9 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - prefetcht0 [127+r8] -DB 102,15,56,0,251 -DB 102,68,15,56,0,211 - prefetcht0 [127+r9] -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh -DB 102,68,15,56,0,219 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((32-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((32-128))+rbp] - paddd xmm2,xmm10 -DB 69,15,56,203,236 -DB 69,15,56,204,193 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh -DB 102,15,58,15,222,4 - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((48-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((48-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((64-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((64-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((80-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((80-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((96-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 -DB 69,15,56,204,193 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((96-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 102,15,58,15,222,4 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((112-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((112-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((128-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((128-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((144-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((144-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 -DB 15,56,204,229 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((160-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 -DB 69,15,56,204,193 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((160-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm7 -DB 102,15,58,15,222,4 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - paddd xmm4,xmm3 - movdqa xmm3,xmm11 -DB 102,65,15,58,15,218,4 -DB 15,56,204,238 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((176-128))+rbp] - paddd xmm1,xmm7 -DB 69,15,56,203,247 -DB 69,15,56,204,202 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((176-128))+rbp] - paddd xmm8,xmm3 - paddd xmm2,xmm11 -DB 15,56,205,231 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm4 -DB 102,15,58,15,223,4 -DB 69,15,56,203,254 -DB 69,15,56,205,195 - pshufd xmm0,xmm1,00eh - paddd xmm5,xmm3 - movdqa xmm3,xmm8 -DB 102,65,15,58,15,219,4 -DB 15,56,204,247 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((192-128))+rbp] - paddd xmm1,xmm4 -DB 69,15,56,203,247 -DB 69,15,56,204,211 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((192-128))+rbp] - paddd xmm9,xmm3 - paddd xmm2,xmm8 -DB 15,56,205,236 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm5 -DB 102,15,58,15,220,4 -DB 69,15,56,203,254 -DB 69,15,56,205,200 - pshufd xmm0,xmm1,00eh - paddd xmm6,xmm3 - movdqa xmm3,xmm9 -DB 102,65,15,58,15,216,4 -DB 15,56,204,252 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((208-128))+rbp] - paddd xmm1,xmm5 -DB 69,15,56,203,247 -DB 69,15,56,204,216 - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((208-128))+rbp] - paddd xmm10,xmm3 - paddd xmm2,xmm9 -DB 15,56,205,245 -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - movdqa xmm3,xmm6 -DB 102,15,58,15,221,4 -DB 69,15,56,203,254 -DB 69,15,56,205,209 - pshufd xmm0,xmm1,00eh - paddd xmm7,xmm3 - movdqa xmm3,xmm10 -DB 102,65,15,58,15,217,4 - nop -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm1,XMMWORD PTR[((224-128))+rbp] - paddd xmm1,xmm6 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - movdqa xmm2,XMMWORD PTR[((224-128))+rbp] - paddd xmm11,xmm3 - paddd xmm2,xmm10 -DB 15,56,205,254 - nop -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - mov ecx,1 - pxor xmm6,xmm6 -DB 69,15,56,203,254 -DB 69,15,56,205,218 - pshufd xmm0,xmm1,00eh - movdqa xmm1,XMMWORD PTR[((240-128))+rbp] - paddd xmm1,xmm7 - movq xmm7,QWORD PTR[rbx] - nop -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - movdqa xmm2,XMMWORD PTR[((240-128))+rbp] - paddd xmm2,xmm11 -DB 69,15,56,203,247 - - movdqa xmm0,xmm1 - cmp ecx,DWORD PTR[rbx] - cmovge r8,rsp - cmp ecx,DWORD PTR[4+rbx] - cmovge r9,rsp - pshufd xmm9,xmm7,000h -DB 69,15,56,203,236 - movdqa xmm0,xmm2 - pshufd xmm10,xmm7,055h - movdqa xmm11,xmm7 -DB 69,15,56,203,254 - pshufd xmm0,xmm1,00eh - pcmpgtd xmm9,xmm6 - pcmpgtd xmm10,xmm6 -DB 69,15,56,203,229 - pshufd xmm0,xmm2,00eh - pcmpgtd xmm11,xmm6 - movdqa xmm3,XMMWORD PTR[((K256_shaext-16))] -DB 69,15,56,203,247 - - pand xmm13,xmm9 - pand xmm15,xmm10 - pand xmm12,xmm9 - pand xmm14,xmm10 - paddd xmm11,xmm7 - - paddd xmm13,XMMWORD PTR[80+rsp] - paddd xmm15,XMMWORD PTR[112+rsp] - paddd xmm12,XMMWORD PTR[64+rsp] - paddd xmm14,XMMWORD PTR[96+rsp] - - movq QWORD PTR[rbx],xmm11 - dec edx - jnz $L$oop_shaext - - mov edx,DWORD PTR[280+rsp] - - pshufd xmm12,xmm12,27 - pshufd xmm13,xmm13,27 - pshufd xmm14,xmm14,27 - pshufd xmm15,xmm15,27 - - movdqa xmm5,xmm12 - movdqa xmm6,xmm13 - punpckldq xmm12,xmm14 - punpckhdq xmm5,xmm14 - punpckldq xmm13,xmm15 - punpckhdq xmm6,xmm15 - - movq QWORD PTR[(0-128)+rdi],xmm12 - psrldq xmm12,8 - movq QWORD PTR[(128-128)+rdi],xmm5 - psrldq xmm5,8 - movq QWORD PTR[(32-128)+rdi],xmm12 - movq QWORD PTR[(160-128)+rdi],xmm5 - - movq QWORD PTR[(64-128)+rdi],xmm13 - psrldq xmm13,8 - movq QWORD PTR[(192-128)+rdi],xmm6 - psrldq xmm6,8 - movq QWORD PTR[(96-128)+rdi],xmm13 - movq QWORD PTR[(224-128)+rdi],xmm6 - - lea rdi,QWORD PTR[8+rdi] - lea rsi,QWORD PTR[32+rsi] - dec edx - jnz $L$oop_grande_shaext - -$L$done_shaext:: - - movaps xmm6,XMMWORD PTR[((-184))+rax] - movaps xmm7,XMMWORD PTR[((-168))+rax] - movaps xmm8,XMMWORD PTR[((-152))+rax] - movaps xmm9,XMMWORD PTR[((-136))+rax] - movaps xmm10,XMMWORD PTR[((-120))+rax] - movaps xmm11,XMMWORD PTR[((-104))+rax] - movaps xmm12,XMMWORD PTR[((-88))+rax] - movaps xmm13,XMMWORD PTR[((-72))+rax] - movaps xmm14,XMMWORD PTR[((-56))+rax] - movaps xmm15,XMMWORD PTR[((-40))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov rbx,QWORD PTR[((-8))+rax] - lea rsp,QWORD PTR[rax] -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_multi_block_shaext:: -sha256_multi_block_shaext ENDP -ALIGN 256 -K256:: - DD 1116352408,1116352408,1116352408,1116352408 - DD 1116352408,1116352408,1116352408,1116352408 - DD 1899447441,1899447441,1899447441,1899447441 - DD 1899447441,1899447441,1899447441,1899447441 - DD 3049323471,3049323471,3049323471,3049323471 - DD 3049323471,3049323471,3049323471,3049323471 - DD 3921009573,3921009573,3921009573,3921009573 - DD 3921009573,3921009573,3921009573,3921009573 - DD 961987163,961987163,961987163,961987163 - DD 961987163,961987163,961987163,961987163 - DD 1508970993,1508970993,1508970993,1508970993 - DD 1508970993,1508970993,1508970993,1508970993 - DD 2453635748,2453635748,2453635748,2453635748 - DD 2453635748,2453635748,2453635748,2453635748 - DD 2870763221,2870763221,2870763221,2870763221 - DD 2870763221,2870763221,2870763221,2870763221 - DD 3624381080,3624381080,3624381080,3624381080 - DD 3624381080,3624381080,3624381080,3624381080 - DD 310598401,310598401,310598401,310598401 - DD 310598401,310598401,310598401,310598401 - DD 607225278,607225278,607225278,607225278 - DD 607225278,607225278,607225278,607225278 - DD 1426881987,1426881987,1426881987,1426881987 - DD 1426881987,1426881987,1426881987,1426881987 - DD 1925078388,1925078388,1925078388,1925078388 - DD 1925078388,1925078388,1925078388,1925078388 - DD 2162078206,2162078206,2162078206,2162078206 - DD 2162078206,2162078206,2162078206,2162078206 - DD 2614888103,2614888103,2614888103,2614888103 - DD 2614888103,2614888103,2614888103,2614888103 - DD 3248222580,3248222580,3248222580,3248222580 - DD 3248222580,3248222580,3248222580,3248222580 - DD 3835390401,3835390401,3835390401,3835390401 - DD 3835390401,3835390401,3835390401,3835390401 - DD 4022224774,4022224774,4022224774,4022224774 - DD 4022224774,4022224774,4022224774,4022224774 - DD 264347078,264347078,264347078,264347078 - DD 264347078,264347078,264347078,264347078 - DD 604807628,604807628,604807628,604807628 - DD 604807628,604807628,604807628,604807628 - DD 770255983,770255983,770255983,770255983 - DD 770255983,770255983,770255983,770255983 - DD 1249150122,1249150122,1249150122,1249150122 - DD 1249150122,1249150122,1249150122,1249150122 - DD 1555081692,1555081692,1555081692,1555081692 - DD 1555081692,1555081692,1555081692,1555081692 - DD 1996064986,1996064986,1996064986,1996064986 - DD 1996064986,1996064986,1996064986,1996064986 - DD 2554220882,2554220882,2554220882,2554220882 - DD 2554220882,2554220882,2554220882,2554220882 - DD 2821834349,2821834349,2821834349,2821834349 - DD 2821834349,2821834349,2821834349,2821834349 - DD 2952996808,2952996808,2952996808,2952996808 - DD 2952996808,2952996808,2952996808,2952996808 - DD 3210313671,3210313671,3210313671,3210313671 - DD 3210313671,3210313671,3210313671,3210313671 - DD 3336571891,3336571891,3336571891,3336571891 - DD 3336571891,3336571891,3336571891,3336571891 - DD 3584528711,3584528711,3584528711,3584528711 - DD 3584528711,3584528711,3584528711,3584528711 - DD 113926993,113926993,113926993,113926993 - DD 113926993,113926993,113926993,113926993 - DD 338241895,338241895,338241895,338241895 - DD 338241895,338241895,338241895,338241895 - DD 666307205,666307205,666307205,666307205 - DD 666307205,666307205,666307205,666307205 - DD 773529912,773529912,773529912,773529912 - DD 773529912,773529912,773529912,773529912 - DD 1294757372,1294757372,1294757372,1294757372 - DD 1294757372,1294757372,1294757372,1294757372 - DD 1396182291,1396182291,1396182291,1396182291 - DD 1396182291,1396182291,1396182291,1396182291 - DD 1695183700,1695183700,1695183700,1695183700 - DD 1695183700,1695183700,1695183700,1695183700 - DD 1986661051,1986661051,1986661051,1986661051 - DD 1986661051,1986661051,1986661051,1986661051 - DD 2177026350,2177026350,2177026350,2177026350 - DD 2177026350,2177026350,2177026350,2177026350 - DD 2456956037,2456956037,2456956037,2456956037 - DD 2456956037,2456956037,2456956037,2456956037 - DD 2730485921,2730485921,2730485921,2730485921 - DD 2730485921,2730485921,2730485921,2730485921 - DD 2820302411,2820302411,2820302411,2820302411 - DD 2820302411,2820302411,2820302411,2820302411 - DD 3259730800,3259730800,3259730800,3259730800 - DD 3259730800,3259730800,3259730800,3259730800 - DD 3345764771,3345764771,3345764771,3345764771 - DD 3345764771,3345764771,3345764771,3345764771 - DD 3516065817,3516065817,3516065817,3516065817 - DD 3516065817,3516065817,3516065817,3516065817 - DD 3600352804,3600352804,3600352804,3600352804 - DD 3600352804,3600352804,3600352804,3600352804 - DD 4094571909,4094571909,4094571909,4094571909 - DD 4094571909,4094571909,4094571909,4094571909 - DD 275423344,275423344,275423344,275423344 - DD 275423344,275423344,275423344,275423344 - DD 430227734,430227734,430227734,430227734 - DD 430227734,430227734,430227734,430227734 - DD 506948616,506948616,506948616,506948616 - DD 506948616,506948616,506948616,506948616 - DD 659060556,659060556,659060556,659060556 - DD 659060556,659060556,659060556,659060556 - DD 883997877,883997877,883997877,883997877 - DD 883997877,883997877,883997877,883997877 - DD 958139571,958139571,958139571,958139571 - DD 958139571,958139571,958139571,958139571 - DD 1322822218,1322822218,1322822218,1322822218 - DD 1322822218,1322822218,1322822218,1322822218 - DD 1537002063,1537002063,1537002063,1537002063 - DD 1537002063,1537002063,1537002063,1537002063 - DD 1747873779,1747873779,1747873779,1747873779 - DD 1747873779,1747873779,1747873779,1747873779 - DD 1955562222,1955562222,1955562222,1955562222 - DD 1955562222,1955562222,1955562222,1955562222 - DD 2024104815,2024104815,2024104815,2024104815 - DD 2024104815,2024104815,2024104815,2024104815 - DD 2227730452,2227730452,2227730452,2227730452 - DD 2227730452,2227730452,2227730452,2227730452 - DD 2361852424,2361852424,2361852424,2361852424 - DD 2361852424,2361852424,2361852424,2361852424 - DD 2428436474,2428436474,2428436474,2428436474 - DD 2428436474,2428436474,2428436474,2428436474 - DD 2756734187,2756734187,2756734187,2756734187 - DD 2756734187,2756734187,2756734187,2756734187 - DD 3204031479,3204031479,3204031479,3204031479 - DD 3204031479,3204031479,3204031479,3204031479 - DD 3329325298,3329325298,3329325298,3329325298 - DD 3329325298,3329325298,3329325298,3329325298 -$L$pbswap:: - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh -K256_shaext:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h -DB 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111 -DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114 -DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71 -DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112 -DB 101,110,115,115,108,46,111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[272+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - - lea rsi,QWORD PTR[((-24-160))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,20 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha256_multi_block - DD imagerel $L$SEH_end_sha256_multi_block - DD imagerel $L$SEH_info_sha256_multi_block - DD imagerel $L$SEH_begin_sha256_multi_block_shaext - DD imagerel $L$SEH_end_sha256_multi_block_shaext - DD imagerel $L$SEH_info_sha256_multi_block_shaext -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha256_multi_block:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body,imagerel $L$epilogue -$L$SEH_info_sha256_multi_block_shaext:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$body_shaext,imagerel $L$epilogue_shaext - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-x86_64.asm deleted file mode 100644 index 69a382b8924550..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-x86_64.asm +++ /dev/null @@ -1,3270 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC sha256_block_data_order - -ALIGN 16 -sha256_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - lea r11,QWORD PTR[OPENSSL_ia32cap_P] - mov r9d,DWORD PTR[r11] - mov r10d,DWORD PTR[4+r11] - mov r11d,DWORD PTR[8+r11] - test r11d,536870912 - jnz _shaext_shortcut - test r10d,512 - jnz $L$ssse3_shortcut - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,16*4+4*8 - lea rdx,QWORD PTR[rdx*4+rsi] - and rsp,-64 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 -$L$prologue:: - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov edi,ebx - lea rbp,QWORD PTR[K256] - xor edi,ecx - mov r12d,DWORD PTR[rsi] - mov r13d,r8d - mov r14d,eax - bswap r12d - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r11d,r14d - mov r12d,DWORD PTR[4+rsi] - mov r13d,edx - mov r14d,r11d - bswap r12d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[4+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r10d,r14d - mov r12d,DWORD PTR[8+rsi] - mov r13d,ecx - mov r14d,r10d - bswap r12d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[8+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r9d,r14d - mov r12d,DWORD PTR[12+rsi] - mov r13d,ebx - mov r14d,r9d - bswap r12d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[12+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - add r8d,r14d - mov r12d,DWORD PTR[16+rsi] - mov r13d,eax - mov r14d,r8d - bswap r12d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[16+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - add edx,r14d - mov r12d,DWORD PTR[20+rsi] - mov r13d,r11d - mov r14d,edx - bswap r12d - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[20+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ecx,r14d - mov r12d,DWORD PTR[24+rsi] - mov r13d,r10d - mov r14d,ecx - bswap r12d - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[24+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ebx,r14d - mov r12d,DWORD PTR[28+rsi] - mov r13d,r9d - mov r14d,ebx - bswap r12d - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[28+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - add eax,r14d - mov r12d,DWORD PTR[32+rsi] - mov r13d,r8d - mov r14d,eax - bswap r12d - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[32+rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r11d,r14d - mov r12d,DWORD PTR[36+rsi] - mov r13d,edx - mov r14d,r11d - bswap r12d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[36+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r10d,r14d - mov r12d,DWORD PTR[40+rsi] - mov r13d,ecx - mov r14d,r10d - bswap r12d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[40+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - add r9d,r14d - mov r12d,DWORD PTR[44+rsi] - mov r13d,ebx - mov r14d,r9d - bswap r12d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[44+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - add r8d,r14d - mov r12d,DWORD PTR[48+rsi] - mov r13d,eax - mov r14d,r8d - bswap r12d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[48+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - add edx,r14d - mov r12d,DWORD PTR[52+rsi] - mov r13d,r11d - mov r14d,edx - bswap r12d - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[52+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ecx,r14d - mov r12d,DWORD PTR[56+rsi] - mov r13d,r10d - mov r14d,ecx - bswap r12d - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[56+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - add ebx,r14d - mov r12d,DWORD PTR[60+rsi] - mov r13d,r9d - mov r14d,ebx - bswap r12d - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[60+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - jmp $L$rounds_16_xx -ALIGN 16 -$L$rounds_16_xx:: - mov r13d,DWORD PTR[4+rsp] - mov r15d,DWORD PTR[56+rsp] - - mov r12d,r13d - ror r13d,11 - add eax,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[36+rsp] - - add r12d,DWORD PTR[rsp] - mov r13d,r8d - add r12d,r15d - mov r14d,eax - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[8+rsp] - mov edi,DWORD PTR[60+rsp] - - mov r12d,r13d - ror r13d,11 - add r11d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[40+rsp] - - add r12d,DWORD PTR[4+rsp] - mov r13d,edx - add r12d,edi - mov r14d,r11d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[4+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[12+rsp] - mov r15d,DWORD PTR[rsp] - - mov r12d,r13d - ror r13d,11 - add r10d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[44+rsp] - - add r12d,DWORD PTR[8+rsp] - mov r13d,ecx - add r12d,r15d - mov r14d,r10d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[8+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[16+rsp] - mov edi,DWORD PTR[4+rsp] - - mov r12d,r13d - ror r13d,11 - add r9d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[48+rsp] - - add r12d,DWORD PTR[12+rsp] - mov r13d,ebx - add r12d,edi - mov r14d,r9d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[12+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[20+rsp] - mov r15d,DWORD PTR[8+rsp] - - mov r12d,r13d - ror r13d,11 - add r8d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[52+rsp] - - add r12d,DWORD PTR[16+rsp] - mov r13d,eax - add r12d,r15d - mov r14d,r8d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[16+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[24+rsp] - mov edi,DWORD PTR[12+rsp] - - mov r12d,r13d - ror r13d,11 - add edx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[56+rsp] - - add r12d,DWORD PTR[20+rsp] - mov r13d,r11d - add r12d,edi - mov r14d,edx - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[20+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[28+rsp] - mov r15d,DWORD PTR[16+rsp] - - mov r12d,r13d - ror r13d,11 - add ecx,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[60+rsp] - - add r12d,DWORD PTR[24+rsp] - mov r13d,r10d - add r12d,r15d - mov r14d,ecx - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[24+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[32+rsp] - mov edi,DWORD PTR[20+rsp] - - mov r12d,r13d - ror r13d,11 - add ebx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[rsp] - - add r12d,DWORD PTR[28+rsp] - mov r13d,r9d - add r12d,edi - mov r14d,ebx - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[28+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[36+rsp] - mov r15d,DWORD PTR[24+rsp] - - mov r12d,r13d - ror r13d,11 - add eax,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[4+rsp] - - add r12d,DWORD PTR[32+rsp] - mov r13d,r8d - add r12d,r15d - mov r14d,eax - ror r13d,14 - mov r15d,r9d - - xor r13d,r8d - ror r14d,9 - xor r15d,r10d - - mov DWORD PTR[32+rsp],r12d - xor r14d,eax - and r15d,r8d - - ror r13d,5 - add r12d,r11d - xor r15d,r10d - - ror r14d,11 - xor r13d,r8d - add r12d,r15d - - mov r15d,eax - add r12d,DWORD PTR[rbp] - xor r14d,eax - - xor r15d,ebx - ror r13d,6 - mov r11d,ebx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r11d,edi - add edx,r12d - add r11d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[40+rsp] - mov edi,DWORD PTR[28+rsp] - - mov r12d,r13d - ror r13d,11 - add r11d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[8+rsp] - - add r12d,DWORD PTR[36+rsp] - mov r13d,edx - add r12d,edi - mov r14d,r11d - ror r13d,14 - mov edi,r8d - - xor r13d,edx - ror r14d,9 - xor edi,r9d - - mov DWORD PTR[36+rsp],r12d - xor r14d,r11d - and edi,edx - - ror r13d,5 - add r12d,r10d - xor edi,r9d - - ror r14d,11 - xor r13d,edx - add r12d,edi - - mov edi,r11d - add r12d,DWORD PTR[rbp] - xor r14d,r11d - - xor edi,eax - ror r13d,6 - mov r10d,eax - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r10d,r15d - add ecx,r12d - add r10d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[44+rsp] - mov r15d,DWORD PTR[32+rsp] - - mov r12d,r13d - ror r13d,11 - add r10d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[12+rsp] - - add r12d,DWORD PTR[40+rsp] - mov r13d,ecx - add r12d,r15d - mov r14d,r10d - ror r13d,14 - mov r15d,edx - - xor r13d,ecx - ror r14d,9 - xor r15d,r8d - - mov DWORD PTR[40+rsp],r12d - xor r14d,r10d - and r15d,ecx - - ror r13d,5 - add r12d,r9d - xor r15d,r8d - - ror r14d,11 - xor r13d,ecx - add r12d,r15d - - mov r15d,r10d - add r12d,DWORD PTR[rbp] - xor r14d,r10d - - xor r15d,r11d - ror r13d,6 - mov r9d,r11d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor r9d,edi - add ebx,r12d - add r9d,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[48+rsp] - mov edi,DWORD PTR[36+rsp] - - mov r12d,r13d - ror r13d,11 - add r9d,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[16+rsp] - - add r12d,DWORD PTR[44+rsp] - mov r13d,ebx - add r12d,edi - mov r14d,r9d - ror r13d,14 - mov edi,ecx - - xor r13d,ebx - ror r14d,9 - xor edi,edx - - mov DWORD PTR[44+rsp],r12d - xor r14d,r9d - and edi,ebx - - ror r13d,5 - add r12d,r8d - xor edi,edx - - ror r14d,11 - xor r13d,ebx - add r12d,edi - - mov edi,r9d - add r12d,DWORD PTR[rbp] - xor r14d,r9d - - xor edi,r10d - ror r13d,6 - mov r8d,r10d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor r8d,r15d - add eax,r12d - add r8d,r12d - - lea rbp,QWORD PTR[20+rbp] - mov r13d,DWORD PTR[52+rsp] - mov r15d,DWORD PTR[40+rsp] - - mov r12d,r13d - ror r13d,11 - add r8d,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[20+rsp] - - add r12d,DWORD PTR[48+rsp] - mov r13d,eax - add r12d,r15d - mov r14d,r8d - ror r13d,14 - mov r15d,ebx - - xor r13d,eax - ror r14d,9 - xor r15d,ecx - - mov DWORD PTR[48+rsp],r12d - xor r14d,r8d - and r15d,eax - - ror r13d,5 - add r12d,edx - xor r15d,ecx - - ror r14d,11 - xor r13d,eax - add r12d,r15d - - mov r15d,r8d - add r12d,DWORD PTR[rbp] - xor r14d,r8d - - xor r15d,r9d - ror r13d,6 - mov edx,r9d - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor edx,edi - add r11d,r12d - add edx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[56+rsp] - mov edi,DWORD PTR[44+rsp] - - mov r12d,r13d - ror r13d,11 - add edx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[24+rsp] - - add r12d,DWORD PTR[52+rsp] - mov r13d,r11d - add r12d,edi - mov r14d,edx - ror r13d,14 - mov edi,eax - - xor r13d,r11d - ror r14d,9 - xor edi,ebx - - mov DWORD PTR[52+rsp],r12d - xor r14d,edx - and edi,r11d - - ror r13d,5 - add r12d,ecx - xor edi,ebx - - ror r14d,11 - xor r13d,r11d - add r12d,edi - - mov edi,edx - add r12d,DWORD PTR[rbp] - xor r14d,edx - - xor edi,r8d - ror r13d,6 - mov ecx,r8d - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor ecx,r15d - add r10d,r12d - add ecx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[60+rsp] - mov r15d,DWORD PTR[48+rsp] - - mov r12d,r13d - ror r13d,11 - add ecx,r14d - mov r14d,r15d - ror r15d,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor r15d,r14d - shr r14d,10 - - ror r15d,17 - xor r12d,r13d - xor r15d,r14d - add r12d,DWORD PTR[28+rsp] - - add r12d,DWORD PTR[56+rsp] - mov r13d,r10d - add r12d,r15d - mov r14d,ecx - ror r13d,14 - mov r15d,r11d - - xor r13d,r10d - ror r14d,9 - xor r15d,eax - - mov DWORD PTR[56+rsp],r12d - xor r14d,ecx - and r15d,r10d - - ror r13d,5 - add r12d,ebx - xor r15d,eax - - ror r14d,11 - xor r13d,r10d - add r12d,r15d - - mov r15d,ecx - add r12d,DWORD PTR[rbp] - xor r14d,ecx - - xor r15d,edx - ror r13d,6 - mov ebx,edx - - and edi,r15d - ror r14d,2 - add r12d,r13d - - xor ebx,edi - add r9d,r12d - add ebx,r12d - - lea rbp,QWORD PTR[4+rbp] - mov r13d,DWORD PTR[rsp] - mov edi,DWORD PTR[52+rsp] - - mov r12d,r13d - ror r13d,11 - add ebx,r14d - mov r14d,edi - ror edi,2 - - xor r13d,r12d - shr r12d,3 - ror r13d,7 - xor edi,r14d - shr r14d,10 - - ror edi,17 - xor r12d,r13d - xor edi,r14d - add r12d,DWORD PTR[32+rsp] - - add r12d,DWORD PTR[60+rsp] - mov r13d,r9d - add r12d,edi - mov r14d,ebx - ror r13d,14 - mov edi,r10d - - xor r13d,r9d - ror r14d,9 - xor edi,r11d - - mov DWORD PTR[60+rsp],r12d - xor r14d,ebx - and edi,r9d - - ror r13d,5 - add r12d,eax - xor edi,r11d - - ror r14d,11 - xor r13d,r9d - add r12d,edi - - mov edi,ebx - add r12d,DWORD PTR[rbp] - xor r14d,ebx - - xor edi,ecx - ror r13d,6 - mov eax,ecx - - and r15d,edi - ror r14d,2 - add r12d,r13d - - xor eax,r15d - add r8d,r12d - add eax,r12d - - lea rbp,QWORD PTR[20+rbp] - cmp BYTE PTR[3+rbp],0 - jnz $L$rounds_16_xx - - mov rdi,QWORD PTR[((64+0))+rsp] - add eax,r14d - lea rsi,QWORD PTR[64+rsi] - - add eax,DWORD PTR[rdi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - jb $L$loop - - mov rsi,QWORD PTR[((64+24))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order:: -sha256_block_data_order ENDP -ALIGN 64 - -K256:: - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 0428a2f98h,071374491h,0b5c0fbcfh,0e9b5dba5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 03956c25bh,059f111f1h,0923f82a4h,0ab1c5ed5h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 0d807aa98h,012835b01h,0243185beh,0550c7dc3h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 072be5d74h,080deb1feh,09bdc06a7h,0c19bf174h - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 0e49b69c1h,0efbe4786h,00fc19dc6h,0240ca1cch - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 02de92c6fh,04a7484aah,05cb0a9dch,076f988dah - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0983e5152h,0a831c66dh,0b00327c8h,0bf597fc7h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 0c6e00bf3h,0d5a79147h,006ca6351h,014292967h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 027b70a85h,02e1b2138h,04d2c6dfch,053380d13h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0650a7354h,0766a0abbh,081c2c92eh,092722c85h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0a2bfe8a1h,0a81a664bh,0c24b8b70h,0c76c51a3h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 0d192e819h,0d6990624h,0f40e3585h,0106aa070h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 019a4c116h,01e376c08h,02748774ch,034b0bcb5h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0391c0cb3h,04ed8aa4ah,05b9cca4fh,0682e6ff3h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 0748f82eeh,078a5636fh,084c87814h,08cc70208h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - DD 090befffah,0a4506cebh,0bef9a3f7h,0c67178f2h - - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 000010203h,004050607h,008090a0bh,00c0d0e0fh - DD 003020100h,00b0a0908h,0ffffffffh,0ffffffffh - DD 003020100h,00b0a0908h,0ffffffffh,0ffffffffh - DD 0ffffffffh,0ffffffffh,003020100h,00b0a0908h - DD 0ffffffffh,0ffffffffh,003020100h,00b0a0908h -DB 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 - -ALIGN 64 -sha256_block_data_order_shaext PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_shaext:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -_shaext_shortcut:: - lea rsp,QWORD PTR[((-88))+rsp] - movaps XMMWORD PTR[(-8-80)+rax],xmm6 - movaps XMMWORD PTR[(-8-64)+rax],xmm7 - movaps XMMWORD PTR[(-8-48)+rax],xmm8 - movaps XMMWORD PTR[(-8-32)+rax],xmm9 - movaps XMMWORD PTR[(-8-16)+rax],xmm10 -$L$prologue_shaext:: - lea rcx,QWORD PTR[((K256+128))] - movdqu xmm1,XMMWORD PTR[rdi] - movdqu xmm2,XMMWORD PTR[16+rdi] - movdqa xmm7,XMMWORD PTR[((512-128))+rcx] - - pshufd xmm0,xmm1,01bh - pshufd xmm1,xmm1,0b1h - pshufd xmm2,xmm2,01bh - movdqa xmm8,xmm7 -DB 102,15,58,15,202,8 - punpcklqdq xmm2,xmm0 - jmp $L$oop_shaext - -ALIGN 16 -$L$oop_shaext:: - movdqu xmm3,XMMWORD PTR[rsi] - movdqu xmm4,XMMWORD PTR[16+rsi] - movdqu xmm5,XMMWORD PTR[32+rsi] -DB 102,15,56,0,223 - movdqu xmm6,XMMWORD PTR[48+rsi] - - movdqa xmm0,XMMWORD PTR[((0-128))+rcx] - paddd xmm0,xmm3 -DB 102,15,56,0,231 - movdqa xmm10,xmm2 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - nop - movdqa xmm9,xmm1 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((32-128))+rcx] - paddd xmm0,xmm4 -DB 102,15,56,0,239 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - lea rsi,QWORD PTR[64+rsi] -DB 15,56,204,220 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((64-128))+rcx] - paddd xmm0,xmm5 -DB 102,15,56,0,247 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((96-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((128-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((160-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((192-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((224-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((256-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((288-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((320-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((352-128))+rcx] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((384-128))+rcx] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR[((416-128))+rcx] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 -DB 15,56,203,202 - paddd xmm6,xmm7 - - movdqa xmm0,XMMWORD PTR[((448-128))+rcx] - paddd xmm0,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh -DB 15,56,205,245 - movdqa xmm7,xmm8 -DB 15,56,203,202 - - movdqa xmm0,XMMWORD PTR[((480-128))+rcx] - paddd xmm0,xmm6 - nop -DB 15,56,203,209 - pshufd xmm0,xmm0,00eh - dec rdx - nop -DB 15,56,203,202 - - paddd xmm2,xmm10 - paddd xmm1,xmm9 - jnz $L$oop_shaext - - pshufd xmm2,xmm2,0b1h - pshufd xmm7,xmm1,01bh - pshufd xmm1,xmm1,0b1h - punpckhqdq xmm1,xmm2 -DB 102,15,58,15,215,8 - - movdqu XMMWORD PTR[rdi],xmm1 - movdqu XMMWORD PTR[16+rdi],xmm2 - movaps xmm6,XMMWORD PTR[((-8-80))+rax] - movaps xmm7,XMMWORD PTR[((-8-64))+rax] - movaps xmm8,XMMWORD PTR[((-8-48))+rax] - movaps xmm9,XMMWORD PTR[((-8-32))+rax] - movaps xmm10,XMMWORD PTR[((-8-16))+rax] - mov rsp,rax -$L$epilogue_shaext:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_shaext:: -sha256_block_data_order_shaext ENDP - -ALIGN 64 -sha256_block_data_order_ssse3 PROC PRIVATE - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha256_block_data_order_ssse3:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - -$L$ssse3_shortcut:: - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,160 - lea rdx,QWORD PTR[rdx*4+rsi] - and rsp,-64 - mov QWORD PTR[((64+0))+rsp],rdi - mov QWORD PTR[((64+8))+rsp],rsi - mov QWORD PTR[((64+16))+rsp],rdx - mov QWORD PTR[((64+24))+rsp],r11 - movaps XMMWORD PTR[(64+32)+rsp],xmm6 - movaps XMMWORD PTR[(64+48)+rsp],xmm7 - movaps XMMWORD PTR[(64+64)+rsp],xmm8 - movaps XMMWORD PTR[(64+80)+rsp],xmm9 -$L$prologue_ssse3:: - - mov eax,DWORD PTR[rdi] - mov ebx,DWORD PTR[4+rdi] - mov ecx,DWORD PTR[8+rdi] - mov edx,DWORD PTR[12+rdi] - mov r8d,DWORD PTR[16+rdi] - mov r9d,DWORD PTR[20+rdi] - mov r10d,DWORD PTR[24+rdi] - mov r11d,DWORD PTR[28+rdi] - - - jmp $L$loop_ssse3 -ALIGN 16 -$L$loop_ssse3:: - movdqa xmm7,XMMWORD PTR[((K256+512))] - movdqu xmm0,XMMWORD PTR[rsi] - movdqu xmm1,XMMWORD PTR[16+rsi] - movdqu xmm2,XMMWORD PTR[32+rsi] -DB 102,15,56,0,199 - movdqu xmm3,XMMWORD PTR[48+rsi] - lea rbp,QWORD PTR[K256] -DB 102,15,56,0,207 - movdqa xmm4,XMMWORD PTR[rbp] - movdqa xmm5,XMMWORD PTR[32+rbp] -DB 102,15,56,0,215 - paddd xmm4,xmm0 - movdqa xmm6,XMMWORD PTR[64+rbp] -DB 102,15,56,0,223 - movdqa xmm7,XMMWORD PTR[96+rbp] - paddd xmm5,xmm1 - paddd xmm6,xmm2 - paddd xmm7,xmm3 - movdqa XMMWORD PTR[rsp],xmm4 - mov r14d,eax - movdqa XMMWORD PTR[16+rsp],xmm5 - mov edi,ebx - movdqa XMMWORD PTR[32+rsp],xmm6 - xor edi,ecx - movdqa XMMWORD PTR[48+rsp],xmm7 - mov r13d,r8d - jmp $L$ssse3_00_47 - -ALIGN 16 -$L$ssse3_00_47:: - sub rbp,-128 - ror r13d,14 - movdqa xmm4,xmm1 - mov eax,r14d - mov r12d,r9d - movdqa xmm7,xmm3 - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax -DB 102,15,58,15,224,4 - and r12d,r8d - xor r13d,r8d -DB 102,15,58,15,250,4 - add r11d,DWORD PTR[rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,ebx - add r11d,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,eax - add r11d,r13d - xor edi,ebx - paddd xmm0,xmm7 - ror r14d,2 - add edx,r11d - psrld xmm6,7 - add r11d,edi - mov r13d,edx - pshufd xmm7,xmm3,250 - add r14d,r11d - ror r13d,14 - pslld xmm5,14 - mov r11d,r14d - mov r12d,r8d - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - psrld xmm6,11 - xor r14d,r11d - pxor xmm4,xmm5 - and r12d,edx - xor r13d,edx - pslld xmm5,11 - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - pxor xmm4,xmm6 - xor r12d,r9d - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,eax - add r10d,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,r11d - psrld xmm7,10 - add r10d,r13d - xor r15d,eax - paddd xmm0,xmm4 - ror r14d,2 - add ecx,r10d - psrlq xmm6,17 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - pxor xmm7,xmm6 - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - psrlq xmm6,2 - xor r13d,ecx - xor r12d,r8d - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - pshufd xmm7,xmm7,128 - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - psrldq xmm7,8 - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - paddd xmm0,xmm7 - and edi,r15d - xor r14d,r10d - add r9d,r13d - pshufd xmm7,xmm0,80 - xor edi,r11d - ror r14d,2 - add ebx,r9d - movdqa xmm6,xmm7 - add r9d,edi - mov r13d,ebx - psrld xmm7,10 - add r14d,r9d - ror r13d,14 - psrlq xmm6,17 - mov r9d,r14d - mov r12d,ecx - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - psrlq xmm6,2 - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - pxor xmm7,xmm6 - mov edi,r9d - xor r12d,edx - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,r10d - add r8d,r12d - movdqa xmm6,XMMWORD PTR[rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - paddd xmm0,xmm7 - ror r14d,2 - add eax,r8d - add r8d,r15d - paddd xmm6,xmm0 - mov r13d,eax - add r14d,r8d - movdqa XMMWORD PTR[rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm2 - mov r8d,r14d - mov r12d,ebx - movdqa xmm7,xmm0 - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d -DB 102,15,58,15,225,4 - and r12d,eax - xor r13d,eax -DB 102,15,58,15,251,4 - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,r9d - add edx,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,r8d - add edx,r13d - xor edi,r9d - paddd xmm1,xmm7 - ror r14d,2 - add r11d,edx - psrld xmm6,7 - add edx,edi - mov r13d,r11d - pshufd xmm7,xmm0,250 - add r14d,edx - ror r13d,14 - pslld xmm5,14 - mov edx,r14d - mov r12d,eax - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - psrld xmm6,11 - xor r14d,edx - pxor xmm4,xmm5 - and r12d,r11d - xor r13d,r11d - pslld xmm5,11 - add ecx,DWORD PTR[20+rsp] - mov edi,edx - pxor xmm4,xmm6 - xor r12d,ebx - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,r8d - add ecx,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,edx - psrld xmm7,10 - add ecx,r13d - xor r15d,r8d - paddd xmm1,xmm4 - ror r14d,2 - add r10d,ecx - psrlq xmm6,17 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - pxor xmm7,xmm6 - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - psrlq xmm6,2 - xor r13d,r10d - xor r12d,eax - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - pshufd xmm7,xmm7,128 - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - psrldq xmm7,8 - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - paddd xmm1,xmm7 - and edi,r15d - xor r14d,ecx - add ebx,r13d - pshufd xmm7,xmm1,80 - xor edi,edx - ror r14d,2 - add r9d,ebx - movdqa xmm6,xmm7 - add ebx,edi - mov r13d,r9d - psrld xmm7,10 - add r14d,ebx - ror r13d,14 - psrlq xmm6,17 - mov ebx,r14d - mov r12d,r10d - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - psrlq xmm6,2 - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - pxor xmm7,xmm6 - mov edi,ebx - xor r12d,r11d - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,ecx - add eax,r12d - movdqa xmm6,XMMWORD PTR[32+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,ebx - add eax,r13d - xor r15d,ecx - paddd xmm1,xmm7 - ror r14d,2 - add r8d,eax - add eax,r15d - paddd xmm6,xmm1 - mov r13d,r8d - add r14d,eax - movdqa XMMWORD PTR[16+rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm3 - mov eax,r14d - mov r12d,r9d - movdqa xmm7,xmm1 - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax -DB 102,15,58,15,226,4 - and r12d,r8d - xor r13d,r8d -DB 102,15,58,15,248,4 - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,ebx - add r11d,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,eax - add r11d,r13d - xor edi,ebx - paddd xmm2,xmm7 - ror r14d,2 - add edx,r11d - psrld xmm6,7 - add r11d,edi - mov r13d,edx - pshufd xmm7,xmm1,250 - add r14d,r11d - ror r13d,14 - pslld xmm5,14 - mov r11d,r14d - mov r12d,r8d - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - psrld xmm6,11 - xor r14d,r11d - pxor xmm4,xmm5 - and r12d,edx - xor r13d,edx - pslld xmm5,11 - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - pxor xmm4,xmm6 - xor r12d,r9d - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,eax - add r10d,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,r11d - psrld xmm7,10 - add r10d,r13d - xor r15d,eax - paddd xmm2,xmm4 - ror r14d,2 - add ecx,r10d - psrlq xmm6,17 - add r10d,r15d - mov r13d,ecx - add r14d,r10d - pxor xmm7,xmm6 - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - psrlq xmm6,2 - xor r13d,ecx - xor r12d,r8d - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,r10d - and r12d,ecx - pshufd xmm7,xmm7,128 - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - psrldq xmm7,8 - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - paddd xmm2,xmm7 - and edi,r15d - xor r14d,r10d - add r9d,r13d - pshufd xmm7,xmm2,80 - xor edi,r11d - ror r14d,2 - add ebx,r9d - movdqa xmm6,xmm7 - add r9d,edi - mov r13d,ebx - psrld xmm7,10 - add r14d,r9d - ror r13d,14 - psrlq xmm6,17 - mov r9d,r14d - mov r12d,ecx - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - psrlq xmm6,2 - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - pxor xmm7,xmm6 - mov edi,r9d - xor r12d,edx - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,r10d - add r8d,r12d - movdqa xmm6,XMMWORD PTR[64+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - paddd xmm2,xmm7 - ror r14d,2 - add eax,r8d - add r8d,r15d - paddd xmm6,xmm2 - mov r13d,eax - add r14d,r8d - movdqa XMMWORD PTR[32+rsp],xmm6 - ror r13d,14 - movdqa xmm4,xmm0 - mov r8d,r14d - mov r12d,ebx - movdqa xmm7,xmm2 - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d -DB 102,15,58,15,227,4 - and r12d,eax - xor r13d,eax -DB 102,15,58,15,249,4 - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - movdqa xmm5,xmm4 - xor r15d,r9d - add edx,r12d - movdqa xmm6,xmm4 - ror r13d,6 - and edi,r15d - psrld xmm4,3 - xor r14d,r8d - add edx,r13d - xor edi,r9d - paddd xmm3,xmm7 - ror r14d,2 - add r11d,edx - psrld xmm6,7 - add edx,edi - mov r13d,r11d - pshufd xmm7,xmm2,250 - add r14d,edx - ror r13d,14 - pslld xmm5,14 - mov edx,r14d - mov r12d,eax - pxor xmm4,xmm6 - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - psrld xmm6,11 - xor r14d,edx - pxor xmm4,xmm5 - and r12d,r11d - xor r13d,r11d - pslld xmm5,11 - add ecx,DWORD PTR[52+rsp] - mov edi,edx - pxor xmm4,xmm6 - xor r12d,ebx - ror r14d,11 - movdqa xmm6,xmm7 - xor edi,r8d - add ecx,r12d - pxor xmm4,xmm5 - ror r13d,6 - and r15d,edi - xor r14d,edx - psrld xmm7,10 - add ecx,r13d - xor r15d,r8d - paddd xmm3,xmm4 - ror r14d,2 - add r10d,ecx - psrlq xmm6,17 - add ecx,r15d - mov r13d,r10d - add r14d,ecx - pxor xmm7,xmm6 - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - psrlq xmm6,2 - xor r13d,r10d - xor r12d,eax - pxor xmm7,xmm6 - ror r13d,5 - xor r14d,ecx - and r12d,r10d - pshufd xmm7,xmm7,128 - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - psrldq xmm7,8 - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - paddd xmm3,xmm7 - and edi,r15d - xor r14d,ecx - add ebx,r13d - pshufd xmm7,xmm3,80 - xor edi,edx - ror r14d,2 - add r9d,ebx - movdqa xmm6,xmm7 - add ebx,edi - mov r13d,r9d - psrld xmm7,10 - add r14d,ebx - ror r13d,14 - psrlq xmm6,17 - mov ebx,r14d - mov r12d,r10d - pxor xmm7,xmm6 - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - psrlq xmm6,2 - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - pxor xmm7,xmm6 - mov edi,ebx - xor r12d,r11d - ror r14d,11 - pshufd xmm7,xmm7,8 - xor edi,ecx - add eax,r12d - movdqa xmm6,XMMWORD PTR[96+rbp] - ror r13d,6 - and r15d,edi - pslldq xmm7,8 - xor r14d,ebx - add eax,r13d - xor r15d,ecx - paddd xmm3,xmm7 - ror r14d,2 - add r8d,eax - add eax,r15d - paddd xmm6,xmm3 - mov r13d,r8d - add r14d,eax - movdqa XMMWORD PTR[48+rsp],xmm6 - cmp BYTE PTR[131+rbp],0 - jne $L$ssse3_00_47 - ror r13d,14 - mov eax,r14d - mov r12d,r9d - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - xor r15d,ebx - add r11d,r12d - ror r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - ror r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[4+rsp] - mov edi,r11d - xor r12d,r9d - ror r14d,11 - xor edi,eax - add r10d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - ror r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - xor r13d,ecx - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[8+rsp] - mov r15d,r10d - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - ror r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[12+rsp] - mov edi,r9d - xor r12d,edx - ror r14d,11 - xor edi,r10d - add r8d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - ror r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[16+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - xor r15d,r9d - add edx,r12d - ror r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - ror r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[20+rsp] - mov edi,edx - xor r12d,ebx - ror r14d,11 - xor edi,r8d - add ecx,r12d - ror r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - ror r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - xor r13d,r10d - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[24+rsp] - mov r15d,ecx - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - ror r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[28+rsp] - mov edi,ebx - xor r12d,r11d - ror r14d,11 - xor edi,ecx - add eax,r12d - ror r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - ror r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - ror r13d,14 - mov eax,r14d - mov r12d,r9d - ror r14d,9 - xor r13d,r8d - xor r12d,r10d - ror r13d,5 - xor r14d,eax - and r12d,r8d - xor r13d,r8d - add r11d,DWORD PTR[32+rsp] - mov r15d,eax - xor r12d,r10d - ror r14d,11 - xor r15d,ebx - add r11d,r12d - ror r13d,6 - and edi,r15d - xor r14d,eax - add r11d,r13d - xor edi,ebx - ror r14d,2 - add edx,r11d - add r11d,edi - mov r13d,edx - add r14d,r11d - ror r13d,14 - mov r11d,r14d - mov r12d,r8d - ror r14d,9 - xor r13d,edx - xor r12d,r9d - ror r13d,5 - xor r14d,r11d - and r12d,edx - xor r13d,edx - add r10d,DWORD PTR[36+rsp] - mov edi,r11d - xor r12d,r9d - ror r14d,11 - xor edi,eax - add r10d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r11d - add r10d,r13d - xor r15d,eax - ror r14d,2 - add ecx,r10d - add r10d,r15d - mov r13d,ecx - add r14d,r10d - ror r13d,14 - mov r10d,r14d - mov r12d,edx - ror r14d,9 - xor r13d,ecx - xor r12d,r8d - ror r13d,5 - xor r14d,r10d - and r12d,ecx - xor r13d,ecx - add r9d,DWORD PTR[40+rsp] - mov r15d,r10d - xor r12d,r8d - ror r14d,11 - xor r15d,r11d - add r9d,r12d - ror r13d,6 - and edi,r15d - xor r14d,r10d - add r9d,r13d - xor edi,r11d - ror r14d,2 - add ebx,r9d - add r9d,edi - mov r13d,ebx - add r14d,r9d - ror r13d,14 - mov r9d,r14d - mov r12d,ecx - ror r14d,9 - xor r13d,ebx - xor r12d,edx - ror r13d,5 - xor r14d,r9d - and r12d,ebx - xor r13d,ebx - add r8d,DWORD PTR[44+rsp] - mov edi,r9d - xor r12d,edx - ror r14d,11 - xor edi,r10d - add r8d,r12d - ror r13d,6 - and r15d,edi - xor r14d,r9d - add r8d,r13d - xor r15d,r10d - ror r14d,2 - add eax,r8d - add r8d,r15d - mov r13d,eax - add r14d,r8d - ror r13d,14 - mov r8d,r14d - mov r12d,ebx - ror r14d,9 - xor r13d,eax - xor r12d,ecx - ror r13d,5 - xor r14d,r8d - and r12d,eax - xor r13d,eax - add edx,DWORD PTR[48+rsp] - mov r15d,r8d - xor r12d,ecx - ror r14d,11 - xor r15d,r9d - add edx,r12d - ror r13d,6 - and edi,r15d - xor r14d,r8d - add edx,r13d - xor edi,r9d - ror r14d,2 - add r11d,edx - add edx,edi - mov r13d,r11d - add r14d,edx - ror r13d,14 - mov edx,r14d - mov r12d,eax - ror r14d,9 - xor r13d,r11d - xor r12d,ebx - ror r13d,5 - xor r14d,edx - and r12d,r11d - xor r13d,r11d - add ecx,DWORD PTR[52+rsp] - mov edi,edx - xor r12d,ebx - ror r14d,11 - xor edi,r8d - add ecx,r12d - ror r13d,6 - and r15d,edi - xor r14d,edx - add ecx,r13d - xor r15d,r8d - ror r14d,2 - add r10d,ecx - add ecx,r15d - mov r13d,r10d - add r14d,ecx - ror r13d,14 - mov ecx,r14d - mov r12d,r11d - ror r14d,9 - xor r13d,r10d - xor r12d,eax - ror r13d,5 - xor r14d,ecx - and r12d,r10d - xor r13d,r10d - add ebx,DWORD PTR[56+rsp] - mov r15d,ecx - xor r12d,eax - ror r14d,11 - xor r15d,edx - add ebx,r12d - ror r13d,6 - and edi,r15d - xor r14d,ecx - add ebx,r13d - xor edi,edx - ror r14d,2 - add r9d,ebx - add ebx,edi - mov r13d,r9d - add r14d,ebx - ror r13d,14 - mov ebx,r14d - mov r12d,r10d - ror r14d,9 - xor r13d,r9d - xor r12d,r11d - ror r13d,5 - xor r14d,ebx - and r12d,r9d - xor r13d,r9d - add eax,DWORD PTR[60+rsp] - mov edi,ebx - xor r12d,r11d - ror r14d,11 - xor edi,ecx - add eax,r12d - ror r13d,6 - and r15d,edi - xor r14d,ebx - add eax,r13d - xor r15d,ecx - ror r14d,2 - add r8d,eax - add eax,r15d - mov r13d,r8d - add r14d,eax - mov rdi,QWORD PTR[((64+0))+rsp] - mov eax,r14d - - add eax,DWORD PTR[rdi] - lea rsi,QWORD PTR[64+rsi] - add ebx,DWORD PTR[4+rdi] - add ecx,DWORD PTR[8+rdi] - add edx,DWORD PTR[12+rdi] - add r8d,DWORD PTR[16+rdi] - add r9d,DWORD PTR[20+rdi] - add r10d,DWORD PTR[24+rdi] - add r11d,DWORD PTR[28+rdi] - - cmp rsi,QWORD PTR[((64+16))+rsp] - - mov DWORD PTR[rdi],eax - mov DWORD PTR[4+rdi],ebx - mov DWORD PTR[8+rdi],ecx - mov DWORD PTR[12+rdi],edx - mov DWORD PTR[16+rdi],r8d - mov DWORD PTR[20+rdi],r9d - mov DWORD PTR[24+rdi],r10d - mov DWORD PTR[28+rdi],r11d - jb $L$loop_ssse3 - - mov rsi,QWORD PTR[((64+24))+rsp] - movaps xmm6,XMMWORD PTR[((64+32))+rsp] - movaps xmm7,XMMWORD PTR[((64+48))+rsp] - movaps xmm8,XMMWORD PTR[((64+64))+rsp] - movaps xmm9,XMMWORD PTR[((64+80))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue_ssse3:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha256_block_data_order_ssse3:: -sha256_block_data_order_ssse3 ENDP -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - mov rsi,rax - mov rax,QWORD PTR[((64+24))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jb $L$in_prologue - - lea rsi,QWORD PTR[((64+32))+rsi] - lea rdi,QWORD PTR[512+r8] - mov ecx,8 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -ALIGN 16 -shaext_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue_shaext] - cmp rbx,r10 - jb $L$in_prologue - - lea r10,QWORD PTR[$L$epilogue_shaext] - cmp rbx,r10 - jae $L$in_prologue - - lea rsi,QWORD PTR[((-8-80))+rax] - lea rdi,QWORD PTR[512+r8] - mov ecx,10 - DD 0a548f3fch - - jmp $L$in_prologue -shaext_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha256_block_data_order - DD imagerel $L$SEH_end_sha256_block_data_order - DD imagerel $L$SEH_info_sha256_block_data_order - DD imagerel $L$SEH_begin_sha256_block_data_order_shaext - DD imagerel $L$SEH_end_sha256_block_data_order_shaext - DD imagerel $L$SEH_info_sha256_block_data_order_shaext - DD imagerel $L$SEH_begin_sha256_block_data_order_ssse3 - DD imagerel $L$SEH_end_sha256_block_data_order_ssse3 - DD imagerel $L$SEH_info_sha256_block_data_order_ssse3 -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha256_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue,imagerel $L$epilogue -$L$SEH_info_sha256_block_data_order_shaext:: -DB 9,0,0,0 - DD imagerel shaext_handler -$L$SEH_info_sha256_block_data_order_ssse3:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue_ssse3,imagerel $L$epilogue_ssse3 - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha512-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha512-x86_64.asm deleted file mode 100644 index e993c3c35f336e..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/sha/sha512-x86_64.asm +++ /dev/null @@ -1,1913 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -EXTERN OPENSSL_ia32cap_P:NEAR -PUBLIC sha512_block_data_order - -ALIGN 16 -sha512_block_data_order PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_sha512_block_data_order:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - mov r11,rsp - shl rdx,4 - sub rsp,16*8+4*8 - lea rdx,QWORD PTR[rdx*8+rsi] - and rsp,-64 - mov QWORD PTR[((128+0))+rsp],rdi - mov QWORD PTR[((128+8))+rsp],rsi - mov QWORD PTR[((128+16))+rsp],rdx - mov QWORD PTR[((128+24))+rsp],r11 -$L$prologue:: - - mov rax,QWORD PTR[rdi] - mov rbx,QWORD PTR[8+rdi] - mov rcx,QWORD PTR[16+rdi] - mov rdx,QWORD PTR[24+rdi] - mov r8,QWORD PTR[32+rdi] - mov r9,QWORD PTR[40+rdi] - mov r10,QWORD PTR[48+rdi] - mov r11,QWORD PTR[56+rdi] - jmp $L$loop - -ALIGN 16 -$L$loop:: - mov rdi,rbx - lea rbp,QWORD PTR[K512] - xor rdi,rcx - mov r12,QWORD PTR[rsi] - mov r13,r8 - mov r14,rax - bswap r12 - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - add r11,r14 - mov r12,QWORD PTR[8+rsi] - mov r13,rdx - mov r14,r11 - bswap r12 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[8+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - add r10,r14 - mov r12,QWORD PTR[16+rsi] - mov r13,rcx - mov r14,r10 - bswap r12 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[16+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - add r9,r14 - mov r12,QWORD PTR[24+rsi] - mov r13,rbx - mov r14,r9 - bswap r12 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[24+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - add r8,r14 - mov r12,QWORD PTR[32+rsi] - mov r13,rax - mov r14,r8 - bswap r12 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[32+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rdx,r14 - mov r12,QWORD PTR[40+rsi] - mov r13,r11 - mov r14,rdx - bswap r12 - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[40+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - add rcx,r14 - mov r12,QWORD PTR[48+rsi] - mov r13,r10 - mov r14,rcx - bswap r12 - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[48+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rbx,r14 - mov r12,QWORD PTR[56+rsi] - mov r13,r9 - mov r14,rbx - bswap r12 - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[56+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - add rax,r14 - mov r12,QWORD PTR[64+rsi] - mov r13,r8 - mov r14,rax - bswap r12 - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[64+rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - add r11,r14 - mov r12,QWORD PTR[72+rsi] - mov r13,rdx - mov r14,r11 - bswap r12 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[72+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - add r10,r14 - mov r12,QWORD PTR[80+rsi] - mov r13,rcx - mov r14,r10 - bswap r12 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[80+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - add r9,r14 - mov r12,QWORD PTR[88+rsi] - mov r13,rbx - mov r14,r9 - bswap r12 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[88+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - add r8,r14 - mov r12,QWORD PTR[96+rsi] - mov r13,rax - mov r14,r8 - bswap r12 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[96+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rdx,r14 - mov r12,QWORD PTR[104+rsi] - mov r13,r11 - mov r14,rdx - bswap r12 - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[104+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - add rcx,r14 - mov r12,QWORD PTR[112+rsi] - mov r13,r10 - mov r14,rcx - bswap r12 - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[112+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - add rbx,r14 - mov r12,QWORD PTR[120+rsi] - mov r13,r9 - mov r14,rbx - bswap r12 - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[120+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - jmp $L$rounds_16_xx -ALIGN 16 -$L$rounds_16_xx:: - mov r13,QWORD PTR[8+rsp] - mov r15,QWORD PTR[112+rsp] - - mov r12,r13 - ror r13,7 - add rax,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[72+rsp] - - add r12,QWORD PTR[rsp] - mov r13,r8 - add r12,r15 - mov r14,rax - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[16+rsp] - mov rdi,QWORD PTR[120+rsp] - - mov r12,r13 - ror r13,7 - add r11,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[80+rsp] - - add r12,QWORD PTR[8+rsp] - mov r13,rdx - add r12,rdi - mov r14,r11 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[8+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[24+rsp] - mov r15,QWORD PTR[rsp] - - mov r12,r13 - ror r13,7 - add r10,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[88+rsp] - - add r12,QWORD PTR[16+rsp] - mov r13,rcx - add r12,r15 - mov r14,r10 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[16+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[32+rsp] - mov rdi,QWORD PTR[8+rsp] - - mov r12,r13 - ror r13,7 - add r9,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[96+rsp] - - add r12,QWORD PTR[24+rsp] - mov r13,rbx - add r12,rdi - mov r14,r9 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[24+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[40+rsp] - mov r15,QWORD PTR[16+rsp] - - mov r12,r13 - ror r13,7 - add r8,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[104+rsp] - - add r12,QWORD PTR[32+rsp] - mov r13,rax - add r12,r15 - mov r14,r8 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[32+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[48+rsp] - mov rdi,QWORD PTR[24+rsp] - - mov r12,r13 - ror r13,7 - add rdx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[112+rsp] - - add r12,QWORD PTR[40+rsp] - mov r13,r11 - add r12,rdi - mov r14,rdx - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[40+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[56+rsp] - mov r15,QWORD PTR[32+rsp] - - mov r12,r13 - ror r13,7 - add rcx,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[120+rsp] - - add r12,QWORD PTR[48+rsp] - mov r13,r10 - add r12,r15 - mov r14,rcx - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[48+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[64+rsp] - mov rdi,QWORD PTR[40+rsp] - - mov r12,r13 - ror r13,7 - add rbx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[rsp] - - add r12,QWORD PTR[56+rsp] - mov r13,r9 - add r12,rdi - mov r14,rbx - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[56+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[72+rsp] - mov r15,QWORD PTR[48+rsp] - - mov r12,r13 - ror r13,7 - add rax,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[8+rsp] - - add r12,QWORD PTR[64+rsp] - mov r13,r8 - add r12,r15 - mov r14,rax - ror r13,23 - mov r15,r9 - - xor r13,r8 - ror r14,5 - xor r15,r10 - - mov QWORD PTR[64+rsp],r12 - xor r14,rax - and r15,r8 - - ror r13,4 - add r12,r11 - xor r15,r10 - - ror r14,6 - xor r13,r8 - add r12,r15 - - mov r15,rax - add r12,QWORD PTR[rbp] - xor r14,rax - - xor r15,rbx - ror r13,14 - mov r11,rbx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r11,rdi - add rdx,r12 - add r11,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[80+rsp] - mov rdi,QWORD PTR[56+rsp] - - mov r12,r13 - ror r13,7 - add r11,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[16+rsp] - - add r12,QWORD PTR[72+rsp] - mov r13,rdx - add r12,rdi - mov r14,r11 - ror r13,23 - mov rdi,r8 - - xor r13,rdx - ror r14,5 - xor rdi,r9 - - mov QWORD PTR[72+rsp],r12 - xor r14,r11 - and rdi,rdx - - ror r13,4 - add r12,r10 - xor rdi,r9 - - ror r14,6 - xor r13,rdx - add r12,rdi - - mov rdi,r11 - add r12,QWORD PTR[rbp] - xor r14,r11 - - xor rdi,rax - ror r13,14 - mov r10,rax - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r10,r15 - add rcx,r12 - add r10,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[88+rsp] - mov r15,QWORD PTR[64+rsp] - - mov r12,r13 - ror r13,7 - add r10,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[24+rsp] - - add r12,QWORD PTR[80+rsp] - mov r13,rcx - add r12,r15 - mov r14,r10 - ror r13,23 - mov r15,rdx - - xor r13,rcx - ror r14,5 - xor r15,r8 - - mov QWORD PTR[80+rsp],r12 - xor r14,r10 - and r15,rcx - - ror r13,4 - add r12,r9 - xor r15,r8 - - ror r14,6 - xor r13,rcx - add r12,r15 - - mov r15,r10 - add r12,QWORD PTR[rbp] - xor r14,r10 - - xor r15,r11 - ror r13,14 - mov r9,r11 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor r9,rdi - add rbx,r12 - add r9,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[96+rsp] - mov rdi,QWORD PTR[72+rsp] - - mov r12,r13 - ror r13,7 - add r9,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[32+rsp] - - add r12,QWORD PTR[88+rsp] - mov r13,rbx - add r12,rdi - mov r14,r9 - ror r13,23 - mov rdi,rcx - - xor r13,rbx - ror r14,5 - xor rdi,rdx - - mov QWORD PTR[88+rsp],r12 - xor r14,r9 - and rdi,rbx - - ror r13,4 - add r12,r8 - xor rdi,rdx - - ror r14,6 - xor r13,rbx - add r12,rdi - - mov rdi,r9 - add r12,QWORD PTR[rbp] - xor r14,r9 - - xor rdi,r10 - ror r13,14 - mov r8,r10 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor r8,r15 - add rax,r12 - add r8,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[104+rsp] - mov r15,QWORD PTR[80+rsp] - - mov r12,r13 - ror r13,7 - add r8,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[40+rsp] - - add r12,QWORD PTR[96+rsp] - mov r13,rax - add r12,r15 - mov r14,r8 - ror r13,23 - mov r15,rbx - - xor r13,rax - ror r14,5 - xor r15,rcx - - mov QWORD PTR[96+rsp],r12 - xor r14,r8 - and r15,rax - - ror r13,4 - add r12,rdx - xor r15,rcx - - ror r14,6 - xor r13,rax - add r12,r15 - - mov r15,r8 - add r12,QWORD PTR[rbp] - xor r14,r8 - - xor r15,r9 - ror r13,14 - mov rdx,r9 - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rdx,rdi - add r11,r12 - add rdx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[112+rsp] - mov rdi,QWORD PTR[88+rsp] - - mov r12,r13 - ror r13,7 - add rdx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[48+rsp] - - add r12,QWORD PTR[104+rsp] - mov r13,r11 - add r12,rdi - mov r14,rdx - ror r13,23 - mov rdi,rax - - xor r13,r11 - ror r14,5 - xor rdi,rbx - - mov QWORD PTR[104+rsp],r12 - xor r14,rdx - and rdi,r11 - - ror r13,4 - add r12,rcx - xor rdi,rbx - - ror r14,6 - xor r13,r11 - add r12,rdi - - mov rdi,rdx - add r12,QWORD PTR[rbp] - xor r14,rdx - - xor rdi,r8 - ror r13,14 - mov rcx,r8 - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rcx,r15 - add r10,r12 - add rcx,r12 - - lea rbp,QWORD PTR[24+rbp] - mov r13,QWORD PTR[120+rsp] - mov r15,QWORD PTR[96+rsp] - - mov r12,r13 - ror r13,7 - add rcx,r14 - mov r14,r15 - ror r15,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor r15,r14 - shr r14,6 - - ror r15,19 - xor r12,r13 - xor r15,r14 - add r12,QWORD PTR[56+rsp] - - add r12,QWORD PTR[112+rsp] - mov r13,r10 - add r12,r15 - mov r14,rcx - ror r13,23 - mov r15,r11 - - xor r13,r10 - ror r14,5 - xor r15,rax - - mov QWORD PTR[112+rsp],r12 - xor r14,rcx - and r15,r10 - - ror r13,4 - add r12,rbx - xor r15,rax - - ror r14,6 - xor r13,r10 - add r12,r15 - - mov r15,rcx - add r12,QWORD PTR[rbp] - xor r14,rcx - - xor r15,rdx - ror r13,14 - mov rbx,rdx - - and rdi,r15 - ror r14,28 - add r12,r13 - - xor rbx,rdi - add r9,r12 - add rbx,r12 - - lea rbp,QWORD PTR[8+rbp] - mov r13,QWORD PTR[rsp] - mov rdi,QWORD PTR[104+rsp] - - mov r12,r13 - ror r13,7 - add rbx,r14 - mov r14,rdi - ror rdi,42 - - xor r13,r12 - shr r12,7 - ror r13,1 - xor rdi,r14 - shr r14,6 - - ror rdi,19 - xor r12,r13 - xor rdi,r14 - add r12,QWORD PTR[64+rsp] - - add r12,QWORD PTR[120+rsp] - mov r13,r9 - add r12,rdi - mov r14,rbx - ror r13,23 - mov rdi,r10 - - xor r13,r9 - ror r14,5 - xor rdi,r11 - - mov QWORD PTR[120+rsp],r12 - xor r14,rbx - and rdi,r9 - - ror r13,4 - add r12,rax - xor rdi,r11 - - ror r14,6 - xor r13,r9 - add r12,rdi - - mov rdi,rbx - add r12,QWORD PTR[rbp] - xor r14,rbx - - xor rdi,rcx - ror r13,14 - mov rax,rcx - - and r15,rdi - ror r14,28 - add r12,r13 - - xor rax,r15 - add r8,r12 - add rax,r12 - - lea rbp,QWORD PTR[24+rbp] - cmp BYTE PTR[7+rbp],0 - jnz $L$rounds_16_xx - - mov rdi,QWORD PTR[((128+0))+rsp] - add rax,r14 - lea rsi,QWORD PTR[128+rsi] - - add rax,QWORD PTR[rdi] - add rbx,QWORD PTR[8+rdi] - add rcx,QWORD PTR[16+rdi] - add rdx,QWORD PTR[24+rdi] - add r8,QWORD PTR[32+rdi] - add r9,QWORD PTR[40+rdi] - add r10,QWORD PTR[48+rdi] - add r11,QWORD PTR[56+rdi] - - cmp rsi,QWORD PTR[((128+16))+rsp] - - mov QWORD PTR[rdi],rax - mov QWORD PTR[8+rdi],rbx - mov QWORD PTR[16+rdi],rcx - mov QWORD PTR[24+rdi],rdx - mov QWORD PTR[32+rdi],r8 - mov QWORD PTR[40+rdi],r9 - mov QWORD PTR[48+rdi],r10 - mov QWORD PTR[56+rdi],r11 - jb $L$loop - - mov rsi,QWORD PTR[((128+24))+rsp] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_sha512_block_data_order:: -sha512_block_data_order ENDP -ALIGN 64 - -K512:: - DQ 0428a2f98d728ae22h,07137449123ef65cdh - DQ 0428a2f98d728ae22h,07137449123ef65cdh - DQ 0b5c0fbcfec4d3b2fh,0e9b5dba58189dbbch - DQ 0b5c0fbcfec4d3b2fh,0e9b5dba58189dbbch - DQ 03956c25bf348b538h,059f111f1b605d019h - DQ 03956c25bf348b538h,059f111f1b605d019h - DQ 0923f82a4af194f9bh,0ab1c5ed5da6d8118h - DQ 0923f82a4af194f9bh,0ab1c5ed5da6d8118h - DQ 0d807aa98a3030242h,012835b0145706fbeh - DQ 0d807aa98a3030242h,012835b0145706fbeh - DQ 0243185be4ee4b28ch,0550c7dc3d5ffb4e2h - DQ 0243185be4ee4b28ch,0550c7dc3d5ffb4e2h - DQ 072be5d74f27b896fh,080deb1fe3b1696b1h - DQ 072be5d74f27b896fh,080deb1fe3b1696b1h - DQ 09bdc06a725c71235h,0c19bf174cf692694h - DQ 09bdc06a725c71235h,0c19bf174cf692694h - DQ 0e49b69c19ef14ad2h,0efbe4786384f25e3h - DQ 0e49b69c19ef14ad2h,0efbe4786384f25e3h - DQ 00fc19dc68b8cd5b5h,0240ca1cc77ac9c65h - DQ 00fc19dc68b8cd5b5h,0240ca1cc77ac9c65h - DQ 02de92c6f592b0275h,04a7484aa6ea6e483h - DQ 02de92c6f592b0275h,04a7484aa6ea6e483h - DQ 05cb0a9dcbd41fbd4h,076f988da831153b5h - DQ 05cb0a9dcbd41fbd4h,076f988da831153b5h - DQ 0983e5152ee66dfabh,0a831c66d2db43210h - DQ 0983e5152ee66dfabh,0a831c66d2db43210h - DQ 0b00327c898fb213fh,0bf597fc7beef0ee4h - DQ 0b00327c898fb213fh,0bf597fc7beef0ee4h - DQ 0c6e00bf33da88fc2h,0d5a79147930aa725h - DQ 0c6e00bf33da88fc2h,0d5a79147930aa725h - DQ 006ca6351e003826fh,0142929670a0e6e70h - DQ 006ca6351e003826fh,0142929670a0e6e70h - DQ 027b70a8546d22ffch,02e1b21385c26c926h - DQ 027b70a8546d22ffch,02e1b21385c26c926h - DQ 04d2c6dfc5ac42aedh,053380d139d95b3dfh - DQ 04d2c6dfc5ac42aedh,053380d139d95b3dfh - DQ 0650a73548baf63deh,0766a0abb3c77b2a8h - DQ 0650a73548baf63deh,0766a0abb3c77b2a8h - DQ 081c2c92e47edaee6h,092722c851482353bh - DQ 081c2c92e47edaee6h,092722c851482353bh - DQ 0a2bfe8a14cf10364h,0a81a664bbc423001h - DQ 0a2bfe8a14cf10364h,0a81a664bbc423001h - DQ 0c24b8b70d0f89791h,0c76c51a30654be30h - DQ 0c24b8b70d0f89791h,0c76c51a30654be30h - DQ 0d192e819d6ef5218h,0d69906245565a910h - DQ 0d192e819d6ef5218h,0d69906245565a910h - DQ 0f40e35855771202ah,0106aa07032bbd1b8h - DQ 0f40e35855771202ah,0106aa07032bbd1b8h - DQ 019a4c116b8d2d0c8h,01e376c085141ab53h - DQ 019a4c116b8d2d0c8h,01e376c085141ab53h - DQ 02748774cdf8eeb99h,034b0bcb5e19b48a8h - DQ 02748774cdf8eeb99h,034b0bcb5e19b48a8h - DQ 0391c0cb3c5c95a63h,04ed8aa4ae3418acbh - DQ 0391c0cb3c5c95a63h,04ed8aa4ae3418acbh - DQ 05b9cca4f7763e373h,0682e6ff3d6b2b8a3h - DQ 05b9cca4f7763e373h,0682e6ff3d6b2b8a3h - DQ 0748f82ee5defb2fch,078a5636f43172f60h - DQ 0748f82ee5defb2fch,078a5636f43172f60h - DQ 084c87814a1f0ab72h,08cc702081a6439ech - DQ 084c87814a1f0ab72h,08cc702081a6439ech - DQ 090befffa23631e28h,0a4506cebde82bde9h - DQ 090befffa23631e28h,0a4506cebde82bde9h - DQ 0bef9a3f7b2c67915h,0c67178f2e372532bh - DQ 0bef9a3f7b2c67915h,0c67178f2e372532bh - DQ 0ca273eceea26619ch,0d186b8c721c0c207h - DQ 0ca273eceea26619ch,0d186b8c721c0c207h - DQ 0eada7dd6cde0eb1eh,0f57d4f7fee6ed178h - DQ 0eada7dd6cde0eb1eh,0f57d4f7fee6ed178h - DQ 006f067aa72176fbah,00a637dc5a2c898a6h - DQ 006f067aa72176fbah,00a637dc5a2c898a6h - DQ 0113f9804bef90daeh,01b710b35131c471bh - DQ 0113f9804bef90daeh,01b710b35131c471bh - DQ 028db77f523047d84h,032caab7b40c72493h - DQ 028db77f523047d84h,032caab7b40c72493h - DQ 03c9ebe0a15c9bebch,0431d67c49c100d4ch - DQ 03c9ebe0a15c9bebch,0431d67c49c100d4ch - DQ 04cc5d4becb3e42b6h,0597f299cfc657e2ah - DQ 04cc5d4becb3e42b6h,0597f299cfc657e2ah - DQ 05fcb6fab3ad6faech,06c44198c4a475817h - DQ 05fcb6fab3ad6faech,06c44198c4a475817h - - DQ 00001020304050607h,008090a0b0c0d0e0fh - DQ 00001020304050607h,008090a0b0c0d0e0fh -DB 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54 -DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - mov rsi,QWORD PTR[8+r9] - mov r11,QWORD PTR[56+r9] - - mov r10d,DWORD PTR[r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - mov r10d,DWORD PTR[4+r11] - lea r10,QWORD PTR[r10*1+rsi] - cmp rbx,r10 - jae $L$in_prologue - mov rsi,rax - mov rax,QWORD PTR[((128+24))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jb $L$in_prologue - - lea rsi,QWORD PTR[((128+32))+rsi] - lea rdi,QWORD PTR[512+r8] - mov ecx,12 - DD 0a548f3fch - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_sha512_block_data_order - DD imagerel $L$SEH_end_sha512_block_data_order - DD imagerel $L$SEH_info_sha512_block_data_order -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_sha512_block_data_order:: -DB 9,0,0,0 - DD imagerel se_handler - DD imagerel $L$prologue,imagerel $L$epilogue - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/whrlpool/wp-x86_64.asm b/deps/openssl/asm_obsolete/x64-win32-masm/whrlpool/wp-x86_64.asm deleted file mode 100644 index fa5bfbc7b20cd6..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/whrlpool/wp-x86_64.asm +++ /dev/null @@ -1,974 +0,0 @@ -OPTION DOTNAME -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC whirlpool_block - -ALIGN 16 -whirlpool_block PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_whirlpool_block:: - mov rdi,rcx - mov rsi,rdx - mov rdx,r8 - - - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - - mov r11,rsp - sub rsp,128+40 - and rsp,-64 - - lea r10,QWORD PTR[128+rsp] - mov QWORD PTR[r10],rdi - mov QWORD PTR[8+r10],rsi - mov QWORD PTR[16+r10],rdx - mov QWORD PTR[32+r10],r11 -$L$prologue:: - - mov rbx,r10 - lea rbp,QWORD PTR[$L$table] - - xor rcx,rcx - xor rdx,rdx - mov r8,QWORD PTR[rdi] - mov r9,QWORD PTR[8+rdi] - mov r10,QWORD PTR[16+rdi] - mov r11,QWORD PTR[24+rdi] - mov r12,QWORD PTR[32+rdi] - mov r13,QWORD PTR[40+rdi] - mov r14,QWORD PTR[48+rdi] - mov r15,QWORD PTR[56+rdi] -$L$outerloop:: - mov QWORD PTR[rsp],r8 - mov QWORD PTR[8+rsp],r9 - mov QWORD PTR[16+rsp],r10 - mov QWORD PTR[24+rsp],r11 - mov QWORD PTR[32+rsp],r12 - mov QWORD PTR[40+rsp],r13 - mov QWORD PTR[48+rsp],r14 - mov QWORD PTR[56+rsp],r15 - xor r8,QWORD PTR[rsi] - xor r9,QWORD PTR[8+rsi] - xor r10,QWORD PTR[16+rsi] - xor r11,QWORD PTR[24+rsi] - xor r12,QWORD PTR[32+rsi] - xor r13,QWORD PTR[40+rsi] - xor r14,QWORD PTR[48+rsi] - xor r15,QWORD PTR[56+rsi] - mov QWORD PTR[((64+0))+rsp],r8 - mov QWORD PTR[((64+8))+rsp],r9 - mov QWORD PTR[((64+16))+rsp],r10 - mov QWORD PTR[((64+24))+rsp],r11 - mov QWORD PTR[((64+32))+rsp],r12 - mov QWORD PTR[((64+40))+rsp],r13 - mov QWORD PTR[((64+48))+rsp],r14 - mov QWORD PTR[((64+56))+rsp],r15 - xor rsi,rsi - mov QWORD PTR[24+rbx],rsi - jmp $L$round -ALIGN 16 -$L$round:: - mov r8,QWORD PTR[4096+rsi*8+rbp] - mov eax,DWORD PTR[rsp] - mov ebx,DWORD PTR[4+rsp] - movzx ecx,al - movzx edx,ah - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[rsi*8+rbp] - mov r9,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((0+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - mov r10,QWORD PTR[6+rsi*8+rbp] - mov r11,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - mov r12,QWORD PTR[4+rsi*8+rbp] - mov r13,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((0+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - mov r14,QWORD PTR[2+rsi*8+rbp] - mov r15,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[rsi*8+rbp] - xor r10,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((8+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[6+rsi*8+rbp] - xor r12,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[4+rsi*8+rbp] - xor r14,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((8+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[2+rsi*8+rbp] - xor r8,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[rsi*8+rbp] - xor r11,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((16+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[6+rsi*8+rbp] - xor r13,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[4+rsi*8+rbp] - xor r15,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((16+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[2+rsi*8+rbp] - xor r9,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[rsi*8+rbp] - xor r12,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((24+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[6+rsi*8+rbp] - xor r14,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[4+rsi*8+rbp] - xor r8,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((24+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[2+rsi*8+rbp] - xor r10,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[rsi*8+rbp] - xor r13,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((32+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[6+rsi*8+rbp] - xor r15,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[4+rsi*8+rbp] - xor r9,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((32+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[2+rsi*8+rbp] - xor r11,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[rsi*8+rbp] - xor r14,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((40+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[6+rsi*8+rbp] - xor r8,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[4+rsi*8+rbp] - xor r10,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((40+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[2+rsi*8+rbp] - xor r12,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[rsi*8+rbp] - xor r15,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((48+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[6+rsi*8+rbp] - xor r9,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[4+rsi*8+rbp] - xor r11,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((48+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[2+rsi*8+rbp] - xor r13,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[rsi*8+rbp] - xor r8,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((56+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[6+rsi*8+rbp] - xor r10,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[4+rsi*8+rbp] - xor r12,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((56+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[2+rsi*8+rbp] - xor r14,QWORD PTR[1+rdi*8+rbp] - mov QWORD PTR[rsp],r8 - mov QWORD PTR[8+rsp],r9 - mov QWORD PTR[16+rsp],r10 - mov QWORD PTR[24+rsp],r11 - mov QWORD PTR[32+rsp],r12 - mov QWORD PTR[40+rsp],r13 - mov QWORD PTR[48+rsp],r14 - mov QWORD PTR[56+rsp],r15 - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[rsi*8+rbp] - xor r9,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+0+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[6+rsi*8+rbp] - xor r11,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[4+rsi*8+rbp] - xor r13,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+0+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[2+rsi*8+rbp] - xor r15,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[rsi*8+rbp] - xor r10,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+8+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[6+rsi*8+rbp] - xor r12,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[4+rsi*8+rbp] - xor r14,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+8+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[2+rsi*8+rbp] - xor r8,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[rsi*8+rbp] - xor r11,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+16+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r12,QWORD PTR[6+rsi*8+rbp] - xor r13,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[4+rsi*8+rbp] - xor r15,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+16+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r8,QWORD PTR[2+rsi*8+rbp] - xor r9,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[rsi*8+rbp] - xor r12,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+24+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r13,QWORD PTR[6+rsi*8+rbp] - xor r14,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[4+rsi*8+rbp] - xor r8,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+24+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r9,QWORD PTR[2+rsi*8+rbp] - xor r10,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[rsi*8+rbp] - xor r13,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+32+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r14,QWORD PTR[6+rsi*8+rbp] - xor r15,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[4+rsi*8+rbp] - xor r9,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+32+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r10,QWORD PTR[2+rsi*8+rbp] - xor r11,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[rsi*8+rbp] - xor r14,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+40+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r15,QWORD PTR[6+rsi*8+rbp] - xor r8,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[4+rsi*8+rbp] - xor r10,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+40+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r11,QWORD PTR[2+rsi*8+rbp] - xor r12,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r14,QWORD PTR[rsi*8+rbp] - xor r15,QWORD PTR[7+rdi*8+rbp] - mov eax,DWORD PTR[((64+48+8))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r8,QWORD PTR[6+rsi*8+rbp] - xor r9,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r10,QWORD PTR[4+rsi*8+rbp] - xor r11,QWORD PTR[3+rdi*8+rbp] - mov ebx,DWORD PTR[((64+48+8+4))+rsp] - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r12,QWORD PTR[2+rsi*8+rbp] - xor r13,QWORD PTR[1+rdi*8+rbp] - shr eax,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r15,QWORD PTR[rsi*8+rbp] - xor r8,QWORD PTR[7+rdi*8+rbp] - - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r9,QWORD PTR[6+rsi*8+rbp] - xor r10,QWORD PTR[5+rdi*8+rbp] - shr ebx,16 - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,bl - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,bh - xor r11,QWORD PTR[4+rsi*8+rbp] - xor r12,QWORD PTR[3+rdi*8+rbp] - - lea rsi,QWORD PTR[rcx*1+rcx] - movzx ecx,al - lea rdi,QWORD PTR[rdx*1+rdx] - movzx edx,ah - xor r13,QWORD PTR[2+rsi*8+rbp] - xor r14,QWORD PTR[1+rdi*8+rbp] - lea rbx,QWORD PTR[128+rsp] - mov rsi,QWORD PTR[24+rbx] - add rsi,1 - cmp rsi,10 - je $L$roundsdone - - mov QWORD PTR[24+rbx],rsi - mov QWORD PTR[((64+0))+rsp],r8 - mov QWORD PTR[((64+8))+rsp],r9 - mov QWORD PTR[((64+16))+rsp],r10 - mov QWORD PTR[((64+24))+rsp],r11 - mov QWORD PTR[((64+32))+rsp],r12 - mov QWORD PTR[((64+40))+rsp],r13 - mov QWORD PTR[((64+48))+rsp],r14 - mov QWORD PTR[((64+56))+rsp],r15 - jmp $L$round -ALIGN 16 -$L$roundsdone:: - mov rdi,QWORD PTR[rbx] - mov rsi,QWORD PTR[8+rbx] - mov rax,QWORD PTR[16+rbx] - xor r8,QWORD PTR[rsi] - xor r9,QWORD PTR[8+rsi] - xor r10,QWORD PTR[16+rsi] - xor r11,QWORD PTR[24+rsi] - xor r12,QWORD PTR[32+rsi] - xor r13,QWORD PTR[40+rsi] - xor r14,QWORD PTR[48+rsi] - xor r15,QWORD PTR[56+rsi] - xor r8,QWORD PTR[rdi] - xor r9,QWORD PTR[8+rdi] - xor r10,QWORD PTR[16+rdi] - xor r11,QWORD PTR[24+rdi] - xor r12,QWORD PTR[32+rdi] - xor r13,QWORD PTR[40+rdi] - xor r14,QWORD PTR[48+rdi] - xor r15,QWORD PTR[56+rdi] - mov QWORD PTR[rdi],r8 - mov QWORD PTR[8+rdi],r9 - mov QWORD PTR[16+rdi],r10 - mov QWORD PTR[24+rdi],r11 - mov QWORD PTR[32+rdi],r12 - mov QWORD PTR[40+rdi],r13 - mov QWORD PTR[48+rdi],r14 - mov QWORD PTR[56+rdi],r15 - lea rsi,QWORD PTR[64+rsi] - sub rax,1 - jz $L$alldone - mov QWORD PTR[8+rbx],rsi - mov QWORD PTR[16+rbx],rax - jmp $L$outerloop -$L$alldone:: - mov rsi,QWORD PTR[32+rbx] - mov r15,QWORD PTR[rsi] - mov r14,QWORD PTR[8+rsi] - mov r13,QWORD PTR[16+rsi] - mov r12,QWORD PTR[24+rsi] - mov rbp,QWORD PTR[32+rsi] - mov rbx,QWORD PTR[40+rsi] - lea rsp,QWORD PTR[48+rsi] -$L$epilogue:: - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_whirlpool_block:: -whirlpool_block ENDP - -ALIGN 64 - -$L$table:: -DB 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216 -DB 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38 -DB 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184 -DB 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251 -DB 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203 -DB 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17 -DB 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9 -DB 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13 -DB 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155 -DB 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255 -DB 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12 -DB 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14 -DB 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150 -DB 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48 -DB 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109 -DB 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248 -DB 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71 -DB 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53 -DB 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55 -DB 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138 -DB 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210 -DB 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108 -DB 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132 -DB 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128 -DB 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245 -DB 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179 -DB 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33 -DB 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156 -DB 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67 -DB 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41 -DB 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93 -DB 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213 -DB 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189 -DB 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232 -DB 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146 -DB 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158 -DB 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19 -DB 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35 -DB 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32 -DB 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68 -DB 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162 -DB 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207 -DB 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124 -DB 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90 -DB 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80 -DB 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201 -DB 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20 -DB 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217 -DB 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60 -DB 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143 -DB 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144 -DB 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7 -DB 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221 -DB 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211 -DB 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45 -DB 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120 -DB 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151 -DB 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2 -DB 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115 -DB 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167 -DB 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246 -DB 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178 -DB 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73 -DB 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86 -DB 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112 -DB 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205 -DB 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187 -DB 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113 -DB 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123 -DB 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175 -DB 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69 -DB 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26 -DB 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212 -DB 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88 -DB 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46 -DB 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63 -DB 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172 -DB 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176 -DB 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239 -DB 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182 -DB 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92 -DB 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18 -DB 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147 -DB 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222 -DB 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198 -DB 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209 -DB 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59 -DB 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95 -DB 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49 -DB 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168 -DB 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185 -DB 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188 -DB 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62 -DB 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11 -DB 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191 -DB 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89 -DB 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242 -DB 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119 -DB 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51 -DB 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244 -DB 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39 -DB 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235 -DB 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137 -DB 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50 -DB 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84 -DB 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141 -DB 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100 -DB 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157 -DB 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61 -DB 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15 -DB 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202 -DB 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183 -DB 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125 -DB 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206 -DB 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127 -DB 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47 -DB 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99 -DB 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42 -DB 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204 -DB 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130 -DB 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122 -DB 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72 -DB 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149 -DB 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223 -DB 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77 -DB 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192 -DB 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145 -DB 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200 -DB 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91 -DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -DB 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249 -DB 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110 -DB 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225 -DB 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230 -DB 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40 -DB 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195 -DB 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116 -DB 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190 -DB 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29 -DB 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234 -DB 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87 -DB 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56 -DB 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173 -DB 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196 -DB 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218 -DB 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199 -DB 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219 -DB 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233 -DB 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106 -DB 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3 -DB 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74 -DB 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142 -DB 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96 -DB 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252 -DB 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70 -DB 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31 -DB 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118 -DB 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250 -DB 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54 -DB 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174 -DB 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75 -DB 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133 -DB 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126 -DB 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231 -DB 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85 -DB 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58 -DB 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129 -DB 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82 -DB 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98 -DB 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163 -DB 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16 -DB 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171 -DB 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208 -DB 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197 -DB 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236 -DB 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22 -DB 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148 -DB 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159 -DB 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229 -DB 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152 -DB 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23 -DB 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228 -DB 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161 -DB 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78 -DB 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66 -DB 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52 -DB 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8 -DB 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238 -DB 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97 -DB 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177 -DB 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79 -DB 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36 -DB 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227 -DB 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37 -DB 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34 -DB 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101 -DB 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121 -DB 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105 -DB 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169 -DB 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25 -DB 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254 -DB 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154 -DB 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240 -DB 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153 -DB 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131 -DB 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4 -DB 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102 -DB 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224 -DB 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193 -DB 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253 -DB 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64 -DB 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28 -DB 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24 -DB 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139 -DB 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81 -DB 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5 -DB 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140 -DB 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57 -DB 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170 -DB 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27 -DB 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220 -DB 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94 -DB 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160 -DB 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136 -DB 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103 -DB 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10 -DB 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135 -DB 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241 -DB 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114 -DB 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83 -DB 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1 -DB 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43 -DB 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164 -DB 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243 -DB 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21 -DB 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76 -DB 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165 -DB 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181 -DB 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180 -DB 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186 -DB 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166 -DB 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247 -DB 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6 -DB 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65 -DB 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215 -DB 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111 -DB 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30 -DB 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214 -DB 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226 -DB 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104 -DB 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44 -DB 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237 -DB 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117 -DB 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134 -DB 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107 -DB 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194 -DB 24,35,198,232,135,184,1,79 -DB 54,166,210,245,121,111,145,82 -DB 96,188,155,142,163,12,123,53 -DB 29,224,215,194,46,75,254,87 -DB 21,119,55,229,159,240,74,218 -DB 88,201,41,10,177,160,107,133 -DB 189,93,16,244,203,62,5,103 -DB 228,39,65,139,167,125,149,216 -DB 251,238,124,102,221,23,71,158 -DB 202,45,191,7,173,90,131,51 -EXTERN __imp_RtlVirtualUnwind:NEAR - -ALIGN 16 -se_handler PROC PRIVATE - push rsi - push rdi - push rbx - push rbp - push r12 - push r13 - push r14 - push r15 - pushfq - sub rsp,64 - - mov rax,QWORD PTR[120+r8] - mov rbx,QWORD PTR[248+r8] - - lea r10,QWORD PTR[$L$prologue] - cmp rbx,r10 - jb $L$in_prologue - - mov rax,QWORD PTR[152+r8] - - lea r10,QWORD PTR[$L$epilogue] - cmp rbx,r10 - jae $L$in_prologue - - mov rax,QWORD PTR[((128+32))+rax] - lea rax,QWORD PTR[48+rax] - - mov rbx,QWORD PTR[((-8))+rax] - mov rbp,QWORD PTR[((-16))+rax] - mov r12,QWORD PTR[((-24))+rax] - mov r13,QWORD PTR[((-32))+rax] - mov r14,QWORD PTR[((-40))+rax] - mov r15,QWORD PTR[((-48))+rax] - mov QWORD PTR[144+r8],rbx - mov QWORD PTR[160+r8],rbp - mov QWORD PTR[216+r8],r12 - mov QWORD PTR[224+r8],r13 - mov QWORD PTR[232+r8],r14 - mov QWORD PTR[240+r8],r15 - -$L$in_prologue:: - mov rdi,QWORD PTR[8+rax] - mov rsi,QWORD PTR[16+rax] - mov QWORD PTR[152+r8],rax - mov QWORD PTR[168+r8],rsi - mov QWORD PTR[176+r8],rdi - - mov rdi,QWORD PTR[40+r9] - mov rsi,r8 - mov ecx,154 - DD 0a548f3fch - - mov rsi,r9 - xor rcx,rcx - mov rdx,QWORD PTR[8+rsi] - mov r8,QWORD PTR[rsi] - mov r9,QWORD PTR[16+rsi] - mov r10,QWORD PTR[40+rsi] - lea r11,QWORD PTR[56+rsi] - lea r12,QWORD PTR[24+rsi] - mov QWORD PTR[32+rsp],r10 - mov QWORD PTR[40+rsp],r11 - mov QWORD PTR[48+rsp],r12 - mov QWORD PTR[56+rsp],rcx - call QWORD PTR[__imp_RtlVirtualUnwind] - - mov eax,1 - add rsp,64 - popfq - pop r15 - pop r14 - pop r13 - pop r12 - pop rbp - pop rbx - pop rdi - pop rsi - DB 0F3h,0C3h ;repret -se_handler ENDP - -.text$ ENDS -.pdata SEGMENT READONLY ALIGN(4) -ALIGN 4 - DD imagerel $L$SEH_begin_whirlpool_block - DD imagerel $L$SEH_end_whirlpool_block - DD imagerel $L$SEH_info_whirlpool_block - -.pdata ENDS -.xdata SEGMENT READONLY ALIGN(8) -ALIGN 8 -$L$SEH_info_whirlpool_block:: -DB 9,0,0,0 - DD imagerel se_handler - -.xdata ENDS -END diff --git a/deps/openssl/asm_obsolete/x64-win32-masm/x86_64cpuid.asm b/deps/openssl/asm_obsolete/x64-win32-masm/x86_64cpuid.asm deleted file mode 100644 index 69532e09fbece5..00000000000000 --- a/deps/openssl/asm_obsolete/x64-win32-masm/x86_64cpuid.asm +++ /dev/null @@ -1,280 +0,0 @@ -OPTION DOTNAME -EXTERN OPENSSL_cpuid_setup:NEAR - -.CRT$XCU SEGMENT READONLY ALIGN(8) - DQ OPENSSL_cpuid_setup - - -.CRT$XCU ENDS -_DATA SEGMENT -COMM OPENSSL_ia32cap_P:DWORD:4 - -_DATA ENDS -.text$ SEGMENT ALIGN(256) 'CODE' - -PUBLIC OPENSSL_atomic_add - -ALIGN 16 -OPENSSL_atomic_add PROC PUBLIC - mov eax,DWORD PTR[rcx] -$L$spin:: lea r8,QWORD PTR[rax*1+rdx] -DB 0f0h - cmpxchg DWORD PTR[rcx],r8d - jne $L$spin - mov eax,r8d -DB 048h,098h - DB 0F3h,0C3h ;repret -OPENSSL_atomic_add ENDP - -PUBLIC OPENSSL_rdtsc - -ALIGN 16 -OPENSSL_rdtsc PROC PUBLIC - rdtsc - shl rdx,32 - or rax,rdx - DB 0F3h,0C3h ;repret -OPENSSL_rdtsc ENDP - -PUBLIC OPENSSL_ia32_cpuid - -ALIGN 16 -OPENSSL_ia32_cpuid PROC PUBLIC - mov QWORD PTR[8+rsp],rdi ;WIN64 prologue - mov QWORD PTR[16+rsp],rsi - mov rax,rsp -$L$SEH_begin_OPENSSL_ia32_cpuid:: - mov rdi,rcx - - - mov r8,rbx - - xor eax,eax - mov DWORD PTR[8+rdi],eax - cpuid - mov r11d,eax - - xor eax,eax - cmp ebx,0756e6547h - setne al - mov r9d,eax - cmp edx,049656e69h - setne al - or r9d,eax - cmp ecx,06c65746eh - setne al - or r9d,eax - jz $L$intel - - cmp ebx,068747541h - setne al - mov r10d,eax - cmp edx,069746E65h - setne al - or r10d,eax - cmp ecx,0444D4163h - setne al - or r10d,eax - jnz $L$intel - - - mov eax,080000000h - cpuid - cmp eax,080000001h - jb $L$intel - mov r10d,eax - mov eax,080000001h - cpuid - or r9d,ecx - and r9d,000000801h - - cmp r10d,080000008h - jb $L$intel - - mov eax,080000008h - cpuid - movzx r10,cl - inc r10 - - mov eax,1 - cpuid - bt edx,28 - jnc $L$generic - shr ebx,16 - cmp bl,r10b - ja $L$generic - and edx,0efffffffh - jmp $L$generic - -$L$intel:: - cmp r11d,4 - mov r10d,-1 - jb $L$nocacheinfo - - mov eax,4 - mov ecx,0 - cpuid - mov r10d,eax - shr r10d,14 - and r10d,0fffh - -$L$nocacheinfo:: - mov eax,1 - cpuid - and edx,0bfefffffh - cmp r9d,0 - jne $L$notintel - or edx,040000000h - and ah,15 - cmp ah,15 - jne $L$notP4 - or edx,000100000h -$L$notP4:: - cmp ah,6 - jne $L$notintel - and eax,00fff0ff0h - cmp eax,000050670h - je $L$knights - cmp eax,000080650h - jne $L$notintel -$L$knights:: - and ecx,0fbffffffh - -$L$notintel:: - bt edx,28 - jnc $L$generic - and edx,0efffffffh - cmp r10d,0 - je $L$generic - - or edx,010000000h - shr ebx,16 - cmp bl,1 - ja $L$generic - and edx,0efffffffh -$L$generic:: - and r9d,000000800h - and ecx,0fffff7ffh - or r9d,ecx - - mov r10d,edx - - cmp r11d,7 - jb $L$no_extended_info - mov eax,7 - xor ecx,ecx - cpuid - bt r9d,26 - jc $L$notknights - and ebx,0fff7ffffh -$L$notknights:: - mov DWORD PTR[8+rdi],ebx -$L$no_extended_info:: - - bt r9d,27 - jnc $L$clear_avx - xor ecx,ecx -DB 00fh,001h,0d0h - and eax,6 - cmp eax,6 - je $L$done -$L$clear_avx:: - mov eax,0efffe7ffh - and r9d,eax - and DWORD PTR[8+rdi],0ffffffdfh -$L$done:: - shl r9,32 - mov eax,r10d - mov rbx,r8 - or rax,r9 - mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue - mov rsi,QWORD PTR[16+rsp] - DB 0F3h,0C3h ;repret -$L$SEH_end_OPENSSL_ia32_cpuid:: -OPENSSL_ia32_cpuid ENDP - -PUBLIC OPENSSL_cleanse - -ALIGN 16 -OPENSSL_cleanse PROC PUBLIC - xor rax,rax - cmp rdx,15 - jae $L$ot - cmp rdx,0 - je $L$ret -$L$ittle:: - mov BYTE PTR[rcx],al - sub rdx,1 - lea rcx,QWORD PTR[1+rcx] - jnz $L$ittle -$L$ret:: - DB 0F3h,0C3h ;repret -ALIGN 16 -$L$ot:: - test rcx,7 - jz $L$aligned - mov BYTE PTR[rcx],al - lea rdx,QWORD PTR[((-1))+rdx] - lea rcx,QWORD PTR[1+rcx] - jmp $L$ot -$L$aligned:: - mov QWORD PTR[rcx],rax - lea rdx,QWORD PTR[((-8))+rdx] - test rdx,-8 - lea rcx,QWORD PTR[8+rcx] - jnz $L$aligned - cmp rdx,0 - jne $L$ittle - DB 0F3h,0C3h ;repret -OPENSSL_cleanse ENDP -PUBLIC OPENSSL_wipe_cpu - -ALIGN 16 -OPENSSL_wipe_cpu PROC PUBLIC - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - xor rcx,rcx - xor rdx,rdx - xor r8,r8 - xor r9,r9 - xor r10,r10 - xor r11,r11 - lea rax,QWORD PTR[8+rsp] - DB 0F3h,0C3h ;repret -OPENSSL_wipe_cpu ENDP -PUBLIC OPENSSL_ia32_rdrand - -ALIGN 16 -OPENSSL_ia32_rdrand PROC PUBLIC - mov ecx,8 -$L$oop_rdrand:: -DB 72,15,199,240 - jc $L$break_rdrand - loop $L$oop_rdrand -$L$break_rdrand:: - cmp rax,0 - cmove rax,rcx - DB 0F3h,0C3h ;repret -OPENSSL_ia32_rdrand ENDP - -PUBLIC OPENSSL_ia32_rdseed - -ALIGN 16 -OPENSSL_ia32_rdseed PROC PUBLIC - mov ecx,8 -$L$oop_rdseed:: -DB 72,15,199,248 - jc $L$break_rdseed - loop $L$oop_rdseed -$L$break_rdseed:: - cmp rax,0 - cmove rax,rcx - DB 0F3h,0C3h ;repret -OPENSSL_ia32_rdseed ENDP - -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/aes/aes-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/aes/aes-586.s deleted file mode 100644 index 2d7c1fd09df5a9..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/aes/aes-586.s +++ /dev/null @@ -1,3244 +0,0 @@ -.file "aes-586.s" -.text -.type _x86_AES_encrypt_compact,@function -.align 16 -_x86_AES_encrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 16 -.L000loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ecx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ecx,%edi - xorl %esi,%ecx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ecx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%ecx - andl %edx,%ebp - leal (%edx,%edx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %edx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %edx,%edi - xorl %esi,%edx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%edx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%edx - andl %eax,%ebp - leal (%eax,%eax,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %eax,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %eax,%edi - xorl %esi,%eax - rorl $24,%edi - xorl %ebp,%esi - roll $24,%eax - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%eax - andl %ebx,%ebp - leal (%ebx,%ebx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ebx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ebx,%edi - xorl %esi,%ebx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ebx - xorl %edi,%esi - xorl %esi,%ebx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L000loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.size _x86_AES_encrypt_compact,.-_x86_AES_encrypt_compact -.type _sse_AES_encrypt_compact,@function -.align 16 -_sse_AES_encrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 16 -.L001loop: - pshufw $8,%mm0,%mm1 - pshufw $13,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $13,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $8,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $8,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - movd %mm2,%eax - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - movd %mm6,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $8,%esi - shrl $16,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shrl $16,%eax - movd %ecx,%mm1 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - andl $255,%eax - orl %esi,%ecx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - andl $255,%ebx - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%ecx - shll $16,%eax - movzbl -128(%ebp,%edi,1),%esi - orl %eax,%edx - shll $8,%esi - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - orl %ebx,%edx - movl 20(%esp),%edi - movd %ecx,%mm4 - movd %edx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja .L002out - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - movq %mm0,%mm1 - movq %mm4,%mm5 - pcmpgtb %mm0,%mm3 - pcmpgtb %mm4,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - pshufw $177,%mm0,%mm2 - pshufw $177,%mm4,%mm6 - paddb %mm0,%mm0 - paddb %mm4,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pshufw $177,%mm2,%mm3 - pshufw $177,%mm6,%mm7 - pxor %mm0,%mm1 - pxor %mm4,%mm5 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm3,%mm2 - movq %mm7,%mm6 - pslld $8,%mm3 - pslld $8,%mm7 - psrld $24,%mm2 - psrld $24,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - psrld $8,%mm1 - psrld $8,%mm5 - movl -128(%ebp),%eax - pslld $24,%mm3 - pslld $24,%mm7 - movl -64(%ebp),%ebx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl (%ebp),%ecx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl 64(%ebp),%edx - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp .L001loop -.align 16 -.L002out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.size _sse_AES_encrypt_compact,.-_sse_AES_encrypt_compact -.type _x86_AES_encrypt,@function -.align 16 -_x86_AES_encrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 16 -.L003loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl (%ebp,%esi,8),%esi - movzbl %ch,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movzbl %bh,%edi - xorl 1(%ebp,%edi,8),%esi - - movl 20(%esp),%edi - movl (%ebp,%edx,8),%edx - movzbl %ah,%eax - xorl 3(%ebp,%eax,8),%edx - movl 4(%esp),%eax - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - xorl 1(%ebp,%ecx,8),%edx - movl %esi,%ecx - - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L003loop - movl %eax,%esi - andl $255,%esi - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %bh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %ch,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %dh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movzbl %bh,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movl 2(%ebp,%edx,8),%edx - andl $255,%edx - movzbl %ah,%eax - movl (%ebp,%eax,8),%eax - andl $65280,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movl (%ebp,%ebx,8),%ebx - andl $16711680,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movl 2(%ebp,%ecx,8),%ecx - andl $4278190080,%ecx - xorl %ecx,%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 64 -.LAES_Te: -.long 2774754246,2774754246 -.long 2222750968,2222750968 -.long 2574743534,2574743534 -.long 2373680118,2373680118 -.long 234025727,234025727 -.long 3177933782,3177933782 -.long 2976870366,2976870366 -.long 1422247313,1422247313 -.long 1345335392,1345335392 -.long 50397442,50397442 -.long 2842126286,2842126286 -.long 2099981142,2099981142 -.long 436141799,436141799 -.long 1658312629,1658312629 -.long 3870010189,3870010189 -.long 2591454956,2591454956 -.long 1170918031,1170918031 -.long 2642575903,2642575903 -.long 1086966153,1086966153 -.long 2273148410,2273148410 -.long 368769775,368769775 -.long 3948501426,3948501426 -.long 3376891790,3376891790 -.long 200339707,200339707 -.long 3970805057,3970805057 -.long 1742001331,1742001331 -.long 4255294047,4255294047 -.long 3937382213,3937382213 -.long 3214711843,3214711843 -.long 4154762323,4154762323 -.long 2524082916,2524082916 -.long 1539358875,1539358875 -.long 3266819957,3266819957 -.long 486407649,486407649 -.long 2928907069,2928907069 -.long 1780885068,1780885068 -.long 1513502316,1513502316 -.long 1094664062,1094664062 -.long 49805301,49805301 -.long 1338821763,1338821763 -.long 1546925160,1546925160 -.long 4104496465,4104496465 -.long 887481809,887481809 -.long 150073849,150073849 -.long 2473685474,2473685474 -.long 1943591083,1943591083 -.long 1395732834,1395732834 -.long 1058346282,1058346282 -.long 201589768,201589768 -.long 1388824469,1388824469 -.long 1696801606,1696801606 -.long 1589887901,1589887901 -.long 672667696,672667696 -.long 2711000631,2711000631 -.long 251987210,251987210 -.long 3046808111,3046808111 -.long 151455502,151455502 -.long 907153956,907153956 -.long 2608889883,2608889883 -.long 1038279391,1038279391 -.long 652995533,652995533 -.long 1764173646,1764173646 -.long 3451040383,3451040383 -.long 2675275242,2675275242 -.long 453576978,453576978 -.long 2659418909,2659418909 -.long 1949051992,1949051992 -.long 773462580,773462580 -.long 756751158,756751158 -.long 2993581788,2993581788 -.long 3998898868,3998898868 -.long 4221608027,4221608027 -.long 4132590244,4132590244 -.long 1295727478,1295727478 -.long 1641469623,1641469623 -.long 3467883389,3467883389 -.long 2066295122,2066295122 -.long 1055122397,1055122397 -.long 1898917726,1898917726 -.long 2542044179,2542044179 -.long 4115878822,4115878822 -.long 1758581177,1758581177 -.long 0,0 -.long 753790401,753790401 -.long 1612718144,1612718144 -.long 536673507,536673507 -.long 3367088505,3367088505 -.long 3982187446,3982187446 -.long 3194645204,3194645204 -.long 1187761037,1187761037 -.long 3653156455,3653156455 -.long 1262041458,1262041458 -.long 3729410708,3729410708 -.long 3561770136,3561770136 -.long 3898103984,3898103984 -.long 1255133061,1255133061 -.long 1808847035,1808847035 -.long 720367557,720367557 -.long 3853167183,3853167183 -.long 385612781,385612781 -.long 3309519750,3309519750 -.long 3612167578,3612167578 -.long 1429418854,1429418854 -.long 2491778321,2491778321 -.long 3477423498,3477423498 -.long 284817897,284817897 -.long 100794884,100794884 -.long 2172616702,2172616702 -.long 4031795360,4031795360 -.long 1144798328,1144798328 -.long 3131023141,3131023141 -.long 3819481163,3819481163 -.long 4082192802,4082192802 -.long 4272137053,4272137053 -.long 3225436288,3225436288 -.long 2324664069,2324664069 -.long 2912064063,2912064063 -.long 3164445985,3164445985 -.long 1211644016,1211644016 -.long 83228145,83228145 -.long 3753688163,3753688163 -.long 3249976951,3249976951 -.long 1977277103,1977277103 -.long 1663115586,1663115586 -.long 806359072,806359072 -.long 452984805,452984805 -.long 250868733,250868733 -.long 1842533055,1842533055 -.long 1288555905,1288555905 -.long 336333848,336333848 -.long 890442534,890442534 -.long 804056259,804056259 -.long 3781124030,3781124030 -.long 2727843637,2727843637 -.long 3427026056,3427026056 -.long 957814574,957814574 -.long 1472513171,1472513171 -.long 4071073621,4071073621 -.long 2189328124,2189328124 -.long 1195195770,1195195770 -.long 2892260552,2892260552 -.long 3881655738,3881655738 -.long 723065138,723065138 -.long 2507371494,2507371494 -.long 2690670784,2690670784 -.long 2558624025,2558624025 -.long 3511635870,3511635870 -.long 2145180835,2145180835 -.long 1713513028,1713513028 -.long 2116692564,2116692564 -.long 2878378043,2878378043 -.long 2206763019,2206763019 -.long 3393603212,3393603212 -.long 703524551,703524551 -.long 3552098411,3552098411 -.long 1007948840,1007948840 -.long 2044649127,2044649127 -.long 3797835452,3797835452 -.long 487262998,487262998 -.long 1994120109,1994120109 -.long 1004593371,1004593371 -.long 1446130276,1446130276 -.long 1312438900,1312438900 -.long 503974420,503974420 -.long 3679013266,3679013266 -.long 168166924,168166924 -.long 1814307912,1814307912 -.long 3831258296,3831258296 -.long 1573044895,1573044895 -.long 1859376061,1859376061 -.long 4021070915,4021070915 -.long 2791465668,2791465668 -.long 2828112185,2828112185 -.long 2761266481,2761266481 -.long 937747667,937747667 -.long 2339994098,2339994098 -.long 854058965,854058965 -.long 1137232011,1137232011 -.long 1496790894,1496790894 -.long 3077402074,3077402074 -.long 2358086913,2358086913 -.long 1691735473,1691735473 -.long 3528347292,3528347292 -.long 3769215305,3769215305 -.long 3027004632,3027004632 -.long 4199962284,4199962284 -.long 133494003,133494003 -.long 636152527,636152527 -.long 2942657994,2942657994 -.long 2390391540,2390391540 -.long 3920539207,3920539207 -.long 403179536,403179536 -.long 3585784431,3585784431 -.long 2289596656,2289596656 -.long 1864705354,1864705354 -.long 1915629148,1915629148 -.long 605822008,605822008 -.long 4054230615,4054230615 -.long 3350508659,3350508659 -.long 1371981463,1371981463 -.long 602466507,602466507 -.long 2094914977,2094914977 -.long 2624877800,2624877800 -.long 555687742,555687742 -.long 3712699286,3712699286 -.long 3703422305,3703422305 -.long 2257292045,2257292045 -.long 2240449039,2240449039 -.long 2423288032,2423288032 -.long 1111375484,1111375484 -.long 3300242801,3300242801 -.long 2858837708,2858837708 -.long 3628615824,3628615824 -.long 84083462,84083462 -.long 32962295,32962295 -.long 302911004,302911004 -.long 2741068226,2741068226 -.long 1597322602,1597322602 -.long 4183250862,4183250862 -.long 3501832553,3501832553 -.long 2441512471,2441512471 -.long 1489093017,1489093017 -.long 656219450,656219450 -.long 3114180135,3114180135 -.long 954327513,954327513 -.long 335083755,335083755 -.long 3013122091,3013122091 -.long 856756514,856756514 -.long 3144247762,3144247762 -.long 1893325225,1893325225 -.long 2307821063,2307821063 -.long 2811532339,2811532339 -.long 3063651117,3063651117 -.long 572399164,572399164 -.long 2458355477,2458355477 -.long 552200649,552200649 -.long 1238290055,1238290055 -.long 4283782570,4283782570 -.long 2015897680,2015897680 -.long 2061492133,2061492133 -.long 2408352771,2408352771 -.long 4171342169,4171342169 -.long 2156497161,2156497161 -.long 386731290,386731290 -.long 3669999461,3669999461 -.long 837215959,837215959 -.long 3326231172,3326231172 -.long 3093850320,3093850320 -.long 3275833730,3275833730 -.long 2962856233,2962856233 -.long 1999449434,1999449434 -.long 286199582,286199582 -.long 3417354363,3417354363 -.long 4233385128,4233385128 -.long 3602627437,3602627437 -.long 974525996,974525996 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.long 1,2,4,8 -.long 16,32,64,128 -.long 27,54,0,0 -.long 0,0,0,0 -.size _x86_AES_encrypt,.-_x86_AES_encrypt -.globl AES_encrypt -.type AES_encrypt,@function -.align 16 -AES_encrypt: -.L_AES_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call .L004pic_point -.L004pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - leal .LAES_Te-.L004pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc .L005x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call _sse_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L005x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call _x86_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_encrypt,.-.L_AES_encrypt_begin -.type _x86_AES_decrypt_compact,@function -.align 16 -_x86_AES_decrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 16 -.L006loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%eax - subl %edi,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %ecx,%eax - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ecx,%ebx - roll $8,%ecx - xorl %esi,%ebp - xorl %eax,%ecx - xorl %ebp,%eax - xorl %ebx,%ecx - xorl %ebp,%ebx - roll $24,%eax - xorl %ebp,%ecx - roll $16,%ebx - xorl %eax,%ecx - roll $8,%ebp - xorl %ebx,%ecx - movl 4(%esp),%eax - xorl %ebp,%ecx - movl %ecx,12(%esp) - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %edx,%ebx - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %edx,%ecx - roll $8,%edx - xorl %esi,%ebp - xorl %ebx,%edx - xorl %ebp,%ebx - xorl %ecx,%edx - xorl %ebp,%ecx - roll $24,%ebx - xorl %ebp,%edx - roll $16,%ecx - xorl %ebx,%edx - roll $8,%ebp - xorl %ecx,%edx - movl 8(%esp),%ebx - xorl %ebp,%edx - movl %edx,16(%esp) - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %eax,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %eax,%edx - roll $8,%eax - xorl %esi,%ebp - xorl %ecx,%eax - xorl %ebp,%ecx - xorl %edx,%eax - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%eax - roll $16,%edx - xorl %ecx,%eax - roll $8,%ebp - xorl %edx,%eax - xorl %ebp,%eax - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ebx,%edx - roll $8,%ebx - xorl %esi,%ebp - xorl %ecx,%ebx - xorl %ebp,%ecx - xorl %edx,%ebx - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%ebp - xorl %edx,%ebx - movl 12(%esp),%ecx - xorl %ebp,%ebx - movl 16(%esp),%edx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L006loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.size _x86_AES_decrypt_compact,.-_x86_AES_decrypt_compact -.type _sse_AES_decrypt_compact,@function -.align 16 -_sse_AES_decrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 16 -.L007loop: - pshufw $12,%mm0,%mm1 - pshufw $9,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $6,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $3,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movd %mm2,%eax - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $16,%esi - movd %mm6,%ebx - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %al,%edi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $16,%esi - shrl $16,%eax - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shrl $16,%ebx - shll $8,%esi - movd %edx,%mm1 - movzbl -128(%ebp,%edi,1),%edx - movzbl %bh,%edi - shll $24,%edx - andl $255,%ebx - orl %esi,%edx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movzbl %ah,%eax - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - orl %ebx,%edx - shll $16,%esi - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%edx - shll $24,%eax - orl %eax,%ecx - movl 20(%esp),%edi - movd %edx,%mm4 - movd %ecx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja .L008out - movq %mm0,%mm3 - movq %mm4,%mm7 - pshufw $228,%mm0,%mm2 - pshufw $228,%mm4,%mm6 - movq %mm0,%mm1 - movq %mm4,%mm5 - pshufw $177,%mm0,%mm0 - pshufw $177,%mm4,%mm4 - pslld $8,%mm2 - pslld $8,%mm6 - psrld $8,%mm3 - psrld $8,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pslld $16,%mm2 - pslld $16,%mm6 - psrld $16,%mm3 - psrld $16,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movq 8(%esp),%mm3 - pxor %mm2,%mm2 - pxor %mm6,%mm6 - pcmpgtb %mm1,%mm2 - pcmpgtb %mm5,%mm6 - pand %mm3,%mm2 - pand %mm3,%mm6 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm2,%mm1 - pxor %mm6,%mm5 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq %mm1,%mm2 - movq %mm5,%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pslld $24,%mm3 - pslld $24,%mm7 - psrld $8,%mm2 - psrld $8,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pshufw $177,%mm1,%mm3 - pshufw $177,%mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - pshufw $177,%mm1,%mm2 - pshufw $177,%mm5,%mm6 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pslld $8,%mm1 - pslld $8,%mm5 - psrld $8,%mm3 - psrld $8,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl -128(%ebp),%eax - pslld $16,%mm1 - pslld $16,%mm5 - movl -64(%ebp),%ebx - psrld $16,%mm3 - psrld $16,%mm7 - movl (%ebp),%ecx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl 64(%ebp),%edx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp .L007loop -.align 16 -.L008out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.size _sse_AES_decrypt_compact,.-_sse_AES_decrypt_compact -.type _x86_AES_decrypt,@function -.align 16 -_x86_AES_decrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 16 -.L009loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ebx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - - movl %ebx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %ah,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - - movl %ecx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - - movl 20(%esp),%edi - andl $255,%edx - movl (%ebp,%edx,8),%edx - movzbl %ch,%ecx - xorl 3(%ebp,%ecx,8),%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - shrl $24,%eax - xorl 1(%ebp,%eax,8),%edx - movl 4(%esp),%eax - - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb .L009loop - leal 2176(%ebp),%ebp - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi - leal -128(%ebp),%ebp - movl %eax,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl (%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl (%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl (%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl (%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - leal -2048(%ebp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 64 -.LAES_Td: -.long 1353184337,1353184337 -.long 1399144830,1399144830 -.long 3282310938,3282310938 -.long 2522752826,2522752826 -.long 3412831035,3412831035 -.long 4047871263,4047871263 -.long 2874735276,2874735276 -.long 2466505547,2466505547 -.long 1442459680,1442459680 -.long 4134368941,4134368941 -.long 2440481928,2440481928 -.long 625738485,625738485 -.long 4242007375,4242007375 -.long 3620416197,3620416197 -.long 2151953702,2151953702 -.long 2409849525,2409849525 -.long 1230680542,1230680542 -.long 1729870373,1729870373 -.long 2551114309,2551114309 -.long 3787521629,3787521629 -.long 41234371,41234371 -.long 317738113,317738113 -.long 2744600205,2744600205 -.long 3338261355,3338261355 -.long 3881799427,3881799427 -.long 2510066197,2510066197 -.long 3950669247,3950669247 -.long 3663286933,3663286933 -.long 763608788,763608788 -.long 3542185048,3542185048 -.long 694804553,694804553 -.long 1154009486,1154009486 -.long 1787413109,1787413109 -.long 2021232372,2021232372 -.long 1799248025,1799248025 -.long 3715217703,3715217703 -.long 3058688446,3058688446 -.long 397248752,397248752 -.long 1722556617,1722556617 -.long 3023752829,3023752829 -.long 407560035,407560035 -.long 2184256229,2184256229 -.long 1613975959,1613975959 -.long 1165972322,1165972322 -.long 3765920945,3765920945 -.long 2226023355,2226023355 -.long 480281086,480281086 -.long 2485848313,2485848313 -.long 1483229296,1483229296 -.long 436028815,436028815 -.long 2272059028,2272059028 -.long 3086515026,3086515026 -.long 601060267,601060267 -.long 3791801202,3791801202 -.long 1468997603,1468997603 -.long 715871590,715871590 -.long 120122290,120122290 -.long 63092015,63092015 -.long 2591802758,2591802758 -.long 2768779219,2768779219 -.long 4068943920,4068943920 -.long 2997206819,2997206819 -.long 3127509762,3127509762 -.long 1552029421,1552029421 -.long 723308426,723308426 -.long 2461301159,2461301159 -.long 4042393587,4042393587 -.long 2715969870,2715969870 -.long 3455375973,3455375973 -.long 3586000134,3586000134 -.long 526529745,526529745 -.long 2331944644,2331944644 -.long 2639474228,2639474228 -.long 2689987490,2689987490 -.long 853641733,853641733 -.long 1978398372,1978398372 -.long 971801355,971801355 -.long 2867814464,2867814464 -.long 111112542,111112542 -.long 1360031421,1360031421 -.long 4186579262,4186579262 -.long 1023860118,1023860118 -.long 2919579357,2919579357 -.long 1186850381,1186850381 -.long 3045938321,3045938321 -.long 90031217,90031217 -.long 1876166148,1876166148 -.long 4279586912,4279586912 -.long 620468249,620468249 -.long 2548678102,2548678102 -.long 3426959497,3426959497 -.long 2006899047,2006899047 -.long 3175278768,3175278768 -.long 2290845959,2290845959 -.long 945494503,945494503 -.long 3689859193,3689859193 -.long 1191869601,1191869601 -.long 3910091388,3910091388 -.long 3374220536,3374220536 -.long 0,0 -.long 2206629897,2206629897 -.long 1223502642,1223502642 -.long 2893025566,2893025566 -.long 1316117100,1316117100 -.long 4227796733,4227796733 -.long 1446544655,1446544655 -.long 517320253,517320253 -.long 658058550,658058550 -.long 1691946762,1691946762 -.long 564550760,564550760 -.long 3511966619,3511966619 -.long 976107044,976107044 -.long 2976320012,2976320012 -.long 266819475,266819475 -.long 3533106868,3533106868 -.long 2660342555,2660342555 -.long 1338359936,1338359936 -.long 2720062561,2720062561 -.long 1766553434,1766553434 -.long 370807324,370807324 -.long 179999714,179999714 -.long 3844776128,3844776128 -.long 1138762300,1138762300 -.long 488053522,488053522 -.long 185403662,185403662 -.long 2915535858,2915535858 -.long 3114841645,3114841645 -.long 3366526484,3366526484 -.long 2233069911,2233069911 -.long 1275557295,1275557295 -.long 3151862254,3151862254 -.long 4250959779,4250959779 -.long 2670068215,2670068215 -.long 3170202204,3170202204 -.long 3309004356,3309004356 -.long 880737115,880737115 -.long 1982415755,1982415755 -.long 3703972811,3703972811 -.long 1761406390,1761406390 -.long 1676797112,1676797112 -.long 3403428311,3403428311 -.long 277177154,277177154 -.long 1076008723,1076008723 -.long 538035844,538035844 -.long 2099530373,2099530373 -.long 4164795346,4164795346 -.long 288553390,288553390 -.long 1839278535,1839278535 -.long 1261411869,1261411869 -.long 4080055004,4080055004 -.long 3964831245,3964831245 -.long 3504587127,3504587127 -.long 1813426987,1813426987 -.long 2579067049,2579067049 -.long 4199060497,4199060497 -.long 577038663,577038663 -.long 3297574056,3297574056 -.long 440397984,440397984 -.long 3626794326,3626794326 -.long 4019204898,4019204898 -.long 3343796615,3343796615 -.long 3251714265,3251714265 -.long 4272081548,4272081548 -.long 906744984,906744984 -.long 3481400742,3481400742 -.long 685669029,685669029 -.long 646887386,646887386 -.long 2764025151,2764025151 -.long 3835509292,3835509292 -.long 227702864,227702864 -.long 2613862250,2613862250 -.long 1648787028,1648787028 -.long 3256061430,3256061430 -.long 3904428176,3904428176 -.long 1593260334,1593260334 -.long 4121936770,4121936770 -.long 3196083615,3196083615 -.long 2090061929,2090061929 -.long 2838353263,2838353263 -.long 3004310991,3004310991 -.long 999926984,999926984 -.long 2809993232,2809993232 -.long 1852021992,1852021992 -.long 2075868123,2075868123 -.long 158869197,158869197 -.long 4095236462,4095236462 -.long 28809964,28809964 -.long 2828685187,2828685187 -.long 1701746150,1701746150 -.long 2129067946,2129067946 -.long 147831841,147831841 -.long 3873969647,3873969647 -.long 3650873274,3650873274 -.long 3459673930,3459673930 -.long 3557400554,3557400554 -.long 3598495785,3598495785 -.long 2947720241,2947720241 -.long 824393514,824393514 -.long 815048134,815048134 -.long 3227951669,3227951669 -.long 935087732,935087732 -.long 2798289660,2798289660 -.long 2966458592,2966458592 -.long 366520115,366520115 -.long 1251476721,1251476721 -.long 4158319681,4158319681 -.long 240176511,240176511 -.long 804688151,804688151 -.long 2379631990,2379631990 -.long 1303441219,1303441219 -.long 1414376140,1414376140 -.long 3741619940,3741619940 -.long 3820343710,3820343710 -.long 461924940,461924940 -.long 3089050817,3089050817 -.long 2136040774,2136040774 -.long 82468509,82468509 -.long 1563790337,1563790337 -.long 1937016826,1937016826 -.long 776014843,776014843 -.long 1511876531,1511876531 -.long 1389550482,1389550482 -.long 861278441,861278441 -.long 323475053,323475053 -.long 2355222426,2355222426 -.long 2047648055,2047648055 -.long 2383738969,2383738969 -.long 2302415851,2302415851 -.long 3995576782,3995576782 -.long 902390199,902390199 -.long 3991215329,3991215329 -.long 1018251130,1018251130 -.long 1507840668,1507840668 -.long 1064563285,1064563285 -.long 2043548696,2043548696 -.long 3208103795,3208103795 -.long 3939366739,3939366739 -.long 1537932639,1537932639 -.long 342834655,342834655 -.long 2262516856,2262516856 -.long 2180231114,2180231114 -.long 1053059257,1053059257 -.long 741614648,741614648 -.long 1598071746,1598071746 -.long 1925389590,1925389590 -.long 203809468,203809468 -.long 2336832552,2336832552 -.long 1100287487,1100287487 -.long 1895934009,1895934009 -.long 3736275976,3736275976 -.long 2632234200,2632234200 -.long 2428589668,2428589668 -.long 1636092795,1636092795 -.long 1890988757,1890988757 -.long 1952214088,1952214088 -.long 1113045200,1113045200 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.size _x86_AES_decrypt,.-_x86_AES_decrypt -.globl AES_decrypt -.type AES_decrypt,@function -.align 16 -AES_decrypt: -.L_AES_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call .L010pic_point -.L010pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - leal .LAES_Td-.L010pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc .L011x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call _sse_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L011x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call _x86_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_decrypt,.-.L_AES_decrypt_begin -.globl AES_cbc_encrypt -.type AES_cbc_encrypt,@function -.align 16 -AES_cbc_encrypt: -.L_AES_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je .L012drop_out - call .L013pic_point -.L013pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%eax - cmpl $0,40(%esp) - leal .LAES_Te-.L013pic_point(%ebp),%ebp - jne .L014picked_te - leal .LAES_Td-.LAES_Te(%ebp),%ebp -.L014picked_te: - pushfl - cld - cmpl $512,%ecx - jb .L015slow_way - testl $15,%ecx - jnz .L015slow_way - btl $28,(%eax) - jc .L015slow_way - leal -324(%esp),%esi - andl $-64,%esi - movl %ebp,%eax - leal 2304(%ebp),%ebx - movl %esi,%edx - andl $4095,%eax - andl $4095,%ebx - andl $4095,%edx - cmpl %ebx,%edx - jb .L016tbl_break_out - subl %ebx,%edx - subl %edx,%esi - jmp .L017tbl_ok -.align 4 -.L016tbl_break_out: - subl %eax,%edx - andl $4095,%edx - addl $384,%edx - subl %edx,%esi -.align 4 -.L017tbl_ok: - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 12(%edx),%edi - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl $0,316(%esp) - movl %edi,%ebx - movl $61,%ecx - subl %ebp,%ebx - movl %edi,%esi - andl $4095,%ebx - leal 76(%esp),%edi - cmpl $2304,%ebx - jb .L018do_copy - cmpl $3852,%ebx - jb .L019skip_copy -.align 4 -.L018do_copy: - movl %edi,44(%esp) -.long 2784229001 -.L019skip_copy: - movl $16,%edi -.align 4 -.L020prefetch_tbl: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%esi - leal 128(%ebp),%ebp - subl $1,%edi - jnz .L020prefetch_tbl - subl $2048,%ebp - movl 32(%esp),%esi - movl 48(%esp),%edi - cmpl $0,%edx - je .L021fast_decrypt - movl (%edi),%eax - movl 4(%edi),%ebx -.align 16 -.L022fast_enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_encrypt - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%esi - movl 40(%esp),%ecx - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L022fast_enc_loop - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - cmpl $0,316(%esp) - movl 44(%esp),%edi - je .L023skip_ezero - movl $60,%ecx - xorl %eax,%eax -.align 4 -.long 2884892297 -.L023skip_ezero: - movl 28(%esp),%esp - popfl -.L012drop_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L021fast_decrypt: - cmpl 36(%esp),%esi - je .L024fast_dec_in_place - movl %edi,52(%esp) -.align 4 -.align 16 -.L025fast_dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_decrypt - movl 52(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 36(%esp),%edi - movl 32(%esp),%esi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl %esi,52(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edi - movl %edi,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L025fast_dec_loop - movl 52(%esp),%edi - movl 48(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp .L026fast_dec_out -.align 16 -.L024fast_dec_in_place: -.L027fast_dec_in_place_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call _x86_AES_decrypt - movl 48(%esp),%edi - movl 36(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz .L027fast_dec_in_place_loop -.align 4 -.L026fast_dec_out: - cmpl $0,316(%esp) - movl 44(%esp),%edi - je .L028skip_dzero - movl $60,%ecx - xorl %eax,%eax -.align 4 -.long 2884892297 -.L028skip_dzero: - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L015slow_way: - movl (%eax),%eax - movl 36(%esp),%edi - leal -80(%esp),%esi - andl $-64,%esi - leal -143(%edi),%ebx - subl %esi,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esi - leal 768(%esi),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl %eax,52(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl %esi,%edi - movl %eax,%esi - cmpl $0,%edx - je .L029slow_decrypt - cmpl $16,%ecx - movl %ebx,%edx - jb .L030slow_enc_tail - btl $25,52(%esp) - jnc .L031slow_enc_x86 - movq (%edi),%mm0 - movq 8(%edi),%mm4 -.align 16 -.L032slow_enc_loop_sse: - pxor (%esi),%mm0 - pxor 8(%esi),%mm4 - movl 44(%esp),%edi - call _sse_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl 40(%esp),%ecx - movq %mm0,(%edi) - movq %mm4,8(%edi) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae .L032slow_enc_loop_sse - testl $15,%ecx - jnz .L030slow_enc_tail - movl 48(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L031slow_enc_x86: - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4 -.L033slow_enc_loop_x86: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call _x86_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae .L033slow_enc_loop_x86 - testl $15,%ecx - jnz .L030slow_enc_tail - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L030slow_enc_tail: - emms - movl %edx,%edi - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je .L034enc_in_place -.align 4 -.long 2767451785 - jmp .L035enc_skip_in_place -.L034enc_in_place: - leal (%edi,%ecx,1),%edi -.L035enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 4 -.long 2868115081 - movl 48(%esp),%edi - movl %edx,%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,40(%esp) - jmp .L033slow_enc_loop_x86 -.align 16 -.L029slow_decrypt: - btl $25,52(%esp) - jnc .L036slow_dec_loop_x86 -.align 4 -.L037slow_dec_loop_sse: - movq (%esi),%mm0 - movq 8(%esi),%mm4 - movl 44(%esp),%edi - call _sse_AES_decrypt_compact - movl 32(%esp),%esi - leal 60(%esp),%eax - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl 48(%esp),%edi - movq (%esi),%mm1 - movq 8(%esi),%mm5 - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movq %mm1,(%edi) - movq %mm5,8(%edi) - subl $16,%ecx - jc .L038slow_dec_partial_sse - movq %mm0,(%ebx) - movq %mm4,8(%ebx) - leal 16(%ebx),%ebx - movl %ebx,36(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - movl %ecx,40(%esp) - jnz .L037slow_dec_loop_sse - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L038slow_dec_partial_sse: - movq %mm0,(%eax) - movq %mm4,8(%eax) - emms - addl $16,%ecx - movl %ebx,%edi - movl %eax,%esi -.align 4 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L036slow_dec_loop_x86: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call _x86_AES_decrypt_compact - movl 48(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc .L039slow_dec_partial_x86 - movl %esi,40(%esp) - movl 36(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - leal 16(%esi),%esi - movl %esi,32(%esp) - jnz .L036slow_dec_loop_x86 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 16 -.L039slow_dec_partial_x86: - leal 60(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 32(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl 36(%esp),%edi - leal 60(%esp),%esi -.align 4 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size AES_cbc_encrypt,.-.L_AES_cbc_encrypt_begin -.type _x86_AES_set_encrypt_key,@function -.align 16 -_x86_AES_set_encrypt_key: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%esi - movl 32(%esp),%edi - testl $-1,%esi - jz .L040badpointer - testl $-1,%edi - jz .L040badpointer - call .L041pic_point -.L041pic_point: - popl %ebp - leal .LAES_Te-.L041pic_point(%ebp),%ebp - leal 2176(%ebp),%ebp - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - movl 28(%esp),%ecx - cmpl $128,%ecx - je .L04210rounds - cmpl $192,%ecx - je .L04312rounds - cmpl $256,%ecx - je .L04414rounds - movl $-2,%eax - jmp .L045exit -.L04210rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - xorl %ecx,%ecx - jmp .L04610shortcut -.align 4 -.L04710loop: - movl (%edi),%eax - movl 12(%edi),%edx -.L04610shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,16(%edi) - xorl 4(%edi),%eax - movl %eax,20(%edi) - xorl 8(%edi),%eax - movl %eax,24(%edi) - xorl 12(%edi),%eax - movl %eax,28(%edi) - incl %ecx - addl $16,%edi - cmpl $10,%ecx - jl .L04710loop - movl $10,80(%edi) - xorl %eax,%eax - jmp .L045exit -.L04312rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%ecx - movl 20(%esi),%edx - movl %ecx,16(%edi) - movl %edx,20(%edi) - xorl %ecx,%ecx - jmp .L04812shortcut -.align 4 -.L04912loop: - movl (%edi),%eax - movl 20(%edi),%edx -.L04812shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,24(%edi) - xorl 4(%edi),%eax - movl %eax,28(%edi) - xorl 8(%edi),%eax - movl %eax,32(%edi) - xorl 12(%edi),%eax - movl %eax,36(%edi) - cmpl $7,%ecx - je .L05012break - incl %ecx - xorl 16(%edi),%eax - movl %eax,40(%edi) - xorl 20(%edi),%eax - movl %eax,44(%edi) - addl $24,%edi - jmp .L04912loop -.L05012break: - movl $12,72(%edi) - xorl %eax,%eax - jmp .L045exit -.L04414rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - movl %eax,16(%edi) - movl %ebx,20(%edi) - movl %ecx,24(%edi) - movl %edx,28(%edi) - xorl %ecx,%ecx - jmp .L05114shortcut -.align 4 -.L05214loop: - movl 28(%edi),%edx -.L05114shortcut: - movl (%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,32(%edi) - xorl 4(%edi),%eax - movl %eax,36(%edi) - xorl 8(%edi),%eax - movl %eax,40(%edi) - xorl 12(%edi),%eax - movl %eax,44(%edi) - cmpl $6,%ecx - je .L05314break - incl %ecx - movl %eax,%edx - movl 16(%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - movl %eax,48(%edi) - xorl 20(%edi),%eax - movl %eax,52(%edi) - xorl 24(%edi),%eax - movl %eax,56(%edi) - xorl 28(%edi),%eax - movl %eax,60(%edi) - addl $32,%edi - jmp .L05214loop -.L05314break: - movl $14,48(%edi) - xorl %eax,%eax - jmp .L045exit -.L040badpointer: - movl $-1,%eax -.L045exit: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key -.globl private_AES_set_encrypt_key -.type private_AES_set_encrypt_key,@function -.align 16 -private_AES_set_encrypt_key: -.L_private_AES_set_encrypt_key_begin: - call _x86_AES_set_encrypt_key - ret -.size private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin -.globl private_AES_set_decrypt_key -.type private_AES_set_decrypt_key,@function -.align 16 -private_AES_set_decrypt_key: -.L_private_AES_set_decrypt_key_begin: - call _x86_AES_set_encrypt_key - cmpl $0,%eax - je .L054proceed - ret -.L054proceed: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%esi - movl 240(%esi),%ecx - leal (,%ecx,4),%ecx - leal (%esi,%ecx,4),%edi -.align 4 -.L055invert: - movl (%esi),%eax - movl 4(%esi),%ebx - movl (%edi),%ecx - movl 4(%edi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,(%esi) - movl %edx,4(%esi) - movl 8(%esi),%eax - movl 12(%esi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,8(%edi) - movl %ebx,12(%edi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - addl $16,%esi - subl $16,%edi - cmpl %edi,%esi - jne .L055invert - movl 28(%esp),%edi - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,28(%esp) - movl 16(%edi),%eax -.align 4 -.L056permute: - addl $16,%edi - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %eax,%ebx - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - xorl %eax,%ecx - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - roll $8,%eax - xorl %esi,%edx - movl 4(%edi),%ebp - xorl %ebx,%eax - xorl %edx,%ebx - xorl %ecx,%eax - roll $24,%ebx - xorl %edx,%ecx - xorl %edx,%eax - roll $16,%ecx - xorl %ebx,%eax - roll $8,%edx - xorl %ecx,%eax - movl %ebp,%ebx - xorl %edx,%eax - movl %eax,(%edi) - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - xorl %ebx,%edx - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - roll $8,%ebx - xorl %esi,%eax - movl 8(%edi),%ebp - xorl %ecx,%ebx - xorl %eax,%ecx - xorl %edx,%ebx - roll $24,%ecx - xorl %eax,%edx - xorl %eax,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%eax - xorl %edx,%ebx - movl %ebp,%ecx - xorl %eax,%ebx - movl %ebx,4(%edi) - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %ecx,%edx - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - xorl %ecx,%eax - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - roll $8,%ecx - xorl %esi,%ebx - movl 12(%edi),%ebp - xorl %edx,%ecx - xorl %ebx,%edx - xorl %eax,%ecx - roll $24,%edx - xorl %ebx,%eax - xorl %ebx,%ecx - roll $16,%eax - xorl %edx,%ecx - roll $8,%ebx - xorl %eax,%ecx - movl %ebp,%edx - xorl %ebx,%ecx - movl %ecx,8(%edi) - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %edx,%eax - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - xorl %edx,%ebx - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - roll $8,%edx - xorl %esi,%ecx - movl 16(%edi),%ebp - xorl %eax,%edx - xorl %ecx,%eax - xorl %ebx,%edx - roll $24,%eax - xorl %ecx,%ebx - xorl %ecx,%edx - roll $16,%ebx - xorl %eax,%edx - roll $8,%ecx - xorl %ebx,%edx - movl %ebp,%eax - xorl %ecx,%edx - movl %edx,12(%edi) - cmpl 28(%esp),%edi - jb .L056permute - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin -.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/aes/aesni-x86.s b/deps/openssl/asm_obsolete/x86-elf-gas/aes/aesni-x86.s deleted file mode 100644 index 3bbc4e47d612a8..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/aes/aesni-x86.s +++ /dev/null @@ -1,2448 +0,0 @@ -.file "../openssl/crypto/aes/asm/aesni-x86.s" -.text -.globl aesni_encrypt -.type aesni_encrypt,@function -.align 16 -aesni_encrypt: -.L_aesni_encrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L000enc1_loop_1: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L000enc1_loop_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.size aesni_encrypt,.-.L_aesni_encrypt_begin -.globl aesni_decrypt -.type aesni_decrypt,@function -.align 16 -aesni_decrypt: -.L_aesni_decrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L001dec1_loop_2: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L001dec1_loop_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.size aesni_decrypt,.-.L_aesni_decrypt_begin -.type _aesni_encrypt2,@function -.align 16 -_aesni_encrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L002enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L002enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - ret -.size _aesni_encrypt2,.-_aesni_encrypt2 -.type _aesni_decrypt2,@function -.align 16 -_aesni_decrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L003dec2_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L003dec2_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - ret -.size _aesni_decrypt2,.-_aesni_decrypt2 -.type _aesni_encrypt3,@function -.align 16 -_aesni_encrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L004enc3_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L004enc3_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - ret -.size _aesni_encrypt3,.-_aesni_encrypt3 -.type _aesni_decrypt3,@function -.align 16 -_aesni_decrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -.L005dec3_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L005dec3_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - ret -.size _aesni_decrypt3,.-_aesni_decrypt3 -.type _aesni_encrypt4,@function -.align 16 -_aesni_encrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -.L006enc4_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L006enc4_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - ret -.size _aesni_encrypt4,.-_aesni_encrypt4 -.type _aesni_decrypt4,@function -.align 16 -_aesni_decrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -.L007dec4_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L007dec4_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - ret -.size _aesni_decrypt4,.-_aesni_decrypt4 -.type _aesni_encrypt6,@function -.align 16 -_aesni_encrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp .L008_aesni_encrypt6_inner -.align 16 -.L009enc6_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.L008_aesni_encrypt6_inner: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.L_aesni_encrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L009enc6_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - ret -.size _aesni_encrypt6,.-_aesni_encrypt6 -.type _aesni_decrypt6,@function -.align 16 -_aesni_decrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp .L010_aesni_decrypt6_inner -.align 16 -.L011dec6_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.L010_aesni_decrypt6_inner: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.L_aesni_decrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L011dec6_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - ret -.size _aesni_decrypt6,.-_aesni_decrypt6 -.globl aesni_ecb_encrypt -.type aesni_ecb_encrypt,@function -.align 16 -aesni_ecb_encrypt: -.L_aesni_ecb_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - andl $-16,%eax - jz .L012ecb_ret - movl 240(%edx),%ecx - testl %ebx,%ebx - jz .L013ecb_decrypt - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb .L014ecb_enc_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp .L015ecb_enc_loop6_enter -.align 16 -.L016ecb_enc_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -.L015ecb_enc_loop6_enter: - call _aesni_encrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc .L016ecb_enc_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz .L012ecb_ret -.L014ecb_enc_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb .L017ecb_enc_one - movups 16(%esi),%xmm3 - je .L018ecb_enc_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb .L019ecb_enc_three - movups 48(%esi),%xmm5 - je .L020ecb_enc_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call _aesni_encrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L012ecb_ret -.align 16 -.L017ecb_enc_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L021enc1_loop_3: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L021enc1_loop_3 -.byte 102,15,56,221,209 - movups %xmm2,(%edi) - jmp .L012ecb_ret -.align 16 -.L018ecb_enc_two: - call _aesni_encrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L012ecb_ret -.align 16 -.L019ecb_enc_three: - call _aesni_encrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L012ecb_ret -.align 16 -.L020ecb_enc_four: - call _aesni_encrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - jmp .L012ecb_ret -.align 16 -.L013ecb_decrypt: - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb .L022ecb_dec_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp .L023ecb_dec_loop6_enter -.align 16 -.L024ecb_dec_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -.L023ecb_dec_loop6_enter: - call _aesni_decrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc .L024ecb_dec_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz .L012ecb_ret -.L022ecb_dec_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb .L025ecb_dec_one - movups 16(%esi),%xmm3 - je .L026ecb_dec_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb .L027ecb_dec_three - movups 48(%esi),%xmm5 - je .L028ecb_dec_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L012ecb_ret -.align 16 -.L025ecb_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L029dec1_loop_4: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L029dec1_loop_4 -.byte 102,15,56,223,209 - movups %xmm2,(%edi) - jmp .L012ecb_ret -.align 16 -.L026ecb_dec_two: - call _aesni_decrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L012ecb_ret -.align 16 -.L027ecb_dec_three: - call _aesni_decrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L012ecb_ret -.align 16 -.L028ecb_dec_four: - call _aesni_decrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -.L012ecb_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ecb_encrypt,.-.L_aesni_ecb_encrypt_begin -.globl aesni_ccm64_encrypt_blocks -.type aesni_ccm64_encrypt_blocks,@function -.align 16 -aesni_ccm64_encrypt_blocks: -.L_aesni_ccm64_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - shll $4,%ecx - movl $16,%ebx - leal (%edx),%ebp - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - leal 32(%edx,%ecx,1),%edx - subl %ecx,%ebx -.byte 102,15,56,0,253 -.L030ccm64_enc_outer: - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups (%esi),%xmm6 - xorps %xmm0,%xmm2 - movups 16(%ebp),%xmm1 - xorps %xmm6,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%ebp),%xmm0 -.L031ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L031ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq 16(%esp),%xmm7 - decl %eax -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) -.byte 102,15,56,0,213 - leal 16(%edi),%edi - jnz .L030ccm64_enc_outer - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ccm64_encrypt_blocks,.-.L_aesni_ccm64_encrypt_blocks_begin -.globl aesni_ccm64_decrypt_blocks -.type aesni_ccm64_decrypt_blocks,@function -.align 16 -aesni_ccm64_decrypt_blocks: -.L_aesni_ccm64_decrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - movl %edx,%ebp - movl %ecx,%ebx -.byte 102,15,56,0,253 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L032enc1_loop_5: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L032enc1_loop_5 -.byte 102,15,56,221,209 - shll $4,%ebx - movl $16,%ecx - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 - leal 16(%esi),%esi - subl %ebx,%ecx - leal 32(%ebp,%ebx,1),%edx - movl %ecx,%ebx - jmp .L033ccm64_dec_outer -.align 16 -.L033ccm64_dec_outer: - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) - leal 16(%edi),%edi -.byte 102,15,56,0,213 - subl $1,%eax - jz .L034ccm64_dec_break - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups 16(%ebp),%xmm1 - xorps %xmm0,%xmm6 - xorps %xmm0,%xmm2 - xorps %xmm6,%xmm3 - movups 32(%ebp),%xmm0 -.L035ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz .L035ccm64_dec2_loop - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - jmp .L033ccm64_dec_outer -.align 16 -.L034ccm64_dec_break: - movl 240(%ebp),%ecx - movl %ebp,%edx - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm6 - leal 32(%edx),%edx - xorps %xmm6,%xmm3 -.L036enc1_loop_6: -.byte 102,15,56,220,217 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L036enc1_loop_6 -.byte 102,15,56,221,217 - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ccm64_decrypt_blocks,.-.L_aesni_ccm64_decrypt_blocks_begin -.globl aesni_ctr32_encrypt_blocks -.type aesni_ctr32_encrypt_blocks,@function -.align 16 -aesni_ctr32_encrypt_blocks: -.L_aesni_ctr32_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl %esp,%ebp - subl $88,%esp - andl $-16,%esp - movl %ebp,80(%esp) - cmpl $1,%eax - je .L037ctr32_one_shortcut - movdqu (%ebx),%xmm7 - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $6,%ecx - xorl %ebp,%ebp - movl %ecx,16(%esp) - movl %ecx,20(%esp) - movl %ecx,24(%esp) - movl %ebp,28(%esp) -.byte 102,15,58,22,251,3 -.byte 102,15,58,34,253,3 - movl 240(%edx),%ecx - bswap %ebx - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqa (%esp),%xmm2 -.byte 102,15,58,34,195,0 - leal 3(%ebx),%ebp -.byte 102,15,58,34,205,0 - incl %ebx -.byte 102,15,58,34,195,1 - incl %ebp -.byte 102,15,58,34,205,1 - incl %ebx -.byte 102,15,58,34,195,2 - incl %ebp -.byte 102,15,58,34,205,2 - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - movdqu (%edx),%xmm6 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - pshufd $192,%xmm0,%xmm2 - pshufd $128,%xmm0,%xmm3 - cmpl $6,%eax - jb .L038ctr32_tail - pxor %xmm6,%xmm7 - shll $4,%ecx - movl $16,%ebx - movdqa %xmm7,32(%esp) - movl %edx,%ebp - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - subl $6,%eax - jmp .L039ctr32_loop6 -.align 16 -.L039ctr32_loop6: - pshufd $64,%xmm0,%xmm4 - movdqa 32(%esp),%xmm0 - pshufd $192,%xmm1,%xmm5 - pxor %xmm0,%xmm2 - pshufd $128,%xmm1,%xmm6 - pxor %xmm0,%xmm3 - pshufd $64,%xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,220,217 - movups 32(%ebp),%xmm0 - movl %ebx,%ecx -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call .L_aesni_encrypt6_enter - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups %xmm2,(%edi) - movdqa 16(%esp),%xmm0 - xorps %xmm1,%xmm4 - movdqa 64(%esp),%xmm1 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - paddd %xmm0,%xmm1 - paddd 48(%esp),%xmm0 - movdqa (%esp),%xmm2 - movups 48(%esi),%xmm3 - movups 64(%esi),%xmm4 - xorps %xmm3,%xmm5 - movups 80(%esi),%xmm3 - leal 96(%esi),%esi - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - xorps %xmm4,%xmm6 - movups %xmm5,48(%edi) - xorps %xmm3,%xmm7 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - movups %xmm6,64(%edi) - pshufd $192,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - pshufd $128,%xmm0,%xmm3 - subl $6,%eax - jnc .L039ctr32_loop6 - addl $6,%eax - jz .L040ctr32_ret - movdqu (%ebp),%xmm7 - movl %ebp,%edx - pxor 32(%esp),%xmm7 - movl 240(%ebp),%ecx -.L038ctr32_tail: - por %xmm7,%xmm2 - cmpl $2,%eax - jb .L041ctr32_one - pshufd $64,%xmm0,%xmm4 - por %xmm7,%xmm3 - je .L042ctr32_two - pshufd $192,%xmm1,%xmm5 - por %xmm7,%xmm4 - cmpl $4,%eax - jb .L043ctr32_three - pshufd $128,%xmm1,%xmm6 - por %xmm7,%xmm5 - je .L044ctr32_four - por %xmm7,%xmm6 - call _aesni_encrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm4 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm5 - movups %xmm2,(%edi) - xorps %xmm1,%xmm6 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp .L040ctr32_ret -.align 16 -.L037ctr32_one_shortcut: - movups (%ebx),%xmm2 - movl 240(%edx),%ecx -.L041ctr32_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L045enc1_loop_7: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L045enc1_loop_7 -.byte 102,15,56,221,209 - movups (%esi),%xmm6 - xorps %xmm2,%xmm6 - movups %xmm6,(%edi) - jmp .L040ctr32_ret -.align 16 -.L042ctr32_two: - call _aesni_encrypt2 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp .L040ctr32_ret -.align 16 -.L043ctr32_three: - call _aesni_encrypt3 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - movups 32(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm7,%xmm4 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp .L040ctr32_ret -.align 16 -.L044ctr32_four: - call _aesni_encrypt4 - movups (%esi),%xmm6 - movups 16(%esi),%xmm7 - movups 32(%esi),%xmm1 - xorps %xmm6,%xmm2 - movups 48(%esi),%xmm0 - xorps %xmm7,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -.L040ctr32_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movl 80(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_ctr32_encrypt_blocks,.-.L_aesni_ctr32_encrypt_blocks_begin -.globl aesni_xts_encrypt -.type aesni_xts_encrypt,@function -.align 16 -aesni_xts_encrypt: -.L_aesni_xts_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L046enc1_loop_8: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L046enc1_loop_8 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - movl 240(%edx),%ecx - andl $-16,%esp - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - movl %edx,%ebp - movl %ecx,%ebx - subl $96,%eax - jc .L047xts_enc_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp .L048xts_enc_loop6 -.align 16 -.L048xts_enc_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,220,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call .L_aesni_encrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc .L048xts_enc_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -.L047xts_enc_short: - addl $96,%eax - jz .L049xts_enc_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb .L050xts_enc_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je .L051xts_enc_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb .L052xts_enc_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je .L053xts_enc_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call _aesni_encrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp .L054xts_enc_done -.align 16 -.L050xts_enc_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L055enc1_loop_9: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L055enc1_loop_9 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L051xts_enc_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call _aesni_encrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L052xts_enc_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call _aesni_encrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L053xts_enc_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call _aesni_encrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L054xts_enc_done -.align 16 -.L049xts_enc_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz .L056xts_enc_ret - movdqa %xmm1,%xmm5 - movl %eax,112(%esp) - jmp .L057xts_enc_steal -.align 16 -.L054xts_enc_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz .L056xts_enc_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm5 - paddq %xmm1,%xmm1 - pand 96(%esp),%xmm5 - pxor %xmm1,%xmm5 -.L057xts_enc_steal: - movzbl (%esi),%ecx - movzbl -16(%edi),%edx - leal 1(%esi),%esi - movb %cl,-16(%edi) - movb %dl,(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz .L057xts_enc_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups -16(%edi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L058enc1_loop_10: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L058enc1_loop_10 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,-16(%edi) -.L056xts_enc_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_xts_encrypt,.-.L_aesni_xts_encrypt_begin -.globl aesni_xts_decrypt -.type aesni_xts_decrypt,@function -.align 16 -aesni_xts_decrypt: -.L_aesni_xts_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L059enc1_loop_11: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L059enc1_loop_11 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - andl $-16,%esp - xorl %ebx,%ebx - testl $15,%eax - setnz %bl - shll $4,%ebx - subl %ebx,%eax - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ecx,%ebx - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - subl $96,%eax - jc .L060xts_dec_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp .L061xts_dec_loop6 -.align 16 -.L061xts_dec_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,222,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - call .L_aesni_decrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc .L061xts_dec_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -.L060xts_dec_short: - addl $96,%eax - jz .L062xts_dec_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb .L063xts_dec_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je .L064xts_dec_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb .L065xts_dec_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je .L066xts_dec_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call _aesni_decrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp .L067xts_dec_done -.align 16 -.L063xts_dec_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L068dec1_loop_12: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L068dec1_loop_12 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L064xts_dec_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call _aesni_decrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L065xts_dec_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call _aesni_decrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L066xts_dec_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call _aesni_decrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp .L067xts_dec_done -.align 16 -.L062xts_dec_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz .L069xts_dec_ret - movl %eax,112(%esp) - jmp .L070xts_dec_only_one_more -.align 16 -.L067xts_dec_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz .L069xts_dec_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 -.L070xts_dec_only_one_more: - pshufd $19,%xmm0,%xmm5 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm5 - pxor %xmm1,%xmm5 - movl %ebp,%edx - movl %ebx,%ecx - movups (%esi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L071dec1_loop_13: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L071dec1_loop_13 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) -.L072xts_dec_steal: - movzbl 16(%esi),%ecx - movzbl (%edi),%edx - leal 1(%esi),%esi - movb %cl,(%edi) - movb %dl,16(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz .L072xts_dec_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups (%edi),%xmm2 - xorps %xmm6,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L073dec1_loop_14: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L073dec1_loop_14 -.byte 102,15,56,223,209 - xorps %xmm6,%xmm2 - movups %xmm2,(%edi) -.L069xts_dec_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_xts_decrypt,.-.L_aesni_xts_decrypt_begin -.globl aesni_cbc_encrypt -.type aesni_cbc_encrypt,@function -.align 16 -aesni_cbc_encrypt: -.L_aesni_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl %esp,%ebx - movl 24(%esp),%edi - subl $24,%ebx - movl 28(%esp),%eax - andl $-16,%ebx - movl 32(%esp),%edx - movl 36(%esp),%ebp - testl %eax,%eax - jz .L074cbc_abort - cmpl $0,40(%esp) - xchgl %esp,%ebx - movups (%ebp),%xmm7 - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ebx,16(%esp) - movl %ecx,%ebx - je .L075cbc_decrypt - movaps %xmm7,%xmm2 - cmpl $16,%eax - jb .L076cbc_enc_tail - subl $16,%eax - jmp .L077cbc_enc_loop -.align 16 -.L077cbc_enc_loop: - movups (%esi),%xmm7 - leal 16(%esi),%esi - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm7 - leal 32(%edx),%edx - xorps %xmm7,%xmm2 -.L078enc1_loop_15: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L078enc1_loop_15 -.byte 102,15,56,221,209 - movl %ebx,%ecx - movl %ebp,%edx - movups %xmm2,(%edi) - leal 16(%edi),%edi - subl $16,%eax - jnc .L077cbc_enc_loop - addl $16,%eax - jnz .L076cbc_enc_tail - movaps %xmm2,%xmm7 - pxor %xmm2,%xmm2 - jmp .L079cbc_ret -.L076cbc_enc_tail: - movl %eax,%ecx -.long 2767451785 - movl $16,%ecx - subl %eax,%ecx - xorl %eax,%eax -.long 2868115081 - leal -16(%edi),%edi - movl %ebx,%ecx - movl %edi,%esi - movl %ebp,%edx - jmp .L077cbc_enc_loop -.align 16 -.L075cbc_decrypt: - cmpl $80,%eax - jbe .L080cbc_dec_tail - movaps %xmm7,(%esp) - subl $80,%eax - jmp .L081cbc_dec_loop6_enter -.align 16 -.L082cbc_dec_loop6: - movaps %xmm0,(%esp) - movups %xmm7,(%edi) - leal 16(%edi),%edi -.L081cbc_dec_loop6_enter: - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - call _aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm6 - movups 80(%esi),%xmm0 - xorps %xmm1,%xmm7 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 96(%esi),%esi - movups %xmm4,32(%edi) - movl %ebx,%ecx - movups %xmm5,48(%edi) - movl %ebp,%edx - movups %xmm6,64(%edi) - leal 80(%edi),%edi - subl $96,%eax - ja .L082cbc_dec_loop6 - movaps %xmm7,%xmm2 - movaps %xmm0,%xmm7 - addl $80,%eax - jle .L083cbc_dec_clear_tail_collected - movups %xmm2,(%edi) - leal 16(%edi),%edi -.L080cbc_dec_tail: - movups (%esi),%xmm2 - movaps %xmm2,%xmm6 - cmpl $16,%eax - jbe .L084cbc_dec_one - movups 16(%esi),%xmm3 - movaps %xmm3,%xmm5 - cmpl $32,%eax - jbe .L085cbc_dec_two - movups 32(%esi),%xmm4 - cmpl $48,%eax - jbe .L086cbc_dec_three - movups 48(%esi),%xmm5 - cmpl $64,%eax - jbe .L087cbc_dec_four - movups 64(%esi),%xmm6 - movaps %xmm7,(%esp) - movups (%esi),%xmm2 - xorps %xmm7,%xmm7 - call _aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm7 - xorps %xmm0,%xmm6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%edi) - pxor %xmm5,%xmm5 - leal 64(%edi),%edi - movaps %xmm6,%xmm2 - pxor %xmm6,%xmm6 - subl $80,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L084cbc_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -.L089dec1_loop_16: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz .L089dec1_loop_16 -.byte 102,15,56,223,209 - xorps %xmm7,%xmm2 - movaps %xmm6,%xmm7 - subl $16,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L085cbc_dec_two: - call _aesni_decrypt2 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movaps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leal 16(%edi),%edi - movaps %xmm5,%xmm7 - subl $32,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L086cbc_dec_three: - call _aesni_decrypt3 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm5,%xmm4 - movups %xmm2,(%edi) - movaps %xmm4,%xmm2 - pxor %xmm4,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - leal 32(%edi),%edi - movups 32(%esi),%xmm7 - subl $48,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L087cbc_dec_four: - call _aesni_decrypt4 - movups 16(%esi),%xmm1 - movups 32(%esi),%xmm0 - xorps %xmm7,%xmm2 - movups 48(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - leal 48(%edi),%edi - movaps %xmm5,%xmm2 - pxor %xmm5,%xmm5 - subl $64,%eax - jmp .L088cbc_dec_tail_collected -.align 16 -.L083cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 -.L088cbc_dec_tail_collected: - andl $15,%eax - jnz .L090cbc_dec_tail_partial - movups %xmm2,(%edi) - pxor %xmm0,%xmm0 - jmp .L079cbc_ret -.align 16 -.L090cbc_dec_tail_partial: - movaps %xmm2,(%esp) - pxor %xmm0,%xmm0 - movl $16,%ecx - movl %esp,%esi - subl %eax,%ecx -.long 2767451785 - movdqa %xmm2,(%esp) -.L079cbc_ret: - movl 16(%esp),%esp - movl 36(%esp),%ebp - pxor %xmm2,%xmm2 - pxor %xmm1,%xmm1 - movups %xmm7,(%ebp) - pxor %xmm7,%xmm7 -.L074cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size aesni_cbc_encrypt,.-.L_aesni_cbc_encrypt_begin -.type _aesni_set_encrypt_key,@function -.align 16 -_aesni_set_encrypt_key: - pushl %ebp - pushl %ebx - testl %eax,%eax - jz .L091bad_pointer - testl %edx,%edx - jz .L091bad_pointer - call .L092pic -.L092pic: - popl %ebx - leal .Lkey_const-.L092pic(%ebx),%ebx - leal OPENSSL_ia32cap_P,%ebp - movups (%eax),%xmm0 - xorps %xmm4,%xmm4 - movl 4(%ebp),%ebp - leal 16(%edx),%edx - andl $268437504,%ebp - cmpl $256,%ecx - je .L09314rounds - cmpl $192,%ecx - je .L09412rounds - cmpl $128,%ecx - jne .L095bad_keybits -.align 16 -.L09610rounds: - cmpl $268435456,%ebp - je .L09710rounds_alt - movl $9,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,200,1 - call .L098key_128_cold -.byte 102,15,58,223,200,2 - call .L099key_128 -.byte 102,15,58,223,200,4 - call .L099key_128 -.byte 102,15,58,223,200,8 - call .L099key_128 -.byte 102,15,58,223,200,16 - call .L099key_128 -.byte 102,15,58,223,200,32 - call .L099key_128 -.byte 102,15,58,223,200,64 - call .L099key_128 -.byte 102,15,58,223,200,128 - call .L099key_128 -.byte 102,15,58,223,200,27 - call .L099key_128 -.byte 102,15,58,223,200,54 - call .L099key_128 - movups %xmm0,(%edx) - movl %ecx,80(%edx) - jmp .L100good_key -.align 16 -.L099key_128: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.L098key_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 16 -.L09710rounds_alt: - movdqa (%ebx),%xmm5 - movl $8,%ecx - movdqa 32(%ebx),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,-16(%edx) -.L101loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leal 16(%edx),%edx - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%edx) - movdqa %xmm0,%xmm2 - decl %ecx - jnz .L101loop_key128 - movdqa 48(%ebx),%xmm4 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%edx) - movl $9,%ecx - movl %ecx,96(%edx) - jmp .L100good_key -.align 16 -.L09412rounds: - movq 16(%eax),%xmm2 - cmpl $268435456,%ebp - je .L10212rounds_alt - movl $11,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,202,1 - call .L103key_192a_cold -.byte 102,15,58,223,202,2 - call .L104key_192b -.byte 102,15,58,223,202,4 - call .L105key_192a -.byte 102,15,58,223,202,8 - call .L104key_192b -.byte 102,15,58,223,202,16 - call .L105key_192a -.byte 102,15,58,223,202,32 - call .L104key_192b -.byte 102,15,58,223,202,64 - call .L105key_192a -.byte 102,15,58,223,202,128 - call .L104key_192b - movups %xmm0,(%edx) - movl %ecx,48(%edx) - jmp .L100good_key -.align 16 -.L105key_192a: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.align 16 -.L103key_192a_cold: - movaps %xmm2,%xmm5 -.L106key_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - ret -.align 16 -.L104key_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%edx) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%edx) - leal 32(%edx),%edx - jmp .L106key_192b_warm -.align 16 -.L10212rounds_alt: - movdqa 16(%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $8,%ecx - movdqu %xmm0,-16(%edx) -.L107loop_key192: - movq %xmm2,(%edx) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leal 24(%edx),%edx - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%edx) - decl %ecx - jnz .L107loop_key192 - movl $11,%ecx - movl %ecx,32(%edx) - jmp .L100good_key -.align 16 -.L09314rounds: - movups 16(%eax),%xmm2 - leal 16(%edx),%edx - cmpl $268435456,%ebp - je .L10814rounds_alt - movl $13,%ecx - movups %xmm0,-32(%edx) - movups %xmm2,-16(%edx) -.byte 102,15,58,223,202,1 - call .L109key_256a_cold -.byte 102,15,58,223,200,1 - call .L110key_256b -.byte 102,15,58,223,202,2 - call .L111key_256a -.byte 102,15,58,223,200,2 - call .L110key_256b -.byte 102,15,58,223,202,4 - call .L111key_256a -.byte 102,15,58,223,200,4 - call .L110key_256b -.byte 102,15,58,223,202,8 - call .L111key_256a -.byte 102,15,58,223,200,8 - call .L110key_256b -.byte 102,15,58,223,202,16 - call .L111key_256a -.byte 102,15,58,223,200,16 - call .L110key_256b -.byte 102,15,58,223,202,32 - call .L111key_256a -.byte 102,15,58,223,200,32 - call .L110key_256b -.byte 102,15,58,223,202,64 - call .L111key_256a - movups %xmm0,(%edx) - movl %ecx,16(%edx) - xorl %eax,%eax - jmp .L100good_key -.align 16 -.L111key_256a: - movups %xmm2,(%edx) - leal 16(%edx),%edx -.L109key_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 16 -.L110key_256b: - movups %xmm0,(%edx) - leal 16(%edx),%edx - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - ret -.align 16 -.L10814rounds_alt: - movdqa (%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $7,%ecx - movdqu %xmm0,-32(%edx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,-16(%edx) -.L112loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - decl %ecx - jz .L113done_key256 - pshufd $255,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%edx) - leal 32(%edx),%edx - movdqa %xmm2,%xmm1 - jmp .L112loop_key256 -.L113done_key256: - movl $13,%ecx - movl %ecx,16(%edx) -.L100good_key: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - xorl %eax,%eax - popl %ebx - popl %ebp - ret -.align 4 -.L091bad_pointer: - movl $-1,%eax - popl %ebx - popl %ebp - ret -.align 4 -.L095bad_keybits: - pxor %xmm0,%xmm0 - movl $-2,%eax - popl %ebx - popl %ebp - ret -.size _aesni_set_encrypt_key,.-_aesni_set_encrypt_key -.globl aesni_set_encrypt_key -.type aesni_set_encrypt_key,@function -.align 16 -aesni_set_encrypt_key: -.L_aesni_set_encrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call _aesni_set_encrypt_key - ret -.size aesni_set_encrypt_key,.-.L_aesni_set_encrypt_key_begin -.globl aesni_set_decrypt_key -.type aesni_set_decrypt_key,@function -.align 16 -aesni_set_decrypt_key: -.L_aesni_set_decrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call _aesni_set_encrypt_key - movl 12(%esp),%edx - shll $4,%ecx - testl %eax,%eax - jnz .L114dec_key_ret - leal 16(%edx,%ecx,1),%eax - movups (%edx),%xmm0 - movups (%eax),%xmm1 - movups %xmm0,(%eax) - movups %xmm1,(%edx) - leal 16(%edx),%edx - leal -16(%eax),%eax -.L115dec_key_inverse: - movups (%edx),%xmm0 - movups (%eax),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leal 16(%edx),%edx - leal -16(%eax),%eax - movups %xmm0,16(%eax) - movups %xmm1,-16(%edx) - cmpl %edx,%eax - ja .L115dec_key_inverse - movups (%edx),%xmm0 -.byte 102,15,56,219,192 - movups %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorl %eax,%eax -.L114dec_key_ret: - ret -.size aesni_set_decrypt_key,.-.L_aesni_set_decrypt_key_begin -.align 64 -.Lkey_const: -.long 202313229,202313229,202313229,202313229 -.long 67569157,67569157,67569157,67569157 -.long 1,1,1,1 -.long 27,27,27,27 -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/aes/vpaes-x86.s b/deps/openssl/asm_obsolete/x86-elf-gas/aes/vpaes-x86.s deleted file mode 100644 index 5dc8d19633a8ae..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/aes/vpaes-x86.s +++ /dev/null @@ -1,661 +0,0 @@ -.file "vpaes-x86.s" -.text -.align 64 -.L_vpaes_consts: -.long 218628480,235210255,168496130,67568393 -.long 252381056,17041926,33884169,51187212 -.long 252645135,252645135,252645135,252645135 -.long 1512730624,3266504856,1377990664,3401244816 -.long 830229760,1275146365,2969422977,3447763452 -.long 3411033600,2979783055,338359620,2782886510 -.long 4209124096,907596821,221174255,1006095553 -.long 191964160,3799684038,3164090317,1589111125 -.long 182528256,1777043520,2877432650,3265356744 -.long 1874708224,3503451415,3305285752,363511674 -.long 1606117888,3487855781,1093350906,2384367825 -.long 197121,67569157,134941193,202313229 -.long 67569157,134941193,202313229,197121 -.long 134941193,202313229,197121,67569157 -.long 202313229,197121,67569157,134941193 -.long 33619971,100992007,168364043,235736079 -.long 235736079,33619971,100992007,168364043 -.long 168364043,235736079,33619971,100992007 -.long 100992007,168364043,235736079,33619971 -.long 50462976,117835012,185207048,252579084 -.long 252314880,51251460,117574920,184942860 -.long 184682752,252054788,50987272,118359308 -.long 118099200,185467140,251790600,50727180 -.long 2946363062,528716217,1300004225,1881839624 -.long 1532713819,1532713819,1532713819,1532713819 -.long 3602276352,4288629033,3737020424,4153884961 -.long 1354558464,32357713,2958822624,3775749553 -.long 1201988352,132424512,1572796698,503232858 -.long 2213177600,1597421020,4103937655,675398315 -.long 2749646592,4273543773,1511898873,121693092 -.long 3040248576,1103263732,2871565598,1608280554 -.long 2236667136,2588920351,482954393,64377734 -.long 3069987328,291237287,2117370568,3650299247 -.long 533321216,3573750986,2572112006,1401264716 -.long 1339849704,2721158661,548607111,3445553514 -.long 2128193280,3054596040,2183486460,1257083700 -.long 655635200,1165381986,3923443150,2344132524 -.long 190078720,256924420,290342170,357187870 -.long 1610966272,2263057382,4103205268,309794674 -.long 2592527872,2233205587,1335446729,3402964816 -.long 3973531904,3225098121,3002836325,1918774430 -.long 3870401024,2102906079,2284471353,4117666579 -.long 617007872,1021508343,366931923,691083277 -.long 2528395776,3491914898,2968704004,1613121270 -.long 3445188352,3247741094,844474987,4093578302 -.long 651481088,1190302358,1689581232,574775300 -.long 4289380608,206939853,2555985458,2489840491 -.long 2130264064,327674451,3566485037,3349835193 -.long 2470714624,316102159,3636825756,3393945945 -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -.byte 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -.byte 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -.byte 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -.byte 118,101,114,115,105,116,121,41,0 -.align 64 -.type _vpaes_preheat,@function -.align 16 -_vpaes_preheat: - addl (%esp),%ebp - movdqa -48(%ebp),%xmm7 - movdqa -16(%ebp),%xmm6 - ret -.size _vpaes_preheat,.-_vpaes_preheat -.type _vpaes_encrypt_core,@function -.align 16 -_vpaes_encrypt_core: - movl $16,%ecx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa (%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - movdqu (%edx),%xmm5 -.byte 102,15,56,0,208 - movdqa 16(%ebp),%xmm0 - pxor %xmm5,%xmm2 - psrld $4,%xmm1 - addl $16,%edx -.byte 102,15,56,0,193 - leal 192(%ebp),%ebx - pxor %xmm2,%xmm0 - jmp .L000enc_entry -.align 16 -.L001enc_loop: - movdqa 32(%ebp),%xmm4 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa 64(%ebp),%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%ebx,%ecx,1),%xmm1 -.byte 102,15,56,0,234 - movdqa 80(%ebp),%xmm2 - movdqa (%ebx,%ecx,1),%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addl $16,%edx - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addl $16,%ecx - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andl $48,%ecx - subl $1,%eax - pxor %xmm3,%xmm0 -.L000enc_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm6,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm7,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm5 - pxor %xmm1,%xmm3 - jnz .L001enc_loop - movdqa 96(%ebp),%xmm4 - movdqa 112(%ebp),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%ebx,%ecx,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - ret -.size _vpaes_encrypt_core,.-_vpaes_encrypt_core -.type _vpaes_decrypt_core,@function -.align 16 -_vpaes_decrypt_core: - leal 608(%ebp),%ebx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa -64(%ebx),%xmm2 - pandn %xmm0,%xmm1 - movl %eax,%ecx - psrld $4,%xmm1 - movdqu (%edx),%xmm5 - shll $4,%ecx - pand %xmm6,%xmm0 -.byte 102,15,56,0,208 - movdqa -48(%ebx),%xmm0 - xorl $48,%ecx -.byte 102,15,56,0,193 - andl $48,%ecx - pxor %xmm5,%xmm2 - movdqa 176(%ebp),%xmm5 - pxor %xmm2,%xmm0 - addl $16,%edx - leal -352(%ebx,%ecx,1),%ecx - jmp .L002dec_entry -.align 16 -.L003dec_loop: - movdqa -32(%ebx),%xmm4 - movdqa -16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa (%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addl $16,%edx -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subl $1,%eax -.L002dec_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - psrld $4,%xmm1 -.byte 102,15,56,0,208 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm7,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm0 - pxor %xmm1,%xmm3 - jnz .L003dec_loop - movdqa 96(%ebx),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%ebx),%xmm0 - movdqa (%ecx),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - ret -.size _vpaes_decrypt_core,.-_vpaes_decrypt_core -.type _vpaes_schedule_core,@function -.align 16 -_vpaes_schedule_core: - addl (%esp),%ebp - movdqu (%esi),%xmm0 - movdqa 320(%ebp),%xmm2 - movdqa %xmm0,%xmm3 - leal (%ebp),%ebx - movdqa %xmm2,4(%esp) - call _vpaes_schedule_transform - movdqa %xmm0,%xmm7 - testl %edi,%edi - jnz .L004schedule_am_decrypting - movdqu %xmm0,(%edx) - jmp .L005schedule_go -.L004schedule_am_decrypting: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%edx) - xorl $48,%ecx -.L005schedule_go: - cmpl $192,%eax - ja .L006schedule_256 - je .L007schedule_192 -.L008schedule_128: - movl $10,%eax -.L009loop_schedule_128: - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - jmp .L009loop_schedule_128 -.align 16 -.L007schedule_192: - movdqu 8(%esi),%xmm0 - call _vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%eax -.L011loop_schedule_192: - call _vpaes_schedule_round -.byte 102,15,58,15,198,8 - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - call _vpaes_schedule_mangle - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - call _vpaes_schedule_192_smear - jmp .L011loop_schedule_192 -.align 16 -.L006schedule_256: - movdqu 16(%esi),%xmm0 - call _vpaes_schedule_transform - movl $7,%eax -.L012loop_schedule_256: - call _vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - call _vpaes_schedule_round - decl %eax - jz .L010schedule_mangle_last - call _vpaes_schedule_mangle - pshufd $255,%xmm0,%xmm0 - movdqa %xmm7,20(%esp) - movdqa %xmm6,%xmm7 - call .L_vpaes_schedule_low_round - movdqa 20(%esp),%xmm7 - jmp .L012loop_schedule_256 -.align 16 -.L010schedule_mangle_last: - leal 384(%ebp),%ebx - testl %edi,%edi - jnz .L013schedule_mangle_last_dec - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,193 - leal 352(%ebp),%ebx - addl $32,%edx -.L013schedule_mangle_last_dec: - addl $-16,%edx - pxor 336(%ebp),%xmm0 - call _vpaes_schedule_transform - movdqu %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - ret -.size _vpaes_schedule_core,.-_vpaes_schedule_core -.type _vpaes_schedule_192_smear,@function -.align 16 -_vpaes_schedule_192_smear: - pshufd $128,%xmm6,%xmm1 - pshufd $254,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - ret -.size _vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear -.type _vpaes_schedule_round,@function -.align 16 -_vpaes_schedule_round: - movdqa 8(%esp),%xmm2 - pxor %xmm1,%xmm1 -.byte 102,15,58,15,202,15 -.byte 102,15,58,15,210,15 - pxor %xmm1,%xmm7 - pshufd $255,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - movdqa %xmm2,8(%esp) -.L_vpaes_schedule_low_round: - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor 336(%ebp),%xmm7 - movdqa -16(%ebp),%xmm4 - movdqa -48(%ebp),%xmm5 - movdqa %xmm4,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm4,%xmm0 - movdqa -32(%ebp),%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm5,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm5,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa 32(%ebp),%xmm4 -.byte 102,15,56,0,226 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - ret -.size _vpaes_schedule_round,.-_vpaes_schedule_round -.type _vpaes_schedule_transform,@function -.align 16 -_vpaes_schedule_transform: - movdqa -16(%ebp),%xmm2 - movdqa %xmm2,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm0 - movdqa (%ebx),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%ebx),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - ret -.size _vpaes_schedule_transform,.-_vpaes_schedule_transform -.type _vpaes_schedule_mangle,@function -.align 16 -_vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa 128(%ebp),%xmm5 - testl %edi,%edi - jnz .L014schedule_mangle_dec - addl $16,%edx - pxor 336(%ebp),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - jmp .L015schedule_mangle_both -.align 16 -.L014schedule_mangle_dec: - movdqa -16(%ebp),%xmm2 - leal 416(%ebp),%esi - movdqa %xmm2,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm4 - movdqa (%esi),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 32(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 64(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 96(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - addl $-16,%edx -.L015schedule_mangle_both: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - addl $-16,%ecx - andl $48,%ecx - movdqu %xmm3,(%edx) - ret -.size _vpaes_schedule_mangle,.-_vpaes_schedule_mangle -.globl vpaes_set_encrypt_key -.type vpaes_set_encrypt_key,@function -.align 16 -vpaes_set_encrypt_key: -.L_vpaes_set_encrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - movl $48,%ecx - movl $0,%edi - leal .L_vpaes_consts+0x30-.L016pic_point,%ebp - call _vpaes_schedule_core -.L016pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_set_encrypt_key,.-.L_vpaes_set_encrypt_key_begin -.globl vpaes_set_decrypt_key -.type vpaes_set_decrypt_key,@function -.align 16 -vpaes_set_decrypt_key: -.L_vpaes_set_decrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - shll $4,%ebx - leal 16(%edx,%ebx,1),%edx - movl $1,%edi - movl %eax,%ecx - shrl $1,%ecx - andl $32,%ecx - xorl $32,%ecx - leal .L_vpaes_consts+0x30-.L017pic_point,%ebp - call _vpaes_schedule_core -.L017pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_set_decrypt_key,.-.L_vpaes_set_decrypt_key_begin -.globl vpaes_encrypt -.type vpaes_encrypt,@function -.align 16 -vpaes_encrypt: -.L_vpaes_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal .L_vpaes_consts+0x30-.L018pic_point,%ebp - call _vpaes_preheat -.L018pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call _vpaes_encrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_encrypt,.-.L_vpaes_encrypt_begin -.globl vpaes_decrypt -.type vpaes_decrypt,@function -.align 16 -vpaes_decrypt: -.L_vpaes_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal .L_vpaes_consts+0x30-.L019pic_point,%ebp - call _vpaes_preheat -.L019pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call _vpaes_decrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_decrypt,.-.L_vpaes_decrypt_begin -.globl vpaes_cbc_encrypt -.type vpaes_cbc_encrypt,@function -.align 16 -vpaes_cbc_encrypt: -.L_vpaes_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - subl $16,%eax - jc .L020cbc_abort - leal -56(%esp),%ebx - movl 36(%esp),%ebp - andl $-16,%ebx - movl 40(%esp),%ecx - xchgl %esp,%ebx - movdqu (%ebp),%xmm1 - subl %esi,%edi - movl %ebx,48(%esp) - movl %edi,(%esp) - movl %edx,4(%esp) - movl %ebp,8(%esp) - movl %eax,%edi - leal .L_vpaes_consts+0x30-.L021pic_point,%ebp - call _vpaes_preheat -.L021pic_point: - cmpl $0,%ecx - je .L022cbc_dec_loop - jmp .L023cbc_enc_loop -.align 16 -.L023cbc_enc_loop: - movdqu (%esi),%xmm0 - pxor %xmm1,%xmm0 - call _vpaes_encrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - movdqa %xmm0,%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc .L023cbc_enc_loop - jmp .L024cbc_done -.align 16 -.L022cbc_dec_loop: - movdqu (%esi),%xmm0 - movdqa %xmm1,16(%esp) - movdqa %xmm0,32(%esp) - call _vpaes_decrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - pxor 16(%esp),%xmm0 - movdqa 32(%esp),%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc .L022cbc_dec_loop -.L024cbc_done: - movl 8(%esp),%ebx - movl 48(%esp),%esp - movdqu %xmm1,(%ebx) -.L020cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size vpaes_cbc_encrypt,.-.L_vpaes_cbc_encrypt_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/bf/bf-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/bf/bf-586.s deleted file mode 100644 index aa718d40cd5c2a..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/bf/bf-586.s +++ /dev/null @@ -1,896 +0,0 @@ -.file "bf-586.s" -.text -.globl BF_encrypt -.type BF_encrypt,@function -.align 16 -BF_encrypt: -.L_BF_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - xorl %eax,%eax - movl (%ebp),%ebx - xorl %ecx,%ecx - xorl %ebx,%edi - - - movl 4(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 8(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 12(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 16(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 20(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 24(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 28(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 32(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 36(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 40(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 44(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 48(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 52(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 56(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 60(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 64(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - - movl 20(%esp),%eax - xorl %ebx,%edi - movl 68(%ebp),%edx - xorl %edx,%esi - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size BF_encrypt,.-.L_BF_encrypt_begin -.globl BF_decrypt -.type BF_decrypt,@function -.align 16 -BF_decrypt: -.L_BF_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - xorl %eax,%eax - movl 68(%ebp),%ebx - xorl %ecx,%ecx - xorl %ebx,%edi - - - movl 64(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 60(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 56(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 52(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 48(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 44(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 40(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 36(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 32(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 28(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 24(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 20(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 16(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 12(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%edi - - - movl 8(%ebp),%edx - movl %edi,%ebx - xorl %edx,%esi - shrl $16,%ebx - movl %edi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - xorl %eax,%eax - xorl %ebx,%esi - - - movl 4(%ebp),%edx - movl %esi,%ebx - xorl %edx,%edi - shrl $16,%ebx - movl %esi,%edx - movb %bh,%al - andl $255,%ebx - movb %dh,%cl - andl $255,%edx - movl 72(%ebp,%eax,4),%eax - movl 1096(%ebp,%ebx,4),%ebx - addl %eax,%ebx - movl 2120(%ebp,%ecx,4),%eax - xorl %eax,%ebx - movl 3144(%ebp,%edx,4),%edx - addl %edx,%ebx - - movl 20(%esp),%eax - xorl %ebx,%edi - movl (%ebp),%edx - xorl %edx,%esi - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size BF_decrypt,.-.L_BF_decrypt_begin -.globl BF_cbc_encrypt -.type BF_cbc_encrypt,@function -.align 16 -BF_cbc_encrypt: -.L_BF_cbc_encrypt_begin: - - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ebp - - 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 56(%esp),%ecx - - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz .L000decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz .L001encrypt_finish -.L002encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L002encrypt_loop -.L001encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L003finish - call .L004PIC_point -.L004PIC_point: - popl %edx - leal .L005cbc_enc_jmp_table-.L004PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -.L006ej7: - movb 6(%esi),%dh - shll $8,%edx -.L007ej6: - movb 5(%esi),%dh -.L008ej5: - movb 4(%esi),%dl -.L009ej4: - movl (%esi),%ecx - jmp .L010ejend -.L011ej3: - movb 2(%esi),%ch - shll $8,%ecx -.L012ej2: - movb 1(%esi),%ch -.L013ej1: - movb (%esi),%cl -.L010ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp .L003finish -.L000decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz .L014decrypt_finish -.L015decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L015decrypt_loop -.L014decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L003finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -.L016dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -.L017dj6: - movb %dh,5(%edi) -.L018dj5: - movb %dl,4(%edi) -.L019dj4: - movl %ecx,(%edi) - jmp .L020djend -.L021dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -.L022dj2: - movb %ch,1(%esi) -.L023dj1: - movb %cl,(%esi) -.L020djend: - jmp .L003finish -.L003finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L005cbc_enc_jmp_table: -.long 0 -.long .L013ej1-.L004PIC_point -.long .L012ej2-.L004PIC_point -.long .L011ej3-.L004PIC_point -.long .L009ej4-.L004PIC_point -.long .L008ej5-.L004PIC_point -.long .L007ej6-.L004PIC_point -.long .L006ej7-.L004PIC_point -.align 64 -.size BF_cbc_encrypt,.-.L_BF_cbc_encrypt_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/bn/bn-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/bn/bn-586.s deleted file mode 100644 index 3e20e9df09cc2a..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/bn/bn-586.s +++ /dev/null @@ -1,1521 +0,0 @@ -.file "../openssl/crypto/bn/asm/bn-586.s" -.text -.globl bn_mul_add_words -.type bn_mul_add_words,@function -.align 16 -bn_mul_add_words: -.L_bn_mul_add_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L000maw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 - jmp .L001maw_sse2_entry -.align 16 -.L002maw_sse2_unrolled: - movd (%eax),%mm3 - paddq %mm3,%mm1 - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - movd 4(%edx),%mm4 - pmuludq %mm0,%mm4 - movd 8(%edx),%mm6 - pmuludq %mm0,%mm6 - movd 12(%edx),%mm7 - pmuludq %mm0,%mm7 - paddq %mm2,%mm1 - movd 4(%eax),%mm3 - paddq %mm4,%mm3 - movd 8(%eax),%mm5 - paddq %mm6,%mm5 - movd 12(%eax),%mm4 - paddq %mm4,%mm7 - movd %mm1,(%eax) - movd 16(%edx),%mm2 - pmuludq %mm0,%mm2 - psrlq $32,%mm1 - movd 20(%edx),%mm4 - pmuludq %mm0,%mm4 - paddq %mm3,%mm1 - movd 24(%edx),%mm6 - pmuludq %mm0,%mm6 - movd %mm1,4(%eax) - psrlq $32,%mm1 - movd 28(%edx),%mm3 - addl $32,%edx - pmuludq %mm0,%mm3 - paddq %mm5,%mm1 - movd 16(%eax),%mm5 - paddq %mm5,%mm2 - movd %mm1,8(%eax) - psrlq $32,%mm1 - paddq %mm7,%mm1 - movd 20(%eax),%mm5 - paddq %mm5,%mm4 - movd %mm1,12(%eax) - psrlq $32,%mm1 - paddq %mm2,%mm1 - movd 24(%eax),%mm5 - paddq %mm5,%mm6 - movd %mm1,16(%eax) - psrlq $32,%mm1 - paddq %mm4,%mm1 - movd 28(%eax),%mm5 - paddq %mm5,%mm3 - movd %mm1,20(%eax) - psrlq $32,%mm1 - paddq %mm6,%mm1 - movd %mm1,24(%eax) - psrlq $32,%mm1 - paddq %mm3,%mm1 - movd %mm1,28(%eax) - leal 32(%eax),%eax - psrlq $32,%mm1 - subl $8,%ecx - jz .L003maw_sse2_exit -.L001maw_sse2_entry: - testl $4294967288,%ecx - jnz .L002maw_sse2_unrolled -.align 4 -.L004maw_sse2_loop: - movd (%edx),%mm2 - movd (%eax),%mm3 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm3,%mm1 - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz .L004maw_sse2_loop -.L003maw_sse2_exit: - movd %mm1,%eax - emms - ret -.align 16 -.L000maw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 28(%esp),%ecx - movl 24(%esp),%ebx - andl $4294967288,%ecx - movl 32(%esp),%ebp - pushl %ecx - jz .L005maw_finish -.align 16 -.L006maw_loop: - - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - - movl 28(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 28(%edi),%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - subl $8,%ecx - leal 32(%ebx),%ebx - leal 32(%edi),%edi - jnz .L006maw_loop -.L005maw_finish: - movl 32(%esp),%ecx - andl $7,%ecx - jnz .L007maw_finish2 - jmp .L008maw_end -.L007maw_finish2: - - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,4(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,8(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,12(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,16(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,20(%edi) - movl %edx,%esi - jz .L008maw_end - - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -.L008maw_end: - movl %esi,%eax - popl %ecx - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_add_words,.-.L_bn_mul_add_words_begin -.globl bn_mul_words -.type bn_mul_words,@function -.align 16 -bn_mul_words: -.L_bn_mul_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L009mw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 -.align 16 -.L010mw_sse2_loop: - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz .L010mw_sse2_loop - movd %mm1,%eax - emms - ret -.align 16 -.L009mw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ebp - movl 32(%esp),%ecx - andl $4294967288,%ebp - jz .L011mw_finish -.L012mw_loop: - - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - - movl 28(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - addl $32,%ebx - addl $32,%edi - subl $8,%ebp - jz .L011mw_finish - jmp .L012mw_loop -.L011mw_finish: - movl 28(%esp),%ebp - andl $7,%ebp - jnz .L013mw_finish2 - jmp .L014mw_end -.L013mw_finish2: - - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - decl %ebp - jz .L014mw_end - - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -.L014mw_end: - movl %esi,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_words,.-.L_bn_mul_words_begin -.globl bn_sqr_words -.type bn_sqr_words,@function -.align 16 -bn_sqr_words: -.L_bn_sqr_words_begin: - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L015sqr_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx -.align 16 -.L016sqr_sse2_loop: - movd (%edx),%mm0 - pmuludq %mm0,%mm0 - leal 4(%edx),%edx - movq %mm0,(%eax) - subl $1,%ecx - leal 8(%eax),%eax - jnz .L016sqr_sse2_loop - emms - ret -.align 16 -.L015sqr_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebx - andl $4294967288,%ebx - jz .L017sw_finish -.L018sw_loop: - - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - movl %edx,4(%esi) - - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - movl %edx,12(%esi) - - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - movl %edx,20(%esi) - - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - movl %edx,28(%esi) - - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - movl %edx,36(%esi) - - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - movl %edx,44(%esi) - - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) - - movl 28(%edi),%eax - mull %eax - movl %eax,56(%esi) - movl %edx,60(%esi) - - addl $32,%edi - addl $64,%esi - subl $8,%ebx - jnz .L018sw_loop -.L017sw_finish: - movl 28(%esp),%ebx - andl $7,%ebx - jz .L019sw_end - - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - decl %ebx - movl %edx,4(%esi) - jz .L019sw_end - - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - decl %ebx - movl %edx,12(%esi) - jz .L019sw_end - - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - decl %ebx - movl %edx,20(%esi) - jz .L019sw_end - - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - decl %ebx - movl %edx,28(%esi) - jz .L019sw_end - - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - decl %ebx - movl %edx,36(%esi) - jz .L019sw_end - - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - decl %ebx - movl %edx,44(%esi) - jz .L019sw_end - - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) -.L019sw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sqr_words,.-.L_bn_sqr_words_begin -.globl bn_div_words -.type bn_div_words,@function -.align 16 -bn_div_words: -.L_bn_div_words_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 12(%esp),%ecx - divl %ecx - ret -.size bn_div_words,.-.L_bn_div_words_begin -.globl bn_add_words -.type bn_add_words,@function -.align 16 -bn_add_words: -.L_bn_add_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L020aw_finish -.L021aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L021aw_loop -.L020aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L022aw_end - - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L022aw_end - - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L022aw_end - - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L022aw_end - - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L022aw_end - - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L022aw_end - - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L022aw_end - - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -.L022aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_add_words,.-.L_bn_add_words_begin -.globl bn_sub_words -.type bn_sub_words,@function -.align 16 -bn_sub_words: -.L_bn_sub_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L023aw_finish -.L024aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L024aw_loop -.L023aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L025aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L025aw_end - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L025aw_end - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L025aw_end - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L025aw_end - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L025aw_end - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L025aw_end - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -.L025aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sub_words,.-.L_bn_sub_words_begin -.globl bn_sub_part_words -.type bn_sub_part_words,@function -.align 16 -bn_sub_part_words: -.L_bn_sub_part_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz .L026aw_finish -.L027aw_loop: - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L027aw_loop -.L026aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz .L028aw_end - - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx -.L028aw_end: - cmpl $0,36(%esp) - je .L029pw_end - movl 36(%esp),%ebp - cmpl $0,%ebp - je .L029pw_end - jge .L030pw_pos - - movl $0,%edx - subl %ebp,%edx - movl %edx,%ebp - andl $4294967288,%ebp - jz .L031pw_neg_finish -.L032pw_neg_loop: - - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - - movl $0,%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz .L032pw_neg_loop -.L031pw_neg_finish: - movl 36(%esp),%edx - movl $0,%ebp - subl %edx,%ebp - andl $7,%ebp - jz .L029pw_end - - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz .L029pw_end - - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - jmp .L029pw_end -.L030pw_pos: - andl $4294967288,%ebp - jz .L033pw_pos_finish -.L034pw_pos_loop: - - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc .L035pw_nc0 - - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc .L036pw_nc1 - - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc .L037pw_nc2 - - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc .L038pw_nc3 - - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc .L039pw_nc4 - - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc .L040pw_nc5 - - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc .L041pw_nc6 - - movl 28(%esi),%ecx - subl %eax,%ecx - movl %ecx,28(%ebx) - jnc .L042pw_nc7 - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz .L034pw_pos_loop -.L033pw_pos_finish: - movl 36(%esp),%ebp - andl $7,%ebp - jz .L029pw_end - - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc .L043pw_tail_nc0 - decl %ebp - jz .L029pw_end - - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc .L044pw_tail_nc1 - decl %ebp - jz .L029pw_end - - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc .L045pw_tail_nc2 - decl %ebp - jz .L029pw_end - - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc .L046pw_tail_nc3 - decl %ebp - jz .L029pw_end - - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc .L047pw_tail_nc4 - decl %ebp - jz .L029pw_end - - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc .L048pw_tail_nc5 - decl %ebp - jz .L029pw_end - - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc .L049pw_tail_nc6 - movl $1,%eax - jmp .L029pw_end -.L050pw_nc_loop: - movl (%esi),%ecx - movl %ecx,(%ebx) -.L035pw_nc0: - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -.L036pw_nc1: - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -.L037pw_nc2: - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -.L038pw_nc3: - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -.L039pw_nc4: - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -.L040pw_nc5: - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -.L041pw_nc6: - movl 28(%esi),%ecx - movl %ecx,28(%ebx) -.L042pw_nc7: - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz .L050pw_nc_loop - movl 36(%esp),%ebp - andl $7,%ebp - jz .L051pw_nc_end - movl (%esi),%ecx - movl %ecx,(%ebx) -.L043pw_tail_nc0: - decl %ebp - jz .L051pw_nc_end - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -.L044pw_tail_nc1: - decl %ebp - jz .L051pw_nc_end - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -.L045pw_tail_nc2: - decl %ebp - jz .L051pw_nc_end - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -.L046pw_tail_nc3: - decl %ebp - jz .L051pw_nc_end - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -.L047pw_tail_nc4: - decl %ebp - jz .L051pw_nc_end - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -.L048pw_tail_nc5: - decl %ebp - jz .L051pw_nc_end - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -.L049pw_tail_nc6: -.L051pw_nc_end: - movl $0,%eax -.L029pw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_sub_part_words,.-.L_bn_sub_part_words_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/bn/co-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/bn/co-586.s deleted file mode 100644 index 1128e3e959a3a6..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/bn/co-586.s +++ /dev/null @@ -1,1254 +0,0 @@ -.file "../openssl/crypto/bn/asm/co-586.s" -.text -.globl bn_mul_comba8 -.type bn_mul_comba8,@function -.align 16 -bn_mul_comba8: -.L_bn_mul_comba8_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 16(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 20(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 24(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,24(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - movl %ecx,28(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - movl %ebp,32(%eax) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - movl %ebx,36(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - movl %ecx,40(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - movl %ebp,44(%eax) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - movl %ebx,48(%eax) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - movl %ecx,52(%eax) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%eax) - - - movl %ebx,60(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_mul_comba8,.-.L_bn_mul_comba8_begin -.globl bn_mul_comba4 -.type bn_mul_comba4,@function -.align 16 -bn_mul_comba4: -.L_bn_mul_comba4_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 12(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 12(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%eax) - - - movl %ecx,28(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_mul_comba4,.-.L_bn_mul_comba4_begin -.globl bn_sqr_comba8 -.type bn_sqr_comba8,@function -.align 16 -bn_sqr_comba8: -.L_bn_sqr_comba8_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl (%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 12(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl (%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 20(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - movl (%esi),%edx - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,24(%edi) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%eax - adcl $0,%ebx - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,28(%edi) - movl 4(%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 20(%esi),%eax - adcl $0,%ecx - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl 8(%esi),%edx - adcl $0,%ecx - movl %ebp,32(%edi) - movl 28(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - movl 12(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 16(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 28(%esi),%eax - adcl $0,%ebp - movl %ebx,36(%edi) - movl 12(%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 16(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%edx - adcl $0,%ebx - movl %ecx,40(%edi) - movl 28(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 20(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 28(%esi),%eax - adcl $0,%ecx - movl %ebp,44(%edi) - movl 20(%esi),%edx - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%edx - adcl $0,%ebp - movl %ebx,48(%edi) - movl 28(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,52(%edi) - - - xorl %ecx,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%edi) - - movl %ebx,60(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_sqr_comba8,.-.L_bn_sqr_comba8_begin -.globl bn_sqr_comba4 -.type bn_sqr_comba4,@function -.align 16 -bn_sqr_comba4: -.L_bn_sqr_comba4_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - - - xorl %ebp,%ebp - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl 4(%esi),%edx - - - xorl %ebx,%ebx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 12(%esi),%eax - - - xorl %ecx,%ecx - - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - - - xorl %ebp,%ebp - - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%edi) - - movl %ecx,28(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-gf2m.s b/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-gf2m.s deleted file mode 100644 index d8fff7c102714d..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-gf2m.s +++ /dev/null @@ -1,343 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-gf2m.s" -.text -.type _mul_1x1_mmx,@function -.align 16 -_mul_1x1_mmx: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - andl $1073741823,%ecx - leal (%edx,%edx,1),%ebp - movl $0,(%esp) - andl $2147483647,%edx - movd %eax,%mm2 - movd %ebx,%mm3 - movl %ecx,4(%esp) - xorl %edx,%ecx - pxor %mm5,%mm5 - pxor %mm4,%mm4 - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - pcmpgtd %mm2,%mm5 - paddd %mm2,%mm2 - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - pand %mm3,%mm5 - pcmpgtd %mm2,%mm4 - movl %ecx,20(%esp) - xorl %ecx,%ebp - psllq $31,%mm5 - pand %mm3,%mm4 - movl %edx,24(%esp) - movl $7,%esi - movl %ebp,28(%esp) - movl %esi,%ebp - andl %ebx,%esi - shrl $3,%ebx - movl %ebp,%edi - psllq $30,%mm4 - andl %ebx,%edi - shrl $3,%ebx - movd (%esp,%esi,4),%mm0 - movl %ebp,%esi - andl %ebx,%esi - shrl $3,%ebx - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $3,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $6,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $9,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $12,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $15,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $18,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $21,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $24,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - pxor %mm4,%mm0 - psllq $27,%mm2 - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - pxor %mm5,%mm0 - psllq $30,%mm1 - addl $36,%esp - pxor %mm1,%mm0 - ret -.size _mul_1x1_mmx,.-_mul_1x1_mmx -.type _mul_1x1_ialu,@function -.align 16 -_mul_1x1_ialu: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - leal (,%eax,4),%ebp - andl $1073741823,%ecx - leal (%eax,%eax,1),%edi - sarl $31,%eax - movl $0,(%esp) - andl $2147483647,%edx - movl %ecx,4(%esp) - xorl %edx,%ecx - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - movl %ecx,20(%esp) - xorl %ecx,%ebp - sarl $31,%edi - andl %ebx,%eax - movl %edx,24(%esp) - andl %ebx,%edi - movl %ebp,28(%esp) - movl %eax,%edx - shll $31,%eax - movl %edi,%ecx - shrl $1,%edx - movl $7,%esi - shll $30,%edi - andl %ebx,%esi - shrl $2,%ecx - xorl %edi,%eax - shrl $3,%ebx - movl $7,%edi - andl %ebx,%edi - shrl $3,%ebx - xorl %ecx,%edx - xorl (%esp,%esi,4),%eax - movl $7,%esi - andl %ebx,%esi - shrl $3,%ebx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $3,%ebp - andl %ebx,%edi - shrl $29,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $6,%ecx - andl %ebx,%esi - shrl $26,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $9,%ebp - andl %ebx,%edi - shrl $23,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $12,%ecx - andl %ebx,%esi - shrl $20,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $15,%ebp - andl %ebx,%edi - shrl $17,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $18,%ecx - andl %ebx,%esi - shrl $14,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $21,%ebp - andl %ebx,%edi - shrl $11,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $24,%ecx - andl %ebx,%esi - shrl $8,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl %ebp,%ecx - shll $27,%ebp - movl (%esp,%esi,4),%edi - shrl $5,%ecx - movl %edi,%esi - xorl %ebp,%eax - shll $30,%edi - xorl %ecx,%edx - shrl $2,%esi - xorl %edi,%eax - xorl %esi,%edx - addl $36,%esp - ret -.size _mul_1x1_ialu,.-_mul_1x1_ialu -.globl bn_GF2m_mul_2x2 -.type bn_GF2m_mul_2x2,@function -.align 16 -bn_GF2m_mul_2x2: -.L_bn_GF2m_mul_2x2_begin: - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%eax - movl 4(%edx),%edx - testl $8388608,%eax - jz .L000ialu - testl $16777216,%eax - jz .L001mmx - testl $2,%edx - jz .L001mmx - movups 8(%esp),%xmm0 - shufps $177,%xmm0,%xmm0 -.byte 102,15,58,68,192,1 - movl 4(%esp),%eax - movups %xmm0,(%eax) - ret -.align 16 -.L001mmx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%eax - movl 32(%esp),%ebx - call _mul_1x1_mmx - movq %mm0,%mm7 - movl 28(%esp),%eax - movl 36(%esp),%ebx - call _mul_1x1_mmx - movq %mm0,%mm6 - movl 24(%esp),%eax - movl 32(%esp),%ebx - xorl 28(%esp),%eax - xorl 36(%esp),%ebx - call _mul_1x1_mmx - pxor %mm7,%mm0 - movl 20(%esp),%eax - pxor %mm6,%mm0 - movq %mm0,%mm2 - psllq $32,%mm0 - popl %edi - psrlq $32,%mm2 - popl %esi - pxor %mm6,%mm0 - popl %ebx - pxor %mm7,%mm2 - movq %mm0,(%eax) - popl %ebp - movq %mm2,8(%eax) - emms - ret -.align 16 -.L000ialu: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $20,%esp - movl 44(%esp),%eax - movl 52(%esp),%ebx - call _mul_1x1_ialu - movl %eax,8(%esp) - movl %edx,12(%esp) - movl 48(%esp),%eax - movl 56(%esp),%ebx - call _mul_1x1_ialu - movl %eax,(%esp) - movl %edx,4(%esp) - movl 44(%esp),%eax - movl 52(%esp),%ebx - xorl 48(%esp),%eax - xorl 56(%esp),%ebx - call _mul_1x1_ialu - movl 40(%esp),%ebp - movl (%esp),%ebx - movl 4(%esp),%ecx - movl 8(%esp),%edi - movl 12(%esp),%esi - xorl %edx,%eax - xorl %ecx,%edx - xorl %ebx,%eax - movl %ebx,(%ebp) - xorl %edi,%edx - movl %esi,12(%ebp) - xorl %esi,%eax - addl $20,%esp - xorl %esi,%edx - popl %edi - xorl %edx,%eax - popl %esi - movl %edx,8(%ebp) - popl %ebx - movl %eax,4(%ebp) - popl %ebp - ret -.size bn_GF2m_mul_2x2,.-.L_bn_GF2m_mul_2x2_begin -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -.byte 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-mont.s b/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-mont.s deleted file mode 100644 index b683577231ad00..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-mont.s +++ /dev/null @@ -1,471 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-mont.s" -.text -.globl bn_mul_mont -.type bn_mul_mont,@function -.align 16 -bn_mul_mont: -.L_bn_mul_mont_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %eax,%eax - movl 40(%esp),%edi - cmpl $4,%edi - jl .L000just_leave - leal 20(%esp),%esi - leal 24(%esp),%edx - addl $2,%edi - negl %edi - leal -32(%esp,%edi,4),%ebp - negl %edi - movl %ebp,%eax - subl %edx,%eax - andl $2047,%eax - subl %eax,%ebp - xorl %ebp,%edx - andl $2048,%edx - xorl $2048,%edx - subl %edx,%ebp - andl $-64,%ebp - movl %esp,%eax - subl %ebp,%eax - andl $-4096,%eax - movl %esp,%edx - leal (%ebp,%eax,1),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja .L001page_walk - jmp .L002page_walk_done -.align 16 -.L001page_walk: - leal -4096(%esp),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja .L001page_walk -.L002page_walk_done: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%ebp - movl 16(%esi),%esi - movl (%esi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %ebp,16(%esp) - movl %esi,20(%esp) - leal -3(%edi),%ebx - movl %edx,24(%esp) - leal OPENSSL_ia32cap_P,%eax - btl $26,(%eax) - jnc .L003non_sse2 - movl $-1,%eax - movd %eax,%mm7 - movl 8(%esp),%esi - movl 12(%esp),%edi - movl 16(%esp),%ebp - xorl %edx,%edx - xorl %ecx,%ecx - movd (%edi),%mm4 - movd (%esi),%mm5 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - movq %mm5,%mm2 - movq %mm5,%mm0 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - incl %ecx -.align 16 -.L0041st: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - leal 1(%ecx),%ecx - cmpl %ebx,%ecx - jl .L0041st - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm2,%mm3 - movq %mm3,32(%esp,%ebx,4) - incl %edx -.L005outer: - xorl %ecx,%ecx - movd (%edi,%edx,4),%mm4 - movd (%esi),%mm5 - movd 32(%esp),%mm6 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - paddq %mm6,%mm5 - movq %mm5,%mm0 - movq %mm5,%mm2 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 36(%esp),%mm6 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm6,%mm2 - incl %ecx - decl %ebx -.L006inner: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - movd 36(%esp,%ecx,4),%mm6 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - paddq %mm6,%mm2 - decl %ebx - leal 1(%ecx),%ecx - jnz .L006inner - movl %ecx,%ebx - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - movd 36(%esp,%ebx,4),%mm6 - paddq %mm2,%mm3 - paddq %mm6,%mm3 - movq %mm3,32(%esp,%ebx,4) - leal 1(%edx),%edx - cmpl %ebx,%edx - jle .L005outer - emms - jmp .L007common_tail -.align 16 -.L003non_sse2: - movl 8(%esp),%esi - leal 1(%ebx),%ebp - movl 12(%esp),%edi - xorl %ecx,%ecx - movl %esi,%edx - andl $1,%ebp - subl %edi,%edx - leal 4(%edi,%ebx,4),%eax - orl %edx,%ebp - movl (%edi),%edi - jz .L008bn_sqr_mont - movl %eax,28(%esp) - movl (%esi),%eax - xorl %edx,%edx -.align 16 -.L009mull: - movl %edx,%ebp - mull %edi - addl %eax,%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - movl (%esi,%ecx,4),%eax - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl .L009mull - movl %edx,%ebp - mull %edi - movl 20(%esp),%edi - addl %ebp,%eax - movl 16(%esp),%esi - adcl $0,%edx - imull 32(%esp),%edi - movl %eax,32(%esp,%ebx,4) - xorl %ecx,%ecx - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - movl (%esi),%eax - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - incl %ecx - jmp .L0102ndmadd -.align 16 -.L0111stmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl .L0111stmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - addl %eax,%ebp - adcl $0,%edx - imull 32(%esp),%edi - xorl %ecx,%ecx - addl 36(%esp,%ebx,4),%edx - movl %ebp,32(%esp,%ebx,4) - adcl $0,%ecx - movl (%esi),%eax - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - movl $1,%ecx -.align 16 -.L0102ndmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl .L0102ndmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - xorl %eax,%eax - movl 12(%esp),%ecx - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - leal 4(%ecx),%ecx - movl %edx,32(%esp,%ebx,4) - cmpl 28(%esp),%ecx - movl %eax,36(%esp,%ebx,4) - je .L007common_tail - movl (%ecx),%edi - movl 8(%esp),%esi - movl %ecx,12(%esp) - xorl %ecx,%ecx - xorl %edx,%edx - movl (%esi),%eax - jmp .L0111stmadd -.align 16 -.L008bn_sqr_mont: - movl %ebx,(%esp) - movl %ecx,12(%esp) - movl %edi,%eax - mull %edi - movl %eax,32(%esp) - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx - incl %ecx -.align 16 -.L012sqr: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal 1(%ecx),%ecx - adcl $0,%edx - leal (%ebx,%eax,2),%ebp - shrl $31,%eax - cmpl (%esp),%ecx - movl %eax,%ebx - movl %ebp,28(%esp,%ecx,4) - jl .L012sqr - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - leal (%ebx,%eax,2),%ebp - imull 32(%esp),%edi - shrl $31,%eax - movl %ebp,32(%esp,%ecx,4) - leal (%eax,%edx,2),%ebp - movl (%esi),%eax - shrl $31,%edx - movl %ebp,36(%esp,%ecx,4) - movl %edx,40(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - movl %ecx,%ebx - adcl $0,%edx - movl 4(%esi),%eax - movl $1,%ecx -.align 16 -.L0133rdmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - movl 4(%esi,%ecx,4),%eax - adcl $0,%edx - movl %ebp,28(%esp,%ecx,4) - movl %edx,%ebp - mull %edi - addl 36(%esp,%ecx,4),%ebp - leal 2(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl .L0133rdmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - movl 12(%esp),%ecx - xorl %eax,%eax - movl 8(%esp),%esi - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - movl %edx,32(%esp,%ebx,4) - cmpl %ebx,%ecx - movl %eax,36(%esp,%ebx,4) - je .L007common_tail - movl 4(%esi,%ecx,4),%edi - leal 1(%ecx),%ecx - movl %edi,%eax - movl %ecx,12(%esp) - mull %edi - addl 32(%esp,%ecx,4),%eax - adcl $0,%edx - movl %eax,32(%esp,%ecx,4) - xorl %ebp,%ebp - cmpl %ebx,%ecx - leal 1(%ecx),%ecx - je .L014sqrlast - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx -.align 16 -.L015sqradd: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal (%eax,%eax,1),%ebp - adcl $0,%edx - shrl $31,%eax - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%eax - addl %ebx,%ebp - adcl $0,%eax - cmpl (%esp),%ecx - movl %ebp,28(%esp,%ecx,4) - movl %eax,%ebx - jle .L015sqradd - movl %edx,%ebp - addl %edx,%edx - shrl $31,%ebp - addl %ebx,%edx - adcl $0,%ebp -.L014sqrlast: - movl 20(%esp),%edi - movl 16(%esp),%esi - imull 32(%esp),%edi - addl 32(%esp,%ecx,4),%edx - movl (%esi),%eax - adcl $0,%ebp - movl %edx,32(%esp,%ecx,4) - movl %ebp,36(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - leal -1(%ecx),%ebx - adcl $0,%edx - movl $1,%ecx - movl 4(%esi),%eax - jmp .L0133rdmadd -.align 16 -.L007common_tail: - movl 16(%esp),%ebp - movl 4(%esp),%edi - leal 32(%esp),%esi - movl (%esi),%eax - movl %ebx,%ecx - xorl %edx,%edx -.align 16 -.L016sub: - sbbl (%ebp,%edx,4),%eax - movl %eax,(%edi,%edx,4) - decl %ecx - movl 4(%esi,%edx,4),%eax - leal 1(%edx),%edx - jge .L016sub - sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi -.align 16 -.L017copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) - movl %ecx,32(%esp,%ebx,4) - decl %ebx - jge .L017copy - movl 24(%esp),%esp - movl $1,%eax -.L000just_leave: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size bn_mul_mont,.-.L_bn_mul_mont_begin -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -.byte 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -.byte 111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/camellia/cmll-x86.s b/deps/openssl/asm_obsolete/x86-elf-gas/camellia/cmll-x86.s deleted file mode 100644 index 5c87910e34eb36..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/camellia/cmll-x86.s +++ /dev/null @@ -1,2375 +0,0 @@ -.file "cmll-586.s" -.text -.globl Camellia_EncryptBlock_Rounds -.type Camellia_EncryptBlock_Rounds,@function -.align 16 -Camellia_EncryptBlock_Rounds: -.L_Camellia_EncryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call .L000pic_point -.L000pic_point: - popl %ebp - leal .LCamellia_SBOX-.L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_EncryptBlock_Rounds,.-.L_Camellia_EncryptBlock_Rounds_begin -.globl Camellia_EncryptBlock -.type Camellia_EncryptBlock,@function -.align 16 -Camellia_EncryptBlock: -.L_Camellia_EncryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp .L_Camellia_EncryptBlock_Rounds_begin -.size Camellia_EncryptBlock,.-.L_Camellia_EncryptBlock_begin -.globl Camellia_encrypt -.type Camellia_encrypt,@function -.align 16 -Camellia_encrypt: -.L_Camellia_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call .L001pic_point -.L001pic_point: - popl %ebp - leal .LCamellia_SBOX-.L001pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_encrypt,.-.L_Camellia_encrypt_begin -.type _x86_Camellia_encrypt,@function -.align 16 -_x86_Camellia_encrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 16(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 16 -.L002loop: - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 52(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 56(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 60(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 64(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - addl $64,%edi - cmpl 20(%esp),%edi - je .L003done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 12(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 4(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl 8(%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl 16(%edi),%esi - movl %edx,16(%esp) - jmp .L002loop -.align 8 -.L003done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.size _x86_Camellia_encrypt,.-_x86_Camellia_encrypt -.globl Camellia_DecryptBlock_Rounds -.type Camellia_DecryptBlock_Rounds,@function -.align 16 -Camellia_DecryptBlock_Rounds: -.L_Camellia_DecryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call .L004pic_point -.L004pic_point: - popl %ebp - leal .LCamellia_SBOX-.L004pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_DecryptBlock_Rounds,.-.L_Camellia_DecryptBlock_Rounds_begin -.globl Camellia_DecryptBlock -.type Camellia_DecryptBlock,@function -.align 16 -Camellia_DecryptBlock: -.L_Camellia_DecryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp .L_Camellia_DecryptBlock_Rounds_begin -.size Camellia_DecryptBlock,.-.L_Camellia_DecryptBlock_begin -.globl Camellia_decrypt -.type Camellia_decrypt,@function -.align 16 -Camellia_decrypt: -.L_Camellia_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call .L005pic_point -.L005pic_point: - popl %ebp - leal .LCamellia_SBOX-.L005pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_decrypt,.-.L_Camellia_decrypt_begin -.type _x86_Camellia_decrypt,@function -.align 16 -_x86_Camellia_decrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl -8(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 16 -.L006loop: - xorl %esi,%eax - xorl -4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -16(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -24(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -32(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -40(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -48(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -56(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - subl $64,%edi - cmpl 20(%esp),%edi - je .L007done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 4(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 12(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl (%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl -8(%edi),%esi - movl %edx,16(%esp) - jmp .L006loop -.align 8 -.L007done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%ecx - xorl 12(%edi),%edx - xorl (%edi),%eax - xorl 4(%edi),%ebx - ret -.size _x86_Camellia_decrypt,.-_x86_Camellia_decrypt -.globl Camellia_Ekeygen -.type Camellia_Ekeygen,@function -.align 16 -Camellia_Ekeygen: -.L_Camellia_Ekeygen_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $16,%esp - movl 36(%esp),%ebp - movl 40(%esp),%esi - movl 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - cmpl $128,%ebp - je .L0081st128 - movl 16(%esi),%eax - movl 20(%esi),%ebx - cmpl $192,%ebp - je .L0091st192 - movl 24(%esi),%ecx - movl 28(%esi),%edx - jmp .L0101st256 -.align 4 -.L0091st192: - movl %eax,%ecx - movl %ebx,%edx - notl %ecx - notl %edx -.align 4 -.L0101st256: - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%edi) - movl %ebx,36(%edi) - movl %ecx,40(%edi) - movl %edx,44(%edi) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx -.align 4 -.L0081st128: - call .L011pic_point -.L011pic_point: - popl %ebp - leal .LCamellia_SBOX-.L011pic_point(%ebp),%ebp - leal .LCamellia_SIGMA-.LCamellia_SBOX(%ebp),%edi - movl (%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 8(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 16(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%esi - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 16(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 36(%esp),%esi - cmpl $128,%esi - jne .L0122nd256 - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-80(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-76(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-72(%edi) - movl %edx,-68(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-64(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-60(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-56(%edi) - movl %edx,-52(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-32(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-28(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-16(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-12(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-8(%edi) - movl %edx,-4(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,32(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,36(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,40(%edi) - movl %eax,44(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,64(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,68(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,72(%edi) - movl %eax,76(%edi) - movl -128(%edi),%ebx - movl -124(%edi),%ecx - movl -120(%edi),%edx - movl -116(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,-48(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,-44(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-40(%edi) - movl %eax,-36(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-24(%edi) - movl %eax,-20(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,4(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,8(%edi) - movl %eax,12(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,16(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,20(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,48(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,52(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,56(%edi) - movl %eax,60(%edi) - movl $3,%eax - jmp .L013done -.align 16 -.L0122nd256: - movl 44(%esp),%esi - movl %eax,48(%esi) - movl %ebx,52(%esi) - movl %ecx,56(%esi) - movl %edx,60(%esi) - xorl 32(%esi),%eax - xorl 36(%esi),%ebx - xorl 40(%esi),%ecx - xorl 44(%esi),%edx - movl 32(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,-48(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,-44(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-40(%edi) - movl %edx,-36(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,32(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,36(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,40(%edi) - movl %edx,44(%edi) - movl %ebx,%ebp - shll $19,%ebx - movl %ecx,%esi - shrl $13,%esi - shll $19,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $19,%edx - movl %ebx,128(%edi) - shrl $13,%esi - orl %esi,%ecx - shrl $13,%ebp - movl %eax,%esi - shrl $13,%esi - movl %ecx,132(%edi) - shll $19,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,136(%edi) - movl %eax,140(%edi) - movl -96(%edi),%ebx - movl -92(%edi),%ecx - movl -88(%edi),%edx - movl -84(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-64(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-60(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-56(%edi) - movl %eax,-52(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,16(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,20(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ecx,%ebp - shll $2,%ecx - movl %edx,%esi - shrl $30,%esi - shll $2,%edx - orl %esi,%ecx - movl %eax,%esi - shll $2,%eax - movl %ecx,80(%edi) - shrl $30,%esi - orl %esi,%edx - shrl $30,%ebp - movl %ebx,%esi - shrl $30,%esi - movl %edx,84(%edi) - shll $2,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,88(%edi) - movl %ebx,92(%edi) - movl -80(%edi),%ecx - movl -76(%edi),%edx - movl -72(%edi),%eax - movl -68(%edi),%ebx - movl %ecx,%ebp - shll $15,%ecx - movl %edx,%esi - shrl $17,%esi - shll $15,%edx - orl %esi,%ecx - movl %eax,%esi - shll $15,%eax - movl %ecx,-80(%edi) - shrl $17,%esi - orl %esi,%edx - shrl $17,%ebp - movl %ebx,%esi - shrl $17,%esi - movl %edx,-76(%edi) - shll $15,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-72(%edi) - movl %ebx,-68(%edi) - movl %ecx,%ebp - shll $30,%ecx - movl %edx,%esi - shrl $2,%esi - shll $30,%edx - orl %esi,%ecx - movl %eax,%esi - shll $30,%eax - movl %ecx,-16(%edi) - shrl $2,%esi - orl %esi,%edx - shrl $2,%ebp - movl %ebx,%esi - shrl $2,%esi - movl %edx,-12(%edi) - shll $30,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-8(%edi) - movl %ebx,-4(%edi) - movl %edx,64(%edi) - movl %eax,68(%edi) - movl %ebx,72(%edi) - movl %ecx,76(%edi) - movl %edx,%ebp - shll $17,%edx - movl %eax,%esi - shrl $15,%esi - shll $17,%eax - orl %esi,%edx - movl %ebx,%esi - shll $17,%ebx - movl %edx,96(%edi) - shrl $15,%esi - orl %esi,%eax - shrl $15,%ebp - movl %ecx,%esi - shrl $15,%esi - movl %eax,100(%edi) - shll $17,%ecx - orl %esi,%ebx - orl %ebp,%ecx - movl %ebx,104(%edi) - movl %ecx,108(%edi) - movl -128(%edi),%edx - movl -124(%edi),%eax - movl -120(%edi),%ebx - movl -116(%edi),%ecx - movl %eax,%ebp - shll $13,%eax - movl %ebx,%esi - shrl $19,%esi - shll $13,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $13,%ecx - movl %eax,-32(%edi) - shrl $19,%esi - orl %esi,%ebx - shrl $19,%ebp - movl %edx,%esi - shrl $19,%esi - movl %ebx,-28(%edi) - shll $13,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-24(%edi) - movl %edx,-20(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,4(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %eax,%ebp - shll $17,%eax - movl %ebx,%esi - shrl $15,%esi - shll $17,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $17,%ecx - movl %eax,48(%edi) - shrl $15,%esi - orl %esi,%ebx - shrl $15,%ebp - movl %edx,%esi - shrl $15,%esi - movl %ebx,52(%edi) - shll $17,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,56(%edi) - movl %edx,60(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,112(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,116(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,120(%edi) - movl %eax,124(%edi) - movl $4,%eax -.L013done: - leal 144(%edi),%edx - addl $16,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_Ekeygen,.-.L_Camellia_Ekeygen_begin -.globl private_Camellia_set_key -.type private_Camellia_set_key,@function -.align 16 -private_Camellia_set_key: -.L_private_Camellia_set_key_begin: - pushl %ebx - movl 8(%esp),%ecx - movl 12(%esp),%ebx - movl 16(%esp),%edx - movl $-1,%eax - testl %ecx,%ecx - jz .L014done - testl %edx,%edx - jz .L014done - movl $-2,%eax - cmpl $256,%ebx - je .L015arg_ok - cmpl $192,%ebx - je .L015arg_ok - cmpl $128,%ebx - jne .L014done -.align 4 -.L015arg_ok: - pushl %edx - pushl %ecx - pushl %ebx - call .L_Camellia_Ekeygen_begin - addl $12,%esp - movl %eax,(%edx) - xorl %eax,%eax -.align 4 -.L014done: - popl %ebx - ret -.size private_Camellia_set_key,.-.L_private_Camellia_set_key_begin -.align 64 -.LCamellia_SIGMA: -.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0 -.align 64 -.LCamellia_SBOX: -.long 1886416896,1886388336 -.long 2189591040,741081132 -.long 741092352,3014852787 -.long 3974949888,3233808576 -.long 3014898432,3840147684 -.long 656877312,1465319511 -.long 3233857536,3941204202 -.long 3857048832,2930639022 -.long 3840205824,589496355 -.long 2240120064,1802174571 -.long 1465341696,1162149957 -.long 892679424,2779054245 -.long 3941263872,3991732461 -.long 202116096,1330577487 -.long 2930683392,488439837 -.long 1094795520,2459041938 -.long 589505280,2256928902 -.long 4025478912,2947481775 -.long 1802201856,2088501372 -.long 2475922176,522125343 -.long 1162167552,1044250686 -.long 421075200,3705405660 -.long 2779096320,1583218782 -.long 555819264,185270283 -.long 3991792896,2795896998 -.long 235802112,960036921 -.long 1330597632,3587506389 -.long 1313754624,1566376029 -.long 488447232,3654877401 -.long 1701143808,1515847770 -.long 2459079168,1364262993 -.long 3183328512,1819017324 -.long 2256963072,2341142667 -.long 3099113472,2593783962 -.long 2947526400,4227531003 -.long 2408550144,2964324528 -.long 2088532992,1953759348 -.long 3958106880,724238379 -.long 522133248,4042260720 -.long 3469659648,2223243396 -.long 1044266496,3755933919 -.long 808464384,3419078859 -.long 3705461760,875823156 -.long 1600085760,1987444854 -.long 1583242752,1835860077 -.long 3318072576,2846425257 -.long 185273088,3520135377 -.long 437918208,67371012 -.long 2795939328,336855060 -.long 3789676800,976879674 -.long 960051456,3739091166 -.long 3402287616,286326801 -.long 3587560704,842137650 -.long 1195853568,2627469468 -.long 1566399744,1397948499 -.long 1027423488,4075946226 -.long 3654932736,4278059262 -.long 16843008,3486449871 -.long 1515870720,3284336835 -.long 3604403712,2054815866 -.long 1364283648,606339108 -.long 1448498688,3907518696 -.long 1819044864,1616904288 -.long 1296911616,1768489065 -.long 2341178112,2863268010 -.long 218959104,2694840480 -.long 2593823232,2711683233 -.long 1717986816,1650589794 -.long 4227595008,1414791252 -.long 3435973632,505282590 -.long 2964369408,3772776672 -.long 757935360,1684275300 -.long 1953788928,269484048 -.long 303174144,0 -.long 724249344,2745368739 -.long 538976256,1970602101 -.long 4042321920,2324299914 -.long 2981212416,3873833190 -.long 2223277056,151584777 -.long 2576980224,3722248413 -.long 3755990784,2273771655 -.long 1280068608,2206400643 -.long 3419130624,3452764365 -.long 3267543552,2425356432 -.long 875836416,1936916595 -.long 2122219008,4143317238 -.long 1987474944,2644312221 -.long 84215040,3216965823 -.long 1835887872,1381105746 -.long 3082270464,3638034648 -.long 2846468352,3368550600 -.long 825307392,3334865094 -.long 3520188672,2172715137 -.long 387389184,1869545583 -.long 67372032,320012307 -.long 3621246720,1667432547 -.long 336860160,3924361449 -.long 1482184704,2812739751 -.long 976894464,2677997727 -.long 1633771776,3166437564 -.long 3739147776,690552873 -.long 454761216,4193845497 -.long 286331136,791609391 -.long 471604224,3031695540 -.long 842150400,2021130360 -.long 252645120,101056518 -.long 2627509248,3890675943 -.long 370546176,1903231089 -.long 1397969664,3570663636 -.long 404232192,2880110763 -.long 4076007936,2290614408 -.long 572662272,2374828173 -.long 4278124032,1920073842 -.long 1145324544,3115909305 -.long 3486502656,4177002744 -.long 2998055424,2896953516 -.long 3284386560,909508662 -.long 3048584448,707395626 -.long 2054846976,1010565180 -.long 2442236160,4059103473 -.long 606348288,1077936192 -.long 134744064,3553820883 -.long 3907577856,3149594811 -.long 2829625344,1128464451 -.long 1616928768,353697813 -.long 4244438016,2913796269 -.long 1768515840,2004287607 -.long 1347440640,2155872384 -.long 2863311360,2189557890 -.long 3503345664,3974889708 -.long 2694881280,656867367 -.long 2105376000,3856990437 -.long 2711724288,2240086149 -.long 2307492096,892665909 -.long 1650614784,202113036 -.long 2543294208,1094778945 -.long 1414812672,4025417967 -.long 1532713728,2475884691 -.long 505290240,421068825 -.long 2509608192,555810849 -.long 3772833792,235798542 -.long 4294967040,1313734734 -.long 1684300800,1701118053 -.long 3537031680,3183280317 -.long 269488128,3099066552 -.long 3301229568,2408513679 -.long 0,3958046955 -.long 1212696576,3469607118 -.long 2745410304,808452144 -.long 4160222976,1600061535 -.long 1970631936,3318022341 -.long 3688618752,437911578 -.long 2324335104,3789619425 -.long 50529024,3402236106 -.long 3873891840,1195835463 -.long 3671775744,1027407933 -.long 151587072,16842753 -.long 1061109504,3604349142 -.long 3722304768,1448476758 -.long 2492765184,1296891981 -.long 2273806080,218955789 -.long 1549556736,1717960806 -.long 2206434048,3435921612 -.long 33686016,757923885 -.long 3452816640,303169554 -.long 1246382592,538968096 -.long 2425393152,2981167281 -.long 858993408,2576941209 -.long 1936945920,1280049228 -.long 1734829824,3267494082 -.long 4143379968,2122186878 -.long 4092850944,84213765 -.long 2644352256,3082223799 -.long 2139062016,825294897 -.long 3217014528,387383319 -.long 3806519808,3621191895 -.long 1381126656,1482162264 -.long 2610666240,1633747041 -.long 3638089728,454754331 -.long 640034304,471597084 -.long 3368601600,252641295 -.long 926365440,370540566 -.long 3334915584,404226072 -.long 993737472,572653602 -.long 2172748032,1145307204 -.long 2526451200,2998010034 -.long 1869573888,3048538293 -.long 1263225600,2442199185 -.long 320017152,134742024 -.long 3200171520,2829582504 -.long 1667457792,4244373756 -.long 774778368,1347420240 -.long 3924420864,3503292624 -.long 2038003968,2105344125 -.long 2812782336,2307457161 -.long 2358021120,2543255703 -.long 2678038272,1532690523 -.long 1852730880,2509570197 -.long 3166485504,4294902015 -.long 2391707136,3536978130 -.long 690563328,3301179588 -.long 4126536960,1212678216 -.long 4193908992,4160159991 -.long 3065427456,3688562907 -.long 791621376,50528259 -.long 4261281024,3671720154 -.long 3031741440,1061093439 -.long 1499027712,2492727444 -.long 2021160960,1549533276 -.long 2560137216,33685506 -.long 101058048,1246363722 -.long 1785358848,858980403 -.long 3890734848,1734803559 -.long 1179010560,4092788979 -.long 1903259904,2139029631 -.long 3132799488,3806462178 -.long 3570717696,2610626715 -.long 623191296,640024614 -.long 2880154368,926351415 -.long 1111638528,993722427 -.long 2290649088,2526412950 -.long 2728567296,1263206475 -.long 2374864128,3200123070 -.long 4210752000,774766638 -.long 1920102912,2037973113 -.long 117901056,2357985420 -.long 3115956480,1852702830 -.long 1431655680,2391670926 -.long 4177065984,4126474485 -.long 4008635904,3065381046 -.long 2896997376,4261216509 -.long 168430080,1499005017 -.long 909522432,2560098456 -.long 1229539584,1785331818 -.long 707406336,1178992710 -.long 1751672832,3132752058 -.long 1010580480,623181861 -.long 943208448,1111621698 -.long 4059164928,2728525986 -.long 2762253312,4210688250 -.long 1077952512,117899271 -.long 673720320,1431634005 -.long 3553874688,4008575214 -.long 2071689984,168427530 -.long 3149642496,1229520969 -.long 3385444608,1751646312 -.long 1128481536,943194168 -.long 3250700544,2762211492 -.long 353703168,673710120 -.long 3823362816,2071658619 -.long 2913840384,3385393353 -.long 4109693952,3250651329 -.long 2004317952,3823304931 -.long 3351758592,4109631732 -.long 2155905024,3351707847 -.long 2661195264,2661154974 -.long 14737632,939538488 -.long 328965,1090535745 -.long 5789784,369104406 -.long 14277081,1979741814 -.long 6776679,3640711641 -.long 5131854,2466288531 -.long 8487297,1610637408 -.long 13355979,4060148466 -.long 13224393,1912631922 -.long 723723,3254829762 -.long 11447982,2868947883 -.long 6974058,2583730842 -.long 14013909,1962964341 -.long 1579032,100664838 -.long 6118749,1459640151 -.long 8553090,2684395680 -.long 4605510,2432733585 -.long 14671839,4144035831 -.long 14079702,3036722613 -.long 2565927,3372272073 -.long 9079434,2717950626 -.long 3289650,2348846220 -.long 4934475,3523269330 -.long 4342338,2415956112 -.long 14408667,4127258358 -.long 1842204,117442311 -.long 10395294,2801837991 -.long 10263708,654321447 -.long 3815994,2382401166 -.long 13290186,2986390194 -.long 2434341,1224755529 -.long 8092539,3724599006 -.long 855309,1124090691 -.long 7434609,1543527516 -.long 6250335,3607156695 -.long 2039583,3338717127 -.long 16316664,1040203326 -.long 14145495,4110480885 -.long 4079166,2399178639 -.long 10329501,1728079719 -.long 8158332,520101663 -.long 6316128,402659352 -.long 12171705,1845522030 -.long 12500670,2936057775 -.long 12369084,788541231 -.long 9145227,3791708898 -.long 1447446,2231403909 -.long 3421236,218107149 -.long 5066061,1392530259 -.long 12829635,4026593520 -.long 7500402,2617285788 -.long 9803157,1694524773 -.long 11250603,3925928682 -.long 9342606,2734728099 -.long 12237498,2919280302 -.long 8026746,2650840734 -.long 11776947,3959483628 -.long 131586,2147516544 -.long 11842740,754986285 -.long 11382189,1795189611 -.long 10658466,2818615464 -.long 11316396,721431339 -.long 14211288,905983542 -.long 10132122,2785060518 -.long 1513239,3305162181 -.long 1710618,2248181382 -.long 3487029,1291865421 -.long 13421772,855651123 -.long 16250871,4244700669 -.long 10066329,1711302246 -.long 6381921,1476417624 -.long 5921370,2516620950 -.long 15263976,973093434 -.long 2368548,150997257 -.long 5658198,2499843477 -.long 4210752,268439568 -.long 14803425,2013296760 -.long 6513507,3623934168 -.long 592137,1107313218 -.long 3355443,3422604492 -.long 12566463,4009816047 -.long 10000536,637543974 -.long 9934743,3842041317 -.long 8750469,1627414881 -.long 6842472,436214298 -.long 16579836,1056980799 -.long 15527148,989870907 -.long 657930,2181071490 -.long 14342874,3053500086 -.long 7303023,3674266587 -.long 5460819,3556824276 -.long 6447714,2550175896 -.long 10724259,3892373736 -.long 3026478,2332068747 -.long 526344,33554946 -.long 11513775,3942706155 -.long 2631720,167774730 -.long 11579568,738208812 -.long 7631988,486546717 -.long 12763842,2952835248 -.long 12434877,1862299503 -.long 3552822,2365623693 -.long 2236962,2281736328 -.long 3684408,234884622 -.long 6579300,419436825 -.long 1973790,2264958855 -.long 3750201,1308642894 -.long 2894892,184552203 -.long 10921638,2835392937 -.long 3158064,201329676 -.long 15066597,2030074233 -.long 4473924,285217041 -.long 16645629,2130739071 -.long 8947848,570434082 -.long 10461087,3875596263 -.long 6645093,1493195097 -.long 8882055,3774931425 -.long 7039851,3657489114 -.long 16053492,1023425853 -.long 2302755,3355494600 -.long 4737096,301994514 -.long 1052688,67109892 -.long 13750737,1946186868 -.long 5329233,1409307732 -.long 12632256,805318704 -.long 16382457,2113961598 -.long 13816530,3019945140 -.long 10526880,671098920 -.long 5592405,1426085205 -.long 10592673,1744857192 -.long 4276545,1342197840 -.long 16448250,3187719870 -.long 4408131,3489714384 -.long 1250067,3288384708 -.long 12895428,822096177 -.long 3092271,3405827019 -.long 11053224,704653866 -.long 11974326,2902502829 -.long 3947580,251662095 -.long 2829099,3389049546 -.long 12698049,1879076976 -.long 16777215,4278255615 -.long 13158600,838873650 -.long 10855845,1761634665 -.long 2105376,134219784 -.long 9013641,1644192354 -.long 0,0 -.long 9474192,603989028 -.long 4671303,3506491857 -.long 15724527,4211145723 -.long 15395562,3120609978 -.long 12040119,3976261101 -.long 1381653,1157645637 -.long 394758,2164294017 -.long 13487565,1929409395 -.long 11908533,1828744557 -.long 1184274,2214626436 -.long 8289918,2667618207 -.long 12303291,3993038574 -.long 2697513,1241533002 -.long 986895,3271607235 -.long 12105912,771763758 -.long 460551,3238052289 -.long 263172,16777473 -.long 10197915,3858818790 -.long 9737364,620766501 -.long 2171169,1207978056 -.long 6710886,2566953369 -.long 15132390,3103832505 -.long 13553358,3003167667 -.long 15592941,2063629179 -.long 15198183,4177590777 -.long 3881787,3456159438 -.long 16711422,3204497343 -.long 8355711,3741376479 -.long 12961221,1895854449 -.long 10790052,687876393 -.long 3618615,3439381965 -.long 11645361,1811967084 -.long 5000268,318771987 -.long 9539985,1677747300 -.long 7237230,2600508315 -.long 9276813,1660969827 -.long 7763574,2634063261 -.long 197379,3221274816 -.long 2960685,1258310475 -.long 14606046,3070277559 -.long 9868950,2768283045 -.long 2500134,2298513801 -.long 8224125,1593859935 -.long 13027014,2969612721 -.long 6052956,385881879 -.long 13882323,4093703412 -.long 15921906,3154164924 -.long 5197647,3540046803 -.long 1644825,1174423110 -.long 4144959,3472936911 -.long 14474460,922761015 -.long 7960953,1577082462 -.long 1907997,1191200583 -.long 5395026,2483066004 -.long 15461355,4194368250 -.long 15987699,4227923196 -.long 7171437,1526750043 -.long 6184542,2533398423 -.long 16514043,4261478142 -.long 6908265,1509972570 -.long 11711154,2885725356 -.long 15790320,1006648380 -.long 3223857,1275087948 -.long 789516,50332419 -.long 13948116,889206069 -.long 13619151,4076925939 -.long 9211020,587211555 -.long 14869218,3087055032 -.long 7697781,1560304989 -.long 11119017,1778412138 -.long 4868682,2449511058 -.long 5723991,3573601749 -.long 8684676,553656609 -.long 1118481,1140868164 -.long 4539717,1358975313 -.long 1776411,3321939654 -.long 16119285,2097184125 -.long 15000804,956315961 -.long 921102,2197848963 -.long 7566195,3691044060 -.long 11184810,2852170410 -.long 15856113,2080406652 -.long 14540253,1996519287 -.long 5855577,1442862678 -.long 1315860,83887365 -.long 7105644,452991771 -.long 9605778,2751505572 -.long 5526612,352326933 -.long 13684944,872428596 -.long 7895160,503324190 -.long 7368816,469769244 -.long 14935011,4160813304 -.long 4802889,1375752786 -.long 8421504,536879136 -.long 5263440,335549460 -.long 10987431,3909151209 -.long 16185078,3170942397 -.long 7829367,3707821533 -.long 9671571,3825263844 -.long 8816262,2701173153 -.long 8618883,3758153952 -.long 2763306,2315291274 -.long 13092807,4043370993 -.long 5987163,3590379222 -.long 15329769,2046851706 -.long 15658734,3137387451 -.long 9408399,3808486371 -.long 65793,1073758272 -.long 4013373,1325420367 -.globl Camellia_cbc_encrypt -.type Camellia_cbc_encrypt,@function -.align 16 -Camellia_cbc_encrypt: -.L_Camellia_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je .L016enc_out - pushfl - cld - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 36(%esp),%edx - movl 40(%esp),%ebp - leal -64(%esp),%esi - andl $-64,%esi - leal -127(%edx),%edi - subl %esi,%edi - negl %edi - andl $960,%edi - subl %edi,%esi - movl 44(%esp),%edi - xchgl %esi,%esp - addl $4,%esp - movl %esi,20(%esp) - movl %eax,24(%esp) - movl %ebx,28(%esp) - movl %ecx,32(%esp) - movl %edx,36(%esp) - movl %ebp,40(%esp) - call .L017pic_point -.L017pic_point: - popl %ebp - leal .LCamellia_SBOX-.L017pic_point(%ebp),%ebp - movl $32,%esi -.align 4 -.L018prefetch_sbox: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - leal 128(%ebp),%ebp - decl %esi - jnz .L018prefetch_sbox - movl 36(%esp),%eax - subl $4096,%ebp - movl 24(%esp),%esi - movl 272(%eax),%edx - cmpl $0,%edi - je .L019DECRYPT - movl 32(%esp),%ecx - movl 40(%esp),%edi - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %edx,16(%esp) - testl $4294967280,%ecx - jz .L020enc_tail - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4 -.L021enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - bswap %eax - xorl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_encrypt - movl 24(%esp),%esi - movl 28(%esp),%edi - bswap %eax - bswap %ebx - bswap %ecx - movl %eax,(%edi) - bswap %edx - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%ecx - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edx - movl %edx,28(%esp) - subl $16,%ecx - testl $4294967280,%ecx - movl %ecx,32(%esp) - jnz .L021enc_loop - testl $15,%ecx - jnz .L020enc_tail - movl 40(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 20(%esp),%esp - popfl -.L016enc_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4 -.L020enc_tail: - movl %edi,%eax - movl 28(%esp),%edi - pushl %eax - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je .L022enc_in_place -.align 4 -.long 2767451785 - jmp .L023enc_skip_in_place -.L022enc_in_place: - leal (%edi,%ecx,1),%edi -.L023enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 4 -.long 2868115081 - popl %edi - movl 28(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,32(%esp) - jmp .L021enc_loop -.align 16 -.L019DECRYPT: - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %eax,16(%esp) - movl %edx,36(%esp) - cmpl 28(%esp),%esi - je .L024dec_in_place - movl 40(%esp),%edi - movl %edi,44(%esp) -.align 4 -.L025dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 44(%esp),%edi - movl 32(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc .L026dec_partial - movl %esi,32(%esp) - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %esi,44(%esp) - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edi - movl %edi,28(%esp) - jnz .L025dec_loop - movl 44(%esp),%edi -.L027dec_end: - movl 40(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp .L028dec_out -.align 4 -.L026dec_partial: - leal 44(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%ecx - movl %edi,%esi - movl 28(%esp),%edi -.long 2767451785 - movl 24(%esp),%edi - jmp .L027dec_end -.align 4 -.L024dec_in_place: -.L029dec_in_place_loop: - leal 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - bswap %eax - movl %edx,12(%edi) - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call _x86_Camellia_decrypt - movl 40(%esp),%edi - movl 28(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,28(%esp) - leal 44(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 24(%esp),%esi - leal 16(%esi),%esi - movl %esi,24(%esp) - movl 32(%esp),%ecx - subl $16,%ecx - jc .L030dec_in_place_partial - movl %ecx,32(%esp) - jnz .L029dec_in_place_loop - jmp .L028dec_out -.align 4 -.L030dec_in_place_partial: - movl 28(%esp),%edi - leal 44(%esp),%esi - leal (%edi,%ecx,1),%edi - leal 16(%esi,%ecx,1),%esi - negl %ecx -.long 2767451785 -.align 4 -.L028dec_out: - movl 20(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size Camellia_cbc_encrypt,.-.L_Camellia_cbc_encrypt_begin -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/cast/cast-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/cast/cast-586.s deleted file mode 100644 index 3ef7fe32b7d42b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/cast/cast-586.s +++ /dev/null @@ -1,933 +0,0 @@ -.file "cast-586.s" -.text -.globl CAST_encrypt -.type CAST_encrypt,@function -.align 16 -CAST_encrypt: -.L_CAST_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - - movl 128(%ebp),%eax - pushl %eax - xorl %eax,%eax - - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - popl %edx - orl %edx,%edx - jnz .L000cast_enc_done - - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -.L000cast_enc_done: - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size CAST_encrypt,.-.L_CAST_encrypt_begin -.globl CAST_decrypt -.type CAST_decrypt,@function -.align 16 -CAST_decrypt: -.L_CAST_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - - movl (%ebx),%edi - movl 4(%ebx),%esi - - movl 128(%ebp),%eax - orl %eax,%eax - jnz .L001cast_dec_skip - xorl %eax,%eax - - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -.L001cast_dec_skip: - - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl CAST_S_table0(,%ecx,4),%ecx - movl CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size CAST_decrypt,.-.L_CAST_decrypt_begin -.globl CAST_cbc_encrypt -.type CAST_cbc_encrypt,@function -.align 16 -CAST_cbc_encrypt: -.L_CAST_cbc_encrypt_begin: - - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ebp - - 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 56(%esp),%ecx - - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz .L002decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz .L003encrypt_finish -.L004encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L004encrypt_loop -.L003encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L005finish - call .L006PIC_point -.L006PIC_point: - popl %edx - leal .L007cbc_enc_jmp_table-.L006PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -.L008ej7: - movb 6(%esi),%dh - shll $8,%edx -.L009ej6: - movb 5(%esi),%dh -.L010ej5: - movb 4(%esi),%dl -.L011ej4: - movl (%esi),%ecx - jmp .L012ejend -.L013ej3: - movb 2(%esi),%ch - shll $8,%ecx -.L014ej2: - movb 1(%esi),%ch -.L015ej1: - movb (%esi),%cl -.L012ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp .L005finish -.L002decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz .L016decrypt_finish -.L017decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz .L017decrypt_loop -.L016decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz .L005finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call .L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -.L018dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -.L019dj6: - movb %dh,5(%edi) -.L020dj5: - movb %dl,4(%edi) -.L021dj4: - movl %ecx,(%edi) - jmp .L022djend -.L023dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -.L024dj2: - movb %ch,1(%esi) -.L025dj1: - movb %cl,(%esi) -.L022djend: - jmp .L005finish -.L005finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L007cbc_enc_jmp_table: -.long 0 -.long .L015ej1-.L006PIC_point -.long .L014ej2-.L006PIC_point -.long .L013ej3-.L006PIC_point -.long .L011ej4-.L006PIC_point -.long .L010ej5-.L006PIC_point -.long .L009ej6-.L006PIC_point -.long .L008ej7-.L006PIC_point -.align 64 -.size CAST_cbc_encrypt,.-.L_CAST_cbc_encrypt_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/des/crypt586.s b/deps/openssl/asm_obsolete/x86-elf-gas/des/crypt586.s deleted file mode 100644 index 46c81c493d0b8e..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/des/crypt586.s +++ /dev/null @@ -1,875 +0,0 @@ -.file "crypt586.s" -.text -.globl fcrypt_body -.type fcrypt_body,@function -.align 16 -fcrypt_body: -.L_fcrypt_body_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - - xorl %edi,%edi - xorl %esi,%esi - leal DES_SPtrans,%edx - pushl %edx - movl 28(%esp),%ebp - pushl $25 -.L000start: - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl (%ebp),%ebx - xorl %ebx,%eax - movl 4(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 8(%ebp),%ebx - xorl %ebx,%eax - movl 12(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 16(%ebp),%ebx - xorl %ebx,%eax - movl 20(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 24(%ebp),%ebx - xorl %ebx,%eax - movl 28(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 32(%ebp),%ebx - xorl %ebx,%eax - movl 36(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 40(%ebp),%ebx - xorl %ebx,%eax - movl 44(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 48(%ebp),%ebx - xorl %ebx,%eax - movl 52(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 56(%ebp),%ebx - xorl %ebx,%eax - movl 60(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 64(%ebp),%ebx - xorl %ebx,%eax - movl 68(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 72(%ebp),%ebx - xorl %ebx,%eax - movl 76(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 80(%ebp),%ebx - xorl %ebx,%eax - movl 84(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 88(%ebp),%ebx - xorl %ebx,%eax - movl 92(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 96(%ebp),%ebx - xorl %ebx,%eax - movl 100(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 104(%ebp),%ebx - xorl %ebx,%eax - movl 108(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 112(%ebp),%ebx - xorl %ebx,%eax - movl 116(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 120(%ebp),%ebx - xorl %ebx,%eax - movl 124(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - movl (%esp),%ebx - movl %edi,%eax - decl %ebx - movl %esi,%edi - movl %eax,%esi - movl %ebx,(%esp) - jnz .L000start - - - movl 28(%esp),%edx - rorl $1,%edi - movl %esi,%eax - xorl %edi,%esi - andl $0xaaaaaaaa,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $23,%eax - movl %eax,%esi - xorl %edi,%eax - andl $0x03fc03fc,%eax - xorl %eax,%esi - xorl %eax,%edi - - roll $10,%esi - movl %esi,%eax - xorl %edi,%esi - andl $0x33333333,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $18,%edi - movl %edi,%esi - xorl %eax,%edi - andl $0xfff0000f,%edi - xorl %edi,%esi - xorl %edi,%eax - - roll $12,%esi - movl %esi,%edi - xorl %eax,%esi - andl $0xf0f0f0f0,%esi - xorl %esi,%edi - xorl %esi,%eax - - rorl $4,%eax - movl %eax,(%edx) - movl %edi,4(%edx) - addl $8,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size fcrypt_body,.-.L_fcrypt_body_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/des/des-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/des/des-586.s deleted file mode 100644 index 054e2b0d597efa..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/des/des-586.s +++ /dev/null @@ -1,1838 +0,0 @@ -.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 - - 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 - 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 - - roll $1,%edi - call .L000pic_point -.L000pic_point: - popl %ebp - leal .Ldes_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 -.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 - 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 .Ldes_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 -.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 - 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 .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 -.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 - 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 .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 -.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 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 56(%esp),%ecx - - pushl %ecx - - 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 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 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 64(%esp),%ecx - - movl 56(%esp),%eax - pushl %eax - - movl 56(%esp),%eax - pushl %eax - - 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 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: -.Ldes_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 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/md5/md5-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/md5/md5-586.s deleted file mode 100644 index e354c4ebcdea8c..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/md5/md5-586.s +++ /dev/null @@ -1,679 +0,0 @@ -.file "../openssl/crypto/md5/asm/md5-586.s" -.text -.globl md5_block_asm_data_order -.type md5_block_asm_data_order,@function -.align 16 -md5_block_asm_data_order: -.L_md5_block_asm_data_order_begin: - pushl %esi - pushl %edi - movl 12(%esp),%edi - movl 16(%esp),%esi - movl 20(%esp),%ecx - pushl %ebp - shll $6,%ecx - pushl %ebx - addl %esi,%ecx - subl $64,%ecx - movl (%edi),%eax - pushl %ecx - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx -.L000start: - - - movl %ecx,%edi - movl (%esi),%ebp - - xorl %edx,%edi - andl %ebx,%edi - leal 3614090360(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 4(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 3905402710(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 8(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 606105819(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 12(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 3250441966(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 16(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 4118548399(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 20(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 1200080426(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 24(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 2821735955(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 28(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 4249261313(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 32(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 1770035416(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 36(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 2336552879(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 40(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 4294925233(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 44(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 2304563134(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 48(%esi),%ebp - addl %ecx,%ebx - - xorl %edx,%edi - andl %ebx,%edi - leal 1804603682(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 52(%esi),%ebp - addl %ebx,%eax - - xorl %ecx,%edi - andl %eax,%edi - leal 4254626195(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 56(%esi),%ebp - addl %eax,%edx - - xorl %ebx,%edi - andl %edx,%edi - leal 2792965006(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 60(%esi),%ebp - addl %edx,%ecx - - xorl %eax,%edi - andl %ecx,%edi - leal 1236535329(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 4(%esi),%ebp - addl %ecx,%ebx - - - - leal 4129170786(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 24(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 3225465664(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 44(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 643717713(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl (%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 3921069994(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 3593408605(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 40(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 38016083(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 60(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 3634488961(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 16(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 3889429448(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 36(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 568446438(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 56(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 3275163606(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 12(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 4107603335(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 32(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 1163531501(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 52(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - leal 2850285829(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 8(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - - leal 4243563512(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 28(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - - leal 1735328473(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 48(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - - leal 2368359562(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - - - xorl %edx,%edi - xorl %ebx,%edi - leal 4294588738(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 32(%esi),%ebp - movl %ebx,%edi - - leal 2272392833(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 44(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 1839030562(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 56(%esi),%ebp - movl %edx,%edi - - leal 4259657740(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 4(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 2763975236(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 16(%esi),%ebp - movl %ebx,%edi - - leal 1272893353(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 28(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 4139469664(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 40(%esi),%ebp - movl %edx,%edi - - leal 3200236656(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 52(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 681279174(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl (%esi),%ebp - movl %ebx,%edi - - leal 3936430074(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 12(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 3572445317(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 24(%esi),%ebp - movl %edx,%edi - - leal 76029189(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 36(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - - xorl %edx,%edi - xorl %ebx,%edi - leal 3654602809(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 48(%esi),%ebp - movl %ebx,%edi - - leal 3873151461(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 60(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - - xorl %ebx,%edi - xorl %edx,%edi - leal 530742520(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 8(%esi),%ebp - movl %edx,%edi - - leal 3299628645(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl (%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $23,%ebx - addl %ecx,%ebx - - - - xorl %edx,%edi - orl %ebx,%edi - leal 4096336452(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 28(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 1126891415(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 56(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 2878612391(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 20(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 4237533241(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 48(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 1700485571(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 12(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 2399980690(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 40(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 4293915773(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 4(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 2240044497(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 32(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 1873313359(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 60(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 4264355552(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 24(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 2734768916(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 52(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 1309151649(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 16(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - - orl %ebx,%edi - leal 4149444226(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 44(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - - orl %eax,%edi - leal 3174756917(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 8(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - - orl %edx,%edi - leal 718787259(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 36(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - - orl %ecx,%edi - leal 3951481745(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 24(%esp),%ebp - addl %edi,%ebx - addl $64,%esi - roll $21,%ebx - movl (%ebp),%edi - addl %ecx,%ebx - addl %edi,%eax - movl 4(%ebp),%edi - addl %edi,%ebx - movl 8(%ebp),%edi - addl %edi,%ecx - movl 12(%ebp),%edi - addl %edi,%edx - movl %eax,(%ebp) - movl %ebx,4(%ebp) - movl (%esp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - cmpl %esi,%edi - jae .L000start - popl %eax - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size md5_block_asm_data_order,.-.L_md5_block_asm_data_order_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/modes/ghash-x86.s b/deps/openssl/asm_obsolete/x86-elf-gas/modes/ghash-x86.s deleted file mode 100644 index 70e9493d1b3737..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/modes/ghash-x86.s +++ /dev/null @@ -1,1265 +0,0 @@ -.file "ghash-x86.s" -.text -.globl gcm_gmult_4bit_x86 -.type gcm_gmult_4bit_x86,@function -.align 16 -gcm_gmult_4bit_x86: -.L_gcm_gmult_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%edi - movl 108(%esp),%esi - movl (%edi),%ebp - movl 4(%edi),%edx - movl 8(%edi),%ecx - movl 12(%edi),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) - movl %ebp,(%esp) - movl %edx,4(%esp) - movl %ecx,8(%esp) - movl %ebx,12(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp .L000x86_loop -.align 16 -.L000x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js .L001x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp .L000x86_loop -.align 16 -.L001x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_gmult_4bit_x86,.-.L_gcm_gmult_4bit_x86_begin -.globl gcm_ghash_4bit_x86 -.type gcm_ghash_4bit_x86,@function -.align 16 -gcm_ghash_4bit_x86: -.L_gcm_ghash_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%ebx - movl 108(%esp),%esi - movl 112(%esp),%edi - movl 116(%esp),%ecx - addl %edi,%ecx - movl %ecx,116(%esp) - movl (%ebx),%ebp - movl 4(%ebx),%edx - movl 8(%ebx),%ecx - movl 12(%ebx),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) -.align 16 -.L002x86_outer_loop: - xorl 12(%edi),%ebx - xorl 8(%edi),%ecx - xorl 4(%edi),%edx - xorl (%edi),%ebp - movl %ebx,12(%esp) - movl %ecx,8(%esp) - movl %edx,4(%esp) - movl %ebp,(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp .L003x86_loop -.align 16 -.L003x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js .L004x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp .L003x86_loop -.align 16 -.L004x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 112(%esp),%edi - leal 16(%edi),%edi - cmpl 116(%esp),%edi - movl %edi,112(%esp) - jb .L002x86_outer_loop - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_4bit_x86,.-.L_gcm_ghash_4bit_x86_begin -.globl gcm_gmult_4bit_mmx -.type gcm_gmult_4bit_mmx,@function -.align 16 -gcm_gmult_4bit_mmx: -.L_gcm_gmult_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%esi - call .L005pic_point -.L005pic_point: - popl %eax - leal .Lrem_4bit-.L005pic_point(%eax),%eax - movzbl 15(%edi),%ebx - xorl %ecx,%ecx - movl %ebx,%edx - movb %dl,%cl - movl $14,%ebp - shlb $4,%cl - andl $240,%edx - movq 8(%esi,%ecx,1),%mm0 - movq (%esi,%ecx,1),%mm1 - movd %mm0,%ebx - jmp .L006mmx_loop -.align 16 -.L006mmx_loop: - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - movb (%edi,%ebp,1),%cl - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - decl %ebp - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - movl %ecx,%edx - pxor %mm2,%mm0 - js .L007mmx_break - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - jmp .L006mmx_loop -.align 16 -.L007mmx_break: - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - pxor %mm2,%mm0 - psrlq $32,%mm0 - movd %mm1,%edx - psrlq $32,%mm1 - movd %mm0,%ecx - movd %mm1,%ebp - bswap %ebx - bswap %edx - bswap %ecx - bswap %ebp - emms - movl %ebx,12(%edi) - movl %edx,4(%edi) - movl %ecx,8(%edi) - movl %ebp,(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_gmult_4bit_mmx,.-.L_gcm_gmult_4bit_mmx_begin -.globl gcm_ghash_4bit_mmx -.type gcm_ghash_4bit_mmx,@function -.align 16 -gcm_ghash_4bit_mmx: -.L_gcm_ghash_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%ebx - movl 28(%esp),%ecx - movl 32(%esp),%edx - movl %esp,%ebp - call .L008pic_point -.L008pic_point: - popl %esi - leal .Lrem_8bit-.L008pic_point(%esi),%esi - subl $544,%esp - andl $-64,%esp - subl $16,%esp - addl %ecx,%edx - movl %eax,544(%esp) - movl %edx,552(%esp) - movl %ebp,556(%esp) - addl $128,%ebx - leal 144(%esp),%edi - leal 400(%esp),%ebp - movl -120(%ebx),%edx - movq -120(%ebx),%mm0 - movq -128(%ebx),%mm3 - shll $4,%edx - movb %dl,(%esp) - movl -104(%ebx),%edx - movq -104(%ebx),%mm2 - movq -112(%ebx),%mm5 - movq %mm0,-128(%edi) - psrlq $4,%mm0 - movq %mm3,(%edi) - movq %mm3,%mm7 - psrlq $4,%mm3 - shll $4,%edx - movb %dl,1(%esp) - movl -88(%ebx),%edx - movq -88(%ebx),%mm1 - psllq $60,%mm7 - movq -96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-120(%edi) - psrlq $4,%mm2 - movq %mm5,8(%edi) - movq %mm5,%mm6 - movq %mm0,-128(%ebp) - psrlq $4,%mm5 - movq %mm3,(%ebp) - shll $4,%edx - movb %dl,2(%esp) - movl -72(%ebx),%edx - movq -72(%ebx),%mm0 - psllq $60,%mm6 - movq -80(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-112(%edi) - psrlq $4,%mm1 - movq %mm4,16(%edi) - movq %mm4,%mm7 - movq %mm2,-120(%ebp) - psrlq $4,%mm4 - movq %mm5,8(%ebp) - shll $4,%edx - movb %dl,3(%esp) - movl -56(%ebx),%edx - movq -56(%ebx),%mm2 - psllq $60,%mm7 - movq -64(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-104(%edi) - psrlq $4,%mm0 - movq %mm3,24(%edi) - movq %mm3,%mm6 - movq %mm1,-112(%ebp) - psrlq $4,%mm3 - movq %mm4,16(%ebp) - shll $4,%edx - movb %dl,4(%esp) - movl -40(%ebx),%edx - movq -40(%ebx),%mm1 - psllq $60,%mm6 - movq -48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-96(%edi) - psrlq $4,%mm2 - movq %mm5,32(%edi) - movq %mm5,%mm7 - movq %mm0,-104(%ebp) - psrlq $4,%mm5 - movq %mm3,24(%ebp) - shll $4,%edx - movb %dl,5(%esp) - movl -24(%ebx),%edx - movq -24(%ebx),%mm0 - psllq $60,%mm7 - movq -32(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-88(%edi) - psrlq $4,%mm1 - movq %mm4,40(%edi) - movq %mm4,%mm6 - movq %mm2,-96(%ebp) - psrlq $4,%mm4 - movq %mm5,32(%ebp) - shll $4,%edx - movb %dl,6(%esp) - movl -8(%ebx),%edx - movq -8(%ebx),%mm2 - psllq $60,%mm6 - movq -16(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-80(%edi) - psrlq $4,%mm0 - movq %mm3,48(%edi) - movq %mm3,%mm7 - movq %mm1,-88(%ebp) - psrlq $4,%mm3 - movq %mm4,40(%ebp) - shll $4,%edx - movb %dl,7(%esp) - movl 8(%ebx),%edx - movq 8(%ebx),%mm1 - psllq $60,%mm7 - movq (%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-72(%edi) - psrlq $4,%mm2 - movq %mm5,56(%edi) - movq %mm5,%mm6 - movq %mm0,-80(%ebp) - psrlq $4,%mm5 - movq %mm3,48(%ebp) - shll $4,%edx - movb %dl,8(%esp) - movl 24(%ebx),%edx - movq 24(%ebx),%mm0 - psllq $60,%mm6 - movq 16(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-64(%edi) - psrlq $4,%mm1 - movq %mm4,64(%edi) - movq %mm4,%mm7 - movq %mm2,-72(%ebp) - psrlq $4,%mm4 - movq %mm5,56(%ebp) - shll $4,%edx - movb %dl,9(%esp) - movl 40(%ebx),%edx - movq 40(%ebx),%mm2 - psllq $60,%mm7 - movq 32(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-56(%edi) - psrlq $4,%mm0 - movq %mm3,72(%edi) - movq %mm3,%mm6 - movq %mm1,-64(%ebp) - psrlq $4,%mm3 - movq %mm4,64(%ebp) - shll $4,%edx - movb %dl,10(%esp) - movl 56(%ebx),%edx - movq 56(%ebx),%mm1 - psllq $60,%mm6 - movq 48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-48(%edi) - psrlq $4,%mm2 - movq %mm5,80(%edi) - movq %mm5,%mm7 - movq %mm0,-56(%ebp) - psrlq $4,%mm5 - movq %mm3,72(%ebp) - shll $4,%edx - movb %dl,11(%esp) - movl 72(%ebx),%edx - movq 72(%ebx),%mm0 - psllq $60,%mm7 - movq 64(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-40(%edi) - psrlq $4,%mm1 - movq %mm4,88(%edi) - movq %mm4,%mm6 - movq %mm2,-48(%ebp) - psrlq $4,%mm4 - movq %mm5,80(%ebp) - shll $4,%edx - movb %dl,12(%esp) - movl 88(%ebx),%edx - movq 88(%ebx),%mm2 - psllq $60,%mm6 - movq 80(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-32(%edi) - psrlq $4,%mm0 - movq %mm3,96(%edi) - movq %mm3,%mm7 - movq %mm1,-40(%ebp) - psrlq $4,%mm3 - movq %mm4,88(%ebp) - shll $4,%edx - movb %dl,13(%esp) - movl 104(%ebx),%edx - movq 104(%ebx),%mm1 - psllq $60,%mm7 - movq 96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-24(%edi) - psrlq $4,%mm2 - movq %mm5,104(%edi) - movq %mm5,%mm6 - movq %mm0,-32(%ebp) - psrlq $4,%mm5 - movq %mm3,96(%ebp) - shll $4,%edx - movb %dl,14(%esp) - movl 120(%ebx),%edx - movq 120(%ebx),%mm0 - psllq $60,%mm6 - movq 112(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-16(%edi) - psrlq $4,%mm1 - movq %mm4,112(%edi) - movq %mm4,%mm7 - movq %mm2,-24(%ebp) - psrlq $4,%mm4 - movq %mm5,104(%ebp) - shll $4,%edx - movb %dl,15(%esp) - psllq $60,%mm7 - por %mm7,%mm1 - movq %mm0,-8(%edi) - psrlq $4,%mm0 - movq %mm3,120(%edi) - movq %mm3,%mm6 - movq %mm1,-16(%ebp) - psrlq $4,%mm3 - movq %mm4,112(%ebp) - psllq $60,%mm6 - por %mm6,%mm0 - movq %mm0,-8(%ebp) - movq %mm3,120(%ebp) - movq (%eax),%mm6 - movl 8(%eax),%ebx - movl 12(%eax),%edx -.align 16 -.L009outer: - xorl 12(%ecx),%edx - xorl 8(%ecx),%ebx - pxor (%ecx),%mm6 - leal 16(%ecx),%ecx - movl %ebx,536(%esp) - movq %mm6,528(%esp) - movl %ecx,548(%esp) - xorl %eax,%eax - roll $8,%edx - movb %dl,%al - movl %eax,%ebp - andb $15,%al - shrl $4,%ebp - pxor %mm0,%mm0 - roll $8,%edx - pxor %mm1,%mm1 - pxor %mm2,%mm2 - movq 16(%esp,%eax,8),%mm7 - movq 144(%esp,%eax,8),%mm6 - movb %dl,%al - movd %mm7,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%edi - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 536(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 532(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 528(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 524(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - pxor 144(%esp,%eax,8),%mm6 - xorb (%esp,%ebp,1),%bl - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - movzbl %bl,%ebx - pxor %mm2,%mm2 - psllq $4,%mm1 - movd %mm7,%ecx - psrlq $4,%mm7 - movq %mm6,%mm3 - psrlq $4,%mm6 - shll $4,%ecx - pxor 16(%esp,%edi,8),%mm7 - psllq $60,%mm3 - movzbl %cl,%ecx - pxor %mm3,%mm7 - pxor 144(%esp,%edi,8),%mm6 - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor %mm1,%mm6 - movd %mm7,%edx - pinsrw $3,(%esi,%ecx,2),%mm2 - psllq $12,%mm0 - pxor %mm0,%mm6 - psrlq $32,%mm7 - pxor %mm2,%mm6 - movl 548(%esp),%ecx - movd %mm7,%ebx - movq %mm6,%mm3 - psllw $8,%mm6 - psrlw $8,%mm3 - por %mm3,%mm6 - bswap %edx - pshufw $27,%mm6,%mm6 - bswap %ebx - cmpl 552(%esp),%ecx - jne .L009outer - movl 544(%esp),%eax - movl %edx,12(%eax) - movl %ebx,8(%eax) - movq %mm6,(%eax) - movl 556(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_4bit_mmx,.-.L_gcm_ghash_4bit_mmx_begin -.globl gcm_init_clmul -.type gcm_init_clmul,@function -.align 16 -gcm_init_clmul: -.L_gcm_init_clmul_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - call .L010pic -.L010pic: - popl %ecx - leal .Lbswap-.L010pic(%ecx),%ecx - movdqu (%eax),%xmm2 - pshufd $78,%xmm2,%xmm2 - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - pand 16(%ecx),%xmm5 - pxor %xmm5,%xmm2 - movdqa %xmm2,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,(%edx) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%edx) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%edx) - ret -.size gcm_init_clmul,.-.L_gcm_init_clmul_begin -.globl gcm_gmult_clmul -.type gcm_gmult_clmul,@function -.align 16 -gcm_gmult_clmul: -.L_gcm_gmult_clmul_begin: - movl 4(%esp),%eax - movl 8(%esp),%edx - call .L011pic -.L011pic: - popl %ecx - leal .Lbswap-.L011pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movups (%edx),%xmm2 -.byte 102,15,56,0,197 - movups 32(%edx),%xmm4 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - ret -.size gcm_gmult_clmul,.-.L_gcm_gmult_clmul_begin -.globl gcm_ghash_clmul -.type gcm_ghash_clmul,@function -.align 16 -gcm_ghash_clmul: -.L_gcm_ghash_clmul_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebx - call .L012pic -.L012pic: - popl %ecx - leal .Lbswap-.L012pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movdqu (%edx),%xmm2 -.byte 102,15,56,0,197 - subl $16,%ebx - jz .L013odd_tail - movdqu (%esi),%xmm3 - movdqu 16(%esi),%xmm6 -.byte 102,15,56,0,221 -.byte 102,15,56,0,245 - movdqu 32(%edx),%xmm5 - pxor %xmm3,%xmm0 - pshufd $78,%xmm6,%xmm3 - movdqa %xmm6,%xmm7 - pxor %xmm6,%xmm3 - leal 32(%esi),%esi -.byte 102,15,58,68,242,0 -.byte 102,15,58,68,250,17 -.byte 102,15,58,68,221,0 - movups 16(%edx),%xmm2 - nop - subl $32,%ebx - jbe .L014even_tail - jmp .L015mod_loop -.align 32 -.L015mod_loop: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 - nop -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movups (%edx),%xmm2 - xorps %xmm6,%xmm0 - movdqa (%ecx),%xmm5 - xorps %xmm7,%xmm1 - movdqu (%esi),%xmm7 - pxor %xmm0,%xmm3 - movdqu 16(%esi),%xmm6 - pxor %xmm1,%xmm3 -.byte 102,15,56,0,253 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 -.byte 102,15,56,0,245 - pxor %xmm7,%xmm1 - movdqa %xmm6,%xmm7 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 -.byte 102,15,58,68,242,0 - movups 32(%edx),%xmm5 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - pshufd $78,%xmm7,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm7,%xmm3 - pxor %xmm4,%xmm1 -.byte 102,15,58,68,250,17 - movups 16(%edx),%xmm2 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,58,68,221,0 - leal 32(%esi),%esi - subl $32,%ebx - ja .L015mod_loop -.L014even_tail: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movdqa (%ecx),%xmm5 - xorps %xmm6,%xmm0 - xorps %xmm7,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testl %ebx,%ebx - jnz .L016done - movups (%edx),%xmm2 -.L013odd_tail: - movdqu (%esi),%xmm3 -.byte 102,15,56,0,221 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.L016done: -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size gcm_ghash_clmul,.-.L_gcm_ghash_clmul_begin -.align 64 -.Lbswap: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -.align 64 -.Lrem_8bit: -.value 0,450,900,582,1800,1738,1164,1358 -.value 3600,4050,3476,3158,2328,2266,2716,2910 -.value 7200,7650,8100,7782,6952,6890,6316,6510 -.value 4656,5106,4532,4214,5432,5370,5820,6014 -.value 14400,14722,15300,14854,16200,16010,15564,15630 -.value 13904,14226,13780,13334,12632,12442,13020,13086 -.value 9312,9634,10212,9766,9064,8874,8428,8494 -.value 10864,11186,10740,10294,11640,11450,12028,12094 -.value 28800,28994,29444,29382,30600,30282,29708,30158 -.value 32400,32594,32020,31958,31128,30810,31260,31710 -.value 27808,28002,28452,28390,27560,27242,26668,27118 -.value 25264,25458,24884,24822,26040,25722,26172,26622 -.value 18624,18690,19268,19078,20424,19978,19532,19854 -.value 18128,18194,17748,17558,16856,16410,16988,17310 -.value 21728,21794,22372,22182,21480,21034,20588,20910 -.value 23280,23346,22900,22710,24056,23610,24188,24510 -.value 57600,57538,57988,58182,58888,59338,58764,58446 -.value 61200,61138,60564,60758,59416,59866,60316,59998 -.value 64800,64738,65188,65382,64040,64490,63916,63598 -.value 62256,62194,61620,61814,62520,62970,63420,63102 -.value 55616,55426,56004,56070,56904,57226,56780,56334 -.value 55120,54930,54484,54550,53336,53658,54236,53790 -.value 50528,50338,50916,50982,49768,50090,49644,49198 -.value 52080,51890,51444,51510,52344,52666,53244,52798 -.value 37248,36930,37380,37830,38536,38730,38156,38094 -.value 40848,40530,39956,40406,39064,39258,39708,39646 -.value 36256,35938,36388,36838,35496,35690,35116,35054 -.value 33712,33394,32820,33270,33976,34170,34620,34558 -.value 43456,43010,43588,43910,44744,44810,44364,44174 -.value 42960,42514,42068,42390,41176,41242,41820,41630 -.value 46560,46114,46692,47014,45800,45866,45420,45230 -.value 48112,47666,47220,47542,48376,48442,49020,48830 -.align 64 -.Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -.byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -.byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -.byte 0 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/rc4/rc4-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/rc4/rc4-586.s deleted file mode 100644 index fcb4adc14633c9..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/rc4/rc4-586.s +++ /dev/null @@ -1,372 +0,0 @@ -.file "rc4-586.s" -.text -.globl RC4 -.type RC4,@function -.align 16 -RC4: -.L_RC4_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebp - xorl %eax,%eax - xorl %ebx,%ebx - cmpl $0,%edx - je .L000abort - movb (%edi),%al - movb 4(%edi),%bl - addl $8,%edi - leal (%esi,%edx,1),%ecx - subl %esi,%ebp - movl %ecx,24(%esp) - incb %al - cmpl $-1,256(%edi) - je .L001RC4_CHAR - movl (%edi,%eax,4),%ecx - andl $-4,%edx - jz .L002loop1 - movl %ebp,32(%esp) - testl $-8,%edx - jz .L003go4loop4 - leal OPENSSL_ia32cap_P,%ebp - btl $26,(%ebp) - jnc .L003go4loop4 - movl 32(%esp),%ebp - andl $-8,%edx - leal -8(%esi,%edx,1),%edx - movl %edx,-4(%edi) - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - movq (%esi),%mm0 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 - jmp .L004loop_mmx_enter -.align 16 -.L005loop_mmx: - addb %cl,%bl - psllq $56,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movq (%esi),%mm0 - movq %mm2,-8(%ebp,%esi,1) - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 -.L004loop_mmx_enter: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm0,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $8,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $16,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $24,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $32,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $40,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $48,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - movl %ebx,%edx - xorl %ebx,%ebx - movb %dl,%bl - cmpl -4(%edi),%esi - leal 8(%esi),%esi - jb .L005loop_mmx - psllq $56,%mm1 - pxor %mm1,%mm2 - movq %mm2,-8(%ebp,%esi,1) - emms - cmpl 24(%esp),%esi - je .L006done - jmp .L002loop1 -.align 16 -.L003go4loop4: - leal -4(%esi,%edx,1),%edx - movl %edx,28(%esp) -.L007loop4: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%eax,4),%ecx - movl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl 32(%esp),%ecx - orl (%edi,%edx,4),%ebp - rorl $8,%ebp - xorl (%esi),%ebp - cmpl 28(%esp),%esi - movl %ebp,(%ecx,%esi,1) - leal 4(%esi),%esi - movl (%edi,%eax,4),%ecx - jb .L007loop4 - cmpl 24(%esp),%esi - je .L006done - movl 32(%esp),%ebp -.align 16 -.L002loop1: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%edx,4),%edx - xorb (%esi),%dl - leal 1(%esi),%esi - movl (%edi,%eax,4),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb .L002loop1 - jmp .L006done -.align 16 -.L001RC4_CHAR: - movzbl (%edi,%eax,1),%ecx -.L008cloop1: - addb %cl,%bl - movzbl (%edi,%ebx,1),%edx - movb %cl,(%edi,%ebx,1) - movb %dl,(%edi,%eax,1) - addb %cl,%dl - movzbl (%edi,%edx,1),%edx - addb $1,%al - xorb (%esi),%dl - leal 1(%esi),%esi - movzbl (%edi,%eax,1),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb .L008cloop1 -.L006done: - decb %al - movl %ebx,-4(%edi) - movb %al,-8(%edi) -.L000abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size RC4,.-.L_RC4_begin -.globl private_RC4_set_key -.type private_RC4_set_key,@function -.align 16 -private_RC4_set_key: -.L_private_RC4_set_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%esi - leal OPENSSL_ia32cap_P,%edx - leal 8(%edi),%edi - leal (%esi,%ebp,1),%esi - negl %ebp - xorl %eax,%eax - movl %ebp,-4(%edi) - btl $20,(%edx) - jc .L009c1stloop -.align 16 -.L010w1stloop: - movl %eax,(%edi,%eax,4) - addb $1,%al - jnc .L010w1stloop - xorl %ecx,%ecx - xorl %edx,%edx -.align 16 -.L011w2ndloop: - movl (%edi,%ecx,4),%eax - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movl (%edi,%edx,4),%ebx - jnz .L012wnowrap - movl -4(%edi),%ebp -.L012wnowrap: - movl %eax,(%edi,%edx,4) - movl %ebx,(%edi,%ecx,4) - addb $1,%cl - jnc .L011w2ndloop - jmp .L013exit -.align 16 -.L009c1stloop: - movb %al,(%edi,%eax,1) - addb $1,%al - jnc .L009c1stloop - xorl %ecx,%ecx - xorl %edx,%edx - xorl %ebx,%ebx -.align 16 -.L014c2ndloop: - movb (%edi,%ecx,1),%al - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movb (%edi,%edx,1),%bl - jnz .L015cnowrap - movl -4(%edi),%ebp -.L015cnowrap: - movb %al,(%edi,%edx,1) - movb %bl,(%edi,%ecx,1) - addb $1,%cl - jnc .L014c2ndloop - movl $-1,256(%edi) -.L013exit: - xorl %eax,%eax - movl %eax,-8(%edi) - movl %eax,-4(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size private_RC4_set_key,.-.L_private_RC4_set_key_begin -.globl RC4_options -.type RC4_options,@function -.align 16 -RC4_options: -.L_RC4_options_begin: - call .L016pic_point -.L016pic_point: - popl %eax - leal .L017opts-.L016pic_point(%eax),%eax - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%edx - btl $20,%edx - jc .L0181xchar - btl $26,%edx - jnc .L019ret - addl $25,%eax - ret -.L0181xchar: - addl $12,%eax -.L019ret: - ret -.align 64 -.L017opts: -.byte 114,99,52,40,52,120,44,105,110,116,41,0 -.byte 114,99,52,40,49,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,56,120,44,109,109,120,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 64 -.size RC4_options,.-.L_RC4_options_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/ripemd/rmd-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/ripemd/rmd-586.s deleted file mode 100644 index 3c45fb91d0563b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/ripemd/rmd-586.s +++ /dev/null @@ -1,1965 +0,0 @@ -.file "../openssl/crypto/ripemd/asm/rmd-586.s" -.text -.globl ripemd160_block_asm_data_order -.type ripemd160_block_asm_data_order,@function -.align 16 -ripemd160_block_asm_data_order: -.L_ripemd160_block_asm_data_order_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - pushl %esi - movl (%edx),%ecx - pushl %edi - movl 4(%edx),%esi - pushl %ebp - movl 8(%edx),%edi - pushl %ebx - subl $108,%esp -.L000start: - - movl (%eax),%ebx - movl 4(%eax),%ebp - movl %ebx,(%esp) - movl %ebp,4(%esp) - movl 8(%eax),%ebx - movl 12(%eax),%ebp - movl %ebx,8(%esp) - movl %ebp,12(%esp) - movl 16(%eax),%ebx - movl 20(%eax),%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl 24(%eax),%ebx - movl 28(%eax),%ebp - movl %ebx,24(%esp) - movl %ebp,28(%esp) - movl 32(%eax),%ebx - movl 36(%eax),%ebp - movl %ebx,32(%esp) - movl %ebp,36(%esp) - movl 40(%eax),%ebx - movl 44(%eax),%ebp - movl %ebx,40(%esp) - movl %ebp,44(%esp) - movl 48(%eax),%ebx - movl 52(%eax),%ebp - movl %ebx,48(%esp) - movl %ebp,52(%esp) - movl 56(%eax),%ebx - movl 60(%eax),%ebp - movl %ebx,56(%esp) - movl %ebp,60(%esp) - movl %edi,%eax - movl 12(%edx),%ebx - movl 16(%edx),%ebp - - xorl %ebx,%eax - movl (%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $11,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 4(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $14,%ebp - addl %ebx,%ebp - - movl 8(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $15,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 12(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $12,%edi - addl %esi,%edi - - movl 16(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $5,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 20(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 24(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 28(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 32(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 36(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 40(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 44(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - movl 48(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $6,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 52(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $7,%edi - addl %esi,%edi - - movl 56(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $9,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl $-1,%eax - roll $10,%edi - addl %edx,%ecx - movl 28(%esp),%edx - roll $8,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $7,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 52(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $6,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $8,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $13,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $11,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $9,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 1518500249(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $7,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 48(%esp),%edx - roll $10,%ebp - leal 1518500249(%edi,%eax,1),%edi - movl $-1,%eax - roll $15,%edi - addl %esi,%edi - - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 1518500249(%esi,%edx,1),%esi - movl $-1,%edx - roll $7,%esi - addl %ecx,%esi - - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%edi - leal 1518500249(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $12,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $15,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $11,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 44(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $7,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $13,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl $-1,%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $12,%ebp - addl %ebx,%ebp - - movl 12(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $11,%ebx - addl %edi,%ebx - - movl 40(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $13,%edi - addl %esi,%edi - - movl 56(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $6,%esi - addl %ecx,%esi - - movl 16(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $7,%ecx - addl %ebp,%ecx - - movl 36(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $14,%ebp - addl %ebx,%ebp - - movl 60(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $9,%ebx - addl %edi,%ebx - - movl 32(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1859775393(%edi,%edx,1),%edi - subl %ebx,%eax - roll $13,%edi - addl %esi,%edi - - movl 4(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1859775393(%esi,%eax,1),%esi - subl %edi,%edx - roll $15,%esi - addl %ecx,%esi - - movl 8(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1859775393(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - movl 28(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1859775393(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $8,%ebp - addl %ebx,%ebp - - movl (%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $13,%ebx - addl %edi,%ebx - - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $6,%edi - addl %esi,%edi - - movl 52(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $5,%esi - addl %ecx,%esi - - movl 44(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $12,%ecx - addl %ebp,%ecx - - movl 20(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - movl 48(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $14,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $5,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $6,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - - movl 16(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - - movl (%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - - movl 20(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $5,%ebp - addl %ebx,%ebp - - movl 36(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $11,%ebx - addl %edi,%ebx - - movl 28(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $6,%edi - addl %esi,%edi - - movl 48(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - subl %ebx,%edx - roll $8,%esi - addl %ecx,%esi - - movl 8(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 2840853838(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - - movl 40(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 2840853838(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $12,%ebp - addl %ebx,%ebp - - movl 56(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 2840853838(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - - movl 4(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 2840853838(%edi,%eax,1),%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 32(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $14,%ecx - addl %ebp,%ecx - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $11,%ebp - addl %ebx,%ebp - - movl 24(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $8,%ebx - addl %edi,%ebx - - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $5,%edi - addl %esi,%edi - - movl 52(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl 128(%esp),%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - movl %ecx,64(%esp) - roll $6,%esi - addl %ecx,%esi - movl (%edx),%ecx - movl %esi,68(%esp) - movl %edi,72(%esp) - movl 4(%edx),%esi - movl %ebx,76(%esp) - movl 8(%edx),%edi - movl %ebp,80(%esp) - movl 12(%edx),%ebx - movl 16(%edx),%ebp - - movl $-1,%edx - subl %ebx,%edx - movl 20(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 56(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $9,%ebp - addl %ebx,%ebp - - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl (%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $11,%edi - addl %esi,%edi - - movl 36(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - - movl 8(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 1352829926(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - - movl 16(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 1352829926(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $5,%ebx - addl %edi,%ebx - - movl 52(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1352829926(%edi,%edx,1),%edi - subl %ebp,%eax - roll $7,%edi - addl %esi,%edi - - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 1352829926(%esi,%eax,1),%esi - subl %ebx,%edx - roll $7,%esi - addl %ecx,%esi - - movl 60(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - - movl 32(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $11,%ebp - addl %ebx,%ebp - - movl 4(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - - movl 40(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $14,%edi - addl %esi,%edi - - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - - movl 48(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - movl %edi,%eax - roll $6,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $12,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $8,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $7,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $12,%ebp - addl %ebx,%ebp - - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $7,%ebx - addl %edi,%ebx - - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $6,%edi - addl %esi,%edi - - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $15,%esi - addl %ecx,%esi - - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - subl %ecx,%edx - roll $11,%ebp - addl %ebx,%ebp - - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 20(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $7,%edi - addl %esi,%edi - - movl 4(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $15,%esi - addl %ecx,%esi - - movl 12(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $11,%ecx - addl %ebp,%ecx - - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $8,%ebp - addl %ebx,%ebp - - movl 56(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $6,%ebx - addl %edi,%ebx - - movl 24(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1836072691(%edi,%edx,1),%edi - subl %ebx,%eax - roll $6,%edi - addl %esi,%edi - - movl 36(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1836072691(%esi,%eax,1),%esi - subl %edi,%edx - roll $14,%esi - addl %ecx,%esi - - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1836072691(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $12,%ecx - addl %ebp,%ecx - - movl 32(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1836072691(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $13,%ebp - addl %ebx,%ebp - - movl 48(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $5,%ebx - addl %edi,%ebx - - movl 8(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $14,%edi - addl %esi,%edi - - movl 40(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $13,%esi - addl %ecx,%esi - - movl (%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $13,%ecx - addl %ebp,%ecx - - movl 16(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - - movl 52(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl 32(%esp),%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $5,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $15,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 16(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $5,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $8,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 12(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $11,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $14,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%ebp - leal 2053994217(%edi,%eax,1),%edi - movl $-1,%eax - roll $14,%edi - addl %esi,%edi - - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 2053994217(%esi,%edx,1),%esi - movl $-1,%edx - roll $6,%esi - addl %ecx,%esi - - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 20(%esp),%edx - roll $10,%edi - leal 2053994217(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $14,%ecx - addl %ebp,%ecx - - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%esi - leal 2053994217(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $6,%ebp - addl %ebx,%ebp - - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 2053994217(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $12,%edi - addl %esi,%edi - - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $9,%esi - addl %ecx,%esi - - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $12,%ecx - addl %ebp,%ecx - - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $5,%ebp - addl %ebx,%ebp - - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $15,%ebx - addl %edi,%ebx - - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %eax,%edx - movl %ebx,%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - xorl %ebp,%eax - roll $8,%edi - addl %esi,%edi - - movl 48(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $8,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - - movl 40(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $12,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 16(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - - movl 4(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $12,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 20(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $5,%esi - addl %ecx,%esi - - movl 32(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - - xorl %edi,%eax - movl 28(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - - movl 24(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $8,%ebx - addl %edi,%ebx - - xorl %ecx,%eax - movl 8(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $13,%edi - addl %esi,%edi - - movl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $6,%esi - addl %ecx,%esi - - xorl %ebx,%eax - movl 56(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - - movl (%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $15,%ebp - addl %ebx,%ebp - - xorl %esi,%eax - movl 12(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - - movl 36(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - - xorl %ebp,%eax - movl 44(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - roll $10,%ebx - addl %edx,%esi - movl 128(%esp),%edx - roll $11,%esi - addl %ecx,%esi - movl 4(%edx),%eax - addl %eax,%ebx - movl 72(%esp),%eax - addl %eax,%ebx - movl 8(%edx),%eax - addl %eax,%ebp - movl 76(%esp),%eax - addl %eax,%ebp - movl 12(%edx),%eax - addl %eax,%ecx - movl 80(%esp),%eax - addl %eax,%ecx - movl 16(%edx),%eax - addl %eax,%esi - movl 64(%esp),%eax - addl %eax,%esi - movl (%edx),%eax - addl %eax,%edi - movl 68(%esp),%eax - addl %eax,%edi - movl 136(%esp),%eax - movl %ebx,(%edx) - movl %ebp,4(%edx) - movl %ecx,8(%edx) - subl $1,%eax - movl %esi,12(%edx) - movl %edi,16(%edx) - jle .L001get_out - movl %eax,136(%esp) - movl %ecx,%edi - movl 132(%esp),%eax - movl %ebx,%ecx - addl $64,%eax - movl %ebp,%esi - movl %eax,132(%esp) - jmp .L000start -.L001get_out: - addl $108,%esp - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.size ripemd160_block_asm_data_order,.-.L_ripemd160_block_asm_data_order_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha1-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha1-586.s deleted file mode 100644 index 816b1d55bb206b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha1-586.s +++ /dev/null @@ -1,2795 +0,0 @@ -.file "sha1-586.s" -.text -.globl sha1_block_data_order -.type sha1_block_data_order,@function -.align 16 -sha1_block_data_order: -.L_sha1_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L000pic_point -.L000pic_point: - popl %ebp - leal OPENSSL_ia32cap_P,%esi - leal .LK_XX_XX-.L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%edx - testl $512,%edx - jz .L001x86 - movl 8(%esi),%ecx - testl $16777216,%eax - jz .L001x86 - testl $536870912,%ecx - jnz .Lshaext_shortcut - jmp .Lssse3_shortcut -.align 16 -.L001x86: - movl 20(%esp),%ebp - movl 24(%esp),%esi - movl 28(%esp),%eax - subl $76,%esp - shll $6,%eax - addl %esi,%eax - movl %eax,104(%esp) - movl 16(%ebp),%edi - jmp .L002loop -.align 16 -.L002loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,16(%esp) - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %edx,28(%esp) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edx,44(%esp) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,48(%esp) - movl %ebx,52(%esp) - movl %ecx,56(%esp) - movl %edx,60(%esp) - movl %esi,100(%esp) - movl (%ebp),%eax - movl 4(%ebp),%ebx - movl 8(%ebp),%ecx - movl 12(%ebp),%edx - - movl %ecx,%esi - movl %eax,%ebp - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl (%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 4(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 8(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 12(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 16(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 20(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 24(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 28(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 32(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 36(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 40(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 44(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 48(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 52(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 56(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 60(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - movl (%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 8(%esp),%ebx - xorl %esi,%ebp - xorl 32(%esp),%ebx - andl %edx,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - xorl %esi,%ebp - addl %ebp,%eax - movl %ecx,%ebp - rorl $2,%edx - movl %ebx,(%esp) - roll $5,%ebp - leal 1518500249(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 12(%esp),%eax - xorl %edi,%ebp - xorl 36(%esp),%eax - andl %ecx,%ebp - xorl 56(%esp),%eax - roll $1,%eax - xorl %edi,%ebp - addl %ebp,%esi - movl %ebx,%ebp - rorl $2,%ecx - movl %eax,4(%esp) - roll $5,%ebp - leal 1518500249(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 40(%esp),%esi - andl %ebx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - xorl %edx,%ebp - addl %ebp,%edi - movl %eax,%ebp - rorl $2,%ebx - movl %esi,8(%esp) - roll $5,%ebp - leal 1518500249(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 44(%esp),%edi - andl %eax,%ebp - xorl (%esp),%edi - roll $1,%edi - xorl %ecx,%ebp - addl %ebp,%edx - movl %esi,%ebp - rorl $2,%eax - movl %edi,12(%esp) - roll $5,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,52(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,56(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,60(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl (%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 8(%esp),%edx - xorl %eax,%ebp - xorl 32(%esp),%edx - xorl %ebx,%ebp - xorl 52(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 4(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 12(%esp),%ecx - xorl %esi,%ebp - xorl 36(%esp),%ecx - xorl %eax,%ebp - xorl 56(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,4(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 8(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 16(%esp),%ebx - xorl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl 60(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,8(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 12(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 20(%esp),%eax - xorl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl (%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,12(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 16(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 24(%esp),%esi - xorl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 4(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,16(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 20(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 28(%esp),%edi - xorl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 8(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,20(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 24(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 32(%esp),%edx - xorl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 12(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,24(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 28(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 36(%esp),%ecx - xorl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 16(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,28(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 32(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl (%esp),%ebx - andl %edx,%ebp - xorl 20(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,32(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 36(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl 4(%esp),%eax - andl %ecx,%ebp - xorl 24(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,36(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 40(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 8(%esp),%esi - andl %ebx,%ebp - xorl 28(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,40(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 44(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 12(%esp),%edi - andl %eax,%ebp - xorl 32(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,44(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 48(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 16(%esp),%edx - andl %esi,%ebp - xorl 36(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,48(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 52(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 20(%esp),%ecx - andl %edi,%ebp - xorl 40(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,52(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 56(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl (%esp),%ebx - xorl %esi,%ebp - xorl 24(%esp),%ebx - andl %edx,%ebp - xorl 44(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,56(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 60(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 4(%esp),%eax - xorl %edi,%ebp - xorl 28(%esp),%eax - andl %ecx,%ebp - xorl 48(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,60(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl (%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 8(%esp),%esi - xorl %edx,%ebp - xorl 32(%esp),%esi - andl %ebx,%ebp - xorl 52(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 4(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 12(%esp),%edi - xorl %ecx,%ebp - xorl 36(%esp),%edi - andl %eax,%ebp - xorl 56(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,4(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 8(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 16(%esp),%edx - xorl %ebx,%ebp - xorl 40(%esp),%edx - andl %esi,%ebp - xorl 60(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,8(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 12(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 20(%esp),%ecx - xorl %eax,%ebp - xorl 44(%esp),%ecx - andl %edi,%ebp - xorl (%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,12(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 16(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 24(%esp),%ebx - xorl %esi,%ebp - xorl 48(%esp),%ebx - andl %edx,%ebp - xorl 4(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,16(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 20(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 28(%esp),%eax - xorl %edi,%ebp - xorl 52(%esp),%eax - andl %ecx,%ebp - xorl 8(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,20(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 24(%esp),%esi - addl %ebp,%eax - - movl %ecx,%ebp - xorl 32(%esp),%esi - xorl %edx,%ebp - xorl 56(%esp),%esi - andl %ebx,%ebp - xorl 12(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,24(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 28(%esp),%edi - addl %ebp,%esi - - movl %ebx,%ebp - xorl 36(%esp),%edi - xorl %ecx,%ebp - xorl 60(%esp),%edi - andl %eax,%ebp - xorl 16(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,28(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 32(%esp),%edx - addl %ebp,%edi - - movl %eax,%ebp - xorl 40(%esp),%edx - xorl %ebx,%ebp - xorl (%esp),%edx - andl %esi,%ebp - xorl 20(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,32(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 36(%esp),%ecx - addl %ebp,%edx - - movl %esi,%ebp - xorl 44(%esp),%ecx - xorl %eax,%ebp - xorl 4(%esp),%ecx - andl %edi,%ebp - xorl 24(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,36(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 40(%esp),%ebx - addl %ebp,%ecx - - movl %edi,%ebp - xorl 48(%esp),%ebx - xorl %esi,%ebp - xorl 8(%esp),%ebx - andl %edx,%ebp - xorl 28(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,40(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 44(%esp),%eax - addl %ebp,%ebx - - movl %edx,%ebp - xorl 52(%esp),%eax - xorl %edi,%ebp - xorl 12(%esp),%eax - andl %ecx,%ebp - xorl 32(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,44(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 48(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 56(%esp),%esi - xorl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 36(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,48(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 52(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 60(%esp),%edi - xorl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 40(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,52(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 56(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl (%esp),%edx - xorl %eax,%ebp - xorl 24(%esp),%edx - xorl %ebx,%ebp - xorl 44(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,56(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 60(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 4(%esp),%ecx - xorl %esi,%ebp - xorl 28(%esp),%ecx - xorl %eax,%ebp - xorl 48(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,60(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl (%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 8(%esp),%ebx - xorl %edi,%ebp - xorl 32(%esp),%ebx - xorl %esi,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 12(%esp),%eax - xorl %edx,%ebp - xorl 36(%esp),%eax - xorl %edi,%ebp - xorl 56(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,4(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 16(%esp),%esi - xorl %ecx,%ebp - xorl 40(%esp),%esi - xorl %edx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,8(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 20(%esp),%edi - xorl %ebx,%ebp - xorl 44(%esp),%edi - xorl %ecx,%ebp - xorl (%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,12(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - leal 3395469782(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - leal 3395469782(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - leal 3395469782(%edi,%edx,1),%edi - addl %ebp,%edi - movl 96(%esp),%ebp - movl 100(%esp),%edx - addl (%ebp),%edi - addl 4(%ebp),%esi - addl 8(%ebp),%eax - addl 12(%ebp),%ebx - addl 16(%ebp),%ecx - movl %edi,(%ebp) - addl $64,%edx - movl %esi,4(%ebp) - cmpl 104(%esp),%edx - movl %eax,8(%ebp) - movl %ecx,%edi - movl %ebx,12(%ebp) - movl %edx,%esi - movl %ecx,16(%ebp) - jb .L002loop - addl $76,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size sha1_block_data_order,.-.L_sha1_block_data_order_begin -.type _sha1_block_data_order_shaext,@function -.align 16 -_sha1_block_data_order_shaext: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L003pic_point -.L003pic_point: - popl %ebp - leal .LK_XX_XX-.L003pic_point(%ebp),%ebp -.Lshaext_shortcut: - movl 20(%esp),%edi - movl %esp,%ebx - movl 24(%esp),%esi - movl 28(%esp),%ecx - subl $32,%esp - movdqu (%edi),%xmm0 - movd 16(%edi),%xmm1 - andl $-32,%esp - movdqa 80(%ebp),%xmm3 - movdqu (%esi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%esi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 -.byte 102,15,56,0,251 - jmp .L004loop_shaext -.align 16 -.L004loop_shaext: - decl %ecx - leal 64(%esi),%eax - movdqa %xmm1,(%esp) - paddd %xmm4,%xmm1 - cmovnel %eax,%esi - movdqa %xmm0,16(%esp) -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%esi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%esi),%xmm5 -.byte 102,15,56,0,227 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,235 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,243 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 - movdqa (%esp),%xmm2 -.byte 102,15,56,0,251 -.byte 15,56,200,202 - paddd 16(%esp),%xmm0 - jnz .L004loop_shaext - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%edi) - movd %xmm1,16(%edi) - movl %ebx,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _sha1_block_data_order_shaext,.-_sha1_block_data_order_shaext -.type _sha1_block_data_order_ssse3,@function -.align 16 -_sha1_block_data_order_ssse3: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call .L005pic_point -.L005pic_point: - popl %ebp - leal .LK_XX_XX-.L005pic_point(%ebp),%ebp -.Lssse3_shortcut: - movdqa (%ebp),%xmm7 - movdqa 16(%ebp),%xmm0 - movdqa 32(%ebp),%xmm1 - movdqa 48(%ebp),%xmm2 - movdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - movdqa %xmm0,112(%esp) - movdqa %xmm1,128(%esp) - movdqa %xmm2,144(%esp) - shll $6,%edx - movdqa %xmm7,160(%esp) - addl %ebp,%edx - movdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - movdqu -64(%ebp),%xmm0 - movdqu -48(%ebp),%xmm1 - movdqu -32(%ebp),%xmm2 - movdqu -16(%ebp),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - movdqa %xmm7,96(%esp) -.byte 102,15,56,0,222 - paddd %xmm7,%xmm0 - paddd %xmm7,%xmm1 - paddd %xmm7,%xmm2 - movdqa %xmm0,(%esp) - psubd %xmm7,%xmm0 - movdqa %xmm1,16(%esp) - psubd %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - movl %ecx,%ebp - psubd %xmm7,%xmm2 - xorl %edx,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebp,%esi - jmp .L006loop -.align 16 -.L006loop: - rorl $2,%ebx - xorl %edx,%esi - movl %eax,%ebp - punpcklqdq %xmm1,%xmm4 - movdqa %xmm3,%xmm6 - addl (%esp),%edi - xorl %ecx,%ebx - paddd %xmm3,%xmm7 - movdqa %xmm0,64(%esp) - roll $5,%eax - addl %esi,%edi - psrldq $4,%xmm6 - andl %ebx,%ebp - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%edi - rorl $7,%eax - pxor %xmm2,%xmm6 - xorl %ecx,%ebp - movl %edi,%esi - addl 4(%esp),%edx - pxor %xmm6,%xmm4 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm7,48(%esp) - addl %ebp,%edx - andl %eax,%esi - movdqa %xmm4,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - movdqa %xmm4,%xmm6 - xorl %ebx,%esi - pslldq $12,%xmm0 - paddd %xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - psrld $31,%xmm6 - xorl %eax,%edi - roll $5,%edx - movdqa %xmm0,%xmm7 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - psrld $30,%xmm0 - addl %edx,%ecx - rorl $7,%edx - por %xmm6,%xmm4 - xorl %eax,%ebp - movl %ecx,%esi - addl 12(%esp),%ebx - pslld $2,%xmm7 - xorl %edi,%edx - roll $5,%ecx - pxor %xmm0,%xmm4 - movdqa 96(%esp),%xmm0 - addl %ebp,%ebx - andl %edx,%esi - pxor %xmm7,%xmm4 - pshufd $238,%xmm1,%xmm5 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - xorl %edi,%esi - movl %ebx,%ebp - punpcklqdq %xmm2,%xmm5 - movdqa %xmm4,%xmm7 - addl 16(%esp),%eax - xorl %edx,%ecx - paddd %xmm4,%xmm0 - movdqa %xmm1,80(%esp) - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm7 - andl %ecx,%ebp - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm7 - xorl %edx,%ebp - movl %eax,%esi - addl 20(%esp),%edi - pxor %xmm7,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm0,(%esp) - addl %ebp,%edi - andl %ebx,%esi - movdqa %xmm5,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - movdqa %xmm5,%xmm7 - xorl %ecx,%esi - pslldq $12,%xmm1 - paddd %xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - psrld $31,%xmm7 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - psrld $30,%xmm1 - addl %edi,%edx - rorl $7,%edi - por %xmm7,%xmm5 - xorl %ebx,%ebp - movl %edx,%esi - addl 28(%esp),%ecx - pslld $2,%xmm0 - xorl %eax,%edi - roll $5,%edx - pxor %xmm1,%xmm5 - movdqa 112(%esp),%xmm1 - addl %ebp,%ecx - andl %edi,%esi - pxor %xmm0,%xmm5 - pshufd $238,%xmm2,%xmm6 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - punpcklqdq %xmm3,%xmm6 - movdqa %xmm5,%xmm0 - addl 32(%esp),%ebx - xorl %edi,%edx - paddd %xmm5,%xmm1 - movdqa %xmm2,96(%esp) - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm0 - andl %edx,%ebp - xorl %edi,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm0 - xorl %edi,%ebp - movl %ebx,%esi - addl 36(%esp),%eax - pxor %xmm0,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm1,16(%esp) - addl %ebp,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm0 - xorl %edx,%esi - pslldq $12,%xmm2 - paddd %xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - psrld $31,%xmm0 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm2,%xmm1 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - psrld $30,%xmm2 - addl %eax,%edi - rorl $7,%eax - por %xmm0,%xmm6 - xorl %ecx,%ebp - movdqa 64(%esp),%xmm0 - movl %edi,%esi - addl 44(%esp),%edx - pslld $2,%xmm1 - xorl %ebx,%eax - roll $5,%edi - pxor %xmm2,%xmm6 - movdqa 112(%esp),%xmm2 - addl %ebp,%edx - andl %eax,%esi - pxor %xmm1,%xmm6 - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%esi - movl %edx,%ebp - punpcklqdq %xmm4,%xmm7 - movdqa %xmm6,%xmm1 - addl 48(%esp),%ecx - xorl %eax,%edi - paddd %xmm6,%xmm2 - movdqa %xmm3,64(%esp) - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm1 - andl %edi,%ebp - xorl %eax,%edi - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm1 - xorl %eax,%ebp - movl %ecx,%esi - addl 52(%esp),%ebx - pxor %xmm1,%xmm7 - xorl %edi,%edx - roll $5,%ecx - movdqa %xmm2,32(%esp) - addl %ebp,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm1 - xorl %edi,%esi - pslldq $12,%xmm3 - paddd %xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - psrld $31,%xmm1 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm3,%xmm2 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - por %xmm1,%xmm7 - xorl %edx,%ebp - movdqa 80(%esp),%xmm1 - movl %eax,%esi - addl 60(%esp),%edi - pslld $2,%xmm2 - xorl %ecx,%ebx - roll $5,%eax - pxor %xmm3,%xmm7 - movdqa 112(%esp),%xmm3 - addl %ebp,%edi - andl %ebx,%esi - pxor %xmm2,%xmm7 - pshufd $238,%xmm6,%xmm2 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,80(%esp) - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm3,%xmm4 - addl %esi,%edx - paddd %xmm7,%xmm3 - andl %eax,%ebp - pxor %xmm2,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - roll $5,%edx - pslld $2,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - psrld $30,%xmm2 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - xorl %edi,%edx - roll $5,%ecx - por %xmm2,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - movdqa 96(%esp),%xmm2 - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - pshufd $238,%xmm7,%xmm3 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 16(%esp),%edi - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm2,%xmm1 - movdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm4,%xmm5 - rorl $7,%ebx - paddd %xmm0,%xmm4 - addl %eax,%edi - pxor %xmm3,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm3 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm3,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - movdqa 64(%esp),%xmm3 - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - pshufd $238,%xmm0,%xmm4 - addl %ecx,%ebx - addl 32(%esp),%eax - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - pxor %xmm3,%xmm2 - movdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - movdqa 128(%esp),%xmm6 - rorl $7,%ecx - paddd %xmm1,%xmm5 - addl %ebx,%eax - pxor %xmm4,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - pslld $2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - psrld $30,%xmm4 - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - por %xmm4,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - movdqa 80(%esp),%xmm4 - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - pshufd $238,%xmm1,%xmm5 - addl %edx,%ecx - addl 48(%esp),%ebx - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - pxor %xmm4,%xmm3 - movdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%edx - paddd %xmm2,%xmm6 - addl %ecx,%ebx - pxor %xmm5,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pslld $2,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - psrld $30,%xmm5 - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - por %xmm5,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - movdqa 96(%esp),%xmm5 - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - pshufd $238,%xmm2,%xmm6 - addl %edi,%edx - addl (%esp),%ecx - pxor %xmm0,%xmm4 - punpcklqdq %xmm3,%xmm6 - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - pxor %xmm5,%xmm4 - movdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - movdqa %xmm7,%xmm0 - rorl $7,%edi - paddd %xmm3,%xmm7 - addl %edx,%ecx - pxor %xmm6,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm6 - movdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - pslld $2,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - psrld $30,%xmm6 - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - por %xmm6,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - movdqa 64(%esp),%xmm6 - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - pshufd $238,%xmm3,%xmm7 - addl %eax,%edi - addl 16(%esp),%edx - pxor %xmm1,%xmm5 - punpcklqdq %xmm4,%xmm7 - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - pxor %xmm6,%xmm5 - movdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - movdqa %xmm0,%xmm1 - rorl $7,%eax - paddd %xmm4,%xmm0 - addl %edi,%edx - pxor %xmm7,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm7 - movdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - pslld $2,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - psrld $30,%xmm7 - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - por %xmm7,%xmm5 - addl 28(%esp),%eax - movdqa 80(%esp),%xmm7 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pshufd $238,%xmm4,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 32(%esp),%edi - pxor %xmm2,%xmm6 - punpcklqdq %xmm5,%xmm0 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - pxor %xmm7,%xmm6 - movdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - roll $5,%eax - movdqa %xmm1,%xmm2 - addl %esi,%edi - paddd %xmm5,%xmm1 - xorl %ebx,%ebp - pxor %xmm0,%xmm6 - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - andl %ebx,%ebp - movdqa %xmm6,%xmm0 - movdqa %xmm1,16(%esp) - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - pslld $2,%xmm6 - addl %ebp,%edx - xorl %eax,%esi - psrld $30,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - por %xmm0,%xmm6 - movl %edx,%ebp - xorl %eax,%esi - movdqa 96(%esp),%xmm0 - roll $5,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - pshufd $238,%xmm5,%xmm1 - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 48(%esp),%eax - pxor %xmm3,%xmm7 - punpcklqdq %xmm6,%xmm1 - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - pxor %xmm0,%xmm7 - movdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - roll $5,%ebx - movdqa 144(%esp),%xmm3 - addl %esi,%eax - paddd %xmm6,%xmm2 - xorl %ecx,%ebp - pxor %xmm1,%xmm7 - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - andl %ecx,%ebp - movdqa %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - pslld $2,%xmm7 - addl %ebp,%edi - xorl %ebx,%esi - psrld $30,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - por %xmm1,%xmm7 - movl %edi,%ebp - xorl %ebx,%esi - movdqa 64(%esp),%xmm1 - roll $5,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - pshufd $238,%xmm6,%xmm2 - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl (%esp),%ebx - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - roll $5,%ecx - movdqa %xmm3,%xmm4 - addl %esi,%ebx - paddd %xmm7,%xmm3 - xorl %edx,%ebp - pxor %xmm2,%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - andl %edx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pslld $2,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - psrld $30,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - por %xmm2,%xmm0 - movl %eax,%ebp - xorl %ecx,%esi - movdqa 80(%esp),%xmm2 - roll $5,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - pshufd $238,%xmm7,%xmm3 - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 16(%esp),%ecx - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - pxor %xmm2,%xmm1 - movdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - roll $5,%edx - movdqa %xmm4,%xmm5 - addl %esi,%ecx - paddd %xmm0,%xmm4 - xorl %edi,%ebp - pxor %xmm3,%xmm1 - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - andl %edi,%ebp - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - pslld $2,%xmm1 - addl %ebp,%ebx - xorl %edx,%esi - psrld $30,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - por %xmm3,%xmm1 - movl %ebx,%ebp - xorl %edx,%esi - movdqa 96(%esp),%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - pshufd $238,%xmm0,%xmm4 - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 32(%esp),%edx - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - pxor %xmm3,%xmm2 - movdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - roll $5,%edi - movdqa %xmm5,%xmm6 - addl %esi,%edx - paddd %xmm1,%xmm5 - xorl %eax,%ebp - pxor %xmm4,%xmm2 - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - andl %eax,%ebp - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - pslld $2,%xmm2 - addl %ebp,%ecx - xorl %edi,%esi - psrld $30,%xmm4 - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - por %xmm4,%xmm2 - movl %ecx,%ebp - xorl %edi,%esi - movdqa 64(%esp),%xmm4 - roll $5,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - pshufd $238,%xmm1,%xmm5 - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - addl 48(%esp),%edi - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm4,%xmm3 - movdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%ebx - paddd %xmm2,%xmm6 - addl %eax,%edi - pxor %xmm5,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm5 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm5,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl (%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - paddd %xmm3,%xmm7 - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - movdqa %xmm7,48(%esp) - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je .L007done - movdqa 160(%esp),%xmm7 - movdqa 176(%esp),%xmm6 - movdqu (%ebp),%xmm0 - movdqu 16(%ebp),%xmm1 - movdqu 32(%ebp),%xmm2 - movdqu 48(%ebp),%xmm3 - addl $64,%ebp -.byte 102,15,56,0,198 - movl %ebp,196(%esp) - movdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx -.byte 102,15,56,0,206 - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - paddd %xmm7,%xmm0 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - movdqa %xmm0,(%esp) - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - psubd %xmm7,%xmm0 - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi -.byte 102,15,56,0,214 - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - paddd %xmm7,%xmm1 - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - movdqa %xmm1,16(%esp) - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - psubd %xmm7,%xmm1 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax -.byte 102,15,56,0,222 - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - paddd %xmm7,%xmm2 - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - movdqa %xmm2,32(%esp) - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - psubd %xmm7,%xmm2 - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %ecx,%ebx - movl %edx,12(%ebp) - xorl %edx,%ebx - movl %edi,16(%ebp) - movl %esi,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebx,%esi - movl %ebp,%ebx - jmp .L006loop -.align 16 -.L007done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size _sha1_block_data_order_ssse3,.-_sha1_block_data_order_ssse3 -.align 64 -.LK_XX_XX: -.long 1518500249,1518500249,1518500249,1518500249 -.long 1859775393,1859775393,1859775393,1859775393 -.long 2400959708,2400959708,2400959708,2400959708 -.long 3395469782,3395469782,3395469782,3395469782 -.long 66051,67438087,134810123,202182159 -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha256-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha256-586.s deleted file mode 100644 index 836d91886bda53..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha256-586.s +++ /dev/null @@ -1,4577 +0,0 @@ -.file "sha512-586.s" -.text -.globl sha256_block_data_order -.type sha256_block_data_order,@function -.align 16 -sha256_block_data_order: -.L_sha256_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001K256-.L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $6,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%ecx - movl 4(%edx),%ebx - testl $1048576,%ecx - jnz .L002loop - movl 8(%edx),%edx - testl $16777216,%ecx - jz .L003no_xmm - andl $1073741824,%ecx - andl $268435968,%ebx - testl $536870912,%edx - jnz .L004shaext - orl %ebx,%ecx - andl $1342177280,%ecx - cmpl $1342177280,%ecx - testl $512,%ebx - jnz .L005SSSE3 -.L003no_xmm: - subl %edi,%eax - cmpl $256,%eax - jae .L006unrolled - jmp .L002loop -.align 16 -.L002loop: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - bswap %eax - movl 12(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - bswap %eax - movl 28(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %eax - movl 44(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - bswap %eax - movl 60(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - addl $64,%edi - leal -36(%esp),%esp - movl %edi,104(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,8(%esp) - xorl %ecx,%ebx - movl %ecx,12(%esp) - movl %edi,16(%esp) - movl %ebx,(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - movl %edi,32(%esp) -.align 16 -.L00700_15: - movl %edx,%ecx - movl 24(%esp),%esi - rorl $14,%ecx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl 96(%esp),%ebx - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - addl $4,%ebp - addl %ebx,%eax - cmpl $3248222580,%esi - jne .L00700_15 - movl 156(%esp),%ecx - jmp .L00816_63 -.align 16 -.L00816_63: - movl %ecx,%ebx - movl 104(%esp),%esi - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 160(%esp),%ebx - shrl $10,%edi - addl 124(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 24(%esp),%esi - rorl $14,%ecx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl %ebx,96(%esp) - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - movl 156(%esp),%ecx - addl $4,%ebp - addl %ebx,%eax - cmpl $3329325298,%esi - jne .L00816_63 - movl 356(%esp),%esi - movl 8(%esp),%ebx - movl 16(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 32(%esp),%ecx - movl 360(%esp),%edi - addl 16(%esi),%edx - addl 20(%esi),%eax - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %eax,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - leal 356(%esp),%esp - subl $256,%ebp - cmpl 8(%esp),%edi - jb .L002loop - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001K256: -.long 1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298 -.long 66051,67438087,134810123,202182159 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.align 16 -.L006unrolled: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebp - movl 8(%esi),%ecx - movl 12(%esi),%ebx - movl %ebp,4(%esp) - xorl %ecx,%ebp - movl %ecx,8(%esp) - movl %ebx,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %esi,28(%esp) - jmp .L009grand_loop -.align 16 -.L009grand_loop: - movl (%edi),%ebx - movl 4(%edi),%ecx - bswap %ebx - movl 8(%edi),%esi - bswap %ecx - movl %ebx,32(%esp) - bswap %esi - movl %ecx,36(%esp) - movl %esi,40(%esp) - movl 12(%edi),%ebx - movl 16(%edi),%ecx - bswap %ebx - movl 20(%edi),%esi - bswap %ecx - movl %ebx,44(%esp) - bswap %esi - movl %ecx,48(%esp) - movl %esi,52(%esp) - movl 24(%edi),%ebx - movl 28(%edi),%ecx - bswap %ebx - movl 32(%edi),%esi - bswap %ecx - movl %ebx,56(%esp) - bswap %esi - movl %ecx,60(%esp) - movl %esi,64(%esp) - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %ebx - movl 44(%edi),%esi - bswap %ecx - movl %ebx,68(%esp) - bswap %esi - movl %ecx,72(%esp) - movl %esi,76(%esp) - movl 48(%edi),%ebx - movl 52(%edi),%ecx - bswap %ebx - movl 56(%edi),%esi - bswap %ecx - movl %ebx,80(%esp) - bswap %esi - movl %ecx,84(%esp) - movl %esi,88(%esp) - movl 60(%edi),%ebx - addl $64,%edi - bswap %ebx - movl %edi,100(%esp) - movl %ebx,92(%esp) - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 32(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1116352408(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 36(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1899447441(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 40(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3049323471(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 44(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3921009573(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 48(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 961987163(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 52(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1508970993(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 56(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2453635748(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 60(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2870763221(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 64(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3624381080(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 68(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 310598401(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 72(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 607225278(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 76(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1426881987(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 80(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1925078388(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 84(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2162078206(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 88(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2614888103(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 92(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3248222580(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3835390401(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 4022224774(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 264347078(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 604807628(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 770255983(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1249150122(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1555081692(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1996064986(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2554220882(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2821834349(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2952996808(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3210313671(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3336571891(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3584528711(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 113926993(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 338241895(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 666307205(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 773529912(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1294757372(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1396182291(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1695183700(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1986661051(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2177026350(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2456956037(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2730485921(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2820302411(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3259730800(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3345764771(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3516065817(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3600352804(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 4094571909(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 275423344(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 430227734(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 506948616(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 659060556(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 883997877(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 958139571(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1322822218(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1537002063(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1747873779(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1955562222(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2024104815(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2227730452(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2361852424(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2428436474(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2756734187(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3204031479(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3329325298(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 96(%esp),%esi - xorl %edi,%ebp - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebp - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebp,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebp,4(%esp) - xorl %edi,%ebp - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - cmpl 104(%esp),%edi - jb .L009grand_loop - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L004shaext: - subl $32,%esp - movdqu (%esi),%xmm1 - leal 128(%ebp),%ebp - movdqu 16(%esi),%xmm2 - movdqa 128(%ebp),%xmm7 - pshufd $27,%xmm1,%xmm0 - pshufd $177,%xmm1,%xmm1 - pshufd $27,%xmm2,%xmm2 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp .L010loop_shaext -.align 16 -.L010loop_shaext: - movdqu (%edi),%xmm3 - movdqu 16(%edi),%xmm4 - movdqu 32(%edi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%edi),%xmm6 - movdqa %xmm2,16(%esp) - movdqa -128(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - nop - movdqa %xmm1,(%esp) -.byte 15,56,203,202 - movdqa -112(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - leal 64(%edi),%edi -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -80(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa -64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa -48(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -16(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa (%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 16(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 48(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 80(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - movdqa 96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa 128(%ebp),%xmm7 -.byte 15,56,203,202 - movdqa 112(%ebp),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - cmpl %edi,%eax - nop -.byte 15,56,203,202 - paddd 16(%esp),%xmm2 - paddd (%esp),%xmm1 - jnz .L010loop_shaext - pshufd $177,%xmm2,%xmm2 - pshufd $27,%xmm1,%xmm7 - pshufd $177,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - movl 44(%esp),%esp - movdqu %xmm1,(%esi) - movdqu %xmm2,16(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L005SSSE3: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - movdqa 256(%ebp),%xmm7 - jmp .L011grand_ssse3 -.align 16 -.L011grand_ssse3: - movdqu (%edi),%xmm0 - movdqu 16(%edi),%xmm1 - movdqu 32(%edi),%xmm2 - movdqu 48(%edi),%xmm3 - addl $64,%edi -.byte 102,15,56,0,199 - movl %edi,100(%esp) -.byte 102,15,56,0,207 - movdqa (%ebp),%xmm4 -.byte 102,15,56,0,215 - movdqa 16(%ebp),%xmm5 - paddd %xmm0,%xmm4 -.byte 102,15,56,0,223 - movdqa 32(%ebp),%xmm6 - paddd %xmm1,%xmm5 - movdqa 48(%ebp),%xmm7 - movdqa %xmm4,32(%esp) - paddd %xmm2,%xmm6 - movdqa %xmm5,48(%esp) - paddd %xmm3,%xmm7 - movdqa %xmm6,64(%esp) - movdqa %xmm7,80(%esp) - jmp .L012ssse3_00_47 -.align 16 -.L012ssse3_00_47: - addl $64,%ebp - movl %edx,%ecx - movdqa %xmm1,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,224,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,250,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm3,%xmm7 - xorl %esi,%ecx - addl 32(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm0 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm0 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm0,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa (%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm0,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,32(%esp) - movl %edx,%ecx - movdqa %xmm2,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,225,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,251,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm0,%xmm7 - xorl %esi,%ecx - addl 48(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm1 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm1 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm1,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 16(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm1,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,48(%esp) - movl %edx,%ecx - movdqa %xmm3,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,226,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,248,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm1,%xmm7 - xorl %esi,%ecx - addl 64(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm2 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm2 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm2,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 32(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm2,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,64(%esp) - movl %edx,%ecx - movdqa %xmm0,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,227,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,249,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm2,%xmm7 - xorl %esi,%ecx - addl 80(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm3 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm3 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm3,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 48(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm3,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne .L012ssse3_00_47 - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - movdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb .L011grand_ssse3 - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size sha256_block_data_order,.-.L_sha256_block_data_order_begin -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha512-586.s b/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha512-586.s deleted file mode 100644 index 83329f439e8b79..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/sha/sha512-586.s +++ /dev/null @@ -1,2829 +0,0 @@ -.file "sha512-586.s" -.text -.globl sha512_block_data_order -.type sha512_block_data_order,@function -.align 16 -sha512_block_data_order: -.L_sha512_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001K512-.L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $7,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - leal OPENSSL_ia32cap_P,%edx - movl (%edx),%ecx - testl $67108864,%ecx - jz .L002loop_x86 - movl 4(%edx),%edx - movq (%esi),%mm0 - andl $16777216,%ecx - movq 8(%esi),%mm1 - andl $512,%edx - movq 16(%esi),%mm2 - orl %edx,%ecx - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 - cmpl $16777728,%ecx - je .L003SSSE3 - subl $80,%esp - jmp .L004loop_sse2 -.align 16 -.L004loop_sse2: - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - pxor %mm1,%mm2 - movq %mm7,56(%esp) - movq %mm0,%mm3 - movl (%edi),%eax - movl 4(%edi),%ebx - addl $8,%edi - movl $15,%edx - bswap %eax - bswap %ebx - jmp .L00500_14_sse2 -.align 16 -.L00500_14_sse2: - movd %eax,%mm1 - movl (%edi),%eax - movd %ebx,%mm7 - movl 4(%edi),%ebx - addl $8,%edi - bswap %eax - bswap %ebx - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - movq 48(%esp),%mm6 - decl %edx - jnz .L00500_14_sse2 - movd %eax,%mm1 - movd %ebx,%mm7 - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - pxor %mm0,%mm0 - movl $32,%edx - jmp .L00616_79_sse2 -.align 16 -.L00616_79_sse2: - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm0 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm2 - addl $8,%ebp - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm2 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm0 - addl $8,%ebp - decl %edx - jnz .L00616_79_sse2 - paddq %mm3,%mm0 - movq 8(%esp),%mm1 - movq 24(%esp),%mm3 - movq 40(%esp),%mm5 - movq 48(%esp),%mm6 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movl $640,%eax - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal (%esp,%eax,1),%esp - subl %eax,%ebp - cmpl 88(%esp),%edi - jb .L004loop_sse2 - movl 92(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 32 -.L003SSSE3: - leal -64(%esp),%edx - subl $256,%esp - movdqa 640(%ebp),%xmm1 - movdqu (%edi),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%edi),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%edi),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%edi),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%edi),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%edi),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%edi),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%edi),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movdqa %xmm2,-16(%edx) - nop -.align 32 -.L007loop_ssse3: - movdqa 16(%edx),%xmm2 - movdqa %xmm3,48(%edx) - leal 128(%ebp),%ebp - movq %mm1,8(%esp) - movl %edi,%ebx - movq %mm2,16(%esp) - leal 128(%edi),%edi - movq %mm3,24(%esp) - cmpl %eax,%edi - movq %mm5,40(%esp) - cmovbl %edi,%ebx - movq %mm6,48(%esp) - movl $4,%ecx - pxor %mm1,%mm2 - movq %mm7,56(%esp) - pxor %mm3,%mm3 - jmp .L00800_47_ssse3 -.align 32 -.L00800_47_ssse3: - movdqa %xmm5,%xmm3 - movdqa %xmm2,%xmm1 -.byte 102,15,58,15,208,8 - movdqa %xmm4,(%edx) -.byte 102,15,58,15,220,8 - movdqa %xmm2,%xmm4 - psrlq $7,%xmm2 - paddq %xmm3,%xmm0 - movdqa %xmm4,%xmm3 - psrlq $1,%xmm4 - psllq $56,%xmm3 - pxor %xmm4,%xmm2 - psrlq $7,%xmm4 - pxor %xmm3,%xmm2 - psllq $7,%xmm3 - pxor %xmm4,%xmm2 - movdqa %xmm7,%xmm4 - pxor %xmm3,%xmm2 - movdqa %xmm7,%xmm3 - psrlq $6,%xmm4 - paddq %xmm2,%xmm0 - movdqa %xmm7,%xmm2 - psrlq $19,%xmm3 - psllq $3,%xmm2 - pxor %xmm3,%xmm4 - psrlq $42,%xmm3 - pxor %xmm2,%xmm4 - psllq $42,%xmm2 - pxor %xmm3,%xmm4 - movdqa 32(%edx),%xmm3 - pxor %xmm2,%xmm4 - movdqa (%ebp),%xmm2 - movq %mm4,%mm1 - paddq %xmm4,%xmm0 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm0,%xmm2 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm2,-128(%edx) - movdqa %xmm6,%xmm4 - movdqa %xmm3,%xmm2 -.byte 102,15,58,15,217,8 - movdqa %xmm5,16(%edx) -.byte 102,15,58,15,229,8 - movdqa %xmm3,%xmm5 - psrlq $7,%xmm3 - paddq %xmm4,%xmm1 - movdqa %xmm5,%xmm4 - psrlq $1,%xmm5 - psllq $56,%xmm4 - pxor %xmm5,%xmm3 - psrlq $7,%xmm5 - pxor %xmm4,%xmm3 - psllq $7,%xmm4 - pxor %xmm5,%xmm3 - movdqa %xmm0,%xmm5 - pxor %xmm4,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $6,%xmm5 - paddq %xmm3,%xmm1 - movdqa %xmm0,%xmm3 - psrlq $19,%xmm4 - psllq $3,%xmm3 - pxor %xmm4,%xmm5 - psrlq $42,%xmm4 - pxor %xmm3,%xmm5 - psllq $42,%xmm3 - pxor %xmm4,%xmm5 - movdqa 48(%edx),%xmm4 - pxor %xmm3,%xmm5 - movdqa 16(%ebp),%xmm3 - movq %mm4,%mm1 - paddq %xmm5,%xmm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm1,%xmm3 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm3,-112(%edx) - movdqa %xmm7,%xmm5 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,226,8 - movdqa %xmm6,32(%edx) -.byte 102,15,58,15,238,8 - movdqa %xmm4,%xmm6 - psrlq $7,%xmm4 - paddq %xmm5,%xmm2 - movdqa %xmm6,%xmm5 - psrlq $1,%xmm6 - psllq $56,%xmm5 - pxor %xmm6,%xmm4 - psrlq $7,%xmm6 - pxor %xmm5,%xmm4 - psllq $7,%xmm5 - pxor %xmm6,%xmm4 - movdqa %xmm1,%xmm6 - pxor %xmm5,%xmm4 - movdqa %xmm1,%xmm5 - psrlq $6,%xmm6 - paddq %xmm4,%xmm2 - movdqa %xmm1,%xmm4 - psrlq $19,%xmm5 - psllq $3,%xmm4 - pxor %xmm5,%xmm6 - psrlq $42,%xmm5 - pxor %xmm4,%xmm6 - psllq $42,%xmm4 - pxor %xmm5,%xmm6 - movdqa (%edx),%xmm5 - pxor %xmm4,%xmm6 - movdqa 32(%ebp),%xmm4 - movq %mm4,%mm1 - paddq %xmm6,%xmm2 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm2,%xmm4 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm4,-96(%edx) - movdqa %xmm0,%xmm6 - movdqa %xmm5,%xmm4 -.byte 102,15,58,15,235,8 - movdqa %xmm7,48(%edx) -.byte 102,15,58,15,247,8 - movdqa %xmm5,%xmm7 - psrlq $7,%xmm5 - paddq %xmm6,%xmm3 - movdqa %xmm7,%xmm6 - psrlq $1,%xmm7 - psllq $56,%xmm6 - pxor %xmm7,%xmm5 - psrlq $7,%xmm7 - pxor %xmm6,%xmm5 - psllq $7,%xmm6 - pxor %xmm7,%xmm5 - movdqa %xmm2,%xmm7 - pxor %xmm6,%xmm5 - movdqa %xmm2,%xmm6 - psrlq $6,%xmm7 - paddq %xmm5,%xmm3 - movdqa %xmm2,%xmm5 - psrlq $19,%xmm6 - psllq $3,%xmm5 - pxor %xmm6,%xmm7 - psrlq $42,%xmm6 - pxor %xmm5,%xmm7 - psllq $42,%xmm5 - pxor %xmm6,%xmm7 - movdqa 16(%edx),%xmm6 - pxor %xmm5,%xmm7 - movdqa 48(%ebp),%xmm5 - movq %mm4,%mm1 - paddq %xmm7,%xmm3 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm3,%xmm5 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm5,-80(%edx) - movdqa %xmm1,%xmm7 - movdqa %xmm6,%xmm5 -.byte 102,15,58,15,244,8 - movdqa %xmm0,(%edx) -.byte 102,15,58,15,248,8 - movdqa %xmm6,%xmm0 - psrlq $7,%xmm6 - paddq %xmm7,%xmm4 - movdqa %xmm0,%xmm7 - psrlq $1,%xmm0 - psllq $56,%xmm7 - pxor %xmm0,%xmm6 - psrlq $7,%xmm0 - pxor %xmm7,%xmm6 - psllq $7,%xmm7 - pxor %xmm0,%xmm6 - movdqa %xmm3,%xmm0 - pxor %xmm7,%xmm6 - movdqa %xmm3,%xmm7 - psrlq $6,%xmm0 - paddq %xmm6,%xmm4 - movdqa %xmm3,%xmm6 - psrlq $19,%xmm7 - psllq $3,%xmm6 - pxor %xmm7,%xmm0 - psrlq $42,%xmm7 - pxor %xmm6,%xmm0 - psllq $42,%xmm6 - pxor %xmm7,%xmm0 - movdqa 32(%edx),%xmm7 - pxor %xmm6,%xmm0 - movdqa 64(%ebp),%xmm6 - movq %mm4,%mm1 - paddq %xmm0,%xmm4 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm4,%xmm6 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm6,-64(%edx) - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm6 -.byte 102,15,58,15,253,8 - movdqa %xmm1,16(%edx) -.byte 102,15,58,15,193,8 - movdqa %xmm7,%xmm1 - psrlq $7,%xmm7 - paddq %xmm0,%xmm5 - movdqa %xmm1,%xmm0 - psrlq $1,%xmm1 - psllq $56,%xmm0 - pxor %xmm1,%xmm7 - psrlq $7,%xmm1 - pxor %xmm0,%xmm7 - psllq $7,%xmm0 - pxor %xmm1,%xmm7 - movdqa %xmm4,%xmm1 - pxor %xmm0,%xmm7 - movdqa %xmm4,%xmm0 - psrlq $6,%xmm1 - paddq %xmm7,%xmm5 - movdqa %xmm4,%xmm7 - psrlq $19,%xmm0 - psllq $3,%xmm7 - pxor %xmm0,%xmm1 - psrlq $42,%xmm0 - pxor %xmm7,%xmm1 - psllq $42,%xmm7 - pxor %xmm0,%xmm1 - movdqa 48(%edx),%xmm0 - pxor %xmm7,%xmm1 - movdqa 80(%ebp),%xmm7 - movq %mm4,%mm1 - paddq %xmm1,%xmm5 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm5,%xmm7 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm7,-48(%edx) - movdqa %xmm3,%xmm1 - movdqa %xmm0,%xmm7 -.byte 102,15,58,15,198,8 - movdqa %xmm2,32(%edx) -.byte 102,15,58,15,202,8 - movdqa %xmm0,%xmm2 - psrlq $7,%xmm0 - paddq %xmm1,%xmm6 - movdqa %xmm2,%xmm1 - psrlq $1,%xmm2 - psllq $56,%xmm1 - pxor %xmm2,%xmm0 - psrlq $7,%xmm2 - pxor %xmm1,%xmm0 - psllq $7,%xmm1 - pxor %xmm2,%xmm0 - movdqa %xmm5,%xmm2 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm1 - psrlq $6,%xmm2 - paddq %xmm0,%xmm6 - movdqa %xmm5,%xmm0 - psrlq $19,%xmm1 - psllq $3,%xmm0 - pxor %xmm1,%xmm2 - psrlq $42,%xmm1 - pxor %xmm0,%xmm2 - psllq $42,%xmm0 - pxor %xmm1,%xmm2 - movdqa (%edx),%xmm1 - pxor %xmm0,%xmm2 - movdqa 96(%ebp),%xmm0 - movq %mm4,%mm1 - paddq %xmm2,%xmm6 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm6,%xmm0 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm0,-32(%edx) - movdqa %xmm4,%xmm2 - movdqa %xmm1,%xmm0 -.byte 102,15,58,15,207,8 - movdqa %xmm3,48(%edx) -.byte 102,15,58,15,211,8 - movdqa %xmm1,%xmm3 - psrlq $7,%xmm1 - paddq %xmm2,%xmm7 - movdqa %xmm3,%xmm2 - psrlq $1,%xmm3 - psllq $56,%xmm2 - pxor %xmm3,%xmm1 - psrlq $7,%xmm3 - pxor %xmm2,%xmm1 - psllq $7,%xmm2 - pxor %xmm3,%xmm1 - movdqa %xmm6,%xmm3 - pxor %xmm2,%xmm1 - movdqa %xmm6,%xmm2 - psrlq $6,%xmm3 - paddq %xmm1,%xmm7 - movdqa %xmm6,%xmm1 - psrlq $19,%xmm2 - psllq $3,%xmm1 - pxor %xmm2,%xmm3 - psrlq $42,%xmm2 - pxor %xmm1,%xmm3 - psllq $42,%xmm1 - pxor %xmm2,%xmm3 - movdqa 16(%edx),%xmm2 - pxor %xmm1,%xmm3 - movdqa 112(%ebp),%xmm1 - movq %mm4,%mm1 - paddq %xmm3,%xmm7 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm7,%xmm1 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm1,-16(%edx) - leal 128(%ebp),%ebp - decl %ecx - jnz .L00800_47_ssse3 - movdqa (%ebp),%xmm1 - leal -640(%ebp),%ebp - movdqu (%ebx),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%ebx),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movq %mm4,%mm1 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%ebx),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movq %mm4,%mm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%ebx),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movq %mm4,%mm1 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%ebx),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movq %mm4,%mm1 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%ebx),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movq %mm4,%mm1 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%ebx),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movq %mm4,%mm1 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%ebx),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movq %mm4,%mm1 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movq %mm4,%mm1 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm2,-16(%edx) - movq 8(%esp),%mm1 - paddq %mm3,%mm0 - movq 24(%esp),%mm3 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - cmpl %eax,%edi - jb .L007loop_ssse3 - movl 76(%edx),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 16 -.L002loop_x86: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - movl 28(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - movl 44(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - movl 60(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 64(%edi),%eax - movl 68(%edi),%ebx - movl 72(%edi),%ecx - movl 76(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 80(%edi),%eax - movl 84(%edi),%ebx - movl 88(%edi),%ecx - movl 92(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 96(%edi),%eax - movl 100(%edi),%ebx - movl 104(%edi),%ecx - movl 108(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 112(%edi),%eax - movl 116(%edi),%ebx - movl 120(%edi),%ecx - movl 124(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - addl $128,%edi - subl $72,%esp - movl %edi,204(%esp) - leal 8(%esp),%edi - movl $16,%ecx -.long 2784229001 -.align 16 -.L00900_15_x86: - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $148,%dl - jne .L00900_15_x86 -.align 16 -.L01016_79_x86: - movl 312(%esp),%ecx - movl 316(%esp),%edx - movl %ecx,%esi - shrl $1,%ecx - movl %edx,%edi - shrl $1,%edx - movl %ecx,%eax - shll $24,%esi - movl %edx,%ebx - shll $24,%edi - xorl %esi,%ebx - shrl $6,%ecx - xorl %edi,%eax - shrl $6,%edx - xorl %ecx,%eax - shll $7,%esi - xorl %edx,%ebx - shll $1,%edi - xorl %esi,%ebx - shrl $1,%ecx - xorl %edi,%eax - shrl $1,%edx - xorl %ecx,%eax - shll $6,%edi - xorl %edx,%ebx - xorl %edi,%eax - movl %eax,(%esp) - movl %ebx,4(%esp) - movl 208(%esp),%ecx - movl 212(%esp),%edx - movl %ecx,%esi - shrl $6,%ecx - movl %edx,%edi - shrl $6,%edx - movl %ecx,%eax - shll $3,%esi - movl %edx,%ebx - shll $3,%edi - xorl %esi,%eax - shrl $13,%ecx - xorl %edi,%ebx - shrl $13,%edx - xorl %ecx,%eax - shll $10,%esi - xorl %edx,%ebx - shll $10,%edi - xorl %esi,%ebx - shrl $10,%ecx - xorl %edi,%eax - shrl $10,%edx - xorl %ecx,%ebx - shll $13,%edi - xorl %edx,%eax - xorl %edi,%eax - movl 320(%esp),%ecx - movl 324(%esp),%edx - addl (%esp),%eax - adcl 4(%esp),%ebx - movl 248(%esp),%esi - movl 252(%esp),%edi - addl %ecx,%eax - adcl %edx,%ebx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,192(%esp) - movl %ebx,196(%esp) - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $23,%dl - jne .L01016_79_x86 - movl 840(%esp),%esi - movl 844(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - addl 8(%esp),%eax - adcl 12(%esp),%ebx - movl %eax,(%esi) - movl %ebx,4(%esi) - addl 16(%esp),%ecx - adcl 20(%esp),%edx - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - addl 24(%esp),%eax - adcl 28(%esp),%ebx - movl %eax,16(%esi) - movl %ebx,20(%esi) - addl 32(%esp),%ecx - adcl 36(%esp),%edx - movl %ecx,24(%esi) - movl %edx,28(%esi) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - addl 40(%esp),%eax - adcl 44(%esp),%ebx - movl %eax,32(%esi) - movl %ebx,36(%esi) - addl 48(%esp),%ecx - adcl 52(%esp),%edx - movl %ecx,40(%esi) - movl %edx,44(%esi) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - addl 56(%esp),%eax - adcl 60(%esp),%ebx - movl %eax,48(%esi) - movl %ebx,52(%esi) - addl 64(%esp),%ecx - adcl 68(%esp),%edx - movl %ecx,56(%esi) - movl %edx,60(%esi) - addl $840,%esp - subl $640,%ebp - cmpl 8(%esp),%edi - jb .L002loop_x86 - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001K512: -.long 3609767458,1116352408 -.long 602891725,1899447441 -.long 3964484399,3049323471 -.long 2173295548,3921009573 -.long 4081628472,961987163 -.long 3053834265,1508970993 -.long 2937671579,2453635748 -.long 3664609560,2870763221 -.long 2734883394,3624381080 -.long 1164996542,310598401 -.long 1323610764,607225278 -.long 3590304994,1426881987 -.long 4068182383,1925078388 -.long 991336113,2162078206 -.long 633803317,2614888103 -.long 3479774868,3248222580 -.long 2666613458,3835390401 -.long 944711139,4022224774 -.long 2341262773,264347078 -.long 2007800933,604807628 -.long 1495990901,770255983 -.long 1856431235,1249150122 -.long 3175218132,1555081692 -.long 2198950837,1996064986 -.long 3999719339,2554220882 -.long 766784016,2821834349 -.long 2566594879,2952996808 -.long 3203337956,3210313671 -.long 1034457026,3336571891 -.long 2466948901,3584528711 -.long 3758326383,113926993 -.long 168717936,338241895 -.long 1188179964,666307205 -.long 1546045734,773529912 -.long 1522805485,1294757372 -.long 2643833823,1396182291 -.long 2343527390,1695183700 -.long 1014477480,1986661051 -.long 1206759142,2177026350 -.long 344077627,2456956037 -.long 1290863460,2730485921 -.long 3158454273,2820302411 -.long 3505952657,3259730800 -.long 106217008,3345764771 -.long 3606008344,3516065817 -.long 1432725776,3600352804 -.long 1467031594,4094571909 -.long 851169720,275423344 -.long 3100823752,430227734 -.long 1363258195,506948616 -.long 3750685593,659060556 -.long 3785050280,883997877 -.long 3318307427,958139571 -.long 3812723403,1322822218 -.long 2003034995,1537002063 -.long 3602036899,1747873779 -.long 1575990012,1955562222 -.long 1125592928,2024104815 -.long 2716904306,2227730452 -.long 442776044,2361852424 -.long 593698344,2428436474 -.long 3733110249,2756734187 -.long 2999351573,3204031479 -.long 3815920427,3329325298 -.long 3928383900,3391569614 -.long 566280711,3515267271 -.long 3454069534,3940187606 -.long 4000239992,4118630271 -.long 1914138554,116418474 -.long 2731055270,174292421 -.long 3203993006,289380356 -.long 320620315,460393269 -.long 587496836,685471733 -.long 1086792851,852142971 -.long 365543100,1017036298 -.long 2618297676,1126000580 -.long 3409855158,1288033470 -.long 4234509866,1501505948 -.long 987167468,1607167915 -.long 1246189591,1816402316 -.long 67438087,66051 -.long 202182159,134810123 -.size sha512_block_data_order,.-.L_sha512_block_data_order_begin -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.comm OPENSSL_ia32cap_P,16,4 diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/whrlpool/wp-mmx.s b/deps/openssl/asm_obsolete/x86-elf-gas/whrlpool/wp-mmx.s deleted file mode 100644 index 37f50898ae6b53..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/whrlpool/wp-mmx.s +++ /dev/null @@ -1,1107 +0,0 @@ -.file "wp-mmx.s" -.text -.globl whirlpool_block_mmx -.type whirlpool_block_mmx,@function -.align 16 -whirlpool_block_mmx: -.L_whirlpool_block_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebp - movl %esp,%eax - subl $148,%esp - andl $-64,%esp - leal 128(%esp),%ebx - movl %esi,(%ebx) - movl %edi,4(%ebx) - movl %ebp,8(%ebx) - movl %eax,16(%ebx) - call .L000pic_point -.L000pic_point: - popl %ebp - leal .L001table-.L000pic_point(%ebp),%ebp - xorl %ecx,%ecx - xorl %edx,%edx - movq (%esi),%mm0 - movq 8(%esi),%mm1 - movq 16(%esi),%mm2 - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 -.L002outerloop: - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - xorl %esi,%esi - movl %esi,12(%ebx) -.align 16 -.L003round: - movq 4096(%ebp,%esi,8),%mm0 - movl (%esp),%eax - movl 4(%esp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - movq 7(%ebp,%edi,8),%mm1 - movl 8(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 6(%ebp,%esi,8),%mm2 - movq 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 4(%ebp,%esi,8),%mm4 - movq 3(%ebp,%edi,8),%mm5 - movl 12(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - movq 2(%ebp,%esi,8),%mm6 - movq 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 16(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 20(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 24(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 28(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 32(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 36(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 40(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 44(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 48(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 52(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 56(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 60(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - movl 64(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - movl 68(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - pxor 7(%ebp,%edi,8),%mm1 - movl 72(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm2 - pxor 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm4 - pxor 3(%ebp,%edi,8),%mm5 - movl 76(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm6 - pxor 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 80(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 84(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 88(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 92(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 96(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 100(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 104(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 108(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 112(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 116(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 120(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 124(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - leal 128(%esp),%ebx - movl 12(%ebx),%esi - addl $1,%esi - cmpl $10,%esi - je .L004roundsdone - movl %esi,12(%ebx) - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - jmp .L003round -.align 16 -.L004roundsdone: - movl (%ebx),%esi - movl 4(%ebx),%edi - movl 8(%ebx),%eax - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - pxor (%esi),%mm0 - pxor 8(%esi),%mm1 - pxor 16(%esi),%mm2 - pxor 24(%esi),%mm3 - pxor 32(%esi),%mm4 - pxor 40(%esi),%mm5 - pxor 48(%esi),%mm6 - pxor 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal 64(%edi),%edi - subl $1,%eax - jz .L005alldone - movl %edi,4(%ebx) - movl %eax,8(%ebx) - jmp .L002outerloop -.L005alldone: - emms - movl 16(%ebx),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 64 -.L001table: -.byte 24,24,96,24,192,120,48,216 -.byte 24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38 -.byte 35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184 -.byte 198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251 -.byte 232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203 -.byte 135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17 -.byte 184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9 -.byte 1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13 -.byte 79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155 -.byte 54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255 -.byte 166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12 -.byte 210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14 -.byte 245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150 -.byte 121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48 -.byte 111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109 -.byte 145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248 -.byte 82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71 -.byte 96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53 -.byte 188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55 -.byte 155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138 -.byte 142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210 -.byte 163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108 -.byte 12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132 -.byte 123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128 -.byte 53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245 -.byte 29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179 -.byte 224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33 -.byte 215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156 -.byte 194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67 -.byte 46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41 -.byte 75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93 -.byte 254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213 -.byte 87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189 -.byte 21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232 -.byte 119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146 -.byte 55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158 -.byte 229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19 -.byte 159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35 -.byte 240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32 -.byte 74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68 -.byte 218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162 -.byte 88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207 -.byte 201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124 -.byte 41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90 -.byte 10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80 -.byte 177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201 -.byte 160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20 -.byte 107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217 -.byte 133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60 -.byte 189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143 -.byte 93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144 -.byte 16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7 -.byte 244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221 -.byte 203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211 -.byte 62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45 -.byte 5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120 -.byte 103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151 -.byte 228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2 -.byte 39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115 -.byte 65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167 -.byte 139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246 -.byte 167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178 -.byte 125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73 -.byte 149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86 -.byte 216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112 -.byte 251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205 -.byte 238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187 -.byte 124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113 -.byte 102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123 -.byte 221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175 -.byte 23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69 -.byte 71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26 -.byte 158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212 -.byte 202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88 -.byte 45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46 -.byte 191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63 -.byte 7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172 -.byte 173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176 -.byte 90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239 -.byte 131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182 -.byte 51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92 -.byte 99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18 -.byte 2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147 -.byte 170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222 -.byte 113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198 -.byte 200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209 -.byte 25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59 -.byte 73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95 -.byte 217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49 -.byte 242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168 -.byte 227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185 -.byte 91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188 -.byte 136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62 -.byte 154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11 -.byte 38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191 -.byte 50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89 -.byte 176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242 -.byte 233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119 -.byte 15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51 -.byte 213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244 -.byte 128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39 -.byte 190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235 -.byte 205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137 -.byte 52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50 -.byte 72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84 -.byte 255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141 -.byte 122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100 -.byte 144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157 -.byte 95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61 -.byte 32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15 -.byte 104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202 -.byte 26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183 -.byte 174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125 -.byte 180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206 -.byte 84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127 -.byte 147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47 -.byte 34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99 -.byte 100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42 -.byte 241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204 -.byte 115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130 -.byte 18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122 -.byte 64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72 -.byte 8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149 -.byte 195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223 -.byte 236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77 -.byte 219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192 -.byte 161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145 -.byte 141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200 -.byte 61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91 -.byte 151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0 -.byte 0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249 -.byte 207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110 -.byte 43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225 -.byte 118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230 -.byte 130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40 -.byte 214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195 -.byte 27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116 -.byte 181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190 -.byte 175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29 -.byte 106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234 -.byte 80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87 -.byte 69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56 -.byte 243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173 -.byte 48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196 -.byte 239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218 -.byte 63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199 -.byte 85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219 -.byte 162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233 -.byte 234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106 -.byte 101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3 -.byte 186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74 -.byte 47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142 -.byte 192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96 -.byte 222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252 -.byte 28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70 -.byte 253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31 -.byte 77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118 -.byte 146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250 -.byte 117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54 -.byte 6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174 -.byte 138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75 -.byte 178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133 -.byte 230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126 -.byte 14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231 -.byte 31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85 -.byte 98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58 -.byte 212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129 -.byte 168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82 -.byte 150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98 -.byte 249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163 -.byte 197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16 -.byte 37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171 -.byte 89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208 -.byte 132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197 -.byte 114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236 -.byte 57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22 -.byte 76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148 -.byte 94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159 -.byte 120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229 -.byte 56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152 -.byte 140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23 -.byte 209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228 -.byte 165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161 -.byte 226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78 -.byte 97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66 -.byte 179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52 -.byte 33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8 -.byte 156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238 -.byte 30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97 -.byte 67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177 -.byte 199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79 -.byte 252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36 -.byte 4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227 -.byte 81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37 -.byte 153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34 -.byte 109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101 -.byte 13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121 -.byte 250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105 -.byte 223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169 -.byte 126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25 -.byte 36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254 -.byte 59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154 -.byte 171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240 -.byte 206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153 -.byte 17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131 -.byte 143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4 -.byte 78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102 -.byte 183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224 -.byte 235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193 -.byte 60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253 -.byte 129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64 -.byte 148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28 -.byte 247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24 -.byte 185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139 -.byte 19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81 -.byte 44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5 -.byte 211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140 -.byte 231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57 -.byte 110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170 -.byte 196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27 -.byte 3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220 -.byte 86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94 -.byte 68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160 -.byte 127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136 -.byte 169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103 -.byte 42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10 -.byte 187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135 -.byte 193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241 -.byte 83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114 -.byte 220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83 -.byte 11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1 -.byte 157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43 -.byte 108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164 -.byte 49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243 -.byte 116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21 -.byte 246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76 -.byte 70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165 -.byte 172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181 -.byte 137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180 -.byte 20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186 -.byte 225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166 -.byte 22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247 -.byte 58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6 -.byte 105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65 -.byte 9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215 -.byte 112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111 -.byte 182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30 -.byte 208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214 -.byte 237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226 -.byte 204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104 -.byte 66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44 -.byte 152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237 -.byte 164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117 -.byte 40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134 -.byte 92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107 -.byte 248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194 -.byte 134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 -.size whirlpool_block_mmx,.-.L_whirlpool_block_mmx_begin diff --git a/deps/openssl/asm_obsolete/x86-elf-gas/x86cpuid.s b/deps/openssl/asm_obsolete/x86-elf-gas/x86cpuid.s deleted file mode 100644 index 08369b42391d75..00000000000000 --- a/deps/openssl/asm_obsolete/x86-elf-gas/x86cpuid.s +++ /dev/null @@ -1,362 +0,0 @@ -.file "x86cpuid.s" -.text -.globl OPENSSL_ia32_cpuid -.type OPENSSL_ia32_cpuid,@function -.align 16 -OPENSSL_ia32_cpuid: -.L_OPENSSL_ia32_cpuid_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %edx,%edx - pushfl - popl %eax - movl %eax,%ecx - xorl $2097152,%eax - pushl %eax - popfl - pushfl - popl %eax - xorl %eax,%ecx - xorl %eax,%eax - movl 20(%esp),%esi - movl %eax,8(%esi) - btl $21,%ecx - jnc .L000nocpuid - .byte 0x0f,0xa2 - movl %eax,%edi - xorl %eax,%eax - cmpl $1970169159,%ebx - setne %al - movl %eax,%ebp - cmpl $1231384169,%edx - setne %al - orl %eax,%ebp - cmpl $1818588270,%ecx - setne %al - orl %eax,%ebp - jz .L001intel - cmpl $1752462657,%ebx - setne %al - movl %eax,%esi - cmpl $1769238117,%edx - setne %al - orl %eax,%esi - cmpl $1145913699,%ecx - setne %al - orl %eax,%esi - jnz .L001intel - movl $2147483648,%eax - .byte 0x0f,0xa2 - cmpl $2147483649,%eax - jb .L001intel - movl %eax,%esi - movl $2147483649,%eax - .byte 0x0f,0xa2 - orl %ecx,%ebp - andl $2049,%ebp - cmpl $2147483656,%esi - jb .L001intel - movl $2147483656,%eax - .byte 0x0f,0xa2 - movzbl %cl,%esi - incl %esi - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - btl $28,%edx - jnc .L002generic - shrl $16,%ebx - andl $255,%ebx - cmpl %esi,%ebx - ja .L002generic - andl $4026531839,%edx - jmp .L002generic -.L001intel: - cmpl $4,%edi - movl $-1,%esi - jb .L003nocacheinfo - movl $4,%eax - movl $0,%ecx - .byte 0x0f,0xa2 - movl %eax,%esi - shrl $14,%esi - andl $4095,%esi -.L003nocacheinfo: - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - andl $3220176895,%edx - cmpl $0,%ebp - jne .L004notintel - orl $1073741824,%edx - andb $15,%ah - cmpb $15,%ah - jne .L004notintel - orl $1048576,%edx -.L004notintel: - btl $28,%edx - jnc .L002generic - andl $4026531839,%edx - cmpl $0,%esi - je .L002generic - orl $268435456,%edx - shrl $16,%ebx - cmpb $1,%bl - ja .L002generic - andl $4026531839,%edx -.L002generic: - andl $2048,%ebp - andl $4294965247,%ecx - movl %edx,%esi - orl %ecx,%ebp - cmpl $7,%edi - movl 20(%esp),%edi - jb .L005no_extended_info - movl $7,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - movl %ebx,8(%edi) -.L005no_extended_info: - btl $27,%ebp - jnc .L006clear_avx - xorl %ecx,%ecx -.byte 15,1,208 - andl $6,%eax - cmpl $6,%eax - je .L007done - cmpl $2,%eax - je .L006clear_avx -.L008clear_xmm: - andl $4261412861,%ebp - andl $4278190079,%esi -.L006clear_avx: - andl $4026525695,%ebp - andl $4294967263,8(%edi) -.L007done: - movl %esi,%eax - movl %ebp,%edx -.L000nocpuid: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.size OPENSSL_ia32_cpuid,.-.L_OPENSSL_ia32_cpuid_begin -.globl OPENSSL_rdtsc -.type OPENSSL_rdtsc,@function -.align 16 -OPENSSL_rdtsc: -.L_OPENSSL_rdtsc_begin: - xorl %eax,%eax - xorl %edx,%edx - leal OPENSSL_ia32cap_P,%ecx - btl $4,(%ecx) - jnc .L009notsc - .byte 0x0f,0x31 -.L009notsc: - ret -.size OPENSSL_rdtsc,.-.L_OPENSSL_rdtsc_begin -.globl OPENSSL_instrument_halt -.type OPENSSL_instrument_halt,@function -.align 16 -OPENSSL_instrument_halt: -.L_OPENSSL_instrument_halt_begin: - leal OPENSSL_ia32cap_P,%ecx - btl $4,(%ecx) - jnc .L010nohalt -.long 2421723150 - andl $3,%eax - jnz .L010nohalt - pushfl - popl %eax - btl $9,%eax - jnc .L010nohalt - .byte 0x0f,0x31 - pushl %edx - pushl %eax - hlt - .byte 0x0f,0x31 - subl (%esp),%eax - sbbl 4(%esp),%edx - addl $8,%esp - ret -.L010nohalt: - xorl %eax,%eax - xorl %edx,%edx - ret -.size OPENSSL_instrument_halt,.-.L_OPENSSL_instrument_halt_begin -.globl OPENSSL_far_spin -.type OPENSSL_far_spin,@function -.align 16 -OPENSSL_far_spin: -.L_OPENSSL_far_spin_begin: - pushfl - popl %eax - btl $9,%eax - jnc .L011nospin - movl 4(%esp),%eax - movl 8(%esp),%ecx -.long 2430111262 - xorl %eax,%eax - movl (%ecx),%edx - jmp .L012spin -.align 16 -.L012spin: - incl %eax - cmpl (%ecx),%edx - je .L012spin -.long 529567888 - ret -.L011nospin: - xorl %eax,%eax - xorl %edx,%edx - ret -.size OPENSSL_far_spin,.-.L_OPENSSL_far_spin_begin -.globl OPENSSL_wipe_cpu -.type OPENSSL_wipe_cpu,@function -.align 16 -OPENSSL_wipe_cpu: -.L_OPENSSL_wipe_cpu_begin: - xorl %eax,%eax - xorl %edx,%edx - leal OPENSSL_ia32cap_P,%ecx - movl (%ecx),%ecx - btl $1,(%ecx) - jnc .L013no_x87 - andl $83886080,%ecx - cmpl $83886080,%ecx - jne .L014no_sse2 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 -.L014no_sse2: -.long 4007259865,4007259865,4007259865,4007259865,2430851995 -.L013no_x87: - leal 4(%esp),%eax - ret -.size OPENSSL_wipe_cpu,.-.L_OPENSSL_wipe_cpu_begin -.globl OPENSSL_atomic_add -.type OPENSSL_atomic_add,@function -.align 16 -OPENSSL_atomic_add: -.L_OPENSSL_atomic_add_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - pushl %ebx - nop - movl (%edx),%eax -.L015spin: - leal (%eax,%ecx,1),%ebx - nop -.long 447811568 - jne .L015spin - movl %ebx,%eax - popl %ebx - ret -.size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin -.globl OPENSSL_indirect_call -.type OPENSSL_indirect_call,@function -.align 16 -OPENSSL_indirect_call: -.L_OPENSSL_indirect_call_begin: - pushl %ebp - movl %esp,%ebp - subl $28,%esp - movl 12(%ebp),%ecx - movl %ecx,(%esp) - movl 16(%ebp),%edx - movl %edx,4(%esp) - movl 20(%ebp),%eax - movl %eax,8(%esp) - movl 24(%ebp),%eax - movl %eax,12(%esp) - movl 28(%ebp),%eax - movl %eax,16(%esp) - movl 32(%ebp),%eax - movl %eax,20(%esp) - movl 36(%ebp),%eax - movl %eax,24(%esp) - call *8(%ebp) - movl %ebp,%esp - popl %ebp - ret -.size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin -.globl OPENSSL_cleanse -.type OPENSSL_cleanse,@function -.align 16 -OPENSSL_cleanse: -.L_OPENSSL_cleanse_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - xorl %eax,%eax - cmpl $7,%ecx - jae .L016lot - cmpl $0,%ecx - je .L017ret -.L018little: - movb %al,(%edx) - subl $1,%ecx - leal 1(%edx),%edx - jnz .L018little -.L017ret: - ret -.align 16 -.L016lot: - testl $3,%edx - jz .L019aligned - movb %al,(%edx) - leal -1(%ecx),%ecx - leal 1(%edx),%edx - jmp .L016lot -.L019aligned: - movl %eax,(%edx) - leal -4(%ecx),%ecx - testl $-4,%ecx - leal 4(%edx),%edx - jnz .L019aligned - cmpl $0,%ecx - jne .L018little - ret -.size OPENSSL_cleanse,.-.L_OPENSSL_cleanse_begin -.globl OPENSSL_ia32_rdrand -.type OPENSSL_ia32_rdrand,@function -.align 16 -OPENSSL_ia32_rdrand: -.L_OPENSSL_ia32_rdrand_begin: - movl $8,%ecx -.L020loop: -.byte 15,199,240 - jc .L021break - loop .L020loop -.L021break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin -.globl OPENSSL_ia32_rdseed -.type OPENSSL_ia32_rdseed,@function -.align 16 -OPENSSL_ia32_rdseed: -.L_OPENSSL_ia32_rdseed_begin: - movl $8,%ecx -.L022loop: -.byte 15,199,248 - jc .L023break - loop .L022loop -.L023break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.size OPENSSL_ia32_rdseed,.-.L_OPENSSL_ia32_rdseed_begin -.hidden OPENSSL_cpuid_setup -.hidden OPENSSL_ia32cap_P -.comm OPENSSL_ia32cap_P,16,4 -.section .init - call OPENSSL_cpuid_setup diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aes-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aes-586.s deleted file mode 100644 index 12e9100222d438..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aes-586.s +++ /dev/null @@ -1,3208 +0,0 @@ -.file "aes-586.s" -.text -.align 4 -__x86_AES_encrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 4,0x90 -L000loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ecx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ecx,%edi - xorl %esi,%ecx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ecx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%ecx - andl %edx,%ebp - leal (%edx,%edx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %edx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %edx,%edi - xorl %esi,%edx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%edx - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%edx - andl %eax,%ebp - leal (%eax,%eax,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %eax,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %eax,%edi - xorl %esi,%eax - rorl $24,%edi - xorl %ebp,%esi - roll $24,%eax - xorl %edi,%esi - movl $2155905152,%ebp - xorl %esi,%eax - andl %ebx,%ebp - leal (%ebx,%ebx,1),%edi - movl %ebp,%esi - shrl $7,%ebp - andl $4278124286,%edi - subl %ebp,%esi - movl %ebx,%ebp - andl $454761243,%esi - rorl $16,%ebp - xorl %edi,%esi - movl %ebx,%edi - xorl %esi,%ebx - rorl $24,%edi - xorl %ebp,%esi - roll $24,%ebx - xorl %edi,%esi - xorl %esi,%ebx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L000loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movzbl -128(%ebp,%esi,1),%esi - movzbl %ch,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ah,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $8,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movzbl -128(%ebp,%ecx,1),%ecx - shll $24,%ecx - xorl %ecx,%edx - movl %esi,%ecx - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.align 4 -__sse_AES_encrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 4,0x90 -L001loop: - pshufw $8,%mm0,%mm1 - pshufw $13,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $13,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $8,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $8,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - movd %mm2,%eax - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - movd %mm6,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $8,%esi - shrl $16,%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shrl $16,%eax - movd %ecx,%mm1 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %ah,%edi - shll $16,%ecx - andl $255,%eax - orl %esi,%ecx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - andl $255,%ebx - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%ecx - shll $16,%eax - movzbl -128(%ebp,%edi,1),%esi - orl %eax,%edx - shll $8,%esi - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - orl %ebx,%edx - movl 20(%esp),%edi - movd %ecx,%mm4 - movd %edx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja L002out - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - movq %mm0,%mm1 - movq %mm4,%mm5 - pcmpgtb %mm0,%mm3 - pcmpgtb %mm4,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - pshufw $177,%mm0,%mm2 - pshufw $177,%mm4,%mm6 - paddb %mm0,%mm0 - paddb %mm4,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pshufw $177,%mm2,%mm3 - pshufw $177,%mm6,%mm7 - pxor %mm0,%mm1 - pxor %mm4,%mm5 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm3,%mm2 - movq %mm7,%mm6 - pslld $8,%mm3 - pslld $8,%mm7 - psrld $24,%mm2 - psrld $24,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - psrld $8,%mm1 - psrld $8,%mm5 - movl -128(%ebp),%eax - pslld $24,%mm3 - pslld $24,%mm7 - movl -64(%ebp),%ebx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl (%ebp),%ecx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl 64(%ebp),%edx - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp L001loop -.align 4,0x90 -L002out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.align 4 -__x86_AES_encrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 4,0x90 -L003loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl (%ebp,%esi,8),%esi - movzbl %ch,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movzbl %bh,%edi - xorl 1(%ebp,%edi,8),%esi - movl 20(%esp),%edi - movl (%ebp,%edx,8),%edx - movzbl %ah,%eax - xorl 3(%ebp,%eax,8),%edx - movl 4(%esp),%eax - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - xorl 1(%ebp,%ecx,8),%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L003loop - movl %eax,%esi - andl $255,%esi - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %bh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - shrl $16,%ebx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %ch,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $24,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - shrl $24,%ecx - movl 2(%ebp,%esi,8),%esi - andl $255,%esi - movzbl %dh,%edi - movl (%ebp,%edi,8),%edi - andl $65280,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edx - andl $255,%edi - movl (%ebp,%edi,8),%edi - andl $16711680,%edi - xorl %edi,%esi - movzbl %bh,%edi - movl 2(%ebp,%edi,8),%edi - andl $4278190080,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movl 2(%ebp,%edx,8),%edx - andl $255,%edx - movzbl %ah,%eax - movl (%ebp,%eax,8),%eax - andl $65280,%eax - xorl %eax,%edx - movl 4(%esp),%eax - andl $255,%ebx - movl (%ebp,%ebx,8),%ebx - andl $16711680,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - movl 2(%ebp,%ecx,8),%ecx - andl $4278190080,%ecx - xorl %ecx,%edx - movl %esi,%ecx - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 6,0x90 -LAES_Te: -.long 2774754246,2774754246 -.long 2222750968,2222750968 -.long 2574743534,2574743534 -.long 2373680118,2373680118 -.long 234025727,234025727 -.long 3177933782,3177933782 -.long 2976870366,2976870366 -.long 1422247313,1422247313 -.long 1345335392,1345335392 -.long 50397442,50397442 -.long 2842126286,2842126286 -.long 2099981142,2099981142 -.long 436141799,436141799 -.long 1658312629,1658312629 -.long 3870010189,3870010189 -.long 2591454956,2591454956 -.long 1170918031,1170918031 -.long 2642575903,2642575903 -.long 1086966153,1086966153 -.long 2273148410,2273148410 -.long 368769775,368769775 -.long 3948501426,3948501426 -.long 3376891790,3376891790 -.long 200339707,200339707 -.long 3970805057,3970805057 -.long 1742001331,1742001331 -.long 4255294047,4255294047 -.long 3937382213,3937382213 -.long 3214711843,3214711843 -.long 4154762323,4154762323 -.long 2524082916,2524082916 -.long 1539358875,1539358875 -.long 3266819957,3266819957 -.long 486407649,486407649 -.long 2928907069,2928907069 -.long 1780885068,1780885068 -.long 1513502316,1513502316 -.long 1094664062,1094664062 -.long 49805301,49805301 -.long 1338821763,1338821763 -.long 1546925160,1546925160 -.long 4104496465,4104496465 -.long 887481809,887481809 -.long 150073849,150073849 -.long 2473685474,2473685474 -.long 1943591083,1943591083 -.long 1395732834,1395732834 -.long 1058346282,1058346282 -.long 201589768,201589768 -.long 1388824469,1388824469 -.long 1696801606,1696801606 -.long 1589887901,1589887901 -.long 672667696,672667696 -.long 2711000631,2711000631 -.long 251987210,251987210 -.long 3046808111,3046808111 -.long 151455502,151455502 -.long 907153956,907153956 -.long 2608889883,2608889883 -.long 1038279391,1038279391 -.long 652995533,652995533 -.long 1764173646,1764173646 -.long 3451040383,3451040383 -.long 2675275242,2675275242 -.long 453576978,453576978 -.long 2659418909,2659418909 -.long 1949051992,1949051992 -.long 773462580,773462580 -.long 756751158,756751158 -.long 2993581788,2993581788 -.long 3998898868,3998898868 -.long 4221608027,4221608027 -.long 4132590244,4132590244 -.long 1295727478,1295727478 -.long 1641469623,1641469623 -.long 3467883389,3467883389 -.long 2066295122,2066295122 -.long 1055122397,1055122397 -.long 1898917726,1898917726 -.long 2542044179,2542044179 -.long 4115878822,4115878822 -.long 1758581177,1758581177 -.long 0,0 -.long 753790401,753790401 -.long 1612718144,1612718144 -.long 536673507,536673507 -.long 3367088505,3367088505 -.long 3982187446,3982187446 -.long 3194645204,3194645204 -.long 1187761037,1187761037 -.long 3653156455,3653156455 -.long 1262041458,1262041458 -.long 3729410708,3729410708 -.long 3561770136,3561770136 -.long 3898103984,3898103984 -.long 1255133061,1255133061 -.long 1808847035,1808847035 -.long 720367557,720367557 -.long 3853167183,3853167183 -.long 385612781,385612781 -.long 3309519750,3309519750 -.long 3612167578,3612167578 -.long 1429418854,1429418854 -.long 2491778321,2491778321 -.long 3477423498,3477423498 -.long 284817897,284817897 -.long 100794884,100794884 -.long 2172616702,2172616702 -.long 4031795360,4031795360 -.long 1144798328,1144798328 -.long 3131023141,3131023141 -.long 3819481163,3819481163 -.long 4082192802,4082192802 -.long 4272137053,4272137053 -.long 3225436288,3225436288 -.long 2324664069,2324664069 -.long 2912064063,2912064063 -.long 3164445985,3164445985 -.long 1211644016,1211644016 -.long 83228145,83228145 -.long 3753688163,3753688163 -.long 3249976951,3249976951 -.long 1977277103,1977277103 -.long 1663115586,1663115586 -.long 806359072,806359072 -.long 452984805,452984805 -.long 250868733,250868733 -.long 1842533055,1842533055 -.long 1288555905,1288555905 -.long 336333848,336333848 -.long 890442534,890442534 -.long 804056259,804056259 -.long 3781124030,3781124030 -.long 2727843637,2727843637 -.long 3427026056,3427026056 -.long 957814574,957814574 -.long 1472513171,1472513171 -.long 4071073621,4071073621 -.long 2189328124,2189328124 -.long 1195195770,1195195770 -.long 2892260552,2892260552 -.long 3881655738,3881655738 -.long 723065138,723065138 -.long 2507371494,2507371494 -.long 2690670784,2690670784 -.long 2558624025,2558624025 -.long 3511635870,3511635870 -.long 2145180835,2145180835 -.long 1713513028,1713513028 -.long 2116692564,2116692564 -.long 2878378043,2878378043 -.long 2206763019,2206763019 -.long 3393603212,3393603212 -.long 703524551,703524551 -.long 3552098411,3552098411 -.long 1007948840,1007948840 -.long 2044649127,2044649127 -.long 3797835452,3797835452 -.long 487262998,487262998 -.long 1994120109,1994120109 -.long 1004593371,1004593371 -.long 1446130276,1446130276 -.long 1312438900,1312438900 -.long 503974420,503974420 -.long 3679013266,3679013266 -.long 168166924,168166924 -.long 1814307912,1814307912 -.long 3831258296,3831258296 -.long 1573044895,1573044895 -.long 1859376061,1859376061 -.long 4021070915,4021070915 -.long 2791465668,2791465668 -.long 2828112185,2828112185 -.long 2761266481,2761266481 -.long 937747667,937747667 -.long 2339994098,2339994098 -.long 854058965,854058965 -.long 1137232011,1137232011 -.long 1496790894,1496790894 -.long 3077402074,3077402074 -.long 2358086913,2358086913 -.long 1691735473,1691735473 -.long 3528347292,3528347292 -.long 3769215305,3769215305 -.long 3027004632,3027004632 -.long 4199962284,4199962284 -.long 133494003,133494003 -.long 636152527,636152527 -.long 2942657994,2942657994 -.long 2390391540,2390391540 -.long 3920539207,3920539207 -.long 403179536,403179536 -.long 3585784431,3585784431 -.long 2289596656,2289596656 -.long 1864705354,1864705354 -.long 1915629148,1915629148 -.long 605822008,605822008 -.long 4054230615,4054230615 -.long 3350508659,3350508659 -.long 1371981463,1371981463 -.long 602466507,602466507 -.long 2094914977,2094914977 -.long 2624877800,2624877800 -.long 555687742,555687742 -.long 3712699286,3712699286 -.long 3703422305,3703422305 -.long 2257292045,2257292045 -.long 2240449039,2240449039 -.long 2423288032,2423288032 -.long 1111375484,1111375484 -.long 3300242801,3300242801 -.long 2858837708,2858837708 -.long 3628615824,3628615824 -.long 84083462,84083462 -.long 32962295,32962295 -.long 302911004,302911004 -.long 2741068226,2741068226 -.long 1597322602,1597322602 -.long 4183250862,4183250862 -.long 3501832553,3501832553 -.long 2441512471,2441512471 -.long 1489093017,1489093017 -.long 656219450,656219450 -.long 3114180135,3114180135 -.long 954327513,954327513 -.long 335083755,335083755 -.long 3013122091,3013122091 -.long 856756514,856756514 -.long 3144247762,3144247762 -.long 1893325225,1893325225 -.long 2307821063,2307821063 -.long 2811532339,2811532339 -.long 3063651117,3063651117 -.long 572399164,572399164 -.long 2458355477,2458355477 -.long 552200649,552200649 -.long 1238290055,1238290055 -.long 4283782570,4283782570 -.long 2015897680,2015897680 -.long 2061492133,2061492133 -.long 2408352771,2408352771 -.long 4171342169,4171342169 -.long 2156497161,2156497161 -.long 386731290,386731290 -.long 3669999461,3669999461 -.long 837215959,837215959 -.long 3326231172,3326231172 -.long 3093850320,3093850320 -.long 3275833730,3275833730 -.long 2962856233,2962856233 -.long 1999449434,1999449434 -.long 286199582,286199582 -.long 3417354363,3417354363 -.long 4233385128,4233385128 -.long 3602627437,3602627437 -.long 974525996,974525996 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.byte 99,124,119,123,242,107,111,197 -.byte 48,1,103,43,254,215,171,118 -.byte 202,130,201,125,250,89,71,240 -.byte 173,212,162,175,156,164,114,192 -.byte 183,253,147,38,54,63,247,204 -.byte 52,165,229,241,113,216,49,21 -.byte 4,199,35,195,24,150,5,154 -.byte 7,18,128,226,235,39,178,117 -.byte 9,131,44,26,27,110,90,160 -.byte 82,59,214,179,41,227,47,132 -.byte 83,209,0,237,32,252,177,91 -.byte 106,203,190,57,74,76,88,207 -.byte 208,239,170,251,67,77,51,133 -.byte 69,249,2,127,80,60,159,168 -.byte 81,163,64,143,146,157,56,245 -.byte 188,182,218,33,16,255,243,210 -.byte 205,12,19,236,95,151,68,23 -.byte 196,167,126,61,100,93,25,115 -.byte 96,129,79,220,34,42,144,136 -.byte 70,238,184,20,222,94,11,219 -.byte 224,50,58,10,73,6,36,92 -.byte 194,211,172,98,145,149,228,121 -.byte 231,200,55,109,141,213,78,169 -.byte 108,86,244,234,101,122,174,8 -.byte 186,120,37,46,28,166,180,198 -.byte 232,221,116,31,75,189,139,138 -.byte 112,62,181,102,72,3,246,14 -.byte 97,53,87,185,134,193,29,158 -.byte 225,248,152,17,105,217,142,148 -.byte 155,30,135,233,206,85,40,223 -.byte 140,161,137,13,191,230,66,104 -.byte 65,153,45,15,176,84,187,22 -.long 1,2,4,8 -.long 16,32,64,128 -.long 27,54,0,0 -.long 0,0,0,0 -.globl _AES_encrypt -.align 4 -_AES_encrypt: -L_AES_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call L004pic_point -L004pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L004pic_point(%ebp),%eax - leal LAES_Te-L004pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc L005x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call __sse_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L005x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call __x86_AES_encrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_AES_decrypt_compact: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi -.align 4,0x90 -L006loop: - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%eax - subl %edi,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %ecx,%eax - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ecx,%ebx - roll $8,%ecx - xorl %esi,%ebp - xorl %eax,%ecx - xorl %ebp,%eax - xorl %ebx,%ecx - xorl %ebp,%ebx - roll $24,%eax - xorl %ebp,%ecx - roll $16,%ebx - xorl %eax,%ecx - roll $8,%ebp - xorl %ebx,%ecx - movl 4(%esp),%eax - xorl %ebp,%ecx - movl %ecx,12(%esp) - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebx - subl %edi,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %edx,%ebx - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %edx,%ecx - roll $8,%edx - xorl %esi,%ebp - xorl %ebx,%edx - xorl %ebp,%ebx - xorl %ecx,%edx - xorl %ebp,%ecx - roll $24,%ebx - xorl %ebp,%edx - roll $16,%ecx - xorl %ebx,%edx - roll $8,%ebp - xorl %ecx,%edx - movl 8(%esp),%ebx - xorl %ebp,%edx - movl %edx,16(%esp) - movl $2155905152,%edi - andl %eax,%edi - movl %edi,%esi - shrl $7,%edi - leal (%eax,%eax,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %eax,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %eax,%edx - roll $8,%eax - xorl %esi,%ebp - xorl %ecx,%eax - xorl %ebp,%ecx - xorl %edx,%eax - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%eax - roll $16,%edx - xorl %ecx,%eax - roll $8,%ebp - xorl %edx,%eax - xorl %ebp,%eax - movl $2155905152,%edi - andl %ebx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ebx,%ebx,1),%ecx - subl %edi,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%edi - andl %ecx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%ecx,%ecx,1),%edx - subl %edi,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%edi - andl %edx,%edi - movl %edi,%esi - shrl $7,%edi - leal (%edx,%edx,1),%ebp - subl %edi,%esi - andl $4278124286,%ebp - andl $454761243,%esi - xorl %ebx,%edx - roll $8,%ebx - xorl %esi,%ebp - xorl %ecx,%ebx - xorl %ebp,%ecx - xorl %edx,%ebx - xorl %ebp,%edx - roll $24,%ecx - xorl %ebp,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%ebp - xorl %edx,%ebx - movl 12(%esp),%ecx - xorl %ebp,%ebx - movl 16(%esp),%edx - movl 20(%esp),%edi - movl 28(%esp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L006loop - movl %eax,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl -128(%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl -128(%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl -128(%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl -128(%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl -128(%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl -128(%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - xorl 16(%edi),%eax - xorl 20(%edi),%ebx - xorl 24(%edi),%ecx - xorl 28(%edi),%edx - ret -.align 4 -__sse_AES_decrypt_compact: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) - movl $454761243,%eax - movl %eax,8(%esp) - movl %eax,12(%esp) - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx -.align 4,0x90 -L007loop: - pshufw $12,%mm0,%mm1 - pshufw $9,%mm4,%mm5 - movd %mm1,%eax - movd %mm5,%ebx - movl %edi,20(%esp) - movzbl %al,%esi - movzbl %ah,%edx - pshufw $6,%mm0,%mm2 - movzbl -128(%ebp,%esi,1),%ecx - movzbl %bl,%edi - movzbl -128(%ebp,%edx,1),%edx - shrl $16,%eax - shll $8,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $16,%esi - pshufw $3,%mm4,%mm6 - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $24,%esi - shrl $16,%ebx - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shll $24,%esi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movd %mm2,%eax - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - shll $16,%esi - movd %mm6,%ebx - movd %ecx,%mm0 - movzbl -128(%ebp,%edi,1),%ecx - movzbl %al,%edi - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bl,%edi - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %ah,%edi - shll $16,%esi - shrl $16,%eax - orl %esi,%edx - movzbl -128(%ebp,%edi,1),%esi - movzbl %bh,%edi - shrl $16,%ebx - shll $8,%esi - movd %edx,%mm1 - movzbl -128(%ebp,%edi,1),%edx - movzbl %bh,%edi - shll $24,%edx - andl $255,%ebx - orl %esi,%edx - punpckldq %mm1,%mm0 - movzbl -128(%ebp,%edi,1),%esi - movzbl %al,%edi - shll $8,%esi - movzbl %ah,%eax - movzbl -128(%ebp,%ebx,1),%ebx - orl %esi,%ecx - movzbl -128(%ebp,%edi,1),%esi - orl %ebx,%edx - shll $16,%esi - movzbl -128(%ebp,%eax,1),%eax - orl %esi,%edx - shll $24,%eax - orl %eax,%ecx - movl 20(%esp),%edi - movd %edx,%mm4 - movd %ecx,%mm5 - punpckldq %mm5,%mm4 - addl $16,%edi - cmpl 24(%esp),%edi - ja L008out - movq %mm0,%mm3 - movq %mm4,%mm7 - pshufw $228,%mm0,%mm2 - pshufw $228,%mm4,%mm6 - movq %mm0,%mm1 - movq %mm4,%mm5 - pshufw $177,%mm0,%mm0 - pshufw $177,%mm4,%mm4 - pslld $8,%mm2 - pslld $8,%mm6 - psrld $8,%mm3 - psrld $8,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pslld $16,%mm2 - pslld $16,%mm6 - psrld $16,%mm3 - psrld $16,%mm7 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movq 8(%esp),%mm3 - pxor %mm2,%mm2 - pxor %mm6,%mm6 - pcmpgtb %mm1,%mm2 - pcmpgtb %mm5,%mm6 - pand %mm3,%mm2 - pand %mm3,%mm6 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm2,%mm1 - pxor %mm6,%mm5 - movq %mm1,%mm3 - movq %mm5,%mm7 - movq %mm1,%mm2 - movq %mm5,%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pslld $24,%mm3 - pslld $24,%mm7 - psrld $8,%mm2 - psrld $8,%mm6 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - movq 8(%esp),%mm2 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pshufw $177,%mm1,%mm3 - pshufw $177,%mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm3,%mm3 - pxor %mm7,%mm7 - pcmpgtb %mm1,%mm3 - pcmpgtb %mm5,%mm7 - pand %mm2,%mm3 - pand %mm2,%mm7 - paddb %mm1,%mm1 - paddb %mm5,%mm5 - pxor %mm3,%mm1 - pxor %mm7,%mm5 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movq %mm1,%mm3 - movq %mm5,%mm7 - pshufw $177,%mm1,%mm2 - pshufw $177,%mm5,%mm6 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - pslld $8,%mm1 - pslld $8,%mm5 - psrld $8,%mm3 - psrld $8,%mm7 - movq (%edi),%mm2 - movq 8(%edi),%mm6 - pxor %mm1,%mm0 - pxor %mm5,%mm4 - pxor %mm3,%mm0 - pxor %mm7,%mm4 - movl -128(%ebp),%eax - pslld $16,%mm1 - pslld $16,%mm5 - movl -64(%ebp),%ebx - psrld $16,%mm3 - psrld $16,%mm7 - movl (%ebp),%ecx - pxor %mm1,%mm0 - pxor %mm5,%mm4 - movl 64(%ebp),%edx - pxor %mm3,%mm0 - pxor %mm7,%mm4 - pxor %mm2,%mm0 - pxor %mm6,%mm4 - jmp L007loop -.align 4,0x90 -L008out: - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - ret -.align 4 -__x86_AES_decrypt: - movl %edi,20(%esp) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,24(%esp) -.align 4,0x90 -L009loop: - movl %eax,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %dh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ebx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %ah,%edi - xorl 3(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %ecx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movl (%ebp,%esi,8),%esi - movzbl %bh,%edi - xorl 3(%ebp,%edi,8),%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - xorl 2(%ebp,%edi,8),%esi - movl %edx,%edi - shrl $24,%edi - xorl 1(%ebp,%edi,8),%esi - movl 20(%esp),%edi - andl $255,%edx - movl (%ebp,%edx,8),%edx - movzbl %ch,%ecx - xorl 3(%ebp,%ecx,8),%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - xorl 2(%ebp,%ebx,8),%edx - movl 8(%esp),%ebx - shrl $24,%eax - xorl 1(%ebp,%eax,8),%edx - movl 4(%esp),%eax - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - cmpl 24(%esp),%edi - movl %edi,20(%esp) - jb L009loop - leal 2176(%ebp),%ebp - movl -128(%ebp),%edi - movl -96(%ebp),%esi - movl -64(%ebp),%edi - movl -32(%ebp),%esi - movl (%ebp),%edi - movl 32(%ebp),%esi - movl 64(%ebp),%edi - movl 96(%ebp),%esi - leal -128(%ebp),%ebp - movl %eax,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %dh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ebx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,4(%esp) - movl %ebx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %ah,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %ecx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl %esi,8(%esp) - movl %ecx,%esi - andl $255,%esi - movzbl (%ebp,%esi,1),%esi - movzbl %bh,%edi - movzbl (%ebp,%edi,1),%edi - shll $8,%edi - xorl %edi,%esi - movl %eax,%edi - shrl $16,%edi - andl $255,%edi - movzbl (%ebp,%edi,1),%edi - shll $16,%edi - xorl %edi,%esi - movl %edx,%edi - shrl $24,%edi - movzbl (%ebp,%edi,1),%edi - shll $24,%edi - xorl %edi,%esi - movl 20(%esp),%edi - andl $255,%edx - movzbl (%ebp,%edx,1),%edx - movzbl %ch,%ecx - movzbl (%ebp,%ecx,1),%ecx - shll $8,%ecx - xorl %ecx,%edx - movl %esi,%ecx - shrl $16,%ebx - andl $255,%ebx - movzbl (%ebp,%ebx,1),%ebx - shll $16,%ebx - xorl %ebx,%edx - movl 8(%esp),%ebx - shrl $24,%eax - movzbl (%ebp,%eax,1),%eax - shll $24,%eax - xorl %eax,%edx - movl 4(%esp),%eax - leal -2048(%ebp),%ebp - addl $16,%edi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.align 6,0x90 -LAES_Td: -.long 1353184337,1353184337 -.long 1399144830,1399144830 -.long 3282310938,3282310938 -.long 2522752826,2522752826 -.long 3412831035,3412831035 -.long 4047871263,4047871263 -.long 2874735276,2874735276 -.long 2466505547,2466505547 -.long 1442459680,1442459680 -.long 4134368941,4134368941 -.long 2440481928,2440481928 -.long 625738485,625738485 -.long 4242007375,4242007375 -.long 3620416197,3620416197 -.long 2151953702,2151953702 -.long 2409849525,2409849525 -.long 1230680542,1230680542 -.long 1729870373,1729870373 -.long 2551114309,2551114309 -.long 3787521629,3787521629 -.long 41234371,41234371 -.long 317738113,317738113 -.long 2744600205,2744600205 -.long 3338261355,3338261355 -.long 3881799427,3881799427 -.long 2510066197,2510066197 -.long 3950669247,3950669247 -.long 3663286933,3663286933 -.long 763608788,763608788 -.long 3542185048,3542185048 -.long 694804553,694804553 -.long 1154009486,1154009486 -.long 1787413109,1787413109 -.long 2021232372,2021232372 -.long 1799248025,1799248025 -.long 3715217703,3715217703 -.long 3058688446,3058688446 -.long 397248752,397248752 -.long 1722556617,1722556617 -.long 3023752829,3023752829 -.long 407560035,407560035 -.long 2184256229,2184256229 -.long 1613975959,1613975959 -.long 1165972322,1165972322 -.long 3765920945,3765920945 -.long 2226023355,2226023355 -.long 480281086,480281086 -.long 2485848313,2485848313 -.long 1483229296,1483229296 -.long 436028815,436028815 -.long 2272059028,2272059028 -.long 3086515026,3086515026 -.long 601060267,601060267 -.long 3791801202,3791801202 -.long 1468997603,1468997603 -.long 715871590,715871590 -.long 120122290,120122290 -.long 63092015,63092015 -.long 2591802758,2591802758 -.long 2768779219,2768779219 -.long 4068943920,4068943920 -.long 2997206819,2997206819 -.long 3127509762,3127509762 -.long 1552029421,1552029421 -.long 723308426,723308426 -.long 2461301159,2461301159 -.long 4042393587,4042393587 -.long 2715969870,2715969870 -.long 3455375973,3455375973 -.long 3586000134,3586000134 -.long 526529745,526529745 -.long 2331944644,2331944644 -.long 2639474228,2639474228 -.long 2689987490,2689987490 -.long 853641733,853641733 -.long 1978398372,1978398372 -.long 971801355,971801355 -.long 2867814464,2867814464 -.long 111112542,111112542 -.long 1360031421,1360031421 -.long 4186579262,4186579262 -.long 1023860118,1023860118 -.long 2919579357,2919579357 -.long 1186850381,1186850381 -.long 3045938321,3045938321 -.long 90031217,90031217 -.long 1876166148,1876166148 -.long 4279586912,4279586912 -.long 620468249,620468249 -.long 2548678102,2548678102 -.long 3426959497,3426959497 -.long 2006899047,2006899047 -.long 3175278768,3175278768 -.long 2290845959,2290845959 -.long 945494503,945494503 -.long 3689859193,3689859193 -.long 1191869601,1191869601 -.long 3910091388,3910091388 -.long 3374220536,3374220536 -.long 0,0 -.long 2206629897,2206629897 -.long 1223502642,1223502642 -.long 2893025566,2893025566 -.long 1316117100,1316117100 -.long 4227796733,4227796733 -.long 1446544655,1446544655 -.long 517320253,517320253 -.long 658058550,658058550 -.long 1691946762,1691946762 -.long 564550760,564550760 -.long 3511966619,3511966619 -.long 976107044,976107044 -.long 2976320012,2976320012 -.long 266819475,266819475 -.long 3533106868,3533106868 -.long 2660342555,2660342555 -.long 1338359936,1338359936 -.long 2720062561,2720062561 -.long 1766553434,1766553434 -.long 370807324,370807324 -.long 179999714,179999714 -.long 3844776128,3844776128 -.long 1138762300,1138762300 -.long 488053522,488053522 -.long 185403662,185403662 -.long 2915535858,2915535858 -.long 3114841645,3114841645 -.long 3366526484,3366526484 -.long 2233069911,2233069911 -.long 1275557295,1275557295 -.long 3151862254,3151862254 -.long 4250959779,4250959779 -.long 2670068215,2670068215 -.long 3170202204,3170202204 -.long 3309004356,3309004356 -.long 880737115,880737115 -.long 1982415755,1982415755 -.long 3703972811,3703972811 -.long 1761406390,1761406390 -.long 1676797112,1676797112 -.long 3403428311,3403428311 -.long 277177154,277177154 -.long 1076008723,1076008723 -.long 538035844,538035844 -.long 2099530373,2099530373 -.long 4164795346,4164795346 -.long 288553390,288553390 -.long 1839278535,1839278535 -.long 1261411869,1261411869 -.long 4080055004,4080055004 -.long 3964831245,3964831245 -.long 3504587127,3504587127 -.long 1813426987,1813426987 -.long 2579067049,2579067049 -.long 4199060497,4199060497 -.long 577038663,577038663 -.long 3297574056,3297574056 -.long 440397984,440397984 -.long 3626794326,3626794326 -.long 4019204898,4019204898 -.long 3343796615,3343796615 -.long 3251714265,3251714265 -.long 4272081548,4272081548 -.long 906744984,906744984 -.long 3481400742,3481400742 -.long 685669029,685669029 -.long 646887386,646887386 -.long 2764025151,2764025151 -.long 3835509292,3835509292 -.long 227702864,227702864 -.long 2613862250,2613862250 -.long 1648787028,1648787028 -.long 3256061430,3256061430 -.long 3904428176,3904428176 -.long 1593260334,1593260334 -.long 4121936770,4121936770 -.long 3196083615,3196083615 -.long 2090061929,2090061929 -.long 2838353263,2838353263 -.long 3004310991,3004310991 -.long 999926984,999926984 -.long 2809993232,2809993232 -.long 1852021992,1852021992 -.long 2075868123,2075868123 -.long 158869197,158869197 -.long 4095236462,4095236462 -.long 28809964,28809964 -.long 2828685187,2828685187 -.long 1701746150,1701746150 -.long 2129067946,2129067946 -.long 147831841,147831841 -.long 3873969647,3873969647 -.long 3650873274,3650873274 -.long 3459673930,3459673930 -.long 3557400554,3557400554 -.long 3598495785,3598495785 -.long 2947720241,2947720241 -.long 824393514,824393514 -.long 815048134,815048134 -.long 3227951669,3227951669 -.long 935087732,935087732 -.long 2798289660,2798289660 -.long 2966458592,2966458592 -.long 366520115,366520115 -.long 1251476721,1251476721 -.long 4158319681,4158319681 -.long 240176511,240176511 -.long 804688151,804688151 -.long 2379631990,2379631990 -.long 1303441219,1303441219 -.long 1414376140,1414376140 -.long 3741619940,3741619940 -.long 3820343710,3820343710 -.long 461924940,461924940 -.long 3089050817,3089050817 -.long 2136040774,2136040774 -.long 82468509,82468509 -.long 1563790337,1563790337 -.long 1937016826,1937016826 -.long 776014843,776014843 -.long 1511876531,1511876531 -.long 1389550482,1389550482 -.long 861278441,861278441 -.long 323475053,323475053 -.long 2355222426,2355222426 -.long 2047648055,2047648055 -.long 2383738969,2383738969 -.long 2302415851,2302415851 -.long 3995576782,3995576782 -.long 902390199,902390199 -.long 3991215329,3991215329 -.long 1018251130,1018251130 -.long 1507840668,1507840668 -.long 1064563285,1064563285 -.long 2043548696,2043548696 -.long 3208103795,3208103795 -.long 3939366739,3939366739 -.long 1537932639,1537932639 -.long 342834655,342834655 -.long 2262516856,2262516856 -.long 2180231114,2180231114 -.long 1053059257,1053059257 -.long 741614648,741614648 -.long 1598071746,1598071746 -.long 1925389590,1925389590 -.long 203809468,203809468 -.long 2336832552,2336832552 -.long 1100287487,1100287487 -.long 1895934009,1895934009 -.long 3736275976,3736275976 -.long 2632234200,2632234200 -.long 2428589668,2428589668 -.long 1636092795,1636092795 -.long 1890988757,1890988757 -.long 1952214088,1952214088 -.long 1113045200,1113045200 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.byte 82,9,106,213,48,54,165,56 -.byte 191,64,163,158,129,243,215,251 -.byte 124,227,57,130,155,47,255,135 -.byte 52,142,67,68,196,222,233,203 -.byte 84,123,148,50,166,194,35,61 -.byte 238,76,149,11,66,250,195,78 -.byte 8,46,161,102,40,217,36,178 -.byte 118,91,162,73,109,139,209,37 -.byte 114,248,246,100,134,104,152,22 -.byte 212,164,92,204,93,101,182,146 -.byte 108,112,72,80,253,237,185,218 -.byte 94,21,70,87,167,141,157,132 -.byte 144,216,171,0,140,188,211,10 -.byte 247,228,88,5,184,179,69,6 -.byte 208,44,30,143,202,63,15,2 -.byte 193,175,189,3,1,19,138,107 -.byte 58,145,17,65,79,103,220,234 -.byte 151,242,207,206,240,180,230,115 -.byte 150,172,116,34,231,173,53,133 -.byte 226,249,55,232,28,117,223,110 -.byte 71,241,26,113,29,41,197,137 -.byte 111,183,98,14,170,24,190,27 -.byte 252,86,62,75,198,210,121,32 -.byte 154,219,192,254,120,205,90,244 -.byte 31,221,168,51,136,7,199,49 -.byte 177,18,16,89,39,128,236,95 -.byte 96,81,127,169,25,181,74,13 -.byte 45,229,122,159,147,201,156,239 -.byte 160,224,59,77,174,42,245,176 -.byte 200,235,187,60,131,83,153,97 -.byte 23,43,4,126,186,119,214,38 -.byte 225,105,20,99,85,33,12,125 -.globl _AES_decrypt -.align 4 -_AES_decrypt: -L_AES_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%eax - subl $36,%esp - andl $-64,%esp - leal -127(%edi),%ebx - subl %esp,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esp - addl $4,%esp - movl %eax,28(%esp) - call L010pic_point -L010pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010pic_point(%ebp),%eax - leal LAES_Td-L010pic_point(%ebp),%ebp - leal 764(%esp),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - btl $25,(%eax) - jnc L011x86 - movq (%esi),%mm0 - movq 8(%esi),%mm4 - call __sse_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L011x86: - movl %ebp,24(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - call __x86_AES_decrypt_compact - movl 28(%esp),%esp - movl 24(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _AES_cbc_encrypt -.align 4 -_AES_cbc_encrypt: -L_AES_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je L012drop_out - call L013pic_point -L013pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L013pic_point(%ebp),%eax - cmpl $0,40(%esp) - leal LAES_Te-L013pic_point(%ebp),%ebp - jne L014picked_te - leal LAES_Td-LAES_Te(%ebp),%ebp -L014picked_te: - pushfl - cld - cmpl $512,%ecx - jb L015slow_way - testl $15,%ecx - jnz L015slow_way - btl $28,(%eax) - jc L015slow_way - leal -324(%esp),%esi - andl $-64,%esi - movl %ebp,%eax - leal 2304(%ebp),%ebx - movl %esi,%edx - andl $4095,%eax - andl $4095,%ebx - andl $4095,%edx - cmpl %ebx,%edx - jb L016tbl_break_out - subl %ebx,%edx - subl %edx,%esi - jmp L017tbl_ok -.align 2,0x90 -L016tbl_break_out: - subl %eax,%edx - andl $4095,%edx - addl $384,%edx - subl %edx,%esi -.align 2,0x90 -L017tbl_ok: - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 12(%edx),%edi - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl $0,316(%esp) - movl %edi,%ebx - movl $61,%ecx - subl %ebp,%ebx - movl %edi,%esi - andl $4095,%ebx - leal 76(%esp),%edi - cmpl $2304,%ebx - jb L018do_copy - cmpl $3852,%ebx - jb L019skip_copy -.align 2,0x90 -L018do_copy: - movl %edi,44(%esp) -.long 2784229001 -L019skip_copy: - movl $16,%edi -.align 2,0x90 -L020prefetch_tbl: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%esi - leal 128(%ebp),%ebp - subl $1,%edi - jnz L020prefetch_tbl - subl $2048,%ebp - movl 32(%esp),%esi - movl 48(%esp),%edi - cmpl $0,%edx - je L021fast_decrypt - movl (%edi),%eax - movl 4(%edi),%ebx -.align 4,0x90 -L022fast_enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_encrypt - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%esi - movl 40(%esp),%ecx - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L022fast_enc_loop - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - cmpl $0,316(%esp) - movl 44(%esp),%edi - je L023skip_ezero - movl $60,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2884892297 -L023skip_ezero: - movl 28(%esp),%esp - popfl -L012drop_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L021fast_decrypt: - cmpl 36(%esp),%esi - je L024fast_dec_in_place - movl %edi,52(%esp) -.align 2,0x90 -.align 4,0x90 -L025fast_dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_decrypt - movl 52(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 36(%esp),%edi - movl 32(%esp),%esi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl %esi,52(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edi - movl %edi,36(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L025fast_dec_loop - movl 52(%esp),%edi - movl 48(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp L026fast_dec_out -.align 4,0x90 -L024fast_dec_in_place: -L027fast_dec_in_place_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call __x86_AES_decrypt - movl 48(%esp),%edi - movl 36(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - subl $16,%ecx - movl %ecx,40(%esp) - jnz L027fast_dec_in_place_loop -.align 2,0x90 -L026fast_dec_out: - cmpl $0,316(%esp) - movl 44(%esp),%edi - je L028skip_dzero - movl $60,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2884892297 -L028skip_dzero: - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L015slow_way: - movl (%eax),%eax - movl 36(%esp),%edi - leal -80(%esp),%esi - andl $-64,%esi - leal -143(%edi),%ebx - subl %esi,%ebx - negl %ebx - andl $960,%ebx - subl %ebx,%esi - leal 768(%esi),%ebx - subl %ebp,%ebx - andl $768,%ebx - leal 2176(%ebp,%ebx,1),%ebp - leal 24(%esp),%edx - xchgl %esi,%esp - addl $4,%esp - movl %ebp,24(%esp) - movl %esi,28(%esp) - movl %eax,52(%esp) - movl (%edx),%eax - movl 4(%edx),%ebx - movl 16(%edx),%esi - movl 20(%edx),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edi,44(%esp) - movl %esi,48(%esp) - movl %esi,%edi - movl %eax,%esi - cmpl $0,%edx - je L029slow_decrypt - cmpl $16,%ecx - movl %ebx,%edx - jb L030slow_enc_tail - btl $25,52(%esp) - jnc L031slow_enc_x86 - movq (%edi),%mm0 - movq 8(%edi),%mm4 -.align 4,0x90 -L032slow_enc_loop_sse: - pxor (%esi),%mm0 - pxor 8(%esi),%mm4 - movl 44(%esp),%edi - call __sse_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl 40(%esp),%ecx - movq %mm0,(%edi) - movq %mm4,8(%edi) - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae L032slow_enc_loop_sse - testl $15,%ecx - jnz L030slow_enc_tail - movl 48(%esp),%esi - movq %mm0,(%esi) - movq %mm4,8(%esi) - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L031slow_enc_x86: - movl (%edi),%eax - movl 4(%edi),%ebx -.align 2,0x90 -L033slow_enc_loop_x86: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 44(%esp),%edi - call __x86_AES_encrypt_compact - movl 32(%esp),%esi - movl 36(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - leal 16(%esi),%esi - movl %esi,32(%esp) - leal 16(%edi),%edx - movl %edx,36(%esp) - subl $16,%ecx - cmpl $16,%ecx - movl %ecx,40(%esp) - jae L033slow_enc_loop_x86 - testl $15,%ecx - jnz L030slow_enc_tail - movl 48(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L030slow_enc_tail: - emms - movl %edx,%edi - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je L034enc_in_place -.align 2,0x90 -.long 2767451785 - jmp L035enc_skip_in_place -L034enc_in_place: - leal (%edi,%ecx,1),%edi -L035enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2868115081 - movl 48(%esp),%edi - movl %edx,%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,40(%esp) - jmp L033slow_enc_loop_x86 -.align 4,0x90 -L029slow_decrypt: - btl $25,52(%esp) - jnc L036slow_dec_loop_x86 -.align 2,0x90 -L037slow_dec_loop_sse: - movq (%esi),%mm0 - movq 8(%esi),%mm4 - movl 44(%esp),%edi - call __sse_AES_decrypt_compact - movl 32(%esp),%esi - leal 60(%esp),%eax - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl 48(%esp),%edi - movq (%esi),%mm1 - movq 8(%esi),%mm5 - pxor (%edi),%mm0 - pxor 8(%edi),%mm4 - movq %mm1,(%edi) - movq %mm5,8(%edi) - subl $16,%ecx - jc L038slow_dec_partial_sse - movq %mm0,(%ebx) - movq %mm4,8(%ebx) - leal 16(%ebx),%ebx - movl %ebx,36(%esp) - leal 16(%esi),%esi - movl %esi,32(%esp) - movl %ecx,40(%esp) - jnz L037slow_dec_loop_sse - emms - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L038slow_dec_partial_sse: - movq %mm0,(%eax) - movq %mm4,8(%eax) - emms - addl $16,%ecx - movl %ebx,%edi - movl %eax,%esi -.align 2,0x90 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L036slow_dec_loop_x86: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - leal 60(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 44(%esp),%edi - call __x86_AES_decrypt_compact - movl 48(%esp),%edi - movl 40(%esp),%esi - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc L039slow_dec_partial_x86 - movl %esi,40(%esp) - movl 36(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,36(%esp) - leal 60(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%esi - leal 16(%esi),%esi - movl %esi,32(%esp) - jnz L036slow_dec_loop_x86 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 4,0x90 -L039slow_dec_partial_x86: - leal 60(%esp),%esi - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 32(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 40(%esp),%ecx - movl 36(%esp),%edi - leal 60(%esp),%esi -.align 2,0x90 -.long 2767451785 - movl 28(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_AES_set_encrypt_key: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%esi - movl 32(%esp),%edi - testl $-1,%esi - jz L040badpointer - testl $-1,%edi - jz L040badpointer - call L041pic_point -L041pic_point: - popl %ebp - leal LAES_Te-L041pic_point(%ebp),%ebp - leal 2176(%ebp),%ebp - movl -128(%ebp),%eax - movl -96(%ebp),%ebx - movl -64(%ebp),%ecx - movl -32(%ebp),%edx - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - movl 28(%esp),%ecx - cmpl $128,%ecx - je L04210rounds - cmpl $192,%ecx - je L04312rounds - cmpl $256,%ecx - je L04414rounds - movl $-2,%eax - jmp L045exit -L04210rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - xorl %ecx,%ecx - jmp L04610shortcut -.align 2,0x90 -L04710loop: - movl (%edi),%eax - movl 12(%edi),%edx -L04610shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,16(%edi) - xorl 4(%edi),%eax - movl %eax,20(%edi) - xorl 8(%edi),%eax - movl %eax,24(%edi) - xorl 12(%edi),%eax - movl %eax,28(%edi) - incl %ecx - addl $16,%edi - cmpl $10,%ecx - jl L04710loop - movl $10,80(%edi) - xorl %eax,%eax - jmp L045exit -L04312rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%ecx - movl 20(%esi),%edx - movl %ecx,16(%edi) - movl %edx,20(%edi) - xorl %ecx,%ecx - jmp L04812shortcut -.align 2,0x90 -L04912loop: - movl (%edi),%eax - movl 20(%edi),%edx -L04812shortcut: - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,24(%edi) - xorl 4(%edi),%eax - movl %eax,28(%edi) - xorl 8(%edi),%eax - movl %eax,32(%edi) - xorl 12(%edi),%eax - movl %eax,36(%edi) - cmpl $7,%ecx - je L05012break - incl %ecx - xorl 16(%edi),%eax - movl %eax,40(%edi) - xorl 20(%edi),%eax - movl %eax,44(%edi) - addl $24,%edi - jmp L04912loop -L05012break: - movl $12,72(%edi) - xorl %eax,%eax - jmp L045exit -L04414rounds: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - movl %eax,16(%edi) - movl %ebx,20(%edi) - movl %ecx,24(%edi) - movl %edx,28(%edi) - xorl %ecx,%ecx - jmp L05114shortcut -.align 2,0x90 -L05214loop: - movl 28(%edi),%edx -L05114shortcut: - movl (%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $24,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $8,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $16,%ebx - xorl %ebx,%eax - xorl 896(%ebp,%ecx,4),%eax - movl %eax,32(%edi) - xorl 4(%edi),%eax - movl %eax,36(%edi) - xorl 8(%edi),%eax - movl %eax,40(%edi) - xorl 12(%edi),%eax - movl %eax,44(%edi) - cmpl $6,%ecx - je L05314break - incl %ecx - movl %eax,%edx - movl 16(%edi),%eax - movzbl %dl,%esi - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shrl $16,%edx - shll $8,%ebx - movzbl %dl,%esi - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - movzbl %dh,%esi - shll $16,%ebx - xorl %ebx,%eax - movzbl -128(%ebp,%esi,1),%ebx - shll $24,%ebx - xorl %ebx,%eax - movl %eax,48(%edi) - xorl 20(%edi),%eax - movl %eax,52(%edi) - xorl 24(%edi),%eax - movl %eax,56(%edi) - xorl 28(%edi),%eax - movl %eax,60(%edi) - addl $32,%edi - jmp L05214loop -L05314break: - movl $14,48(%edi) - xorl %eax,%eax - jmp L045exit -L040badpointer: - movl $-1,%eax -L045exit: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_AES_set_encrypt_key -.align 4 -_private_AES_set_encrypt_key: -L_private_AES_set_encrypt_key_begin: - call __x86_AES_set_encrypt_key - ret -.globl _private_AES_set_decrypt_key -.align 4 -_private_AES_set_decrypt_key: -L_private_AES_set_decrypt_key_begin: - call __x86_AES_set_encrypt_key - cmpl $0,%eax - je L054proceed - ret -L054proceed: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%esi - movl 240(%esi),%ecx - leal (,%ecx,4),%ecx - leal (%esi,%ecx,4),%edi -.align 2,0x90 -L055invert: - movl (%esi),%eax - movl 4(%esi),%ebx - movl (%edi),%ecx - movl 4(%edi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,(%esi) - movl %edx,4(%esi) - movl 8(%esi),%eax - movl 12(%esi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,8(%edi) - movl %ebx,12(%edi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - addl $16,%esi - subl $16,%edi - cmpl %edi,%esi - jne L055invert - movl 28(%esp),%edi - movl 240(%edi),%esi - leal -2(%esi,%esi,1),%esi - leal (%edi,%esi,8),%esi - movl %esi,28(%esp) - movl 16(%edi),%eax -.align 2,0x90 -L056permute: - addl $16,%edi - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %eax,%ebx - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - xorl %eax,%ecx - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - roll $8,%eax - xorl %esi,%edx - movl 4(%edi),%ebp - xorl %ebx,%eax - xorl %edx,%ebx - xorl %ecx,%eax - roll $24,%ebx - xorl %edx,%ecx - xorl %edx,%eax - roll $16,%ecx - xorl %ebx,%eax - roll $8,%edx - xorl %ecx,%eax - movl %ebp,%ebx - xorl %edx,%eax - movl %eax,(%edi) - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - xorl %esi,%ecx - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %ebx,%ecx - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - xorl %ebx,%edx - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - roll $8,%ebx - xorl %esi,%eax - movl 8(%edi),%ebp - xorl %ecx,%ebx - xorl %eax,%ecx - xorl %edx,%ebx - roll $24,%ecx - xorl %eax,%edx - xorl %eax,%ebx - roll $16,%edx - xorl %ecx,%ebx - roll $8,%eax - xorl %edx,%ebx - movl %ebp,%ecx - xorl %eax,%ebx - movl %ebx,4(%edi) - movl $2155905152,%ebp - andl %ecx,%ebp - leal (%ecx,%ecx,1),%edx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%edx - andl $454761243,%esi - xorl %esi,%edx - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %ecx,%edx - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - xorl %ecx,%eax - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - roll $8,%ecx - xorl %esi,%ebx - movl 12(%edi),%ebp - xorl %edx,%ecx - xorl %ebx,%edx - xorl %eax,%ecx - roll $24,%edx - xorl %ebx,%eax - xorl %ebx,%ecx - roll $16,%eax - xorl %edx,%ecx - roll $8,%ebx - xorl %eax,%ecx - movl %ebp,%edx - xorl %ebx,%ecx - movl %ecx,8(%edi) - movl $2155905152,%ebp - andl %edx,%ebp - leal (%edx,%edx,1),%eax - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%eax - andl $454761243,%esi - xorl %esi,%eax - movl $2155905152,%ebp - andl %eax,%ebp - leal (%eax,%eax,1),%ebx - movl %ebp,%esi - shrl $7,%ebp - subl %ebp,%esi - andl $4278124286,%ebx - andl $454761243,%esi - xorl %edx,%eax - xorl %esi,%ebx - movl $2155905152,%ebp - andl %ebx,%ebp - leal (%ebx,%ebx,1),%ecx - movl %ebp,%esi - shrl $7,%ebp - xorl %edx,%ebx - subl %ebp,%esi - andl $4278124286,%ecx - andl $454761243,%esi - roll $8,%edx - xorl %esi,%ecx - movl 16(%edi),%ebp - xorl %eax,%edx - xorl %ecx,%eax - xorl %ebx,%edx - roll $24,%eax - xorl %ecx,%ebx - xorl %ecx,%edx - roll $16,%ebx - xorl %eax,%edx - roll $8,%ecx - xorl %ebx,%edx - movl %ebp,%eax - xorl %ecx,%edx - movl %edx,12(%edi) - cmpl 28(%esp),%edi - jb L056permute - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aesni-x86.s b/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aesni-x86.s deleted file mode 100644 index c1f5aec62ce4e3..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/aesni-x86.s +++ /dev/null @@ -1,2412 +0,0 @@ -.file "../openssl/crypto/aes/asm/aesni-x86.s" -.text -.globl _aesni_encrypt -.align 4 -_aesni_encrypt: -L_aesni_encrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L000enc1_loop_1: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L000enc1_loop_1 -.byte 102,15,56,221,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.globl _aesni_decrypt -.align 4 -_aesni_decrypt: -L_aesni_decrypt_begin: - movl 4(%esp),%eax - movl 12(%esp),%edx - movups (%eax),%xmm2 - movl 240(%edx),%ecx - movl 8(%esp),%eax - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L001dec1_loop_2: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L001dec1_loop_2 -.byte 102,15,56,223,209 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movups %xmm2,(%eax) - pxor %xmm2,%xmm2 - ret -.align 4 -__aesni_encrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L002enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L002enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - ret -.align 4 -__aesni_decrypt2: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L003dec2_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L003dec2_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 - ret -.align 4 -__aesni_encrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L004enc3_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz L004enc3_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 - ret -.align 4 -__aesni_decrypt3: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx - addl $16,%ecx -L005dec3_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 - movups -16(%edx,%ecx,1),%xmm0 - jnz L005dec3_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 - ret -.align 4 -__aesni_encrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -L006enc4_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz L006enc4_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 - ret -.align 4 -__aesni_decrypt4: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - shll $4,%ecx - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 - movups 32(%edx),%xmm0 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 15,31,64,0 - addl $16,%ecx -L007dec4_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 - movups -16(%edx,%ecx,1),%xmm0 - jnz L007dec4_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 - ret -.align 4 -__aesni_encrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,220,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,220,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp L008_aesni_encrypt6_inner -.align 4,0x90 -L009enc6_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -L008_aesni_encrypt6_inner: -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -L_aesni_encrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 -.byte 102,15,56,220,224 -.byte 102,15,56,220,232 -.byte 102,15,56,220,240 -.byte 102,15,56,220,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz L009enc6_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 -.byte 102,15,56,221,224 -.byte 102,15,56,221,232 -.byte 102,15,56,221,240 -.byte 102,15,56,221,248 - ret -.align 4 -__aesni_decrypt6: - movups (%edx),%xmm0 - shll $4,%ecx - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm2 - pxor %xmm0,%xmm3 - pxor %xmm0,%xmm4 -.byte 102,15,56,222,209 - pxor %xmm0,%xmm5 - pxor %xmm0,%xmm6 -.byte 102,15,56,222,217 - leal 32(%edx,%ecx,1),%edx - negl %ecx -.byte 102,15,56,222,225 - pxor %xmm0,%xmm7 - movups (%edx,%ecx,1),%xmm0 - addl $16,%ecx - jmp L010_aesni_decrypt6_inner -.align 4,0x90 -L011dec6_loop: -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -L010_aesni_decrypt6_inner: -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -L_aesni_decrypt6_enter: - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,222,208 -.byte 102,15,56,222,216 -.byte 102,15,56,222,224 -.byte 102,15,56,222,232 -.byte 102,15,56,222,240 -.byte 102,15,56,222,248 - movups -16(%edx,%ecx,1),%xmm0 - jnz L011dec6_loop -.byte 102,15,56,222,209 -.byte 102,15,56,222,217 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 -.byte 102,15,56,223,208 -.byte 102,15,56,223,216 -.byte 102,15,56,223,224 -.byte 102,15,56,223,232 -.byte 102,15,56,223,240 -.byte 102,15,56,223,248 - ret -.globl _aesni_ecb_encrypt -.align 4 -_aesni_ecb_encrypt: -L_aesni_ecb_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - andl $-16,%eax - jz L012ecb_ret - movl 240(%edx),%ecx - testl %ebx,%ebx - jz L013ecb_decrypt - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb L014ecb_enc_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp L015ecb_enc_loop6_enter -.align 4,0x90 -L016ecb_enc_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -L015ecb_enc_loop6_enter: - call __aesni_encrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc L016ecb_enc_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz L012ecb_ret -L014ecb_enc_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb L017ecb_enc_one - movups 16(%esi),%xmm3 - je L018ecb_enc_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb L019ecb_enc_three - movups 48(%esi),%xmm5 - je L020ecb_enc_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call __aesni_encrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L012ecb_ret -.align 4,0x90 -L017ecb_enc_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L021enc1_loop_3: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L021enc1_loop_3 -.byte 102,15,56,221,209 - movups %xmm2,(%edi) - jmp L012ecb_ret -.align 4,0x90 -L018ecb_enc_two: - call __aesni_encrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L012ecb_ret -.align 4,0x90 -L019ecb_enc_three: - call __aesni_encrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L012ecb_ret -.align 4,0x90 -L020ecb_enc_four: - call __aesni_encrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - jmp L012ecb_ret -.align 4,0x90 -L013ecb_decrypt: - movl %edx,%ebp - movl %ecx,%ebx - cmpl $96,%eax - jb L022ecb_dec_tail - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi - subl $96,%eax - jmp L023ecb_dec_loop6_enter -.align 4,0x90 -L024ecb_dec_loop6: - movups %xmm2,(%edi) - movdqu (%esi),%xmm2 - movups %xmm3,16(%edi) - movdqu 16(%esi),%xmm3 - movups %xmm4,32(%edi) - movdqu 32(%esi),%xmm4 - movups %xmm5,48(%edi) - movdqu 48(%esi),%xmm5 - movups %xmm6,64(%edi) - movdqu 64(%esi),%xmm6 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqu 80(%esi),%xmm7 - leal 96(%esi),%esi -L023ecb_dec_loop6_enter: - call __aesni_decrypt6 - movl %ebp,%edx - movl %ebx,%ecx - subl $96,%eax - jnc L024ecb_dec_loop6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - movups %xmm7,80(%edi) - leal 96(%edi),%edi - addl $96,%eax - jz L012ecb_ret -L022ecb_dec_tail: - movups (%esi),%xmm2 - cmpl $32,%eax - jb L025ecb_dec_one - movups 16(%esi),%xmm3 - je L026ecb_dec_two - movups 32(%esi),%xmm4 - cmpl $64,%eax - jb L027ecb_dec_three - movups 48(%esi),%xmm5 - je L028ecb_dec_four - movups 64(%esi),%xmm6 - xorps %xmm7,%xmm7 - call __aesni_decrypt6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L012ecb_ret -.align 4,0x90 -L025ecb_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L029dec1_loop_4: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L029dec1_loop_4 -.byte 102,15,56,223,209 - movups %xmm2,(%edi) - jmp L012ecb_ret -.align 4,0x90 -L026ecb_dec_two: - call __aesni_decrypt2 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L012ecb_ret -.align 4,0x90 -L027ecb_dec_three: - call __aesni_decrypt3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L012ecb_ret -.align 4,0x90 -L028ecb_dec_four: - call __aesni_decrypt4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -L012ecb_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ccm64_encrypt_blocks -.align 4 -_aesni_ccm64_encrypt_blocks: -L_aesni_ccm64_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - shll $4,%ecx - movl $16,%ebx - leal (%edx),%ebp - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - leal 32(%edx,%ecx,1),%edx - subl %ecx,%ebx -.byte 102,15,56,0,253 -L030ccm64_enc_outer: - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups (%esi),%xmm6 - xorps %xmm0,%xmm2 - movups 16(%ebp),%xmm1 - xorps %xmm6,%xmm0 - xorps %xmm0,%xmm3 - movups 32(%ebp),%xmm0 -L031ccm64_enc2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L031ccm64_enc2_loop -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - paddq 16(%esp),%xmm7 - decl %eax -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) -.byte 102,15,56,0,213 - leal 16(%edi),%edi - jnz L030ccm64_enc_outer - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ccm64_decrypt_blocks -.align 4 -_aesni_ccm64_decrypt_blocks: -L_aesni_ccm64_decrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl 40(%esp),%ecx - movl %esp,%ebp - subl $60,%esp - andl $-16,%esp - movl %ebp,48(%esp) - movdqu (%ebx),%xmm7 - movdqu (%ecx),%xmm3 - movl 240(%edx),%ecx - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $1,%ebx - xorl %ebp,%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl %ebp,24(%esp) - movl %ebp,28(%esp) - movdqa (%esp),%xmm5 - movdqa %xmm7,%xmm2 - movl %edx,%ebp - movl %ecx,%ebx -.byte 102,15,56,0,253 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L032enc1_loop_5: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L032enc1_loop_5 -.byte 102,15,56,221,209 - shll $4,%ebx - movl $16,%ecx - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 - leal 16(%esi),%esi - subl %ebx,%ecx - leal 32(%ebp,%ebx,1),%edx - movl %ecx,%ebx - jmp L033ccm64_dec_outer -.align 4,0x90 -L033ccm64_dec_outer: - xorps %xmm2,%xmm6 - movdqa %xmm7,%xmm2 - movups %xmm6,(%edi) - leal 16(%edi),%edi -.byte 102,15,56,0,213 - subl $1,%eax - jz L034ccm64_dec_break - movups (%ebp),%xmm0 - movl %ebx,%ecx - movups 16(%ebp),%xmm1 - xorps %xmm0,%xmm6 - xorps %xmm0,%xmm2 - xorps %xmm6,%xmm3 - movups 32(%ebp),%xmm0 -L035ccm64_dec2_loop: -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 - movups (%edx,%ecx,1),%xmm1 - addl $32,%ecx -.byte 102,15,56,220,208 -.byte 102,15,56,220,216 - movups -16(%edx,%ecx,1),%xmm0 - jnz L035ccm64_dec2_loop - movups (%esi),%xmm6 - paddq 16(%esp),%xmm7 -.byte 102,15,56,220,209 -.byte 102,15,56,220,217 -.byte 102,15,56,221,208 -.byte 102,15,56,221,216 - leal 16(%esi),%esi - jmp L033ccm64_dec_outer -.align 4,0x90 -L034ccm64_dec_break: - movl 240(%ebp),%ecx - movl %ebp,%edx - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm6 - leal 32(%edx),%edx - xorps %xmm6,%xmm3 -L036enc1_loop_6: -.byte 102,15,56,220,217 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L036enc1_loop_6 -.byte 102,15,56,221,217 - movl 48(%esp),%esp - movl 40(%esp),%edi - movups %xmm3,(%edi) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_ctr32_encrypt_blocks -.align 4 -_aesni_ctr32_encrypt_blocks: -L_aesni_ctr32_encrypt_blocks_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl 36(%esp),%ebx - movl %esp,%ebp - subl $88,%esp - andl $-16,%esp - movl %ebp,80(%esp) - cmpl $1,%eax - je L037ctr32_one_shortcut - movdqu (%ebx),%xmm7 - movl $202182159,(%esp) - movl $134810123,4(%esp) - movl $67438087,8(%esp) - movl $66051,12(%esp) - movl $6,%ecx - xorl %ebp,%ebp - movl %ecx,16(%esp) - movl %ecx,20(%esp) - movl %ecx,24(%esp) - movl %ebp,28(%esp) -.byte 102,15,58,22,251,3 -.byte 102,15,58,34,253,3 - movl 240(%edx),%ecx - bswap %ebx - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - movdqa (%esp),%xmm2 -.byte 102,15,58,34,195,0 - leal 3(%ebx),%ebp -.byte 102,15,58,34,205,0 - incl %ebx -.byte 102,15,58,34,195,1 - incl %ebp -.byte 102,15,58,34,205,1 - incl %ebx -.byte 102,15,58,34,195,2 - incl %ebp -.byte 102,15,58,34,205,2 - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - movdqu (%edx),%xmm6 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - pshufd $192,%xmm0,%xmm2 - pshufd $128,%xmm0,%xmm3 - cmpl $6,%eax - jb L038ctr32_tail - pxor %xmm6,%xmm7 - shll $4,%ecx - movl $16,%ebx - movdqa %xmm7,32(%esp) - movl %edx,%ebp - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - subl $6,%eax - jmp L039ctr32_loop6 -.align 4,0x90 -L039ctr32_loop6: - pshufd $64,%xmm0,%xmm4 - movdqa 32(%esp),%xmm0 - pshufd $192,%xmm1,%xmm5 - pxor %xmm0,%xmm2 - pshufd $128,%xmm1,%xmm6 - pxor %xmm0,%xmm3 - pshufd $64,%xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor %xmm0,%xmm4 - pxor %xmm0,%xmm5 -.byte 102,15,56,220,209 - pxor %xmm0,%xmm6 - pxor %xmm0,%xmm7 -.byte 102,15,56,220,217 - movups 32(%ebp),%xmm0 - movl %ebx,%ecx -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call L_aesni_encrypt6_enter - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups %xmm2,(%edi) - movdqa 16(%esp),%xmm0 - xorps %xmm1,%xmm4 - movdqa 64(%esp),%xmm1 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - paddd %xmm0,%xmm1 - paddd 48(%esp),%xmm0 - movdqa (%esp),%xmm2 - movups 48(%esi),%xmm3 - movups 64(%esi),%xmm4 - xorps %xmm3,%xmm5 - movups 80(%esi),%xmm3 - leal 96(%esi),%esi - movdqa %xmm0,48(%esp) -.byte 102,15,56,0,194 - xorps %xmm4,%xmm6 - movups %xmm5,48(%edi) - xorps %xmm3,%xmm7 - movdqa %xmm1,64(%esp) -.byte 102,15,56,0,202 - movups %xmm6,64(%edi) - pshufd $192,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - pshufd $128,%xmm0,%xmm3 - subl $6,%eax - jnc L039ctr32_loop6 - addl $6,%eax - jz L040ctr32_ret - movdqu (%ebp),%xmm7 - movl %ebp,%edx - pxor 32(%esp),%xmm7 - movl 240(%ebp),%ecx -L038ctr32_tail: - por %xmm7,%xmm2 - cmpl $2,%eax - jb L041ctr32_one - pshufd $64,%xmm0,%xmm4 - por %xmm7,%xmm3 - je L042ctr32_two - pshufd $192,%xmm1,%xmm5 - por %xmm7,%xmm4 - cmpl $4,%eax - jb L043ctr32_three - pshufd $128,%xmm1,%xmm6 - por %xmm7,%xmm5 - je L044ctr32_four - por %xmm7,%xmm6 - call __aesni_encrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps %xmm1,%xmm2 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm3 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm4 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm5 - movups %xmm2,(%edi) - xorps %xmm1,%xmm6 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L037ctr32_one_shortcut: - movups (%ebx),%xmm2 - movl 240(%edx),%ecx -L041ctr32_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L045enc1_loop_7: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L045enc1_loop_7 -.byte 102,15,56,221,209 - movups (%esi),%xmm6 - xorps %xmm2,%xmm6 - movups %xmm6,(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L042ctr32_two: - call __aesni_encrypt2 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L043ctr32_three: - call __aesni_encrypt3 - movups (%esi),%xmm5 - movups 16(%esi),%xmm6 - xorps %xmm5,%xmm2 - movups 32(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm7,%xmm4 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - jmp L040ctr32_ret -.align 4,0x90 -L044ctr32_four: - call __aesni_encrypt4 - movups (%esi),%xmm6 - movups 16(%esi),%xmm7 - movups 32(%esi),%xmm1 - xorps %xmm6,%xmm2 - movups 48(%esi),%xmm0 - xorps %xmm7,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) -L040ctr32_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movl 80(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_xts_encrypt -.align 4 -_aesni_xts_encrypt: -L_aesni_xts_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L046enc1_loop_8: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L046enc1_loop_8 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - movl 240(%edx),%ecx - andl $-16,%esp - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - movl %edx,%ebp - movl %ecx,%ebx - subl $96,%eax - jc L047xts_enc_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp L048xts_enc_loop6 -.align 4,0x90 -L048xts_enc_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,220,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,220,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,220,225 -.byte 102,15,56,220,233 -.byte 102,15,56,220,241 -.byte 102,15,56,220,249 - call L_aesni_encrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc L048xts_enc_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -L047xts_enc_short: - addl $96,%eax - jz L049xts_enc_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb L050xts_enc_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je L051xts_enc_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb L052xts_enc_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je L053xts_enc_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call __aesni_encrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp L054xts_enc_done -.align 4,0x90 -L050xts_enc_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L055enc1_loop_9: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L055enc1_loop_9 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L051xts_enc_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call __aesni_encrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L052xts_enc_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call __aesni_encrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L053xts_enc_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call __aesni_encrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L054xts_enc_done -.align 4,0x90 -L049xts_enc_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz L056xts_enc_ret - movdqa %xmm1,%xmm5 - movl %eax,112(%esp) - jmp L057xts_enc_steal -.align 4,0x90 -L054xts_enc_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz L056xts_enc_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm5 - paddq %xmm1,%xmm1 - pand 96(%esp),%xmm5 - pxor %xmm1,%xmm5 -L057xts_enc_steal: - movzbl (%esi),%ecx - movzbl -16(%edi),%edx - leal 1(%esi),%esi - movb %cl,-16(%edi) - movb %dl,(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz L057xts_enc_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups -16(%edi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L058enc1_loop_10: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L058enc1_loop_10 -.byte 102,15,56,221,209 - xorps %xmm5,%xmm2 - movups %xmm2,-16(%edi) -L056xts_enc_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_xts_decrypt -.align 4 -_aesni_xts_decrypt: -L_aesni_xts_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 36(%esp),%edx - movl 40(%esp),%esi - movl 240(%edx),%ecx - movups (%esi),%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L059enc1_loop_11: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L059enc1_loop_11 -.byte 102,15,56,221,209 - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - movl %esp,%ebp - subl $120,%esp - andl $-16,%esp - xorl %ebx,%ebx - testl $15,%eax - setnz %bl - shll $4,%ebx - subl %ebx,%eax - movl $135,96(%esp) - movl $0,100(%esp) - movl $1,104(%esp) - movl $0,108(%esp) - movl %eax,112(%esp) - movl %ebp,116(%esp) - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ecx,%ebx - movdqa %xmm2,%xmm1 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - pcmpgtd %xmm1,%xmm0 - andl $-16,%eax - subl $96,%eax - jc L060xts_dec_short - shll $4,%ecx - movl $16,%ebx - subl %ecx,%ebx - leal 32(%edx,%ecx,1),%edx - jmp L061xts_dec_loop6 -.align 4,0x90 -L061xts_dec_loop6: - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,16(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,32(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,64(%esp) - paddq %xmm1,%xmm1 - movups (%ebp),%xmm0 - pand %xmm3,%xmm7 - movups (%esi),%xmm2 - pxor %xmm1,%xmm7 - movl %ebx,%ecx - movdqu 16(%esi),%xmm3 - xorps %xmm0,%xmm2 - movdqu 32(%esi),%xmm4 - pxor %xmm0,%xmm3 - movdqu 48(%esi),%xmm5 - pxor %xmm0,%xmm4 - movdqu 64(%esi),%xmm6 - pxor %xmm0,%xmm5 - movdqu 80(%esi),%xmm1 - pxor %xmm0,%xmm6 - leal 96(%esi),%esi - pxor (%esp),%xmm2 - movdqa %xmm7,80(%esp) - pxor %xmm1,%xmm7 - movups 16(%ebp),%xmm1 - pxor 16(%esp),%xmm3 - pxor 32(%esp),%xmm4 -.byte 102,15,56,222,209 - pxor 48(%esp),%xmm5 - pxor 64(%esp),%xmm6 -.byte 102,15,56,222,217 - pxor %xmm0,%xmm7 - movups 32(%ebp),%xmm0 -.byte 102,15,56,222,225 -.byte 102,15,56,222,233 -.byte 102,15,56,222,241 -.byte 102,15,56,222,249 - call L_aesni_decrypt6_enter - movdqa 80(%esp),%xmm1 - pxor %xmm0,%xmm0 - xorps (%esp),%xmm2 - pcmpgtd %xmm1,%xmm0 - xorps 16(%esp),%xmm3 - movups %xmm2,(%edi) - xorps 32(%esp),%xmm4 - movups %xmm3,16(%edi) - xorps 48(%esp),%xmm5 - movups %xmm4,32(%edi) - xorps 64(%esp),%xmm6 - movups %xmm5,48(%edi) - xorps %xmm1,%xmm7 - movups %xmm6,64(%edi) - pshufd $19,%xmm0,%xmm2 - movups %xmm7,80(%edi) - leal 96(%edi),%edi - movdqa 96(%esp),%xmm3 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - subl $96,%eax - jnc L061xts_dec_loop6 - movl 240(%ebp),%ecx - movl %ebp,%edx - movl %ecx,%ebx -L060xts_dec_short: - addl $96,%eax - jz L062xts_dec_done6x - movdqa %xmm1,%xmm5 - cmpl $32,%eax - jb L063xts_dec_one - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - je L064xts_dec_two - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - cmpl $64,%eax - jb L065xts_dec_three - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa %xmm1,%xmm7 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 - movdqa %xmm5,(%esp) - movdqa %xmm6,16(%esp) - je L066xts_dec_four - movdqa %xmm7,32(%esp) - pshufd $19,%xmm0,%xmm7 - movdqa %xmm1,48(%esp) - paddq %xmm1,%xmm1 - pand %xmm3,%xmm7 - pxor %xmm1,%xmm7 - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - pxor (%esp),%xmm2 - movdqu 48(%esi),%xmm5 - pxor 16(%esp),%xmm3 - movdqu 64(%esi),%xmm6 - pxor 32(%esp),%xmm4 - leal 80(%esi),%esi - pxor 48(%esp),%xmm5 - movdqa %xmm7,64(%esp) - pxor %xmm7,%xmm6 - call __aesni_decrypt6 - movaps 64(%esp),%xmm1 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps 32(%esp),%xmm4 - movups %xmm2,(%edi) - xorps 48(%esp),%xmm5 - movups %xmm3,16(%edi) - xorps %xmm1,%xmm6 - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - movups %xmm6,64(%edi) - leal 80(%edi),%edi - jmp L067xts_dec_done -.align 4,0x90 -L063xts_dec_one: - movups (%esi),%xmm2 - leal 16(%esi),%esi - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L068dec1_loop_12: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L068dec1_loop_12 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) - leal 16(%edi),%edi - movdqa %xmm5,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L064xts_dec_two: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - leal 32(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - call __aesni_decrypt2 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 32(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L065xts_dec_three: - movaps %xmm1,%xmm7 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - leal 48(%esi),%esi - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - call __aesni_decrypt3 - xorps %xmm5,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - leal 48(%edi),%edi - movdqa %xmm7,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L066xts_dec_four: - movaps %xmm1,%xmm6 - movups (%esi),%xmm2 - movups 16(%esi),%xmm3 - movups 32(%esi),%xmm4 - xorps (%esp),%xmm2 - movups 48(%esi),%xmm5 - leal 64(%esi),%esi - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - xorps %xmm6,%xmm5 - call __aesni_decrypt4 - xorps (%esp),%xmm2 - xorps 16(%esp),%xmm3 - xorps %xmm7,%xmm4 - movups %xmm2,(%edi) - xorps %xmm6,%xmm5 - movups %xmm3,16(%edi) - movups %xmm4,32(%edi) - movups %xmm5,48(%edi) - leal 64(%edi),%edi - movdqa %xmm6,%xmm1 - jmp L067xts_dec_done -.align 4,0x90 -L062xts_dec_done6x: - movl 112(%esp),%eax - andl $15,%eax - jz L069xts_dec_ret - movl %eax,112(%esp) - jmp L070xts_dec_only_one_more -.align 4,0x90 -L067xts_dec_done: - movl 112(%esp),%eax - pxor %xmm0,%xmm0 - andl $15,%eax - jz L069xts_dec_ret - pcmpgtd %xmm1,%xmm0 - movl %eax,112(%esp) - pshufd $19,%xmm0,%xmm2 - pxor %xmm0,%xmm0 - movdqa 96(%esp),%xmm3 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm2 - pcmpgtd %xmm1,%xmm0 - pxor %xmm2,%xmm1 -L070xts_dec_only_one_more: - pshufd $19,%xmm0,%xmm5 - movdqa %xmm1,%xmm6 - paddq %xmm1,%xmm1 - pand %xmm3,%xmm5 - pxor %xmm1,%xmm5 - movl %ebp,%edx - movl %ebx,%ecx - movups (%esi),%xmm2 - xorps %xmm5,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L071dec1_loop_13: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L071dec1_loop_13 -.byte 102,15,56,223,209 - xorps %xmm5,%xmm2 - movups %xmm2,(%edi) -L072xts_dec_steal: - movzbl 16(%esi),%ecx - movzbl (%edi),%edx - leal 1(%esi),%esi - movb %cl,(%edi) - movb %dl,16(%edi) - leal 1(%edi),%edi - subl $1,%eax - jnz L072xts_dec_steal - subl 112(%esp),%edi - movl %ebp,%edx - movl %ebx,%ecx - movups (%edi),%xmm2 - xorps %xmm6,%xmm2 - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L073dec1_loop_14: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L073dec1_loop_14 -.byte 102,15,56,223,209 - xorps %xmm6,%xmm2 - movups %xmm2,(%edi) -L069xts_dec_ret: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - movdqa %xmm0,(%esp) - pxor %xmm3,%xmm3 - movdqa %xmm0,16(%esp) - pxor %xmm4,%xmm4 - movdqa %xmm0,32(%esp) - pxor %xmm5,%xmm5 - movdqa %xmm0,48(%esp) - pxor %xmm6,%xmm6 - movdqa %xmm0,64(%esp) - pxor %xmm7,%xmm7 - movdqa %xmm0,80(%esp) - movl 116(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _aesni_cbc_encrypt -.align 4 -_aesni_cbc_encrypt: -L_aesni_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl %esp,%ebx - movl 24(%esp),%edi - subl $24,%ebx - movl 28(%esp),%eax - andl $-16,%ebx - movl 32(%esp),%edx - movl 36(%esp),%ebp - testl %eax,%eax - jz L074cbc_abort - cmpl $0,40(%esp) - xchgl %esp,%ebx - movups (%ebp),%xmm7 - movl 240(%edx),%ecx - movl %edx,%ebp - movl %ebx,16(%esp) - movl %ecx,%ebx - je L075cbc_decrypt - movaps %xmm7,%xmm2 - cmpl $16,%eax - jb L076cbc_enc_tail - subl $16,%eax - jmp L077cbc_enc_loop -.align 4,0x90 -L077cbc_enc_loop: - movups (%esi),%xmm7 - leal 16(%esi),%esi - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - xorps %xmm0,%xmm7 - leal 32(%edx),%edx - xorps %xmm7,%xmm2 -L078enc1_loop_15: -.byte 102,15,56,220,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L078enc1_loop_15 -.byte 102,15,56,221,209 - movl %ebx,%ecx - movl %ebp,%edx - movups %xmm2,(%edi) - leal 16(%edi),%edi - subl $16,%eax - jnc L077cbc_enc_loop - addl $16,%eax - jnz L076cbc_enc_tail - movaps %xmm2,%xmm7 - pxor %xmm2,%xmm2 - jmp L079cbc_ret -L076cbc_enc_tail: - movl %eax,%ecx -.long 2767451785 - movl $16,%ecx - subl %eax,%ecx - xorl %eax,%eax -.long 2868115081 - leal -16(%edi),%edi - movl %ebx,%ecx - movl %edi,%esi - movl %ebp,%edx - jmp L077cbc_enc_loop -.align 4,0x90 -L075cbc_decrypt: - cmpl $80,%eax - jbe L080cbc_dec_tail - movaps %xmm7,(%esp) - subl $80,%eax - jmp L081cbc_dec_loop6_enter -.align 4,0x90 -L082cbc_dec_loop6: - movaps %xmm0,(%esp) - movups %xmm7,(%edi) - leal 16(%edi),%edi -L081cbc_dec_loop6_enter: - movdqu (%esi),%xmm2 - movdqu 16(%esi),%xmm3 - movdqu 32(%esi),%xmm4 - movdqu 48(%esi),%xmm5 - movdqu 64(%esi),%xmm6 - movdqu 80(%esi),%xmm7 - call __aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm1 - xorps %xmm0,%xmm6 - movups 80(%esi),%xmm0 - xorps %xmm1,%xmm7 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - leal 96(%esi),%esi - movups %xmm4,32(%edi) - movl %ebx,%ecx - movups %xmm5,48(%edi) - movl %ebp,%edx - movups %xmm6,64(%edi) - leal 80(%edi),%edi - subl $96,%eax - ja L082cbc_dec_loop6 - movaps %xmm7,%xmm2 - movaps %xmm0,%xmm7 - addl $80,%eax - jle L083cbc_dec_clear_tail_collected - movups %xmm2,(%edi) - leal 16(%edi),%edi -L080cbc_dec_tail: - movups (%esi),%xmm2 - movaps %xmm2,%xmm6 - cmpl $16,%eax - jbe L084cbc_dec_one - movups 16(%esi),%xmm3 - movaps %xmm3,%xmm5 - cmpl $32,%eax - jbe L085cbc_dec_two - movups 32(%esi),%xmm4 - cmpl $48,%eax - jbe L086cbc_dec_three - movups 48(%esi),%xmm5 - cmpl $64,%eax - jbe L087cbc_dec_four - movups 64(%esi),%xmm6 - movaps %xmm7,(%esp) - movups (%esi),%xmm2 - xorps %xmm7,%xmm7 - call __aesni_decrypt6 - movups (%esi),%xmm1 - movups 16(%esi),%xmm0 - xorps (%esp),%xmm2 - xorps %xmm1,%xmm3 - movups 32(%esi),%xmm1 - xorps %xmm0,%xmm4 - movups 48(%esi),%xmm0 - xorps %xmm1,%xmm5 - movups 64(%esi),%xmm7 - xorps %xmm0,%xmm6 - movups %xmm2,(%edi) - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - movups %xmm5,48(%edi) - pxor %xmm5,%xmm5 - leal 64(%edi),%edi - movaps %xmm6,%xmm2 - pxor %xmm6,%xmm6 - subl $80,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L084cbc_dec_one: - movups (%edx),%xmm0 - movups 16(%edx),%xmm1 - leal 32(%edx),%edx - xorps %xmm0,%xmm2 -L089dec1_loop_16: -.byte 102,15,56,222,209 - decl %ecx - movups (%edx),%xmm1 - leal 16(%edx),%edx - jnz L089dec1_loop_16 -.byte 102,15,56,223,209 - xorps %xmm7,%xmm2 - movaps %xmm6,%xmm7 - subl $16,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L085cbc_dec_two: - call __aesni_decrypt2 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - movaps %xmm3,%xmm2 - pxor %xmm3,%xmm3 - leal 16(%edi),%edi - movaps %xmm5,%xmm7 - subl $32,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L086cbc_dec_three: - call __aesni_decrypt3 - xorps %xmm7,%xmm2 - xorps %xmm6,%xmm3 - xorps %xmm5,%xmm4 - movups %xmm2,(%edi) - movaps %xmm4,%xmm2 - pxor %xmm4,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - leal 32(%edi),%edi - movups 32(%esi),%xmm7 - subl $48,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L087cbc_dec_four: - call __aesni_decrypt4 - movups 16(%esi),%xmm1 - movups 32(%esi),%xmm0 - xorps %xmm7,%xmm2 - movups 48(%esi),%xmm7 - xorps %xmm6,%xmm3 - movups %xmm2,(%edi) - xorps %xmm1,%xmm4 - movups %xmm3,16(%edi) - pxor %xmm3,%xmm3 - xorps %xmm0,%xmm5 - movups %xmm4,32(%edi) - pxor %xmm4,%xmm4 - leal 48(%edi),%edi - movaps %xmm5,%xmm2 - pxor %xmm5,%xmm5 - subl $64,%eax - jmp L088cbc_dec_tail_collected -.align 4,0x90 -L083cbc_dec_clear_tail_collected: - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 -L088cbc_dec_tail_collected: - andl $15,%eax - jnz L090cbc_dec_tail_partial - movups %xmm2,(%edi) - pxor %xmm0,%xmm0 - jmp L079cbc_ret -.align 4,0x90 -L090cbc_dec_tail_partial: - movaps %xmm2,(%esp) - pxor %xmm0,%xmm0 - movl $16,%ecx - movl %esp,%esi - subl %eax,%ecx -.long 2767451785 - movdqa %xmm2,(%esp) -L079cbc_ret: - movl 16(%esp),%esp - movl 36(%esp),%ebp - pxor %xmm2,%xmm2 - pxor %xmm1,%xmm1 - movups %xmm7,(%ebp) - pxor %xmm7,%xmm7 -L074cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__aesni_set_encrypt_key: - pushl %ebp - pushl %ebx - testl %eax,%eax - jz L091bad_pointer - testl %edx,%edx - jz L091bad_pointer - call L092pic -L092pic: - popl %ebx - leal Lkey_const-L092pic(%ebx),%ebx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-Lkey_const(%ebx),%ebp - movups (%eax),%xmm0 - xorps %xmm4,%xmm4 - movl 4(%ebp),%ebp - leal 16(%edx),%edx - andl $268437504,%ebp - cmpl $256,%ecx - je L09314rounds - cmpl $192,%ecx - je L09412rounds - cmpl $128,%ecx - jne L095bad_keybits -.align 4,0x90 -L09610rounds: - cmpl $268435456,%ebp - je L09710rounds_alt - movl $9,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,200,1 - call L098key_128_cold -.byte 102,15,58,223,200,2 - call L099key_128 -.byte 102,15,58,223,200,4 - call L099key_128 -.byte 102,15,58,223,200,8 - call L099key_128 -.byte 102,15,58,223,200,16 - call L099key_128 -.byte 102,15,58,223,200,32 - call L099key_128 -.byte 102,15,58,223,200,64 - call L099key_128 -.byte 102,15,58,223,200,128 - call L099key_128 -.byte 102,15,58,223,200,27 - call L099key_128 -.byte 102,15,58,223,200,54 - call L099key_128 - movups %xmm0,(%edx) - movl %ecx,80(%edx) - jmp L100good_key -.align 4,0x90 -L099key_128: - movups %xmm0,(%edx) - leal 16(%edx),%edx -L098key_128_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 4,0x90 -L09710rounds_alt: - movdqa (%ebx),%xmm5 - movl $8,%ecx - movdqa 32(%ebx),%xmm4 - movdqa %xmm0,%xmm2 - movdqu %xmm0,-16(%edx) -L101loop_key128: -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - leal 16(%edx),%edx - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,-16(%edx) - movdqa %xmm0,%xmm2 - decl %ecx - jnz L101loop_key128 - movdqa 48(%ebx),%xmm4 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - pslld $1,%xmm4 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - movdqa %xmm0,%xmm2 -.byte 102,15,56,0,197 -.byte 102,15,56,221,196 - movdqa %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm2,%xmm3 - pslldq $4,%xmm2 - pxor %xmm3,%xmm2 - pxor %xmm2,%xmm0 - movdqu %xmm0,16(%edx) - movl $9,%ecx - movl %ecx,96(%edx) - jmp L100good_key -.align 4,0x90 -L09412rounds: - movq 16(%eax),%xmm2 - cmpl $268435456,%ebp - je L10212rounds_alt - movl $11,%ecx - movups %xmm0,-16(%edx) -.byte 102,15,58,223,202,1 - call L103key_192a_cold -.byte 102,15,58,223,202,2 - call L104key_192b -.byte 102,15,58,223,202,4 - call L105key_192a -.byte 102,15,58,223,202,8 - call L104key_192b -.byte 102,15,58,223,202,16 - call L105key_192a -.byte 102,15,58,223,202,32 - call L104key_192b -.byte 102,15,58,223,202,64 - call L105key_192a -.byte 102,15,58,223,202,128 - call L104key_192b - movups %xmm0,(%edx) - movl %ecx,48(%edx) - jmp L100good_key -.align 4,0x90 -L105key_192a: - movups %xmm0,(%edx) - leal 16(%edx),%edx -.align 4,0x90 -L103key_192a_cold: - movaps %xmm2,%xmm5 -L106key_192b_warm: - shufps $16,%xmm0,%xmm4 - movdqa %xmm2,%xmm3 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - pslldq $4,%xmm3 - xorps %xmm4,%xmm0 - pshufd $85,%xmm1,%xmm1 - pxor %xmm3,%xmm2 - pxor %xmm1,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm3,%xmm2 - ret -.align 4,0x90 -L104key_192b: - movaps %xmm0,%xmm3 - shufps $68,%xmm0,%xmm5 - movups %xmm5,(%edx) - shufps $78,%xmm2,%xmm3 - movups %xmm3,16(%edx) - leal 32(%edx),%edx - jmp L106key_192b_warm -.align 4,0x90 -L10212rounds_alt: - movdqa 16(%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $8,%ecx - movdqu %xmm0,-16(%edx) -L107loop_key192: - movq %xmm2,(%edx) - movdqa %xmm2,%xmm1 -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - pslld $1,%xmm4 - leal 24(%edx),%edx - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pshufd $255,%xmm0,%xmm3 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pxor %xmm2,%xmm0 - pxor %xmm3,%xmm2 - movdqu %xmm0,-16(%edx) - decl %ecx - jnz L107loop_key192 - movl $11,%ecx - movl %ecx,32(%edx) - jmp L100good_key -.align 4,0x90 -L09314rounds: - movups 16(%eax),%xmm2 - leal 16(%edx),%edx - cmpl $268435456,%ebp - je L10814rounds_alt - movl $13,%ecx - movups %xmm0,-32(%edx) - movups %xmm2,-16(%edx) -.byte 102,15,58,223,202,1 - call L109key_256a_cold -.byte 102,15,58,223,200,1 - call L110key_256b -.byte 102,15,58,223,202,2 - call L111key_256a -.byte 102,15,58,223,200,2 - call L110key_256b -.byte 102,15,58,223,202,4 - call L111key_256a -.byte 102,15,58,223,200,4 - call L110key_256b -.byte 102,15,58,223,202,8 - call L111key_256a -.byte 102,15,58,223,200,8 - call L110key_256b -.byte 102,15,58,223,202,16 - call L111key_256a -.byte 102,15,58,223,200,16 - call L110key_256b -.byte 102,15,58,223,202,32 - call L111key_256a -.byte 102,15,58,223,200,32 - call L110key_256b -.byte 102,15,58,223,202,64 - call L111key_256a - movups %xmm0,(%edx) - movl %ecx,16(%edx) - xorl %eax,%eax - jmp L100good_key -.align 4,0x90 -L111key_256a: - movups %xmm2,(%edx) - leal 16(%edx),%edx -L109key_256a_cold: - shufps $16,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $140,%xmm0,%xmm4 - xorps %xmm4,%xmm0 - shufps $255,%xmm1,%xmm1 - xorps %xmm1,%xmm0 - ret -.align 4,0x90 -L110key_256b: - movups %xmm0,(%edx) - leal 16(%edx),%edx - shufps $16,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $140,%xmm2,%xmm4 - xorps %xmm4,%xmm2 - shufps $170,%xmm1,%xmm1 - xorps %xmm1,%xmm2 - ret -.align 4,0x90 -L10814rounds_alt: - movdqa (%ebx),%xmm5 - movdqa 32(%ebx),%xmm4 - movl $7,%ecx - movdqu %xmm0,-32(%edx) - movdqa %xmm2,%xmm1 - movdqu %xmm2,-16(%edx) -L112loop_key256: -.byte 102,15,56,0,213 -.byte 102,15,56,221,212 - movdqa %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm0,%xmm3 - pslldq $4,%xmm0 - pxor %xmm3,%xmm0 - pslld $1,%xmm4 - pxor %xmm2,%xmm0 - movdqu %xmm0,(%edx) - decl %ecx - jz L113done_key256 - pshufd $255,%xmm0,%xmm2 - pxor %xmm3,%xmm3 -.byte 102,15,56,221,211 - movdqa %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm1,%xmm3 - pslldq $4,%xmm1 - pxor %xmm3,%xmm1 - pxor %xmm1,%xmm2 - movdqu %xmm2,16(%edx) - leal 32(%edx),%edx - movdqa %xmm2,%xmm1 - jmp L112loop_key256 -L113done_key256: - movl $13,%ecx - movl %ecx,16(%edx) -L100good_key: - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - xorl %eax,%eax - popl %ebx - popl %ebp - ret -.align 2,0x90 -L091bad_pointer: - movl $-1,%eax - popl %ebx - popl %ebp - ret -.align 2,0x90 -L095bad_keybits: - pxor %xmm0,%xmm0 - movl $-2,%eax - popl %ebx - popl %ebp - ret -.globl _aesni_set_encrypt_key -.align 4 -_aesni_set_encrypt_key: -L_aesni_set_encrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call __aesni_set_encrypt_key - ret -.globl _aesni_set_decrypt_key -.align 4 -_aesni_set_decrypt_key: -L_aesni_set_decrypt_key_begin: - movl 4(%esp),%eax - movl 8(%esp),%ecx - movl 12(%esp),%edx - call __aesni_set_encrypt_key - movl 12(%esp),%edx - shll $4,%ecx - testl %eax,%eax - jnz L114dec_key_ret - leal 16(%edx,%ecx,1),%eax - movups (%edx),%xmm0 - movups (%eax),%xmm1 - movups %xmm0,(%eax) - movups %xmm1,(%edx) - leal 16(%edx),%edx - leal -16(%eax),%eax -L115dec_key_inverse: - movups (%edx),%xmm0 - movups (%eax),%xmm1 -.byte 102,15,56,219,192 -.byte 102,15,56,219,201 - leal 16(%edx),%edx - leal -16(%eax),%eax - movups %xmm0,16(%eax) - movups %xmm1,-16(%edx) - cmpl %edx,%eax - ja L115dec_key_inverse - movups (%edx),%xmm0 -.byte 102,15,56,219,192 - movups %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - xorl %eax,%eax -L114dec_key_ret: - ret -.align 6,0x90 -Lkey_const: -.long 202313229,202313229,202313229,202313229 -.long 67569157,67569157,67569157,67569157 -.long 1,1,1,1 -.long 27,27,27,27 -.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -.byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/vpaes-x86.s b/deps/openssl/asm_obsolete/x86-macosx-gas/aes/vpaes-x86.s deleted file mode 100644 index 81f7af82388417..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/aes/vpaes-x86.s +++ /dev/null @@ -1,635 +0,0 @@ -.file "vpaes-x86.s" -.text -.align 6,0x90 -L_vpaes_consts: -.long 218628480,235210255,168496130,67568393 -.long 252381056,17041926,33884169,51187212 -.long 252645135,252645135,252645135,252645135 -.long 1512730624,3266504856,1377990664,3401244816 -.long 830229760,1275146365,2969422977,3447763452 -.long 3411033600,2979783055,338359620,2782886510 -.long 4209124096,907596821,221174255,1006095553 -.long 191964160,3799684038,3164090317,1589111125 -.long 182528256,1777043520,2877432650,3265356744 -.long 1874708224,3503451415,3305285752,363511674 -.long 1606117888,3487855781,1093350906,2384367825 -.long 197121,67569157,134941193,202313229 -.long 67569157,134941193,202313229,197121 -.long 134941193,202313229,197121,67569157 -.long 202313229,197121,67569157,134941193 -.long 33619971,100992007,168364043,235736079 -.long 235736079,33619971,100992007,168364043 -.long 168364043,235736079,33619971,100992007 -.long 100992007,168364043,235736079,33619971 -.long 50462976,117835012,185207048,252579084 -.long 252314880,51251460,117574920,184942860 -.long 184682752,252054788,50987272,118359308 -.long 118099200,185467140,251790600,50727180 -.long 2946363062,528716217,1300004225,1881839624 -.long 1532713819,1532713819,1532713819,1532713819 -.long 3602276352,4288629033,3737020424,4153884961 -.long 1354558464,32357713,2958822624,3775749553 -.long 1201988352,132424512,1572796698,503232858 -.long 2213177600,1597421020,4103937655,675398315 -.long 2749646592,4273543773,1511898873,121693092 -.long 3040248576,1103263732,2871565598,1608280554 -.long 2236667136,2588920351,482954393,64377734 -.long 3069987328,291237287,2117370568,3650299247 -.long 533321216,3573750986,2572112006,1401264716 -.long 1339849704,2721158661,548607111,3445553514 -.long 2128193280,3054596040,2183486460,1257083700 -.long 655635200,1165381986,3923443150,2344132524 -.long 190078720,256924420,290342170,357187870 -.long 1610966272,2263057382,4103205268,309794674 -.long 2592527872,2233205587,1335446729,3402964816 -.long 3973531904,3225098121,3002836325,1918774430 -.long 3870401024,2102906079,2284471353,4117666579 -.long 617007872,1021508343,366931923,691083277 -.long 2528395776,3491914898,2968704004,1613121270 -.long 3445188352,3247741094,844474987,4093578302 -.long 651481088,1190302358,1689581232,574775300 -.long 4289380608,206939853,2555985458,2489840491 -.long 2130264064,327674451,3566485037,3349835193 -.long 2470714624,316102159,3636825756,3393945945 -.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -.byte 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -.byte 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -.byte 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -.byte 118,101,114,115,105,116,121,41,0 -.align 6,0x90 -.align 4 -__vpaes_preheat: - addl (%esp),%ebp - movdqa -48(%ebp),%xmm7 - movdqa -16(%ebp),%xmm6 - ret -.align 4 -__vpaes_encrypt_core: - movl $16,%ecx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa (%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - movdqu (%edx),%xmm5 -.byte 102,15,56,0,208 - movdqa 16(%ebp),%xmm0 - pxor %xmm5,%xmm2 - psrld $4,%xmm1 - addl $16,%edx -.byte 102,15,56,0,193 - leal 192(%ebp),%ebx - pxor %xmm2,%xmm0 - jmp L000enc_entry -.align 4,0x90 -L001enc_loop: - movdqa 32(%ebp),%xmm4 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,226 -.byte 102,15,56,0,195 - pxor %xmm5,%xmm4 - movdqa 64(%ebp),%xmm5 - pxor %xmm4,%xmm0 - movdqa -64(%ebx,%ecx,1),%xmm1 -.byte 102,15,56,0,234 - movdqa 80(%ebp),%xmm2 - movdqa (%ebx,%ecx,1),%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm0,%xmm3 - pxor %xmm5,%xmm2 -.byte 102,15,56,0,193 - addl $16,%edx - pxor %xmm2,%xmm0 -.byte 102,15,56,0,220 - addl $16,%ecx - pxor %xmm0,%xmm3 -.byte 102,15,56,0,193 - andl $48,%ecx - subl $1,%eax - pxor %xmm3,%xmm0 -L000enc_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm5 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm6,%xmm0 -.byte 102,15,56,0,232 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm5,%xmm3 -.byte 102,15,56,0,224 - movdqa %xmm7,%xmm2 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm5 - pxor %xmm1,%xmm3 - jnz L001enc_loop - movdqa 96(%ebp),%xmm4 - movdqa 112(%ebp),%xmm0 -.byte 102,15,56,0,226 - pxor %xmm5,%xmm4 -.byte 102,15,56,0,195 - movdqa 64(%ebx,%ecx,1),%xmm1 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,193 - ret -.align 4 -__vpaes_decrypt_core: - leal 608(%ebp),%ebx - movl 240(%edx),%eax - movdqa %xmm6,%xmm1 - movdqa -64(%ebx),%xmm2 - pandn %xmm0,%xmm1 - movl %eax,%ecx - psrld $4,%xmm1 - movdqu (%edx),%xmm5 - shll $4,%ecx - pand %xmm6,%xmm0 -.byte 102,15,56,0,208 - movdqa -48(%ebx),%xmm0 - xorl $48,%ecx -.byte 102,15,56,0,193 - andl $48,%ecx - pxor %xmm5,%xmm2 - movdqa 176(%ebp),%xmm5 - pxor %xmm2,%xmm0 - addl $16,%edx - leal -352(%ebx,%ecx,1),%ecx - jmp L002dec_entry -.align 4,0x90 -L003dec_loop: - movdqa -32(%ebx),%xmm4 - movdqa -16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa (%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 16(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 32(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 48(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - movdqa 64(%ebx),%xmm4 - pxor %xmm1,%xmm0 - movdqa 80(%ebx),%xmm1 -.byte 102,15,56,0,226 -.byte 102,15,56,0,197 -.byte 102,15,56,0,203 - pxor %xmm4,%xmm0 - addl $16,%edx -.byte 102,15,58,15,237,12 - pxor %xmm1,%xmm0 - subl $1,%eax -L002dec_entry: - movdqa %xmm6,%xmm1 - movdqa -32(%ebp),%xmm2 - pandn %xmm0,%xmm1 - pand %xmm6,%xmm0 - psrld $4,%xmm1 -.byte 102,15,56,0,208 - movdqa %xmm7,%xmm3 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,217 - movdqa %xmm7,%xmm4 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm7,%xmm2 -.byte 102,15,56,0,211 - movdqa %xmm7,%xmm3 - pxor %xmm0,%xmm2 -.byte 102,15,56,0,220 - movdqu (%edx),%xmm0 - pxor %xmm1,%xmm3 - jnz L003dec_loop - movdqa 96(%ebx),%xmm4 -.byte 102,15,56,0,226 - pxor %xmm0,%xmm4 - movdqa 112(%ebx),%xmm0 - movdqa (%ecx),%xmm2 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 -.byte 102,15,56,0,194 - ret -.align 4 -__vpaes_schedule_core: - addl (%esp),%ebp - movdqu (%esi),%xmm0 - movdqa 320(%ebp),%xmm2 - movdqa %xmm0,%xmm3 - leal (%ebp),%ebx - movdqa %xmm2,4(%esp) - call __vpaes_schedule_transform - movdqa %xmm0,%xmm7 - testl %edi,%edi - jnz L004schedule_am_decrypting - movdqu %xmm0,(%edx) - jmp L005schedule_go -L004schedule_am_decrypting: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - movdqu %xmm3,(%edx) - xorl $48,%ecx -L005schedule_go: - cmpl $192,%eax - ja L006schedule_256 - je L007schedule_192 -L008schedule_128: - movl $10,%eax -L009loop_schedule_128: - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - jmp L009loop_schedule_128 -.align 4,0x90 -L007schedule_192: - movdqu 8(%esi),%xmm0 - call __vpaes_schedule_transform - movdqa %xmm0,%xmm6 - pxor %xmm4,%xmm4 - movhlps %xmm4,%xmm6 - movl $4,%eax -L011loop_schedule_192: - call __vpaes_schedule_round -.byte 102,15,58,15,198,8 - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - call __vpaes_schedule_mangle - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - jmp L011loop_schedule_192 -.align 4,0x90 -L006schedule_256: - movdqu 16(%esi),%xmm0 - call __vpaes_schedule_transform - movl $7,%eax -L012loop_schedule_256: - call __vpaes_schedule_mangle - movdqa %xmm0,%xmm6 - call __vpaes_schedule_round - decl %eax - jz L010schedule_mangle_last - call __vpaes_schedule_mangle - pshufd $255,%xmm0,%xmm0 - movdqa %xmm7,20(%esp) - movdqa %xmm6,%xmm7 - call L_vpaes_schedule_low_round - movdqa 20(%esp),%xmm7 - jmp L012loop_schedule_256 -.align 4,0x90 -L010schedule_mangle_last: - leal 384(%ebp),%ebx - testl %edi,%edi - jnz L013schedule_mangle_last_dec - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,193 - leal 352(%ebp),%ebx - addl $32,%edx -L013schedule_mangle_last_dec: - addl $-16,%edx - pxor 336(%ebp),%xmm0 - call __vpaes_schedule_transform - movdqu %xmm0,(%edx) - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 - ret -.align 4 -__vpaes_schedule_192_smear: - pshufd $128,%xmm6,%xmm1 - pshufd $254,%xmm7,%xmm0 - pxor %xmm1,%xmm6 - pxor %xmm1,%xmm1 - pxor %xmm0,%xmm6 - movdqa %xmm6,%xmm0 - movhlps %xmm1,%xmm6 - ret -.align 4 -__vpaes_schedule_round: - movdqa 8(%esp),%xmm2 - pxor %xmm1,%xmm1 -.byte 102,15,58,15,202,15 -.byte 102,15,58,15,210,15 - pxor %xmm1,%xmm7 - pshufd $255,%xmm0,%xmm0 -.byte 102,15,58,15,192,1 - movdqa %xmm2,8(%esp) -L_vpaes_schedule_low_round: - movdqa %xmm7,%xmm1 - pslldq $4,%xmm7 - pxor %xmm1,%xmm7 - movdqa %xmm7,%xmm1 - pslldq $8,%xmm7 - pxor %xmm1,%xmm7 - pxor 336(%ebp),%xmm7 - movdqa -16(%ebp),%xmm4 - movdqa -48(%ebp),%xmm5 - movdqa %xmm4,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm4,%xmm0 - movdqa -32(%ebp),%xmm2 -.byte 102,15,56,0,208 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - movdqa %xmm5,%xmm4 -.byte 102,15,56,0,224 - pxor %xmm2,%xmm4 - movdqa %xmm5,%xmm2 -.byte 102,15,56,0,211 - pxor %xmm0,%xmm2 - movdqa %xmm5,%xmm3 -.byte 102,15,56,0,220 - pxor %xmm1,%xmm3 - movdqa 32(%ebp),%xmm4 -.byte 102,15,56,0,226 - movdqa 48(%ebp),%xmm0 -.byte 102,15,56,0,195 - pxor %xmm4,%xmm0 - pxor %xmm7,%xmm0 - movdqa %xmm0,%xmm7 - ret -.align 4 -__vpaes_schedule_transform: - movdqa -16(%ebp),%xmm2 - movdqa %xmm2,%xmm1 - pandn %xmm0,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm0 - movdqa (%ebx),%xmm2 -.byte 102,15,56,0,208 - movdqa 16(%ebx),%xmm0 -.byte 102,15,56,0,193 - pxor %xmm2,%xmm0 - ret -.align 4 -__vpaes_schedule_mangle: - movdqa %xmm0,%xmm4 - movdqa 128(%ebp),%xmm5 - testl %edi,%edi - jnz L014schedule_mangle_dec - addl $16,%edx - pxor 336(%ebp),%xmm4 -.byte 102,15,56,0,229 - movdqa %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 -.byte 102,15,56,0,229 - pxor %xmm4,%xmm3 - jmp L015schedule_mangle_both -.align 4,0x90 -L014schedule_mangle_dec: - movdqa -16(%ebp),%xmm2 - leal 416(%ebp),%esi - movdqa %xmm2,%xmm1 - pandn %xmm4,%xmm1 - psrld $4,%xmm1 - pand %xmm2,%xmm4 - movdqa (%esi),%xmm2 -.byte 102,15,56,0,212 - movdqa 16(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 32(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 48(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 64(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 80(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 -.byte 102,15,56,0,221 - movdqa 96(%esi),%xmm2 -.byte 102,15,56,0,212 - pxor %xmm3,%xmm2 - movdqa 112(%esi),%xmm3 -.byte 102,15,56,0,217 - pxor %xmm2,%xmm3 - addl $-16,%edx -L015schedule_mangle_both: - movdqa 256(%ebp,%ecx,1),%xmm1 -.byte 102,15,56,0,217 - addl $-16,%ecx - andl $48,%ecx - movdqu %xmm3,(%edx) - ret -.globl _vpaes_set_encrypt_key -.align 4 -_vpaes_set_encrypt_key: -L_vpaes_set_encrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - movl $48,%ecx - movl $0,%edi - leal L_vpaes_consts+0x30-L016pic_point,%ebp - call __vpaes_schedule_core -L016pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_set_decrypt_key -.align 4 -_vpaes_set_decrypt_key: -L_vpaes_set_decrypt_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%eax - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movl %eax,%ebx - shrl $5,%ebx - addl $5,%ebx - movl %ebx,240(%edx) - shll $4,%ebx - leal 16(%edx,%ebx,1),%edx - movl $1,%edi - movl %eax,%ecx - shrl $1,%ecx - andl $32,%ecx - xorl $32,%ecx - leal L_vpaes_consts+0x30-L017pic_point,%ebp - call __vpaes_schedule_core -L017pic_point: - movl 48(%esp),%esp - xorl %eax,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_encrypt -.align 4 -_vpaes_encrypt: -L_vpaes_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal L_vpaes_consts+0x30-L018pic_point,%ebp - call __vpaes_preheat -L018pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call __vpaes_encrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_decrypt -.align 4 -_vpaes_decrypt: -L_vpaes_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - leal L_vpaes_consts+0x30-L019pic_point,%ebp - call __vpaes_preheat -L019pic_point: - movl 20(%esp),%esi - leal -56(%esp),%ebx - movl 24(%esp),%edi - andl $-16,%ebx - movl 28(%esp),%edx - xchgl %esp,%ebx - movl %ebx,48(%esp) - movdqu (%esi),%xmm0 - call __vpaes_decrypt_core - movdqu %xmm0,(%edi) - movl 48(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _vpaes_cbc_encrypt -.align 4 -_vpaes_cbc_encrypt: -L_vpaes_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl 32(%esp),%edx - subl $16,%eax - jc L020cbc_abort - leal -56(%esp),%ebx - movl 36(%esp),%ebp - andl $-16,%ebx - movl 40(%esp),%ecx - xchgl %esp,%ebx - movdqu (%ebp),%xmm1 - subl %esi,%edi - movl %ebx,48(%esp) - movl %edi,(%esp) - movl %edx,4(%esp) - movl %ebp,8(%esp) - movl %eax,%edi - leal L_vpaes_consts+0x30-L021pic_point,%ebp - call __vpaes_preheat -L021pic_point: - cmpl $0,%ecx - je L022cbc_dec_loop - jmp L023cbc_enc_loop -.align 4,0x90 -L023cbc_enc_loop: - movdqu (%esi),%xmm0 - pxor %xmm1,%xmm0 - call __vpaes_encrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - movdqa %xmm0,%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc L023cbc_enc_loop - jmp L024cbc_done -.align 4,0x90 -L022cbc_dec_loop: - movdqu (%esi),%xmm0 - movdqa %xmm1,16(%esp) - movdqa %xmm0,32(%esp) - call __vpaes_decrypt_core - movl (%esp),%ebx - movl 4(%esp),%edx - pxor 16(%esp),%xmm0 - movdqa 32(%esp),%xmm1 - movdqu %xmm0,(%ebx,%esi,1) - leal 16(%esi),%esi - subl $16,%edi - jnc L022cbc_dec_loop -L024cbc_done: - movl 8(%esp),%ebx - movl 48(%esp),%esp - movdqu %xmm1,(%ebx) -L020cbc_abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/bf/bf-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/bf/bf-586.s deleted file mode 100644 index 2b75536e78e668..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/bf/bf-586.s +++ /dev/null @@ -1,858 +0,0 @@ -.file "bf-686.s" -.text -.globl _BF_encrypt -.align 4 -_BF_encrypt: -L_BF_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - movl 20(%esp),%eax - movl (%eax),%ecx - movl 4(%eax),%edx - - # P pointer, s and enc flag - movl 24(%esp),%edi - xorl %eax,%eax - xorl %ebx,%ebx - xorl (%edi),%ecx - - # Round 0 - rorl $16,%ecx - movl 4(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 1 - rorl $16,%edx - movl 8(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 2 - rorl $16,%ecx - movl 12(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 3 - rorl $16,%edx - movl 16(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 4 - rorl $16,%ecx - movl 20(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 5 - rorl $16,%edx - movl 24(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 6 - rorl $16,%ecx - movl 28(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 7 - rorl $16,%edx - movl 32(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 8 - rorl $16,%ecx - movl 36(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 9 - rorl $16,%edx - movl 40(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 10 - rorl $16,%ecx - movl 44(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 11 - rorl $16,%edx - movl 48(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 12 - rorl $16,%ecx - movl 52(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 13 - rorl $16,%edx - movl 56(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 14 - rorl $16,%ecx - movl 60(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 15 - rorl $16,%edx - movl 64(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - xorl 68(%edi),%edx - movl 20(%esp),%eax - movl %edx,(%eax) - movl %ecx,4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _BF_decrypt -.align 4 -_BF_decrypt: -L_BF_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - movl 20(%esp),%eax - movl (%eax),%ecx - movl 4(%eax),%edx - - # P pointer, s and enc flag - movl 24(%esp),%edi - xorl %eax,%eax - xorl %ebx,%ebx - xorl 68(%edi),%ecx - - # Round 16 - rorl $16,%ecx - movl 64(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 15 - rorl $16,%edx - movl 60(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 14 - rorl $16,%ecx - movl 56(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 13 - rorl $16,%edx - movl 52(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 12 - rorl $16,%ecx - movl 48(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 11 - rorl $16,%edx - movl 44(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 10 - rorl $16,%ecx - movl 40(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 9 - rorl $16,%edx - movl 36(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 8 - rorl $16,%ecx - movl 32(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 7 - rorl $16,%edx - movl 28(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 6 - rorl $16,%ecx - movl 24(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 5 - rorl $16,%edx - movl 20(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 4 - rorl $16,%ecx - movl 16(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 3 - rorl $16,%edx - movl 12(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - - # Round 2 - rorl $16,%ecx - movl 8(%edi),%esi - movb %ch,%al - movb %cl,%bl - rorl $16,%ecx - xorl %esi,%edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch,%al - movb %cl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%edx - - # Round 1 - rorl $16,%edx - movl 4(%edi),%esi - movb %dh,%al - movb %dl,%bl - rorl $16,%edx - xorl %esi,%ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh,%al - movb %dl,%bl - addl %ebp,%esi - movl 2120(%edi,%eax,4),%eax - xorl %eax,%esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp,%esi - xorl %eax,%eax - xorl %esi,%ecx - xorl (%edi),%edx - movl 20(%esp),%eax - movl %edx,(%eax) - movl %ecx,4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _BF_cbc_encrypt -.align 4 -_BF_cbc_encrypt: -L_BF_cbc_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 3 - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz L000decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz L001encrypt_finish -L002encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L002encrypt_loop -L001encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L003finish - call L004PIC_point -L004PIC_point: - popl %edx - leal L005cbc_enc_jmp_table-L004PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -L006ej7: - movb 6(%esi),%dh - shll $8,%edx -L007ej6: - movb 5(%esi),%dh -L008ej5: - movb 4(%esi),%dl -L009ej4: - movl (%esi),%ecx - jmp L010ejend -L011ej3: - movb 2(%esi),%ch - shll $8,%ecx -L012ej2: - movb 1(%esi),%ch -L013ej1: - movb (%esi),%cl -L010ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp L003finish -L000decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz L014decrypt_finish -L015decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L015decrypt_loop -L014decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L003finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_BF_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -L016dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -L017dj6: - movb %dh,5(%edi) -L018dj5: - movb %dl,4(%edi) -L019dj4: - movl %ecx,(%edi) - jmp L020djend -L021dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -L022dj2: - movb %ch,1(%esi) -L023dj1: - movb %cl,(%esi) -L020djend: - jmp L003finish -L003finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L005cbc_enc_jmp_table: -.long 0 -.long L013ej1-L004PIC_point -.long L012ej2-L004PIC_point -.long L011ej3-L004PIC_point -.long L009ej4-L004PIC_point -.long L008ej5-L004PIC_point -.long L007ej6-L004PIC_point -.long L006ej7-L004PIC_point -.align 6,0x90 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/bn-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/bn/bn-586.s deleted file mode 100644 index 777121eae88f3f..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/bn-586.s +++ /dev/null @@ -1,1520 +0,0 @@ -.file "../openssl/crypto/bn/asm/bn-586.s" -.text -.globl _bn_mul_add_words -.align 4 -_bn_mul_add_words: -L_bn_mul_add_words_begin: - call L000PIC_me_up -L000PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L001maw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 - jmp L002maw_sse2_entry -.align 4,0x90 -L003maw_sse2_unrolled: - movd (%eax),%mm3 - paddq %mm3,%mm1 - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - movd 4(%edx),%mm4 - pmuludq %mm0,%mm4 - movd 8(%edx),%mm6 - pmuludq %mm0,%mm6 - movd 12(%edx),%mm7 - pmuludq %mm0,%mm7 - paddq %mm2,%mm1 - movd 4(%eax),%mm3 - paddq %mm4,%mm3 - movd 8(%eax),%mm5 - paddq %mm6,%mm5 - movd 12(%eax),%mm4 - paddq %mm4,%mm7 - movd %mm1,(%eax) - movd 16(%edx),%mm2 - pmuludq %mm0,%mm2 - psrlq $32,%mm1 - movd 20(%edx),%mm4 - pmuludq %mm0,%mm4 - paddq %mm3,%mm1 - movd 24(%edx),%mm6 - pmuludq %mm0,%mm6 - movd %mm1,4(%eax) - psrlq $32,%mm1 - movd 28(%edx),%mm3 - addl $32,%edx - pmuludq %mm0,%mm3 - paddq %mm5,%mm1 - movd 16(%eax),%mm5 - paddq %mm5,%mm2 - movd %mm1,8(%eax) - psrlq $32,%mm1 - paddq %mm7,%mm1 - movd 20(%eax),%mm5 - paddq %mm5,%mm4 - movd %mm1,12(%eax) - psrlq $32,%mm1 - paddq %mm2,%mm1 - movd 24(%eax),%mm5 - paddq %mm5,%mm6 - movd %mm1,16(%eax) - psrlq $32,%mm1 - paddq %mm4,%mm1 - movd 28(%eax),%mm5 - paddq %mm5,%mm3 - movd %mm1,20(%eax) - psrlq $32,%mm1 - paddq %mm6,%mm1 - movd %mm1,24(%eax) - psrlq $32,%mm1 - paddq %mm3,%mm1 - movd %mm1,28(%eax) - leal 32(%eax),%eax - psrlq $32,%mm1 - subl $8,%ecx - jz L004maw_sse2_exit -L002maw_sse2_entry: - testl $4294967288,%ecx - jnz L003maw_sse2_unrolled -.align 2,0x90 -L005maw_sse2_loop: - movd (%edx),%mm2 - movd (%eax),%mm3 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm3,%mm1 - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz L005maw_sse2_loop -L004maw_sse2_exit: - movd %mm1,%eax - emms - ret -.align 4,0x90 -L001maw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 28(%esp),%ecx - movl 24(%esp),%ebx - andl $4294967288,%ecx - movl 32(%esp),%ebp - pushl %ecx - jz L006maw_finish -.align 4,0x90 -L007maw_loop: - # Round 0 - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - # Round 4 - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - # Round 8 - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - # Round 12 - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - # Round 16 - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - # Round 20 - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - # Round 24 - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - # Round 28 - movl 28(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 28(%edi),%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - subl $8,%ecx - leal 32(%ebx),%ebx - leal 32(%edi),%edi - jnz L007maw_loop -L006maw_finish: - movl 32(%esp),%ecx - andl $7,%ecx - jnz L008maw_finish2 - jmp L009maw_end -L008maw_finish2: - # Tail Round 0 - movl (%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl (%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 1 - movl 4(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 4(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,4(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 2 - movl 8(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 8(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,8(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 3 - movl 12(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 12(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,12(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 4 - movl 16(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 16(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,16(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 5 - movl 20(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 20(%edi),%eax - adcl $0,%edx - decl %ecx - movl %eax,20(%edi) - movl %edx,%esi - jz L009maw_end - # Tail Round 6 - movl 24(%ebx),%eax - mull %ebp - addl %esi,%eax - adcl $0,%edx - addl 24(%edi),%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -L009maw_end: - movl %esi,%eax - popl %ecx - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_mul_words -.align 4 -_bn_mul_words: -L_bn_mul_words_begin: - call L010PIC_me_up -L010PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L011mw_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx - movd 16(%esp),%mm0 - pxor %mm1,%mm1 -.align 4,0x90 -L012mw_sse2_loop: - movd (%edx),%mm2 - pmuludq %mm0,%mm2 - leal 4(%edx),%edx - paddq %mm2,%mm1 - movd %mm1,(%eax) - subl $1,%ecx - psrlq $32,%mm1 - leal 4(%eax),%eax - jnz L012mw_sse2_loop - movd %mm1,%eax - emms - ret -.align 4,0x90 -L011mw_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - xorl %esi,%esi - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ebp - movl 32(%esp),%ecx - andl $4294967288,%ebp - jz L013mw_finish -L014mw_loop: - # Round 0 - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - # Round 4 - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - # Round 8 - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - # Round 12 - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - # Round 16 - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - # Round 20 - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - # Round 24 - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi - # Round 28 - movl 28(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,28(%edi) - movl %edx,%esi - - addl $32,%ebx - addl $32,%edi - subl $8,%ebp - jz L013mw_finish - jmp L014mw_loop -L013mw_finish: - movl 28(%esp),%ebp - andl $7,%ebp - jnz L015mw_finish2 - jmp L016mw_end -L015mw_finish2: - # Tail Round 0 - movl (%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 1 - movl 4(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,4(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 2 - movl 8(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,8(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 3 - movl 12(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,12(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 4 - movl 16(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,16(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 5 - movl 20(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,20(%edi) - movl %edx,%esi - decl %ebp - jz L016mw_end - # Tail Round 6 - movl 24(%ebx),%eax - mull %ecx - addl %esi,%eax - adcl $0,%edx - movl %eax,24(%edi) - movl %edx,%esi -L016mw_end: - movl %esi,%eax - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sqr_words -.align 4 -_bn_sqr_words: -L_bn_sqr_words_begin: - call L017PIC_me_up -L017PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L017PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L018sqr_non_sse2 - movl 4(%esp),%eax - movl 8(%esp),%edx - movl 12(%esp),%ecx -.align 4,0x90 -L019sqr_sse2_loop: - movd (%edx),%mm0 - pmuludq %mm0,%mm0 - leal 4(%edx),%edx - movq %mm0,(%eax) - subl $1,%ecx - leal 8(%eax),%eax - jnz L019sqr_sse2_loop - emms - ret -.align 4,0x90 -L018sqr_non_sse2: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebx - andl $4294967288,%ebx - jz L020sw_finish -L021sw_loop: - # Round 0 - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - movl %edx,4(%esi) - # Round 4 - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - movl %edx,12(%esi) - # Round 8 - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - movl %edx,20(%esi) - # Round 12 - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - movl %edx,28(%esi) - # Round 16 - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - movl %edx,36(%esi) - # Round 20 - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - movl %edx,44(%esi) - # Round 24 - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) - # Round 28 - movl 28(%edi),%eax - mull %eax - movl %eax,56(%esi) - movl %edx,60(%esi) - - addl $32,%edi - addl $64,%esi - subl $8,%ebx - jnz L021sw_loop -L020sw_finish: - movl 28(%esp),%ebx - andl $7,%ebx - jz L022sw_end - # Tail Round 0 - movl (%edi),%eax - mull %eax - movl %eax,(%esi) - decl %ebx - movl %edx,4(%esi) - jz L022sw_end - # Tail Round 1 - movl 4(%edi),%eax - mull %eax - movl %eax,8(%esi) - decl %ebx - movl %edx,12(%esi) - jz L022sw_end - # Tail Round 2 - movl 8(%edi),%eax - mull %eax - movl %eax,16(%esi) - decl %ebx - movl %edx,20(%esi) - jz L022sw_end - # Tail Round 3 - movl 12(%edi),%eax - mull %eax - movl %eax,24(%esi) - decl %ebx - movl %edx,28(%esi) - jz L022sw_end - # Tail Round 4 - movl 16(%edi),%eax - mull %eax - movl %eax,32(%esi) - decl %ebx - movl %edx,36(%esi) - jz L022sw_end - # Tail Round 5 - movl 20(%edi),%eax - mull %eax - movl %eax,40(%esi) - decl %ebx - movl %edx,44(%esi) - jz L022sw_end - # Tail Round 6 - movl 24(%edi),%eax - mull %eax - movl %eax,48(%esi) - movl %edx,52(%esi) -L022sw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_div_words -.align 4 -_bn_div_words: -L_bn_div_words_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 12(%esp),%ecx - divl %ecx - ret -.globl _bn_add_words -.align 4 -_bn_add_words: -L_bn_add_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L023aw_finish -L024aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L024aw_loop -L023aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L025aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L025aw_end - # Tail Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L025aw_end - # Tail Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L025aw_end - # Tail Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L025aw_end - # Tail Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L025aw_end - # Tail Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L025aw_end - # Tail Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - addl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - addl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -L025aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sub_words -.align 4 -_bn_sub_words: -L_bn_sub_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L026aw_finish -L027aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L027aw_loop -L026aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L028aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L028aw_end - # Tail Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L028aw_end - # Tail Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L028aw_end - # Tail Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L028aw_end - # Tail Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L028aw_end - # Tail Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L028aw_end - # Tail Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) -L028aw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _bn_sub_part_words -.align 4 -_bn_sub_part_words: -L_bn_sub_part_words_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - movl 20(%esp),%ebx - movl 24(%esp),%esi - movl 28(%esp),%edi - movl 32(%esp),%ebp - xorl %eax,%eax - andl $4294967288,%ebp - jz L029aw_finish -L030aw_loop: - # Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # Round 1 - movl 4(%esi),%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # Round 2 - movl 8(%esi),%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # Round 3 - movl 12(%esi),%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # Round 4 - movl 16(%esi),%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # Round 5 - movl 20(%esi),%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # Round 6 - movl 24(%esi),%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # Round 7 - movl 28(%esi),%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%esi - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L030aw_loop -L029aw_finish: - movl 32(%esp),%ebp - andl $7,%ebp - jz L031aw_end - # Tail Round 0 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 1 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 2 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 3 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 4 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 5 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx - decl %ebp - jz L031aw_end - # Tail Round 6 - movl (%esi),%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - addl $4,%esi - addl $4,%edi - addl $4,%ebx -L031aw_end: - cmpl $0,36(%esp) - je L032pw_end - movl 36(%esp),%ebp - cmpl $0,%ebp - je L032pw_end - jge L033pw_pos - # pw_neg - movl $0,%edx - subl %ebp,%edx - movl %edx,%ebp - andl $4294967288,%ebp - jz L034pw_neg_finish -L035pw_neg_loop: - # dl<0 Round 0 - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,(%ebx) - # dl<0 Round 1 - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,4(%ebx) - # dl<0 Round 2 - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,8(%ebx) - # dl<0 Round 3 - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,12(%ebx) - # dl<0 Round 4 - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,16(%ebx) - # dl<0 Round 5 - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,20(%ebx) - # dl<0 Round 6 - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - # dl<0 Round 7 - movl $0,%ecx - movl 28(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,28(%ebx) - - addl $32,%edi - addl $32,%ebx - subl $8,%ebp - jnz L035pw_neg_loop -L034pw_neg_finish: - movl 36(%esp),%edx - movl $0,%ebp - subl %edx,%ebp - andl $7,%ebp - jz L032pw_end - # dl<0 Tail Round 0 - movl $0,%ecx - movl (%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,(%ebx) - jz L032pw_end - # dl<0 Tail Round 1 - movl $0,%ecx - movl 4(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,4(%ebx) - jz L032pw_end - # dl<0 Tail Round 2 - movl $0,%ecx - movl 8(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,8(%ebx) - jz L032pw_end - # dl<0 Tail Round 3 - movl $0,%ecx - movl 12(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,12(%ebx) - jz L032pw_end - # dl<0 Tail Round 4 - movl $0,%ecx - movl 16(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,16(%ebx) - jz L032pw_end - # dl<0 Tail Round 5 - movl $0,%ecx - movl 20(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - decl %ebp - movl %ecx,20(%ebx) - jz L032pw_end - # dl<0 Tail Round 6 - movl $0,%ecx - movl 24(%edi),%edx - subl %eax,%ecx - movl $0,%eax - adcl %eax,%eax - subl %edx,%ecx - adcl $0,%eax - movl %ecx,24(%ebx) - jmp L032pw_end -L033pw_pos: - andl $4294967288,%ebp - jz L036pw_pos_finish -L037pw_pos_loop: - # dl>0 Round 0 - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc L038pw_nc0 - # dl>0 Round 1 - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc L039pw_nc1 - # dl>0 Round 2 - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc L040pw_nc2 - # dl>0 Round 3 - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc L041pw_nc3 - # dl>0 Round 4 - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc L042pw_nc4 - # dl>0 Round 5 - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc L043pw_nc5 - # dl>0 Round 6 - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc L044pw_nc6 - # dl>0 Round 7 - movl 28(%esi),%ecx - subl %eax,%ecx - movl %ecx,28(%ebx) - jnc L045pw_nc7 - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz L037pw_pos_loop -L036pw_pos_finish: - movl 36(%esp),%ebp - andl $7,%ebp - jz L032pw_end - # dl>0 Tail Round 0 - movl (%esi),%ecx - subl %eax,%ecx - movl %ecx,(%ebx) - jnc L046pw_tail_nc0 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 1 - movl 4(%esi),%ecx - subl %eax,%ecx - movl %ecx,4(%ebx) - jnc L047pw_tail_nc1 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 2 - movl 8(%esi),%ecx - subl %eax,%ecx - movl %ecx,8(%ebx) - jnc L048pw_tail_nc2 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 3 - movl 12(%esi),%ecx - subl %eax,%ecx - movl %ecx,12(%ebx) - jnc L049pw_tail_nc3 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 4 - movl 16(%esi),%ecx - subl %eax,%ecx - movl %ecx,16(%ebx) - jnc L050pw_tail_nc4 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 5 - movl 20(%esi),%ecx - subl %eax,%ecx - movl %ecx,20(%ebx) - jnc L051pw_tail_nc5 - decl %ebp - jz L032pw_end - # dl>0 Tail Round 6 - movl 24(%esi),%ecx - subl %eax,%ecx - movl %ecx,24(%ebx) - jnc L052pw_tail_nc6 - movl $1,%eax - jmp L032pw_end -L053pw_nc_loop: - movl (%esi),%ecx - movl %ecx,(%ebx) -L038pw_nc0: - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -L039pw_nc1: - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -L040pw_nc2: - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -L041pw_nc3: - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -L042pw_nc4: - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -L043pw_nc5: - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -L044pw_nc6: - movl 28(%esi),%ecx - movl %ecx,28(%ebx) -L045pw_nc7: - - addl $32,%esi - addl $32,%ebx - subl $8,%ebp - jnz L053pw_nc_loop - movl 36(%esp),%ebp - andl $7,%ebp - jz L054pw_nc_end - movl (%esi),%ecx - movl %ecx,(%ebx) -L046pw_tail_nc0: - decl %ebp - jz L054pw_nc_end - movl 4(%esi),%ecx - movl %ecx,4(%ebx) -L047pw_tail_nc1: - decl %ebp - jz L054pw_nc_end - movl 8(%esi),%ecx - movl %ecx,8(%ebx) -L048pw_tail_nc2: - decl %ebp - jz L054pw_nc_end - movl 12(%esi),%ecx - movl %ecx,12(%ebx) -L049pw_tail_nc3: - decl %ebp - jz L054pw_nc_end - movl 16(%esi),%ecx - movl %ecx,16(%ebx) -L050pw_tail_nc4: - decl %ebp - jz L054pw_nc_end - movl 20(%esi),%ecx - movl %ecx,20(%ebx) -L051pw_tail_nc5: - decl %ebp - jz L054pw_nc_end - movl 24(%esi),%ecx - movl %ecx,24(%ebx) -L052pw_tail_nc6: -L054pw_nc_end: - movl $0,%eax -L032pw_end: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/co-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/bn/co-586.s deleted file mode 100644 index 6174dea38f0243..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/co-586.s +++ /dev/null @@ -1,1246 +0,0 @@ -.file "../openssl/crypto/bn/asm/co-586.s" -.text -.globl _bn_mul_comba8 -.align 4 -_bn_mul_comba8: -L_bn_mul_comba8_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - # ################## Calculate word 0 - xorl %ebp,%ebp - # mul a[0]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 - xorl %ebx,%ebx - # mul a[1]*b[0] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 - xorl %ecx,%ecx - # mul a[2]*b[0] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[1] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 - xorl %ebp,%ebp - # mul a[3]*b[0] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[1] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[2] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 16(%esi),%eax - # saved r[3] - # ################## Calculate word 4 - xorl %ebx,%ebx - # mul a[4]*b[0] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[1] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[2] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[3] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[4] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 20(%esi),%eax - # saved r[4] - # ################## Calculate word 5 - xorl %ecx,%ecx - # mul a[5]*b[0] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[1] - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[3]*b[2] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[3] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[4] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[5] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 24(%esi),%eax - # saved r[5] - # ################## Calculate word 6 - xorl %ebp,%ebp - # mul a[6]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[1] - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[4]*b[2] - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[3]*b[3] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[4] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[5] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[6] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,24(%eax) - movl 28(%esi),%eax - # saved r[6] - # ################## Calculate word 7 - xorl %ebx,%ebx - # mul a[7]*b[0] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[5]*b[2] - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[4]*b[3] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[4] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[5] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[6] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - movl %ecx,28(%eax) - movl 28(%esi),%eax - # saved r[7] - # ################## Calculate word 8 - xorl %ecx,%ecx - # mul a[7]*b[1] - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[6]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[5]*b[3] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 16(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[4] - mull %edx - addl %eax,%ebp - movl 12(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[3]*b[5] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[6] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - movl %ebp,32(%eax) - movl 28(%esi),%eax - # saved r[8] - # ################## Calculate word 9 - xorl %ebp,%ebp - # mul a[7]*b[2] - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[6]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 16(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[4] - mull %edx - addl %eax,%ebx - movl 16(%esi),%eax - adcl %edx,%ecx - movl 20(%edi),%edx - adcl $0,%ebp - # mul a[4]*b[5] - mull %edx - addl %eax,%ebx - movl 12(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[3]*b[6] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[7] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - movl %ebx,36(%eax) - movl 28(%esi),%eax - # saved r[9] - # ################## Calculate word 10 - xorl %ebx,%ebx - # mul a[7]*b[3] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[4] - mull %edx - addl %eax,%ecx - movl 20(%esi),%eax - adcl %edx,%ebp - movl 20(%edi),%edx - adcl $0,%ebx - # mul a[5]*b[5] - mull %edx - addl %eax,%ecx - movl 16(%esi),%eax - adcl %edx,%ebp - movl 24(%edi),%edx - adcl $0,%ebx - # mul a[4]*b[6] - mull %edx - addl %eax,%ecx - movl 12(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[3]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 16(%edi),%edx - adcl $0,%ebx - movl %ecx,40(%eax) - movl 28(%esi),%eax - # saved r[10] - # ################## Calculate word 11 - xorl %ecx,%ecx - # mul a[7]*b[4] - mull %edx - addl %eax,%ebp - movl 24(%esi),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - # mul a[6]*b[5] - mull %edx - addl %eax,%ebp - movl 20(%esi),%eax - adcl %edx,%ebx - movl 24(%edi),%edx - adcl $0,%ecx - # mul a[5]*b[6] - mull %edx - addl %eax,%ebp - movl 16(%esi),%eax - adcl %edx,%ebx - movl 28(%edi),%edx - adcl $0,%ecx - # mul a[4]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 20(%edi),%edx - adcl $0,%ecx - movl %ebp,44(%eax) - movl 28(%esi),%eax - # saved r[11] - # ################## Calculate word 12 - xorl %ebp,%ebp - # mul a[7]*b[5] - mull %edx - addl %eax,%ebx - movl 24(%esi),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - # mul a[6]*b[6] - mull %edx - addl %eax,%ebx - movl 20(%esi),%eax - adcl %edx,%ecx - movl 28(%edi),%edx - adcl $0,%ebp - # mul a[5]*b[7] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 24(%edi),%edx - adcl $0,%ebp - movl %ebx,48(%eax) - movl 28(%esi),%eax - # saved r[12] - # ################## Calculate word 13 - xorl %ebx,%ebx - # mul a[7]*b[6] - mull %edx - addl %eax,%ecx - movl 24(%esi),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - # mul a[6]*b[7] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 28(%edi),%edx - adcl $0,%ebx - movl %ecx,52(%eax) - movl 28(%esi),%eax - # saved r[13] - # ################## Calculate word 14 - xorl %ecx,%ecx - # mul a[7]*b[7] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%eax) - # saved r[14] - # save r[15] - movl %ebx,60(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_mul_comba4 -.align 4 -_bn_mul_comba4: -L_bn_mul_comba4_begin: - pushl %esi - movl 12(%esp),%esi - pushl %edi - movl 20(%esp),%edi - pushl %ebp - pushl %ebx - xorl %ebx,%ebx - movl (%esi),%eax - xorl %ecx,%ecx - movl (%edi),%edx - # ################## Calculate word 0 - xorl %ebp,%ebp - # mul a[0]*b[0] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl (%edi),%edx - adcl $0,%ebp - movl %ebx,(%eax) - movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 - xorl %ebx,%ebx - # mul a[1]*b[0] - mull %edx - addl %eax,%ecx - movl (%esi),%eax - adcl %edx,%ebp - movl 4(%edi),%edx - adcl $0,%ebx - # mul a[0]*b[1] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl (%edi),%edx - adcl $0,%ebx - movl %ecx,4(%eax) - movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 - xorl %ecx,%ecx - # mul a[2]*b[0] - mull %edx - addl %eax,%ebp - movl 4(%esi),%eax - adcl %edx,%ebx - movl 4(%edi),%edx - adcl $0,%ecx - # mul a[1]*b[1] - mull %edx - addl %eax,%ebp - movl (%esi),%eax - adcl %edx,%ebx - movl 8(%edi),%edx - adcl $0,%ecx - # mul a[0]*b[2] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl (%edi),%edx - adcl $0,%ecx - movl %ebp,8(%eax) - movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 - xorl %ebp,%ebp - # mul a[3]*b[0] - mull %edx - addl %eax,%ebx - movl 8(%esi),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - # mul a[2]*b[1] - mull %edx - addl %eax,%ebx - movl 4(%esi),%eax - adcl %edx,%ecx - movl 8(%edi),%edx - adcl $0,%ebp - # mul a[1]*b[2] - mull %edx - addl %eax,%ebx - movl (%esi),%eax - adcl %edx,%ecx - movl 12(%edi),%edx - adcl $0,%ebp - # mul a[0]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - movl 4(%edi),%edx - adcl $0,%ebp - movl %ebx,12(%eax) - movl 12(%esi),%eax - # saved r[3] - # ################## Calculate word 4 - xorl %ebx,%ebx - # mul a[3]*b[1] - mull %edx - addl %eax,%ecx - movl 8(%esi),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - # mul a[2]*b[2] - mull %edx - addl %eax,%ecx - movl 4(%esi),%eax - adcl %edx,%ebp - movl 12(%edi),%edx - adcl $0,%ebx - # mul a[1]*b[3] - mull %edx - addl %eax,%ecx - movl 20(%esp),%eax - adcl %edx,%ebp - movl 8(%edi),%edx - adcl $0,%ebx - movl %ecx,16(%eax) - movl 12(%esi),%eax - # saved r[4] - # ################## Calculate word 5 - xorl %ecx,%ecx - # mul a[3]*b[2] - mull %edx - addl %eax,%ebp - movl 8(%esi),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - # mul a[2]*b[3] - mull %edx - addl %eax,%ebp - movl 20(%esp),%eax - adcl %edx,%ebx - movl 12(%edi),%edx - adcl $0,%ecx - movl %ebp,20(%eax) - movl 12(%esi),%eax - # saved r[5] - # ################## Calculate word 6 - xorl %ebp,%ebp - # mul a[3]*b[3] - mull %edx - addl %eax,%ebx - movl 20(%esp),%eax - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%eax) - # saved r[6] - # save r[7] - movl %ecx,28(%eax) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_sqr_comba8 -.align 4 -_bn_sqr_comba8: -L_bn_sqr_comba8_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - # ############### Calculate word 0 - xorl %ebp,%ebp - # sqr a[0]*a[0] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 - xorl %ebx,%ebx - # sqr a[1]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 - xorl %ecx,%ecx - # sqr a[2]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - # sqr a[1]*a[1] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 - xorl %ebp,%ebp - # sqr a[3]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[2]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl (%esi),%edx - # saved r[3] - # ############### Calculate word 4 - xorl %ebx,%ebx - # sqr a[4]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 12(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - # sqr a[3]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - # sqr a[2]*a[2] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl (%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 20(%esi),%eax - # saved r[4] - # ############### Calculate word 5 - xorl %ecx,%ecx - # sqr a[5]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - movl 4(%esi),%edx - # sqr a[4]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - # sqr a[3]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - movl (%esi),%edx - # saved r[5] - # ############### Calculate word 6 - xorl %ebp,%ebp - # sqr a[6]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[5]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 16(%esi),%eax - adcl $0,%ebp - movl 8(%esi),%edx - # sqr a[4]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - # sqr a[3]*a[3] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,24(%edi) - movl 28(%esi),%eax - # saved r[6] - # ############### Calculate word 7 - xorl %ebx,%ebx - # sqr a[7]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 4(%esi),%edx - # sqr a[6]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - movl 8(%esi),%edx - # sqr a[5]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%eax - adcl $0,%ebx - movl 12(%esi),%edx - # sqr a[4]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,28(%edi) - movl 4(%esi),%edx - # saved r[7] - # ############### Calculate word 8 - xorl %ecx,%ecx - # sqr a[7]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 8(%esi),%edx - # sqr a[6]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 20(%esi),%eax - adcl $0,%ecx - movl 12(%esi),%edx - # sqr a[5]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 16(%esi),%eax - adcl $0,%ecx - # sqr a[4]*a[4] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl 8(%esi),%edx - adcl $0,%ecx - movl %ebp,32(%edi) - movl 28(%esi),%eax - # saved r[8] - # ############### Calculate word 9 - xorl %ebp,%ebp - # sqr a[7]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - movl 12(%esi),%edx - # sqr a[6]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 20(%esi),%eax - adcl $0,%ebp - movl 16(%esi),%edx - # sqr a[5]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 28(%esi),%eax - adcl $0,%ebp - movl %ebx,36(%edi) - movl 12(%esi),%edx - # saved r[9] - # ############### Calculate word 10 - xorl %ebx,%ebx - # sqr a[7]*a[3] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 24(%esi),%eax - adcl $0,%ebx - movl 16(%esi),%edx - # sqr a[6]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 20(%esi),%eax - adcl $0,%ebx - # sqr a[5]*a[5] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 16(%esi),%edx - adcl $0,%ebx - movl %ecx,40(%edi) - movl 28(%esi),%eax - # saved r[10] - # ############### Calculate word 11 - xorl %ecx,%ecx - # sqr a[7]*a[4] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 24(%esi),%eax - adcl $0,%ecx - movl 20(%esi),%edx - # sqr a[6]*a[5] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 28(%esi),%eax - adcl $0,%ecx - movl %ebp,44(%edi) - movl 20(%esi),%edx - # saved r[11] - # ############### Calculate word 12 - xorl %ebp,%ebp - # sqr a[7]*a[5] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%eax - adcl $0,%ebp - # sqr a[6]*a[6] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl 24(%esi),%edx - adcl $0,%ebp - movl %ebx,48(%edi) - movl 28(%esi),%eax - # saved r[12] - # ############### Calculate word 13 - xorl %ebx,%ebx - # sqr a[7]*a[6] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 28(%esi),%eax - adcl $0,%ebx - movl %ecx,52(%edi) - # saved r[13] - # ############### Calculate word 14 - xorl %ecx,%ecx - # sqr a[7]*a[7] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - adcl $0,%ecx - movl %ebp,56(%edi) - # saved r[14] - movl %ebx,60(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret -.globl _bn_sqr_comba4 -.align 4 -_bn_sqr_comba4: -L_bn_sqr_comba4_begin: - pushl %esi - pushl %edi - pushl %ebp - pushl %ebx - movl 20(%esp),%edi - movl 24(%esp),%esi - xorl %ebx,%ebx - xorl %ecx,%ecx - movl (%esi),%eax - # ############### Calculate word 0 - xorl %ebp,%ebp - # sqr a[0]*a[0] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - movl (%esi),%edx - adcl $0,%ebp - movl %ebx,(%edi) - movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 - xorl %ebx,%ebx - # sqr a[1]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - movl %ecx,4(%edi) - movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 - xorl %ecx,%ecx - # sqr a[2]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 4(%esi),%eax - adcl $0,%ecx - # sqr a[1]*a[1] - mull %eax - addl %eax,%ebp - adcl %edx,%ebx - movl (%esi),%edx - adcl $0,%ecx - movl %ebp,8(%edi) - movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 - xorl %ebp,%ebp - # sqr a[3]*a[0] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 8(%esi),%eax - adcl $0,%ebp - movl 4(%esi),%edx - # sqr a[2]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebp - addl %eax,%ebx - adcl %edx,%ecx - movl 12(%esi),%eax - adcl $0,%ebp - movl %ebx,12(%edi) - movl 4(%esi),%edx - # saved r[3] - # ############### Calculate word 4 - xorl %ebx,%ebx - # sqr a[3]*a[1] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ebx - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%eax - adcl $0,%ebx - # sqr a[2]*a[2] - mull %eax - addl %eax,%ecx - adcl %edx,%ebp - movl 8(%esi),%edx - adcl $0,%ebx - movl %ecx,16(%edi) - movl 12(%esi),%eax - # saved r[4] - # ############### Calculate word 5 - xorl %ecx,%ecx - # sqr a[3]*a[2] - mull %edx - addl %eax,%eax - adcl %edx,%edx - adcl $0,%ecx - addl %eax,%ebp - adcl %edx,%ebx - movl 12(%esi),%eax - adcl $0,%ecx - movl %ebp,20(%edi) - # saved r[5] - # ############### Calculate word 6 - xorl %ebp,%ebp - # sqr a[3]*a[3] - mull %eax - addl %eax,%ebx - adcl %edx,%ecx - adcl $0,%ebp - movl %ebx,24(%edi) - # saved r[6] - movl %ecx,28(%edi) - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s b/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s deleted file mode 100644 index 6aa546e3389c37..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s +++ /dev/null @@ -1,344 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-gf2m.s" -.text -.align 4 -__mul_1x1_mmx: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - andl $1073741823,%ecx - leal (%edx,%edx,1),%ebp - movl $0,(%esp) - andl $2147483647,%edx - movd %eax,%mm2 - movd %ebx,%mm3 - movl %ecx,4(%esp) - xorl %edx,%ecx - pxor %mm5,%mm5 - pxor %mm4,%mm4 - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - pcmpgtd %mm2,%mm5 - paddd %mm2,%mm2 - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - pand %mm3,%mm5 - pcmpgtd %mm2,%mm4 - movl %ecx,20(%esp) - xorl %ecx,%ebp - psllq $31,%mm5 - pand %mm3,%mm4 - movl %edx,24(%esp) - movl $7,%esi - movl %ebp,28(%esp) - movl %esi,%ebp - andl %ebx,%esi - shrl $3,%ebx - movl %ebp,%edi - psllq $30,%mm4 - andl %ebx,%edi - shrl $3,%ebx - movd (%esp,%esi,4),%mm0 - movl %ebp,%esi - andl %ebx,%esi - shrl $3,%ebx - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $3,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $6,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $9,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $12,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $15,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $18,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - movl %ebp,%edi - psllq $21,%mm2 - andl %ebx,%edi - shrl $3,%ebx - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - movl %ebp,%esi - psllq $24,%mm1 - andl %ebx,%esi - shrl $3,%ebx - pxor %mm1,%mm0 - movd (%esp,%edi,4),%mm2 - pxor %mm4,%mm0 - psllq $27,%mm2 - pxor %mm2,%mm0 - movd (%esp,%esi,4),%mm1 - pxor %mm5,%mm0 - psllq $30,%mm1 - addl $36,%esp - pxor %mm1,%mm0 - ret -.align 4 -__mul_1x1_ialu: - subl $36,%esp - movl %eax,%ecx - leal (%eax,%eax,1),%edx - leal (,%eax,4),%ebp - andl $1073741823,%ecx - leal (%eax,%eax,1),%edi - sarl $31,%eax - movl $0,(%esp) - andl $2147483647,%edx - movl %ecx,4(%esp) - xorl %edx,%ecx - movl %edx,8(%esp) - xorl %ebp,%edx - movl %ecx,12(%esp) - xorl %edx,%ecx - movl %ebp,16(%esp) - xorl %edx,%ebp - movl %ecx,20(%esp) - xorl %ecx,%ebp - sarl $31,%edi - andl %ebx,%eax - movl %edx,24(%esp) - andl %ebx,%edi - movl %ebp,28(%esp) - movl %eax,%edx - shll $31,%eax - movl %edi,%ecx - shrl $1,%edx - movl $7,%esi - shll $30,%edi - andl %ebx,%esi - shrl $2,%ecx - xorl %edi,%eax - shrl $3,%ebx - movl $7,%edi - andl %ebx,%edi - shrl $3,%ebx - xorl %ecx,%edx - xorl (%esp,%esi,4),%eax - movl $7,%esi - andl %ebx,%esi - shrl $3,%ebx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $3,%ebp - andl %ebx,%edi - shrl $29,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $6,%ecx - andl %ebx,%esi - shrl $26,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $9,%ebp - andl %ebx,%edi - shrl $23,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $12,%ecx - andl %ebx,%esi - shrl $20,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $15,%ebp - andl %ebx,%edi - shrl $17,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $18,%ecx - andl %ebx,%esi - shrl $14,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl $7,%edi - movl %ebp,%ecx - shll $21,%ebp - andl %ebx,%edi - shrl $11,%ecx - xorl %ebp,%eax - shrl $3,%ebx - xorl %ecx,%edx - movl (%esp,%esi,4),%ecx - movl $7,%esi - movl %ecx,%ebp - shll $24,%ecx - andl %ebx,%esi - shrl $8,%ebp - xorl %ecx,%eax - shrl $3,%ebx - xorl %ebp,%edx - movl (%esp,%edi,4),%ebp - movl %ebp,%ecx - shll $27,%ebp - movl (%esp,%esi,4),%edi - shrl $5,%ecx - movl %edi,%esi - xorl %ebp,%eax - shll $30,%edi - xorl %ecx,%edx - shrl $2,%esi - xorl %edi,%eax - xorl %esi,%edx - addl $36,%esp - ret -.globl _bn_GF2m_mul_2x2 -.align 4 -_bn_GF2m_mul_2x2: -L_bn_GF2m_mul_2x2_begin: - call L000PIC_me_up -L000PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000PIC_me_up(%edx),%edx - movl (%edx),%eax - movl 4(%edx),%edx - testl $8388608,%eax - jz L001ialu - testl $16777216,%eax - jz L002mmx - testl $2,%edx - jz L002mmx - movups 8(%esp),%xmm0 - shufps $177,%xmm0,%xmm0 -.byte 102,15,58,68,192,1 - movl 4(%esp),%eax - movups %xmm0,(%eax) - ret -.align 4,0x90 -L002mmx: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 24(%esp),%eax - movl 32(%esp),%ebx - call __mul_1x1_mmx - movq %mm0,%mm7 - movl 28(%esp),%eax - movl 36(%esp),%ebx - call __mul_1x1_mmx - movq %mm0,%mm6 - movl 24(%esp),%eax - movl 32(%esp),%ebx - xorl 28(%esp),%eax - xorl 36(%esp),%ebx - call __mul_1x1_mmx - pxor %mm7,%mm0 - movl 20(%esp),%eax - pxor %mm6,%mm0 - movq %mm0,%mm2 - psllq $32,%mm0 - popl %edi - psrlq $32,%mm2 - popl %esi - pxor %mm6,%mm0 - popl %ebx - pxor %mm7,%mm2 - movq %mm0,(%eax) - popl %ebp - movq %mm2,8(%eax) - emms - ret -.align 4,0x90 -L001ialu: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $20,%esp - movl 44(%esp),%eax - movl 52(%esp),%ebx - call __mul_1x1_ialu - movl %eax,8(%esp) - movl %edx,12(%esp) - movl 48(%esp),%eax - movl 56(%esp),%ebx - call __mul_1x1_ialu - movl %eax,(%esp) - movl %edx,4(%esp) - movl 44(%esp),%eax - movl 52(%esp),%ebx - xorl 48(%esp),%eax - xorl 56(%esp),%ebx - call __mul_1x1_ialu - movl 40(%esp),%ebp - movl (%esp),%ebx - movl 4(%esp),%ecx - movl 8(%esp),%edi - movl 12(%esp),%esi - xorl %edx,%eax - xorl %ecx,%edx - xorl %ebx,%eax - movl %ebx,(%ebp) - xorl %edi,%edx - movl %esi,12(%ebp) - xorl %esi,%eax - addl $20,%esp - xorl %esi,%edx - popl %edi - xorl %edx,%eax - popl %esi - movl %edx,8(%ebp) - popl %ebx - movl %eax,4(%ebp) - popl %ebp - ret -.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -.byte 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-mont.s b/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-mont.s deleted file mode 100644 index 7bc58d24e0e624..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-mont.s +++ /dev/null @@ -1,476 +0,0 @@ -.file "../openssl/crypto/bn/asm/x86-mont.s" -.text -.globl _bn_mul_mont -.align 4 -_bn_mul_mont: -L_bn_mul_mont_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %eax,%eax - movl 40(%esp),%edi - cmpl $4,%edi - jl L000just_leave - leal 20(%esp),%esi - leal 24(%esp),%edx - addl $2,%edi - negl %edi - leal -32(%esp,%edi,4),%ebp - negl %edi - movl %ebp,%eax - subl %edx,%eax - andl $2047,%eax - subl %eax,%ebp - xorl %ebp,%edx - andl $2048,%edx - xorl $2048,%edx - subl %edx,%ebp - andl $-64,%ebp - movl %esp,%eax - subl %ebp,%eax - andl $-4096,%eax - movl %esp,%edx - leal (%ebp,%eax,1),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja L001page_walk - jmp L002page_walk_done -.align 4,0x90 -L001page_walk: - leal -4096(%esp),%esp - movl (%esp),%eax - cmpl %ebp,%esp - ja L001page_walk -L002page_walk_done: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%ebp - movl 16(%esi),%esi - movl (%esi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %ebp,16(%esp) - movl %esi,20(%esp) - leal -3(%edi),%ebx - movl %edx,24(%esp) - call L003PIC_me_up -L003PIC_me_up: - popl %eax - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L003PIC_me_up(%eax),%eax - btl $26,(%eax) - jnc L004non_sse2 - movl $-1,%eax - movd %eax,%mm7 - movl 8(%esp),%esi - movl 12(%esp),%edi - movl 16(%esp),%ebp - xorl %edx,%edx - xorl %ecx,%ecx - movd (%edi),%mm4 - movd (%esi),%mm5 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - movq %mm5,%mm2 - movq %mm5,%mm0 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - incl %ecx -.align 4,0x90 -L0051st: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - leal 1(%ecx),%ecx - cmpl %ebx,%ecx - jl L0051st - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm2,%mm3 - movq %mm3,32(%esp,%ebx,4) - incl %edx -L006outer: - xorl %ecx,%ecx - movd (%edi,%edx,4),%mm4 - movd (%esi),%mm5 - movd 32(%esp),%mm6 - movd (%ebp),%mm3 - pmuludq %mm4,%mm5 - paddq %mm6,%mm5 - movq %mm5,%mm0 - movq %mm5,%mm2 - pand %mm7,%mm0 - pmuludq 20(%esp),%mm5 - pmuludq %mm5,%mm3 - paddq %mm0,%mm3 - movd 36(%esp),%mm6 - movd 4(%ebp),%mm1 - movd 4(%esi),%mm0 - psrlq $32,%mm2 - psrlq $32,%mm3 - paddq %mm6,%mm2 - incl %ecx - decl %ebx -L007inner: - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - movd 36(%esp,%ecx,4),%mm6 - pand %mm7,%mm0 - movd 4(%ebp,%ecx,4),%mm1 - paddq %mm0,%mm3 - movd 4(%esi,%ecx,4),%mm0 - psrlq $32,%mm2 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm3 - paddq %mm6,%mm2 - decl %ebx - leal 1(%ecx),%ecx - jnz L007inner - movl %ecx,%ebx - pmuludq %mm4,%mm0 - pmuludq %mm5,%mm1 - paddq %mm0,%mm2 - paddq %mm1,%mm3 - movq %mm2,%mm0 - pand %mm7,%mm0 - paddq %mm0,%mm3 - movd %mm3,28(%esp,%ecx,4) - psrlq $32,%mm2 - psrlq $32,%mm3 - movd 36(%esp,%ebx,4),%mm6 - paddq %mm2,%mm3 - paddq %mm6,%mm3 - movq %mm3,32(%esp,%ebx,4) - leal 1(%edx),%edx - cmpl %ebx,%edx - jle L006outer - emms - jmp L008common_tail -.align 4,0x90 -L004non_sse2: - movl 8(%esp),%esi - leal 1(%ebx),%ebp - movl 12(%esp),%edi - xorl %ecx,%ecx - movl %esi,%edx - andl $1,%ebp - subl %edi,%edx - leal 4(%edi,%ebx,4),%eax - orl %edx,%ebp - movl (%edi),%edi - jz L009bn_sqr_mont - movl %eax,28(%esp) - movl (%esi),%eax - xorl %edx,%edx -.align 4,0x90 -L010mull: - movl %edx,%ebp - mull %edi - addl %eax,%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - movl (%esi,%ecx,4),%eax - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl L010mull - movl %edx,%ebp - mull %edi - movl 20(%esp),%edi - addl %ebp,%eax - movl 16(%esp),%esi - adcl $0,%edx - imull 32(%esp),%edi - movl %eax,32(%esp,%ebx,4) - xorl %ecx,%ecx - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - movl (%esi),%eax - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - incl %ecx - jmp L0112ndmadd -.align 4,0x90 -L0121stmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,28(%esp,%ecx,4) - jl L0121stmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - addl %eax,%ebp - adcl $0,%edx - imull 32(%esp),%edi - xorl %ecx,%ecx - addl 36(%esp,%ebx,4),%edx - movl %ebp,32(%esp,%ebx,4) - adcl $0,%ecx - movl (%esi),%eax - movl %edx,36(%esp,%ebx,4) - movl %ecx,40(%esp,%ebx,4) - mull %edi - addl 32(%esp),%eax - movl 4(%esi),%eax - adcl $0,%edx - movl $1,%ecx -.align 4,0x90 -L0112ndmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl L0112ndmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - xorl %eax,%eax - movl 12(%esp),%ecx - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - leal 4(%ecx),%ecx - movl %edx,32(%esp,%ebx,4) - cmpl 28(%esp),%ecx - movl %eax,36(%esp,%ebx,4) - je L008common_tail - movl (%ecx),%edi - movl 8(%esp),%esi - movl %ecx,12(%esp) - xorl %ecx,%ecx - xorl %edx,%edx - movl (%esi),%eax - jmp L0121stmadd -.align 4,0x90 -L009bn_sqr_mont: - movl %ebx,(%esp) - movl %ecx,12(%esp) - movl %edi,%eax - mull %edi - movl %eax,32(%esp) - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx - incl %ecx -.align 4,0x90 -L013sqr: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal 1(%ecx),%ecx - adcl $0,%edx - leal (%ebx,%eax,2),%ebp - shrl $31,%eax - cmpl (%esp),%ecx - movl %eax,%ebx - movl %ebp,28(%esp,%ecx,4) - jl L013sqr - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - movl 20(%esp),%edi - adcl $0,%edx - movl 16(%esp),%esi - leal (%ebx,%eax,2),%ebp - imull 32(%esp),%edi - shrl $31,%eax - movl %ebp,32(%esp,%ecx,4) - leal (%eax,%edx,2),%ebp - movl (%esi),%eax - shrl $31,%edx - movl %ebp,36(%esp,%ecx,4) - movl %edx,40(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - movl %ecx,%ebx - adcl $0,%edx - movl 4(%esi),%eax - movl $1,%ecx -.align 4,0x90 -L0143rdmadd: - movl %edx,%ebp - mull %edi - addl 32(%esp,%ecx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - movl 4(%esi,%ecx,4),%eax - adcl $0,%edx - movl %ebp,28(%esp,%ecx,4) - movl %edx,%ebp - mull %edi - addl 36(%esp,%ecx,4),%ebp - leal 2(%ecx),%ecx - adcl $0,%edx - addl %eax,%ebp - movl (%esi,%ecx,4),%eax - adcl $0,%edx - cmpl %ebx,%ecx - movl %ebp,24(%esp,%ecx,4) - jl L0143rdmadd - movl %edx,%ebp - mull %edi - addl 32(%esp,%ebx,4),%ebp - adcl $0,%edx - addl %eax,%ebp - adcl $0,%edx - movl %ebp,28(%esp,%ebx,4) - movl 12(%esp),%ecx - xorl %eax,%eax - movl 8(%esp),%esi - addl 36(%esp,%ebx,4),%edx - adcl 40(%esp,%ebx,4),%eax - movl %edx,32(%esp,%ebx,4) - cmpl %ebx,%ecx - movl %eax,36(%esp,%ebx,4) - je L008common_tail - movl 4(%esi,%ecx,4),%edi - leal 1(%ecx),%ecx - movl %edi,%eax - movl %ecx,12(%esp) - mull %edi - addl 32(%esp,%ecx,4),%eax - adcl $0,%edx - movl %eax,32(%esp,%ecx,4) - xorl %ebp,%ebp - cmpl %ebx,%ecx - leal 1(%ecx),%ecx - je L015sqrlast - movl %edx,%ebx - shrl $1,%edx - andl $1,%ebx -.align 4,0x90 -L016sqradd: - movl (%esi,%ecx,4),%eax - movl %edx,%ebp - mull %edi - addl %ebp,%eax - leal (%eax,%eax,1),%ebp - adcl $0,%edx - shrl $31,%eax - addl 32(%esp,%ecx,4),%ebp - leal 1(%ecx),%ecx - adcl $0,%eax - addl %ebx,%ebp - adcl $0,%eax - cmpl (%esp),%ecx - movl %ebp,28(%esp,%ecx,4) - movl %eax,%ebx - jle L016sqradd - movl %edx,%ebp - addl %edx,%edx - shrl $31,%ebp - addl %ebx,%edx - adcl $0,%ebp -L015sqrlast: - movl 20(%esp),%edi - movl 16(%esp),%esi - imull 32(%esp),%edi - addl 32(%esp,%ecx,4),%edx - movl (%esi),%eax - adcl $0,%ebp - movl %edx,32(%esp,%ecx,4) - movl %ebp,36(%esp,%ecx,4) - mull %edi - addl 32(%esp),%eax - leal -1(%ecx),%ebx - adcl $0,%edx - movl $1,%ecx - movl 4(%esi),%eax - jmp L0143rdmadd -.align 4,0x90 -L008common_tail: - movl 16(%esp),%ebp - movl 4(%esp),%edi - leal 32(%esp),%esi - movl (%esi),%eax - movl %ebx,%ecx - xorl %edx,%edx -.align 4,0x90 -L017sub: - sbbl (%ebp,%edx,4),%eax - movl %eax,(%edi,%edx,4) - decl %ecx - movl 4(%esi,%edx,4),%eax - leal 1(%edx),%edx - jge L017sub - sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi -.align 4,0x90 -L018copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) - movl %ecx,32(%esp,%ebx,4) - decl %ebx - jge L018copy - movl 24(%esp),%esp - movl $1,%eax -L000just_leave: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -.byte 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -.byte 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -.byte 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -.byte 111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/camellia/cmll-x86.s b/deps/openssl/asm_obsolete/x86-macosx-gas/camellia/cmll-x86.s deleted file mode 100644 index 2367cee780242b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/camellia/cmll-x86.s +++ /dev/null @@ -1,2353 +0,0 @@ -.file "cmll-586.s" -.text -.globl _Camellia_EncryptBlock_Rounds -.align 4 -_Camellia_EncryptBlock_Rounds: -L_Camellia_EncryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call L000pic_point -L000pic_point: - popl %ebp - leal LCamellia_SBOX-L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _Camellia_EncryptBlock -.align 4 -_Camellia_EncryptBlock: -L_Camellia_EncryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp L_Camellia_EncryptBlock_Rounds_begin -.globl _Camellia_encrypt -.align 4 -_Camellia_encrypt: -L_Camellia_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - leal (%edi,%eax,1),%eax - movl %ebx,20(%esp) - movl %eax,16(%esp) - call L001pic_point -L001pic_point: - popl %ebp - leal LCamellia_SBOX-L001pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_Camellia_encrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl 16(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 4,0x90 -L002loop: - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl 52(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 56(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl 60(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 64(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - addl $64,%edi - cmpl 20(%esp),%edi - je L003done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 12(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 4(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl 8(%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl 16(%edi),%esi - movl %edx,16(%esp) - jmp L002loop -.align 3,0x90 -L003done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - ret -.globl _Camellia_DecryptBlock_Rounds -.align 4 -_Camellia_DecryptBlock_Rounds: -L_Camellia_DecryptBlock_Rounds_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call L004pic_point -L004pic_point: - popl %ebp - leal LCamellia_SBOX-L004pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 32(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _Camellia_DecryptBlock -.align 4 -_Camellia_DecryptBlock: -L_Camellia_DecryptBlock_begin: - movl $128,%eax - subl 4(%esp),%eax - movl $3,%eax - adcl $0,%eax - movl %eax,4(%esp) - jmp L_Camellia_DecryptBlock_Rounds_begin -.globl _Camellia_decrypt -.align 4 -_Camellia_decrypt: -L_Camellia_decrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 28(%esp),%edi - movl %esp,%ebx - subl $28,%esp - andl $-64,%esp - movl 272(%edi),%eax - leal -127(%edi),%ecx - subl %esp,%ecx - negl %ecx - andl $960,%ecx - subl %ecx,%esp - addl $4,%esp - shll $6,%eax - movl %edi,16(%esp) - leal (%edi,%eax,1),%edi - movl %ebx,20(%esp) - call L005pic_point -L005pic_point: - popl %ebp - leal LCamellia_SBOX-L005pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 20(%esp),%esp - bswap %eax - movl 24(%esp),%esi - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__x86_Camellia_decrypt: - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl -8(%edi),%esi - movl %eax,4(%esp) - movl %ebx,8(%esp) - movl %ecx,12(%esp) - movl %edx,16(%esp) -.align 4,0x90 -L006loop: - xorl %esi,%eax - xorl -4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -16(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -24(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -32(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -40(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - xorl %esi,%eax - xorl -36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 16(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 12(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl -48(%edi),%esi - xorl %ecx,%edx - movl %edx,16(%esp) - xorl %ebx,%ecx - movl %ecx,12(%esp) - xorl %esi,%ecx - xorl -44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 8(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl 4(%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl -56(%edi),%esi - xorl %eax,%ebx - movl %ebx,8(%esp) - xorl %edx,%eax - movl %eax,4(%esp) - subl $64,%edi - cmpl 20(%esp),%edi - je L007done - andl %eax,%esi - movl 16(%esp),%edx - roll $1,%esi - movl %edx,%ecx - xorl %esi,%ebx - orl 4(%edi),%ecx - movl %ebx,8(%esp) - xorl 12(%esp),%ecx - movl 12(%edi),%esi - movl %ecx,12(%esp) - orl %ebx,%esi - andl (%edi),%ecx - xorl %esi,%eax - roll $1,%ecx - movl %eax,4(%esp) - xorl %ecx,%edx - movl -8(%edi),%esi - movl %edx,16(%esp) - jmp L006loop -.align 3,0x90 -L007done: - movl %eax,%ecx - movl %ebx,%edx - movl 12(%esp),%eax - movl 16(%esp),%ebx - xorl %esi,%ecx - xorl 12(%edi),%edx - xorl (%edi),%eax - xorl 4(%edi),%ebx - ret -.globl _Camellia_Ekeygen -.align 4 -_Camellia_Ekeygen: -L_Camellia_Ekeygen_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $16,%esp - movl 36(%esp),%ebp - movl 40(%esp),%esi - movl 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - cmpl $128,%ebp - je L0081st128 - movl 16(%esi),%eax - movl 20(%esi),%ebx - cmpl $192,%ebp - je L0091st192 - movl 24(%esi),%ecx - movl 28(%esi),%edx - jmp L0101st256 -.align 2,0x90 -L0091st192: - movl %eax,%ecx - movl %ebx,%edx - notl %ecx - notl %edx -.align 2,0x90 -L0101st256: - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%edi) - movl %ebx,36(%edi) - movl %ecx,40(%edi) - movl %edx,44(%edi) - xorl (%edi),%eax - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx -.align 2,0x90 -L0081st128: - call L011pic_point -L011pic_point: - popl %ebp - leal LCamellia_SBOX-L011pic_point(%ebp),%ebp - leal LCamellia_SIGMA-LCamellia_SBOX(%ebp),%edi - movl (%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 4(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 8(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 12(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 16(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%esi - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - xorl 12(%esi),%edx - movl 16(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 20(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 24(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 28(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 32(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 36(%esp),%esi - cmpl $128,%esi - jne L0122nd256 - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-80(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-76(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-72(%edi) - movl %edx,-68(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-64(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-60(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-56(%edi) - movl %edx,-52(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-32(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-28(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,-16(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,-12(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-8(%edi) - movl %edx,-4(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,32(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,36(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,40(%edi) - movl %eax,44(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,64(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,68(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,72(%edi) - movl %eax,76(%edi) - movl -128(%edi),%ebx - movl -124(%edi),%ecx - movl -120(%edi),%edx - movl -116(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,-48(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,-44(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-40(%edi) - movl %eax,-36(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-24(%edi) - movl %eax,-20(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,4(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,8(%edi) - movl %eax,12(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,16(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,20(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ebx,%ebp - shll $17,%ebx - movl %ecx,%esi - shrl $15,%esi - shll $17,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $17,%edx - movl %ebx,48(%edi) - shrl $15,%esi - orl %esi,%ecx - shrl $15,%ebp - movl %eax,%esi - shrl $15,%esi - movl %ecx,52(%edi) - shll $17,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,56(%edi) - movl %eax,60(%edi) - movl $3,%eax - jmp L013done -.align 4,0x90 -L0122nd256: - movl 44(%esp),%esi - movl %eax,48(%esi) - movl %ebx,52(%esi) - movl %ecx,56(%esi) - movl %edx,60(%esi) - xorl 32(%esi),%eax - xorl 36(%esi),%ebx - xorl 40(%esi),%ecx - xorl 44(%esi),%edx - movl 32(%edi),%esi - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - xorl %esi,%eax - xorl 36(%edi),%ebx - movzbl %ah,%esi - movl 2052(%ebp,%esi,8),%edx - movzbl %al,%esi - xorl 4(%ebp,%esi,8),%edx - shrl $16,%eax - movzbl %bl,%esi - movl (%ebp,%esi,8),%ecx - movzbl %ah,%esi - xorl (%ebp,%esi,8),%edx - movzbl %bh,%esi - xorl 4(%ebp,%esi,8),%ecx - shrl $16,%ebx - movzbl %al,%eax - xorl 2048(%ebp,%eax,8),%edx - movzbl %bh,%esi - movl 12(%esp),%eax - xorl %edx,%ecx - rorl $8,%edx - xorl 2048(%ebp,%esi,8),%ecx - movzbl %bl,%esi - movl 8(%esp),%ebx - xorl %eax,%edx - xorl 2052(%ebp,%esi,8),%ecx - movl 40(%edi),%esi - xorl %ecx,%edx - movl %edx,12(%esp) - xorl %ebx,%ecx - movl %ecx,8(%esp) - xorl %esi,%ecx - xorl 44(%edi),%edx - movzbl %ch,%esi - movl 2052(%ebp,%esi,8),%ebx - movzbl %cl,%esi - xorl 4(%ebp,%esi,8),%ebx - shrl $16,%ecx - movzbl %dl,%esi - movl (%ebp,%esi,8),%eax - movzbl %ch,%esi - xorl (%ebp,%esi,8),%ebx - movzbl %dh,%esi - xorl 4(%ebp,%esi,8),%eax - shrl $16,%edx - movzbl %cl,%ecx - xorl 2048(%ebp,%ecx,8),%ebx - movzbl %dh,%esi - movl 4(%esp),%ecx - xorl %ebx,%eax - rorl $8,%ebx - xorl 2048(%ebp,%esi,8),%eax - movzbl %dl,%esi - movl (%esp),%edx - xorl %ecx,%ebx - xorl 2052(%ebp,%esi,8),%eax - movl 48(%edi),%esi - xorl %eax,%ebx - movl %ebx,4(%esp) - xorl %edx,%eax - movl %eax,(%esp) - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 44(%esp),%edi - leal 128(%edi),%edi - movl %eax,-112(%edi) - movl %ebx,-108(%edi) - movl %ecx,-104(%edi) - movl %edx,-100(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,-48(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,-44(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-40(%edi) - movl %edx,-36(%edi) - movl %eax,%ebp - shll $30,%eax - movl %ebx,%esi - shrl $2,%esi - shll $30,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $30,%ecx - movl %eax,32(%edi) - shrl $2,%esi - orl %esi,%ebx - shrl $2,%ebp - movl %edx,%esi - shrl $2,%esi - movl %ebx,36(%edi) - shll $30,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,40(%edi) - movl %edx,44(%edi) - movl %ebx,%ebp - shll $19,%ebx - movl %ecx,%esi - shrl $13,%esi - shll $19,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $19,%edx - movl %ebx,128(%edi) - shrl $13,%esi - orl %esi,%ecx - shrl $13,%ebp - movl %eax,%esi - shrl $13,%esi - movl %ecx,132(%edi) - shll $19,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,136(%edi) - movl %eax,140(%edi) - movl -96(%edi),%ebx - movl -92(%edi),%ecx - movl -88(%edi),%edx - movl -84(%edi),%eax - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-96(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-92(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-88(%edi) - movl %eax,-84(%edi) - movl %ebx,%ebp - shll $15,%ebx - movl %ecx,%esi - shrl $17,%esi - shll $15,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $15,%edx - movl %ebx,-64(%edi) - shrl $17,%esi - orl %esi,%ecx - shrl $17,%ebp - movl %eax,%esi - shrl $17,%esi - movl %ecx,-60(%edi) - shll $15,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,-56(%edi) - movl %eax,-52(%edi) - movl %ebx,%ebp - shll $30,%ebx - movl %ecx,%esi - shrl $2,%esi - shll $30,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $30,%edx - movl %ebx,16(%edi) - shrl $2,%esi - orl %esi,%ecx - shrl $2,%ebp - movl %eax,%esi - shrl $2,%esi - movl %ecx,20(%edi) - shll $30,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,24(%edi) - movl %eax,28(%edi) - movl %ecx,%ebp - shll $2,%ecx - movl %edx,%esi - shrl $30,%esi - shll $2,%edx - orl %esi,%ecx - movl %eax,%esi - shll $2,%eax - movl %ecx,80(%edi) - shrl $30,%esi - orl %esi,%edx - shrl $30,%ebp - movl %ebx,%esi - shrl $30,%esi - movl %edx,84(%edi) - shll $2,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,88(%edi) - movl %ebx,92(%edi) - movl -80(%edi),%ecx - movl -76(%edi),%edx - movl -72(%edi),%eax - movl -68(%edi),%ebx - movl %ecx,%ebp - shll $15,%ecx - movl %edx,%esi - shrl $17,%esi - shll $15,%edx - orl %esi,%ecx - movl %eax,%esi - shll $15,%eax - movl %ecx,-80(%edi) - shrl $17,%esi - orl %esi,%edx - shrl $17,%ebp - movl %ebx,%esi - shrl $17,%esi - movl %edx,-76(%edi) - shll $15,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-72(%edi) - movl %ebx,-68(%edi) - movl %ecx,%ebp - shll $30,%ecx - movl %edx,%esi - shrl $2,%esi - shll $30,%edx - orl %esi,%ecx - movl %eax,%esi - shll $30,%eax - movl %ecx,-16(%edi) - shrl $2,%esi - orl %esi,%edx - shrl $2,%ebp - movl %ebx,%esi - shrl $2,%esi - movl %edx,-12(%edi) - shll $30,%ebx - orl %esi,%eax - orl %ebp,%ebx - movl %eax,-8(%edi) - movl %ebx,-4(%edi) - movl %edx,64(%edi) - movl %eax,68(%edi) - movl %ebx,72(%edi) - movl %ecx,76(%edi) - movl %edx,%ebp - shll $17,%edx - movl %eax,%esi - shrl $15,%esi - shll $17,%eax - orl %esi,%edx - movl %ebx,%esi - shll $17,%ebx - movl %edx,96(%edi) - shrl $15,%esi - orl %esi,%eax - shrl $15,%ebp - movl %ecx,%esi - shrl $15,%esi - movl %eax,100(%edi) - shll $17,%ecx - orl %esi,%ebx - orl %ebp,%ecx - movl %ebx,104(%edi) - movl %ecx,108(%edi) - movl -128(%edi),%edx - movl -124(%edi),%eax - movl -120(%edi),%ebx - movl -116(%edi),%ecx - movl %eax,%ebp - shll $13,%eax - movl %ebx,%esi - shrl $19,%esi - shll $13,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $13,%ecx - movl %eax,-32(%edi) - shrl $19,%esi - orl %esi,%ebx - shrl $19,%ebp - movl %edx,%esi - shrl $19,%esi - movl %ebx,-28(%edi) - shll $13,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,-24(%edi) - movl %edx,-20(%edi) - movl %eax,%ebp - shll $15,%eax - movl %ebx,%esi - shrl $17,%esi - shll $15,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $15,%ecx - movl %eax,(%edi) - shrl $17,%esi - orl %esi,%ebx - shrl $17,%ebp - movl %edx,%esi - shrl $17,%esi - movl %ebx,4(%edi) - shll $15,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %eax,%ebp - shll $17,%eax - movl %ebx,%esi - shrl $15,%esi - shll $17,%ebx - orl %esi,%eax - movl %ecx,%esi - shll $17,%ecx - movl %eax,48(%edi) - shrl $15,%esi - orl %esi,%ebx - shrl $15,%ebp - movl %edx,%esi - shrl $15,%esi - movl %ebx,52(%edi) - shll $17,%edx - orl %esi,%ecx - orl %ebp,%edx - movl %ecx,56(%edi) - movl %edx,60(%edi) - movl %ebx,%ebp - shll $2,%ebx - movl %ecx,%esi - shrl $30,%esi - shll $2,%ecx - orl %esi,%ebx - movl %edx,%esi - shll $2,%edx - movl %ebx,112(%edi) - shrl $30,%esi - orl %esi,%ecx - shrl $30,%ebp - movl %eax,%esi - shrl $30,%esi - movl %ecx,116(%edi) - shll $2,%eax - orl %esi,%edx - orl %ebp,%eax - movl %edx,120(%edi) - movl %eax,124(%edi) - movl $4,%eax -L013done: - leal 144(%edi),%edx - addl $16,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_Camellia_set_key -.align 4 -_private_Camellia_set_key: -L_private_Camellia_set_key_begin: - pushl %ebx - movl 8(%esp),%ecx - movl 12(%esp),%ebx - movl 16(%esp),%edx - movl $-1,%eax - testl %ecx,%ecx - jz L014done - testl %edx,%edx - jz L014done - movl $-2,%eax - cmpl $256,%ebx - je L015arg_ok - cmpl $192,%ebx - je L015arg_ok - cmpl $128,%ebx - jne L014done -.align 2,0x90 -L015arg_ok: - pushl %edx - pushl %ecx - pushl %ebx - call L_Camellia_Ekeygen_begin - addl $12,%esp - movl %eax,(%edx) - xorl %eax,%eax -.align 2,0x90 -L014done: - popl %ebx - ret -.align 6,0x90 -LCamellia_SIGMA: -.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0 -.align 6,0x90 -LCamellia_SBOX: -.long 1886416896,1886388336 -.long 2189591040,741081132 -.long 741092352,3014852787 -.long 3974949888,3233808576 -.long 3014898432,3840147684 -.long 656877312,1465319511 -.long 3233857536,3941204202 -.long 3857048832,2930639022 -.long 3840205824,589496355 -.long 2240120064,1802174571 -.long 1465341696,1162149957 -.long 892679424,2779054245 -.long 3941263872,3991732461 -.long 202116096,1330577487 -.long 2930683392,488439837 -.long 1094795520,2459041938 -.long 589505280,2256928902 -.long 4025478912,2947481775 -.long 1802201856,2088501372 -.long 2475922176,522125343 -.long 1162167552,1044250686 -.long 421075200,3705405660 -.long 2779096320,1583218782 -.long 555819264,185270283 -.long 3991792896,2795896998 -.long 235802112,960036921 -.long 1330597632,3587506389 -.long 1313754624,1566376029 -.long 488447232,3654877401 -.long 1701143808,1515847770 -.long 2459079168,1364262993 -.long 3183328512,1819017324 -.long 2256963072,2341142667 -.long 3099113472,2593783962 -.long 2947526400,4227531003 -.long 2408550144,2964324528 -.long 2088532992,1953759348 -.long 3958106880,724238379 -.long 522133248,4042260720 -.long 3469659648,2223243396 -.long 1044266496,3755933919 -.long 808464384,3419078859 -.long 3705461760,875823156 -.long 1600085760,1987444854 -.long 1583242752,1835860077 -.long 3318072576,2846425257 -.long 185273088,3520135377 -.long 437918208,67371012 -.long 2795939328,336855060 -.long 3789676800,976879674 -.long 960051456,3739091166 -.long 3402287616,286326801 -.long 3587560704,842137650 -.long 1195853568,2627469468 -.long 1566399744,1397948499 -.long 1027423488,4075946226 -.long 3654932736,4278059262 -.long 16843008,3486449871 -.long 1515870720,3284336835 -.long 3604403712,2054815866 -.long 1364283648,606339108 -.long 1448498688,3907518696 -.long 1819044864,1616904288 -.long 1296911616,1768489065 -.long 2341178112,2863268010 -.long 218959104,2694840480 -.long 2593823232,2711683233 -.long 1717986816,1650589794 -.long 4227595008,1414791252 -.long 3435973632,505282590 -.long 2964369408,3772776672 -.long 757935360,1684275300 -.long 1953788928,269484048 -.long 303174144,0 -.long 724249344,2745368739 -.long 538976256,1970602101 -.long 4042321920,2324299914 -.long 2981212416,3873833190 -.long 2223277056,151584777 -.long 2576980224,3722248413 -.long 3755990784,2273771655 -.long 1280068608,2206400643 -.long 3419130624,3452764365 -.long 3267543552,2425356432 -.long 875836416,1936916595 -.long 2122219008,4143317238 -.long 1987474944,2644312221 -.long 84215040,3216965823 -.long 1835887872,1381105746 -.long 3082270464,3638034648 -.long 2846468352,3368550600 -.long 825307392,3334865094 -.long 3520188672,2172715137 -.long 387389184,1869545583 -.long 67372032,320012307 -.long 3621246720,1667432547 -.long 336860160,3924361449 -.long 1482184704,2812739751 -.long 976894464,2677997727 -.long 1633771776,3166437564 -.long 3739147776,690552873 -.long 454761216,4193845497 -.long 286331136,791609391 -.long 471604224,3031695540 -.long 842150400,2021130360 -.long 252645120,101056518 -.long 2627509248,3890675943 -.long 370546176,1903231089 -.long 1397969664,3570663636 -.long 404232192,2880110763 -.long 4076007936,2290614408 -.long 572662272,2374828173 -.long 4278124032,1920073842 -.long 1145324544,3115909305 -.long 3486502656,4177002744 -.long 2998055424,2896953516 -.long 3284386560,909508662 -.long 3048584448,707395626 -.long 2054846976,1010565180 -.long 2442236160,4059103473 -.long 606348288,1077936192 -.long 134744064,3553820883 -.long 3907577856,3149594811 -.long 2829625344,1128464451 -.long 1616928768,353697813 -.long 4244438016,2913796269 -.long 1768515840,2004287607 -.long 1347440640,2155872384 -.long 2863311360,2189557890 -.long 3503345664,3974889708 -.long 2694881280,656867367 -.long 2105376000,3856990437 -.long 2711724288,2240086149 -.long 2307492096,892665909 -.long 1650614784,202113036 -.long 2543294208,1094778945 -.long 1414812672,4025417967 -.long 1532713728,2475884691 -.long 505290240,421068825 -.long 2509608192,555810849 -.long 3772833792,235798542 -.long 4294967040,1313734734 -.long 1684300800,1701118053 -.long 3537031680,3183280317 -.long 269488128,3099066552 -.long 3301229568,2408513679 -.long 0,3958046955 -.long 1212696576,3469607118 -.long 2745410304,808452144 -.long 4160222976,1600061535 -.long 1970631936,3318022341 -.long 3688618752,437911578 -.long 2324335104,3789619425 -.long 50529024,3402236106 -.long 3873891840,1195835463 -.long 3671775744,1027407933 -.long 151587072,16842753 -.long 1061109504,3604349142 -.long 3722304768,1448476758 -.long 2492765184,1296891981 -.long 2273806080,218955789 -.long 1549556736,1717960806 -.long 2206434048,3435921612 -.long 33686016,757923885 -.long 3452816640,303169554 -.long 1246382592,538968096 -.long 2425393152,2981167281 -.long 858993408,2576941209 -.long 1936945920,1280049228 -.long 1734829824,3267494082 -.long 4143379968,2122186878 -.long 4092850944,84213765 -.long 2644352256,3082223799 -.long 2139062016,825294897 -.long 3217014528,387383319 -.long 3806519808,3621191895 -.long 1381126656,1482162264 -.long 2610666240,1633747041 -.long 3638089728,454754331 -.long 640034304,471597084 -.long 3368601600,252641295 -.long 926365440,370540566 -.long 3334915584,404226072 -.long 993737472,572653602 -.long 2172748032,1145307204 -.long 2526451200,2998010034 -.long 1869573888,3048538293 -.long 1263225600,2442199185 -.long 320017152,134742024 -.long 3200171520,2829582504 -.long 1667457792,4244373756 -.long 774778368,1347420240 -.long 3924420864,3503292624 -.long 2038003968,2105344125 -.long 2812782336,2307457161 -.long 2358021120,2543255703 -.long 2678038272,1532690523 -.long 1852730880,2509570197 -.long 3166485504,4294902015 -.long 2391707136,3536978130 -.long 690563328,3301179588 -.long 4126536960,1212678216 -.long 4193908992,4160159991 -.long 3065427456,3688562907 -.long 791621376,50528259 -.long 4261281024,3671720154 -.long 3031741440,1061093439 -.long 1499027712,2492727444 -.long 2021160960,1549533276 -.long 2560137216,33685506 -.long 101058048,1246363722 -.long 1785358848,858980403 -.long 3890734848,1734803559 -.long 1179010560,4092788979 -.long 1903259904,2139029631 -.long 3132799488,3806462178 -.long 3570717696,2610626715 -.long 623191296,640024614 -.long 2880154368,926351415 -.long 1111638528,993722427 -.long 2290649088,2526412950 -.long 2728567296,1263206475 -.long 2374864128,3200123070 -.long 4210752000,774766638 -.long 1920102912,2037973113 -.long 117901056,2357985420 -.long 3115956480,1852702830 -.long 1431655680,2391670926 -.long 4177065984,4126474485 -.long 4008635904,3065381046 -.long 2896997376,4261216509 -.long 168430080,1499005017 -.long 909522432,2560098456 -.long 1229539584,1785331818 -.long 707406336,1178992710 -.long 1751672832,3132752058 -.long 1010580480,623181861 -.long 943208448,1111621698 -.long 4059164928,2728525986 -.long 2762253312,4210688250 -.long 1077952512,117899271 -.long 673720320,1431634005 -.long 3553874688,4008575214 -.long 2071689984,168427530 -.long 3149642496,1229520969 -.long 3385444608,1751646312 -.long 1128481536,943194168 -.long 3250700544,2762211492 -.long 353703168,673710120 -.long 3823362816,2071658619 -.long 2913840384,3385393353 -.long 4109693952,3250651329 -.long 2004317952,3823304931 -.long 3351758592,4109631732 -.long 2155905024,3351707847 -.long 2661195264,2661154974 -.long 14737632,939538488 -.long 328965,1090535745 -.long 5789784,369104406 -.long 14277081,1979741814 -.long 6776679,3640711641 -.long 5131854,2466288531 -.long 8487297,1610637408 -.long 13355979,4060148466 -.long 13224393,1912631922 -.long 723723,3254829762 -.long 11447982,2868947883 -.long 6974058,2583730842 -.long 14013909,1962964341 -.long 1579032,100664838 -.long 6118749,1459640151 -.long 8553090,2684395680 -.long 4605510,2432733585 -.long 14671839,4144035831 -.long 14079702,3036722613 -.long 2565927,3372272073 -.long 9079434,2717950626 -.long 3289650,2348846220 -.long 4934475,3523269330 -.long 4342338,2415956112 -.long 14408667,4127258358 -.long 1842204,117442311 -.long 10395294,2801837991 -.long 10263708,654321447 -.long 3815994,2382401166 -.long 13290186,2986390194 -.long 2434341,1224755529 -.long 8092539,3724599006 -.long 855309,1124090691 -.long 7434609,1543527516 -.long 6250335,3607156695 -.long 2039583,3338717127 -.long 16316664,1040203326 -.long 14145495,4110480885 -.long 4079166,2399178639 -.long 10329501,1728079719 -.long 8158332,520101663 -.long 6316128,402659352 -.long 12171705,1845522030 -.long 12500670,2936057775 -.long 12369084,788541231 -.long 9145227,3791708898 -.long 1447446,2231403909 -.long 3421236,218107149 -.long 5066061,1392530259 -.long 12829635,4026593520 -.long 7500402,2617285788 -.long 9803157,1694524773 -.long 11250603,3925928682 -.long 9342606,2734728099 -.long 12237498,2919280302 -.long 8026746,2650840734 -.long 11776947,3959483628 -.long 131586,2147516544 -.long 11842740,754986285 -.long 11382189,1795189611 -.long 10658466,2818615464 -.long 11316396,721431339 -.long 14211288,905983542 -.long 10132122,2785060518 -.long 1513239,3305162181 -.long 1710618,2248181382 -.long 3487029,1291865421 -.long 13421772,855651123 -.long 16250871,4244700669 -.long 10066329,1711302246 -.long 6381921,1476417624 -.long 5921370,2516620950 -.long 15263976,973093434 -.long 2368548,150997257 -.long 5658198,2499843477 -.long 4210752,268439568 -.long 14803425,2013296760 -.long 6513507,3623934168 -.long 592137,1107313218 -.long 3355443,3422604492 -.long 12566463,4009816047 -.long 10000536,637543974 -.long 9934743,3842041317 -.long 8750469,1627414881 -.long 6842472,436214298 -.long 16579836,1056980799 -.long 15527148,989870907 -.long 657930,2181071490 -.long 14342874,3053500086 -.long 7303023,3674266587 -.long 5460819,3556824276 -.long 6447714,2550175896 -.long 10724259,3892373736 -.long 3026478,2332068747 -.long 526344,33554946 -.long 11513775,3942706155 -.long 2631720,167774730 -.long 11579568,738208812 -.long 7631988,486546717 -.long 12763842,2952835248 -.long 12434877,1862299503 -.long 3552822,2365623693 -.long 2236962,2281736328 -.long 3684408,234884622 -.long 6579300,419436825 -.long 1973790,2264958855 -.long 3750201,1308642894 -.long 2894892,184552203 -.long 10921638,2835392937 -.long 3158064,201329676 -.long 15066597,2030074233 -.long 4473924,285217041 -.long 16645629,2130739071 -.long 8947848,570434082 -.long 10461087,3875596263 -.long 6645093,1493195097 -.long 8882055,3774931425 -.long 7039851,3657489114 -.long 16053492,1023425853 -.long 2302755,3355494600 -.long 4737096,301994514 -.long 1052688,67109892 -.long 13750737,1946186868 -.long 5329233,1409307732 -.long 12632256,805318704 -.long 16382457,2113961598 -.long 13816530,3019945140 -.long 10526880,671098920 -.long 5592405,1426085205 -.long 10592673,1744857192 -.long 4276545,1342197840 -.long 16448250,3187719870 -.long 4408131,3489714384 -.long 1250067,3288384708 -.long 12895428,822096177 -.long 3092271,3405827019 -.long 11053224,704653866 -.long 11974326,2902502829 -.long 3947580,251662095 -.long 2829099,3389049546 -.long 12698049,1879076976 -.long 16777215,4278255615 -.long 13158600,838873650 -.long 10855845,1761634665 -.long 2105376,134219784 -.long 9013641,1644192354 -.long 0,0 -.long 9474192,603989028 -.long 4671303,3506491857 -.long 15724527,4211145723 -.long 15395562,3120609978 -.long 12040119,3976261101 -.long 1381653,1157645637 -.long 394758,2164294017 -.long 13487565,1929409395 -.long 11908533,1828744557 -.long 1184274,2214626436 -.long 8289918,2667618207 -.long 12303291,3993038574 -.long 2697513,1241533002 -.long 986895,3271607235 -.long 12105912,771763758 -.long 460551,3238052289 -.long 263172,16777473 -.long 10197915,3858818790 -.long 9737364,620766501 -.long 2171169,1207978056 -.long 6710886,2566953369 -.long 15132390,3103832505 -.long 13553358,3003167667 -.long 15592941,2063629179 -.long 15198183,4177590777 -.long 3881787,3456159438 -.long 16711422,3204497343 -.long 8355711,3741376479 -.long 12961221,1895854449 -.long 10790052,687876393 -.long 3618615,3439381965 -.long 11645361,1811967084 -.long 5000268,318771987 -.long 9539985,1677747300 -.long 7237230,2600508315 -.long 9276813,1660969827 -.long 7763574,2634063261 -.long 197379,3221274816 -.long 2960685,1258310475 -.long 14606046,3070277559 -.long 9868950,2768283045 -.long 2500134,2298513801 -.long 8224125,1593859935 -.long 13027014,2969612721 -.long 6052956,385881879 -.long 13882323,4093703412 -.long 15921906,3154164924 -.long 5197647,3540046803 -.long 1644825,1174423110 -.long 4144959,3472936911 -.long 14474460,922761015 -.long 7960953,1577082462 -.long 1907997,1191200583 -.long 5395026,2483066004 -.long 15461355,4194368250 -.long 15987699,4227923196 -.long 7171437,1526750043 -.long 6184542,2533398423 -.long 16514043,4261478142 -.long 6908265,1509972570 -.long 11711154,2885725356 -.long 15790320,1006648380 -.long 3223857,1275087948 -.long 789516,50332419 -.long 13948116,889206069 -.long 13619151,4076925939 -.long 9211020,587211555 -.long 14869218,3087055032 -.long 7697781,1560304989 -.long 11119017,1778412138 -.long 4868682,2449511058 -.long 5723991,3573601749 -.long 8684676,553656609 -.long 1118481,1140868164 -.long 4539717,1358975313 -.long 1776411,3321939654 -.long 16119285,2097184125 -.long 15000804,956315961 -.long 921102,2197848963 -.long 7566195,3691044060 -.long 11184810,2852170410 -.long 15856113,2080406652 -.long 14540253,1996519287 -.long 5855577,1442862678 -.long 1315860,83887365 -.long 7105644,452991771 -.long 9605778,2751505572 -.long 5526612,352326933 -.long 13684944,872428596 -.long 7895160,503324190 -.long 7368816,469769244 -.long 14935011,4160813304 -.long 4802889,1375752786 -.long 8421504,536879136 -.long 5263440,335549460 -.long 10987431,3909151209 -.long 16185078,3170942397 -.long 7829367,3707821533 -.long 9671571,3825263844 -.long 8816262,2701173153 -.long 8618883,3758153952 -.long 2763306,2315291274 -.long 13092807,4043370993 -.long 5987163,3590379222 -.long 15329769,2046851706 -.long 15658734,3137387451 -.long 9408399,3808486371 -.long 65793,1073758272 -.long 4013373,1325420367 -.globl _Camellia_cbc_encrypt -.align 4 -_Camellia_cbc_encrypt: -L_Camellia_cbc_encrypt_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 28(%esp),%ecx - cmpl $0,%ecx - je L016enc_out - pushfl - cld - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 36(%esp),%edx - movl 40(%esp),%ebp - leal -64(%esp),%esi - andl $-64,%esi - leal -127(%edx),%edi - subl %esi,%edi - negl %edi - andl $960,%edi - subl %edi,%esi - movl 44(%esp),%edi - xchgl %esi,%esp - addl $4,%esp - movl %esi,20(%esp) - movl %eax,24(%esp) - movl %ebx,28(%esp) - movl %ecx,32(%esp) - movl %edx,36(%esp) - movl %ebp,40(%esp) - call L017pic_point -L017pic_point: - popl %ebp - leal LCamellia_SBOX-L017pic_point(%ebp),%ebp - movl $32,%esi -.align 2,0x90 -L018prefetch_sbox: - movl (%ebp),%eax - movl 32(%ebp),%ebx - movl 64(%ebp),%ecx - movl 96(%ebp),%edx - leal 128(%ebp),%ebp - decl %esi - jnz L018prefetch_sbox - movl 36(%esp),%eax - subl $4096,%ebp - movl 24(%esp),%esi - movl 272(%eax),%edx - cmpl $0,%edi - je L019DECRYPT - movl 32(%esp),%ecx - movl 40(%esp),%edi - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %edx,16(%esp) - testl $4294967280,%ecx - jz L020enc_tail - movl (%edi),%eax - movl 4(%edi),%ebx -.align 2,0x90 -L021enc_loop: - movl 8(%edi),%ecx - movl 12(%edi),%edx - xorl (%esi),%eax - xorl 4(%esi),%ebx - xorl 8(%esi),%ecx - bswap %eax - xorl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_encrypt - movl 24(%esp),%esi - movl 28(%esp),%edi - bswap %eax - bswap %ebx - bswap %ecx - movl %eax,(%edi) - bswap %edx - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 32(%esp),%ecx - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edx - movl %edx,28(%esp) - subl $16,%ecx - testl $4294967280,%ecx - movl %ecx,32(%esp) - jnz L021enc_loop - testl $15,%ecx - jnz L020enc_tail - movl 40(%esp),%esi - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 20(%esp),%esp - popfl -L016enc_out: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - pushfl -.align 2,0x90 -L020enc_tail: - movl %edi,%eax - movl 28(%esp),%edi - pushl %eax - movl $16,%ebx - subl %ecx,%ebx - cmpl %esi,%edi - je L022enc_in_place -.align 2,0x90 -.long 2767451785 - jmp L023enc_skip_in_place -L022enc_in_place: - leal (%edi,%ecx,1),%edi -L023enc_skip_in_place: - movl %ebx,%ecx - xorl %eax,%eax -.align 2,0x90 -.long 2868115081 - popl %edi - movl 28(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl $16,32(%esp) - jmp L021enc_loop -.align 4,0x90 -L019DECRYPT: - shll $6,%edx - leal (%eax,%edx,1),%edx - movl %eax,16(%esp) - movl %edx,36(%esp) - cmpl 28(%esp),%esi - je L024dec_in_place - movl 40(%esp),%edi - movl %edi,44(%esp) -.align 2,0x90 -L025dec_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - bswap %eax - movl 12(%esi),%edx - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 44(%esp),%edi - movl 32(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - subl $16,%esi - jc L026dec_partial - movl %esi,32(%esp) - movl 24(%esp),%esi - movl 28(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %esi,44(%esp) - leal 16(%esi),%esi - movl %esi,24(%esp) - leal 16(%edi),%edi - movl %edi,28(%esp) - jnz L025dec_loop - movl 44(%esp),%edi -L027dec_end: - movl 40(%esp),%esi - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - jmp L028dec_out -.align 2,0x90 -L026dec_partial: - leal 44(%esp),%edi - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - leal 16(%esi),%ecx - movl %edi,%esi - movl 28(%esp),%edi -.long 2767451785 - movl 24(%esp),%edi - jmp L027dec_end -.align 2,0x90 -L024dec_in_place: -L029dec_in_place_loop: - leal 44(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - bswap %eax - movl %edx,12(%edi) - bswap %ebx - movl 36(%esp),%edi - bswap %ecx - bswap %edx - call __x86_Camellia_decrypt - movl 40(%esp),%edi - movl 28(%esp),%esi - bswap %eax - bswap %ebx - bswap %ecx - xorl (%edi),%eax - bswap %edx - xorl 4(%edi),%ebx - xorl 8(%edi),%ecx - xorl 12(%edi),%edx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %ecx,8(%esi) - movl %edx,12(%esi) - leal 16(%esi),%esi - movl %esi,28(%esp) - leal 44(%esp),%esi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - movl %eax,(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl 24(%esp),%esi - leal 16(%esi),%esi - movl %esi,24(%esp) - movl 32(%esp),%ecx - subl $16,%ecx - jc L030dec_in_place_partial - movl %ecx,32(%esp) - jnz L029dec_in_place_loop - jmp L028dec_out -.align 2,0x90 -L030dec_in_place_partial: - movl 28(%esp),%edi - leal 44(%esp),%esi - leal (%edi,%ecx,1),%edi - leal 16(%esi,%ecx,1),%esi - negl %ecx -.long 2767451785 -.align 2,0x90 -L028dec_out: - movl 20(%esp),%esp - popfl - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.byte 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -.byte 115,108,46,111,114,103,62,0 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/cast/cast-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/cast/cast-586.s deleted file mode 100644 index 3e797b6145f527..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/cast/cast-586.s +++ /dev/null @@ -1,927 +0,0 @@ -.file "cast-586.s" -.text -.globl _CAST_encrypt -.align 4 -_CAST_encrypt: -L_CAST_encrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - # Load the 2 words - movl (%ebx),%edi - movl 4(%ebx),%esi - # Get short key flag - movl 128(%ebp),%eax - pushl %eax - xorl %eax,%eax - # round 0 - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 1 - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 2 - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 3 - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 4 - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 5 - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 6 - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 7 - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 8 - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 9 - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 10 - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 11 - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # test short key flag - popl %edx - orl %edx,%edx - jnz L000cast_enc_done - # round 12 - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 13 - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 14 - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 15 - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -L000cast_enc_done: - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _CAST_decrypt -.align 4 -_CAST_decrypt: -L_CAST_decrypt_begin: - - pushl %ebp - pushl %ebx - movl 12(%esp),%ebx - movl 16(%esp),%ebp - pushl %esi - pushl %edi - # Load the 2 words - movl (%ebx),%edi - movl 4(%ebx),%esi - # Get short key flag - movl 128(%ebp),%eax - orl %eax,%eax - jnz L001cast_dec_skip - xorl %eax,%eax - # round 15 - movl 120(%ebp),%edx - movl 124(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 14 - movl 112(%ebp),%edx - movl 116(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 13 - movl 104(%ebp),%edx - movl 108(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 12 - movl 96(%ebp),%edx - movl 100(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi -L001cast_dec_skip: - # round 11 - movl 88(%ebp),%edx - movl 92(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 10 - movl 80(%ebp),%edx - movl 84(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 9 - movl 72(%ebp),%edx - movl 76(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 8 - movl 64(%ebp),%edx - movl 68(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 7 - movl 56(%ebp),%edx - movl 60(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 6 - movl 48(%ebp),%edx - movl 52(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - # round 5 - movl 40(%ebp),%edx - movl 44(%ebp),%ecx - subl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%edi - # round 4 - movl 32(%ebp),%edx - movl 36(%ebp),%ecx - xorl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%esi - # round 3 - movl 24(%ebp),%edx - movl 28(%ebp),%ecx - addl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%edi - # round 2 - movl 16(%ebp),%edx - movl 20(%ebp),%ecx - subl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - subl %ebx,%ecx - xorl %ecx,%esi - # round 1 - movl 8(%ebp),%edx - movl 12(%ebp),%ecx - xorl %esi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - addl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - xorl %ebx,%ecx - xorl %ecx,%edi - # round 0 - movl (%ebp),%edx - movl 4(%ebp),%ecx - addl %edi,%edx - roll %cl,%edx - movl %edx,%ebx - xorl %ecx,%ecx - movb %dh,%cl - andl $255,%ebx - shrl $16,%edx - xorl %eax,%eax - movb %dh,%al - andl $255,%edx - movl _CAST_S_table0(,%ecx,4),%ecx - movl _CAST_S_table1(,%ebx,4),%ebx - xorl %ebx,%ecx - movl _CAST_S_table2(,%eax,4),%ebx - subl %ebx,%ecx - movl _CAST_S_table3(,%edx,4),%ebx - addl %ebx,%ecx - xorl %ecx,%esi - nop - movl 20(%esp),%eax - movl %edi,4(%eax) - movl %esi,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _CAST_cbc_encrypt -.align 4 -_CAST_cbc_encrypt: -L_CAST_cbc_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 3 - movl 48(%esp),%eax - pushl %eax - pushl %ebx - cmpl $0,%ecx - jz L002decrypt - andl $4294967288,%ebp - movl 8(%esp),%eax - movl 12(%esp),%ebx - jz L003encrypt_finish -L004encrypt_loop: - movl (%esi),%ecx - movl 4(%esi),%edx - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L004encrypt_loop -L003encrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L005finish - call L006PIC_point -L006PIC_point: - popl %edx - leal L007cbc_enc_jmp_table-L006PIC_point(%edx),%ecx - movl (%ecx,%ebp,4),%ebp - addl %edx,%ebp - xorl %ecx,%ecx - xorl %edx,%edx - jmp *%ebp -L008ej7: - movb 6(%esi),%dh - shll $8,%edx -L009ej6: - movb 5(%esi),%dh -L010ej5: - movb 4(%esi),%dl -L011ej4: - movl (%esi),%ecx - jmp L012ejend -L013ej3: - movb 2(%esi),%ch - shll $8,%ecx -L014ej2: - movb 1(%esi),%ch -L015ej1: - movb (%esi),%cl -L012ejend: - xorl %ecx,%eax - xorl %edx,%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_encrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl %eax,(%edi) - movl %ebx,4(%edi) - jmp L005finish -L002decrypt: - andl $4294967288,%ebp - movl 16(%esp),%eax - movl 20(%esp),%ebx - jz L016decrypt_finish -L017decrypt_loop: - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx - movl %ecx,(%edi) - movl %edx,4(%edi) - movl %eax,16(%esp) - movl %ebx,20(%esp) - addl $8,%esi - addl $8,%edi - subl $8,%ebp - jnz L017decrypt_loop -L016decrypt_finish: - movl 52(%esp),%ebp - andl $7,%ebp - jz L005finish - movl (%esi),%eax - movl 4(%esi),%ebx - bswap %eax - bswap %ebx - movl %eax,8(%esp) - movl %ebx,12(%esp) - call L_CAST_decrypt_begin - movl 8(%esp),%eax - movl 12(%esp),%ebx - bswap %eax - bswap %ebx - movl 16(%esp),%ecx - movl 20(%esp),%edx - xorl %eax,%ecx - xorl %ebx,%edx - movl (%esi),%eax - movl 4(%esi),%ebx -L018dj7: - rorl $16,%edx - movb %dl,6(%edi) - shrl $16,%edx -L019dj6: - movb %dh,5(%edi) -L020dj5: - movb %dl,4(%edi) -L021dj4: - movl %ecx,(%edi) - jmp L022djend -L023dj3: - rorl $16,%ecx - movb %cl,2(%edi) - shll $16,%ecx -L024dj2: - movb %ch,1(%esi) -L025dj1: - movb %cl,(%esi) -L022djend: - jmp L005finish -L005finish: - movl 60(%esp),%ecx - addl $24,%esp - movl %eax,(%ecx) - movl %ebx,4(%ecx) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L007cbc_enc_jmp_table: -.long 0 -.long L015ej1-L006PIC_point -.long L014ej2-L006PIC_point -.long L013ej3-L006PIC_point -.long L011ej4-L006PIC_point -.long L010ej5-L006PIC_point -.long L009ej6-L006PIC_point -.long L008ej7-L006PIC_point -.align 6,0x90 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/des/crypt586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/des/crypt586.s deleted file mode 100644 index 1731c53faac06e..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/des/crypt586.s +++ /dev/null @@ -1,880 +0,0 @@ -.file "crypt586.s" -.text -.globl _fcrypt_body -.align 4 -_fcrypt_body: -L_fcrypt_body_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - # Load the 2 words - xorl %edi,%edi - xorl %esi,%esi - call L000PIC_me_up -L000PIC_me_up: - popl %edx - movl L_DES_SPtrans$non_lazy_ptr-L000PIC_me_up(%edx),%edx - pushl %edx - movl 28(%esp),%ebp - pushl $25 -L001start: - - # Round 0 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl (%ebp),%ebx - xorl %ebx,%eax - movl 4(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 1 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 8(%ebp),%ebx - xorl %ebx,%eax - movl 12(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 2 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 16(%ebp),%ebx - xorl %ebx,%eax - movl 20(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 3 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 24(%ebp),%ebx - xorl %ebx,%eax - movl 28(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 4 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 32(%ebp),%ebx - xorl %ebx,%eax - movl 36(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 5 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 40(%ebp),%ebx - xorl %ebx,%eax - movl 44(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 6 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 48(%ebp),%ebx - xorl %ebx,%eax - movl 52(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 7 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 56(%ebp),%ebx - xorl %ebx,%eax - movl 60(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 8 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 64(%ebp),%ebx - xorl %ebx,%eax - movl 68(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 9 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 72(%ebp),%ebx - xorl %ebx,%eax - movl 76(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 10 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 80(%ebp),%ebx - xorl %ebx,%eax - movl 84(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 11 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 88(%ebp),%ebx - xorl %ebx,%eax - movl 92(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 12 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 96(%ebp),%ebx - xorl %ebx,%eax - movl 100(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 13 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 104(%ebp),%ebx - xorl %ebx,%eax - movl 108(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - - # Round 14 - movl 36(%esp),%eax - movl %esi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %esi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 112(%ebp),%ebx - xorl %ebx,%eax - movl 116(%ebp),%ecx - xorl %esi,%eax - xorl %esi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%edi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%edi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%edi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%edi - movl 32(%esp),%ebp - - # Round 15 - movl 36(%esp),%eax - movl %edi,%edx - shrl $16,%edx - movl 40(%esp),%ecx - xorl %edi,%edx - andl %edx,%eax - andl %ecx,%edx - movl %eax,%ebx - shll $16,%ebx - movl %edx,%ecx - shll $16,%ecx - xorl %ebx,%eax - xorl %ecx,%edx - movl 120(%ebp),%ebx - xorl %ebx,%eax - movl 124(%ebp),%ecx - xorl %edi,%eax - xorl %edi,%edx - xorl %ecx,%edx - andl $0xfcfcfcfc,%eax - xorl %ebx,%ebx - andl $0xcfcfcfcf,%edx - xorl %ecx,%ecx - movb %al,%bl - movb %ah,%cl - rorl $4,%edx - movl 4(%esp),%ebp - 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 - movl 0x600(%ebp,%ebx,1),%ebx - xorl %ebx,%esi - movl 0x700(%ebp,%ecx,1),%ebx - xorl %ebx,%esi - movl 0x400(%ebp,%eax,1),%ebx - xorl %ebx,%esi - movl 0x500(%ebp,%edx,1),%ebx - xorl %ebx,%esi - movl 32(%esp),%ebp - movl (%esp),%ebx - movl %edi,%eax - decl %ebx - movl %esi,%edi - movl %eax,%esi - movl %ebx,(%esp) - jnz L001start - - # FP - movl 28(%esp),%edx - rorl $1,%edi - movl %esi,%eax - xorl %edi,%esi - andl $0xaaaaaaaa,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $23,%eax - movl %eax,%esi - xorl %edi,%eax - andl $0x03fc03fc,%eax - xorl %eax,%esi - xorl %eax,%edi - - roll $10,%esi - movl %esi,%eax - xorl %edi,%esi - andl $0x33333333,%esi - xorl %esi,%eax - xorl %esi,%edi - - roll $18,%edi - movl %edi,%esi - xorl %eax,%edi - andl $0xfff0000f,%edi - xorl %edi,%esi - xorl %edi,%eax - - roll $12,%esi - movl %esi,%edi - xorl %eax,%esi - andl $0xf0f0f0f0,%esi - xorl %esi,%edi - xorl %esi,%eax - - rorl $4,%eax - movl %eax,(%edx) - movl %edi,4(%edx) - addl $8,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_DES_SPtrans$non_lazy_ptr: -.indirect_symbol _DES_SPtrans -.long 0 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/des/des-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/des/des-586.s deleted file mode 100644 index 43354871fcd4fa..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/des/des-586.s +++ /dev/null @@ -1,1822 +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 Ldes_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 Ldes_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: -Ldes_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 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/md5/md5-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/md5/md5-586.s deleted file mode 100644 index cd5dd459ca0337..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/md5/md5-586.s +++ /dev/null @@ -1,677 +0,0 @@ -.file "../openssl/crypto/md5/asm/md5-586.s" -.text -.globl _md5_block_asm_data_order -.align 4 -_md5_block_asm_data_order: -L_md5_block_asm_data_order_begin: - pushl %esi - pushl %edi - movl 12(%esp),%edi - movl 16(%esp),%esi - movl 20(%esp),%ecx - pushl %ebp - shll $6,%ecx - pushl %ebx - addl %esi,%ecx - subl $64,%ecx - movl (%edi),%eax - pushl %ecx - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx -L000start: - - # R0 section - movl %ecx,%edi - movl (%esi),%ebp - # R0 0 - xorl %edx,%edi - andl %ebx,%edi - leal 3614090360(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 4(%esi),%ebp - addl %ebx,%eax - # R0 1 - xorl %ecx,%edi - andl %eax,%edi - leal 3905402710(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 8(%esi),%ebp - addl %eax,%edx - # R0 2 - xorl %ebx,%edi - andl %edx,%edi - leal 606105819(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 12(%esi),%ebp - addl %edx,%ecx - # R0 3 - xorl %eax,%edi - andl %ecx,%edi - leal 3250441966(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 16(%esi),%ebp - addl %ecx,%ebx - # R0 4 - xorl %edx,%edi - andl %ebx,%edi - leal 4118548399(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 20(%esi),%ebp - addl %ebx,%eax - # R0 5 - xorl %ecx,%edi - andl %eax,%edi - leal 1200080426(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 24(%esi),%ebp - addl %eax,%edx - # R0 6 - xorl %ebx,%edi - andl %edx,%edi - leal 2821735955(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 28(%esi),%ebp - addl %edx,%ecx - # R0 7 - xorl %eax,%edi - andl %ecx,%edi - leal 4249261313(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 32(%esi),%ebp - addl %ecx,%ebx - # R0 8 - xorl %edx,%edi - andl %ebx,%edi - leal 1770035416(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 36(%esi),%ebp - addl %ebx,%eax - # R0 9 - xorl %ecx,%edi - andl %eax,%edi - leal 2336552879(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 40(%esi),%ebp - addl %eax,%edx - # R0 10 - xorl %ebx,%edi - andl %edx,%edi - leal 4294925233(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 44(%esi),%ebp - addl %edx,%ecx - # R0 11 - xorl %eax,%edi - andl %ecx,%edi - leal 2304563134(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 48(%esi),%ebp - addl %ecx,%ebx - # R0 12 - xorl %edx,%edi - andl %ebx,%edi - leal 1804603682(%eax,%ebp,1),%eax - xorl %edx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $7,%eax - movl 52(%esi),%ebp - addl %ebx,%eax - # R0 13 - xorl %ecx,%edi - andl %eax,%edi - leal 4254626195(%edx,%ebp,1),%edx - xorl %ecx,%edi - addl %edi,%edx - movl %eax,%edi - roll $12,%edx - movl 56(%esi),%ebp - addl %eax,%edx - # R0 14 - xorl %ebx,%edi - andl %edx,%edi - leal 2792965006(%ecx,%ebp,1),%ecx - xorl %ebx,%edi - addl %edi,%ecx - movl %edx,%edi - roll $17,%ecx - movl 60(%esi),%ebp - addl %edx,%ecx - # R0 15 - xorl %eax,%edi - andl %ecx,%edi - leal 1236535329(%ebx,%ebp,1),%ebx - xorl %eax,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $22,%ebx - movl 4(%esi),%ebp - addl %ecx,%ebx - - # R1 section - # R1 16 - leal 4129170786(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 24(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 17 - leal 3225465664(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 44(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 18 - leal 643717713(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl (%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 19 - leal 3921069994(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 20 - leal 3593408605(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 40(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 21 - leal 38016083(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 60(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 22 - leal 3634488961(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 16(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 23 - leal 3889429448(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 36(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 24 - leal 568446438(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 56(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 25 - leal 3275163606(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 12(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 26 - leal 4107603335(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 32(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 27 - leal 1163531501(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 52(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - # R1 28 - leal 2850285829(%eax,%ebp,1),%eax - xorl %ebx,%edi - andl %edx,%edi - movl 8(%esi),%ebp - xorl %ecx,%edi - addl %edi,%eax - movl %ebx,%edi - roll $5,%eax - addl %ebx,%eax - # R1 29 - leal 4243563512(%edx,%ebp,1),%edx - xorl %eax,%edi - andl %ecx,%edi - movl 28(%esi),%ebp - xorl %ebx,%edi - addl %edi,%edx - movl %eax,%edi - roll $9,%edx - addl %eax,%edx - # R1 30 - leal 1735328473(%ecx,%ebp,1),%ecx - xorl %edx,%edi - andl %ebx,%edi - movl 48(%esi),%ebp - xorl %eax,%edi - addl %edi,%ecx - movl %edx,%edi - roll $14,%ecx - addl %edx,%ecx - # R1 31 - leal 2368359562(%ebx,%ebp,1),%ebx - xorl %ecx,%edi - andl %eax,%edi - movl 20(%esi),%ebp - xorl %edx,%edi - addl %edi,%ebx - movl %ecx,%edi - roll $20,%ebx - addl %ecx,%ebx - - # R2 section - # R2 32 - xorl %edx,%edi - xorl %ebx,%edi - leal 4294588738(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 32(%esi),%ebp - movl %ebx,%edi - # R2 33 - leal 2272392833(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 44(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 34 - xorl %ebx,%edi - xorl %edx,%edi - leal 1839030562(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 56(%esi),%ebp - movl %edx,%edi - # R2 35 - leal 4259657740(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 4(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 36 - xorl %edx,%edi - xorl %ebx,%edi - leal 2763975236(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 16(%esi),%ebp - movl %ebx,%edi - # R2 37 - leal 1272893353(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 28(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 38 - xorl %ebx,%edi - xorl %edx,%edi - leal 4139469664(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 40(%esi),%ebp - movl %edx,%edi - # R2 39 - leal 3200236656(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 52(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 40 - xorl %edx,%edi - xorl %ebx,%edi - leal 681279174(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl (%esi),%ebp - movl %ebx,%edi - # R2 41 - leal 3936430074(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 12(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 42 - xorl %ebx,%edi - xorl %edx,%edi - leal 3572445317(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 24(%esi),%ebp - movl %edx,%edi - # R2 43 - leal 76029189(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl 36(%esi),%ebp - addl %edi,%ebx - movl %ecx,%edi - roll $23,%ebx - addl %ecx,%ebx - # R2 44 - xorl %edx,%edi - xorl %ebx,%edi - leal 3654602809(%eax,%ebp,1),%eax - addl %edi,%eax - roll $4,%eax - movl 48(%esi),%ebp - movl %ebx,%edi - # R2 45 - leal 3873151461(%edx,%ebp,1),%edx - addl %ebx,%eax - xorl %ecx,%edi - xorl %eax,%edi - movl 60(%esi),%ebp - addl %edi,%edx - movl %eax,%edi - roll $11,%edx - addl %eax,%edx - # R2 46 - xorl %ebx,%edi - xorl %edx,%edi - leal 530742520(%ecx,%ebp,1),%ecx - addl %edi,%ecx - roll $16,%ecx - movl 8(%esi),%ebp - movl %edx,%edi - # R2 47 - leal 3299628645(%ebx,%ebp,1),%ebx - addl %edx,%ecx - xorl %eax,%edi - xorl %ecx,%edi - movl (%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $23,%ebx - addl %ecx,%ebx - - # R3 section - # R3 48 - xorl %edx,%edi - orl %ebx,%edi - leal 4096336452(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 28(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 49 - orl %eax,%edi - leal 1126891415(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 56(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 50 - orl %edx,%edi - leal 2878612391(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 20(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 51 - orl %ecx,%edi - leal 4237533241(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 48(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 52 - orl %ebx,%edi - leal 1700485571(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 12(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 53 - orl %eax,%edi - leal 2399980690(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 40(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 54 - orl %edx,%edi - leal 4293915773(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 4(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 55 - orl %ecx,%edi - leal 2240044497(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 32(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 56 - orl %ebx,%edi - leal 1873313359(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 60(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 57 - orl %eax,%edi - leal 4264355552(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 24(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 58 - orl %edx,%edi - leal 2734768916(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 52(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 59 - orl %ecx,%edi - leal 1309151649(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 16(%esi),%ebp - addl %edi,%ebx - movl $-1,%edi - roll $21,%ebx - xorl %edx,%edi - addl %ecx,%ebx - # R3 60 - orl %ebx,%edi - leal 4149444226(%eax,%ebp,1),%eax - xorl %ecx,%edi - movl 44(%esi),%ebp - addl %edi,%eax - movl $-1,%edi - roll $6,%eax - xorl %ecx,%edi - addl %ebx,%eax - # R3 61 - orl %eax,%edi - leal 3174756917(%edx,%ebp,1),%edx - xorl %ebx,%edi - movl 8(%esi),%ebp - addl %edi,%edx - movl $-1,%edi - roll $10,%edx - xorl %ebx,%edi - addl %eax,%edx - # R3 62 - orl %edx,%edi - leal 718787259(%ecx,%ebp,1),%ecx - xorl %eax,%edi - movl 36(%esi),%ebp - addl %edi,%ecx - movl $-1,%edi - roll $15,%ecx - xorl %eax,%edi - addl %edx,%ecx - # R3 63 - orl %ecx,%edi - leal 3951481745(%ebx,%ebp,1),%ebx - xorl %edx,%edi - movl 24(%esp),%ebp - addl %edi,%ebx - addl $64,%esi - roll $21,%ebx - movl (%ebp),%edi - addl %ecx,%ebx - addl %edi,%eax - movl 4(%ebp),%edi - addl %edi,%ebx - movl 8(%ebp),%edi - addl %edi,%ecx - movl 12(%ebp),%edi - addl %edi,%edx - movl %eax,(%ebp) - movl %ebx,4(%ebp) - movl (%esp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - cmpl %esi,%edi - jae L000start - popl %eax - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/modes/ghash-x86.s b/deps/openssl/asm_obsolete/x86-macosx-gas/modes/ghash-x86.s deleted file mode 100644 index c68edef5be97d8..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/modes/ghash-x86.s +++ /dev/null @@ -1,1251 +0,0 @@ -.file "ghash-x86.s" -.text -.globl _gcm_gmult_4bit_x86 -.align 4 -_gcm_gmult_4bit_x86: -L_gcm_gmult_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%edi - movl 108(%esp),%esi - movl (%edi),%ebp - movl 4(%edi),%edx - movl 8(%edi),%ecx - movl 12(%edi),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) - movl %ebp,(%esp) - movl %edx,4(%esp) - movl %ecx,8(%esp) - movl %ebx,12(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp L000x86_loop -.align 4,0x90 -L000x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js L001x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp L000x86_loop -.align 4,0x90 -L001x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_ghash_4bit_x86 -.align 4 -_gcm_ghash_4bit_x86: -L_gcm_ghash_4bit_x86_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - subl $84,%esp - movl 104(%esp),%ebx - movl 108(%esp),%esi - movl 112(%esp),%edi - movl 116(%esp),%ecx - addl %edi,%ecx - movl %ecx,116(%esp) - movl (%ebx),%ebp - movl 4(%ebx),%edx - movl 8(%ebx),%ecx - movl 12(%ebx),%ebx - movl $0,16(%esp) - movl $471859200,20(%esp) - movl $943718400,24(%esp) - movl $610271232,28(%esp) - movl $1887436800,32(%esp) - movl $1822425088,36(%esp) - movl $1220542464,40(%esp) - movl $1423966208,44(%esp) - movl $3774873600,48(%esp) - movl $4246732800,52(%esp) - movl $3644850176,56(%esp) - movl $3311403008,60(%esp) - movl $2441084928,64(%esp) - movl $2376073216,68(%esp) - movl $2847932416,72(%esp) - movl $3051356160,76(%esp) -.align 4,0x90 -L002x86_outer_loop: - xorl 12(%edi),%ebx - xorl 8(%edi),%ecx - xorl 4(%edi),%edx - xorl (%edi),%ebp - movl %ebx,12(%esp) - movl %ecx,8(%esp) - movl %edx,4(%esp) - movl %ebp,(%esp) - shrl $20,%ebx - andl $240,%ebx - movl 4(%esi,%ebx,1),%ebp - movl (%esi,%ebx,1),%edx - movl 12(%esi,%ebx,1),%ecx - movl 8(%esi,%ebx,1),%ebx - xorl %eax,%eax - movl $15,%edi - jmp L003x86_loop -.align 4,0x90 -L003x86_loop: - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - andb $240,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - decl %edi - js L004x86_break - movb %bl,%al - shrdl $4,%ecx,%ebx - andb $15,%al - shrdl $4,%edx,%ecx - shrdl $4,%ebp,%edx - shrl $4,%ebp - xorl 16(%esp,%eax,4),%ebp - movb (%esp,%edi,1),%al - shlb $4,%al - xorl 8(%esi,%eax,1),%ebx - xorl 12(%esi,%eax,1),%ecx - xorl (%esi,%eax,1),%edx - xorl 4(%esi,%eax,1),%ebp - jmp L003x86_loop -.align 4,0x90 -L004x86_break: - bswap %ebx - bswap %ecx - bswap %edx - bswap %ebp - movl 112(%esp),%edi - leal 16(%edi),%edi - cmpl 116(%esp),%edi - movl %edi,112(%esp) - jb L002x86_outer_loop - movl 104(%esp),%edi - movl %ebx,12(%edi) - movl %ecx,8(%edi) - movl %edx,4(%edi) - movl %ebp,(%edi) - addl $84,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_gmult_4bit_mmx -.align 4 -_gcm_gmult_4bit_mmx: -L_gcm_gmult_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%esi - call L005pic_point -L005pic_point: - popl %eax - leal Lrem_4bit-L005pic_point(%eax),%eax - movzbl 15(%edi),%ebx - xorl %ecx,%ecx - movl %ebx,%edx - movb %dl,%cl - movl $14,%ebp - shlb $4,%cl - andl $240,%edx - movq 8(%esi,%ecx,1),%mm0 - movq (%esi,%ecx,1),%mm1 - movd %mm0,%ebx - jmp L006mmx_loop -.align 4,0x90 -L006mmx_loop: - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - movb (%edi,%ebp,1),%cl - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - decl %ebp - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - movl %ecx,%edx - pxor %mm2,%mm0 - js L007mmx_break - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - jmp L006mmx_loop -.align 4,0x90 -L007mmx_break: - shlb $4,%cl - andl $15,%ebx - psrlq $4,%mm0 - andl $240,%edx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%ecx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%ecx,1),%mm1 - pxor %mm2,%mm0 - psrlq $4,%mm0 - andl $15,%ebx - movq %mm1,%mm2 - psrlq $4,%mm1 - pxor 8(%esi,%edx,1),%mm0 - psllq $60,%mm2 - pxor (%eax,%ebx,8),%mm1 - movd %mm0,%ebx - pxor (%esi,%edx,1),%mm1 - pxor %mm2,%mm0 - psrlq $32,%mm0 - movd %mm1,%edx - psrlq $32,%mm1 - movd %mm0,%ecx - movd %mm1,%ebp - bswap %ebx - bswap %edx - bswap %ecx - bswap %ebp - emms - movl %ebx,12(%edi) - movl %edx,4(%edi) - movl %ecx,8(%edi) - movl %ebp,(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_ghash_4bit_mmx -.align 4 -_gcm_ghash_4bit_mmx: -L_gcm_ghash_4bit_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%ebx - movl 28(%esp),%ecx - movl 32(%esp),%edx - movl %esp,%ebp - call L008pic_point -L008pic_point: - popl %esi - leal Lrem_8bit-L008pic_point(%esi),%esi - subl $544,%esp - andl $-64,%esp - subl $16,%esp - addl %ecx,%edx - movl %eax,544(%esp) - movl %edx,552(%esp) - movl %ebp,556(%esp) - addl $128,%ebx - leal 144(%esp),%edi - leal 400(%esp),%ebp - movl -120(%ebx),%edx - movq -120(%ebx),%mm0 - movq -128(%ebx),%mm3 - shll $4,%edx - movb %dl,(%esp) - movl -104(%ebx),%edx - movq -104(%ebx),%mm2 - movq -112(%ebx),%mm5 - movq %mm0,-128(%edi) - psrlq $4,%mm0 - movq %mm3,(%edi) - movq %mm3,%mm7 - psrlq $4,%mm3 - shll $4,%edx - movb %dl,1(%esp) - movl -88(%ebx),%edx - movq -88(%ebx),%mm1 - psllq $60,%mm7 - movq -96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-120(%edi) - psrlq $4,%mm2 - movq %mm5,8(%edi) - movq %mm5,%mm6 - movq %mm0,-128(%ebp) - psrlq $4,%mm5 - movq %mm3,(%ebp) - shll $4,%edx - movb %dl,2(%esp) - movl -72(%ebx),%edx - movq -72(%ebx),%mm0 - psllq $60,%mm6 - movq -80(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-112(%edi) - psrlq $4,%mm1 - movq %mm4,16(%edi) - movq %mm4,%mm7 - movq %mm2,-120(%ebp) - psrlq $4,%mm4 - movq %mm5,8(%ebp) - shll $4,%edx - movb %dl,3(%esp) - movl -56(%ebx),%edx - movq -56(%ebx),%mm2 - psllq $60,%mm7 - movq -64(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-104(%edi) - psrlq $4,%mm0 - movq %mm3,24(%edi) - movq %mm3,%mm6 - movq %mm1,-112(%ebp) - psrlq $4,%mm3 - movq %mm4,16(%ebp) - shll $4,%edx - movb %dl,4(%esp) - movl -40(%ebx),%edx - movq -40(%ebx),%mm1 - psllq $60,%mm6 - movq -48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-96(%edi) - psrlq $4,%mm2 - movq %mm5,32(%edi) - movq %mm5,%mm7 - movq %mm0,-104(%ebp) - psrlq $4,%mm5 - movq %mm3,24(%ebp) - shll $4,%edx - movb %dl,5(%esp) - movl -24(%ebx),%edx - movq -24(%ebx),%mm0 - psllq $60,%mm7 - movq -32(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-88(%edi) - psrlq $4,%mm1 - movq %mm4,40(%edi) - movq %mm4,%mm6 - movq %mm2,-96(%ebp) - psrlq $4,%mm4 - movq %mm5,32(%ebp) - shll $4,%edx - movb %dl,6(%esp) - movl -8(%ebx),%edx - movq -8(%ebx),%mm2 - psllq $60,%mm6 - movq -16(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-80(%edi) - psrlq $4,%mm0 - movq %mm3,48(%edi) - movq %mm3,%mm7 - movq %mm1,-88(%ebp) - psrlq $4,%mm3 - movq %mm4,40(%ebp) - shll $4,%edx - movb %dl,7(%esp) - movl 8(%ebx),%edx - movq 8(%ebx),%mm1 - psllq $60,%mm7 - movq (%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-72(%edi) - psrlq $4,%mm2 - movq %mm5,56(%edi) - movq %mm5,%mm6 - movq %mm0,-80(%ebp) - psrlq $4,%mm5 - movq %mm3,48(%ebp) - shll $4,%edx - movb %dl,8(%esp) - movl 24(%ebx),%edx - movq 24(%ebx),%mm0 - psllq $60,%mm6 - movq 16(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-64(%edi) - psrlq $4,%mm1 - movq %mm4,64(%edi) - movq %mm4,%mm7 - movq %mm2,-72(%ebp) - psrlq $4,%mm4 - movq %mm5,56(%ebp) - shll $4,%edx - movb %dl,9(%esp) - movl 40(%ebx),%edx - movq 40(%ebx),%mm2 - psllq $60,%mm7 - movq 32(%ebx),%mm5 - por %mm7,%mm1 - movq %mm0,-56(%edi) - psrlq $4,%mm0 - movq %mm3,72(%edi) - movq %mm3,%mm6 - movq %mm1,-64(%ebp) - psrlq $4,%mm3 - movq %mm4,64(%ebp) - shll $4,%edx - movb %dl,10(%esp) - movl 56(%ebx),%edx - movq 56(%ebx),%mm1 - psllq $60,%mm6 - movq 48(%ebx),%mm4 - por %mm6,%mm0 - movq %mm2,-48(%edi) - psrlq $4,%mm2 - movq %mm5,80(%edi) - movq %mm5,%mm7 - movq %mm0,-56(%ebp) - psrlq $4,%mm5 - movq %mm3,72(%ebp) - shll $4,%edx - movb %dl,11(%esp) - movl 72(%ebx),%edx - movq 72(%ebx),%mm0 - psllq $60,%mm7 - movq 64(%ebx),%mm3 - por %mm7,%mm2 - movq %mm1,-40(%edi) - psrlq $4,%mm1 - movq %mm4,88(%edi) - movq %mm4,%mm6 - movq %mm2,-48(%ebp) - psrlq $4,%mm4 - movq %mm5,80(%ebp) - shll $4,%edx - movb %dl,12(%esp) - movl 88(%ebx),%edx - movq 88(%ebx),%mm2 - psllq $60,%mm6 - movq 80(%ebx),%mm5 - por %mm6,%mm1 - movq %mm0,-32(%edi) - psrlq $4,%mm0 - movq %mm3,96(%edi) - movq %mm3,%mm7 - movq %mm1,-40(%ebp) - psrlq $4,%mm3 - movq %mm4,88(%ebp) - shll $4,%edx - movb %dl,13(%esp) - movl 104(%ebx),%edx - movq 104(%ebx),%mm1 - psllq $60,%mm7 - movq 96(%ebx),%mm4 - por %mm7,%mm0 - movq %mm2,-24(%edi) - psrlq $4,%mm2 - movq %mm5,104(%edi) - movq %mm5,%mm6 - movq %mm0,-32(%ebp) - psrlq $4,%mm5 - movq %mm3,96(%ebp) - shll $4,%edx - movb %dl,14(%esp) - movl 120(%ebx),%edx - movq 120(%ebx),%mm0 - psllq $60,%mm6 - movq 112(%ebx),%mm3 - por %mm6,%mm2 - movq %mm1,-16(%edi) - psrlq $4,%mm1 - movq %mm4,112(%edi) - movq %mm4,%mm7 - movq %mm2,-24(%ebp) - psrlq $4,%mm4 - movq %mm5,104(%ebp) - shll $4,%edx - movb %dl,15(%esp) - psllq $60,%mm7 - por %mm7,%mm1 - movq %mm0,-8(%edi) - psrlq $4,%mm0 - movq %mm3,120(%edi) - movq %mm3,%mm6 - movq %mm1,-16(%ebp) - psrlq $4,%mm3 - movq %mm4,112(%ebp) - psllq $60,%mm6 - por %mm6,%mm0 - movq %mm0,-8(%ebp) - movq %mm3,120(%ebp) - movq (%eax),%mm6 - movl 8(%eax),%ebx - movl 12(%eax),%edx -.align 4,0x90 -L009outer: - xorl 12(%ecx),%edx - xorl 8(%ecx),%ebx - pxor (%ecx),%mm6 - leal 16(%ecx),%ecx - movl %ebx,536(%esp) - movq %mm6,528(%esp) - movl %ecx,548(%esp) - xorl %eax,%eax - roll $8,%edx - movb %dl,%al - movl %eax,%ebp - andb $15,%al - shrl $4,%ebp - pxor %mm0,%mm0 - roll $8,%edx - pxor %mm1,%mm1 - pxor %mm2,%mm2 - movq 16(%esp,%eax,8),%mm7 - movq 144(%esp,%eax,8),%mm6 - movb %dl,%al - movd %mm7,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%edi - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 536(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 532(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 528(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm1,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm0 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - xorb (%esp,%ebp,1),%bl - movb %dl,%al - movd %mm7,%ecx - movzbl %bl,%ebx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%ebp - psrlq $8,%mm6 - pxor 272(%esp,%edi,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm0,%mm6 - shrl $4,%ebp - pinsrw $2,(%esi,%ebx,2),%mm2 - pxor 16(%esp,%eax,8),%mm7 - roll $8,%edx - pxor 144(%esp,%eax,8),%mm6 - pxor %mm3,%mm7 - pxor 400(%esp,%edi,8),%mm6 - xorb (%esp,%edi,1),%cl - movb %dl,%al - movl 524(%esp),%edx - movd %mm7,%ebx - movzbl %cl,%ecx - psrlq $8,%mm7 - movq %mm6,%mm3 - movl %eax,%edi - psrlq $8,%mm6 - pxor 272(%esp,%ebp,8),%mm7 - andb $15,%al - psllq $56,%mm3 - pxor %mm2,%mm6 - shrl $4,%edi - pinsrw $2,(%esi,%ecx,2),%mm1 - pxor 16(%esp,%eax,8),%mm7 - pxor 144(%esp,%eax,8),%mm6 - xorb (%esp,%ebp,1),%bl - pxor %mm3,%mm7 - pxor 400(%esp,%ebp,8),%mm6 - movzbl %bl,%ebx - pxor %mm2,%mm2 - psllq $4,%mm1 - movd %mm7,%ecx - psrlq $4,%mm7 - movq %mm6,%mm3 - psrlq $4,%mm6 - shll $4,%ecx - pxor 16(%esp,%edi,8),%mm7 - psllq $60,%mm3 - movzbl %cl,%ecx - pxor %mm3,%mm7 - pxor 144(%esp,%edi,8),%mm6 - pinsrw $2,(%esi,%ebx,2),%mm0 - pxor %mm1,%mm6 - movd %mm7,%edx - pinsrw $3,(%esi,%ecx,2),%mm2 - psllq $12,%mm0 - pxor %mm0,%mm6 - psrlq $32,%mm7 - pxor %mm2,%mm6 - movl 548(%esp),%ecx - movd %mm7,%ebx - movq %mm6,%mm3 - psllw $8,%mm6 - psrlw $8,%mm3 - por %mm3,%mm6 - bswap %edx - pshufw $27,%mm6,%mm6 - bswap %ebx - cmpl 552(%esp),%ecx - jne L009outer - movl 544(%esp),%eax - movl %edx,12(%eax) - movl %ebx,8(%eax) - movq %mm6,(%eax) - movl 556(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _gcm_init_clmul -.align 4 -_gcm_init_clmul: -L_gcm_init_clmul_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - call L010pic -L010pic: - popl %ecx - leal Lbswap-L010pic(%ecx),%ecx - movdqu (%eax),%xmm2 - pshufd $78,%xmm2,%xmm2 - pshufd $255,%xmm2,%xmm4 - movdqa %xmm2,%xmm3 - psllq $1,%xmm2 - pxor %xmm5,%xmm5 - psrlq $63,%xmm3 - pcmpgtd %xmm4,%xmm5 - pslldq $8,%xmm3 - por %xmm3,%xmm2 - pand 16(%ecx),%xmm5 - pxor %xmm5,%xmm2 - movdqa %xmm2,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - pshufd $78,%xmm2,%xmm3 - pshufd $78,%xmm0,%xmm4 - pxor %xmm2,%xmm3 - movdqu %xmm2,(%edx) - pxor %xmm0,%xmm4 - movdqu %xmm0,16(%edx) -.byte 102,15,58,15,227,8 - movdqu %xmm4,32(%edx) - ret -.globl _gcm_gmult_clmul -.align 4 -_gcm_gmult_clmul: -L_gcm_gmult_clmul_begin: - movl 4(%esp),%eax - movl 8(%esp),%edx - call L011pic -L011pic: - popl %ecx - leal Lbswap-L011pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movups (%edx),%xmm2 -.byte 102,15,56,0,197 - movups 32(%edx),%xmm4 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pxor %xmm0,%xmm3 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - ret -.globl _gcm_ghash_clmul -.align 4 -_gcm_ghash_clmul: -L_gcm_ghash_clmul_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%eax - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebx - call L012pic -L012pic: - popl %ecx - leal Lbswap-L012pic(%ecx),%ecx - movdqu (%eax),%xmm0 - movdqa (%ecx),%xmm5 - movdqu (%edx),%xmm2 -.byte 102,15,56,0,197 - subl $16,%ebx - jz L013odd_tail - movdqu (%esi),%xmm3 - movdqu 16(%esi),%xmm6 -.byte 102,15,56,0,221 -.byte 102,15,56,0,245 - movdqu 32(%edx),%xmm5 - pxor %xmm3,%xmm0 - pshufd $78,%xmm6,%xmm3 - movdqa %xmm6,%xmm7 - pxor %xmm6,%xmm3 - leal 32(%esi),%esi -.byte 102,15,58,68,242,0 -.byte 102,15,58,68,250,17 -.byte 102,15,58,68,221,0 - movups 16(%edx),%xmm2 - nop - subl $32,%ebx - jbe L014even_tail - jmp L015mod_loop -.align 5,0x90 -L015mod_loop: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 - nop -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movups (%edx),%xmm2 - xorps %xmm6,%xmm0 - movdqa (%ecx),%xmm5 - xorps %xmm7,%xmm1 - movdqu (%esi),%xmm7 - pxor %xmm0,%xmm3 - movdqu 16(%esi),%xmm6 - pxor %xmm1,%xmm3 -.byte 102,15,56,0,253 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 -.byte 102,15,56,0,245 - pxor %xmm7,%xmm1 - movdqa %xmm6,%xmm7 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 -.byte 102,15,58,68,242,0 - movups 32(%edx),%xmm5 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - pshufd $78,%xmm7,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm7,%xmm3 - pxor %xmm4,%xmm1 -.byte 102,15,58,68,250,17 - movups 16(%edx),%xmm2 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -.byte 102,15,58,68,221,0 - leal 32(%esi),%esi - subl $32,%ebx - ja L015mod_loop -L014even_tail: - pshufd $78,%xmm0,%xmm4 - movdqa %xmm0,%xmm1 - pxor %xmm0,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,229,16 - movdqa (%ecx),%xmm5 - xorps %xmm6,%xmm0 - xorps %xmm7,%xmm1 - pxor %xmm0,%xmm3 - pxor %xmm1,%xmm3 - pxor %xmm3,%xmm4 - movdqa %xmm4,%xmm3 - psrldq $8,%xmm4 - pslldq $8,%xmm3 - pxor %xmm4,%xmm1 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 - testl %ebx,%ebx - jnz L016done - movups (%edx),%xmm2 -L013odd_tail: - movdqu (%esi),%xmm3 -.byte 102,15,56,0,221 - pxor %xmm3,%xmm0 - movdqa %xmm0,%xmm1 - pshufd $78,%xmm0,%xmm3 - pshufd $78,%xmm2,%xmm4 - pxor %xmm0,%xmm3 - pxor %xmm2,%xmm4 -.byte 102,15,58,68,194,0 -.byte 102,15,58,68,202,17 -.byte 102,15,58,68,220,0 - xorps %xmm0,%xmm3 - xorps %xmm1,%xmm3 - movdqa %xmm3,%xmm4 - psrldq $8,%xmm3 - pslldq $8,%xmm4 - pxor %xmm3,%xmm1 - pxor %xmm4,%xmm0 - movdqa %xmm0,%xmm4 - movdqa %xmm0,%xmm3 - psllq $5,%xmm0 - pxor %xmm0,%xmm3 - psllq $1,%xmm0 - pxor %xmm3,%xmm0 - psllq $57,%xmm0 - movdqa %xmm0,%xmm3 - pslldq $8,%xmm0 - psrldq $8,%xmm3 - pxor %xmm4,%xmm0 - pxor %xmm3,%xmm1 - movdqa %xmm0,%xmm4 - psrlq $1,%xmm0 - pxor %xmm4,%xmm1 - pxor %xmm0,%xmm4 - psrlq $5,%xmm0 - pxor %xmm4,%xmm0 - psrlq $1,%xmm0 - pxor %xmm1,%xmm0 -L016done: -.byte 102,15,56,0,197 - movdqu %xmm0,(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -Lbswap: -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -.align 6,0x90 -Lrem_8bit: -.value 0,450,900,582,1800,1738,1164,1358 -.value 3600,4050,3476,3158,2328,2266,2716,2910 -.value 7200,7650,8100,7782,6952,6890,6316,6510 -.value 4656,5106,4532,4214,5432,5370,5820,6014 -.value 14400,14722,15300,14854,16200,16010,15564,15630 -.value 13904,14226,13780,13334,12632,12442,13020,13086 -.value 9312,9634,10212,9766,9064,8874,8428,8494 -.value 10864,11186,10740,10294,11640,11450,12028,12094 -.value 28800,28994,29444,29382,30600,30282,29708,30158 -.value 32400,32594,32020,31958,31128,30810,31260,31710 -.value 27808,28002,28452,28390,27560,27242,26668,27118 -.value 25264,25458,24884,24822,26040,25722,26172,26622 -.value 18624,18690,19268,19078,20424,19978,19532,19854 -.value 18128,18194,17748,17558,16856,16410,16988,17310 -.value 21728,21794,22372,22182,21480,21034,20588,20910 -.value 23280,23346,22900,22710,24056,23610,24188,24510 -.value 57600,57538,57988,58182,58888,59338,58764,58446 -.value 61200,61138,60564,60758,59416,59866,60316,59998 -.value 64800,64738,65188,65382,64040,64490,63916,63598 -.value 62256,62194,61620,61814,62520,62970,63420,63102 -.value 55616,55426,56004,56070,56904,57226,56780,56334 -.value 55120,54930,54484,54550,53336,53658,54236,53790 -.value 50528,50338,50916,50982,49768,50090,49644,49198 -.value 52080,51890,51444,51510,52344,52666,53244,52798 -.value 37248,36930,37380,37830,38536,38730,38156,38094 -.value 40848,40530,39956,40406,39064,39258,39708,39646 -.value 36256,35938,36388,36838,35496,35690,35116,35054 -.value 33712,33394,32820,33270,33976,34170,34620,34558 -.value 43456,43010,43588,43910,44744,44810,44364,44174 -.value 42960,42514,42068,42390,41176,41242,41820,41630 -.value 46560,46114,46692,47014,45800,45866,45420,45230 -.value 48112,47666,47220,47542,48376,48442,49020,48830 -.align 6,0x90 -Lrem_4bit: -.long 0,0,0,471859200,0,943718400,0,610271232 -.long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 -.long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 -.long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 -.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -.byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -.byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -.byte 0 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/rc4/rc4-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/rc4/rc4-586.s deleted file mode 100644 index ac82e76498b3b7..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/rc4/rc4-586.s +++ /dev/null @@ -1,379 +0,0 @@ -.file "rc4-586.s" -.text -.globl _RC4 -.align 4 -_RC4: -L_RC4_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%edx - movl 28(%esp),%esi - movl 32(%esp),%ebp - xorl %eax,%eax - xorl %ebx,%ebx - cmpl $0,%edx - je L000abort - movb (%edi),%al - movb 4(%edi),%bl - addl $8,%edi - leal (%esi,%edx,1),%ecx - subl %esi,%ebp - movl %ecx,24(%esp) - incb %al - cmpl $-1,256(%edi) - je L001RC4_CHAR - movl (%edi,%eax,4),%ecx - andl $-4,%edx - jz L002loop1 - movl %ebp,32(%esp) - testl $-8,%edx - jz L003go4loop4 - call L004PIC_me_up -L004PIC_me_up: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L004PIC_me_up(%ebp),%ebp - btl $26,(%ebp) - jnc L003go4loop4 - movl 32(%esp),%ebp - andl $-8,%edx - leal -8(%esi,%edx,1),%edx - movl %edx,-4(%edi) - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - movq (%esi),%mm0 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 - jmp L005loop_mmx_enter -.align 4,0x90 -L006loop_mmx: - addb %cl,%bl - psllq $56,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movq (%esi),%mm0 - movq %mm2,-8(%ebp,%esi,1) - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm2 -L005loop_mmx_enter: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm0,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $8,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $16,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $24,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $32,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $40,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - addb %cl,%bl - psllq $48,%mm1 - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - incl %eax - addl %ecx,%edx - movzbl %al,%eax - movzbl %dl,%edx - pxor %mm1,%mm2 - movl (%edi,%eax,4),%ecx - movd (%edi,%edx,4),%mm1 - movl %ebx,%edx - xorl %ebx,%ebx - movb %dl,%bl - cmpl -4(%edi),%esi - leal 8(%esi),%esi - jb L006loop_mmx - psllq $56,%mm1 - pxor %mm1,%mm2 - movq %mm2,-8(%ebp,%esi,1) - emms - cmpl 24(%esp),%esi - je L007done - jmp L002loop1 -.align 4,0x90 -L003go4loop4: - leal -4(%esi,%edx,1),%edx - movl %edx,28(%esp) -L008loop4: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%eax,4),%ecx - movl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl (%edi,%eax,4),%ecx - orl (%edi,%edx,4),%ebp - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - rorl $8,%ebp - movl 32(%esp),%ecx - orl (%edi,%edx,4),%ebp - rorl $8,%ebp - xorl (%esi),%ebp - cmpl 28(%esp),%esi - movl %ebp,(%ecx,%esi,1) - leal 4(%esi),%esi - movl (%edi,%eax,4),%ecx - jb L008loop4 - cmpl 24(%esp),%esi - je L007done - movl 32(%esp),%ebp -.align 4,0x90 -L002loop1: - addb %cl,%bl - movl (%edi,%ebx,4),%edx - movl %ecx,(%edi,%ebx,4) - movl %edx,(%edi,%eax,4) - addl %ecx,%edx - incb %al - andl $255,%edx - movl (%edi,%edx,4),%edx - xorb (%esi),%dl - leal 1(%esi),%esi - movl (%edi,%eax,4),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb L002loop1 - jmp L007done -.align 4,0x90 -L001RC4_CHAR: - movzbl (%edi,%eax,1),%ecx -L009cloop1: - addb %cl,%bl - movzbl (%edi,%ebx,1),%edx - movb %cl,(%edi,%ebx,1) - movb %dl,(%edi,%eax,1) - addb %cl,%dl - movzbl (%edi,%edx,1),%edx - addb $1,%al - xorb (%esi),%dl - leal 1(%esi),%esi - movzbl (%edi,%eax,1),%ecx - cmpl 24(%esp),%esi - movb %dl,-1(%ebp,%esi,1) - jb L009cloop1 -L007done: - decb %al - movl %ebx,-4(%edi) - movb %al,-8(%edi) -L000abort: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _private_RC4_set_key -.align 4 -_private_RC4_set_key: -L_private_RC4_set_key_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%esi - call L010PIC_me_up -L010PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L010PIC_me_up(%edx),%edx - leal 8(%edi),%edi - leal (%esi,%ebp,1),%esi - negl %ebp - xorl %eax,%eax - movl %ebp,-4(%edi) - btl $20,(%edx) - jc L011c1stloop -.align 4,0x90 -L012w1stloop: - movl %eax,(%edi,%eax,4) - addb $1,%al - jnc L012w1stloop - xorl %ecx,%ecx - xorl %edx,%edx -.align 4,0x90 -L013w2ndloop: - movl (%edi,%ecx,4),%eax - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movl (%edi,%edx,4),%ebx - jnz L014wnowrap - movl -4(%edi),%ebp -L014wnowrap: - movl %eax,(%edi,%edx,4) - movl %ebx,(%edi,%ecx,4) - addb $1,%cl - jnc L013w2ndloop - jmp L015exit -.align 4,0x90 -L011c1stloop: - movb %al,(%edi,%eax,1) - addb $1,%al - jnc L011c1stloop - xorl %ecx,%ecx - xorl %edx,%edx - xorl %ebx,%ebx -.align 4,0x90 -L016c2ndloop: - movb (%edi,%ecx,1),%al - addb (%esi,%ebp,1),%dl - addb %al,%dl - addl $1,%ebp - movb (%edi,%edx,1),%bl - jnz L017cnowrap - movl -4(%edi),%ebp -L017cnowrap: - movb %al,(%edi,%edx,1) - movb %bl,(%edi,%ecx,1) - addb $1,%cl - jnc L016c2ndloop - movl $-1,256(%edi) -L015exit: - xorl %eax,%eax - movl %eax,-8(%edi) - movl %eax,-4(%edi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _RC4_options -.align 4 -_RC4_options: -L_RC4_options_begin: - call L018pic_point -L018pic_point: - popl %eax - leal L019opts-L018pic_point(%eax),%eax - call L020PIC_me_up -L020PIC_me_up: - popl %edx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L020PIC_me_up(%edx),%edx - movl (%edx),%edx - btl $20,%edx - jc L0211xchar - btl $26,%edx - jnc L022ret - addl $25,%eax - ret -L0211xchar: - addl $12,%eax -L022ret: - ret -.align 6,0x90 -L019opts: -.byte 114,99,52,40,52,120,44,105,110,116,41,0 -.byte 114,99,52,40,49,120,44,99,104,97,114,41,0 -.byte 114,99,52,40,56,120,44,109,109,120,41,0 -.byte 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.align 6,0x90 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/ripemd/rmd-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/ripemd/rmd-586.s deleted file mode 100644 index 7323b2de7305a3..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/ripemd/rmd-586.s +++ /dev/null @@ -1,1963 +0,0 @@ -.file "../openssl/crypto/ripemd/asm/rmd-586.s" -.text -.globl _ripemd160_block_asm_data_order -.align 4 -_ripemd160_block_asm_data_order: -L_ripemd160_block_asm_data_order_begin: - movl 4(%esp),%edx - movl 8(%esp),%eax - pushl %esi - movl (%edx),%ecx - pushl %edi - movl 4(%edx),%esi - pushl %ebp - movl 8(%edx),%edi - pushl %ebx - subl $108,%esp -L000start: - - movl (%eax),%ebx - movl 4(%eax),%ebp - movl %ebx,(%esp) - movl %ebp,4(%esp) - movl 8(%eax),%ebx - movl 12(%eax),%ebp - movl %ebx,8(%esp) - movl %ebp,12(%esp) - movl 16(%eax),%ebx - movl 20(%eax),%ebp - movl %ebx,16(%esp) - movl %ebp,20(%esp) - movl 24(%eax),%ebx - movl 28(%eax),%ebp - movl %ebx,24(%esp) - movl %ebp,28(%esp) - movl 32(%eax),%ebx - movl 36(%eax),%ebp - movl %ebx,32(%esp) - movl %ebp,36(%esp) - movl 40(%eax),%ebx - movl 44(%eax),%ebp - movl %ebx,40(%esp) - movl %ebp,44(%esp) - movl 48(%eax),%ebx - movl 52(%eax),%ebp - movl %ebx,48(%esp) - movl %ebp,52(%esp) - movl 56(%eax),%ebx - movl 60(%eax),%ebp - movl %ebx,56(%esp) - movl %ebp,60(%esp) - movl %edi,%eax - movl 12(%edx),%ebx - movl 16(%edx),%ebp - # 0 - xorl %ebx,%eax - movl (%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $11,%ecx - addl %ebp,%ecx - # 1 - xorl %edi,%eax - movl 4(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $14,%ebp - addl %ebx,%ebp - # 2 - movl 8(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $15,%ebx - addl %edi,%ebx - # 3 - xorl %ecx,%eax - movl 12(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $12,%edi - addl %esi,%edi - # 4 - movl 16(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $5,%esi - addl %ecx,%esi - # 5 - xorl %ebx,%eax - movl 20(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 6 - movl 24(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 7 - xorl %esi,%eax - movl 28(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 8 - movl 32(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - # 9 - xorl %ebp,%eax - movl 36(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 10 - movl 40(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 11 - xorl %edi,%eax - movl 44(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 12 - movl 48(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $6,%ebx - addl %edi,%ebx - # 13 - xorl %ecx,%eax - movl 52(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $7,%edi - addl %esi,%edi - # 14 - movl 56(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $9,%esi - addl %ecx,%esi - # 15 - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl $-1,%eax - roll $10,%edi - addl %edx,%ecx - movl 28(%esp),%edx - roll $8,%ecx - addl %ebp,%ecx - # 16 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $7,%ebp - addl %ebx,%ebp - # 17 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 52(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $6,%ebx - addl %edi,%ebx - # 18 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $8,%edi - addl %esi,%edi - # 19 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $13,%esi - addl %ecx,%esi - # 20 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $11,%ecx - addl %ebp,%ecx - # 21 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $9,%ebp - addl %ebx,%ebp - # 22 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 1518500249(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $7,%ebx - addl %edi,%ebx - # 23 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 48(%esp),%edx - roll $10,%ebp - leal 1518500249(%edi,%eax,1),%edi - movl $-1,%eax - roll $15,%edi - addl %esi,%edi - # 24 - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 1518500249(%esi,%edx,1),%esi - movl $-1,%edx - roll $7,%esi - addl %ecx,%esi - # 25 - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%edi - leal 1518500249(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $12,%ecx - addl %ebp,%ecx - # 26 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 1518500249(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $15,%ebp - addl %ebx,%ebp - # 27 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 1518500249(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - # 28 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl $-1,%edx - roll $11,%edi - addl %esi,%edi - # 29 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 44(%esp),%edx - roll $10,%ebx - leal 1518500249(%esi,%eax,1),%esi - movl $-1,%eax - roll $7,%esi - addl %ecx,%esi - # 30 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%edi - leal 1518500249(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $13,%ecx - addl %ebp,%ecx - # 31 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl $-1,%edx - roll $10,%esi - leal 1518500249(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $12,%ebp - addl %ebx,%ebp - # 32 - movl 12(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $11,%ebx - addl %edi,%ebx - # 33 - movl 40(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $13,%edi - addl %esi,%edi - # 34 - movl 56(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $6,%esi - addl %ecx,%esi - # 35 - movl 16(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $7,%ecx - addl %ebp,%ecx - # 36 - movl 36(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $14,%ebp - addl %ebx,%ebp - # 37 - movl 60(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $9,%ebx - addl %edi,%ebx - # 38 - movl 32(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1859775393(%edi,%edx,1),%edi - subl %ebx,%eax - roll $13,%edi - addl %esi,%edi - # 39 - movl 4(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1859775393(%esi,%eax,1),%esi - subl %edi,%edx - roll $15,%esi - addl %ecx,%esi - # 40 - movl 8(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1859775393(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 41 - movl 28(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1859775393(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $8,%ebp - addl %ebx,%ebp - # 42 - movl (%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1859775393(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $13,%ebx - addl %edi,%ebx - # 43 - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1859775393(%edi,%eax,1),%edi - subl %ebx,%edx - roll $6,%edi - addl %esi,%edi - # 44 - movl 52(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1859775393(%esi,%edx,1),%esi - subl %edi,%eax - roll $5,%esi - addl %ecx,%esi - # 45 - movl 44(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1859775393(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $12,%ecx - addl %ebp,%ecx - # 46 - movl 20(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1859775393(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 47 - movl 48(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 48 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - # 49 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - # 50 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 51 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 52 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 53 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - # 54 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - # 55 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 56 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - # 57 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 58 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $5,%edi - addl %esi,%edi - # 59 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%ebx - leal 2400959708(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $6,%esi - addl %ecx,%esi - # 60 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%edi - leal 2400959708(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 61 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%esi - leal 2400959708(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - # 62 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ecx - leal 2400959708(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 63 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%ebp - leal 2400959708(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - # 64 - movl 16(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $9,%esi - addl %ecx,%esi - # 65 - movl (%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - # 66 - movl 20(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $5,%ebp - addl %ebx,%ebp - # 67 - movl 36(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $11,%ebx - addl %edi,%ebx - # 68 - movl 28(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $6,%edi - addl %esi,%edi - # 69 - movl 48(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - subl %ebx,%edx - roll $8,%esi - addl %ecx,%esi - # 70 - movl 8(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 2840853838(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - # 71 - movl 40(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 2840853838(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $12,%ebp - addl %ebx,%ebp - # 72 - movl 56(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 2840853838(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $5,%ebx - addl %edi,%ebx - # 73 - movl 4(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 2840853838(%edi,%eax,1),%edi - subl %ebp,%edx - roll $12,%edi - addl %esi,%edi - # 74 - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 2840853838(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 75 - movl 32(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 2840853838(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $14,%ecx - addl %ebp,%ecx - # 76 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 2840853838(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $11,%ebp - addl %ebx,%ebp - # 77 - movl 24(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 2840853838(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $8,%ebx - addl %edi,%ebx - # 78 - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 2840853838(%edi,%edx,1),%edi - subl %ebp,%eax - roll $5,%edi - addl %esi,%edi - # 79 - movl 52(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl 128(%esp),%edx - roll $10,%ebx - leal 2840853838(%esi,%eax,1),%esi - movl %ecx,64(%esp) - roll $6,%esi - addl %ecx,%esi - movl (%edx),%ecx - movl %esi,68(%esp) - movl %edi,72(%esp) - movl 4(%edx),%esi - movl %ebx,76(%esp) - movl 8(%edx),%edi - movl %ebp,80(%esp) - movl 12(%edx),%ebx - movl 16(%edx),%ebp - # 80 - movl $-1,%edx - subl %ebx,%edx - movl 20(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 81 - movl 56(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $9,%ebp - addl %ebx,%ebp - # 82 - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 83 - movl (%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $11,%edi - addl %esi,%edi - # 84 - movl 36(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $13,%esi - addl %ecx,%esi - # 85 - movl 8(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - subl %edi,%edx - roll $15,%ecx - addl %ebp,%ecx - # 86 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ebp - xorl %ecx,%edx - movl $-1,%eax - roll $10,%esi - leal 1352829926(%ebp,%edx,1),%ebp - subl %esi,%eax - roll $15,%ebp - addl %ebx,%ebp - # 87 - movl 16(%esp),%edx - orl %ecx,%eax - addl %edx,%ebx - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ecx - leal 1352829926(%ebx,%eax,1),%ebx - subl %ecx,%edx - roll $5,%ebx - addl %edi,%ebx - # 88 - movl 52(%esp),%eax - orl %ebp,%edx - addl %eax,%edi - xorl %ebx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1352829926(%edi,%edx,1),%edi - subl %ebp,%eax - roll $7,%edi - addl %esi,%edi - # 89 - movl 24(%esp),%edx - orl %ebx,%eax - addl %edx,%esi - xorl %edi,%eax - movl $-1,%edx - roll $10,%ebx - leal 1352829926(%esi,%eax,1),%esi - subl %ebx,%edx - roll $7,%esi - addl %ecx,%esi - # 90 - movl 60(%esp),%eax - orl %edi,%edx - addl %eax,%ecx - xorl %esi,%edx - movl $-1,%eax - roll $10,%edi - leal 1352829926(%ecx,%edx,1),%ecx - subl %edi,%eax - roll $8,%ecx - addl %ebp,%ecx - # 91 - movl 32(%esp),%edx - orl %esi,%eax - addl %edx,%ebp - xorl %ecx,%eax - movl $-1,%edx - roll $10,%esi - leal 1352829926(%ebp,%eax,1),%ebp - subl %esi,%edx - roll $11,%ebp - addl %ebx,%ebp - # 92 - movl 4(%esp),%eax - orl %ecx,%edx - addl %eax,%ebx - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ecx - leal 1352829926(%ebx,%edx,1),%ebx - subl %ecx,%eax - roll $14,%ebx - addl %edi,%ebx - # 93 - movl 40(%esp),%edx - orl %ebp,%eax - addl %edx,%edi - xorl %ebx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1352829926(%edi,%eax,1),%edi - subl %ebp,%edx - roll $14,%edi - addl %esi,%edi - # 94 - movl 12(%esp),%eax - orl %ebx,%edx - addl %eax,%esi - xorl %edi,%edx - movl $-1,%eax - roll $10,%ebx - leal 1352829926(%esi,%edx,1),%esi - subl %ebx,%eax - roll $12,%esi - addl %ecx,%esi - # 95 - movl 48(%esp),%edx - orl %edi,%eax - addl %edx,%ecx - xorl %esi,%eax - movl $-1,%edx - roll $10,%edi - leal 1352829926(%ecx,%eax,1),%ecx - movl %edi,%eax - roll $6,%ecx - addl %ebp,%ecx - # 96 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $9,%ebp - addl %ebx,%ebp - # 97 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - # 98 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 12(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $15,%edi - addl %esi,%edi - # 99 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - # 100 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl (%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $12,%ecx - addl %ebp,%ecx - # 101 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $8,%ebp - addl %ebx,%ebp - # 102 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 20(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 103 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 40(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $11,%edi - addl %esi,%edi - # 104 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $7,%esi - addl %ecx,%esi - # 105 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 60(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $7,%ecx - addl %ebp,%ecx - # 106 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 32(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - movl %esi,%eax - roll $12,%ebp - addl %ebx,%ebp - # 107 - subl %esi,%edx - andl %ebp,%eax - andl %ecx,%edx - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%ecx - leal 1548603684(%ebx,%edx,1),%ebx - movl $-1,%edx - addl %eax,%ebx - movl %ecx,%eax - roll $7,%ebx - addl %edi,%ebx - # 108 - subl %ecx,%edx - andl %ebx,%eax - andl %ebp,%edx - orl %eax,%edx - movl 16(%esp),%eax - roll $10,%ebp - leal 1548603684(%edi,%edx,1),%edi - movl $-1,%edx - addl %eax,%edi - movl %ebp,%eax - roll $6,%edi - addl %esi,%edi - # 109 - subl %ebp,%edx - andl %edi,%eax - andl %ebx,%edx - orl %eax,%edx - movl 36(%esp),%eax - roll $10,%ebx - leal 1548603684(%esi,%edx,1),%esi - movl $-1,%edx - addl %eax,%esi - movl %ebx,%eax - roll $15,%esi - addl %ecx,%esi - # 110 - subl %ebx,%edx - andl %esi,%eax - andl %edi,%edx - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 1548603684(%ecx,%edx,1),%ecx - movl $-1,%edx - addl %eax,%ecx - movl %edi,%eax - roll $13,%ecx - addl %ebp,%ecx - # 111 - subl %edi,%edx - andl %ecx,%eax - andl %esi,%edx - orl %eax,%edx - movl 8(%esp),%eax - roll $10,%esi - leal 1548603684(%ebp,%edx,1),%ebp - movl $-1,%edx - addl %eax,%ebp - subl %ecx,%edx - roll $11,%ebp - addl %ebx,%ebp - # 112 - movl 60(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $9,%ebx - addl %edi,%ebx - # 113 - movl 20(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $7,%edi - addl %esi,%edi - # 114 - movl 4(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $15,%esi - addl %ecx,%esi - # 115 - movl 12(%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $11,%ecx - addl %ebp,%ecx - # 116 - movl 28(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $8,%ebp - addl %ebx,%ebp - # 117 - movl 56(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl $-1,%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - subl %ebp,%edx - roll $6,%ebx - addl %edi,%ebx - # 118 - movl 24(%esp),%eax - orl %ebx,%edx - addl %eax,%edi - xorl %ecx,%edx - movl $-1,%eax - roll $10,%ebp - leal 1836072691(%edi,%edx,1),%edi - subl %ebx,%eax - roll $6,%edi - addl %esi,%edi - # 119 - movl 36(%esp),%edx - orl %edi,%eax - addl %edx,%esi - xorl %ebp,%eax - movl $-1,%edx - roll $10,%ebx - leal 1836072691(%esi,%eax,1),%esi - subl %edi,%edx - roll $14,%esi - addl %ecx,%esi - # 120 - movl 44(%esp),%eax - orl %esi,%edx - addl %eax,%ecx - xorl %ebx,%edx - movl $-1,%eax - roll $10,%edi - leal 1836072691(%ecx,%edx,1),%ecx - subl %esi,%eax - roll $12,%ecx - addl %ebp,%ecx - # 121 - movl 32(%esp),%edx - orl %ecx,%eax - addl %edx,%ebp - xorl %edi,%eax - movl $-1,%edx - roll $10,%esi - leal 1836072691(%ebp,%eax,1),%ebp - subl %ecx,%edx - roll $13,%ebp - addl %ebx,%ebp - # 122 - movl 48(%esp),%eax - orl %ebp,%edx - addl %eax,%ebx - xorl %esi,%edx - movl $-1,%eax - roll $10,%ecx - leal 1836072691(%ebx,%edx,1),%ebx - subl %ebp,%eax - roll $5,%ebx - addl %edi,%ebx - # 123 - movl 8(%esp),%edx - orl %ebx,%eax - addl %edx,%edi - xorl %ecx,%eax - movl $-1,%edx - roll $10,%ebp - leal 1836072691(%edi,%eax,1),%edi - subl %ebx,%edx - roll $14,%edi - addl %esi,%edi - # 124 - movl 40(%esp),%eax - orl %edi,%edx - addl %eax,%esi - xorl %ebp,%edx - movl $-1,%eax - roll $10,%ebx - leal 1836072691(%esi,%edx,1),%esi - subl %edi,%eax - roll $13,%esi - addl %ecx,%esi - # 125 - movl (%esp),%edx - orl %esi,%eax - addl %edx,%ecx - xorl %ebx,%eax - movl $-1,%edx - roll $10,%edi - leal 1836072691(%ecx,%eax,1),%ecx - subl %esi,%edx - roll $13,%ecx - addl %ebp,%ecx - # 126 - movl 16(%esp),%eax - orl %ecx,%edx - addl %eax,%ebp - xorl %edi,%edx - movl $-1,%eax - roll $10,%esi - leal 1836072691(%ebp,%edx,1),%ebp - subl %ecx,%eax - roll $7,%ebp - addl %ebx,%ebp - # 127 - movl 52(%esp),%edx - orl %ebp,%eax - addl %edx,%ebx - xorl %esi,%eax - movl 32(%esp),%edx - roll $10,%ecx - leal 1836072691(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $5,%ebx - addl %edi,%ebx - # 128 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 24(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $15,%edi - addl %esi,%edi - # 129 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 16(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $5,%esi - addl %ecx,%esi - # 130 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 4(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $8,%ecx - addl %ebp,%ecx - # 131 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 12(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $11,%ebp - addl %ebx,%ebp - # 132 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 44(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $14,%ebx - addl %edi,%ebx - # 133 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %edx,%eax - movl 60(%esp),%edx - roll $10,%ebp - leal 2053994217(%edi,%eax,1),%edi - movl $-1,%eax - roll $14,%edi - addl %esi,%edi - # 134 - addl %edx,%esi - movl %ebx,%edx - subl %edi,%eax - andl %edi,%edx - andl %ebp,%eax - orl %eax,%edx - movl (%esp),%eax - roll $10,%ebx - leal 2053994217(%esi,%edx,1),%esi - movl $-1,%edx - roll $6,%esi - addl %ecx,%esi - # 135 - addl %eax,%ecx - movl %edi,%eax - subl %esi,%edx - andl %esi,%eax - andl %ebx,%edx - orl %edx,%eax - movl 20(%esp),%edx - roll $10,%edi - leal 2053994217(%ecx,%eax,1),%ecx - movl $-1,%eax - roll $14,%ecx - addl %ebp,%ecx - # 136 - addl %edx,%ebp - movl %esi,%edx - subl %ecx,%eax - andl %ecx,%edx - andl %edi,%eax - orl %eax,%edx - movl 48(%esp),%eax - roll $10,%esi - leal 2053994217(%ebp,%edx,1),%ebp - movl $-1,%edx - roll $6,%ebp - addl %ebx,%ebp - # 137 - addl %eax,%ebx - movl %ecx,%eax - subl %ebp,%edx - andl %ebp,%eax - andl %esi,%edx - orl %edx,%eax - movl 8(%esp),%edx - roll $10,%ecx - leal 2053994217(%ebx,%eax,1),%ebx - movl $-1,%eax - roll $9,%ebx - addl %edi,%ebx - # 138 - addl %edx,%edi - movl %ebp,%edx - subl %ebx,%eax - andl %ebx,%edx - andl %ecx,%eax - orl %eax,%edx - movl 52(%esp),%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - movl $-1,%edx - roll $12,%edi - addl %esi,%edi - # 139 - addl %eax,%esi - movl %ebx,%eax - subl %edi,%edx - andl %edi,%eax - andl %ebp,%edx - orl %edx,%eax - movl 36(%esp),%edx - roll $10,%ebx - leal 2053994217(%esi,%eax,1),%esi - movl $-1,%eax - roll $9,%esi - addl %ecx,%esi - # 140 - addl %edx,%ecx - movl %edi,%edx - subl %esi,%eax - andl %esi,%edx - andl %ebx,%eax - orl %eax,%edx - movl 28(%esp),%eax - roll $10,%edi - leal 2053994217(%ecx,%edx,1),%ecx - movl $-1,%edx - roll $12,%ecx - addl %ebp,%ecx - # 141 - addl %eax,%ebp - movl %esi,%eax - subl %ecx,%edx - andl %ecx,%eax - andl %edi,%edx - orl %edx,%eax - movl 40(%esp),%edx - roll $10,%esi - leal 2053994217(%ebp,%eax,1),%ebp - movl $-1,%eax - roll $5,%ebp - addl %ebx,%ebp - # 142 - addl %edx,%ebx - movl %ecx,%edx - subl %ebp,%eax - andl %ebp,%edx - andl %esi,%eax - orl %eax,%edx - movl 56(%esp),%eax - roll $10,%ecx - leal 2053994217(%ebx,%edx,1),%ebx - movl $-1,%edx - roll $15,%ebx - addl %edi,%ebx - # 143 - addl %eax,%edi - movl %ebp,%eax - subl %ebx,%edx - andl %ebx,%eax - andl %ecx,%edx - orl %eax,%edx - movl %ebx,%eax - roll $10,%ebp - leal 2053994217(%edi,%edx,1),%edi - xorl %ebp,%eax - roll $8,%edi - addl %esi,%edi - # 144 - movl 48(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $8,%esi - addl %ecx,%esi - # 145 - xorl %ebx,%eax - movl 60(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - # 146 - movl 40(%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $12,%ebp - addl %ebx,%ebp - # 147 - xorl %esi,%eax - movl 16(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $9,%ebx - addl %edi,%ebx - # 148 - movl 4(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $12,%edi - addl %esi,%edi - # 149 - xorl %ebp,%eax - movl 20(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - movl %edi,%eax - roll $10,%ebx - addl %edx,%esi - xorl %ebx,%eax - roll $5,%esi - addl %ecx,%esi - # 150 - movl 32(%esp),%edx - xorl %esi,%eax - addl %edx,%ecx - roll $10,%edi - addl %eax,%ecx - movl %esi,%eax - roll $14,%ecx - addl %ebp,%ecx - # 151 - xorl %edi,%eax - movl 28(%esp),%edx - xorl %ecx,%eax - addl %eax,%ebp - movl %ecx,%eax - roll $10,%esi - addl %edx,%ebp - xorl %esi,%eax - roll $6,%ebp - addl %ebx,%ebp - # 152 - movl 24(%esp),%edx - xorl %ebp,%eax - addl %edx,%ebx - roll $10,%ecx - addl %eax,%ebx - movl %ebp,%eax - roll $8,%ebx - addl %edi,%ebx - # 153 - xorl %ecx,%eax - movl 8(%esp),%edx - xorl %ebx,%eax - addl %eax,%edi - movl %ebx,%eax - roll $10,%ebp - addl %edx,%edi - xorl %ebp,%eax - roll $13,%edi - addl %esi,%edi - # 154 - movl 52(%esp),%edx - xorl %edi,%eax - addl %edx,%esi - roll $10,%ebx - addl %eax,%esi - movl %edi,%eax - roll $6,%esi - addl %ecx,%esi - # 155 - xorl %ebx,%eax - movl 56(%esp),%edx - xorl %esi,%eax - addl %eax,%ecx - movl %esi,%eax - roll $10,%edi - addl %edx,%ecx - xorl %edi,%eax - roll $5,%ecx - addl %ebp,%ecx - # 156 - movl (%esp),%edx - xorl %ecx,%eax - addl %edx,%ebp - roll $10,%esi - addl %eax,%ebp - movl %ecx,%eax - roll $15,%ebp - addl %ebx,%ebp - # 157 - xorl %esi,%eax - movl 12(%esp),%edx - xorl %ebp,%eax - addl %eax,%ebx - movl %ebp,%eax - roll $10,%ecx - addl %edx,%ebx - xorl %ecx,%eax - roll $13,%ebx - addl %edi,%ebx - # 158 - movl 36(%esp),%edx - xorl %ebx,%eax - addl %edx,%edi - roll $10,%ebp - addl %eax,%edi - movl %ebx,%eax - roll $11,%edi - addl %esi,%edi - # 159 - xorl %ebp,%eax - movl 44(%esp),%edx - xorl %edi,%eax - addl %eax,%esi - roll $10,%ebx - addl %edx,%esi - movl 128(%esp),%edx - roll $11,%esi - addl %ecx,%esi - movl 4(%edx),%eax - addl %eax,%ebx - movl 72(%esp),%eax - addl %eax,%ebx - movl 8(%edx),%eax - addl %eax,%ebp - movl 76(%esp),%eax - addl %eax,%ebp - movl 12(%edx),%eax - addl %eax,%ecx - movl 80(%esp),%eax - addl %eax,%ecx - movl 16(%edx),%eax - addl %eax,%esi - movl 64(%esp),%eax - addl %eax,%esi - movl (%edx),%eax - addl %eax,%edi - movl 68(%esp),%eax - addl %eax,%edi - movl 136(%esp),%eax - movl %ebx,(%edx) - movl %ebp,4(%edx) - movl %ecx,8(%edx) - subl $1,%eax - movl %esi,12(%edx) - movl %edi,16(%edx) - jle L001get_out - movl %eax,136(%esp) - movl %ecx,%edi - movl 132(%esp),%eax - movl %ebx,%ecx - addl $64,%eax - movl %ebp,%esi - movl %eax,132(%esp) - jmp L000start -L001get_out: - addl $108,%esp - popl %ebx - popl %ebp - popl %edi - popl %esi - ret diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha1-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha1-586.s deleted file mode 100644 index a0fe22eb2eca7b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha1-586.s +++ /dev/null @@ -1,2793 +0,0 @@ -.file "sha1-586.s" -.text -.globl _sha1_block_data_order -.align 4 -_sha1_block_data_order: -L_sha1_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L000pic_point -L000pic_point: - popl %ebp - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L000pic_point(%ebp),%esi - leal LK_XX_XX-L000pic_point(%ebp),%ebp - movl (%esi),%eax - movl 4(%esi),%edx - testl $512,%edx - jz L001x86 - movl 8(%esi),%ecx - testl $16777216,%eax - jz L001x86 - testl $536870912,%ecx - jnz Lshaext_shortcut - jmp Lssse3_shortcut -.align 4,0x90 -L001x86: - movl 20(%esp),%ebp - movl 24(%esp),%esi - movl 28(%esp),%eax - subl $76,%esp - shll $6,%eax - addl %esi,%eax - movl %eax,104(%esp) - movl 16(%ebp),%edi - jmp L002loop -.align 4,0x90 -L002loop: - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,(%esp) - movl %ebx,4(%esp) - movl %ecx,8(%esp) - movl %edx,12(%esp) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,16(%esp) - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %edx,28(%esp) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,40(%esp) - movl %edx,44(%esp) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - movl %eax,48(%esp) - movl %ebx,52(%esp) - movl %ecx,56(%esp) - movl %edx,60(%esp) - movl %esi,100(%esp) - movl (%ebp),%eax - movl 4(%ebp),%ebx - movl 8(%ebp),%ecx - movl 12(%ebp),%edx - # 00_15 0 - movl %ecx,%esi - movl %eax,%ebp - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl (%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 1 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 4(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 2 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 8(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 3 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 12(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - # 00_15 4 - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 16(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - # 00_15 5 - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 20(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - # 00_15 6 - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 24(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 7 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 28(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 8 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 32(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 9 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 36(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ecx,%ebp - # 00_15 10 - movl %edi,%ebx - movl %ebp,%ecx - roll $5,%ebp - xorl %esi,%ebx - addl %eax,%ebp - movl 40(%esp),%eax - andl %edx,%ebx - rorl $2,%edx - xorl %esi,%ebx - leal 1518500249(%ebp,%eax,1),%ebp - addl %ebx,%ebp - # 00_15 11 - movl %edx,%eax - movl %ebp,%ebx - roll $5,%ebp - xorl %edi,%eax - addl %esi,%ebp - movl 44(%esp),%esi - andl %ecx,%eax - rorl $2,%ecx - xorl %edi,%eax - leal 1518500249(%ebp,%esi,1),%ebp - addl %eax,%ebp - # 00_15 12 - movl %ecx,%esi - movl %ebp,%eax - roll $5,%ebp - xorl %edx,%esi - addl %edi,%ebp - movl 48(%esp),%edi - andl %ebx,%esi - rorl $2,%ebx - xorl %edx,%esi - leal 1518500249(%ebp,%edi,1),%ebp - addl %esi,%ebp - # 00_15 13 - movl %ebx,%edi - movl %ebp,%esi - roll $5,%ebp - xorl %ecx,%edi - addl %edx,%ebp - movl 52(%esp),%edx - andl %eax,%edi - rorl $2,%eax - xorl %ecx,%edi - leal 1518500249(%ebp,%edx,1),%ebp - addl %edi,%ebp - # 00_15 14 - movl %eax,%edx - movl %ebp,%edi - roll $5,%ebp - xorl %ebx,%edx - addl %ecx,%ebp - movl 56(%esp),%ecx - andl %esi,%edx - rorl $2,%esi - xorl %ebx,%edx - leal 1518500249(%ebp,%ecx,1),%ebp - addl %edx,%ebp - # 00_15 15 - movl %esi,%ecx - movl %ebp,%edx - roll $5,%ebp - xorl %eax,%ecx - addl %ebx,%ebp - movl 60(%esp),%ebx - andl %edi,%ecx - rorl $2,%edi - xorl %eax,%ecx - leal 1518500249(%ebp,%ebx,1),%ebp - movl (%esp),%ebx - addl %ebp,%ecx - # 16_19 16 - movl %edi,%ebp - xorl 8(%esp),%ebx - xorl %esi,%ebp - xorl 32(%esp),%ebx - andl %edx,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - xorl %esi,%ebp - addl %ebp,%eax - movl %ecx,%ebp - rorl $2,%edx - movl %ebx,(%esp) - roll $5,%ebp - leal 1518500249(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - # 16_19 17 - movl %edx,%ebp - xorl 12(%esp),%eax - xorl %edi,%ebp - xorl 36(%esp),%eax - andl %ecx,%ebp - xorl 56(%esp),%eax - roll $1,%eax - xorl %edi,%ebp - addl %ebp,%esi - movl %ebx,%ebp - rorl $2,%ecx - movl %eax,4(%esp) - roll $5,%ebp - leal 1518500249(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - # 16_19 18 - movl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 40(%esp),%esi - andl %ebx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - xorl %edx,%ebp - addl %ebp,%edi - movl %eax,%ebp - rorl $2,%ebx - movl %esi,8(%esp) - roll $5,%ebp - leal 1518500249(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - # 16_19 19 - movl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 44(%esp),%edi - andl %eax,%ebp - xorl (%esp),%edi - roll $1,%edi - xorl %ecx,%ebp - addl %ebp,%edx - movl %esi,%ebp - rorl $2,%eax - movl %edi,12(%esp) - roll $5,%ebp - leal 1518500249(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - # 20_39 20 - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - # 20_39 21 - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - # 20_39 22 - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - # 20_39 23 - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - # 20_39 24 - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - # 20_39 25 - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - # 20_39 26 - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - # 20_39 27 - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - # 20_39 28 - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - # 20_39 29 - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,52(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - # 20_39 30 - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,56(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - # 20_39 31 - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,60(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl (%esp),%edx - addl %ebp,%edi - # 20_39 32 - movl %esi,%ebp - xorl 8(%esp),%edx - xorl %eax,%ebp - xorl 32(%esp),%edx - xorl %ebx,%ebp - xorl 52(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 4(%esp),%ecx - addl %ebp,%edx - # 20_39 33 - movl %edi,%ebp - xorl 12(%esp),%ecx - xorl %esi,%ebp - xorl 36(%esp),%ecx - xorl %eax,%ebp - xorl 56(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,4(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 8(%esp),%ebx - addl %ebp,%ecx - # 20_39 34 - movl %edx,%ebp - xorl 16(%esp),%ebx - xorl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl 60(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,8(%esp) - leal 1859775393(%ebx,%eax,1),%ebx - movl 12(%esp),%eax - addl %ebp,%ebx - # 20_39 35 - movl %ecx,%ebp - xorl 20(%esp),%eax - xorl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl (%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,12(%esp) - leal 1859775393(%eax,%esi,1),%eax - movl 16(%esp),%esi - addl %ebp,%eax - # 20_39 36 - movl %ebx,%ebp - xorl 24(%esp),%esi - xorl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 4(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,16(%esp) - leal 1859775393(%esi,%edi,1),%esi - movl 20(%esp),%edi - addl %ebp,%esi - # 20_39 37 - movl %eax,%ebp - xorl 28(%esp),%edi - xorl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 8(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,20(%esp) - leal 1859775393(%edi,%edx,1),%edi - movl 24(%esp),%edx - addl %ebp,%edi - # 20_39 38 - movl %esi,%ebp - xorl 32(%esp),%edx - xorl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 12(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,24(%esp) - leal 1859775393(%edx,%ecx,1),%edx - movl 28(%esp),%ecx - addl %ebp,%edx - # 20_39 39 - movl %edi,%ebp - xorl 36(%esp),%ecx - xorl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 16(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,28(%esp) - leal 1859775393(%ecx,%ebx,1),%ecx - movl 32(%esp),%ebx - addl %ebp,%ecx - # 40_59 40 - movl %edi,%ebp - xorl 40(%esp),%ebx - xorl %esi,%ebp - xorl (%esp),%ebx - andl %edx,%ebp - xorl 20(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,32(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 36(%esp),%eax - addl %ebp,%ebx - # 40_59 41 - movl %edx,%ebp - xorl 44(%esp),%eax - xorl %edi,%ebp - xorl 4(%esp),%eax - andl %ecx,%ebp - xorl 24(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,36(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 40(%esp),%esi - addl %ebp,%eax - # 40_59 42 - movl %ecx,%ebp - xorl 48(%esp),%esi - xorl %edx,%ebp - xorl 8(%esp),%esi - andl %ebx,%ebp - xorl 28(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,40(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 44(%esp),%edi - addl %ebp,%esi - # 40_59 43 - movl %ebx,%ebp - xorl 52(%esp),%edi - xorl %ecx,%ebp - xorl 12(%esp),%edi - andl %eax,%ebp - xorl 32(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,44(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 48(%esp),%edx - addl %ebp,%edi - # 40_59 44 - movl %eax,%ebp - xorl 56(%esp),%edx - xorl %ebx,%ebp - xorl 16(%esp),%edx - andl %esi,%ebp - xorl 36(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,48(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 52(%esp),%ecx - addl %ebp,%edx - # 40_59 45 - movl %esi,%ebp - xorl 60(%esp),%ecx - xorl %eax,%ebp - xorl 20(%esp),%ecx - andl %edi,%ebp - xorl 40(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,52(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 56(%esp),%ebx - addl %ebp,%ecx - # 40_59 46 - movl %edi,%ebp - xorl (%esp),%ebx - xorl %esi,%ebp - xorl 24(%esp),%ebx - andl %edx,%ebp - xorl 44(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,56(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 60(%esp),%eax - addl %ebp,%ebx - # 40_59 47 - movl %edx,%ebp - xorl 4(%esp),%eax - xorl %edi,%ebp - xorl 28(%esp),%eax - andl %ecx,%ebp - xorl 48(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,60(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl (%esp),%esi - addl %ebp,%eax - # 40_59 48 - movl %ecx,%ebp - xorl 8(%esp),%esi - xorl %edx,%ebp - xorl 32(%esp),%esi - andl %ebx,%ebp - xorl 52(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 4(%esp),%edi - addl %ebp,%esi - # 40_59 49 - movl %ebx,%ebp - xorl 12(%esp),%edi - xorl %ecx,%ebp - xorl 36(%esp),%edi - andl %eax,%ebp - xorl 56(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,4(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 8(%esp),%edx - addl %ebp,%edi - # 40_59 50 - movl %eax,%ebp - xorl 16(%esp),%edx - xorl %ebx,%ebp - xorl 40(%esp),%edx - andl %esi,%ebp - xorl 60(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,8(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 12(%esp),%ecx - addl %ebp,%edx - # 40_59 51 - movl %esi,%ebp - xorl 20(%esp),%ecx - xorl %eax,%ebp - xorl 44(%esp),%ecx - andl %edi,%ebp - xorl (%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,12(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 16(%esp),%ebx - addl %ebp,%ecx - # 40_59 52 - movl %edi,%ebp - xorl 24(%esp),%ebx - xorl %esi,%ebp - xorl 48(%esp),%ebx - andl %edx,%ebp - xorl 4(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,16(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 20(%esp),%eax - addl %ebp,%ebx - # 40_59 53 - movl %edx,%ebp - xorl 28(%esp),%eax - xorl %edi,%ebp - xorl 52(%esp),%eax - andl %ecx,%ebp - xorl 8(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,20(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 24(%esp),%esi - addl %ebp,%eax - # 40_59 54 - movl %ecx,%ebp - xorl 32(%esp),%esi - xorl %edx,%ebp - xorl 56(%esp),%esi - andl %ebx,%ebp - xorl 12(%esp),%esi - roll $1,%esi - addl %edi,%ebp - rorl $2,%ebx - movl %eax,%edi - roll $5,%edi - movl %esi,24(%esp) - leal 2400959708(%esi,%ebp,1),%esi - movl %ecx,%ebp - addl %edi,%esi - andl %edx,%ebp - movl 28(%esp),%edi - addl %ebp,%esi - # 40_59 55 - movl %ebx,%ebp - xorl 36(%esp),%edi - xorl %ecx,%ebp - xorl 60(%esp),%edi - andl %eax,%ebp - xorl 16(%esp),%edi - roll $1,%edi - addl %edx,%ebp - rorl $2,%eax - movl %esi,%edx - roll $5,%edx - movl %edi,28(%esp) - leal 2400959708(%edi,%ebp,1),%edi - movl %ebx,%ebp - addl %edx,%edi - andl %ecx,%ebp - movl 32(%esp),%edx - addl %ebp,%edi - # 40_59 56 - movl %eax,%ebp - xorl 40(%esp),%edx - xorl %ebx,%ebp - xorl (%esp),%edx - andl %esi,%ebp - xorl 20(%esp),%edx - roll $1,%edx - addl %ecx,%ebp - rorl $2,%esi - movl %edi,%ecx - roll $5,%ecx - movl %edx,32(%esp) - leal 2400959708(%edx,%ebp,1),%edx - movl %eax,%ebp - addl %ecx,%edx - andl %ebx,%ebp - movl 36(%esp),%ecx - addl %ebp,%edx - # 40_59 57 - movl %esi,%ebp - xorl 44(%esp),%ecx - xorl %eax,%ebp - xorl 4(%esp),%ecx - andl %edi,%ebp - xorl 24(%esp),%ecx - roll $1,%ecx - addl %ebx,%ebp - rorl $2,%edi - movl %edx,%ebx - roll $5,%ebx - movl %ecx,36(%esp) - leal 2400959708(%ecx,%ebp,1),%ecx - movl %esi,%ebp - addl %ebx,%ecx - andl %eax,%ebp - movl 40(%esp),%ebx - addl %ebp,%ecx - # 40_59 58 - movl %edi,%ebp - xorl 48(%esp),%ebx - xorl %esi,%ebp - xorl 8(%esp),%ebx - andl %edx,%ebp - xorl 28(%esp),%ebx - roll $1,%ebx - addl %eax,%ebp - rorl $2,%edx - movl %ecx,%eax - roll $5,%eax - movl %ebx,40(%esp) - leal 2400959708(%ebx,%ebp,1),%ebx - movl %edi,%ebp - addl %eax,%ebx - andl %esi,%ebp - movl 44(%esp),%eax - addl %ebp,%ebx - # 40_59 59 - movl %edx,%ebp - xorl 52(%esp),%eax - xorl %edi,%ebp - xorl 12(%esp),%eax - andl %ecx,%ebp - xorl 32(%esp),%eax - roll $1,%eax - addl %esi,%ebp - rorl $2,%ecx - movl %ebx,%esi - roll $5,%esi - movl %eax,44(%esp) - leal 2400959708(%eax,%ebp,1),%eax - movl %edx,%ebp - addl %esi,%eax - andl %edi,%ebp - movl 48(%esp),%esi - addl %ebp,%eax - # 20_39 60 - movl %ebx,%ebp - xorl 56(%esp),%esi - xorl %ecx,%ebp - xorl 16(%esp),%esi - xorl %edx,%ebp - xorl 36(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,48(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 52(%esp),%edi - addl %ebp,%esi - # 20_39 61 - movl %eax,%ebp - xorl 60(%esp),%edi - xorl %ebx,%ebp - xorl 20(%esp),%edi - xorl %ecx,%ebp - xorl 40(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,52(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 56(%esp),%edx - addl %ebp,%edi - # 20_39 62 - movl %esi,%ebp - xorl (%esp),%edx - xorl %eax,%ebp - xorl 24(%esp),%edx - xorl %ebx,%ebp - xorl 44(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,56(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 60(%esp),%ecx - addl %ebp,%edx - # 20_39 63 - movl %edi,%ebp - xorl 4(%esp),%ecx - xorl %esi,%ebp - xorl 28(%esp),%ecx - xorl %eax,%ebp - xorl 48(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,60(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl (%esp),%ebx - addl %ebp,%ecx - # 20_39 64 - movl %edx,%ebp - xorl 8(%esp),%ebx - xorl %edi,%ebp - xorl 32(%esp),%ebx - xorl %esi,%ebp - xorl 52(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 4(%esp),%eax - addl %ebp,%ebx - # 20_39 65 - movl %ecx,%ebp - xorl 12(%esp),%eax - xorl %edx,%ebp - xorl 36(%esp),%eax - xorl %edi,%ebp - xorl 56(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,4(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 8(%esp),%esi - addl %ebp,%eax - # 20_39 66 - movl %ebx,%ebp - xorl 16(%esp),%esi - xorl %ecx,%ebp - xorl 40(%esp),%esi - xorl %edx,%ebp - xorl 60(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,8(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 12(%esp),%edi - addl %ebp,%esi - # 20_39 67 - movl %eax,%ebp - xorl 20(%esp),%edi - xorl %ebx,%ebp - xorl 44(%esp),%edi - xorl %ecx,%ebp - xorl (%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,12(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 16(%esp),%edx - addl %ebp,%edi - # 20_39 68 - movl %esi,%ebp - xorl 24(%esp),%edx - xorl %eax,%ebp - xorl 48(%esp),%edx - xorl %ebx,%ebp - xorl 4(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,16(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 20(%esp),%ecx - addl %ebp,%edx - # 20_39 69 - movl %edi,%ebp - xorl 28(%esp),%ecx - xorl %esi,%ebp - xorl 52(%esp),%ecx - xorl %eax,%ebp - xorl 8(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,20(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 24(%esp),%ebx - addl %ebp,%ecx - # 20_39 70 - movl %edx,%ebp - xorl 32(%esp),%ebx - xorl %edi,%ebp - xorl 56(%esp),%ebx - xorl %esi,%ebp - xorl 12(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,24(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 28(%esp),%eax - addl %ebp,%ebx - # 20_39 71 - movl %ecx,%ebp - xorl 36(%esp),%eax - xorl %edx,%ebp - xorl 60(%esp),%eax - xorl %edi,%ebp - xorl 16(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - movl %eax,28(%esp) - leal 3395469782(%eax,%esi,1),%eax - movl 32(%esp),%esi - addl %ebp,%eax - # 20_39 72 - movl %ebx,%ebp - xorl 40(%esp),%esi - xorl %ecx,%ebp - xorl (%esp),%esi - xorl %edx,%ebp - xorl 20(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - movl %esi,32(%esp) - leal 3395469782(%esi,%edi,1),%esi - movl 36(%esp),%edi - addl %ebp,%esi - # 20_39 73 - movl %eax,%ebp - xorl 44(%esp),%edi - xorl %ebx,%ebp - xorl 4(%esp),%edi - xorl %ecx,%ebp - xorl 24(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - movl %edi,36(%esp) - leal 3395469782(%edi,%edx,1),%edi - movl 40(%esp),%edx - addl %ebp,%edi - # 20_39 74 - movl %esi,%ebp - xorl 48(%esp),%edx - xorl %eax,%ebp - xorl 8(%esp),%edx - xorl %ebx,%ebp - xorl 28(%esp),%edx - roll $1,%edx - addl %ebp,%ecx - rorl $2,%esi - movl %edi,%ebp - roll $5,%ebp - movl %edx,40(%esp) - leal 3395469782(%edx,%ecx,1),%edx - movl 44(%esp),%ecx - addl %ebp,%edx - # 20_39 75 - movl %edi,%ebp - xorl 52(%esp),%ecx - xorl %esi,%ebp - xorl 12(%esp),%ecx - xorl %eax,%ebp - xorl 32(%esp),%ecx - roll $1,%ecx - addl %ebp,%ebx - rorl $2,%edi - movl %edx,%ebp - roll $5,%ebp - movl %ecx,44(%esp) - leal 3395469782(%ecx,%ebx,1),%ecx - movl 48(%esp),%ebx - addl %ebp,%ecx - # 20_39 76 - movl %edx,%ebp - xorl 56(%esp),%ebx - xorl %edi,%ebp - xorl 16(%esp),%ebx - xorl %esi,%ebp - xorl 36(%esp),%ebx - roll $1,%ebx - addl %ebp,%eax - rorl $2,%edx - movl %ecx,%ebp - roll $5,%ebp - movl %ebx,48(%esp) - leal 3395469782(%ebx,%eax,1),%ebx - movl 52(%esp),%eax - addl %ebp,%ebx - # 20_39 77 - movl %ecx,%ebp - xorl 60(%esp),%eax - xorl %edx,%ebp - xorl 20(%esp),%eax - xorl %edi,%ebp - xorl 40(%esp),%eax - roll $1,%eax - addl %ebp,%esi - rorl $2,%ecx - movl %ebx,%ebp - roll $5,%ebp - leal 3395469782(%eax,%esi,1),%eax - movl 56(%esp),%esi - addl %ebp,%eax - # 20_39 78 - movl %ebx,%ebp - xorl (%esp),%esi - xorl %ecx,%ebp - xorl 24(%esp),%esi - xorl %edx,%ebp - xorl 44(%esp),%esi - roll $1,%esi - addl %ebp,%edi - rorl $2,%ebx - movl %eax,%ebp - roll $5,%ebp - leal 3395469782(%esi,%edi,1),%esi - movl 60(%esp),%edi - addl %ebp,%esi - # 20_39 79 - movl %eax,%ebp - xorl 4(%esp),%edi - xorl %ebx,%ebp - xorl 28(%esp),%edi - xorl %ecx,%ebp - xorl 48(%esp),%edi - roll $1,%edi - addl %ebp,%edx - rorl $2,%eax - movl %esi,%ebp - roll $5,%ebp - leal 3395469782(%edi,%edx,1),%edi - addl %ebp,%edi - movl 96(%esp),%ebp - movl 100(%esp),%edx - addl (%ebp),%edi - addl 4(%ebp),%esi - addl 8(%ebp),%eax - addl 12(%ebp),%ebx - addl 16(%ebp),%ecx - movl %edi,(%ebp) - addl $64,%edx - movl %esi,4(%ebp) - cmpl 104(%esp),%edx - movl %eax,8(%ebp) - movl %ecx,%edi - movl %ebx,12(%ebp) - movl %edx,%esi - movl %ecx,16(%ebp) - jb L002loop - addl $76,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__sha1_block_data_order_shaext: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L003pic_point -L003pic_point: - popl %ebp - leal LK_XX_XX-L003pic_point(%ebp),%ebp -Lshaext_shortcut: - movl 20(%esp),%edi - movl %esp,%ebx - movl 24(%esp),%esi - movl 28(%esp),%ecx - subl $32,%esp - movdqu (%edi),%xmm0 - movd 16(%edi),%xmm1 - andl $-32,%esp - movdqa 80(%ebp),%xmm3 - movdqu (%esi),%xmm4 - pshufd $27,%xmm0,%xmm0 - movdqu 16(%esi),%xmm5 - pshufd $27,%xmm1,%xmm1 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,227 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,235 -.byte 102,15,56,0,243 -.byte 102,15,56,0,251 - jmp L004loop_shaext -.align 4,0x90 -L004loop_shaext: - decl %ecx - leal 64(%esi),%eax - movdqa %xmm1,(%esp) - paddd %xmm4,%xmm1 - cmovnel %eax,%esi - movdqa %xmm0,16(%esp) -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,0 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,0 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,1 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,1 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 -.byte 15,56,201,229 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,213 - pxor %xmm6,%xmm4 -.byte 15,56,201,238 -.byte 15,56,202,231 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,2 -.byte 15,56,200,206 - pxor %xmm7,%xmm5 -.byte 15,56,202,236 -.byte 15,56,201,247 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,2 -.byte 15,56,200,215 - pxor %xmm4,%xmm6 -.byte 15,56,201,252 -.byte 15,56,202,245 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,204 - pxor %xmm5,%xmm7 -.byte 15,56,202,254 - movdqu (%esi),%xmm4 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,213 - movdqu 16(%esi),%xmm5 -.byte 102,15,56,0,227 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 -.byte 15,56,200,206 - movdqu 32(%esi),%xmm6 -.byte 102,15,56,0,235 - movdqa %xmm0,%xmm2 -.byte 15,58,204,193,3 -.byte 15,56,200,215 - movdqu 48(%esi),%xmm7 -.byte 102,15,56,0,243 - movdqa %xmm0,%xmm1 -.byte 15,58,204,194,3 - movdqa (%esp),%xmm2 -.byte 102,15,56,0,251 -.byte 15,56,200,202 - paddd 16(%esp),%xmm0 - jnz L004loop_shaext - pshufd $27,%xmm0,%xmm0 - pshufd $27,%xmm1,%xmm1 - movdqu %xmm0,(%edi) - movd %xmm1,16(%edi) - movl %ebx,%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4 -__sha1_block_data_order_ssse3: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - call L005pic_point -L005pic_point: - popl %ebp - leal LK_XX_XX-L005pic_point(%ebp),%ebp -Lssse3_shortcut: - movdqa (%ebp),%xmm7 - movdqa 16(%ebp),%xmm0 - movdqa 32(%ebp),%xmm1 - movdqa 48(%ebp),%xmm2 - movdqa 64(%ebp),%xmm6 - movl 20(%esp),%edi - movl 24(%esp),%ebp - movl 28(%esp),%edx - movl %esp,%esi - subl $208,%esp - andl $-64,%esp - movdqa %xmm0,112(%esp) - movdqa %xmm1,128(%esp) - movdqa %xmm2,144(%esp) - shll $6,%edx - movdqa %xmm7,160(%esp) - addl %ebp,%edx - movdqa %xmm6,176(%esp) - addl $64,%ebp - movl %edi,192(%esp) - movl %ebp,196(%esp) - movl %edx,200(%esp) - movl %esi,204(%esp) - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%edi - movl %ebx,%esi - movdqu -64(%ebp),%xmm0 - movdqu -48(%ebp),%xmm1 - movdqu -32(%ebp),%xmm2 - movdqu -16(%ebp),%xmm3 -.byte 102,15,56,0,198 -.byte 102,15,56,0,206 -.byte 102,15,56,0,214 - movdqa %xmm7,96(%esp) -.byte 102,15,56,0,222 - paddd %xmm7,%xmm0 - paddd %xmm7,%xmm1 - paddd %xmm7,%xmm2 - movdqa %xmm0,(%esp) - psubd %xmm7,%xmm0 - movdqa %xmm1,16(%esp) - psubd %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - movl %ecx,%ebp - psubd %xmm7,%xmm2 - xorl %edx,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebp,%esi - jmp L006loop -.align 4,0x90 -L006loop: - rorl $2,%ebx - xorl %edx,%esi - movl %eax,%ebp - punpcklqdq %xmm1,%xmm4 - movdqa %xmm3,%xmm6 - addl (%esp),%edi - xorl %ecx,%ebx - paddd %xmm3,%xmm7 - movdqa %xmm0,64(%esp) - roll $5,%eax - addl %esi,%edi - psrldq $4,%xmm6 - andl %ebx,%ebp - xorl %ecx,%ebx - pxor %xmm0,%xmm4 - addl %eax,%edi - rorl $7,%eax - pxor %xmm2,%xmm6 - xorl %ecx,%ebp - movl %edi,%esi - addl 4(%esp),%edx - pxor %xmm6,%xmm4 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm7,48(%esp) - addl %ebp,%edx - andl %eax,%esi - movdqa %xmm4,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - movdqa %xmm4,%xmm6 - xorl %ebx,%esi - pslldq $12,%xmm0 - paddd %xmm4,%xmm4 - movl %edx,%ebp - addl 8(%esp),%ecx - psrld $31,%xmm6 - xorl %eax,%edi - roll $5,%edx - movdqa %xmm0,%xmm7 - addl %esi,%ecx - andl %edi,%ebp - xorl %eax,%edi - psrld $30,%xmm0 - addl %edx,%ecx - rorl $7,%edx - por %xmm6,%xmm4 - xorl %eax,%ebp - movl %ecx,%esi - addl 12(%esp),%ebx - pslld $2,%xmm7 - xorl %edi,%edx - roll $5,%ecx - pxor %xmm0,%xmm4 - movdqa 96(%esp),%xmm0 - addl %ebp,%ebx - andl %edx,%esi - pxor %xmm7,%xmm4 - pshufd $238,%xmm1,%xmm5 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - xorl %edi,%esi - movl %ebx,%ebp - punpcklqdq %xmm2,%xmm5 - movdqa %xmm4,%xmm7 - addl 16(%esp),%eax - xorl %edx,%ecx - paddd %xmm4,%xmm0 - movdqa %xmm1,80(%esp) - roll $5,%ebx - addl %esi,%eax - psrldq $4,%xmm7 - andl %ecx,%ebp - xorl %edx,%ecx - pxor %xmm1,%xmm5 - addl %ebx,%eax - rorl $7,%ebx - pxor %xmm3,%xmm7 - xorl %edx,%ebp - movl %eax,%esi - addl 20(%esp),%edi - pxor %xmm7,%xmm5 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm0,(%esp) - addl %ebp,%edi - andl %ebx,%esi - movdqa %xmm5,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - movdqa %xmm5,%xmm7 - xorl %ecx,%esi - pslldq $12,%xmm1 - paddd %xmm5,%xmm5 - movl %edi,%ebp - addl 24(%esp),%edx - psrld $31,%xmm7 - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm1,%xmm0 - addl %esi,%edx - andl %eax,%ebp - xorl %ebx,%eax - psrld $30,%xmm1 - addl %edi,%edx - rorl $7,%edi - por %xmm7,%xmm5 - xorl %ebx,%ebp - movl %edx,%esi - addl 28(%esp),%ecx - pslld $2,%xmm0 - xorl %eax,%edi - roll $5,%edx - pxor %xmm1,%xmm5 - movdqa 112(%esp),%xmm1 - addl %ebp,%ecx - andl %edi,%esi - pxor %xmm0,%xmm5 - pshufd $238,%xmm2,%xmm6 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - punpcklqdq %xmm3,%xmm6 - movdqa %xmm5,%xmm0 - addl 32(%esp),%ebx - xorl %edi,%edx - paddd %xmm5,%xmm1 - movdqa %xmm2,96(%esp) - roll $5,%ecx - addl %esi,%ebx - psrldq $4,%xmm0 - andl %edx,%ebp - xorl %edi,%edx - pxor %xmm2,%xmm6 - addl %ecx,%ebx - rorl $7,%ecx - pxor %xmm4,%xmm0 - xorl %edi,%ebp - movl %ebx,%esi - addl 36(%esp),%eax - pxor %xmm0,%xmm6 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm1,16(%esp) - addl %ebp,%eax - andl %ecx,%esi - movdqa %xmm6,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - rorl $7,%ebx - movdqa %xmm6,%xmm0 - xorl %edx,%esi - pslldq $12,%xmm2 - paddd %xmm6,%xmm6 - movl %eax,%ebp - addl 40(%esp),%edi - psrld $31,%xmm0 - xorl %ecx,%ebx - roll $5,%eax - movdqa %xmm2,%xmm1 - addl %esi,%edi - andl %ebx,%ebp - xorl %ecx,%ebx - psrld $30,%xmm2 - addl %eax,%edi - rorl $7,%eax - por %xmm0,%xmm6 - xorl %ecx,%ebp - movdqa 64(%esp),%xmm0 - movl %edi,%esi - addl 44(%esp),%edx - pslld $2,%xmm1 - xorl %ebx,%eax - roll $5,%edi - pxor %xmm2,%xmm6 - movdqa 112(%esp),%xmm2 - addl %ebp,%edx - andl %eax,%esi - pxor %xmm1,%xmm6 - pshufd $238,%xmm3,%xmm7 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%esi - movl %edx,%ebp - punpcklqdq %xmm4,%xmm7 - movdqa %xmm6,%xmm1 - addl 48(%esp),%ecx - xorl %eax,%edi - paddd %xmm6,%xmm2 - movdqa %xmm3,64(%esp) - roll $5,%edx - addl %esi,%ecx - psrldq $4,%xmm1 - andl %edi,%ebp - xorl %eax,%edi - pxor %xmm3,%xmm7 - addl %edx,%ecx - rorl $7,%edx - pxor %xmm5,%xmm1 - xorl %eax,%ebp - movl %ecx,%esi - addl 52(%esp),%ebx - pxor %xmm1,%xmm7 - xorl %edi,%edx - roll $5,%ecx - movdqa %xmm2,32(%esp) - addl %ebp,%ebx - andl %edx,%esi - movdqa %xmm7,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - rorl $7,%ecx - movdqa %xmm7,%xmm1 - xorl %edi,%esi - pslldq $12,%xmm3 - paddd %xmm7,%xmm7 - movl %ebx,%ebp - addl 56(%esp),%eax - psrld $31,%xmm1 - xorl %edx,%ecx - roll $5,%ebx - movdqa %xmm3,%xmm2 - addl %esi,%eax - andl %ecx,%ebp - xorl %edx,%ecx - psrld $30,%xmm3 - addl %ebx,%eax - rorl $7,%ebx - por %xmm1,%xmm7 - xorl %edx,%ebp - movdqa 80(%esp),%xmm1 - movl %eax,%esi - addl 60(%esp),%edi - pslld $2,%xmm2 - xorl %ecx,%ebx - roll $5,%eax - pxor %xmm3,%xmm7 - movdqa 112(%esp),%xmm3 - addl %ebp,%edi - andl %ebx,%esi - pxor %xmm2,%xmm7 - pshufd $238,%xmm6,%xmm2 - xorl %ecx,%ebx - addl %eax,%edi - rorl $7,%eax - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - xorl %ecx,%esi - movl %edi,%ebp - addl (%esp),%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,80(%esp) - xorl %ebx,%eax - roll $5,%edi - movdqa %xmm3,%xmm4 - addl %esi,%edx - paddd %xmm7,%xmm3 - andl %eax,%ebp - pxor %xmm2,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - rorl $7,%edi - xorl %ebx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - movl %edx,%esi - addl 4(%esp),%ecx - xorl %eax,%edi - roll $5,%edx - pslld $2,%xmm0 - addl %ebp,%ecx - andl %edi,%esi - psrld $30,%xmm2 - xorl %eax,%edi - addl %edx,%ecx - rorl $7,%edx - xorl %eax,%esi - movl %ecx,%ebp - addl 8(%esp),%ebx - xorl %edi,%edx - roll $5,%ecx - por %xmm2,%xmm0 - addl %esi,%ebx - andl %edx,%ebp - movdqa 96(%esp),%xmm2 - xorl %edi,%edx - addl %ecx,%ebx - addl 12(%esp),%eax - xorl %edi,%ebp - movl %ebx,%esi - pshufd $238,%xmm7,%xmm3 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 16(%esp),%edi - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm2,%xmm1 - movdqa %xmm5,96(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm4,%xmm5 - rorl $7,%ebx - paddd %xmm0,%xmm4 - addl %eax,%edi - pxor %xmm3,%xmm1 - addl 20(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm1 - addl 24(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm3 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm3,%xmm1 - addl 28(%esp),%ebx - xorl %edi,%ebp - movdqa 64(%esp),%xmm3 - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - pshufd $238,%xmm0,%xmm4 - addl %ecx,%ebx - addl 32(%esp),%eax - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - pxor %xmm3,%xmm2 - movdqa %xmm6,64(%esp) - addl %esi,%eax - xorl %edx,%ebp - movdqa 128(%esp),%xmm6 - rorl $7,%ecx - paddd %xmm1,%xmm5 - addl %ebx,%eax - pxor %xmm4,%xmm2 - addl 36(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - pslld $2,%xmm2 - addl 40(%esp),%edx - xorl %ebx,%esi - psrld $30,%xmm4 - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - por %xmm4,%xmm2 - addl 44(%esp),%ecx - xorl %eax,%ebp - movdqa 80(%esp),%xmm4 - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - pshufd $238,%xmm1,%xmm5 - addl %edx,%ecx - addl 48(%esp),%ebx - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - pxor %xmm4,%xmm3 - movdqa %xmm7,80(%esp) - addl %esi,%ebx - xorl %edi,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%edx - paddd %xmm2,%xmm6 - addl %ecx,%ebx - pxor %xmm5,%xmm3 - addl 52(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - pslld $2,%xmm3 - addl 56(%esp),%edi - xorl %ecx,%esi - psrld $30,%xmm5 - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - por %xmm5,%xmm3 - addl 60(%esp),%edx - xorl %ebx,%ebp - movdqa 96(%esp),%xmm5 - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - pshufd $238,%xmm2,%xmm6 - addl %edi,%edx - addl (%esp),%ecx - pxor %xmm0,%xmm4 - punpcklqdq %xmm3,%xmm6 - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - pxor %xmm5,%xmm4 - movdqa %xmm0,96(%esp) - addl %esi,%ecx - xorl %eax,%ebp - movdqa %xmm7,%xmm0 - rorl $7,%edi - paddd %xmm3,%xmm7 - addl %edx,%ecx - pxor %xmm6,%xmm4 - addl 4(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - movdqa %xmm4,%xmm6 - movdqa %xmm7,48(%esp) - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - pslld $2,%xmm4 - addl 8(%esp),%eax - xorl %edx,%esi - psrld $30,%xmm6 - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - por %xmm6,%xmm4 - addl 12(%esp),%edi - xorl %ecx,%ebp - movdqa 64(%esp),%xmm6 - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - pshufd $238,%xmm3,%xmm7 - addl %eax,%edi - addl 16(%esp),%edx - pxor %xmm1,%xmm5 - punpcklqdq %xmm4,%xmm7 - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - pxor %xmm6,%xmm5 - movdqa %xmm1,64(%esp) - addl %esi,%edx - xorl %ebx,%ebp - movdqa %xmm0,%xmm1 - rorl $7,%eax - paddd %xmm4,%xmm0 - addl %edi,%edx - pxor %xmm7,%xmm5 - addl 20(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - movdqa %xmm5,%xmm7 - movdqa %xmm0,(%esp) - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - pslld $2,%xmm5 - addl 24(%esp),%ebx - xorl %edi,%esi - psrld $30,%xmm7 - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - por %xmm7,%xmm5 - addl 28(%esp),%eax - movdqa 80(%esp),%xmm7 - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pshufd $238,%xmm4,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - xorl %edx,%ecx - addl %ebx,%eax - addl 32(%esp),%edi - pxor %xmm2,%xmm6 - punpcklqdq %xmm5,%xmm0 - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - pxor %xmm7,%xmm6 - movdqa %xmm2,80(%esp) - movl %eax,%ebp - xorl %ecx,%esi - roll $5,%eax - movdqa %xmm1,%xmm2 - addl %esi,%edi - paddd %xmm5,%xmm1 - xorl %ebx,%ebp - pxor %xmm0,%xmm6 - xorl %ecx,%ebx - addl %eax,%edi - addl 36(%esp),%edx - andl %ebx,%ebp - movdqa %xmm6,%xmm0 - movdqa %xmm1,16(%esp) - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - pslld $2,%xmm6 - addl %ebp,%edx - xorl %eax,%esi - psrld $30,%xmm0 - xorl %ebx,%eax - addl %edi,%edx - addl 40(%esp),%ecx - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - por %xmm0,%xmm6 - movl %edx,%ebp - xorl %eax,%esi - movdqa 96(%esp),%xmm0 - roll $5,%edx - addl %esi,%ecx - xorl %edi,%ebp - xorl %eax,%edi - addl %edx,%ecx - pshufd $238,%xmm5,%xmm1 - addl 44(%esp),%ebx - andl %edi,%ebp - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - addl %ebp,%ebx - xorl %edx,%esi - xorl %edi,%edx - addl %ecx,%ebx - addl 48(%esp),%eax - pxor %xmm3,%xmm7 - punpcklqdq %xmm6,%xmm1 - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - pxor %xmm0,%xmm7 - movdqa %xmm3,96(%esp) - movl %ebx,%ebp - xorl %edx,%esi - roll $5,%ebx - movdqa 144(%esp),%xmm3 - addl %esi,%eax - paddd %xmm6,%xmm2 - xorl %ecx,%ebp - pxor %xmm1,%xmm7 - xorl %edx,%ecx - addl %ebx,%eax - addl 52(%esp),%edi - andl %ecx,%ebp - movdqa %xmm7,%xmm1 - movdqa %xmm2,32(%esp) - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - pslld $2,%xmm7 - addl %ebp,%edi - xorl %ebx,%esi - psrld $30,%xmm1 - xorl %ecx,%ebx - addl %eax,%edi - addl 56(%esp),%edx - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - por %xmm1,%xmm7 - movl %edi,%ebp - xorl %ebx,%esi - movdqa 64(%esp),%xmm1 - roll $5,%edi - addl %esi,%edx - xorl %eax,%ebp - xorl %ebx,%eax - addl %edi,%edx - pshufd $238,%xmm6,%xmm2 - addl 60(%esp),%ecx - andl %eax,%ebp - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - addl %ebp,%ecx - xorl %edi,%esi - xorl %eax,%edi - addl %edx,%ecx - addl (%esp),%ebx - pxor %xmm4,%xmm0 - punpcklqdq %xmm7,%xmm2 - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - pxor %xmm1,%xmm0 - movdqa %xmm4,64(%esp) - movl %ecx,%ebp - xorl %edi,%esi - roll $5,%ecx - movdqa %xmm3,%xmm4 - addl %esi,%ebx - paddd %xmm7,%xmm3 - xorl %edx,%ebp - pxor %xmm2,%xmm0 - xorl %edi,%edx - addl %ecx,%ebx - addl 4(%esp),%eax - andl %edx,%ebp - movdqa %xmm0,%xmm2 - movdqa %xmm3,48(%esp) - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - pslld $2,%xmm0 - addl %ebp,%eax - xorl %ecx,%esi - psrld $30,%xmm2 - xorl %edx,%ecx - addl %ebx,%eax - addl 8(%esp),%edi - andl %ecx,%esi - xorl %edx,%ecx - rorl $7,%ebx - por %xmm2,%xmm0 - movl %eax,%ebp - xorl %ecx,%esi - movdqa 80(%esp),%xmm2 - roll $5,%eax - addl %esi,%edi - xorl %ebx,%ebp - xorl %ecx,%ebx - addl %eax,%edi - pshufd $238,%xmm7,%xmm3 - addl 12(%esp),%edx - andl %ebx,%ebp - xorl %ecx,%ebx - rorl $7,%eax - movl %edi,%esi - xorl %ebx,%ebp - roll $5,%edi - addl %ebp,%edx - xorl %eax,%esi - xorl %ebx,%eax - addl %edi,%edx - addl 16(%esp),%ecx - pxor %xmm5,%xmm1 - punpcklqdq %xmm0,%xmm3 - andl %eax,%esi - xorl %ebx,%eax - rorl $7,%edi - pxor %xmm2,%xmm1 - movdqa %xmm5,80(%esp) - movl %edx,%ebp - xorl %eax,%esi - roll $5,%edx - movdqa %xmm4,%xmm5 - addl %esi,%ecx - paddd %xmm0,%xmm4 - xorl %edi,%ebp - pxor %xmm3,%xmm1 - xorl %eax,%edi - addl %edx,%ecx - addl 20(%esp),%ebx - andl %edi,%ebp - movdqa %xmm1,%xmm3 - movdqa %xmm4,(%esp) - xorl %eax,%edi - rorl $7,%edx - movl %ecx,%esi - xorl %edi,%ebp - roll $5,%ecx - pslld $2,%xmm1 - addl %ebp,%ebx - xorl %edx,%esi - psrld $30,%xmm3 - xorl %edi,%edx - addl %ecx,%ebx - addl 24(%esp),%eax - andl %edx,%esi - xorl %edi,%edx - rorl $7,%ecx - por %xmm3,%xmm1 - movl %ebx,%ebp - xorl %edx,%esi - movdqa 96(%esp),%xmm3 - roll $5,%ebx - addl %esi,%eax - xorl %ecx,%ebp - xorl %edx,%ecx - addl %ebx,%eax - pshufd $238,%xmm0,%xmm4 - addl 28(%esp),%edi - andl %ecx,%ebp - xorl %edx,%ecx - rorl $7,%ebx - movl %eax,%esi - xorl %ecx,%ebp - roll $5,%eax - addl %ebp,%edi - xorl %ebx,%esi - xorl %ecx,%ebx - addl %eax,%edi - addl 32(%esp),%edx - pxor %xmm6,%xmm2 - punpcklqdq %xmm1,%xmm4 - andl %ebx,%esi - xorl %ecx,%ebx - rorl $7,%eax - pxor %xmm3,%xmm2 - movdqa %xmm6,96(%esp) - movl %edi,%ebp - xorl %ebx,%esi - roll $5,%edi - movdqa %xmm5,%xmm6 - addl %esi,%edx - paddd %xmm1,%xmm5 - xorl %eax,%ebp - pxor %xmm4,%xmm2 - xorl %ebx,%eax - addl %edi,%edx - addl 36(%esp),%ecx - andl %eax,%ebp - movdqa %xmm2,%xmm4 - movdqa %xmm5,16(%esp) - xorl %ebx,%eax - rorl $7,%edi - movl %edx,%esi - xorl %eax,%ebp - roll $5,%edx - pslld $2,%xmm2 - addl %ebp,%ecx - xorl %edi,%esi - psrld $30,%xmm4 - xorl %eax,%edi - addl %edx,%ecx - addl 40(%esp),%ebx - andl %edi,%esi - xorl %eax,%edi - rorl $7,%edx - por %xmm4,%xmm2 - movl %ecx,%ebp - xorl %edi,%esi - movdqa 64(%esp),%xmm4 - roll $5,%ecx - addl %esi,%ebx - xorl %edx,%ebp - xorl %edi,%edx - addl %ecx,%ebx - pshufd $238,%xmm1,%xmm5 - addl 44(%esp),%eax - andl %edx,%ebp - xorl %edi,%edx - rorl $7,%ecx - movl %ebx,%esi - xorl %edx,%ebp - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - addl %ebx,%eax - addl 48(%esp),%edi - pxor %xmm7,%xmm3 - punpcklqdq %xmm2,%xmm5 - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - pxor %xmm4,%xmm3 - movdqa %xmm7,64(%esp) - addl %esi,%edi - xorl %ecx,%ebp - movdqa %xmm6,%xmm7 - rorl $7,%ebx - paddd %xmm2,%xmm6 - addl %eax,%edi - pxor %xmm5,%xmm3 - addl 52(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - movdqa %xmm3,%xmm5 - movdqa %xmm6,32(%esp) - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - pslld $2,%xmm3 - addl 56(%esp),%ecx - xorl %eax,%esi - psrld $30,%xmm5 - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - por %xmm5,%xmm3 - addl 60(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl (%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - paddd %xmm3,%xmm7 - addl %ebx,%eax - addl 4(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - movdqa %xmm7,48(%esp) - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 8(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 12(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - movl 196(%esp),%ebp - cmpl 200(%esp),%ebp - je L007done - movdqa 160(%esp),%xmm7 - movdqa 176(%esp),%xmm6 - movdqu (%ebp),%xmm0 - movdqu 16(%ebp),%xmm1 - movdqu 32(%ebp),%xmm2 - movdqu 48(%ebp),%xmm3 - addl $64,%ebp -.byte 102,15,56,0,198 - movl %ebp,196(%esp) - movdqa %xmm7,96(%esp) - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx -.byte 102,15,56,0,206 - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - paddd %xmm7,%xmm0 - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - movdqa %xmm0,(%esp) - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - psubd %xmm7,%xmm0 - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi -.byte 102,15,56,0,214 - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - paddd %xmm7,%xmm1 - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - movdqa %xmm1,16(%esp) - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - psubd %xmm7,%xmm1 - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax -.byte 102,15,56,0,222 - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - paddd %xmm7,%xmm2 - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - movdqa %xmm2,32(%esp) - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - psubd %xmm7,%xmm2 - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %ecx,%ebx - movl %edx,12(%ebp) - xorl %edx,%ebx - movl %edi,16(%ebp) - movl %esi,%ebp - pshufd $238,%xmm0,%xmm4 - andl %ebx,%esi - movl %ebp,%ebx - jmp L006loop -.align 4,0x90 -L007done: - addl 16(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 20(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - xorl %edx,%esi - rorl $7,%ecx - addl %ebx,%eax - addl 24(%esp),%edi - xorl %ecx,%esi - movl %eax,%ebp - roll $5,%eax - addl %esi,%edi - xorl %ecx,%ebp - rorl $7,%ebx - addl %eax,%edi - addl 28(%esp),%edx - xorl %ebx,%ebp - movl %edi,%esi - roll $5,%edi - addl %ebp,%edx - xorl %ebx,%esi - rorl $7,%eax - addl %edi,%edx - addl 32(%esp),%ecx - xorl %eax,%esi - movl %edx,%ebp - roll $5,%edx - addl %esi,%ecx - xorl %eax,%ebp - rorl $7,%edi - addl %edx,%ecx - addl 36(%esp),%ebx - xorl %edi,%ebp - movl %ecx,%esi - roll $5,%ecx - addl %ebp,%ebx - xorl %edi,%esi - rorl $7,%edx - addl %ecx,%ebx - addl 40(%esp),%eax - xorl %edx,%esi - movl %ebx,%ebp - roll $5,%ebx - addl %esi,%eax - xorl %edx,%ebp - rorl $7,%ecx - addl %ebx,%eax - addl 44(%esp),%edi - xorl %ecx,%ebp - movl %eax,%esi - roll $5,%eax - addl %ebp,%edi - xorl %ecx,%esi - rorl $7,%ebx - addl %eax,%edi - addl 48(%esp),%edx - xorl %ebx,%esi - movl %edi,%ebp - roll $5,%edi - addl %esi,%edx - xorl %ebx,%ebp - rorl $7,%eax - addl %edi,%edx - addl 52(%esp),%ecx - xorl %eax,%ebp - movl %edx,%esi - roll $5,%edx - addl %ebp,%ecx - xorl %eax,%esi - rorl $7,%edi - addl %edx,%ecx - addl 56(%esp),%ebx - xorl %edi,%esi - movl %ecx,%ebp - roll $5,%ecx - addl %esi,%ebx - xorl %edi,%ebp - rorl $7,%edx - addl %ecx,%ebx - addl 60(%esp),%eax - xorl %edx,%ebp - movl %ebx,%esi - roll $5,%ebx - addl %ebp,%eax - rorl $7,%ecx - addl %ebx,%eax - movl 192(%esp),%ebp - addl (%ebp),%eax - movl 204(%esp),%esp - addl 4(%ebp),%esi - addl 8(%ebp),%ecx - movl %eax,(%ebp) - addl 12(%ebp),%edx - movl %esi,4(%ebp) - addl 16(%ebp),%edi - movl %ecx,8(%ebp) - movl %edx,12(%ebp) - movl %edi,16(%ebp) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -LK_XX_XX: -.long 1518500249,1518500249,1518500249,1518500249 -.long 1859775393,1859775393,1859775393,1859775393 -.long 2400959708,2400959708,2400959708,2400959708 -.long 3395469782,3395469782,3395469782,3395469782 -.long 66051,67438087,134810123,202182159 -.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -.byte 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -.byte 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -.byte 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha256-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha256-586.s deleted file mode 100644 index 37f532aa5fb686..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha256-586.s +++ /dev/null @@ -1,4579 +0,0 @@ -.file "sha512-586.s" -.text -.globl _sha256_block_data_order -.align 4 -_sha256_block_data_order: -L_sha256_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call L000pic_point -L000pic_point: - popl %ebp - leal L001K256-L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $6,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K256(%ebp),%edx - movl (%edx),%ecx - movl 4(%edx),%ebx - testl $1048576,%ecx - jnz L002loop - movl 8(%edx),%edx - testl $16777216,%ecx - jz L003no_xmm - andl $1073741824,%ecx - andl $268435968,%ebx - testl $536870912,%edx - jnz L004shaext - orl %ebx,%ecx - andl $1342177280,%ecx - cmpl $1342177280,%ecx - testl $512,%ebx - jnz L005SSSE3 -L003no_xmm: - subl %edi,%eax - cmpl $256,%eax - jae L006unrolled - jmp L002loop -.align 4,0x90 -L002loop: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - bswap %eax - movl 12(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - bswap %eax - movl 28(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %eax - movl 44(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - bswap %eax - movl 60(%edi),%edx - bswap %ebx - pushl %eax - bswap %ecx - pushl %ebx - bswap %edx - pushl %ecx - pushl %edx - addl $64,%edi - leal -36(%esp),%esp - movl %edi,104(%esp) - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,8(%esp) - xorl %ecx,%ebx - movl %ecx,12(%esp) - movl %edi,16(%esp) - movl %ebx,(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - movl %edi,32(%esp) -.align 4,0x90 -L00700_15: - movl %edx,%ecx - movl 24(%esp),%esi - rorl $14,%ecx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl 96(%esp),%ebx - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - addl $4,%ebp - addl %ebx,%eax - cmpl $3248222580,%esi - jne L00700_15 - movl 156(%esp),%ecx - jmp L00816_63 -.align 4,0x90 -L00816_63: - movl %ecx,%ebx - movl 104(%esp),%esi - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 160(%esp),%ebx - shrl $10,%edi - addl 124(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 24(%esp),%esi - rorl $14,%ecx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %edx,%ecx - xorl %edi,%esi - movl %ebx,96(%esp) - rorl $5,%ecx - andl %edx,%esi - movl %edx,20(%esp) - xorl %ecx,%edx - addl 32(%esp),%ebx - xorl %edi,%esi - rorl $6,%edx - movl %eax,%ecx - addl %esi,%ebx - rorl $9,%ecx - addl %edx,%ebx - movl 8(%esp),%edi - xorl %eax,%ecx - movl %eax,4(%esp) - leal -4(%esp),%esp - rorl $11,%ecx - movl (%ebp),%esi - xorl %eax,%ecx - movl 20(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %esi,%ebx - movl %eax,(%esp) - addl %ebx,%edx - andl 4(%esp),%eax - addl %ecx,%ebx - xorl %edi,%eax - movl 156(%esp),%ecx - addl $4,%ebp - addl %ebx,%eax - cmpl $3329325298,%esi - jne L00816_63 - movl 356(%esp),%esi - movl 8(%esp),%ebx - movl 16(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl 24(%esp),%eax - movl 28(%esp),%ebx - movl 32(%esp),%ecx - movl 360(%esp),%edi - addl 16(%esi),%edx - addl 20(%esi),%eax - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %eax,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - leal 356(%esp),%esp - subl $256,%ebp - cmpl 8(%esp),%edi - jb L002loop - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001K256: -.long 1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298 -.long 66051,67438087,134810123,202182159 -.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.align 4,0x90 -L006unrolled: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebp - movl 8(%esi),%ecx - movl 12(%esi),%ebx - movl %ebp,4(%esp) - xorl %ecx,%ebp - movl %ecx,8(%esp) - movl %ebx,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %ebx,20(%esp) - movl %ecx,24(%esp) - movl %esi,28(%esp) - jmp L009grand_loop -.align 4,0x90 -L009grand_loop: - movl (%edi),%ebx - movl 4(%edi),%ecx - bswap %ebx - movl 8(%edi),%esi - bswap %ecx - movl %ebx,32(%esp) - bswap %esi - movl %ecx,36(%esp) - movl %esi,40(%esp) - movl 12(%edi),%ebx - movl 16(%edi),%ecx - bswap %ebx - movl 20(%edi),%esi - bswap %ecx - movl %ebx,44(%esp) - bswap %esi - movl %ecx,48(%esp) - movl %esi,52(%esp) - movl 24(%edi),%ebx - movl 28(%edi),%ecx - bswap %ebx - movl 32(%edi),%esi - bswap %ecx - movl %ebx,56(%esp) - bswap %esi - movl %ecx,60(%esp) - movl %esi,64(%esp) - movl 36(%edi),%ebx - movl 40(%edi),%ecx - bswap %ebx - movl 44(%edi),%esi - bswap %ecx - movl %ebx,68(%esp) - bswap %esi - movl %ecx,72(%esp) - movl %esi,76(%esp) - movl 48(%edi),%ebx - movl 52(%edi),%ecx - bswap %ebx - movl 56(%edi),%esi - bswap %ecx - movl %ebx,80(%esp) - bswap %esi - movl %ecx,84(%esp) - movl %esi,88(%esp) - movl 60(%edi),%ebx - addl $64,%edi - bswap %ebx - movl %edi,100(%esp) - movl %ebx,92(%esp) - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 32(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1116352408(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 36(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1899447441(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 40(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3049323471(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 44(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3921009573(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 48(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 961987163(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 52(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1508970993(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 56(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2453635748(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 60(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2870763221(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 20(%esp),%esi - rorl $14,%edx - movl 24(%esp),%edi - xorl %ecx,%edx - movl 64(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3624381080(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 16(%esp),%ecx - rorl $14,%edx - movl 20(%esp),%edi - xorl %esi,%edx - movl 68(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 310598401(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 12(%esp),%esi - rorl $14,%edx - movl 16(%esp),%edi - xorl %ecx,%edx - movl 72(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 607225278(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 8(%esp),%ecx - rorl $14,%edx - movl 12(%esp),%edi - xorl %esi,%edx - movl 76(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1426881987(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 4(%esp),%esi - rorl $14,%edx - movl 8(%esp),%edi - xorl %ecx,%edx - movl 80(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1925078388(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl (%esp),%ecx - rorl $14,%edx - movl 4(%esp),%edi - xorl %esi,%edx - movl 84(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2162078206(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl %edx,%ecx - movl 28(%esp),%esi - rorl $14,%edx - movl (%esp),%edi - xorl %ecx,%edx - movl 88(%esp),%ebx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2614888103(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl %edx,%esi - movl 24(%esp),%ecx - rorl $14,%edx - movl 28(%esp),%edi - xorl %esi,%edx - movl 92(%esp),%ebx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3248222580(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3835390401(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 4022224774(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 264347078(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 604807628(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 770255983(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1249150122(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1555081692(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1996064986(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2554220882(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2821834349(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2952996808(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3210313671(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3336571891(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3584528711(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 113926993(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 338241895(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 666307205(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 773529912(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1294757372(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1396182291(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1695183700(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1986661051(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2177026350(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2456956037(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2730485921(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2820302411(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3259730800(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3345764771(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3516065817(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3600352804(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,88(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 4094571909(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,92(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 275423344(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 36(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 88(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 32(%esp),%ebx - shrl $10,%edi - addl 68(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,32(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 430227734(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 40(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 92(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 36(%esp),%ebx - shrl $10,%edi - addl 72(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,36(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 506948616(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 44(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 32(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 40(%esp),%ebx - shrl $10,%edi - addl 76(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,40(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 659060556(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 48(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 36(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 44(%esp),%ebx - shrl $10,%edi - addl 80(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,44(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 883997877(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 52(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 40(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 48(%esp),%ebx - shrl $10,%edi - addl 84(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,48(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 958139571(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 56(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 44(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 52(%esp),%ebx - shrl $10,%edi - addl 88(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,52(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1322822218(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 60(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 48(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 56(%esp),%ebx - shrl $10,%edi - addl 92(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - movl %ebx,56(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1537002063(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 64(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 52(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 60(%esp),%ebx - shrl $10,%edi - addl 32(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - movl %ebx,60(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 1747873779(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 68(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 56(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 64(%esp),%ebx - shrl $10,%edi - addl 36(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 20(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 24(%esp),%edi - xorl %ecx,%edx - movl %ebx,64(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - addl 28(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 4(%esp),%edi - xorl %eax,%ecx - movl %eax,(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 1955562222(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 72(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 12(%esp),%edx - addl %ecx,%ebp - movl 60(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 68(%esp),%ebx - shrl $10,%edi - addl 40(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 16(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 20(%esp),%edi - xorl %esi,%edx - movl %ebx,68(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,12(%esp) - xorl %esi,%edx - addl 24(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl (%esp),%edi - xorl %ebp,%esi - movl %ebp,28(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2024104815(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 76(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 8(%esp),%edx - addl %esi,%eax - movl 64(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 72(%esp),%ebx - shrl $10,%edi - addl 44(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 12(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 16(%esp),%edi - xorl %ecx,%edx - movl %ebx,72(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - addl 20(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 28(%esp),%edi - xorl %eax,%ecx - movl %eax,24(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2227730452(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 80(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 4(%esp),%edx - addl %ecx,%ebp - movl 68(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 76(%esp),%ebx - shrl $10,%edi - addl 48(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 8(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 12(%esp),%edi - xorl %esi,%edx - movl %ebx,76(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,4(%esp) - xorl %esi,%edx - addl 16(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 24(%esp),%edi - xorl %ebp,%esi - movl %ebp,20(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2361852424(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 84(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl (%esp),%edx - addl %esi,%eax - movl 72(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 80(%esp),%ebx - shrl $10,%edi - addl 52(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 4(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl 8(%esp),%edi - xorl %ecx,%edx - movl %ebx,80(%esp) - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - addl 12(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 20(%esp),%edi - xorl %eax,%ecx - movl %eax,16(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 2428436474(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 88(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 28(%esp),%edx - addl %ecx,%ebp - movl 76(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 84(%esp),%ebx - shrl $10,%edi - addl 56(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl (%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 4(%esp),%edi - xorl %esi,%edx - movl %ebx,84(%esp) - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,28(%esp) - xorl %esi,%edx - addl 8(%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 16(%esp),%edi - xorl %ebp,%esi - movl %ebp,12(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 2756734187(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - movl 92(%esp),%ecx - rorl $2,%esi - addl %edx,%eax - addl 24(%esp),%edx - addl %esi,%eax - movl 80(%esp),%esi - movl %ecx,%ebx - rorl $11,%ecx - movl %esi,%edi - rorl $2,%esi - xorl %ebx,%ecx - shrl $3,%ebx - rorl $7,%ecx - xorl %edi,%esi - xorl %ecx,%ebx - rorl $17,%esi - addl 88(%esp),%ebx - shrl $10,%edi - addl 60(%esp),%ebx - movl %edx,%ecx - xorl %esi,%edi - movl 28(%esp),%esi - rorl $14,%edx - addl %edi,%ebx - movl (%esp),%edi - xorl %ecx,%edx - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - addl 4(%esp),%ebx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%ebx - rorl $9,%ecx - movl %eax,%esi - movl 12(%esp),%edi - xorl %eax,%ecx - movl %eax,8(%esp) - xorl %edi,%eax - rorl $11,%ecx - andl %eax,%ebp - leal 3204031479(%ebx,%edx,1),%edx - xorl %esi,%ecx - xorl %edi,%ebp - movl 32(%esp),%esi - rorl $2,%ecx - addl %edx,%ebp - addl 20(%esp),%edx - addl %ecx,%ebp - movl 84(%esp),%ecx - movl %esi,%ebx - rorl $11,%esi - movl %ecx,%edi - rorl $2,%ecx - xorl %ebx,%esi - shrl $3,%ebx - rorl $7,%esi - xorl %edi,%ecx - xorl %esi,%ebx - rorl $17,%ecx - addl 92(%esp),%ebx - shrl $10,%edi - addl 64(%esp),%ebx - movl %edx,%esi - xorl %ecx,%edi - movl 24(%esp),%ecx - rorl $14,%edx - addl %edi,%ebx - movl 28(%esp),%edi - xorl %esi,%edx - xorl %edi,%ecx - rorl $5,%edx - andl %esi,%ecx - movl %esi,20(%esp) - xorl %esi,%edx - addl (%esp),%ebx - xorl %ecx,%edi - rorl $6,%edx - movl %ebp,%esi - addl %edi,%ebx - rorl $9,%esi - movl %ebp,%ecx - movl 8(%esp),%edi - xorl %ebp,%esi - movl %ebp,4(%esp) - xorl %edi,%ebp - rorl $11,%esi - andl %ebp,%eax - leal 3329325298(%ebx,%edx,1),%edx - xorl %ecx,%esi - xorl %edi,%eax - rorl $2,%esi - addl %edx,%eax - addl 16(%esp),%edx - addl %esi,%eax - movl 96(%esp),%esi - xorl %edi,%ebp - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebp - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebp,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebp,4(%esp) - xorl %edi,%ebp - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ebx - movl 28(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ebx - addl 28(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %ebx,24(%esi) - movl %ecx,28(%esi) - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ebx,24(%esp) - movl %ecx,28(%esp) - cmpl 104(%esp),%edi - jb L009grand_loop - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L004shaext: - subl $32,%esp - movdqu (%esi),%xmm1 - leal 128(%ebp),%ebp - movdqu 16(%esi),%xmm2 - movdqa 128(%ebp),%xmm7 - pshufd $27,%xmm1,%xmm0 - pshufd $177,%xmm1,%xmm1 - pshufd $27,%xmm2,%xmm2 -.byte 102,15,58,15,202,8 - punpcklqdq %xmm0,%xmm2 - jmp L010loop_shaext -.align 4,0x90 -L010loop_shaext: - movdqu (%edi),%xmm3 - movdqu 16(%edi),%xmm4 - movdqu 32(%edi),%xmm5 -.byte 102,15,56,0,223 - movdqu 48(%edi),%xmm6 - movdqa %xmm2,16(%esp) - movdqa -128(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 102,15,56,0,231 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - nop - movdqa %xmm1,(%esp) -.byte 15,56,203,202 - movdqa -112(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 102,15,56,0,239 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - leal 64(%edi),%edi -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 102,15,56,0,247 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -80(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa -64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa -48(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa -32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa -16(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa (%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 16(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 - nop - paddd %xmm7,%xmm6 -.byte 15,56,204,220 -.byte 15,56,203,202 - movdqa 32(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,205,245 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm6,%xmm7 -.byte 102,15,58,15,253,4 - nop - paddd %xmm7,%xmm3 -.byte 15,56,204,229 -.byte 15,56,203,202 - movdqa 48(%ebp),%xmm0 - paddd %xmm6,%xmm0 -.byte 15,56,205,222 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm3,%xmm7 -.byte 102,15,58,15,254,4 - nop - paddd %xmm7,%xmm4 -.byte 15,56,204,238 -.byte 15,56,203,202 - movdqa 64(%ebp),%xmm0 - paddd %xmm3,%xmm0 -.byte 15,56,205,227 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm4,%xmm7 -.byte 102,15,58,15,251,4 - nop - paddd %xmm7,%xmm5 -.byte 15,56,204,243 -.byte 15,56,203,202 - movdqa 80(%ebp),%xmm0 - paddd %xmm4,%xmm0 -.byte 15,56,205,236 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - movdqa %xmm5,%xmm7 -.byte 102,15,58,15,252,4 -.byte 15,56,203,202 - paddd %xmm7,%xmm6 - movdqa 96(%ebp),%xmm0 - paddd %xmm5,%xmm0 -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 -.byte 15,56,205,245 - movdqa 128(%ebp),%xmm7 -.byte 15,56,203,202 - movdqa 112(%ebp),%xmm0 - paddd %xmm6,%xmm0 - nop -.byte 15,56,203,209 - pshufd $14,%xmm0,%xmm0 - cmpl %edi,%eax - nop -.byte 15,56,203,202 - paddd 16(%esp),%xmm2 - paddd (%esp),%xmm1 - jnz L010loop_shaext - pshufd $177,%xmm2,%xmm2 - pshufd $27,%xmm1,%xmm7 - pshufd $177,%xmm1,%xmm1 - punpckhqdq %xmm2,%xmm1 -.byte 102,15,58,15,215,8 - movl 44(%esp),%esp - movdqu %xmm1,(%esi) - movdqu %xmm2,16(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L005SSSE3: - leal -96(%esp),%esp - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edi - movl %ebx,4(%esp) - xorl %ecx,%ebx - movl %ecx,8(%esp) - movl %edi,12(%esp) - movl 16(%esi),%edx - movl 20(%esi),%edi - movl 24(%esi),%ecx - movl 28(%esi),%esi - movl %edi,20(%esp) - movl 100(%esp),%edi - movl %ecx,24(%esp) - movl %esi,28(%esp) - movdqa 256(%ebp),%xmm7 - jmp L011grand_ssse3 -.align 4,0x90 -L011grand_ssse3: - movdqu (%edi),%xmm0 - movdqu 16(%edi),%xmm1 - movdqu 32(%edi),%xmm2 - movdqu 48(%edi),%xmm3 - addl $64,%edi -.byte 102,15,56,0,199 - movl %edi,100(%esp) -.byte 102,15,56,0,207 - movdqa (%ebp),%xmm4 -.byte 102,15,56,0,215 - movdqa 16(%ebp),%xmm5 - paddd %xmm0,%xmm4 -.byte 102,15,56,0,223 - movdqa 32(%ebp),%xmm6 - paddd %xmm1,%xmm5 - movdqa 48(%ebp),%xmm7 - movdqa %xmm4,32(%esp) - paddd %xmm2,%xmm6 - movdqa %xmm5,48(%esp) - paddd %xmm3,%xmm7 - movdqa %xmm6,64(%esp) - movdqa %xmm7,80(%esp) - jmp L012ssse3_00_47 -.align 4,0x90 -L012ssse3_00_47: - addl $64,%ebp - movl %edx,%ecx - movdqa %xmm1,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm3,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,224,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,250,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm3,%xmm7 - xorl %esi,%ecx - addl 32(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm0 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm0 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm0,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa (%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm0 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm0,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,32(%esp) - movl %edx,%ecx - movdqa %xmm2,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm0,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,225,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,251,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm0,%xmm7 - xorl %esi,%ecx - addl 48(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm1 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm1 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm1,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 16(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm1 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm1,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,48(%esp) - movl %edx,%ecx - movdqa %xmm3,%xmm4 - rorl $14,%edx - movl 20(%esp),%esi - movdqa %xmm1,%xmm7 - xorl %ecx,%edx - movl 24(%esp),%edi -.byte 102,15,58,15,226,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,248,4 - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 4(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %eax,(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm1,%xmm7 - xorl %esi,%ecx - addl 64(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 12(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl 16(%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,12(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm2 - movl %ebx,28(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 8(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm2 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - pshufd $80,%xmm2,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 4(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 32(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,4(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm2 - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - paddd %xmm2,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movdqa %xmm6,64(%esp) - movl %edx,%ecx - movdqa %xmm0,%xmm4 - rorl $14,%edx - movl 4(%esp),%esi - movdqa %xmm2,%xmm7 - xorl %ecx,%edx - movl 8(%esp),%edi -.byte 102,15,58,15,227,4 - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi -.byte 102,15,58,15,249,4 - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - movdqa %xmm4,%xmm5 - rorl $6,%edx - movl %eax,%ecx - movdqa %xmm4,%xmm6 - addl %edi,%edx - movl 20(%esp),%edi - psrld $3,%xmm4 - movl %eax,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %eax,16(%esp) - xorl %eax,%ecx - psrld $7,%xmm6 - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - pshufd $250,%xmm2,%xmm7 - xorl %esi,%ecx - addl 80(%esp),%edx - pslld $14,%xmm5 - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm4 - addl %edx,%ebx - addl 28(%esp),%edx - psrld $11,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm5,%xmm4 - movl (%esp),%esi - xorl %ecx,%edx - pslld $11,%xmm5 - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - pxor %xmm6,%xmm4 - andl %ecx,%esi - movl %ecx,28(%esp) - movdqa %xmm7,%xmm6 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - pxor %xmm5,%xmm4 - movl %ebx,%ecx - addl %edi,%edx - psrld $10,%xmm7 - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm4,%xmm3 - movl %ebx,12(%esp) - xorl %ebx,%ecx - psrlq $17,%xmm6 - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - pxor %xmm6,%xmm7 - andl %ebx,%eax - xorl %esi,%ecx - psrlq $2,%xmm6 - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%eax - addl 24(%esp),%edx - pshufd $128,%xmm7,%xmm7 - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - psrldq $8,%xmm7 - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - paddd %xmm7,%xmm3 - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - pshufd $80,%xmm3,%xmm7 - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - movdqa %xmm7,%xmm6 - rorl $11,%ecx - psrld $10,%xmm7 - andl %eax,%ebx - psrlq $17,%xmm6 - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - pxor %xmm6,%xmm7 - addl %edx,%ebx - addl 20(%esp),%edx - psrlq $2,%xmm6 - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - pxor %xmm6,%xmm7 - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - pshufd $8,%xmm7,%xmm7 - xorl %edi,%esi - rorl $5,%edx - movdqa 48(%ebp),%xmm6 - andl %ecx,%esi - movl %ecx,20(%esp) - pslldq $8,%xmm7 - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - paddd %xmm7,%xmm3 - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - paddd %xmm3,%xmm6 - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movdqa %xmm6,80(%esp) - cmpl $66051,64(%ebp) - jne L012ssse3_00_47 - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 32(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 36(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 40(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 44(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 48(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 52(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 56(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 60(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 20(%esp),%esi - xorl %ecx,%edx - movl 24(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,16(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 4(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 28(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 64(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 12(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 16(%esp),%esi - xorl %ecx,%edx - movl 20(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,12(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl (%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,28(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 24(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 68(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 8(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 12(%esp),%esi - xorl %ecx,%edx - movl 16(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,8(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 28(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,24(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 20(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 72(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 4(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 8(%esp),%esi - xorl %ecx,%edx - movl 12(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,4(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 24(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,20(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 16(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 76(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl (%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 4(%esp),%esi - xorl %ecx,%edx - movl 8(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 20(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,16(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 12(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 80(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 28(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl (%esp),%esi - xorl %ecx,%edx - movl 4(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,28(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 16(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,12(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl 8(%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 84(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 24(%esp),%edx - addl %ecx,%eax - movl %edx,%ecx - rorl $14,%edx - movl 28(%esp),%esi - xorl %ecx,%edx - movl (%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,24(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %eax,%ecx - addl %edi,%edx - movl 12(%esp),%edi - movl %eax,%esi - rorl $9,%ecx - movl %eax,8(%esp) - xorl %eax,%ecx - xorl %edi,%eax - addl 4(%esp),%edx - rorl $11,%ecx - andl %eax,%ebx - xorl %esi,%ecx - addl 88(%esp),%edx - xorl %edi,%ebx - rorl $2,%ecx - addl %edx,%ebx - addl 20(%esp),%edx - addl %ecx,%ebx - movl %edx,%ecx - rorl $14,%edx - movl 24(%esp),%esi - xorl %ecx,%edx - movl 28(%esp),%edi - xorl %edi,%esi - rorl $5,%edx - andl %ecx,%esi - movl %ecx,20(%esp) - xorl %ecx,%edx - xorl %esi,%edi - rorl $6,%edx - movl %ebx,%ecx - addl %edi,%edx - movl 8(%esp),%edi - movl %ebx,%esi - rorl $9,%ecx - movl %ebx,4(%esp) - xorl %ebx,%ecx - xorl %edi,%ebx - addl (%esp),%edx - rorl $11,%ecx - andl %ebx,%eax - xorl %esi,%ecx - addl 92(%esp),%edx - xorl %edi,%eax - rorl $2,%ecx - addl %edx,%eax - addl 16(%esp),%edx - addl %ecx,%eax - movl 96(%esp),%esi - xorl %edi,%ebx - movl 12(%esp),%ecx - addl (%esi),%eax - addl 4(%esi),%ebx - addl 8(%esi),%edi - addl 12(%esi),%ecx - movl %eax,(%esi) - movl %ebx,4(%esi) - movl %edi,8(%esi) - movl %ecx,12(%esi) - movl %ebx,4(%esp) - xorl %edi,%ebx - movl %edi,8(%esp) - movl %ecx,12(%esp) - movl 20(%esp),%edi - movl 24(%esp),%ecx - addl 16(%esi),%edx - addl 20(%esi),%edi - addl 24(%esi),%ecx - movl %edx,16(%esi) - movl %edi,20(%esi) - movl %edi,20(%esp) - movl 28(%esp),%edi - movl %ecx,24(%esi) - addl 28(%esi),%edi - movl %ecx,24(%esp) - movl %edi,28(%esi) - movl %edi,28(%esp) - movl 100(%esp),%edi - movdqa 64(%ebp),%xmm7 - subl $192,%ebp - cmpl 104(%esp),%edi - jb L011grand_ssse3 - movl 108(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha512-586.s b/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha512-586.s deleted file mode 100644 index d539b1d168116f..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha512-586.s +++ /dev/null @@ -1,2831 +0,0 @@ -.file "sha512-586.s" -.text -.globl _sha512_block_data_order -.align 4 -_sha512_block_data_order: -L_sha512_block_data_order_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%eax - movl %esp,%ebx - call L000pic_point -L000pic_point: - popl %ebp - leal L001K512-L000pic_point(%ebp),%ebp - subl $16,%esp - andl $-64,%esp - shll $7,%eax - addl %edi,%eax - movl %esi,(%esp) - movl %edi,4(%esp) - movl %eax,8(%esp) - movl %ebx,12(%esp) - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K512(%ebp),%edx - movl (%edx),%ecx - testl $67108864,%ecx - jz L002loop_x86 - movl 4(%edx),%edx - movq (%esi),%mm0 - andl $16777216,%ecx - movq 8(%esi),%mm1 - andl $512,%edx - movq 16(%esi),%mm2 - orl %edx,%ecx - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 - cmpl $16777728,%ecx - je L003SSSE3 - subl $80,%esp - jmp L004loop_sse2 -.align 4,0x90 -L004loop_sse2: - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - pxor %mm1,%mm2 - movq %mm7,56(%esp) - movq %mm0,%mm3 - movl (%edi),%eax - movl 4(%edi),%ebx - addl $8,%edi - movl $15,%edx - bswap %eax - bswap %ebx - jmp L00500_14_sse2 -.align 4,0x90 -L00500_14_sse2: - movd %eax,%mm1 - movl (%edi),%eax - movd %ebx,%mm7 - movl 4(%edi),%ebx - addl $8,%edi - bswap %eax - bswap %ebx - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - movq 48(%esp),%mm6 - decl %edx - jnz L00500_14_sse2 - movd %eax,%mm1 - movd %ebx,%mm7 - punpckldq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm3,%mm0 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm2,%mm3 - movq %mm0,%mm2 - addl $8,%ebp - paddq %mm6,%mm3 - pxor %mm0,%mm0 - movl $32,%edx - jmp L00616_79_sse2 -.align 4,0x90 -L00616_79_sse2: - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm0 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm2 - addl $8,%ebp - movq 88(%esp),%mm5 - movq %mm7,%mm1 - psrlq $1,%mm7 - movq %mm5,%mm6 - psrlq $6,%mm5 - psllq $56,%mm1 - paddq %mm3,%mm2 - movq %mm7,%mm3 - psrlq $6,%mm7 - pxor %mm1,%mm3 - psllq $7,%mm1 - pxor %mm7,%mm3 - psrlq $1,%mm7 - pxor %mm1,%mm3 - movq %mm5,%mm1 - psrlq $13,%mm5 - pxor %mm3,%mm7 - psllq $3,%mm6 - pxor %mm5,%mm1 - paddq 200(%esp),%mm7 - pxor %mm6,%mm1 - psrlq $42,%mm5 - paddq 128(%esp),%mm7 - pxor %mm5,%mm1 - psllq $42,%mm6 - movq 40(%esp),%mm5 - pxor %mm6,%mm1 - movq 48(%esp),%mm6 - paddq %mm1,%mm7 - movq %mm4,%mm1 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - movq %mm7,72(%esp) - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - paddq (%ebp),%mm7 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - subl $8,%esp - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 192(%esp),%mm7 - paddq %mm6,%mm0 - addl $8,%ebp - decl %edx - jnz L00616_79_sse2 - paddq %mm3,%mm0 - movq 8(%esp),%mm1 - movq 24(%esp),%mm3 - movq 40(%esp),%mm5 - movq 48(%esp),%mm6 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movl $640,%eax - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal (%esp,%eax,1),%esp - subl %eax,%ebp - cmpl 88(%esp),%edi - jb L004loop_sse2 - movl 92(%esp),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 5,0x90 -L003SSSE3: - leal -64(%esp),%edx - subl $256,%esp - movdqa 640(%ebp),%xmm1 - movdqu (%edi),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%edi),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%edi),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%edi),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%edi),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%edi),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%edi),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%edi),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movdqa %xmm2,-16(%edx) - nop -.align 5,0x90 -L007loop_ssse3: - movdqa 16(%edx),%xmm2 - movdqa %xmm3,48(%edx) - leal 128(%ebp),%ebp - movq %mm1,8(%esp) - movl %edi,%ebx - movq %mm2,16(%esp) - leal 128(%edi),%edi - movq %mm3,24(%esp) - cmpl %eax,%edi - movq %mm5,40(%esp) - cmovbl %edi,%ebx - movq %mm6,48(%esp) - movl $4,%ecx - pxor %mm1,%mm2 - movq %mm7,56(%esp) - pxor %mm3,%mm3 - jmp L00800_47_ssse3 -.align 5,0x90 -L00800_47_ssse3: - movdqa %xmm5,%xmm3 - movdqa %xmm2,%xmm1 -.byte 102,15,58,15,208,8 - movdqa %xmm4,(%edx) -.byte 102,15,58,15,220,8 - movdqa %xmm2,%xmm4 - psrlq $7,%xmm2 - paddq %xmm3,%xmm0 - movdqa %xmm4,%xmm3 - psrlq $1,%xmm4 - psllq $56,%xmm3 - pxor %xmm4,%xmm2 - psrlq $7,%xmm4 - pxor %xmm3,%xmm2 - psllq $7,%xmm3 - pxor %xmm4,%xmm2 - movdqa %xmm7,%xmm4 - pxor %xmm3,%xmm2 - movdqa %xmm7,%xmm3 - psrlq $6,%xmm4 - paddq %xmm2,%xmm0 - movdqa %xmm7,%xmm2 - psrlq $19,%xmm3 - psllq $3,%xmm2 - pxor %xmm3,%xmm4 - psrlq $42,%xmm3 - pxor %xmm2,%xmm4 - psllq $42,%xmm2 - pxor %xmm3,%xmm4 - movdqa 32(%edx),%xmm3 - pxor %xmm2,%xmm4 - movdqa (%ebp),%xmm2 - movq %mm4,%mm1 - paddq %xmm4,%xmm0 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm0,%xmm2 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm2,-128(%edx) - movdqa %xmm6,%xmm4 - movdqa %xmm3,%xmm2 -.byte 102,15,58,15,217,8 - movdqa %xmm5,16(%edx) -.byte 102,15,58,15,229,8 - movdqa %xmm3,%xmm5 - psrlq $7,%xmm3 - paddq %xmm4,%xmm1 - movdqa %xmm5,%xmm4 - psrlq $1,%xmm5 - psllq $56,%xmm4 - pxor %xmm5,%xmm3 - psrlq $7,%xmm5 - pxor %xmm4,%xmm3 - psllq $7,%xmm4 - pxor %xmm5,%xmm3 - movdqa %xmm0,%xmm5 - pxor %xmm4,%xmm3 - movdqa %xmm0,%xmm4 - psrlq $6,%xmm5 - paddq %xmm3,%xmm1 - movdqa %xmm0,%xmm3 - psrlq $19,%xmm4 - psllq $3,%xmm3 - pxor %xmm4,%xmm5 - psrlq $42,%xmm4 - pxor %xmm3,%xmm5 - psllq $42,%xmm3 - pxor %xmm4,%xmm5 - movdqa 48(%edx),%xmm4 - pxor %xmm3,%xmm5 - movdqa 16(%ebp),%xmm3 - movq %mm4,%mm1 - paddq %xmm5,%xmm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm1,%xmm3 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm3,-112(%edx) - movdqa %xmm7,%xmm5 - movdqa %xmm4,%xmm3 -.byte 102,15,58,15,226,8 - movdqa %xmm6,32(%edx) -.byte 102,15,58,15,238,8 - movdqa %xmm4,%xmm6 - psrlq $7,%xmm4 - paddq %xmm5,%xmm2 - movdqa %xmm6,%xmm5 - psrlq $1,%xmm6 - psllq $56,%xmm5 - pxor %xmm6,%xmm4 - psrlq $7,%xmm6 - pxor %xmm5,%xmm4 - psllq $7,%xmm5 - pxor %xmm6,%xmm4 - movdqa %xmm1,%xmm6 - pxor %xmm5,%xmm4 - movdqa %xmm1,%xmm5 - psrlq $6,%xmm6 - paddq %xmm4,%xmm2 - movdqa %xmm1,%xmm4 - psrlq $19,%xmm5 - psllq $3,%xmm4 - pxor %xmm5,%xmm6 - psrlq $42,%xmm5 - pxor %xmm4,%xmm6 - psllq $42,%xmm4 - pxor %xmm5,%xmm6 - movdqa (%edx),%xmm5 - pxor %xmm4,%xmm6 - movdqa 32(%ebp),%xmm4 - movq %mm4,%mm1 - paddq %xmm6,%xmm2 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm2,%xmm4 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm4,-96(%edx) - movdqa %xmm0,%xmm6 - movdqa %xmm5,%xmm4 -.byte 102,15,58,15,235,8 - movdqa %xmm7,48(%edx) -.byte 102,15,58,15,247,8 - movdqa %xmm5,%xmm7 - psrlq $7,%xmm5 - paddq %xmm6,%xmm3 - movdqa %xmm7,%xmm6 - psrlq $1,%xmm7 - psllq $56,%xmm6 - pxor %xmm7,%xmm5 - psrlq $7,%xmm7 - pxor %xmm6,%xmm5 - psllq $7,%xmm6 - pxor %xmm7,%xmm5 - movdqa %xmm2,%xmm7 - pxor %xmm6,%xmm5 - movdqa %xmm2,%xmm6 - psrlq $6,%xmm7 - paddq %xmm5,%xmm3 - movdqa %xmm2,%xmm5 - psrlq $19,%xmm6 - psllq $3,%xmm5 - pxor %xmm6,%xmm7 - psrlq $42,%xmm6 - pxor %xmm5,%xmm7 - psllq $42,%xmm5 - pxor %xmm6,%xmm7 - movdqa 16(%edx),%xmm6 - pxor %xmm5,%xmm7 - movdqa 48(%ebp),%xmm5 - movq %mm4,%mm1 - paddq %xmm7,%xmm3 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm3,%xmm5 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm5,-80(%edx) - movdqa %xmm1,%xmm7 - movdqa %xmm6,%xmm5 -.byte 102,15,58,15,244,8 - movdqa %xmm0,(%edx) -.byte 102,15,58,15,248,8 - movdqa %xmm6,%xmm0 - psrlq $7,%xmm6 - paddq %xmm7,%xmm4 - movdqa %xmm0,%xmm7 - psrlq $1,%xmm0 - psllq $56,%xmm7 - pxor %xmm0,%xmm6 - psrlq $7,%xmm0 - pxor %xmm7,%xmm6 - psllq $7,%xmm7 - pxor %xmm0,%xmm6 - movdqa %xmm3,%xmm0 - pxor %xmm7,%xmm6 - movdqa %xmm3,%xmm7 - psrlq $6,%xmm0 - paddq %xmm6,%xmm4 - movdqa %xmm3,%xmm6 - psrlq $19,%xmm7 - psllq $3,%xmm6 - pxor %xmm7,%xmm0 - psrlq $42,%xmm7 - pxor %xmm6,%xmm0 - psllq $42,%xmm6 - pxor %xmm7,%xmm0 - movdqa 32(%edx),%xmm7 - pxor %xmm6,%xmm0 - movdqa 64(%ebp),%xmm6 - movq %mm4,%mm1 - paddq %xmm0,%xmm4 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - paddq %xmm4,%xmm6 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm6,-64(%edx) - movdqa %xmm2,%xmm0 - movdqa %xmm7,%xmm6 -.byte 102,15,58,15,253,8 - movdqa %xmm1,16(%edx) -.byte 102,15,58,15,193,8 - movdqa %xmm7,%xmm1 - psrlq $7,%xmm7 - paddq %xmm0,%xmm5 - movdqa %xmm1,%xmm0 - psrlq $1,%xmm1 - psllq $56,%xmm0 - pxor %xmm1,%xmm7 - psrlq $7,%xmm1 - pxor %xmm0,%xmm7 - psllq $7,%xmm0 - pxor %xmm1,%xmm7 - movdqa %xmm4,%xmm1 - pxor %xmm0,%xmm7 - movdqa %xmm4,%xmm0 - psrlq $6,%xmm1 - paddq %xmm7,%xmm5 - movdqa %xmm4,%xmm7 - psrlq $19,%xmm0 - psllq $3,%xmm7 - pxor %xmm0,%xmm1 - psrlq $42,%xmm0 - pxor %xmm7,%xmm1 - psllq $42,%xmm7 - pxor %xmm0,%xmm1 - movdqa 48(%edx),%xmm0 - pxor %xmm7,%xmm1 - movdqa 80(%ebp),%xmm7 - movq %mm4,%mm1 - paddq %xmm1,%xmm5 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - paddq %xmm5,%xmm7 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm7,-48(%edx) - movdqa %xmm3,%xmm1 - movdqa %xmm0,%xmm7 -.byte 102,15,58,15,198,8 - movdqa %xmm2,32(%edx) -.byte 102,15,58,15,202,8 - movdqa %xmm0,%xmm2 - psrlq $7,%xmm0 - paddq %xmm1,%xmm6 - movdqa %xmm2,%xmm1 - psrlq $1,%xmm2 - psllq $56,%xmm1 - pxor %xmm2,%xmm0 - psrlq $7,%xmm2 - pxor %xmm1,%xmm0 - psllq $7,%xmm1 - pxor %xmm2,%xmm0 - movdqa %xmm5,%xmm2 - pxor %xmm1,%xmm0 - movdqa %xmm5,%xmm1 - psrlq $6,%xmm2 - paddq %xmm0,%xmm6 - movdqa %xmm5,%xmm0 - psrlq $19,%xmm1 - psllq $3,%xmm0 - pxor %xmm1,%xmm2 - psrlq $42,%xmm1 - pxor %xmm0,%xmm2 - psllq $42,%xmm0 - pxor %xmm1,%xmm2 - movdqa (%edx),%xmm1 - pxor %xmm0,%xmm2 - movdqa 96(%ebp),%xmm0 - movq %mm4,%mm1 - paddq %xmm2,%xmm6 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - paddq %xmm6,%xmm0 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm0,-32(%edx) - movdqa %xmm4,%xmm2 - movdqa %xmm1,%xmm0 -.byte 102,15,58,15,207,8 - movdqa %xmm3,48(%edx) -.byte 102,15,58,15,211,8 - movdqa %xmm1,%xmm3 - psrlq $7,%xmm1 - paddq %xmm2,%xmm7 - movdqa %xmm3,%xmm2 - psrlq $1,%xmm3 - psllq $56,%xmm2 - pxor %xmm3,%xmm1 - psrlq $7,%xmm3 - pxor %xmm2,%xmm1 - psllq $7,%xmm2 - pxor %xmm3,%xmm1 - movdqa %xmm6,%xmm3 - pxor %xmm2,%xmm1 - movdqa %xmm6,%xmm2 - psrlq $6,%xmm3 - paddq %xmm1,%xmm7 - movdqa %xmm6,%xmm1 - psrlq $19,%xmm2 - psllq $3,%xmm1 - pxor %xmm2,%xmm3 - psrlq $42,%xmm2 - pxor %xmm1,%xmm3 - psllq $42,%xmm1 - pxor %xmm2,%xmm3 - movdqa 16(%edx),%xmm2 - pxor %xmm1,%xmm3 - movdqa 112(%ebp),%xmm1 - movq %mm4,%mm1 - paddq %xmm3,%xmm7 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - paddq %xmm7,%xmm1 - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm1,-16(%edx) - leal 128(%ebp),%ebp - decl %ecx - jnz L00800_47_ssse3 - movdqa (%ebp),%xmm1 - leal -640(%ebp),%ebp - movdqu (%ebx),%xmm0 -.byte 102,15,56,0,193 - movdqa (%ebp),%xmm3 - movdqa %xmm1,%xmm2 - movdqu 16(%ebx),%xmm1 - paddq %xmm0,%xmm3 -.byte 102,15,56,0,202 - movq %mm4,%mm1 - movq -128(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -120(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm3,-128(%edx) - movdqa 16(%ebp),%xmm4 - movdqa %xmm2,%xmm3 - movdqu 32(%ebx),%xmm2 - paddq %xmm1,%xmm4 -.byte 102,15,56,0,211 - movq %mm4,%mm1 - movq -112(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -104(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm4,-112(%edx) - movdqa 32(%ebp),%xmm5 - movdqa %xmm3,%xmm4 - movdqu 48(%ebx),%xmm3 - paddq %xmm2,%xmm5 -.byte 102,15,56,0,220 - movq %mm4,%mm1 - movq -96(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -88(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm5,-96(%edx) - movdqa 48(%ebp),%xmm6 - movdqa %xmm4,%xmm5 - movdqu 64(%ebx),%xmm4 - paddq %xmm3,%xmm6 -.byte 102,15,56,0,229 - movq %mm4,%mm1 - movq -80(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -72(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm6,-80(%edx) - movdqa 64(%ebp),%xmm7 - movdqa %xmm5,%xmm6 - movdqu 80(%ebx),%xmm5 - paddq %xmm4,%xmm7 -.byte 102,15,56,0,238 - movq %mm4,%mm1 - movq -64(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,32(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 56(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 24(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 8(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 32(%esp),%mm5 - paddq %mm6,%mm2 - movq 40(%esp),%mm6 - movq %mm4,%mm1 - movq -56(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,24(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,56(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 48(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 16(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq (%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 24(%esp),%mm5 - paddq %mm6,%mm0 - movq 32(%esp),%mm6 - movdqa %xmm7,-64(%edx) - movdqa %xmm0,(%edx) - movdqa 80(%ebp),%xmm0 - movdqa %xmm6,%xmm7 - movdqu 96(%ebx),%xmm6 - paddq %xmm5,%xmm0 -.byte 102,15,56,0,247 - movq %mm4,%mm1 - movq -48(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,16(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,48(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 40(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 8(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 56(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 16(%esp),%mm5 - paddq %mm6,%mm2 - movq 24(%esp),%mm6 - movq %mm4,%mm1 - movq -40(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,8(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,40(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 32(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq (%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 48(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 8(%esp),%mm5 - paddq %mm6,%mm0 - movq 16(%esp),%mm6 - movdqa %xmm0,-48(%edx) - movdqa %xmm1,16(%edx) - movdqa 96(%ebp),%xmm1 - movdqa %xmm7,%xmm0 - movdqu 112(%ebx),%xmm7 - paddq %xmm6,%xmm1 -.byte 102,15,56,0,248 - movq %mm4,%mm1 - movq -32(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,32(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 24(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 56(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 40(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq (%esp),%mm5 - paddq %mm6,%mm2 - movq 8(%esp),%mm6 - movq %mm4,%mm1 - movq -24(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,56(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,24(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 16(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 48(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 32(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 56(%esp),%mm5 - paddq %mm6,%mm0 - movq (%esp),%mm6 - movdqa %xmm1,-32(%edx) - movdqa %xmm2,32(%edx) - movdqa 112(%ebp),%xmm2 - movdqa (%edx),%xmm0 - paddq %xmm7,%xmm2 - movq %mm4,%mm1 - movq -16(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,48(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm0 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm0,16(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq 8(%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 40(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm0,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm0,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 24(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm0,%mm2 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - pxor %mm7,%mm6 - movq 48(%esp),%mm5 - paddq %mm6,%mm2 - movq 56(%esp),%mm6 - movq %mm4,%mm1 - movq -8(%edx),%mm7 - pxor %mm6,%mm5 - psrlq $14,%mm1 - movq %mm4,40(%esp) - pand %mm4,%mm5 - psllq $23,%mm4 - paddq %mm3,%mm2 - movq %mm1,%mm3 - psrlq $4,%mm1 - pxor %mm6,%mm5 - pxor %mm4,%mm3 - psllq $23,%mm4 - pxor %mm1,%mm3 - movq %mm2,8(%esp) - paddq %mm5,%mm7 - pxor %mm4,%mm3 - psrlq $23,%mm1 - paddq (%esp),%mm7 - pxor %mm1,%mm3 - psllq $4,%mm4 - pxor %mm4,%mm3 - movq 32(%esp),%mm4 - paddq %mm7,%mm3 - movq %mm2,%mm5 - psrlq $28,%mm5 - paddq %mm3,%mm4 - movq %mm2,%mm6 - movq %mm5,%mm7 - psllq $25,%mm6 - movq 16(%esp),%mm1 - psrlq $6,%mm5 - pxor %mm6,%mm7 - psllq $5,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm2 - psrlq $5,%mm5 - pxor %mm6,%mm7 - pand %mm2,%mm0 - psllq $6,%mm6 - pxor %mm5,%mm7 - pxor %mm1,%mm0 - pxor %mm7,%mm6 - movq 40(%esp),%mm5 - paddq %mm6,%mm0 - movq 48(%esp),%mm6 - movdqa %xmm2,-16(%edx) - movq 8(%esp),%mm1 - paddq %mm3,%mm0 - movq 24(%esp),%mm3 - movq 56(%esp),%mm7 - pxor %mm1,%mm2 - paddq (%esi),%mm0 - paddq 8(%esi),%mm1 - paddq 16(%esi),%mm2 - paddq 24(%esi),%mm3 - paddq 32(%esi),%mm4 - paddq 40(%esi),%mm5 - paddq 48(%esi),%mm6 - paddq 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - cmpl %eax,%edi - jb L007loop_ssse3 - movl 76(%edx),%esp - emms - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 4,0x90 -L002loop_x86: - movl (%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 16(%edi),%eax - movl 20(%edi),%ebx - movl 24(%edi),%ecx - movl 28(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 32(%edi),%eax - movl 36(%edi),%ebx - movl 40(%edi),%ecx - movl 44(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 48(%edi),%eax - movl 52(%edi),%ebx - movl 56(%edi),%ecx - movl 60(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 64(%edi),%eax - movl 68(%edi),%ebx - movl 72(%edi),%ecx - movl 76(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 80(%edi),%eax - movl 84(%edi),%ebx - movl 88(%edi),%ecx - movl 92(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 96(%edi),%eax - movl 100(%edi),%ebx - movl 104(%edi),%ecx - movl 108(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - movl 112(%edi),%eax - movl 116(%edi),%ebx - movl 120(%edi),%ecx - movl 124(%edi),%edx - bswap %eax - bswap %ebx - bswap %ecx - bswap %edx - pushl %eax - pushl %ebx - pushl %ecx - pushl %edx - addl $128,%edi - subl $72,%esp - movl %edi,204(%esp) - leal 8(%esp),%edi - movl $16,%ecx -.long 2784229001 -.align 4,0x90 -L00900_15_x86: - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $148,%dl - jne L00900_15_x86 -.align 4,0x90 -L01016_79_x86: - movl 312(%esp),%ecx - movl 316(%esp),%edx - movl %ecx,%esi - shrl $1,%ecx - movl %edx,%edi - shrl $1,%edx - movl %ecx,%eax - shll $24,%esi - movl %edx,%ebx - shll $24,%edi - xorl %esi,%ebx - shrl $6,%ecx - xorl %edi,%eax - shrl $6,%edx - xorl %ecx,%eax - shll $7,%esi - xorl %edx,%ebx - shll $1,%edi - xorl %esi,%ebx - shrl $1,%ecx - xorl %edi,%eax - shrl $1,%edx - xorl %ecx,%eax - shll $6,%edi - xorl %edx,%ebx - xorl %edi,%eax - movl %eax,(%esp) - movl %ebx,4(%esp) - movl 208(%esp),%ecx - movl 212(%esp),%edx - movl %ecx,%esi - shrl $6,%ecx - movl %edx,%edi - shrl $6,%edx - movl %ecx,%eax - shll $3,%esi - movl %edx,%ebx - shll $3,%edi - xorl %esi,%eax - shrl $13,%ecx - xorl %edi,%ebx - shrl $13,%edx - xorl %ecx,%eax - shll $10,%esi - xorl %edx,%ebx - shll $10,%edi - xorl %esi,%ebx - shrl $10,%ecx - xorl %edi,%eax - shrl $10,%edx - xorl %ecx,%ebx - shll $13,%edi - xorl %edx,%eax - xorl %edi,%eax - movl 320(%esp),%ecx - movl 324(%esp),%edx - addl (%esp),%eax - adcl 4(%esp),%ebx - movl 248(%esp),%esi - movl 252(%esp),%edi - addl %ecx,%eax - adcl %edx,%ebx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,192(%esp) - movl %ebx,196(%esp) - movl 40(%esp),%ecx - movl 44(%esp),%edx - movl %ecx,%esi - shrl $9,%ecx - movl %edx,%edi - shrl $9,%edx - movl %ecx,%ebx - shll $14,%esi - movl %edx,%eax - shll $14,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%eax - shll $4,%esi - xorl %edx,%ebx - shll $4,%edi - xorl %esi,%ebx - shrl $4,%ecx - xorl %edi,%eax - shrl $4,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 48(%esp),%ecx - movl 52(%esp),%edx - movl 56(%esp),%esi - movl 60(%esp),%edi - addl 64(%esp),%eax - adcl 68(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - andl 40(%esp),%ecx - andl 44(%esp),%edx - addl 192(%esp),%eax - adcl 196(%esp),%ebx - xorl %esi,%ecx - xorl %edi,%edx - movl (%ebp),%esi - movl 4(%ebp),%edi - addl %ecx,%eax - adcl %edx,%ebx - movl 32(%esp),%ecx - movl 36(%esp),%edx - addl %esi,%eax - adcl %edi,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - addl %ecx,%eax - adcl %edx,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl %eax,32(%esp) - movl %ebx,36(%esp) - movl %ecx,%esi - shrl $2,%ecx - movl %edx,%edi - shrl $2,%edx - movl %ecx,%ebx - shll $4,%esi - movl %edx,%eax - shll $4,%edi - xorl %esi,%ebx - shrl $5,%ecx - xorl %edi,%eax - shrl $5,%edx - xorl %ecx,%ebx - shll $21,%esi - xorl %edx,%eax - shll $21,%edi - xorl %esi,%eax - shrl $21,%ecx - xorl %edi,%ebx - shrl $21,%edx - xorl %ecx,%eax - shll $5,%esi - xorl %edx,%ebx - shll $5,%edi - xorl %esi,%eax - xorl %edi,%ebx - movl 8(%esp),%ecx - movl 12(%esp),%edx - movl 16(%esp),%esi - movl 20(%esp),%edi - addl (%esp),%eax - adcl 4(%esp),%ebx - orl %esi,%ecx - orl %edi,%edx - andl 24(%esp),%ecx - andl 28(%esp),%edx - andl 8(%esp),%esi - andl 12(%esp),%edi - orl %esi,%ecx - orl %edi,%edx - addl %ecx,%eax - adcl %edx,%ebx - movl %eax,(%esp) - movl %ebx,4(%esp) - movb (%ebp),%dl - subl $8,%esp - leal 8(%ebp),%ebp - cmpb $23,%dl - jne L01016_79_x86 - movl 840(%esp),%esi - movl 844(%esp),%edi - movl (%esi),%eax - movl 4(%esi),%ebx - movl 8(%esi),%ecx - movl 12(%esi),%edx - addl 8(%esp),%eax - adcl 12(%esp),%ebx - movl %eax,(%esi) - movl %ebx,4(%esi) - addl 16(%esp),%ecx - adcl 20(%esp),%edx - movl %ecx,8(%esi) - movl %edx,12(%esi) - movl 16(%esi),%eax - movl 20(%esi),%ebx - movl 24(%esi),%ecx - movl 28(%esi),%edx - addl 24(%esp),%eax - adcl 28(%esp),%ebx - movl %eax,16(%esi) - movl %ebx,20(%esi) - addl 32(%esp),%ecx - adcl 36(%esp),%edx - movl %ecx,24(%esi) - movl %edx,28(%esi) - movl 32(%esi),%eax - movl 36(%esi),%ebx - movl 40(%esi),%ecx - movl 44(%esi),%edx - addl 40(%esp),%eax - adcl 44(%esp),%ebx - movl %eax,32(%esi) - movl %ebx,36(%esi) - addl 48(%esp),%ecx - adcl 52(%esp),%edx - movl %ecx,40(%esi) - movl %edx,44(%esi) - movl 48(%esi),%eax - movl 52(%esi),%ebx - movl 56(%esi),%ecx - movl 60(%esi),%edx - addl 56(%esp),%eax - adcl 60(%esp),%ebx - movl %eax,48(%esi) - movl %ebx,52(%esi) - addl 64(%esp),%ecx - adcl 68(%esp),%edx - movl %ecx,56(%esi) - movl %edx,60(%esi) - addl $840,%esp - subl $640,%ebp - cmpl 8(%esp),%edi - jb L002loop_x86 - movl 12(%esp),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001K512: -.long 3609767458,1116352408 -.long 602891725,1899447441 -.long 3964484399,3049323471 -.long 2173295548,3921009573 -.long 4081628472,961987163 -.long 3053834265,1508970993 -.long 2937671579,2453635748 -.long 3664609560,2870763221 -.long 2734883394,3624381080 -.long 1164996542,310598401 -.long 1323610764,607225278 -.long 3590304994,1426881987 -.long 4068182383,1925078388 -.long 991336113,2162078206 -.long 633803317,2614888103 -.long 3479774868,3248222580 -.long 2666613458,3835390401 -.long 944711139,4022224774 -.long 2341262773,264347078 -.long 2007800933,604807628 -.long 1495990901,770255983 -.long 1856431235,1249150122 -.long 3175218132,1555081692 -.long 2198950837,1996064986 -.long 3999719339,2554220882 -.long 766784016,2821834349 -.long 2566594879,2952996808 -.long 3203337956,3210313671 -.long 1034457026,3336571891 -.long 2466948901,3584528711 -.long 3758326383,113926993 -.long 168717936,338241895 -.long 1188179964,666307205 -.long 1546045734,773529912 -.long 1522805485,1294757372 -.long 2643833823,1396182291 -.long 2343527390,1695183700 -.long 1014477480,1986661051 -.long 1206759142,2177026350 -.long 344077627,2456956037 -.long 1290863460,2730485921 -.long 3158454273,2820302411 -.long 3505952657,3259730800 -.long 106217008,3345764771 -.long 3606008344,3516065817 -.long 1432725776,3600352804 -.long 1467031594,4094571909 -.long 851169720,275423344 -.long 3100823752,430227734 -.long 1363258195,506948616 -.long 3750685593,659060556 -.long 3785050280,883997877 -.long 3318307427,958139571 -.long 3812723403,1322822218 -.long 2003034995,1537002063 -.long 3602036899,1747873779 -.long 1575990012,1955562222 -.long 1125592928,2024104815 -.long 2716904306,2227730452 -.long 442776044,2361852424 -.long 593698344,2428436474 -.long 3733110249,2756734187 -.long 2999351573,3204031479 -.long 3815920427,3329325298 -.long 3928383900,3391569614 -.long 566280711,3515267271 -.long 3454069534,3940187606 -.long 4000239992,4118630271 -.long 1914138554,116418474 -.long 2731055270,174292421 -.long 3203993006,289380356 -.long 320620315,460393269 -.long 587496836,685471733 -.long 1086792851,852142971 -.long 365543100,1017036298 -.long 2618297676,1126000580 -.long 3409855158,1288033470 -.long 4234509866,1501505948 -.long 987167468,1607167915 -.long 1246189591,1816402316 -.long 67438087,66051 -.long 202182159,134810123 -.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -.byte 62,0 -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/whrlpool/wp-mmx.s b/deps/openssl/asm_obsolete/x86-macosx-gas/whrlpool/wp-mmx.s deleted file mode 100644 index 379e585263db4d..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/whrlpool/wp-mmx.s +++ /dev/null @@ -1,1105 +0,0 @@ -.file "wp-mmx.s" -.text -.globl _whirlpool_block_mmx -.align 4 -_whirlpool_block_mmx: -L_whirlpool_block_mmx_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%esi - movl 24(%esp),%edi - movl 28(%esp),%ebp - movl %esp,%eax - subl $148,%esp - andl $-64,%esp - leal 128(%esp),%ebx - movl %esi,(%ebx) - movl %edi,4(%ebx) - movl %ebp,8(%ebx) - movl %eax,16(%ebx) - call L000pic_point -L000pic_point: - popl %ebp - leal L001table-L000pic_point(%ebp),%ebp - xorl %ecx,%ecx - xorl %edx,%edx - movq (%esi),%mm0 - movq 8(%esi),%mm1 - movq 16(%esi),%mm2 - movq 24(%esi),%mm3 - movq 32(%esi),%mm4 - movq 40(%esi),%mm5 - movq 48(%esi),%mm6 - movq 56(%esi),%mm7 -L002outerloop: - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - xorl %esi,%esi - movl %esi,12(%ebx) -.align 4,0x90 -L003round: - movq 4096(%ebp,%esi,8),%mm0 - movl (%esp),%eax - movl 4(%esp),%ebx - movzbl %al,%ecx - movzbl %ah,%edx - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - movq 7(%ebp,%edi,8),%mm1 - movl 8(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 6(%ebp,%esi,8),%mm2 - movq 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - movq 4(%ebp,%esi,8),%mm4 - movq 3(%ebp,%edi,8),%mm5 - movl 12(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - movq 2(%ebp,%esi,8),%mm6 - movq 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 16(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 20(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 24(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 28(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 32(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 36(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 40(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 44(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 48(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 52(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 56(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 60(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - movl 64(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - movl 68(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - movq %mm0,(%esp) - movq %mm1,8(%esp) - movq %mm2,16(%esp) - movq %mm3,24(%esp) - movq %mm4,32(%esp) - movq %mm5,40(%esp) - movq %mm6,48(%esp) - movq %mm7,56(%esp) - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm0 - pxor 7(%ebp,%edi,8),%mm1 - movl 72(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm2 - pxor 5(%ebp,%edi,8),%mm3 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm4 - pxor 3(%ebp,%edi,8),%mm5 - movl 76(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm6 - pxor 1(%ebp,%edi,8),%mm7 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm1 - pxor 7(%ebp,%edi,8),%mm2 - movl 80(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm3 - pxor 5(%ebp,%edi,8),%mm4 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm5 - pxor 3(%ebp,%edi,8),%mm6 - movl 84(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm7 - pxor 1(%ebp,%edi,8),%mm0 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm2 - pxor 7(%ebp,%edi,8),%mm3 - movl 88(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm4 - pxor 5(%ebp,%edi,8),%mm5 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm6 - pxor 3(%ebp,%edi,8),%mm7 - movl 92(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm0 - pxor 1(%ebp,%edi,8),%mm1 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm3 - pxor 7(%ebp,%edi,8),%mm4 - movl 96(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm5 - pxor 5(%ebp,%edi,8),%mm6 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm7 - pxor 3(%ebp,%edi,8),%mm0 - movl 100(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm1 - pxor 1(%ebp,%edi,8),%mm2 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm4 - pxor 7(%ebp,%edi,8),%mm5 - movl 104(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm6 - pxor 5(%ebp,%edi,8),%mm7 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm0 - pxor 3(%ebp,%edi,8),%mm1 - movl 108(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm2 - pxor 1(%ebp,%edi,8),%mm3 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm5 - pxor 7(%ebp,%edi,8),%mm6 - movl 112(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm7 - pxor 5(%ebp,%edi,8),%mm0 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm1 - pxor 3(%ebp,%edi,8),%mm2 - movl 116(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm3 - pxor 1(%ebp,%edi,8),%mm4 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm6 - pxor 7(%ebp,%edi,8),%mm7 - movl 120(%esp),%eax - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm0 - pxor 5(%ebp,%edi,8),%mm1 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm2 - pxor 3(%ebp,%edi,8),%mm3 - movl 124(%esp),%ebx - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm4 - pxor 1(%ebp,%edi,8),%mm5 - shrl $16,%eax - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor (%ebp,%esi,8),%mm7 - pxor 7(%ebp,%edi,8),%mm0 - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 6(%ebp,%esi,8),%mm1 - pxor 5(%ebp,%edi,8),%mm2 - shrl $16,%ebx - leal (%ecx,%ecx,1),%esi - movzbl %bl,%ecx - leal (%edx,%edx,1),%edi - movzbl %bh,%edx - pxor 4(%ebp,%esi,8),%mm3 - pxor 3(%ebp,%edi,8),%mm4 - leal (%ecx,%ecx,1),%esi - movzbl %al,%ecx - leal (%edx,%edx,1),%edi - movzbl %ah,%edx - pxor 2(%ebp,%esi,8),%mm5 - pxor 1(%ebp,%edi,8),%mm6 - leal 128(%esp),%ebx - movl 12(%ebx),%esi - addl $1,%esi - cmpl $10,%esi - je L004roundsdone - movl %esi,12(%ebx) - movq %mm0,64(%esp) - movq %mm1,72(%esp) - movq %mm2,80(%esp) - movq %mm3,88(%esp) - movq %mm4,96(%esp) - movq %mm5,104(%esp) - movq %mm6,112(%esp) - movq %mm7,120(%esp) - jmp L003round -.align 4,0x90 -L004roundsdone: - movl (%ebx),%esi - movl 4(%ebx),%edi - movl 8(%ebx),%eax - pxor (%edi),%mm0 - pxor 8(%edi),%mm1 - pxor 16(%edi),%mm2 - pxor 24(%edi),%mm3 - pxor 32(%edi),%mm4 - pxor 40(%edi),%mm5 - pxor 48(%edi),%mm6 - pxor 56(%edi),%mm7 - pxor (%esi),%mm0 - pxor 8(%esi),%mm1 - pxor 16(%esi),%mm2 - pxor 24(%esi),%mm3 - pxor 32(%esi),%mm4 - pxor 40(%esi),%mm5 - pxor 48(%esi),%mm6 - pxor 56(%esi),%mm7 - movq %mm0,(%esi) - movq %mm1,8(%esi) - movq %mm2,16(%esi) - movq %mm3,24(%esi) - movq %mm4,32(%esi) - movq %mm5,40(%esi) - movq %mm6,48(%esi) - movq %mm7,56(%esi) - leal 64(%edi),%edi - subl $1,%eax - jz L005alldone - movl %edi,4(%ebx) - movl %eax,8(%ebx) - jmp L002outerloop -L005alldone: - emms - movl 16(%ebx),%esp - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align 6,0x90 -L001table: -.byte 24,24,96,24,192,120,48,216 -.byte 24,24,96,24,192,120,48,216 -.byte 35,35,140,35,5,175,70,38 -.byte 35,35,140,35,5,175,70,38 -.byte 198,198,63,198,126,249,145,184 -.byte 198,198,63,198,126,249,145,184 -.byte 232,232,135,232,19,111,205,251 -.byte 232,232,135,232,19,111,205,251 -.byte 135,135,38,135,76,161,19,203 -.byte 135,135,38,135,76,161,19,203 -.byte 184,184,218,184,169,98,109,17 -.byte 184,184,218,184,169,98,109,17 -.byte 1,1,4,1,8,5,2,9 -.byte 1,1,4,1,8,5,2,9 -.byte 79,79,33,79,66,110,158,13 -.byte 79,79,33,79,66,110,158,13 -.byte 54,54,216,54,173,238,108,155 -.byte 54,54,216,54,173,238,108,155 -.byte 166,166,162,166,89,4,81,255 -.byte 166,166,162,166,89,4,81,255 -.byte 210,210,111,210,222,189,185,12 -.byte 210,210,111,210,222,189,185,12 -.byte 245,245,243,245,251,6,247,14 -.byte 245,245,243,245,251,6,247,14 -.byte 121,121,249,121,239,128,242,150 -.byte 121,121,249,121,239,128,242,150 -.byte 111,111,161,111,95,206,222,48 -.byte 111,111,161,111,95,206,222,48 -.byte 145,145,126,145,252,239,63,109 -.byte 145,145,126,145,252,239,63,109 -.byte 82,82,85,82,170,7,164,248 -.byte 82,82,85,82,170,7,164,248 -.byte 96,96,157,96,39,253,192,71 -.byte 96,96,157,96,39,253,192,71 -.byte 188,188,202,188,137,118,101,53 -.byte 188,188,202,188,137,118,101,53 -.byte 155,155,86,155,172,205,43,55 -.byte 155,155,86,155,172,205,43,55 -.byte 142,142,2,142,4,140,1,138 -.byte 142,142,2,142,4,140,1,138 -.byte 163,163,182,163,113,21,91,210 -.byte 163,163,182,163,113,21,91,210 -.byte 12,12,48,12,96,60,24,108 -.byte 12,12,48,12,96,60,24,108 -.byte 123,123,241,123,255,138,246,132 -.byte 123,123,241,123,255,138,246,132 -.byte 53,53,212,53,181,225,106,128 -.byte 53,53,212,53,181,225,106,128 -.byte 29,29,116,29,232,105,58,245 -.byte 29,29,116,29,232,105,58,245 -.byte 224,224,167,224,83,71,221,179 -.byte 224,224,167,224,83,71,221,179 -.byte 215,215,123,215,246,172,179,33 -.byte 215,215,123,215,246,172,179,33 -.byte 194,194,47,194,94,237,153,156 -.byte 194,194,47,194,94,237,153,156 -.byte 46,46,184,46,109,150,92,67 -.byte 46,46,184,46,109,150,92,67 -.byte 75,75,49,75,98,122,150,41 -.byte 75,75,49,75,98,122,150,41 -.byte 254,254,223,254,163,33,225,93 -.byte 254,254,223,254,163,33,225,93 -.byte 87,87,65,87,130,22,174,213 -.byte 87,87,65,87,130,22,174,213 -.byte 21,21,84,21,168,65,42,189 -.byte 21,21,84,21,168,65,42,189 -.byte 119,119,193,119,159,182,238,232 -.byte 119,119,193,119,159,182,238,232 -.byte 55,55,220,55,165,235,110,146 -.byte 55,55,220,55,165,235,110,146 -.byte 229,229,179,229,123,86,215,158 -.byte 229,229,179,229,123,86,215,158 -.byte 159,159,70,159,140,217,35,19 -.byte 159,159,70,159,140,217,35,19 -.byte 240,240,231,240,211,23,253,35 -.byte 240,240,231,240,211,23,253,35 -.byte 74,74,53,74,106,127,148,32 -.byte 74,74,53,74,106,127,148,32 -.byte 218,218,79,218,158,149,169,68 -.byte 218,218,79,218,158,149,169,68 -.byte 88,88,125,88,250,37,176,162 -.byte 88,88,125,88,250,37,176,162 -.byte 201,201,3,201,6,202,143,207 -.byte 201,201,3,201,6,202,143,207 -.byte 41,41,164,41,85,141,82,124 -.byte 41,41,164,41,85,141,82,124 -.byte 10,10,40,10,80,34,20,90 -.byte 10,10,40,10,80,34,20,90 -.byte 177,177,254,177,225,79,127,80 -.byte 177,177,254,177,225,79,127,80 -.byte 160,160,186,160,105,26,93,201 -.byte 160,160,186,160,105,26,93,201 -.byte 107,107,177,107,127,218,214,20 -.byte 107,107,177,107,127,218,214,20 -.byte 133,133,46,133,92,171,23,217 -.byte 133,133,46,133,92,171,23,217 -.byte 189,189,206,189,129,115,103,60 -.byte 189,189,206,189,129,115,103,60 -.byte 93,93,105,93,210,52,186,143 -.byte 93,93,105,93,210,52,186,143 -.byte 16,16,64,16,128,80,32,144 -.byte 16,16,64,16,128,80,32,144 -.byte 244,244,247,244,243,3,245,7 -.byte 244,244,247,244,243,3,245,7 -.byte 203,203,11,203,22,192,139,221 -.byte 203,203,11,203,22,192,139,221 -.byte 62,62,248,62,237,198,124,211 -.byte 62,62,248,62,237,198,124,211 -.byte 5,5,20,5,40,17,10,45 -.byte 5,5,20,5,40,17,10,45 -.byte 103,103,129,103,31,230,206,120 -.byte 103,103,129,103,31,230,206,120 -.byte 228,228,183,228,115,83,213,151 -.byte 228,228,183,228,115,83,213,151 -.byte 39,39,156,39,37,187,78,2 -.byte 39,39,156,39,37,187,78,2 -.byte 65,65,25,65,50,88,130,115 -.byte 65,65,25,65,50,88,130,115 -.byte 139,139,22,139,44,157,11,167 -.byte 139,139,22,139,44,157,11,167 -.byte 167,167,166,167,81,1,83,246 -.byte 167,167,166,167,81,1,83,246 -.byte 125,125,233,125,207,148,250,178 -.byte 125,125,233,125,207,148,250,178 -.byte 149,149,110,149,220,251,55,73 -.byte 149,149,110,149,220,251,55,73 -.byte 216,216,71,216,142,159,173,86 -.byte 216,216,71,216,142,159,173,86 -.byte 251,251,203,251,139,48,235,112 -.byte 251,251,203,251,139,48,235,112 -.byte 238,238,159,238,35,113,193,205 -.byte 238,238,159,238,35,113,193,205 -.byte 124,124,237,124,199,145,248,187 -.byte 124,124,237,124,199,145,248,187 -.byte 102,102,133,102,23,227,204,113 -.byte 102,102,133,102,23,227,204,113 -.byte 221,221,83,221,166,142,167,123 -.byte 221,221,83,221,166,142,167,123 -.byte 23,23,92,23,184,75,46,175 -.byte 23,23,92,23,184,75,46,175 -.byte 71,71,1,71,2,70,142,69 -.byte 71,71,1,71,2,70,142,69 -.byte 158,158,66,158,132,220,33,26 -.byte 158,158,66,158,132,220,33,26 -.byte 202,202,15,202,30,197,137,212 -.byte 202,202,15,202,30,197,137,212 -.byte 45,45,180,45,117,153,90,88 -.byte 45,45,180,45,117,153,90,88 -.byte 191,191,198,191,145,121,99,46 -.byte 191,191,198,191,145,121,99,46 -.byte 7,7,28,7,56,27,14,63 -.byte 7,7,28,7,56,27,14,63 -.byte 173,173,142,173,1,35,71,172 -.byte 173,173,142,173,1,35,71,172 -.byte 90,90,117,90,234,47,180,176 -.byte 90,90,117,90,234,47,180,176 -.byte 131,131,54,131,108,181,27,239 -.byte 131,131,54,131,108,181,27,239 -.byte 51,51,204,51,133,255,102,182 -.byte 51,51,204,51,133,255,102,182 -.byte 99,99,145,99,63,242,198,92 -.byte 99,99,145,99,63,242,198,92 -.byte 2,2,8,2,16,10,4,18 -.byte 2,2,8,2,16,10,4,18 -.byte 170,170,146,170,57,56,73,147 -.byte 170,170,146,170,57,56,73,147 -.byte 113,113,217,113,175,168,226,222 -.byte 113,113,217,113,175,168,226,222 -.byte 200,200,7,200,14,207,141,198 -.byte 200,200,7,200,14,207,141,198 -.byte 25,25,100,25,200,125,50,209 -.byte 25,25,100,25,200,125,50,209 -.byte 73,73,57,73,114,112,146,59 -.byte 73,73,57,73,114,112,146,59 -.byte 217,217,67,217,134,154,175,95 -.byte 217,217,67,217,134,154,175,95 -.byte 242,242,239,242,195,29,249,49 -.byte 242,242,239,242,195,29,249,49 -.byte 227,227,171,227,75,72,219,168 -.byte 227,227,171,227,75,72,219,168 -.byte 91,91,113,91,226,42,182,185 -.byte 91,91,113,91,226,42,182,185 -.byte 136,136,26,136,52,146,13,188 -.byte 136,136,26,136,52,146,13,188 -.byte 154,154,82,154,164,200,41,62 -.byte 154,154,82,154,164,200,41,62 -.byte 38,38,152,38,45,190,76,11 -.byte 38,38,152,38,45,190,76,11 -.byte 50,50,200,50,141,250,100,191 -.byte 50,50,200,50,141,250,100,191 -.byte 176,176,250,176,233,74,125,89 -.byte 176,176,250,176,233,74,125,89 -.byte 233,233,131,233,27,106,207,242 -.byte 233,233,131,233,27,106,207,242 -.byte 15,15,60,15,120,51,30,119 -.byte 15,15,60,15,120,51,30,119 -.byte 213,213,115,213,230,166,183,51 -.byte 213,213,115,213,230,166,183,51 -.byte 128,128,58,128,116,186,29,244 -.byte 128,128,58,128,116,186,29,244 -.byte 190,190,194,190,153,124,97,39 -.byte 190,190,194,190,153,124,97,39 -.byte 205,205,19,205,38,222,135,235 -.byte 205,205,19,205,38,222,135,235 -.byte 52,52,208,52,189,228,104,137 -.byte 52,52,208,52,189,228,104,137 -.byte 72,72,61,72,122,117,144,50 -.byte 72,72,61,72,122,117,144,50 -.byte 255,255,219,255,171,36,227,84 -.byte 255,255,219,255,171,36,227,84 -.byte 122,122,245,122,247,143,244,141 -.byte 122,122,245,122,247,143,244,141 -.byte 144,144,122,144,244,234,61,100 -.byte 144,144,122,144,244,234,61,100 -.byte 95,95,97,95,194,62,190,157 -.byte 95,95,97,95,194,62,190,157 -.byte 32,32,128,32,29,160,64,61 -.byte 32,32,128,32,29,160,64,61 -.byte 104,104,189,104,103,213,208,15 -.byte 104,104,189,104,103,213,208,15 -.byte 26,26,104,26,208,114,52,202 -.byte 26,26,104,26,208,114,52,202 -.byte 174,174,130,174,25,44,65,183 -.byte 174,174,130,174,25,44,65,183 -.byte 180,180,234,180,201,94,117,125 -.byte 180,180,234,180,201,94,117,125 -.byte 84,84,77,84,154,25,168,206 -.byte 84,84,77,84,154,25,168,206 -.byte 147,147,118,147,236,229,59,127 -.byte 147,147,118,147,236,229,59,127 -.byte 34,34,136,34,13,170,68,47 -.byte 34,34,136,34,13,170,68,47 -.byte 100,100,141,100,7,233,200,99 -.byte 100,100,141,100,7,233,200,99 -.byte 241,241,227,241,219,18,255,42 -.byte 241,241,227,241,219,18,255,42 -.byte 115,115,209,115,191,162,230,204 -.byte 115,115,209,115,191,162,230,204 -.byte 18,18,72,18,144,90,36,130 -.byte 18,18,72,18,144,90,36,130 -.byte 64,64,29,64,58,93,128,122 -.byte 64,64,29,64,58,93,128,122 -.byte 8,8,32,8,64,40,16,72 -.byte 8,8,32,8,64,40,16,72 -.byte 195,195,43,195,86,232,155,149 -.byte 195,195,43,195,86,232,155,149 -.byte 236,236,151,236,51,123,197,223 -.byte 236,236,151,236,51,123,197,223 -.byte 219,219,75,219,150,144,171,77 -.byte 219,219,75,219,150,144,171,77 -.byte 161,161,190,161,97,31,95,192 -.byte 161,161,190,161,97,31,95,192 -.byte 141,141,14,141,28,131,7,145 -.byte 141,141,14,141,28,131,7,145 -.byte 61,61,244,61,245,201,122,200 -.byte 61,61,244,61,245,201,122,200 -.byte 151,151,102,151,204,241,51,91 -.byte 151,151,102,151,204,241,51,91 -.byte 0,0,0,0,0,0,0,0 -.byte 0,0,0,0,0,0,0,0 -.byte 207,207,27,207,54,212,131,249 -.byte 207,207,27,207,54,212,131,249 -.byte 43,43,172,43,69,135,86,110 -.byte 43,43,172,43,69,135,86,110 -.byte 118,118,197,118,151,179,236,225 -.byte 118,118,197,118,151,179,236,225 -.byte 130,130,50,130,100,176,25,230 -.byte 130,130,50,130,100,176,25,230 -.byte 214,214,127,214,254,169,177,40 -.byte 214,214,127,214,254,169,177,40 -.byte 27,27,108,27,216,119,54,195 -.byte 27,27,108,27,216,119,54,195 -.byte 181,181,238,181,193,91,119,116 -.byte 181,181,238,181,193,91,119,116 -.byte 175,175,134,175,17,41,67,190 -.byte 175,175,134,175,17,41,67,190 -.byte 106,106,181,106,119,223,212,29 -.byte 106,106,181,106,119,223,212,29 -.byte 80,80,93,80,186,13,160,234 -.byte 80,80,93,80,186,13,160,234 -.byte 69,69,9,69,18,76,138,87 -.byte 69,69,9,69,18,76,138,87 -.byte 243,243,235,243,203,24,251,56 -.byte 243,243,235,243,203,24,251,56 -.byte 48,48,192,48,157,240,96,173 -.byte 48,48,192,48,157,240,96,173 -.byte 239,239,155,239,43,116,195,196 -.byte 239,239,155,239,43,116,195,196 -.byte 63,63,252,63,229,195,126,218 -.byte 63,63,252,63,229,195,126,218 -.byte 85,85,73,85,146,28,170,199 -.byte 85,85,73,85,146,28,170,199 -.byte 162,162,178,162,121,16,89,219 -.byte 162,162,178,162,121,16,89,219 -.byte 234,234,143,234,3,101,201,233 -.byte 234,234,143,234,3,101,201,233 -.byte 101,101,137,101,15,236,202,106 -.byte 101,101,137,101,15,236,202,106 -.byte 186,186,210,186,185,104,105,3 -.byte 186,186,210,186,185,104,105,3 -.byte 47,47,188,47,101,147,94,74 -.byte 47,47,188,47,101,147,94,74 -.byte 192,192,39,192,78,231,157,142 -.byte 192,192,39,192,78,231,157,142 -.byte 222,222,95,222,190,129,161,96 -.byte 222,222,95,222,190,129,161,96 -.byte 28,28,112,28,224,108,56,252 -.byte 28,28,112,28,224,108,56,252 -.byte 253,253,211,253,187,46,231,70 -.byte 253,253,211,253,187,46,231,70 -.byte 77,77,41,77,82,100,154,31 -.byte 77,77,41,77,82,100,154,31 -.byte 146,146,114,146,228,224,57,118 -.byte 146,146,114,146,228,224,57,118 -.byte 117,117,201,117,143,188,234,250 -.byte 117,117,201,117,143,188,234,250 -.byte 6,6,24,6,48,30,12,54 -.byte 6,6,24,6,48,30,12,54 -.byte 138,138,18,138,36,152,9,174 -.byte 138,138,18,138,36,152,9,174 -.byte 178,178,242,178,249,64,121,75 -.byte 178,178,242,178,249,64,121,75 -.byte 230,230,191,230,99,89,209,133 -.byte 230,230,191,230,99,89,209,133 -.byte 14,14,56,14,112,54,28,126 -.byte 14,14,56,14,112,54,28,126 -.byte 31,31,124,31,248,99,62,231 -.byte 31,31,124,31,248,99,62,231 -.byte 98,98,149,98,55,247,196,85 -.byte 98,98,149,98,55,247,196,85 -.byte 212,212,119,212,238,163,181,58 -.byte 212,212,119,212,238,163,181,58 -.byte 168,168,154,168,41,50,77,129 -.byte 168,168,154,168,41,50,77,129 -.byte 150,150,98,150,196,244,49,82 -.byte 150,150,98,150,196,244,49,82 -.byte 249,249,195,249,155,58,239,98 -.byte 249,249,195,249,155,58,239,98 -.byte 197,197,51,197,102,246,151,163 -.byte 197,197,51,197,102,246,151,163 -.byte 37,37,148,37,53,177,74,16 -.byte 37,37,148,37,53,177,74,16 -.byte 89,89,121,89,242,32,178,171 -.byte 89,89,121,89,242,32,178,171 -.byte 132,132,42,132,84,174,21,208 -.byte 132,132,42,132,84,174,21,208 -.byte 114,114,213,114,183,167,228,197 -.byte 114,114,213,114,183,167,228,197 -.byte 57,57,228,57,213,221,114,236 -.byte 57,57,228,57,213,221,114,236 -.byte 76,76,45,76,90,97,152,22 -.byte 76,76,45,76,90,97,152,22 -.byte 94,94,101,94,202,59,188,148 -.byte 94,94,101,94,202,59,188,148 -.byte 120,120,253,120,231,133,240,159 -.byte 120,120,253,120,231,133,240,159 -.byte 56,56,224,56,221,216,112,229 -.byte 56,56,224,56,221,216,112,229 -.byte 140,140,10,140,20,134,5,152 -.byte 140,140,10,140,20,134,5,152 -.byte 209,209,99,209,198,178,191,23 -.byte 209,209,99,209,198,178,191,23 -.byte 165,165,174,165,65,11,87,228 -.byte 165,165,174,165,65,11,87,228 -.byte 226,226,175,226,67,77,217,161 -.byte 226,226,175,226,67,77,217,161 -.byte 97,97,153,97,47,248,194,78 -.byte 97,97,153,97,47,248,194,78 -.byte 179,179,246,179,241,69,123,66 -.byte 179,179,246,179,241,69,123,66 -.byte 33,33,132,33,21,165,66,52 -.byte 33,33,132,33,21,165,66,52 -.byte 156,156,74,156,148,214,37,8 -.byte 156,156,74,156,148,214,37,8 -.byte 30,30,120,30,240,102,60,238 -.byte 30,30,120,30,240,102,60,238 -.byte 67,67,17,67,34,82,134,97 -.byte 67,67,17,67,34,82,134,97 -.byte 199,199,59,199,118,252,147,177 -.byte 199,199,59,199,118,252,147,177 -.byte 252,252,215,252,179,43,229,79 -.byte 252,252,215,252,179,43,229,79 -.byte 4,4,16,4,32,20,8,36 -.byte 4,4,16,4,32,20,8,36 -.byte 81,81,89,81,178,8,162,227 -.byte 81,81,89,81,178,8,162,227 -.byte 153,153,94,153,188,199,47,37 -.byte 153,153,94,153,188,199,47,37 -.byte 109,109,169,109,79,196,218,34 -.byte 109,109,169,109,79,196,218,34 -.byte 13,13,52,13,104,57,26,101 -.byte 13,13,52,13,104,57,26,101 -.byte 250,250,207,250,131,53,233,121 -.byte 250,250,207,250,131,53,233,121 -.byte 223,223,91,223,182,132,163,105 -.byte 223,223,91,223,182,132,163,105 -.byte 126,126,229,126,215,155,252,169 -.byte 126,126,229,126,215,155,252,169 -.byte 36,36,144,36,61,180,72,25 -.byte 36,36,144,36,61,180,72,25 -.byte 59,59,236,59,197,215,118,254 -.byte 59,59,236,59,197,215,118,254 -.byte 171,171,150,171,49,61,75,154 -.byte 171,171,150,171,49,61,75,154 -.byte 206,206,31,206,62,209,129,240 -.byte 206,206,31,206,62,209,129,240 -.byte 17,17,68,17,136,85,34,153 -.byte 17,17,68,17,136,85,34,153 -.byte 143,143,6,143,12,137,3,131 -.byte 143,143,6,143,12,137,3,131 -.byte 78,78,37,78,74,107,156,4 -.byte 78,78,37,78,74,107,156,4 -.byte 183,183,230,183,209,81,115,102 -.byte 183,183,230,183,209,81,115,102 -.byte 235,235,139,235,11,96,203,224 -.byte 235,235,139,235,11,96,203,224 -.byte 60,60,240,60,253,204,120,193 -.byte 60,60,240,60,253,204,120,193 -.byte 129,129,62,129,124,191,31,253 -.byte 129,129,62,129,124,191,31,253 -.byte 148,148,106,148,212,254,53,64 -.byte 148,148,106,148,212,254,53,64 -.byte 247,247,251,247,235,12,243,28 -.byte 247,247,251,247,235,12,243,28 -.byte 185,185,222,185,161,103,111,24 -.byte 185,185,222,185,161,103,111,24 -.byte 19,19,76,19,152,95,38,139 -.byte 19,19,76,19,152,95,38,139 -.byte 44,44,176,44,125,156,88,81 -.byte 44,44,176,44,125,156,88,81 -.byte 211,211,107,211,214,184,187,5 -.byte 211,211,107,211,214,184,187,5 -.byte 231,231,187,231,107,92,211,140 -.byte 231,231,187,231,107,92,211,140 -.byte 110,110,165,110,87,203,220,57 -.byte 110,110,165,110,87,203,220,57 -.byte 196,196,55,196,110,243,149,170 -.byte 196,196,55,196,110,243,149,170 -.byte 3,3,12,3,24,15,6,27 -.byte 3,3,12,3,24,15,6,27 -.byte 86,86,69,86,138,19,172,220 -.byte 86,86,69,86,138,19,172,220 -.byte 68,68,13,68,26,73,136,94 -.byte 68,68,13,68,26,73,136,94 -.byte 127,127,225,127,223,158,254,160 -.byte 127,127,225,127,223,158,254,160 -.byte 169,169,158,169,33,55,79,136 -.byte 169,169,158,169,33,55,79,136 -.byte 42,42,168,42,77,130,84,103 -.byte 42,42,168,42,77,130,84,103 -.byte 187,187,214,187,177,109,107,10 -.byte 187,187,214,187,177,109,107,10 -.byte 193,193,35,193,70,226,159,135 -.byte 193,193,35,193,70,226,159,135 -.byte 83,83,81,83,162,2,166,241 -.byte 83,83,81,83,162,2,166,241 -.byte 220,220,87,220,174,139,165,114 -.byte 220,220,87,220,174,139,165,114 -.byte 11,11,44,11,88,39,22,83 -.byte 11,11,44,11,88,39,22,83 -.byte 157,157,78,157,156,211,39,1 -.byte 157,157,78,157,156,211,39,1 -.byte 108,108,173,108,71,193,216,43 -.byte 108,108,173,108,71,193,216,43 -.byte 49,49,196,49,149,245,98,164 -.byte 49,49,196,49,149,245,98,164 -.byte 116,116,205,116,135,185,232,243 -.byte 116,116,205,116,135,185,232,243 -.byte 246,246,255,246,227,9,241,21 -.byte 246,246,255,246,227,9,241,21 -.byte 70,70,5,70,10,67,140,76 -.byte 70,70,5,70,10,67,140,76 -.byte 172,172,138,172,9,38,69,165 -.byte 172,172,138,172,9,38,69,165 -.byte 137,137,30,137,60,151,15,181 -.byte 137,137,30,137,60,151,15,181 -.byte 20,20,80,20,160,68,40,180 -.byte 20,20,80,20,160,68,40,180 -.byte 225,225,163,225,91,66,223,186 -.byte 225,225,163,225,91,66,223,186 -.byte 22,22,88,22,176,78,44,166 -.byte 22,22,88,22,176,78,44,166 -.byte 58,58,232,58,205,210,116,247 -.byte 58,58,232,58,205,210,116,247 -.byte 105,105,185,105,111,208,210,6 -.byte 105,105,185,105,111,208,210,6 -.byte 9,9,36,9,72,45,18,65 -.byte 9,9,36,9,72,45,18,65 -.byte 112,112,221,112,167,173,224,215 -.byte 112,112,221,112,167,173,224,215 -.byte 182,182,226,182,217,84,113,111 -.byte 182,182,226,182,217,84,113,111 -.byte 208,208,103,208,206,183,189,30 -.byte 208,208,103,208,206,183,189,30 -.byte 237,237,147,237,59,126,199,214 -.byte 237,237,147,237,59,126,199,214 -.byte 204,204,23,204,46,219,133,226 -.byte 204,204,23,204,46,219,133,226 -.byte 66,66,21,66,42,87,132,104 -.byte 66,66,21,66,42,87,132,104 -.byte 152,152,90,152,180,194,45,44 -.byte 152,152,90,152,180,194,45,44 -.byte 164,164,170,164,73,14,85,237 -.byte 164,164,170,164,73,14,85,237 -.byte 40,40,160,40,93,136,80,117 -.byte 40,40,160,40,93,136,80,117 -.byte 92,92,109,92,218,49,184,134 -.byte 92,92,109,92,218,49,184,134 -.byte 248,248,199,248,147,63,237,107 -.byte 248,248,199,248,147,63,237,107 -.byte 134,134,34,134,68,164,17,194 -.byte 134,134,34,134,68,164,17,194 -.byte 24,35,198,232,135,184,1,79 -.byte 54,166,210,245,121,111,145,82 -.byte 96,188,155,142,163,12,123,53 -.byte 29,224,215,194,46,75,254,87 -.byte 21,119,55,229,159,240,74,218 -.byte 88,201,41,10,177,160,107,133 -.byte 189,93,16,244,203,62,5,103 -.byte 228,39,65,139,167,125,149,216 -.byte 251,238,124,102,221,23,71,158 -.byte 202,45,191,7,173,90,131,51 diff --git a/deps/openssl/asm_obsolete/x86-macosx-gas/x86cpuid.s b/deps/openssl/asm_obsolete/x86-macosx-gas/x86cpuid.s deleted file mode 100644 index c3e9fd6dbaf05b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-macosx-gas/x86cpuid.s +++ /dev/null @@ -1,354 +0,0 @@ -.file "x86cpuid.s" -.text -.globl _OPENSSL_ia32_cpuid -.align 4 -_OPENSSL_ia32_cpuid: -L_OPENSSL_ia32_cpuid_begin: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - xorl %edx,%edx - pushfl - popl %eax - movl %eax,%ecx - xorl $2097152,%eax - pushl %eax - popfl - pushfl - popl %eax - xorl %eax,%ecx - xorl %eax,%eax - movl 20(%esp),%esi - movl %eax,8(%esi) - btl $21,%ecx - jnc L000nocpuid - .byte 0x0f,0xa2 - movl %eax,%edi - xorl %eax,%eax - cmpl $1970169159,%ebx - setne %al - movl %eax,%ebp - cmpl $1231384169,%edx - setne %al - orl %eax,%ebp - cmpl $1818588270,%ecx - setne %al - orl %eax,%ebp - jz L001intel - cmpl $1752462657,%ebx - setne %al - movl %eax,%esi - cmpl $1769238117,%edx - setne %al - orl %eax,%esi - cmpl $1145913699,%ecx - setne %al - orl %eax,%esi - jnz L001intel - movl $2147483648,%eax - .byte 0x0f,0xa2 - cmpl $2147483649,%eax - jb L001intel - movl %eax,%esi - movl $2147483649,%eax - .byte 0x0f,0xa2 - orl %ecx,%ebp - andl $2049,%ebp - cmpl $2147483656,%esi - jb L001intel - movl $2147483656,%eax - .byte 0x0f,0xa2 - movzbl %cl,%esi - incl %esi - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - btl $28,%edx - jnc L002generic - shrl $16,%ebx - andl $255,%ebx - cmpl %esi,%ebx - ja L002generic - andl $4026531839,%edx - jmp L002generic -L001intel: - cmpl $4,%edi - movl $-1,%esi - jb L003nocacheinfo - movl $4,%eax - movl $0,%ecx - .byte 0x0f,0xa2 - movl %eax,%esi - shrl $14,%esi - andl $4095,%esi -L003nocacheinfo: - movl $1,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - andl $3220176895,%edx - cmpl $0,%ebp - jne L004notintel - orl $1073741824,%edx - andb $15,%ah - cmpb $15,%ah - jne L004notintel - orl $1048576,%edx -L004notintel: - btl $28,%edx - jnc L002generic - andl $4026531839,%edx - cmpl $0,%esi - je L002generic - orl $268435456,%edx - shrl $16,%ebx - cmpb $1,%bl - ja L002generic - andl $4026531839,%edx -L002generic: - andl $2048,%ebp - andl $4294965247,%ecx - movl %edx,%esi - orl %ecx,%ebp - cmpl $7,%edi - movl 20(%esp),%edi - jb L005no_extended_info - movl $7,%eax - xorl %ecx,%ecx - .byte 0x0f,0xa2 - movl %ebx,8(%edi) -L005no_extended_info: - btl $27,%ebp - jnc L006clear_avx - xorl %ecx,%ecx -.byte 15,1,208 - andl $6,%eax - cmpl $6,%eax - je L007done - cmpl $2,%eax - je L006clear_avx -L008clear_xmm: - andl $4261412861,%ebp - andl $4278190079,%esi -L006clear_avx: - andl $4026525695,%ebp - andl $4294967263,8(%edi) -L007done: - movl %esi,%eax - movl %ebp,%edx -L000nocpuid: - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.globl _OPENSSL_rdtsc -.align 4 -_OPENSSL_rdtsc: -L_OPENSSL_rdtsc_begin: - xorl %eax,%eax - xorl %edx,%edx - call L009PIC_me_up -L009PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L009PIC_me_up(%ecx),%ecx - btl $4,(%ecx) - jnc L010notsc - .byte 0x0f,0x31 -L010notsc: - ret -.globl _OPENSSL_instrument_halt -.align 4 -_OPENSSL_instrument_halt: -L_OPENSSL_instrument_halt_begin: - call L011PIC_me_up -L011PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L011PIC_me_up(%ecx),%ecx - btl $4,(%ecx) - jnc L012nohalt -.long 2421723150 - andl $3,%eax - jnz L012nohalt - pushfl - popl %eax - btl $9,%eax - jnc L012nohalt - .byte 0x0f,0x31 - pushl %edx - pushl %eax - hlt - .byte 0x0f,0x31 - subl (%esp),%eax - sbbl 4(%esp),%edx - addl $8,%esp - ret -L012nohalt: - xorl %eax,%eax - xorl %edx,%edx - ret -.globl _OPENSSL_far_spin -.align 4 -_OPENSSL_far_spin: -L_OPENSSL_far_spin_begin: - pushfl - popl %eax - btl $9,%eax - jnc L013nospin - movl 4(%esp),%eax - movl 8(%esp),%ecx -.long 2430111262 - xorl %eax,%eax - movl (%ecx),%edx - jmp L014spin -.align 4,0x90 -L014spin: - incl %eax - cmpl (%ecx),%edx - je L014spin -.long 529567888 - ret -L013nospin: - xorl %eax,%eax - xorl %edx,%edx - ret -.globl _OPENSSL_wipe_cpu -.align 4 -_OPENSSL_wipe_cpu: -L_OPENSSL_wipe_cpu_begin: - xorl %eax,%eax - xorl %edx,%edx - call L015PIC_me_up -L015PIC_me_up: - popl %ecx - movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L015PIC_me_up(%ecx),%ecx - movl (%ecx),%ecx - btl $1,(%ecx) - jnc L016no_x87 - andl $83886080,%ecx - cmpl $83886080,%ecx - jne L017no_sse2 - pxor %xmm0,%xmm0 - pxor %xmm1,%xmm1 - pxor %xmm2,%xmm2 - pxor %xmm3,%xmm3 - pxor %xmm4,%xmm4 - pxor %xmm5,%xmm5 - pxor %xmm6,%xmm6 - pxor %xmm7,%xmm7 -L017no_sse2: -.long 4007259865,4007259865,4007259865,4007259865,2430851995 -L016no_x87: - leal 4(%esp),%eax - ret -.globl _OPENSSL_atomic_add -.align 4 -_OPENSSL_atomic_add: -L_OPENSSL_atomic_add_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - pushl %ebx - nop - movl (%edx),%eax -L018spin: - leal (%eax,%ecx,1),%ebx - nop -.long 447811568 - jne L018spin - movl %ebx,%eax - popl %ebx - ret -.globl _OPENSSL_indirect_call -.align 4 -_OPENSSL_indirect_call: -L_OPENSSL_indirect_call_begin: - pushl %ebp - movl %esp,%ebp - subl $28,%esp - movl 12(%ebp),%ecx - movl %ecx,(%esp) - movl 16(%ebp),%edx - movl %edx,4(%esp) - movl 20(%ebp),%eax - movl %eax,8(%esp) - movl 24(%ebp),%eax - movl %eax,12(%esp) - movl 28(%ebp),%eax - movl %eax,16(%esp) - movl 32(%ebp),%eax - movl %eax,20(%esp) - movl 36(%ebp),%eax - movl %eax,24(%esp) - call *8(%ebp) - movl %ebp,%esp - popl %ebp - ret -.globl _OPENSSL_cleanse -.align 4 -_OPENSSL_cleanse: -L_OPENSSL_cleanse_begin: - movl 4(%esp),%edx - movl 8(%esp),%ecx - xorl %eax,%eax - cmpl $7,%ecx - jae L019lot - cmpl $0,%ecx - je L020ret -L021little: - movb %al,(%edx) - subl $1,%ecx - leal 1(%edx),%edx - jnz L021little -L020ret: - ret -.align 4,0x90 -L019lot: - testl $3,%edx - jz L022aligned - movb %al,(%edx) - leal -1(%ecx),%ecx - leal 1(%edx),%edx - jmp L019lot -L022aligned: - movl %eax,(%edx) - leal -4(%ecx),%ecx - testl $-4,%ecx - leal 4(%edx),%edx - jnz L022aligned - cmpl $0,%ecx - jne L021little - ret -.globl _OPENSSL_ia32_rdrand -.align 4 -_OPENSSL_ia32_rdrand: -L_OPENSSL_ia32_rdrand_begin: - movl $8,%ecx -L023loop: -.byte 15,199,240 - jc L024break - loop L023loop -L024break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.globl _OPENSSL_ia32_rdseed -.align 4 -_OPENSSL_ia32_rdseed: -L_OPENSSL_ia32_rdseed_begin: - movl $8,%ecx -L025loop: -.byte 15,199,248 - jc L026break - loop L025loop -L026break: - cmpl $0,%eax - cmovel %ecx,%eax - ret -.section __IMPORT,__pointers,non_lazy_symbol_pointers -L_OPENSSL_ia32cap_P$non_lazy_ptr: -.indirect_symbol _OPENSSL_ia32cap_P -.long 0 -.comm _OPENSSL_ia32cap_P,16,2 -.mod_init_func -.align 2 -.long _OPENSSL_cpuid_setup diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/aes/aes-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/aes/aes-586.asm deleted file mode 100644 index ea853704c7458e..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/aes/aes-586.asm +++ /dev/null @@ -1,3232 +0,0 @@ -TITLE aes-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -__x86_AES_encrypt_compact PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] -ALIGN 16 -$L000loop: - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ch - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,eax - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx eax,ah - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,8 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,24 - xor edx,ecx - mov ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edi,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,ecx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,ecx - xor ecx,esi - ror edi,24 - xor esi,ebp - rol ecx,24 - xor esi,edi - mov ebp,2155905152 - xor ecx,esi - and ebp,edx - lea edi,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,edx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,edx - xor edx,esi - ror edi,24 - xor esi,ebp - rol edx,24 - xor esi,edi - mov ebp,2155905152 - xor edx,esi - and ebp,eax - lea edi,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,eax - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,eax - xor eax,esi - ror edi,24 - xor esi,ebp - rol eax,24 - xor esi,edi - mov ebp,2155905152 - xor eax,esi - and ebp,ebx - lea edi,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - and edi,4278124286 - sub esi,ebp - mov ebp,ebx - and esi,454761243 - ror ebp,16 - xor esi,edi - mov edi,ebx - xor ebx,esi - ror edi,24 - xor esi,ebp - rol ebx,24 - xor esi,edi - xor ebx,esi - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 28[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L000loop - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ch - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,eax - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx eax,ah - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,8 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,24 - xor edx,ecx - mov ecx,esi - xor eax,DWORD PTR 16[edi] - xor ebx,DWORD PTR 20[edi] - xor ecx,DWORD PTR 24[edi] - xor edx,DWORD PTR 28[edi] - ret -__x86_AES_encrypt_compact ENDP -ALIGN 16 -__sse_AES_encrypt_compact PROC PRIVATE - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov eax,454761243 - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] -ALIGN 16 -$L001loop: - pshufw mm1,mm0,8 - pshufw mm5,mm4,13 - movd eax,mm1 - movd ebx,mm5 - mov DWORD PTR 20[esp],edi - movzx esi,al - movzx edx,ah - pshufw mm2,mm0,13 - movzx ecx,BYTE PTR [esi*1+ebp-128] - movzx edi,bl - movzx edx,BYTE PTR [edx*1+ebp-128] - shr eax,16 - shl edx,8 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,16 - pshufw mm6,mm4,8 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,24 - shr ebx,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,8 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - movd eax,mm2 - movd mm0,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl ecx,16 - movd ebx,mm6 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - shl esi,8 - shr ebx,16 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shr eax,16 - movd mm1,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl ecx,16 - and eax,255 - or ecx,esi - punpckldq mm0,mm1 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - and ebx,255 - movzx eax,BYTE PTR [eax*1+ebp-128] - or ecx,esi - shl eax,16 - movzx esi,BYTE PTR [edi*1+ebp-128] - or edx,eax - shl esi,8 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - or ecx,esi - or edx,ebx - mov edi,DWORD PTR 20[esp] - movd mm4,ecx - movd mm5,edx - punpckldq mm4,mm5 - add edi,16 - cmp edi,DWORD PTR 24[esp] - ja $L002out - movq mm2,QWORD PTR 8[esp] - pxor mm3,mm3 - pxor mm7,mm7 - movq mm1,mm0 - movq mm5,mm4 - pcmpgtb mm3,mm0 - pcmpgtb mm7,mm4 - pand mm3,mm2 - pand mm7,mm2 - pshufw mm2,mm0,177 - pshufw mm6,mm4,177 - paddb mm0,mm0 - paddb mm4,mm4 - pxor mm0,mm3 - pxor mm4,mm7 - pshufw mm3,mm2,177 - pshufw mm7,mm6,177 - pxor mm1,mm0 - pxor mm5,mm4 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm2,mm3 - movq mm6,mm7 - pslld mm3,8 - pslld mm7,8 - psrld mm2,24 - psrld mm6,24 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm3,mm1 - movq mm7,mm5 - movq mm2,QWORD PTR [edi] - movq mm6,QWORD PTR 8[edi] - psrld mm1,8 - psrld mm5,8 - mov eax,DWORD PTR [ebp-128] - pslld mm3,24 - pslld mm7,24 - mov ebx,DWORD PTR [ebp-64] - pxor mm0,mm1 - pxor mm4,mm5 - mov ecx,DWORD PTR [ebp] - pxor mm0,mm3 - pxor mm4,mm7 - mov edx,DWORD PTR 64[ebp] - pxor mm0,mm2 - pxor mm4,mm6 - jmp $L001loop -ALIGN 16 -$L002out: - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - ret -__sse_AES_encrypt_compact ENDP -ALIGN 16 -__x86_AES_encrypt PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi -ALIGN 16 -$L003loop: - mov esi,eax - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,ecx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,edx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,ch - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,edx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,eax - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,dh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 1[edi*8+ebp] - mov edi,DWORD PTR 20[esp] - mov edx,DWORD PTR [edx*8+ebp] - movzx eax,ah - xor edx,DWORD PTR 3[eax*8+ebp] - mov eax,DWORD PTR 4[esp] - and ebx,255 - xor edx,DWORD PTR 2[ebx*8+ebp] - mov ebx,DWORD PTR 8[esp] - xor edx,DWORD PTR 1[ecx*8+ebp] - mov ecx,esi - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L003loop - mov esi,eax - and esi,255 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,bh - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - mov edi,edx - shr edi,24 - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - shr ebx,16 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,ch - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - mov edi,eax - shr edi,24 - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - shr ecx,24 - mov esi,DWORD PTR 2[esi*8+ebp] - and esi,255 - movzx edi,dh - mov edi,DWORD PTR [edi*8+ebp] - and edi,65280 - xor esi,edi - mov edi,eax - shr edi,16 - and edx,255 - and edi,255 - mov edi,DWORD PTR [edi*8+ebp] - and edi,16711680 - xor esi,edi - movzx edi,bh - mov edi,DWORD PTR 2[edi*8+ebp] - and edi,4278190080 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - mov edx,DWORD PTR 2[edx*8+ebp] - and edx,255 - movzx eax,ah - mov eax,DWORD PTR [eax*8+ebp] - and eax,65280 - xor edx,eax - mov eax,DWORD PTR 4[esp] - and ebx,255 - mov ebx,DWORD PTR [ebx*8+ebp] - and ebx,16711680 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 2[ecx*8+ebp] - and ecx,4278190080 - xor edx,ecx - mov ecx,esi - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -ALIGN 64 -$LAES_Te:: -DD 2774754246,2774754246 -DD 2222750968,2222750968 -DD 2574743534,2574743534 -DD 2373680118,2373680118 -DD 234025727,234025727 -DD 3177933782,3177933782 -DD 2976870366,2976870366 -DD 1422247313,1422247313 -DD 1345335392,1345335392 -DD 50397442,50397442 -DD 2842126286,2842126286 -DD 2099981142,2099981142 -DD 436141799,436141799 -DD 1658312629,1658312629 -DD 3870010189,3870010189 -DD 2591454956,2591454956 -DD 1170918031,1170918031 -DD 2642575903,2642575903 -DD 1086966153,1086966153 -DD 2273148410,2273148410 -DD 368769775,368769775 -DD 3948501426,3948501426 -DD 3376891790,3376891790 -DD 200339707,200339707 -DD 3970805057,3970805057 -DD 1742001331,1742001331 -DD 4255294047,4255294047 -DD 3937382213,3937382213 -DD 3214711843,3214711843 -DD 4154762323,4154762323 -DD 2524082916,2524082916 -DD 1539358875,1539358875 -DD 3266819957,3266819957 -DD 486407649,486407649 -DD 2928907069,2928907069 -DD 1780885068,1780885068 -DD 1513502316,1513502316 -DD 1094664062,1094664062 -DD 49805301,49805301 -DD 1338821763,1338821763 -DD 1546925160,1546925160 -DD 4104496465,4104496465 -DD 887481809,887481809 -DD 150073849,150073849 -DD 2473685474,2473685474 -DD 1943591083,1943591083 -DD 1395732834,1395732834 -DD 1058346282,1058346282 -DD 201589768,201589768 -DD 1388824469,1388824469 -DD 1696801606,1696801606 -DD 1589887901,1589887901 -DD 672667696,672667696 -DD 2711000631,2711000631 -DD 251987210,251987210 -DD 3046808111,3046808111 -DD 151455502,151455502 -DD 907153956,907153956 -DD 2608889883,2608889883 -DD 1038279391,1038279391 -DD 652995533,652995533 -DD 1764173646,1764173646 -DD 3451040383,3451040383 -DD 2675275242,2675275242 -DD 453576978,453576978 -DD 2659418909,2659418909 -DD 1949051992,1949051992 -DD 773462580,773462580 -DD 756751158,756751158 -DD 2993581788,2993581788 -DD 3998898868,3998898868 -DD 4221608027,4221608027 -DD 4132590244,4132590244 -DD 1295727478,1295727478 -DD 1641469623,1641469623 -DD 3467883389,3467883389 -DD 2066295122,2066295122 -DD 1055122397,1055122397 -DD 1898917726,1898917726 -DD 2542044179,2542044179 -DD 4115878822,4115878822 -DD 1758581177,1758581177 -DD 0,0 -DD 753790401,753790401 -DD 1612718144,1612718144 -DD 536673507,536673507 -DD 3367088505,3367088505 -DD 3982187446,3982187446 -DD 3194645204,3194645204 -DD 1187761037,1187761037 -DD 3653156455,3653156455 -DD 1262041458,1262041458 -DD 3729410708,3729410708 -DD 3561770136,3561770136 -DD 3898103984,3898103984 -DD 1255133061,1255133061 -DD 1808847035,1808847035 -DD 720367557,720367557 -DD 3853167183,3853167183 -DD 385612781,385612781 -DD 3309519750,3309519750 -DD 3612167578,3612167578 -DD 1429418854,1429418854 -DD 2491778321,2491778321 -DD 3477423498,3477423498 -DD 284817897,284817897 -DD 100794884,100794884 -DD 2172616702,2172616702 -DD 4031795360,4031795360 -DD 1144798328,1144798328 -DD 3131023141,3131023141 -DD 3819481163,3819481163 -DD 4082192802,4082192802 -DD 4272137053,4272137053 -DD 3225436288,3225436288 -DD 2324664069,2324664069 -DD 2912064063,2912064063 -DD 3164445985,3164445985 -DD 1211644016,1211644016 -DD 83228145,83228145 -DD 3753688163,3753688163 -DD 3249976951,3249976951 -DD 1977277103,1977277103 -DD 1663115586,1663115586 -DD 806359072,806359072 -DD 452984805,452984805 -DD 250868733,250868733 -DD 1842533055,1842533055 -DD 1288555905,1288555905 -DD 336333848,336333848 -DD 890442534,890442534 -DD 804056259,804056259 -DD 3781124030,3781124030 -DD 2727843637,2727843637 -DD 3427026056,3427026056 -DD 957814574,957814574 -DD 1472513171,1472513171 -DD 4071073621,4071073621 -DD 2189328124,2189328124 -DD 1195195770,1195195770 -DD 2892260552,2892260552 -DD 3881655738,3881655738 -DD 723065138,723065138 -DD 2507371494,2507371494 -DD 2690670784,2690670784 -DD 2558624025,2558624025 -DD 3511635870,3511635870 -DD 2145180835,2145180835 -DD 1713513028,1713513028 -DD 2116692564,2116692564 -DD 2878378043,2878378043 -DD 2206763019,2206763019 -DD 3393603212,3393603212 -DD 703524551,703524551 -DD 3552098411,3552098411 -DD 1007948840,1007948840 -DD 2044649127,2044649127 -DD 3797835452,3797835452 -DD 487262998,487262998 -DD 1994120109,1994120109 -DD 1004593371,1004593371 -DD 1446130276,1446130276 -DD 1312438900,1312438900 -DD 503974420,503974420 -DD 3679013266,3679013266 -DD 168166924,168166924 -DD 1814307912,1814307912 -DD 3831258296,3831258296 -DD 1573044895,1573044895 -DD 1859376061,1859376061 -DD 4021070915,4021070915 -DD 2791465668,2791465668 -DD 2828112185,2828112185 -DD 2761266481,2761266481 -DD 937747667,937747667 -DD 2339994098,2339994098 -DD 854058965,854058965 -DD 1137232011,1137232011 -DD 1496790894,1496790894 -DD 3077402074,3077402074 -DD 2358086913,2358086913 -DD 1691735473,1691735473 -DD 3528347292,3528347292 -DD 3769215305,3769215305 -DD 3027004632,3027004632 -DD 4199962284,4199962284 -DD 133494003,133494003 -DD 636152527,636152527 -DD 2942657994,2942657994 -DD 2390391540,2390391540 -DD 3920539207,3920539207 -DD 403179536,403179536 -DD 3585784431,3585784431 -DD 2289596656,2289596656 -DD 1864705354,1864705354 -DD 1915629148,1915629148 -DD 605822008,605822008 -DD 4054230615,4054230615 -DD 3350508659,3350508659 -DD 1371981463,1371981463 -DD 602466507,602466507 -DD 2094914977,2094914977 -DD 2624877800,2624877800 -DD 555687742,555687742 -DD 3712699286,3712699286 -DD 3703422305,3703422305 -DD 2257292045,2257292045 -DD 2240449039,2240449039 -DD 2423288032,2423288032 -DD 1111375484,1111375484 -DD 3300242801,3300242801 -DD 2858837708,2858837708 -DD 3628615824,3628615824 -DD 84083462,84083462 -DD 32962295,32962295 -DD 302911004,302911004 -DD 2741068226,2741068226 -DD 1597322602,1597322602 -DD 4183250862,4183250862 -DD 3501832553,3501832553 -DD 2441512471,2441512471 -DD 1489093017,1489093017 -DD 656219450,656219450 -DD 3114180135,3114180135 -DD 954327513,954327513 -DD 335083755,335083755 -DD 3013122091,3013122091 -DD 856756514,856756514 -DD 3144247762,3144247762 -DD 1893325225,1893325225 -DD 2307821063,2307821063 -DD 2811532339,2811532339 -DD 3063651117,3063651117 -DD 572399164,572399164 -DD 2458355477,2458355477 -DD 552200649,552200649 -DD 1238290055,1238290055 -DD 4283782570,4283782570 -DD 2015897680,2015897680 -DD 2061492133,2061492133 -DD 2408352771,2408352771 -DD 4171342169,4171342169 -DD 2156497161,2156497161 -DD 386731290,386731290 -DD 3669999461,3669999461 -DD 837215959,837215959 -DD 3326231172,3326231172 -DD 3093850320,3093850320 -DD 3275833730,3275833730 -DD 2962856233,2962856233 -DD 1999449434,1999449434 -DD 286199582,286199582 -DD 3417354363,3417354363 -DD 4233385128,4233385128 -DD 3602627437,3602627437 -DD 974525996,974525996 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DB 99,124,119,123,242,107,111,197 -DB 48,1,103,43,254,215,171,118 -DB 202,130,201,125,250,89,71,240 -DB 173,212,162,175,156,164,114,192 -DB 183,253,147,38,54,63,247,204 -DB 52,165,229,241,113,216,49,21 -DB 4,199,35,195,24,150,5,154 -DB 7,18,128,226,235,39,178,117 -DB 9,131,44,26,27,110,90,160 -DB 82,59,214,179,41,227,47,132 -DB 83,209,0,237,32,252,177,91 -DB 106,203,190,57,74,76,88,207 -DB 208,239,170,251,67,77,51,133 -DB 69,249,2,127,80,60,159,168 -DB 81,163,64,143,146,157,56,245 -DB 188,182,218,33,16,255,243,210 -DB 205,12,19,236,95,151,68,23 -DB 196,167,126,61,100,93,25,115 -DB 96,129,79,220,34,42,144,136 -DB 70,238,184,20,222,94,11,219 -DB 224,50,58,10,73,6,36,92 -DB 194,211,172,98,145,149,228,121 -DB 231,200,55,109,141,213,78,169 -DB 108,86,244,234,101,122,174,8 -DB 186,120,37,46,28,166,180,198 -DB 232,221,116,31,75,189,139,138 -DB 112,62,181,102,72,3,246,14 -DB 97,53,87,185,134,193,29,158 -DB 225,248,152,17,105,217,142,148 -DB 155,30,135,233,206,85,40,223 -DB 140,161,137,13,191,230,66,104 -DB 65,153,45,15,176,84,187,22 -DD 1,2,4,8 -DD 16,32,64,128 -DD 27,54,0,0 -DD 0,0,0,0 -__x86_AES_encrypt ENDP -ALIGN 16 -_AES_encrypt PROC PUBLIC -$L_AES_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov eax,esp - sub esp,36 - and esp,-64 - lea ebx,DWORD PTR [edi-127] - sub ebx,esp - neg ebx - and ebx,960 - sub esp,ebx - add esp,4 - mov DWORD PTR 28[esp],eax - call $L004pic_point -$L004pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LAES_Te-$L004pic_point)[ebp] - lea ebx,DWORD PTR 764[esp] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - bt DWORD PTR [eax],25 - jnc $L005x86 - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - call __sse_AES_encrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L005x86: - mov DWORD PTR 24[esp],ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - call __x86_AES_encrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_encrypt ENDP -ALIGN 16 -__x86_AES_decrypt_compact PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] -ALIGN 16 -$L006loop: - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,24 - xor edx,eax - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea eax,DWORD PTR [ecx*1+ecx] - sub esi,edi - and eax,4278124286 - and esi,454761243 - xor eax,esi - mov edi,2155905152 - and edi,eax - mov esi,edi - shr edi,7 - lea ebx,DWORD PTR [eax*1+eax] - sub esi,edi - and ebx,4278124286 - and esi,454761243 - xor eax,ecx - xor ebx,esi - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor ebx,ecx - rol ecx,8 - xor ebp,esi - xor ecx,eax - xor eax,ebp - xor ecx,ebx - xor ebx,ebp - rol eax,24 - xor ecx,ebp - rol ebx,16 - xor ecx,eax - rol ebp,8 - xor ecx,ebx - mov eax,DWORD PTR 4[esp] - xor ecx,ebp - mov DWORD PTR 12[esp],ecx - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebx,DWORD PTR [edx*1+edx] - sub esi,edi - and ebx,4278124286 - and esi,454761243 - xor ebx,esi - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ebx,edx - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [ecx*1+ecx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor ecx,edx - rol edx,8 - xor ebp,esi - xor edx,ebx - xor ebx,ebp - xor edx,ecx - xor ecx,ebp - rol ebx,24 - xor edx,ebp - rol ecx,16 - xor edx,ebx - rol ebp,8 - xor edx,ecx - mov ebx,DWORD PTR 8[esp] - xor edx,ebp - mov DWORD PTR 16[esp],edx - mov edi,2155905152 - and edi,eax - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [eax*1+eax] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea edx,DWORD PTR [ecx*1+ecx] - sub esi,edi - and edx,4278124286 - and esi,454761243 - xor ecx,eax - xor edx,esi - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [edx*1+edx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor edx,eax - rol eax,8 - xor ebp,esi - xor eax,ecx - xor ecx,ebp - xor eax,edx - xor edx,ebp - rol ecx,24 - xor eax,ebp - rol edx,16 - xor eax,ecx - rol ebp,8 - xor eax,edx - xor eax,ebp - mov edi,2155905152 - and edi,ebx - mov esi,edi - shr edi,7 - lea ecx,DWORD PTR [ebx*1+ebx] - sub esi,edi - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov edi,2155905152 - and edi,ecx - mov esi,edi - shr edi,7 - lea edx,DWORD PTR [ecx*1+ecx] - sub esi,edi - and edx,4278124286 - and esi,454761243 - xor ecx,ebx - xor edx,esi - mov edi,2155905152 - and edi,edx - mov esi,edi - shr edi,7 - lea ebp,DWORD PTR [edx*1+edx] - sub esi,edi - and ebp,4278124286 - and esi,454761243 - xor edx,ebx - rol ebx,8 - xor ebp,esi - xor ebx,ecx - xor ecx,ebp - xor ebx,edx - xor edx,ebp - rol ecx,24 - xor ebx,ebp - rol edx,16 - xor ebx,ecx - rol ebp,8 - xor ebx,edx - mov ecx,DWORD PTR 12[esp] - xor ebx,ebp - mov edx,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 28[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L006loop - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp-128] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp-128] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp-128] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp-128] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp-128] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp-128] - shl eax,24 - xor edx,eax - mov eax,DWORD PTR 4[esp] - xor eax,DWORD PTR 16[edi] - xor ebx,DWORD PTR 20[edi] - xor ecx,DWORD PTR 24[edi] - xor edx,DWORD PTR 28[edi] - ret -__x86_AES_decrypt_compact ENDP -ALIGN 16 -__sse_AES_decrypt_compact PROC PRIVATE - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi - mov eax,454761243 - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] -ALIGN 16 -$L007loop: - pshufw mm1,mm0,12 - pshufw mm5,mm4,9 - movd eax,mm1 - movd ebx,mm5 - mov DWORD PTR 20[esp],edi - movzx esi,al - movzx edx,ah - pshufw mm2,mm0,6 - movzx ecx,BYTE PTR [esi*1+ebp-128] - movzx edi,bl - movzx edx,BYTE PTR [edx*1+ebp-128] - shr eax,16 - shl edx,8 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,16 - pshufw mm6,mm4,3 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,24 - shr ebx,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl esi,24 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,8 - movd eax,mm2 - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - shl esi,16 - movd ebx,mm6 - movd mm0,ecx - movzx ecx,BYTE PTR [edi*1+ebp-128] - movzx edi,al - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bl - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,ah - shl esi,16 - shr eax,16 - or edx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shr ebx,16 - shl esi,8 - movd mm1,edx - movzx edx,BYTE PTR [edi*1+ebp-128] - movzx edi,bh - shl edx,24 - and ebx,255 - or edx,esi - punpckldq mm0,mm1 - movzx esi,BYTE PTR [edi*1+ebp-128] - movzx edi,al - shl esi,8 - movzx eax,ah - movzx ebx,BYTE PTR [ebx*1+ebp-128] - or ecx,esi - movzx esi,BYTE PTR [edi*1+ebp-128] - or edx,ebx - shl esi,16 - movzx eax,BYTE PTR [eax*1+ebp-128] - or edx,esi - shl eax,24 - or ecx,eax - mov edi,DWORD PTR 20[esp] - movd mm4,edx - movd mm5,ecx - punpckldq mm4,mm5 - add edi,16 - cmp edi,DWORD PTR 24[esp] - ja $L008out - movq mm3,mm0 - movq mm7,mm4 - pshufw mm2,mm0,228 - pshufw mm6,mm4,228 - movq mm1,mm0 - movq mm5,mm4 - pshufw mm0,mm0,177 - pshufw mm4,mm4,177 - pslld mm2,8 - pslld mm6,8 - psrld mm3,8 - psrld mm7,8 - pxor mm0,mm2 - pxor mm4,mm6 - pxor mm0,mm3 - pxor mm4,mm7 - pslld mm2,16 - pslld mm6,16 - psrld mm3,16 - psrld mm7,16 - pxor mm0,mm2 - pxor mm4,mm6 - pxor mm0,mm3 - pxor mm4,mm7 - movq mm3,QWORD PTR 8[esp] - pxor mm2,mm2 - pxor mm6,mm6 - pcmpgtb mm2,mm1 - pcmpgtb mm6,mm5 - pand mm2,mm3 - pand mm6,mm3 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm2 - pxor mm5,mm6 - movq mm3,mm1 - movq mm7,mm5 - movq mm2,mm1 - movq mm6,mm5 - pxor mm0,mm1 - pxor mm4,mm5 - pslld mm3,24 - pslld mm7,24 - psrld mm2,8 - psrld mm6,8 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - movq mm2,QWORD PTR 8[esp] - pxor mm3,mm3 - pxor mm7,mm7 - pcmpgtb mm3,mm1 - pcmpgtb mm7,mm5 - pand mm3,mm2 - pand mm7,mm2 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm3 - pxor mm5,mm7 - pshufw mm3,mm1,177 - pshufw mm7,mm5,177 - pxor mm0,mm1 - pxor mm4,mm5 - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm3,mm3 - pxor mm7,mm7 - pcmpgtb mm3,mm1 - pcmpgtb mm7,mm5 - pand mm3,mm2 - pand mm7,mm2 - paddb mm1,mm1 - paddb mm5,mm5 - pxor mm1,mm3 - pxor mm5,mm7 - pxor mm0,mm1 - pxor mm4,mm5 - movq mm3,mm1 - movq mm7,mm5 - pshufw mm2,mm1,177 - pshufw mm6,mm5,177 - pxor mm0,mm2 - pxor mm4,mm6 - pslld mm1,8 - pslld mm5,8 - psrld mm3,8 - psrld mm7,8 - movq mm2,QWORD PTR [edi] - movq mm6,QWORD PTR 8[edi] - pxor mm0,mm1 - pxor mm4,mm5 - pxor mm0,mm3 - pxor mm4,mm7 - mov eax,DWORD PTR [ebp-128] - pslld mm1,16 - pslld mm5,16 - mov ebx,DWORD PTR [ebp-64] - psrld mm3,16 - psrld mm7,16 - mov ecx,DWORD PTR [ebp] - pxor mm0,mm1 - pxor mm4,mm5 - mov edx,DWORD PTR 64[ebp] - pxor mm0,mm3 - pxor mm4,mm7 - pxor mm0,mm2 - pxor mm4,mm6 - jmp $L007loop -ALIGN 16 -$L008out: - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - ret -__sse_AES_decrypt_compact ENDP -ALIGN 16 -__x86_AES_decrypt PROC PRIVATE - mov DWORD PTR 20[esp],edi - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 24[esp],esi -ALIGN 16 -$L009loop: - mov esi,eax - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,dh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,ecx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,ebx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,ah - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,edx - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,ecx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - mov esi,DWORD PTR [esi*8+ebp] - movzx edi,bh - xor esi,DWORD PTR 3[edi*8+ebp] - mov edi,eax - shr edi,16 - and edi,255 - xor esi,DWORD PTR 2[edi*8+ebp] - mov edi,edx - shr edi,24 - xor esi,DWORD PTR 1[edi*8+ebp] - mov edi,DWORD PTR 20[esp] - and edx,255 - mov edx,DWORD PTR [edx*8+ebp] - movzx ecx,ch - xor edx,DWORD PTR 3[ecx*8+ebp] - mov ecx,esi - shr ebx,16 - and ebx,255 - xor edx,DWORD PTR 2[ebx*8+ebp] - mov ebx,DWORD PTR 8[esp] - shr eax,24 - xor edx,DWORD PTR 1[eax*8+ebp] - mov eax,DWORD PTR 4[esp] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - cmp edi,DWORD PTR 24[esp] - mov DWORD PTR 20[esp],edi - jb $L009loop - lea ebp,DWORD PTR 2176[ebp] - mov edi,DWORD PTR [ebp-128] - mov esi,DWORD PTR [ebp-96] - mov edi,DWORD PTR [ebp-64] - mov esi,DWORD PTR [ebp-32] - mov edi,DWORD PTR [ebp] - mov esi,DWORD PTR 32[ebp] - mov edi,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] - lea ebp,DWORD PTR [ebp-128] - mov esi,eax - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,dh - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,ecx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,ebx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov DWORD PTR 4[esp],esi - mov esi,ebx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,ah - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,edx - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,ecx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov DWORD PTR 8[esp],esi - mov esi,ecx - and esi,255 - movzx esi,BYTE PTR [esi*1+ebp] - movzx edi,bh - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,8 - xor esi,edi - mov edi,eax - shr edi,16 - and edi,255 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,16 - xor esi,edi - mov edi,edx - shr edi,24 - movzx edi,BYTE PTR [edi*1+ebp] - shl edi,24 - xor esi,edi - mov edi,DWORD PTR 20[esp] - and edx,255 - movzx edx,BYTE PTR [edx*1+ebp] - movzx ecx,ch - movzx ecx,BYTE PTR [ecx*1+ebp] - shl ecx,8 - xor edx,ecx - mov ecx,esi - shr ebx,16 - and ebx,255 - movzx ebx,BYTE PTR [ebx*1+ebp] - shl ebx,16 - xor edx,ebx - mov ebx,DWORD PTR 8[esp] - shr eax,24 - movzx eax,BYTE PTR [eax*1+ebp] - shl eax,24 - xor edx,eax - mov eax,DWORD PTR 4[esp] - lea ebp,DWORD PTR [ebp-2048] - add edi,16 - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -ALIGN 64 -$LAES_Td:: -DD 1353184337,1353184337 -DD 1399144830,1399144830 -DD 3282310938,3282310938 -DD 2522752826,2522752826 -DD 3412831035,3412831035 -DD 4047871263,4047871263 -DD 2874735276,2874735276 -DD 2466505547,2466505547 -DD 1442459680,1442459680 -DD 4134368941,4134368941 -DD 2440481928,2440481928 -DD 625738485,625738485 -DD 4242007375,4242007375 -DD 3620416197,3620416197 -DD 2151953702,2151953702 -DD 2409849525,2409849525 -DD 1230680542,1230680542 -DD 1729870373,1729870373 -DD 2551114309,2551114309 -DD 3787521629,3787521629 -DD 41234371,41234371 -DD 317738113,317738113 -DD 2744600205,2744600205 -DD 3338261355,3338261355 -DD 3881799427,3881799427 -DD 2510066197,2510066197 -DD 3950669247,3950669247 -DD 3663286933,3663286933 -DD 763608788,763608788 -DD 3542185048,3542185048 -DD 694804553,694804553 -DD 1154009486,1154009486 -DD 1787413109,1787413109 -DD 2021232372,2021232372 -DD 1799248025,1799248025 -DD 3715217703,3715217703 -DD 3058688446,3058688446 -DD 397248752,397248752 -DD 1722556617,1722556617 -DD 3023752829,3023752829 -DD 407560035,407560035 -DD 2184256229,2184256229 -DD 1613975959,1613975959 -DD 1165972322,1165972322 -DD 3765920945,3765920945 -DD 2226023355,2226023355 -DD 480281086,480281086 -DD 2485848313,2485848313 -DD 1483229296,1483229296 -DD 436028815,436028815 -DD 2272059028,2272059028 -DD 3086515026,3086515026 -DD 601060267,601060267 -DD 3791801202,3791801202 -DD 1468997603,1468997603 -DD 715871590,715871590 -DD 120122290,120122290 -DD 63092015,63092015 -DD 2591802758,2591802758 -DD 2768779219,2768779219 -DD 4068943920,4068943920 -DD 2997206819,2997206819 -DD 3127509762,3127509762 -DD 1552029421,1552029421 -DD 723308426,723308426 -DD 2461301159,2461301159 -DD 4042393587,4042393587 -DD 2715969870,2715969870 -DD 3455375973,3455375973 -DD 3586000134,3586000134 -DD 526529745,526529745 -DD 2331944644,2331944644 -DD 2639474228,2639474228 -DD 2689987490,2689987490 -DD 853641733,853641733 -DD 1978398372,1978398372 -DD 971801355,971801355 -DD 2867814464,2867814464 -DD 111112542,111112542 -DD 1360031421,1360031421 -DD 4186579262,4186579262 -DD 1023860118,1023860118 -DD 2919579357,2919579357 -DD 1186850381,1186850381 -DD 3045938321,3045938321 -DD 90031217,90031217 -DD 1876166148,1876166148 -DD 4279586912,4279586912 -DD 620468249,620468249 -DD 2548678102,2548678102 -DD 3426959497,3426959497 -DD 2006899047,2006899047 -DD 3175278768,3175278768 -DD 2290845959,2290845959 -DD 945494503,945494503 -DD 3689859193,3689859193 -DD 1191869601,1191869601 -DD 3910091388,3910091388 -DD 3374220536,3374220536 -DD 0,0 -DD 2206629897,2206629897 -DD 1223502642,1223502642 -DD 2893025566,2893025566 -DD 1316117100,1316117100 -DD 4227796733,4227796733 -DD 1446544655,1446544655 -DD 517320253,517320253 -DD 658058550,658058550 -DD 1691946762,1691946762 -DD 564550760,564550760 -DD 3511966619,3511966619 -DD 976107044,976107044 -DD 2976320012,2976320012 -DD 266819475,266819475 -DD 3533106868,3533106868 -DD 2660342555,2660342555 -DD 1338359936,1338359936 -DD 2720062561,2720062561 -DD 1766553434,1766553434 -DD 370807324,370807324 -DD 179999714,179999714 -DD 3844776128,3844776128 -DD 1138762300,1138762300 -DD 488053522,488053522 -DD 185403662,185403662 -DD 2915535858,2915535858 -DD 3114841645,3114841645 -DD 3366526484,3366526484 -DD 2233069911,2233069911 -DD 1275557295,1275557295 -DD 3151862254,3151862254 -DD 4250959779,4250959779 -DD 2670068215,2670068215 -DD 3170202204,3170202204 -DD 3309004356,3309004356 -DD 880737115,880737115 -DD 1982415755,1982415755 -DD 3703972811,3703972811 -DD 1761406390,1761406390 -DD 1676797112,1676797112 -DD 3403428311,3403428311 -DD 277177154,277177154 -DD 1076008723,1076008723 -DD 538035844,538035844 -DD 2099530373,2099530373 -DD 4164795346,4164795346 -DD 288553390,288553390 -DD 1839278535,1839278535 -DD 1261411869,1261411869 -DD 4080055004,4080055004 -DD 3964831245,3964831245 -DD 3504587127,3504587127 -DD 1813426987,1813426987 -DD 2579067049,2579067049 -DD 4199060497,4199060497 -DD 577038663,577038663 -DD 3297574056,3297574056 -DD 440397984,440397984 -DD 3626794326,3626794326 -DD 4019204898,4019204898 -DD 3343796615,3343796615 -DD 3251714265,3251714265 -DD 4272081548,4272081548 -DD 906744984,906744984 -DD 3481400742,3481400742 -DD 685669029,685669029 -DD 646887386,646887386 -DD 2764025151,2764025151 -DD 3835509292,3835509292 -DD 227702864,227702864 -DD 2613862250,2613862250 -DD 1648787028,1648787028 -DD 3256061430,3256061430 -DD 3904428176,3904428176 -DD 1593260334,1593260334 -DD 4121936770,4121936770 -DD 3196083615,3196083615 -DD 2090061929,2090061929 -DD 2838353263,2838353263 -DD 3004310991,3004310991 -DD 999926984,999926984 -DD 2809993232,2809993232 -DD 1852021992,1852021992 -DD 2075868123,2075868123 -DD 158869197,158869197 -DD 4095236462,4095236462 -DD 28809964,28809964 -DD 2828685187,2828685187 -DD 1701746150,1701746150 -DD 2129067946,2129067946 -DD 147831841,147831841 -DD 3873969647,3873969647 -DD 3650873274,3650873274 -DD 3459673930,3459673930 -DD 3557400554,3557400554 -DD 3598495785,3598495785 -DD 2947720241,2947720241 -DD 824393514,824393514 -DD 815048134,815048134 -DD 3227951669,3227951669 -DD 935087732,935087732 -DD 2798289660,2798289660 -DD 2966458592,2966458592 -DD 366520115,366520115 -DD 1251476721,1251476721 -DD 4158319681,4158319681 -DD 240176511,240176511 -DD 804688151,804688151 -DD 2379631990,2379631990 -DD 1303441219,1303441219 -DD 1414376140,1414376140 -DD 3741619940,3741619940 -DD 3820343710,3820343710 -DD 461924940,461924940 -DD 3089050817,3089050817 -DD 2136040774,2136040774 -DD 82468509,82468509 -DD 1563790337,1563790337 -DD 1937016826,1937016826 -DD 776014843,776014843 -DD 1511876531,1511876531 -DD 1389550482,1389550482 -DD 861278441,861278441 -DD 323475053,323475053 -DD 2355222426,2355222426 -DD 2047648055,2047648055 -DD 2383738969,2383738969 -DD 2302415851,2302415851 -DD 3995576782,3995576782 -DD 902390199,902390199 -DD 3991215329,3991215329 -DD 1018251130,1018251130 -DD 1507840668,1507840668 -DD 1064563285,1064563285 -DD 2043548696,2043548696 -DD 3208103795,3208103795 -DD 3939366739,3939366739 -DD 1537932639,1537932639 -DD 342834655,342834655 -DD 2262516856,2262516856 -DD 2180231114,2180231114 -DD 1053059257,1053059257 -DD 741614648,741614648 -DD 1598071746,1598071746 -DD 1925389590,1925389590 -DD 203809468,203809468 -DD 2336832552,2336832552 -DD 1100287487,1100287487 -DD 1895934009,1895934009 -DD 3736275976,3736275976 -DD 2632234200,2632234200 -DD 2428589668,2428589668 -DD 1636092795,1636092795 -DD 1890988757,1890988757 -DD 1952214088,1952214088 -DD 1113045200,1113045200 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -DB 82,9,106,213,48,54,165,56 -DB 191,64,163,158,129,243,215,251 -DB 124,227,57,130,155,47,255,135 -DB 52,142,67,68,196,222,233,203 -DB 84,123,148,50,166,194,35,61 -DB 238,76,149,11,66,250,195,78 -DB 8,46,161,102,40,217,36,178 -DB 118,91,162,73,109,139,209,37 -DB 114,248,246,100,134,104,152,22 -DB 212,164,92,204,93,101,182,146 -DB 108,112,72,80,253,237,185,218 -DB 94,21,70,87,167,141,157,132 -DB 144,216,171,0,140,188,211,10 -DB 247,228,88,5,184,179,69,6 -DB 208,44,30,143,202,63,15,2 -DB 193,175,189,3,1,19,138,107 -DB 58,145,17,65,79,103,220,234 -DB 151,242,207,206,240,180,230,115 -DB 150,172,116,34,231,173,53,133 -DB 226,249,55,232,28,117,223,110 -DB 71,241,26,113,29,41,197,137 -DB 111,183,98,14,170,24,190,27 -DB 252,86,62,75,198,210,121,32 -DB 154,219,192,254,120,205,90,244 -DB 31,221,168,51,136,7,199,49 -DB 177,18,16,89,39,128,236,95 -DB 96,81,127,169,25,181,74,13 -DB 45,229,122,159,147,201,156,239 -DB 160,224,59,77,174,42,245,176 -DB 200,235,187,60,131,83,153,97 -DB 23,43,4,126,186,119,214,38 -DB 225,105,20,99,85,33,12,125 -__x86_AES_decrypt ENDP -ALIGN 16 -_AES_decrypt PROC PUBLIC -$L_AES_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov eax,esp - sub esp,36 - and esp,-64 - lea ebx,DWORD PTR [edi-127] - sub ebx,esp - neg ebx - and ebx,960 - sub esp,ebx - add esp,4 - mov DWORD PTR 28[esp],eax - call $L010pic_point -$L010pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LAES_Td-$L010pic_point)[ebp] - lea ebx,DWORD PTR 764[esp] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - bt DWORD PTR [eax],25 - jnc $L011x86 - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - call __sse_AES_decrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L011x86: - mov DWORD PTR 24[esp],ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - call __x86_AES_decrypt_compact - mov esp,DWORD PTR 28[esp] - mov esi,DWORD PTR 24[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_decrypt ENDP -ALIGN 16 -_AES_cbc_encrypt PROC PUBLIC -$L_AES_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ecx,DWORD PTR 28[esp] - cmp ecx,0 - je $L012drop_out - call $L013pic_point -$L013pic_point: - pop ebp - lea eax,DWORD PTR _OPENSSL_ia32cap_P - cmp DWORD PTR 40[esp],0 - lea ebp,DWORD PTR ($LAES_Te-$L013pic_point)[ebp] - jne $L014picked_te - lea ebp,DWORD PTR ($LAES_Td-$LAES_Te)[ebp] -$L014picked_te: - pushfd - cld - cmp ecx,512 - jb $L015slow_way - test ecx,15 - jnz $L015slow_way - bt DWORD PTR [eax],28 - jc $L015slow_way - lea esi,DWORD PTR [esp-324] - and esi,-64 - mov eax,ebp - lea ebx,DWORD PTR 2304[ebp] - mov edx,esi - and eax,4095 - and ebx,4095 - and edx,4095 - cmp edx,ebx - jb $L016tbl_break_out - sub edx,ebx - sub esi,edx - jmp $L017tbl_ok -ALIGN 4 -$L016tbl_break_out: - sub edx,eax - and edx,4095 - add edx,384 - sub esi,edx -ALIGN 4 -$L017tbl_ok: - lea edx,DWORD PTR 24[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],esi - mov eax,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - mov edi,DWORD PTR 12[edx] - mov esi,DWORD PTR 16[edx] - mov edx,DWORD PTR 20[edx] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edi - mov DWORD PTR 48[esp],esi - mov DWORD PTR 316[esp],0 - mov ebx,edi - mov ecx,61 - sub ebx,ebp - mov esi,edi - and ebx,4095 - lea edi,DWORD PTR 76[esp] - cmp ebx,2304 - jb $L018do_copy - cmp ebx,3852 - jb $L019skip_copy -ALIGN 4 -$L018do_copy: - mov DWORD PTR 44[esp],edi -DD 2784229001 -$L019skip_copy: - mov edi,16 -ALIGN 4 -$L020prefetch_tbl: - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov esi,DWORD PTR 96[ebp] - lea ebp,DWORD PTR 128[ebp] - sub edi,1 - jnz $L020prefetch_tbl - sub ebp,2048 - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 48[esp] - cmp edx,0 - je $L021fast_decrypt - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 16 -$L022fast_enc_loop: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_encrypt - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - lea esi,DWORD PTR 16[esi] - mov ecx,DWORD PTR 40[esp] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L022fast_enc_loop - mov esi,DWORD PTR 48[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - cmp DWORD PTR 316[esp],0 - mov edi,DWORD PTR 44[esp] - je $L023skip_ezero - mov ecx,60 - xor eax,eax -ALIGN 4 -DD 2884892297 -$L023skip_ezero: - mov esp,DWORD PTR 28[esp] - popfd -$L012drop_out: - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L021fast_decrypt: - cmp esi,DWORD PTR 36[esp] - je $L024fast_dec_in_place - mov DWORD PTR 52[esp],edi -ALIGN 4 -ALIGN 16 -$L025fast_dec_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt - mov edi,DWORD PTR 52[esp] - mov esi,DWORD PTR 40[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov edi,DWORD PTR 36[esp] - mov esi,DWORD PTR 32[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - mov DWORD PTR 52[esp],esi - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edi,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edi - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L025fast_dec_loop - mov edi,DWORD PTR 52[esp] - mov esi,DWORD PTR 48[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - jmp $L026fast_dec_out -ALIGN 16 -$L024fast_dec_in_place: -$L027fast_dec_in_place_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - lea edi,DWORD PTR 60[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt - mov edi,DWORD PTR 48[esp] - mov esi,DWORD PTR 36[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 36[esp],esi - lea esi,DWORD PTR 60[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 32[esp] - mov ecx,DWORD PTR 40[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - sub ecx,16 - mov DWORD PTR 40[esp],ecx - jnz $L027fast_dec_in_place_loop -ALIGN 4 -$L026fast_dec_out: - cmp DWORD PTR 316[esp],0 - mov edi,DWORD PTR 44[esp] - je $L028skip_dzero - mov ecx,60 - xor eax,eax -ALIGN 4 -DD 2884892297 -$L028skip_dzero: - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L015slow_way: - mov eax,DWORD PTR [eax] - mov edi,DWORD PTR 36[esp] - lea esi,DWORD PTR [esp-80] - and esi,-64 - lea ebx,DWORD PTR [edi-143] - sub ebx,esi - neg ebx - and ebx,960 - sub esi,ebx - lea ebx,DWORD PTR 768[esi] - sub ebx,ebp - and ebx,768 - lea ebp,DWORD PTR 2176[ebx*1+ebp] - lea edx,DWORD PTR 24[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],esi - mov DWORD PTR 52[esp],eax - mov eax,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - mov esi,DWORD PTR 16[edx] - mov edx,DWORD PTR 20[edx] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edi - mov DWORD PTR 48[esp],esi - mov edi,esi - mov esi,eax - cmp edx,0 - je $L029slow_decrypt - cmp ecx,16 - mov edx,ebx - jb $L030slow_enc_tail - bt DWORD PTR 52[esp],25 - jnc $L031slow_enc_x86 - movq mm0,QWORD PTR [edi] - movq mm4,QWORD PTR 8[edi] -ALIGN 16 -$L032slow_enc_loop_sse: - pxor mm0,QWORD PTR [esi] - pxor mm4,QWORD PTR 8[esi] - mov edi,DWORD PTR 44[esp] - call __sse_AES_encrypt_compact - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - movq QWORD PTR [edi],mm0 - movq QWORD PTR 8[edi],mm4 - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - cmp ecx,16 - mov DWORD PTR 40[esp],ecx - jae $L032slow_enc_loop_sse - test ecx,15 - jnz $L030slow_enc_tail - mov esi,DWORD PTR 48[esp] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm4 - emms - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L031slow_enc_x86: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 4 -$L033slow_enc_loop_x86: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov edi,DWORD PTR 44[esp] - call __x86_AES_encrypt_compact - mov esi,DWORD PTR 32[esp] - mov edi,DWORD PTR 36[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 36[esp],edx - sub ecx,16 - cmp ecx,16 - mov DWORD PTR 40[esp],ecx - jae $L033slow_enc_loop_x86 - test ecx,15 - jnz $L030slow_enc_tail - mov esi,DWORD PTR 48[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L030slow_enc_tail: - emms - mov edi,edx - mov ebx,16 - sub ebx,ecx - cmp edi,esi - je $L034enc_in_place -ALIGN 4 -DD 2767451785 - jmp $L035enc_skip_in_place -$L034enc_in_place: - lea edi,DWORD PTR [ecx*1+edi] -$L035enc_skip_in_place: - mov ecx,ebx - xor eax,eax -ALIGN 4 -DD 2868115081 - mov edi,DWORD PTR 48[esp] - mov esi,edx - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov DWORD PTR 40[esp],16 - jmp $L033slow_enc_loop_x86 -ALIGN 16 -$L029slow_decrypt: - bt DWORD PTR 52[esp],25 - jnc $L036slow_dec_loop_x86 -ALIGN 4 -$L037slow_dec_loop_sse: - movq mm0,QWORD PTR [esi] - movq mm4,QWORD PTR 8[esi] - mov edi,DWORD PTR 44[esp] - call __sse_AES_decrypt_compact - mov esi,DWORD PTR 32[esp] - lea eax,DWORD PTR 60[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov edi,DWORD PTR 48[esp] - movq mm1,QWORD PTR [esi] - movq mm5,QWORD PTR 8[esi] - pxor mm0,QWORD PTR [edi] - pxor mm4,QWORD PTR 8[edi] - movq QWORD PTR [edi],mm1 - movq QWORD PTR 8[edi],mm5 - sub ecx,16 - jc $L038slow_dec_partial_sse - movq QWORD PTR [ebx],mm0 - movq QWORD PTR 8[ebx],mm4 - lea ebx,DWORD PTR 16[ebx] - mov DWORD PTR 36[esp],ebx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - mov DWORD PTR 40[esp],ecx - jnz $L037slow_dec_loop_sse - emms - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L038slow_dec_partial_sse: - movq QWORD PTR [eax],mm0 - movq QWORD PTR 8[eax],mm4 - emms - add ecx,16 - mov edi,ebx - mov esi,eax -ALIGN 4 -DD 2767451785 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L036slow_dec_loop_x86: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - lea edi,DWORD PTR 60[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov edi,DWORD PTR 44[esp] - call __x86_AES_decrypt_compact - mov edi,DWORD PTR 48[esp] - mov esi,DWORD PTR 40[esp] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - sub esi,16 - jc $L039slow_dec_partial_x86 - mov DWORD PTR 40[esp],esi - mov esi,DWORD PTR 36[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 36[esp],esi - lea esi,DWORD PTR 60[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 32[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 32[esp],esi - jnz $L036slow_dec_loop_x86 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 16 -$L039slow_dec_partial_x86: - lea esi,DWORD PTR 60[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esi,DWORD PTR 32[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 40[esp] - mov edi,DWORD PTR 36[esp] - lea esi,DWORD PTR 60[esp] -ALIGN 4 -DD 2767451785 - mov esp,DWORD PTR 28[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret -_AES_cbc_encrypt ENDP -ALIGN 16 -__x86_AES_set_encrypt_key PROC PRIVATE - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 32[esp] - test esi,-1 - jz $L040badpointer - test edi,-1 - jz $L040badpointer - call $L041pic_point -$L041pic_point: - pop ebp - lea ebp,DWORD PTR ($LAES_Te-$L041pic_point)[ebp] - lea ebp,DWORD PTR 2176[ebp] - mov eax,DWORD PTR [ebp-128] - mov ebx,DWORD PTR [ebp-96] - mov ecx,DWORD PTR [ebp-64] - mov edx,DWORD PTR [ebp-32] - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 28[esp] - cmp ecx,128 - je $L04210rounds - cmp ecx,192 - je $L04312rounds - cmp ecx,256 - je $L04414rounds - mov eax,-2 - jmp $L045exit -$L04210rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - xor ecx,ecx - jmp $L04610shortcut -ALIGN 4 -$L04710loop: - mov eax,DWORD PTR [edi] - mov edx,DWORD PTR 12[edi] -$L04610shortcut: - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 16[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 20[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 24[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 28[edi],eax - inc ecx - add edi,16 - cmp ecx,10 - jl $L04710loop - mov DWORD PTR 80[edi],10 - xor eax,eax - jmp $L045exit -$L04312rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 20[esi] - mov DWORD PTR 16[edi],ecx - mov DWORD PTR 20[edi],edx - xor ecx,ecx - jmp $L04812shortcut -ALIGN 4 -$L04912loop: - mov eax,DWORD PTR [edi] - mov edx,DWORD PTR 20[edi] -$L04812shortcut: - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 24[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 28[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 32[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 36[edi],eax - cmp ecx,7 - je $L05012break - inc ecx - xor eax,DWORD PTR 16[edi] - mov DWORD PTR 40[edi],eax - xor eax,DWORD PTR 20[edi] - mov DWORD PTR 44[edi],eax - add edi,24 - jmp $L04912loop -$L05012break: - mov DWORD PTR 72[edi],12 - xor eax,eax - jmp $L045exit -$L04414rounds: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - mov DWORD PTR 16[edi],eax - mov DWORD PTR 20[edi],ebx - mov DWORD PTR 24[edi],ecx - mov DWORD PTR 28[edi],edx - xor ecx,ecx - jmp $L05114shortcut -ALIGN 4 -$L05214loop: - mov edx,DWORD PTR 28[edi] -$L05114shortcut: - mov eax,DWORD PTR [edi] - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,24 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,8 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,16 - xor eax,ebx - xor eax,DWORD PTR 896[ecx*4+ebp] - mov DWORD PTR 32[edi],eax - xor eax,DWORD PTR 4[edi] - mov DWORD PTR 36[edi],eax - xor eax,DWORD PTR 8[edi] - mov DWORD PTR 40[edi],eax - xor eax,DWORD PTR 12[edi] - mov DWORD PTR 44[edi],eax - cmp ecx,6 - je $L05314break - inc ecx - mov edx,eax - mov eax,DWORD PTR 16[edi] - movzx esi,dl - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shr edx,16 - shl ebx,8 - movzx esi,dl - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - movzx esi,dh - shl ebx,16 - xor eax,ebx - movzx ebx,BYTE PTR [esi*1+ebp-128] - shl ebx,24 - xor eax,ebx - mov DWORD PTR 48[edi],eax - xor eax,DWORD PTR 20[edi] - mov DWORD PTR 52[edi],eax - xor eax,DWORD PTR 24[edi] - mov DWORD PTR 56[edi],eax - xor eax,DWORD PTR 28[edi] - mov DWORD PTR 60[edi],eax - add edi,32 - jmp $L05214loop -$L05314break: - mov DWORD PTR 48[edi],14 - xor eax,eax - jmp $L045exit -$L040badpointer: - mov eax,-1 -$L045exit: - pop edi - pop esi - pop ebx - pop ebp - ret -__x86_AES_set_encrypt_key ENDP -ALIGN 16 -_private_AES_set_encrypt_key PROC PUBLIC -$L_private_AES_set_encrypt_key_begin:: - call __x86_AES_set_encrypt_key - ret -_private_AES_set_encrypt_key ENDP -ALIGN 16 -_private_AES_set_decrypt_key PROC PUBLIC -$L_private_AES_set_decrypt_key_begin:: - call __x86_AES_set_encrypt_key - cmp eax,0 - je $L054proceed - ret -$L054proceed: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 28[esp] - mov ecx,DWORD PTR 240[esi] - lea ecx,DWORD PTR [ecx*4] - lea edi,DWORD PTR [ecx*4+esi] -ALIGN 4 -$L055invert: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR [edi] - mov edx,DWORD PTR 4[edi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR [esi],ecx - mov DWORD PTR 4[esi],edx - mov eax,DWORD PTR 8[esi] - mov ebx,DWORD PTR 12[esi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR 8[edi],eax - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - add esi,16 - sub edi,16 - cmp esi,edi - jne $L055invert - mov edi,DWORD PTR 28[esp] - mov esi,DWORD PTR 240[edi] - lea esi,DWORD PTR [esi*1+esi-2] - lea esi,DWORD PTR [esi*8+edi] - mov DWORD PTR 28[esp],esi - mov eax,DWORD PTR 16[edi] -ALIGN 4 -$L056permute: - add edi,16 - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - xor ebx,esi - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - xor ebx,eax - xor ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - xor ecx,eax - sub esi,ebp - and edx,4278124286 - and esi,454761243 - rol eax,8 - xor edx,esi - mov ebp,DWORD PTR 4[edi] - xor eax,ebx - xor ebx,edx - xor eax,ecx - rol ebx,24 - xor ecx,edx - xor eax,edx - rol ecx,16 - xor eax,ebx - rol edx,8 - xor eax,ecx - mov ebx,ebp - xor eax,edx - mov DWORD PTR [edi],eax - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - xor ecx,esi - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and edx,4278124286 - and esi,454761243 - xor ecx,ebx - xor edx,esi - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - xor edx,ebx - sub esi,ebp - and eax,4278124286 - and esi,454761243 - rol ebx,8 - xor eax,esi - mov ebp,DWORD PTR 8[edi] - xor ebx,ecx - xor ecx,eax - xor ebx,edx - rol ecx,24 - xor edx,eax - xor ebx,eax - rol edx,16 - xor ebx,ecx - rol eax,8 - xor ebx,edx - mov ecx,ebp - xor ebx,eax - mov DWORD PTR 4[edi],ebx - mov ebp,2155905152 - and ebp,ecx - lea edx,DWORD PTR [ecx*1+ecx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and edx,4278124286 - and esi,454761243 - xor edx,esi - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and eax,4278124286 - and esi,454761243 - xor edx,ecx - xor eax,esi - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - xor eax,ecx - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - rol ecx,8 - xor ebx,esi - mov ebp,DWORD PTR 12[edi] - xor ecx,edx - xor edx,ebx - xor ecx,eax - rol edx,24 - xor eax,ebx - xor ecx,ebx - rol eax,16 - xor ecx,edx - rol ebx,8 - xor ecx,eax - mov edx,ebp - xor ecx,ebx - mov DWORD PTR 8[edi],ecx - mov ebp,2155905152 - and ebp,edx - lea eax,DWORD PTR [edx*1+edx] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and eax,4278124286 - and esi,454761243 - xor eax,esi - mov ebp,2155905152 - and ebp,eax - lea ebx,DWORD PTR [eax*1+eax] - mov esi,ebp - shr ebp,7 - sub esi,ebp - and ebx,4278124286 - and esi,454761243 - xor eax,edx - xor ebx,esi - mov ebp,2155905152 - and ebp,ebx - lea ecx,DWORD PTR [ebx*1+ebx] - mov esi,ebp - shr ebp,7 - xor ebx,edx - sub esi,ebp - and ecx,4278124286 - and esi,454761243 - rol edx,8 - xor ecx,esi - mov ebp,DWORD PTR 16[edi] - xor edx,eax - xor eax,ecx - xor edx,ebx - rol eax,24 - xor ebx,ecx - xor edx,ecx - rol ebx,16 - xor edx,eax - rol ecx,8 - xor edx,ebx - mov eax,ebp - xor edx,ecx - mov DWORD PTR 12[edi],edx - cmp edi,DWORD PTR 28[esp] - jb $L056permute - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_private_AES_set_decrypt_key ENDP -DB 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 -DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/aes/aesni-x86.asm b/deps/openssl/asm_obsolete/x86-win32-masm/aes/aesni-x86.asm deleted file mode 100644 index 6511c21bcf87ca..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/aes/aesni-x86.asm +++ /dev/null @@ -1,2439 +0,0 @@ -TITLE ../openssl/crypto/aes/asm/aesni-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_aesni_encrypt PROC PUBLIC -$L_aesni_encrypt_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 12[esp] - movups xmm2,XMMWORD PTR [eax] - mov ecx,DWORD PTR 240[edx] - mov eax,DWORD PTR 8[esp] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L000enc1_loop_1: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L000enc1_loop_1 -DB 102,15,56,221,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR [eax],xmm2 - pxor xmm2,xmm2 - ret -_aesni_encrypt ENDP -ALIGN 16 -_aesni_decrypt PROC PUBLIC -$L_aesni_decrypt_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 12[esp] - movups xmm2,XMMWORD PTR [eax] - mov ecx,DWORD PTR 240[edx] - mov eax,DWORD PTR 8[esp] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L001dec1_loop_2: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L001dec1_loop_2 -DB 102,15,56,223,209 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movups XMMWORD PTR [eax],xmm2 - pxor xmm2,xmm2 - ret -_aesni_decrypt ENDP -ALIGN 16 -__aesni_encrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L002enc2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L002enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - ret -__aesni_encrypt2 ENDP -ALIGN 16 -__aesni_decrypt2 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L003dec2_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L003dec2_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,223,208 -DB 102,15,56,223,216 - ret -__aesni_decrypt2 ENDP -ALIGN 16 -__aesni_encrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L004enc3_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L004enc3_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 - ret -__aesni_encrypt3 ENDP -ALIGN 16 -__aesni_decrypt3 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx - add ecx,16 -$L005dec3_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L005dec3_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 - ret -__aesni_decrypt3 ENDP -ALIGN 16 -__aesni_encrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - shl ecx,4 - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 15,31,64,0 - add ecx,16 -$L006enc4_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L006enc4_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 - ret -__aesni_encrypt4 ENDP -ALIGN 16 -__aesni_decrypt4 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - shl ecx,4 - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 - pxor xmm5,xmm0 - movups xmm0,XMMWORD PTR 32[edx] - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 15,31,64,0 - add ecx,16 -$L007dec4_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L007dec4_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 - ret -__aesni_decrypt4 ENDP -ALIGN 16 -__aesni_encrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,220,209 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,220,217 - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 102,15,56,220,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR [ecx*1+edx] - add ecx,16 - jmp $L008_aesni_encrypt6_inner -ALIGN 16 -$L009enc6_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -$L008_aesni_encrypt6_inner: -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -$L_aesni_encrypt6_enter:: - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 -DB 102,15,56,220,224 -DB 102,15,56,220,232 -DB 102,15,56,220,240 -DB 102,15,56,220,248 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L009enc6_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 -DB 102,15,56,221,208 -DB 102,15,56,221,216 -DB 102,15,56,221,224 -DB 102,15,56,221,232 -DB 102,15,56,221,240 -DB 102,15,56,221,248 - ret -__aesni_encrypt6 ENDP -ALIGN 16 -__aesni_decrypt6 PROC PRIVATE - movups xmm0,XMMWORD PTR [edx] - shl ecx,4 - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm2,xmm0 - pxor xmm3,xmm0 - pxor xmm4,xmm0 -DB 102,15,56,222,209 - pxor xmm5,xmm0 - pxor xmm6,xmm0 -DB 102,15,56,222,217 - lea edx,DWORD PTR 32[ecx*1+edx] - neg ecx -DB 102,15,56,222,225 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR [ecx*1+edx] - add ecx,16 - jmp $L010_aesni_decrypt6_inner -ALIGN 16 -$L011dec6_loop: -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -$L010_aesni_decrypt6_inner: -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -$L_aesni_decrypt6_enter:: - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,222,208 -DB 102,15,56,222,216 -DB 102,15,56,222,224 -DB 102,15,56,222,232 -DB 102,15,56,222,240 -DB 102,15,56,222,248 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L011dec6_loop -DB 102,15,56,222,209 -DB 102,15,56,222,217 -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 -DB 102,15,56,223,208 -DB 102,15,56,223,216 -DB 102,15,56,223,224 -DB 102,15,56,223,232 -DB 102,15,56,223,240 -DB 102,15,56,223,248 - ret -__aesni_decrypt6 ENDP -ALIGN 16 -_aesni_ecb_encrypt PROC PUBLIC -$L_aesni_ecb_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - and eax,-16 - jz $L012ecb_ret - mov ecx,DWORD PTR 240[edx] - test ebx,ebx - jz $L013ecb_decrypt - mov ebp,edx - mov ebx,ecx - cmp eax,96 - jb $L014ecb_enc_tail - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - sub eax,96 - jmp $L015ecb_enc_loop6_enter -ALIGN 16 -$L016ecb_enc_loop6: - movups XMMWORD PTR [edi],xmm2 - movdqu xmm2,XMMWORD PTR [esi] - movups XMMWORD PTR 16[edi],xmm3 - movdqu xmm3,XMMWORD PTR 16[esi] - movups XMMWORD PTR 32[edi],xmm4 - movdqu xmm4,XMMWORD PTR 32[esi] - movups XMMWORD PTR 48[edi],xmm5 - movdqu xmm5,XMMWORD PTR 48[esi] - movups XMMWORD PTR 64[edi],xmm6 - movdqu xmm6,XMMWORD PTR 64[esi] - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] -$L015ecb_enc_loop6_enter: - call __aesni_encrypt6 - mov edx,ebp - mov ecx,ebx - sub eax,96 - jnc $L016ecb_enc_loop6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - add eax,96 - jz $L012ecb_ret -$L014ecb_enc_tail: - movups xmm2,XMMWORD PTR [esi] - cmp eax,32 - jb $L017ecb_enc_one - movups xmm3,XMMWORD PTR 16[esi] - je $L018ecb_enc_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,64 - jb $L019ecb_enc_three - movups xmm5,XMMWORD PTR 48[esi] - je $L020ecb_enc_four - movups xmm6,XMMWORD PTR 64[esi] - xorps xmm7,xmm7 - call __aesni_encrypt6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L012ecb_ret -ALIGN 16 -$L017ecb_enc_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L021enc1_loop_3: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L021enc1_loop_3 -DB 102,15,56,221,209 - movups XMMWORD PTR [edi],xmm2 - jmp $L012ecb_ret -ALIGN 16 -$L018ecb_enc_two: - call __aesni_encrypt2 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L012ecb_ret -ALIGN 16 -$L019ecb_enc_three: - call __aesni_encrypt3 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L012ecb_ret -ALIGN 16 -$L020ecb_enc_four: - call __aesni_encrypt4 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - jmp $L012ecb_ret -ALIGN 16 -$L013ecb_decrypt: - mov ebp,edx - mov ebx,ecx - cmp eax,96 - jb $L022ecb_dec_tail - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - sub eax,96 - jmp $L023ecb_dec_loop6_enter -ALIGN 16 -$L024ecb_dec_loop6: - movups XMMWORD PTR [edi],xmm2 - movdqu xmm2,XMMWORD PTR [esi] - movups XMMWORD PTR 16[edi],xmm3 - movdqu xmm3,XMMWORD PTR 16[esi] - movups XMMWORD PTR 32[edi],xmm4 - movdqu xmm4,XMMWORD PTR 32[esi] - movups XMMWORD PTR 48[edi],xmm5 - movdqu xmm5,XMMWORD PTR 48[esi] - movups XMMWORD PTR 64[edi],xmm6 - movdqu xmm6,XMMWORD PTR 64[esi] - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqu xmm7,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] -$L023ecb_dec_loop6_enter: - call __aesni_decrypt6 - mov edx,ebp - mov ecx,ebx - sub eax,96 - jnc $L024ecb_dec_loop6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - add eax,96 - jz $L012ecb_ret -$L022ecb_dec_tail: - movups xmm2,XMMWORD PTR [esi] - cmp eax,32 - jb $L025ecb_dec_one - movups xmm3,XMMWORD PTR 16[esi] - je $L026ecb_dec_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,64 - jb $L027ecb_dec_three - movups xmm5,XMMWORD PTR 48[esi] - je $L028ecb_dec_four - movups xmm6,XMMWORD PTR 64[esi] - xorps xmm7,xmm7 - call __aesni_decrypt6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L012ecb_ret -ALIGN 16 -$L025ecb_dec_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L029dec1_loop_4: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L029dec1_loop_4 -DB 102,15,56,223,209 - movups XMMWORD PTR [edi],xmm2 - jmp $L012ecb_ret -ALIGN 16 -$L026ecb_dec_two: - call __aesni_decrypt2 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L012ecb_ret -ALIGN 16 -$L027ecb_dec_three: - call __aesni_decrypt3 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L012ecb_ret -ALIGN 16 -$L028ecb_dec_four: - call __aesni_decrypt4 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 -$L012ecb_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ecb_encrypt ENDP -ALIGN 16 -_aesni_ccm64_encrypt_blocks PROC PUBLIC -$L_aesni_ccm64_encrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov ebp,esp - sub esp,60 - and esp,-16 - mov DWORD PTR 48[esp],ebp - movdqu xmm7,XMMWORD PTR [ebx] - movdqu xmm3,XMMWORD PTR [ecx] - mov ecx,DWORD PTR 240[edx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ebx,1 - xor ebp,ebp - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],ebp - shl ecx,4 - mov ebx,16 - lea ebp,DWORD PTR [edx] - movdqa xmm5,XMMWORD PTR [esp] - movdqa xmm2,xmm7 - lea edx,DWORD PTR 32[ecx*1+edx] - sub ebx,ecx -DB 102,15,56,0,253 -$L030ccm64_enc_outer: - movups xmm0,XMMWORD PTR [ebp] - mov ecx,ebx - movups xmm6,XMMWORD PTR [esi] - xorps xmm2,xmm0 - movups xmm1,XMMWORD PTR 16[ebp] - xorps xmm0,xmm6 - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -$L031ccm64_enc2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L031ccm64_enc2_loop -DB 102,15,56,220,209 -DB 102,15,56,220,217 - paddq xmm7,XMMWORD PTR 16[esp] - dec eax -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea esi,DWORD PTR 16[esi] - xorps xmm6,xmm2 - movdqa xmm2,xmm7 - movups XMMWORD PTR [edi],xmm6 -DB 102,15,56,0,213 - lea edi,DWORD PTR 16[edi] - jnz $L030ccm64_enc_outer - mov esp,DWORD PTR 48[esp] - mov edi,DWORD PTR 40[esp] - movups XMMWORD PTR [edi],xmm3 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ccm64_encrypt_blocks ENDP -ALIGN 16 -_aesni_ccm64_decrypt_blocks PROC PUBLIC -$L_aesni_ccm64_decrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ecx,DWORD PTR 40[esp] - mov ebp,esp - sub esp,60 - and esp,-16 - mov DWORD PTR 48[esp],ebp - movdqu xmm7,XMMWORD PTR [ebx] - movdqu xmm3,XMMWORD PTR [ecx] - mov ecx,DWORD PTR 240[edx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ebx,1 - xor ebp,ebp - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov DWORD PTR 24[esp],ebp - mov DWORD PTR 28[esp],ebp - movdqa xmm5,XMMWORD PTR [esp] - movdqa xmm2,xmm7 - mov ebp,edx - mov ebx,ecx -DB 102,15,56,0,253 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L032enc1_loop_5: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L032enc1_loop_5 -DB 102,15,56,221,209 - shl ebx,4 - mov ecx,16 - movups xmm6,XMMWORD PTR [esi] - paddq xmm7,XMMWORD PTR 16[esp] - lea esi,QWORD PTR 16[esi] - sub ecx,ebx - lea edx,DWORD PTR 32[ebx*1+ebp] - mov ebx,ecx - jmp $L033ccm64_dec_outer -ALIGN 16 -$L033ccm64_dec_outer: - xorps xmm6,xmm2 - movdqa xmm2,xmm7 - movups XMMWORD PTR [edi],xmm6 - lea edi,DWORD PTR 16[edi] -DB 102,15,56,0,213 - sub eax,1 - jz $L034ccm64_dec_break - movups xmm0,XMMWORD PTR [ebp] - mov ecx,ebx - movups xmm1,XMMWORD PTR 16[ebp] - xorps xmm6,xmm0 - xorps xmm2,xmm0 - xorps xmm3,xmm6 - movups xmm0,XMMWORD PTR 32[ebp] -$L035ccm64_dec2_loop: -DB 102,15,56,220,209 -DB 102,15,56,220,217 - movups xmm1,XMMWORD PTR [ecx*1+edx] - add ecx,32 -DB 102,15,56,220,208 -DB 102,15,56,220,216 - movups xmm0,XMMWORD PTR [ecx*1+edx-16] - jnz $L035ccm64_dec2_loop - movups xmm6,XMMWORD PTR [esi] - paddq xmm7,XMMWORD PTR 16[esp] -DB 102,15,56,220,209 -DB 102,15,56,220,217 -DB 102,15,56,221,208 -DB 102,15,56,221,216 - lea esi,QWORD PTR 16[esi] - jmp $L033ccm64_dec_outer -ALIGN 16 -$L034ccm64_dec_break: - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm6,xmm0 - lea edx,DWORD PTR 32[edx] - xorps xmm3,xmm6 -$L036enc1_loop_6: -DB 102,15,56,220,217 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L036enc1_loop_6 -DB 102,15,56,221,217 - mov esp,DWORD PTR 48[esp] - mov edi,DWORD PTR 40[esp] - movups XMMWORD PTR [edi],xmm3 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ccm64_decrypt_blocks ENDP -ALIGN 16 -_aesni_ctr32_encrypt_blocks PROC PUBLIC -$L_aesni_ctr32_encrypt_blocks_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebx,DWORD PTR 36[esp] - mov ebp,esp - sub esp,88 - and esp,-16 - mov DWORD PTR 80[esp],ebp - cmp eax,1 - je $L037ctr32_one_shortcut - movdqu xmm7,XMMWORD PTR [ebx] - mov DWORD PTR [esp],202182159 - mov DWORD PTR 4[esp],134810123 - mov DWORD PTR 8[esp],67438087 - mov DWORD PTR 12[esp],66051 - mov ecx,6 - xor ebp,ebp - mov DWORD PTR 16[esp],ecx - mov DWORD PTR 20[esp],ecx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],ebp -DB 102,15,58,22,251,3 -DB 102,15,58,34,253,3 - mov ecx,DWORD PTR 240[edx] - bswap ebx - pxor xmm0,xmm0 - pxor xmm1,xmm1 - movdqa xmm2,XMMWORD PTR [esp] -DB 102,15,58,34,195,0 - lea ebp,DWORD PTR 3[ebx] -DB 102,15,58,34,205,0 - inc ebx -DB 102,15,58,34,195,1 - inc ebp -DB 102,15,58,34,205,1 - inc ebx -DB 102,15,58,34,195,2 - inc ebp -DB 102,15,58,34,205,2 - movdqa XMMWORD PTR 48[esp],xmm0 -DB 102,15,56,0,194 - movdqu xmm6,XMMWORD PTR [edx] - movdqa XMMWORD PTR 64[esp],xmm1 -DB 102,15,56,0,202 - pshufd xmm2,xmm0,192 - pshufd xmm3,xmm0,128 - cmp eax,6 - jb $L038ctr32_tail - pxor xmm7,xmm6 - shl ecx,4 - mov ebx,16 - movdqa XMMWORD PTR 32[esp],xmm7 - mov ebp,edx - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - sub eax,6 - jmp $L039ctr32_loop6 -ALIGN 16 -$L039ctr32_loop6: - pshufd xmm4,xmm0,64 - movdqa xmm0,XMMWORD PTR 32[esp] - pshufd xmm5,xmm1,192 - pxor xmm2,xmm0 - pshufd xmm6,xmm1,128 - pxor xmm3,xmm0 - pshufd xmm7,xmm1,64 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm4,xmm0 - pxor xmm5,xmm0 -DB 102,15,56,220,209 - pxor xmm6,xmm0 - pxor xmm7,xmm0 -DB 102,15,56,220,217 - movups xmm0,XMMWORD PTR 32[ebp] - mov ecx,ebx -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - call $L_aesni_encrypt6_enter - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm3,xmm0 - movups XMMWORD PTR [edi],xmm2 - movdqa xmm0,XMMWORD PTR 16[esp] - xorps xmm4,xmm1 - movdqa xmm1,XMMWORD PTR 64[esp] - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - paddd xmm1,xmm0 - paddd xmm0,XMMWORD PTR 48[esp] - movdqa xmm2,XMMWORD PTR [esp] - movups xmm3,XMMWORD PTR 48[esi] - movups xmm4,XMMWORD PTR 64[esi] - xorps xmm5,xmm3 - movups xmm3,XMMWORD PTR 80[esi] - lea esi,DWORD PTR 96[esi] - movdqa XMMWORD PTR 48[esp],xmm0 -DB 102,15,56,0,194 - xorps xmm6,xmm4 - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm1 -DB 102,15,56,0,202 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,192 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - pshufd xmm3,xmm0,128 - sub eax,6 - jnc $L039ctr32_loop6 - add eax,6 - jz $L040ctr32_ret - movdqu xmm7,XMMWORD PTR [ebp] - mov edx,ebp - pxor xmm7,XMMWORD PTR 32[esp] - mov ecx,DWORD PTR 240[ebp] -$L038ctr32_tail: - por xmm2,xmm7 - cmp eax,2 - jb $L041ctr32_one - pshufd xmm4,xmm0,64 - por xmm3,xmm7 - je $L042ctr32_two - pshufd xmm5,xmm1,192 - por xmm4,xmm7 - cmp eax,4 - jb $L043ctr32_three - pshufd xmm6,xmm1,128 - por xmm5,xmm7 - je $L044ctr32_four - por xmm6,xmm7 - call __aesni_encrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm3,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm4,xmm1 - movups xmm1,XMMWORD PTR 64[esi] - xorps xmm5,xmm0 - movups XMMWORD PTR [edi],xmm2 - xorps xmm6,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - jmp $L040ctr32_ret -ALIGN 16 -$L037ctr32_one_shortcut: - movups xmm2,XMMWORD PTR [ebx] - mov ecx,DWORD PTR 240[edx] -$L041ctr32_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L045enc1_loop_7: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L045enc1_loop_7 -DB 102,15,56,221,209 - movups xmm6,XMMWORD PTR [esi] - xorps xmm6,xmm2 - movups XMMWORD PTR [edi],xmm6 - jmp $L040ctr32_ret -ALIGN 16 -$L042ctr32_two: - call __aesni_encrypt2 - movups xmm5,XMMWORD PTR [esi] - movups xmm6,XMMWORD PTR 16[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - jmp $L040ctr32_ret -ALIGN 16 -$L043ctr32_three: - call __aesni_encrypt3 - movups xmm5,XMMWORD PTR [esi] - movups xmm6,XMMWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm7,XMMWORD PTR 32[esi] - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm7 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - jmp $L040ctr32_ret -ALIGN 16 -$L044ctr32_four: - call __aesni_encrypt4 - movups xmm6,XMMWORD PTR [esi] - movups xmm7,XMMWORD PTR 16[esi] - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm2,xmm6 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm3,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,xmm0 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 -$L040ctr32_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - mov esp,DWORD PTR 80[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_ctr32_encrypt_blocks ENDP -ALIGN 16 -_aesni_xts_encrypt PROC PUBLIC -$L_aesni_xts_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov edx,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 240[edx] - movups xmm2,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L046enc1_loop_8: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L046enc1_loop_8 -DB 102,15,56,221,209 - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - sub esp,120 - mov ecx,DWORD PTR 240[edx] - and esp,-16 - mov DWORD PTR 96[esp],135 - mov DWORD PTR 100[esp],0 - mov DWORD PTR 104[esp],1 - mov DWORD PTR 108[esp],0 - mov DWORD PTR 112[esp],eax - mov DWORD PTR 116[esp],ebp - movdqa xmm1,xmm2 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - pcmpgtd xmm0,xmm1 - and eax,-16 - mov ebp,edx - mov ebx,ecx - sub eax,96 - jc $L047xts_enc_short - shl ecx,4 - mov ebx,16 - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - jmp $L048xts_enc_loop6 -ALIGN 16 -$L048xts_enc_loop6: - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR [esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 16[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 32[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 64[esp],xmm1 - paddq xmm1,xmm1 - movups xmm0,XMMWORD PTR [ebp] - pand xmm7,xmm3 - movups xmm2,XMMWORD PTR [esi] - pxor xmm7,xmm1 - mov ecx,ebx - movdqu xmm3,XMMWORD PTR 16[esi] - xorps xmm2,xmm0 - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm3,xmm0 - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm4,xmm0 - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm5,xmm0 - movdqu xmm1,XMMWORD PTR 80[esi] - pxor xmm6,xmm0 - lea esi,DWORD PTR 96[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqa XMMWORD PTR 80[esp],xmm7 - pxor xmm7,xmm1 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm3,XMMWORD PTR 16[esp] - pxor xmm4,XMMWORD PTR 32[esp] -DB 102,15,56,220,209 - pxor xmm5,XMMWORD PTR 48[esp] - pxor xmm6,XMMWORD PTR 64[esp] -DB 102,15,56,220,217 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -DB 102,15,56,220,225 -DB 102,15,56,220,233 -DB 102,15,56,220,241 -DB 102,15,56,220,249 - call $L_aesni_encrypt6_enter - movdqa xmm1,XMMWORD PTR 80[esp] - pxor xmm0,xmm0 - xorps xmm2,XMMWORD PTR [esp] - pcmpgtd xmm0,xmm1 - xorps xmm3,XMMWORD PTR 16[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 32[edi],xmm4 - xorps xmm6,XMMWORD PTR 64[esp] - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm1 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,19 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqa xmm3,XMMWORD PTR 96[esp] - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - sub eax,96 - jnc $L048xts_enc_loop6 - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - mov ebx,ecx -$L047xts_enc_short: - add eax,96 - jz $L049xts_enc_done6x - movdqa xmm5,xmm1 - cmp eax,32 - jb $L050xts_enc_one - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - je $L051xts_enc_two - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - cmp eax,64 - jb $L052xts_enc_three - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm7,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - movdqa XMMWORD PTR [esp],xmm5 - movdqa XMMWORD PTR 16[esp],xmm6 - je $L053xts_enc_four - movdqa XMMWORD PTR 32[esp],xmm7 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm7,xmm3 - pxor xmm7,xmm1 - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm3,XMMWORD PTR 16[esp] - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm4,XMMWORD PTR 32[esp] - lea esi,DWORD PTR 80[esi] - pxor xmm5,XMMWORD PTR 48[esp] - movdqa XMMWORD PTR 64[esp],xmm7 - pxor xmm6,xmm7 - call __aesni_encrypt6 - movaps xmm1,XMMWORD PTR 64[esp] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm6,xmm1 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - jmp $L054xts_enc_done -ALIGN 16 -$L050xts_enc_one: - movups xmm2,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L055enc1_loop_9: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L055enc1_loop_9 -DB 102,15,56,221,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - movdqa xmm1,xmm5 - jmp $L054xts_enc_done -ALIGN 16 -$L051xts_enc_two: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - lea esi,DWORD PTR 32[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - call __aesni_encrypt2 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea edi,DWORD PTR 32[edi] - movdqa xmm1,xmm6 - jmp $L054xts_enc_done -ALIGN 16 -$L052xts_enc_three: - movaps xmm7,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - lea esi,DWORD PTR 48[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - call __aesni_encrypt3 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - lea edi,DWORD PTR 48[edi] - movdqa xmm1,xmm7 - jmp $L054xts_enc_done -ALIGN 16 -$L053xts_enc_four: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - xorps xmm2,XMMWORD PTR [esp] - movups xmm5,XMMWORD PTR 48[esi] - lea esi,DWORD PTR 64[esi] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - xorps xmm5,xmm6 - call __aesni_encrypt4 - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,xmm6 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - lea edi,DWORD PTR 64[edi] - movdqa xmm1,xmm6 - jmp $L054xts_enc_done -ALIGN 16 -$L049xts_enc_done6x: - mov eax,DWORD PTR 112[esp] - and eax,15 - jz $L056xts_enc_ret - movdqa xmm5,xmm1 - mov DWORD PTR 112[esp],eax - jmp $L057xts_enc_steal -ALIGN 16 -$L054xts_enc_done: - mov eax,DWORD PTR 112[esp] - pxor xmm0,xmm0 - and eax,15 - jz $L056xts_enc_ret - pcmpgtd xmm0,xmm1 - mov DWORD PTR 112[esp],eax - pshufd xmm5,xmm0,19 - paddq xmm1,xmm1 - pand xmm5,XMMWORD PTR 96[esp] - pxor xmm5,xmm1 -$L057xts_enc_steal: - movzx ecx,BYTE PTR [esi] - movzx edx,BYTE PTR [edi-16] - lea esi,DWORD PTR 1[esi] - mov BYTE PTR [edi-16],cl - mov BYTE PTR [edi],dl - lea edi,DWORD PTR 1[edi] - sub eax,1 - jnz $L057xts_enc_steal - sub edi,DWORD PTR 112[esp] - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [edi-16] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L058enc1_loop_10: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L058enc1_loop_10 -DB 102,15,56,221,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi-16],xmm2 -$L056xts_enc_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movdqa XMMWORD PTR [esp],xmm0 - pxor xmm3,xmm3 - movdqa XMMWORD PTR 16[esp],xmm0 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - movdqa XMMWORD PTR 80[esp],xmm0 - mov esp,DWORD PTR 116[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_xts_encrypt ENDP -ALIGN 16 -_aesni_xts_decrypt PROC PUBLIC -$L_aesni_xts_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov edx,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 240[edx] - movups xmm2,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L059enc1_loop_11: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L059enc1_loop_11 -DB 102,15,56,221,209 - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - sub esp,120 - and esp,-16 - xor ebx,ebx - test eax,15 - setnz bl - shl ebx,4 - sub eax,ebx - mov DWORD PTR 96[esp],135 - mov DWORD PTR 100[esp],0 - mov DWORD PTR 104[esp],1 - mov DWORD PTR 108[esp],0 - mov DWORD PTR 112[esp],eax - mov DWORD PTR 116[esp],ebp - mov ecx,DWORD PTR 240[edx] - mov ebp,edx - mov ebx,ecx - movdqa xmm1,xmm2 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - pcmpgtd xmm0,xmm1 - and eax,-16 - sub eax,96 - jc $L060xts_dec_short - shl ecx,4 - mov ebx,16 - sub ebx,ecx - lea edx,DWORD PTR 32[ecx*1+edx] - jmp $L061xts_dec_loop6 -ALIGN 16 -$L061xts_dec_loop6: - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR [esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 16[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 32[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 64[esp],xmm1 - paddq xmm1,xmm1 - movups xmm0,XMMWORD PTR [ebp] - pand xmm7,xmm3 - movups xmm2,XMMWORD PTR [esi] - pxor xmm7,xmm1 - mov ecx,ebx - movdqu xmm3,XMMWORD PTR 16[esi] - xorps xmm2,xmm0 - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm3,xmm0 - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm4,xmm0 - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm5,xmm0 - movdqu xmm1,XMMWORD PTR 80[esi] - pxor xmm6,xmm0 - lea esi,DWORD PTR 96[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqa XMMWORD PTR 80[esp],xmm7 - pxor xmm7,xmm1 - movups xmm1,XMMWORD PTR 16[ebp] - pxor xmm3,XMMWORD PTR 16[esp] - pxor xmm4,XMMWORD PTR 32[esp] -DB 102,15,56,222,209 - pxor xmm5,XMMWORD PTR 48[esp] - pxor xmm6,XMMWORD PTR 64[esp] -DB 102,15,56,222,217 - pxor xmm7,xmm0 - movups xmm0,XMMWORD PTR 32[ebp] -DB 102,15,56,222,225 -DB 102,15,56,222,233 -DB 102,15,56,222,241 -DB 102,15,56,222,249 - call $L_aesni_decrypt6_enter - movdqa xmm1,XMMWORD PTR 80[esp] - pxor xmm0,xmm0 - xorps xmm2,XMMWORD PTR [esp] - pcmpgtd xmm0,xmm1 - xorps xmm3,XMMWORD PTR 16[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 32[edi],xmm4 - xorps xmm6,XMMWORD PTR 64[esp] - movups XMMWORD PTR 48[edi],xmm5 - xorps xmm7,xmm1 - movups XMMWORD PTR 64[edi],xmm6 - pshufd xmm2,xmm0,19 - movups XMMWORD PTR 80[edi],xmm7 - lea edi,DWORD PTR 96[edi] - movdqa xmm3,XMMWORD PTR 96[esp] - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - sub eax,96 - jnc $L061xts_dec_loop6 - mov ecx,DWORD PTR 240[ebp] - mov edx,ebp - mov ebx,ecx -$L060xts_dec_short: - add eax,96 - jz $L062xts_dec_done6x - movdqa xmm5,xmm1 - cmp eax,32 - jb $L063xts_dec_one - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - je $L064xts_dec_two - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - cmp eax,64 - jb $L065xts_dec_three - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm7,xmm1 - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 - movdqa XMMWORD PTR [esp],xmm5 - movdqa XMMWORD PTR 16[esp],xmm6 - je $L066xts_dec_four - movdqa XMMWORD PTR 32[esp],xmm7 - pshufd xmm7,xmm0,19 - movdqa XMMWORD PTR 48[esp],xmm1 - paddq xmm1,xmm1 - pand xmm7,xmm3 - pxor xmm7,xmm1 - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - pxor xmm2,XMMWORD PTR [esp] - movdqu xmm5,XMMWORD PTR 48[esi] - pxor xmm3,XMMWORD PTR 16[esp] - movdqu xmm6,XMMWORD PTR 64[esi] - pxor xmm4,XMMWORD PTR 32[esp] - lea esi,DWORD PTR 80[esi] - pxor xmm5,XMMWORD PTR 48[esp] - movdqa XMMWORD PTR 64[esp],xmm7 - pxor xmm6,xmm7 - call __aesni_decrypt6 - movaps xmm1,XMMWORD PTR 64[esp] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,XMMWORD PTR 32[esp] - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,XMMWORD PTR 48[esp] - movups XMMWORD PTR 16[edi],xmm3 - xorps xmm6,xmm1 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - jmp $L067xts_dec_done -ALIGN 16 -$L063xts_dec_one: - movups xmm2,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L068dec1_loop_12: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L068dec1_loop_12 -DB 102,15,56,223,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - movdqa xmm1,xmm5 - jmp $L067xts_dec_done -ALIGN 16 -$L064xts_dec_two: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - lea esi,DWORD PTR 32[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - call __aesni_decrypt2 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea edi,DWORD PTR 32[edi] - movdqa xmm1,xmm6 - jmp $L067xts_dec_done -ALIGN 16 -$L065xts_dec_three: - movaps xmm7,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - lea esi,DWORD PTR 48[esi] - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - call __aesni_decrypt3 - xorps xmm2,xmm5 - xorps xmm3,xmm6 - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - lea edi,DWORD PTR 48[edi] - movdqa xmm1,xmm7 - jmp $L067xts_dec_done -ALIGN 16 -$L066xts_dec_four: - movaps xmm6,xmm1 - movups xmm2,XMMWORD PTR [esi] - movups xmm3,XMMWORD PTR 16[esi] - movups xmm4,XMMWORD PTR 32[esi] - xorps xmm2,XMMWORD PTR [esp] - movups xmm5,XMMWORD PTR 48[esi] - lea esi,DWORD PTR 64[esi] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - xorps xmm5,xmm6 - call __aesni_decrypt4 - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,XMMWORD PTR 16[esp] - xorps xmm4,xmm7 - movups XMMWORD PTR [edi],xmm2 - xorps xmm5,xmm6 - movups XMMWORD PTR 16[edi],xmm3 - movups XMMWORD PTR 32[edi],xmm4 - movups XMMWORD PTR 48[edi],xmm5 - lea edi,DWORD PTR 64[edi] - movdqa xmm1,xmm6 - jmp $L067xts_dec_done -ALIGN 16 -$L062xts_dec_done6x: - mov eax,DWORD PTR 112[esp] - and eax,15 - jz $L069xts_dec_ret - mov DWORD PTR 112[esp],eax - jmp $L070xts_dec_only_one_more -ALIGN 16 -$L067xts_dec_done: - mov eax,DWORD PTR 112[esp] - pxor xmm0,xmm0 - and eax,15 - jz $L069xts_dec_ret - pcmpgtd xmm0,xmm1 - mov DWORD PTR 112[esp],eax - pshufd xmm2,xmm0,19 - pxor xmm0,xmm0 - movdqa xmm3,XMMWORD PTR 96[esp] - paddq xmm1,xmm1 - pand xmm2,xmm3 - pcmpgtd xmm0,xmm1 - pxor xmm1,xmm2 -$L070xts_dec_only_one_more: - pshufd xmm5,xmm0,19 - movdqa xmm6,xmm1 - paddq xmm1,xmm1 - pand xmm5,xmm3 - pxor xmm5,xmm1 - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [esi] - xorps xmm2,xmm5 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L071dec1_loop_13: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L071dec1_loop_13 -DB 102,15,56,223,209 - xorps xmm2,xmm5 - movups XMMWORD PTR [edi],xmm2 -$L072xts_dec_steal: - movzx ecx,BYTE PTR 16[esi] - movzx edx,BYTE PTR [edi] - lea esi,DWORD PTR 1[esi] - mov BYTE PTR [edi],cl - mov BYTE PTR 16[edi],dl - lea edi,DWORD PTR 1[edi] - sub eax,1 - jnz $L072xts_dec_steal - sub edi,DWORD PTR 112[esp] - mov edx,ebp - mov ecx,ebx - movups xmm2,XMMWORD PTR [edi] - xorps xmm2,xmm6 - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L073dec1_loop_14: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L073dec1_loop_14 -DB 102,15,56,223,209 - xorps xmm2,xmm6 - movups XMMWORD PTR [edi],xmm2 -$L069xts_dec_ret: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - movdqa XMMWORD PTR [esp],xmm0 - pxor xmm3,xmm3 - movdqa XMMWORD PTR 16[esp],xmm0 - pxor xmm4,xmm4 - movdqa XMMWORD PTR 32[esp],xmm0 - pxor xmm5,xmm5 - movdqa XMMWORD PTR 48[esp],xmm0 - pxor xmm6,xmm6 - movdqa XMMWORD PTR 64[esp],xmm0 - pxor xmm7,xmm7 - movdqa XMMWORD PTR 80[esp],xmm0 - mov esp,DWORD PTR 116[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_xts_decrypt ENDP -ALIGN 16 -_aesni_cbc_encrypt PROC PUBLIC -$L_aesni_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov ebx,esp - mov edi,DWORD PTR 24[esp] - sub ebx,24 - mov eax,DWORD PTR 28[esp] - and ebx,-16 - mov edx,DWORD PTR 32[esp] - mov ebp,DWORD PTR 36[esp] - test eax,eax - jz $L074cbc_abort - cmp DWORD PTR 40[esp],0 - xchg ebx,esp - movups xmm7,XMMWORD PTR [ebp] - mov ecx,DWORD PTR 240[edx] - mov ebp,edx - mov DWORD PTR 16[esp],ebx - mov ebx,ecx - je $L075cbc_decrypt - movaps xmm2,xmm7 - cmp eax,16 - jb $L076cbc_enc_tail - sub eax,16 - jmp $L077cbc_enc_loop -ALIGN 16 -$L077cbc_enc_loop: - movups xmm7,XMMWORD PTR [esi] - lea esi,DWORD PTR 16[esi] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - xorps xmm7,xmm0 - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm7 -$L078enc1_loop_15: -DB 102,15,56,220,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L078enc1_loop_15 -DB 102,15,56,221,209 - mov ecx,ebx - mov edx,ebp - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] - sub eax,16 - jnc $L077cbc_enc_loop - add eax,16 - jnz $L076cbc_enc_tail - movaps xmm7,xmm2 - pxor xmm2,xmm2 - jmp $L079cbc_ret -$L076cbc_enc_tail: - mov ecx,eax -DD 2767451785 - mov ecx,16 - sub ecx,eax - xor eax,eax -DD 2868115081 - lea edi,DWORD PTR [edi-16] - mov ecx,ebx - mov esi,edi - mov edx,ebp - jmp $L077cbc_enc_loop -ALIGN 16 -$L075cbc_decrypt: - cmp eax,80 - jbe $L080cbc_dec_tail - movaps XMMWORD PTR [esp],xmm7 - sub eax,80 - jmp $L081cbc_dec_loop6_enter -ALIGN 16 -$L082cbc_dec_loop6: - movaps XMMWORD PTR [esp],xmm0 - movups XMMWORD PTR [edi],xmm7 - lea edi,DWORD PTR 16[edi] -$L081cbc_dec_loop6_enter: - movdqu xmm2,XMMWORD PTR [esi] - movdqu xmm3,XMMWORD PTR 16[esi] - movdqu xmm4,XMMWORD PTR 32[esi] - movdqu xmm5,XMMWORD PTR 48[esi] - movdqu xmm6,XMMWORD PTR 64[esi] - movdqu xmm7,XMMWORD PTR 80[esi] - call __aesni_decrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm5,xmm1 - movups xmm1,XMMWORD PTR 64[esi] - xorps xmm6,xmm0 - movups xmm0,XMMWORD PTR 80[esi] - xorps xmm7,xmm1 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - lea esi,DWORD PTR 96[esi] - movups XMMWORD PTR 32[edi],xmm4 - mov ecx,ebx - movups XMMWORD PTR 48[edi],xmm5 - mov edx,ebp - movups XMMWORD PTR 64[edi],xmm6 - lea edi,DWORD PTR 80[edi] - sub eax,96 - ja $L082cbc_dec_loop6 - movaps xmm2,xmm7 - movaps xmm7,xmm0 - add eax,80 - jle $L083cbc_dec_clear_tail_collected - movups XMMWORD PTR [edi],xmm2 - lea edi,DWORD PTR 16[edi] -$L080cbc_dec_tail: - movups xmm2,XMMWORD PTR [esi] - movaps xmm6,xmm2 - cmp eax,16 - jbe $L084cbc_dec_one - movups xmm3,XMMWORD PTR 16[esi] - movaps xmm5,xmm3 - cmp eax,32 - jbe $L085cbc_dec_two - movups xmm4,XMMWORD PTR 32[esi] - cmp eax,48 - jbe $L086cbc_dec_three - movups xmm5,XMMWORD PTR 48[esi] - cmp eax,64 - jbe $L087cbc_dec_four - movups xmm6,XMMWORD PTR 64[esi] - movaps XMMWORD PTR [esp],xmm7 - movups xmm2,XMMWORD PTR [esi] - xorps xmm7,xmm7 - call __aesni_decrypt6 - movups xmm1,XMMWORD PTR [esi] - movups xmm0,XMMWORD PTR 16[esi] - xorps xmm2,XMMWORD PTR [esp] - xorps xmm3,xmm1 - movups xmm1,XMMWORD PTR 32[esi] - xorps xmm4,xmm0 - movups xmm0,XMMWORD PTR 48[esi] - xorps xmm5,xmm1 - movups xmm7,XMMWORD PTR 64[esi] - xorps xmm6,xmm0 - movups XMMWORD PTR [edi],xmm2 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - movups XMMWORD PTR 32[edi],xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR 48[edi],xmm5 - pxor xmm5,xmm5 - lea edi,DWORD PTR 64[edi] - movaps xmm2,xmm6 - pxor xmm6,xmm6 - sub eax,80 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L084cbc_dec_one: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR 16[edx] - lea edx,DWORD PTR 32[edx] - xorps xmm2,xmm0 -$L089dec1_loop_16: -DB 102,15,56,222,209 - dec ecx - movups xmm1,XMMWORD PTR [edx] - lea edx,DWORD PTR 16[edx] - jnz $L089dec1_loop_16 -DB 102,15,56,223,209 - xorps xmm2,xmm7 - movaps xmm7,xmm6 - sub eax,16 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L085cbc_dec_two: - call __aesni_decrypt2 - xorps xmm2,xmm7 - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - movaps xmm2,xmm3 - pxor xmm3,xmm3 - lea edi,DWORD PTR 16[edi] - movaps xmm7,xmm5 - sub eax,32 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L086cbc_dec_three: - call __aesni_decrypt3 - xorps xmm2,xmm7 - xorps xmm3,xmm6 - xorps xmm4,xmm5 - movups XMMWORD PTR [edi],xmm2 - movaps xmm2,xmm4 - pxor xmm4,xmm4 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - lea edi,DWORD PTR 32[edi] - movups xmm7,XMMWORD PTR 32[esi] - sub eax,48 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L087cbc_dec_four: - call __aesni_decrypt4 - movups xmm1,XMMWORD PTR 16[esi] - movups xmm0,XMMWORD PTR 32[esi] - xorps xmm2,xmm7 - movups xmm7,XMMWORD PTR 48[esi] - xorps xmm3,xmm6 - movups XMMWORD PTR [edi],xmm2 - xorps xmm4,xmm1 - movups XMMWORD PTR 16[edi],xmm3 - pxor xmm3,xmm3 - xorps xmm5,xmm0 - movups XMMWORD PTR 32[edi],xmm4 - pxor xmm4,xmm4 - lea edi,DWORD PTR 48[edi] - movaps xmm2,xmm5 - pxor xmm5,xmm5 - sub eax,64 - jmp $L088cbc_dec_tail_collected -ALIGN 16 -$L083cbc_dec_clear_tail_collected: - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 -$L088cbc_dec_tail_collected: - and eax,15 - jnz $L090cbc_dec_tail_partial - movups XMMWORD PTR [edi],xmm2 - pxor xmm0,xmm0 - jmp $L079cbc_ret -ALIGN 16 -$L090cbc_dec_tail_partial: - movaps XMMWORD PTR [esp],xmm2 - pxor xmm0,xmm0 - mov ecx,16 - mov esi,esp - sub ecx,eax -DD 2767451785 - movdqa XMMWORD PTR [esp],xmm2 -$L079cbc_ret: - mov esp,DWORD PTR 16[esp] - mov ebp,DWORD PTR 36[esp] - pxor xmm2,xmm2 - pxor xmm1,xmm1 - movups XMMWORD PTR [ebp],xmm7 - pxor xmm7,xmm7 -$L074cbc_abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_aesni_cbc_encrypt ENDP -ALIGN 16 -__aesni_set_encrypt_key PROC PRIVATE - push ebp - push ebx - test eax,eax - jz $L091bad_pointer - test edx,edx - jz $L091bad_pointer - call $L092pic -$L092pic: - pop ebx - lea ebx,DWORD PTR ($Lkey_const-$L092pic)[ebx] - lea ebp,DWORD PTR _OPENSSL_ia32cap_P - movups xmm0,XMMWORD PTR [eax] - xorps xmm4,xmm4 - mov ebp,DWORD PTR 4[ebp] - lea edx,DWORD PTR 16[edx] - and ebp,268437504 - cmp ecx,256 - je $L09314rounds - cmp ecx,192 - je $L09412rounds - cmp ecx,128 - jne $L095bad_keybits -ALIGN 16 -$L09610rounds: - cmp ebp,268435456 - je $L09710rounds_alt - mov ecx,9 - movups XMMWORD PTR [edx-16],xmm0 -DB 102,15,58,223,200,1 - call $L098key_128_cold -DB 102,15,58,223,200,2 - call $L099key_128 -DB 102,15,58,223,200,4 - call $L099key_128 -DB 102,15,58,223,200,8 - call $L099key_128 -DB 102,15,58,223,200,16 - call $L099key_128 -DB 102,15,58,223,200,32 - call $L099key_128 -DB 102,15,58,223,200,64 - call $L099key_128 -DB 102,15,58,223,200,128 - call $L099key_128 -DB 102,15,58,223,200,27 - call $L099key_128 -DB 102,15,58,223,200,54 - call $L099key_128 - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 80[edx],ecx - jmp $L100good_key -ALIGN 16 -$L099key_128: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] -$L098key_128_cold: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - ret -ALIGN 16 -$L09710rounds_alt: - movdqa xmm5,XMMWORD PTR [ebx] - mov ecx,8 - movdqa xmm4,XMMWORD PTR 32[ebx] - movdqa xmm2,xmm0 - movdqu XMMWORD PTR [edx-16],xmm0 -$L101loop_key128: -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - lea edx,DWORD PTR 16[edx] - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx-16],xmm0 - movdqa xmm2,xmm0 - dec ecx - jnz $L101loop_key128 - movdqa xmm4,XMMWORD PTR 48[ebx] -DB 102,15,56,0,197 -DB 102,15,56,221,196 - pslld xmm4,1 - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx],xmm0 - movdqa xmm2,xmm0 -DB 102,15,56,0,197 -DB 102,15,56,221,196 - movdqa xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm3,xmm2 - pslldq xmm2,4 - pxor xmm2,xmm3 - pxor xmm0,xmm2 - movdqu XMMWORD PTR 16[edx],xmm0 - mov ecx,9 - mov DWORD PTR 96[edx],ecx - jmp $L100good_key -ALIGN 16 -$L09412rounds: - movq xmm2,QWORD PTR 16[eax] - cmp ebp,268435456 - je $L10212rounds_alt - mov ecx,11 - movups XMMWORD PTR [edx-16],xmm0 -DB 102,15,58,223,202,1 - call $L103key_192a_cold -DB 102,15,58,223,202,2 - call $L104key_192b -DB 102,15,58,223,202,4 - call $L105key_192a -DB 102,15,58,223,202,8 - call $L104key_192b -DB 102,15,58,223,202,16 - call $L105key_192a -DB 102,15,58,223,202,32 - call $L104key_192b -DB 102,15,58,223,202,64 - call $L105key_192a -DB 102,15,58,223,202,128 - call $L104key_192b - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 48[edx],ecx - jmp $L100good_key -ALIGN 16 -$L105key_192a: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] -ALIGN 16 -$L103key_192a_cold: - movaps xmm5,xmm2 -$L106key_192b_warm: - shufps xmm4,xmm0,16 - movdqa xmm3,xmm2 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - pslldq xmm3,4 - xorps xmm0,xmm4 - pshufd xmm1,xmm1,85 - pxor xmm2,xmm3 - pxor xmm0,xmm1 - pshufd xmm3,xmm0,255 - pxor xmm2,xmm3 - ret -ALIGN 16 -$L104key_192b: - movaps xmm3,xmm0 - shufps xmm5,xmm0,68 - movups XMMWORD PTR [edx],xmm5 - shufps xmm3,xmm2,78 - movups XMMWORD PTR 16[edx],xmm3 - lea edx,DWORD PTR 32[edx] - jmp $L106key_192b_warm -ALIGN 16 -$L10212rounds_alt: - movdqa xmm5,XMMWORD PTR 16[ebx] - movdqa xmm4,XMMWORD PTR 32[ebx] - mov ecx,8 - movdqu XMMWORD PTR [edx-16],xmm0 -$L107loop_key192: - movq QWORD PTR [edx],xmm2 - movdqa xmm1,xmm2 -DB 102,15,56,0,213 -DB 102,15,56,221,212 - pslld xmm4,1 - lea edx,DWORD PTR 24[edx] - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pshufd xmm3,xmm0,255 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pxor xmm0,xmm2 - pxor xmm2,xmm3 - movdqu XMMWORD PTR [edx-16],xmm0 - dec ecx - jnz $L107loop_key192 - mov ecx,11 - mov DWORD PTR 32[edx],ecx - jmp $L100good_key -ALIGN 16 -$L09314rounds: - movups xmm2,XMMWORD PTR 16[eax] - lea edx,DWORD PTR 16[edx] - cmp ebp,268435456 - je $L10814rounds_alt - mov ecx,13 - movups XMMWORD PTR [edx-32],xmm0 - movups XMMWORD PTR [edx-16],xmm2 -DB 102,15,58,223,202,1 - call $L109key_256a_cold -DB 102,15,58,223,200,1 - call $L110key_256b -DB 102,15,58,223,202,2 - call $L111key_256a -DB 102,15,58,223,200,2 - call $L110key_256b -DB 102,15,58,223,202,4 - call $L111key_256a -DB 102,15,58,223,200,4 - call $L110key_256b -DB 102,15,58,223,202,8 - call $L111key_256a -DB 102,15,58,223,200,8 - call $L110key_256b -DB 102,15,58,223,202,16 - call $L111key_256a -DB 102,15,58,223,200,16 - call $L110key_256b -DB 102,15,58,223,202,32 - call $L111key_256a -DB 102,15,58,223,200,32 - call $L110key_256b -DB 102,15,58,223,202,64 - call $L111key_256a - movups XMMWORD PTR [edx],xmm0 - mov DWORD PTR 16[edx],ecx - xor eax,eax - jmp $L100good_key -ALIGN 16 -$L111key_256a: - movups XMMWORD PTR [edx],xmm2 - lea edx,DWORD PTR 16[edx] -$L109key_256a_cold: - shufps xmm4,xmm0,16 - xorps xmm0,xmm4 - shufps xmm4,xmm0,140 - xorps xmm0,xmm4 - shufps xmm1,xmm1,255 - xorps xmm0,xmm1 - ret -ALIGN 16 -$L110key_256b: - movups XMMWORD PTR [edx],xmm0 - lea edx,DWORD PTR 16[edx] - shufps xmm4,xmm2,16 - xorps xmm2,xmm4 - shufps xmm4,xmm2,140 - xorps xmm2,xmm4 - shufps xmm1,xmm1,170 - xorps xmm2,xmm1 - ret -ALIGN 16 -$L10814rounds_alt: - movdqa xmm5,XMMWORD PTR [ebx] - movdqa xmm4,XMMWORD PTR 32[ebx] - mov ecx,7 - movdqu XMMWORD PTR [edx-32],xmm0 - movdqa xmm1,xmm2 - movdqu XMMWORD PTR [edx-16],xmm2 -$L112loop_key256: -DB 102,15,56,0,213 -DB 102,15,56,221,212 - movdqa xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm3,xmm0 - pslldq xmm0,4 - pxor xmm0,xmm3 - pslld xmm4,1 - pxor xmm0,xmm2 - movdqu XMMWORD PTR [edx],xmm0 - dec ecx - jz $L113done_key256 - pshufd xmm2,xmm0,255 - pxor xmm3,xmm3 -DB 102,15,56,221,211 - movdqa xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm3,xmm1 - pslldq xmm1,4 - pxor xmm1,xmm3 - pxor xmm2,xmm1 - movdqu XMMWORD PTR 16[edx],xmm2 - lea edx,DWORD PTR 32[edx] - movdqa xmm1,xmm2 - jmp $L112loop_key256 -$L113done_key256: - mov ecx,13 - mov DWORD PTR 16[edx],ecx -$L100good_key: - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - xor eax,eax - pop ebx - pop ebp - ret -ALIGN 4 -$L091bad_pointer: - mov eax,-1 - pop ebx - pop ebp - ret -ALIGN 4 -$L095bad_keybits: - pxor xmm0,xmm0 - mov eax,-2 - pop ebx - pop ebp - ret -__aesni_set_encrypt_key ENDP -ALIGN 16 -_aesni_set_encrypt_key PROC PUBLIC -$L_aesni_set_encrypt_key_begin:: - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - call __aesni_set_encrypt_key - ret -_aesni_set_encrypt_key ENDP -ALIGN 16 -_aesni_set_decrypt_key PROC PUBLIC -$L_aesni_set_decrypt_key_begin:: - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - call __aesni_set_encrypt_key - mov edx,DWORD PTR 12[esp] - shl ecx,4 - test eax,eax - jnz $L114dec_key_ret - lea eax,DWORD PTR 16[ecx*1+edx] - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR [eax] - movups XMMWORD PTR [eax],xmm0 - movups XMMWORD PTR [edx],xmm1 - lea edx,DWORD PTR 16[edx] - lea eax,DWORD PTR [eax-16] -$L115dec_key_inverse: - movups xmm0,XMMWORD PTR [edx] - movups xmm1,XMMWORD PTR [eax] -DB 102,15,56,219,192 -DB 102,15,56,219,201 - lea edx,DWORD PTR 16[edx] - lea eax,DWORD PTR [eax-16] - movups XMMWORD PTR 16[eax],xmm0 - movups XMMWORD PTR [edx-16],xmm1 - cmp eax,edx - ja $L115dec_key_inverse - movups xmm0,XMMWORD PTR [edx] -DB 102,15,56,219,192 - movups XMMWORD PTR [edx],xmm0 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - xor eax,eax -$L114dec_key_ret: - ret -_aesni_set_decrypt_key ENDP -ALIGN 64 -$Lkey_const:: -DD 202313229,202313229,202313229,202313229 -DD 67569157,67569157,67569157,67569157 -DD 1,1,1,1 -DD 27,27,27,27 -DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 -DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/aes/vpaes-x86.asm b/deps/openssl/asm_obsolete/x86-win32-masm/aes/vpaes-x86.asm deleted file mode 100644 index 57afc202bb7f31..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/aes/vpaes-x86.asm +++ /dev/null @@ -1,662 +0,0 @@ -TITLE vpaes-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 64 -$L_vpaes_consts:: -DD 218628480,235210255,168496130,67568393 -DD 252381056,17041926,33884169,51187212 -DD 252645135,252645135,252645135,252645135 -DD 1512730624,3266504856,1377990664,3401244816 -DD 830229760,1275146365,2969422977,3447763452 -DD 3411033600,2979783055,338359620,2782886510 -DD 4209124096,907596821,221174255,1006095553 -DD 191964160,3799684038,3164090317,1589111125 -DD 182528256,1777043520,2877432650,3265356744 -DD 1874708224,3503451415,3305285752,363511674 -DD 1606117888,3487855781,1093350906,2384367825 -DD 197121,67569157,134941193,202313229 -DD 67569157,134941193,202313229,197121 -DD 134941193,202313229,197121,67569157 -DD 202313229,197121,67569157,134941193 -DD 33619971,100992007,168364043,235736079 -DD 235736079,33619971,100992007,168364043 -DD 168364043,235736079,33619971,100992007 -DD 100992007,168364043,235736079,33619971 -DD 50462976,117835012,185207048,252579084 -DD 252314880,51251460,117574920,184942860 -DD 184682752,252054788,50987272,118359308 -DD 118099200,185467140,251790600,50727180 -DD 2946363062,528716217,1300004225,1881839624 -DD 1532713819,1532713819,1532713819,1532713819 -DD 3602276352,4288629033,3737020424,4153884961 -DD 1354558464,32357713,2958822624,3775749553 -DD 1201988352,132424512,1572796698,503232858 -DD 2213177600,1597421020,4103937655,675398315 -DD 2749646592,4273543773,1511898873,121693092 -DD 3040248576,1103263732,2871565598,1608280554 -DD 2236667136,2588920351,482954393,64377734 -DD 3069987328,291237287,2117370568,3650299247 -DD 533321216,3573750986,2572112006,1401264716 -DD 1339849704,2721158661,548607111,3445553514 -DD 2128193280,3054596040,2183486460,1257083700 -DD 655635200,1165381986,3923443150,2344132524 -DD 190078720,256924420,290342170,357187870 -DD 1610966272,2263057382,4103205268,309794674 -DD 2592527872,2233205587,1335446729,3402964816 -DD 3973531904,3225098121,3002836325,1918774430 -DD 3870401024,2102906079,2284471353,4117666579 -DD 617007872,1021508343,366931923,691083277 -DD 2528395776,3491914898,2968704004,1613121270 -DD 3445188352,3247741094,844474987,4093578302 -DD 651481088,1190302358,1689581232,574775300 -DD 4289380608,206939853,2555985458,2489840491 -DD 2130264064,327674451,3566485037,3349835193 -DD 2470714624,316102159,3636825756,3393945945 -DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105 -DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,47,83 -DB 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117 -DB 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105 -DB 118,101,114,115,105,116,121,41,0 -ALIGN 64 -ALIGN 16 -__vpaes_preheat PROC PRIVATE - add ebp,DWORD PTR [esp] - movdqa xmm7,XMMWORD PTR [ebp-48] - movdqa xmm6,XMMWORD PTR [ebp-16] - ret -__vpaes_preheat ENDP -ALIGN 16 -__vpaes_encrypt_core PROC PRIVATE - mov ecx,16 - mov eax,DWORD PTR 240[edx] - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebp] - pandn xmm1,xmm0 - pand xmm0,xmm6 - movdqu xmm5,XMMWORD PTR [edx] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR 16[ebp] - pxor xmm2,xmm5 - psrld xmm1,4 - add edx,16 -DB 102,15,56,0,193 - lea ebx,DWORD PTR 192[ebp] - pxor xmm0,xmm2 - jmp $L000enc_entry -ALIGN 16 -$L001enc_loop: - movdqa xmm4,XMMWORD PTR 32[ebp] - movdqa xmm0,XMMWORD PTR 48[ebp] -DB 102,15,56,0,226 -DB 102,15,56,0,195 - pxor xmm4,xmm5 - movdqa xmm5,XMMWORD PTR 64[ebp] - pxor xmm0,xmm4 - movdqa xmm1,XMMWORD PTR [ecx*1+ebx-64] -DB 102,15,56,0,234 - movdqa xmm2,XMMWORD PTR 80[ebp] - movdqa xmm4,XMMWORD PTR [ecx*1+ebx] -DB 102,15,56,0,211 - movdqa xmm3,xmm0 - pxor xmm2,xmm5 -DB 102,15,56,0,193 - add edx,16 - pxor xmm0,xmm2 -DB 102,15,56,0,220 - add ecx,16 - pxor xmm3,xmm0 -DB 102,15,56,0,193 - and ecx,48 - sub eax,1 - pxor xmm0,xmm3 -$L000enc_entry: - movdqa xmm1,xmm6 - movdqa xmm5,XMMWORD PTR [ebp-32] - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm6 -DB 102,15,56,0,232 - movdqa xmm3,xmm7 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm7 - pxor xmm3,xmm5 -DB 102,15,56,0,224 - movdqa xmm2,xmm7 - pxor xmm4,xmm5 -DB 102,15,56,0,211 - movdqa xmm3,xmm7 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm5,XMMWORD PTR [edx] - pxor xmm3,xmm1 - jnz $L001enc_loop - movdqa xmm4,XMMWORD PTR 96[ebp] - movdqa xmm0,XMMWORD PTR 112[ebp] -DB 102,15,56,0,226 - pxor xmm4,xmm5 -DB 102,15,56,0,195 - movdqa xmm1,XMMWORD PTR 64[ecx*1+ebx] - pxor xmm0,xmm4 -DB 102,15,56,0,193 - ret -__vpaes_encrypt_core ENDP -ALIGN 16 -__vpaes_decrypt_core PROC PRIVATE - lea ebx,DWORD PTR 608[ebp] - mov eax,DWORD PTR 240[edx] - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebx-64] - pandn xmm1,xmm0 - mov ecx,eax - psrld xmm1,4 - movdqu xmm5,XMMWORD PTR [edx] - shl ecx,4 - pand xmm0,xmm6 -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR [ebx-48] - xor ecx,48 -DB 102,15,56,0,193 - and ecx,48 - pxor xmm2,xmm5 - movdqa xmm5,XMMWORD PTR 176[ebp] - pxor xmm0,xmm2 - add edx,16 - lea ecx,DWORD PTR [ecx*1+ebx-352] - jmp $L002dec_entry -ALIGN 16 -$L003dec_loop: - movdqa xmm4,XMMWORD PTR [ebx-32] - movdqa xmm1,XMMWORD PTR [ebx-16] -DB 102,15,56,0,226 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR [ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 16[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR 32[ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 48[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - movdqa xmm4,XMMWORD PTR 64[ebx] - pxor xmm0,xmm1 - movdqa xmm1,XMMWORD PTR 80[ebx] -DB 102,15,56,0,226 -DB 102,15,56,0,197 -DB 102,15,56,0,203 - pxor xmm0,xmm4 - add edx,16 -DB 102,15,58,15,237,12 - pxor xmm0,xmm1 - sub eax,1 -$L002dec_entry: - movdqa xmm1,xmm6 - movdqa xmm2,XMMWORD PTR [ebp-32] - pandn xmm1,xmm0 - pand xmm0,xmm6 - psrld xmm1,4 -DB 102,15,56,0,208 - movdqa xmm3,xmm7 - pxor xmm0,xmm1 -DB 102,15,56,0,217 - movdqa xmm4,xmm7 - pxor xmm3,xmm2 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm7 -DB 102,15,56,0,211 - movdqa xmm3,xmm7 - pxor xmm2,xmm0 -DB 102,15,56,0,220 - movdqu xmm0,XMMWORD PTR [edx] - pxor xmm3,xmm1 - jnz $L003dec_loop - movdqa xmm4,XMMWORD PTR 96[ebx] -DB 102,15,56,0,226 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR 112[ebx] - movdqa xmm2,XMMWORD PTR [ecx] -DB 102,15,56,0,195 - pxor xmm0,xmm4 -DB 102,15,56,0,194 - ret -__vpaes_decrypt_core ENDP -ALIGN 16 -__vpaes_schedule_core PROC PRIVATE - add ebp,DWORD PTR [esp] - movdqu xmm0,XMMWORD PTR [esi] - movdqa xmm2,XMMWORD PTR 320[ebp] - movdqa xmm3,xmm0 - lea ebx,DWORD PTR [ebp] - movdqa XMMWORD PTR 4[esp],xmm2 - call __vpaes_schedule_transform - movdqa xmm7,xmm0 - test edi,edi - jnz $L004schedule_am_decrypting - movdqu XMMWORD PTR [edx],xmm0 - jmp $L005schedule_go -$L004schedule_am_decrypting: - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,217 - movdqu XMMWORD PTR [edx],xmm3 - xor ecx,48 -$L005schedule_go: - cmp eax,192 - ja $L006schedule_256 - je $L007schedule_192 -$L008schedule_128: - mov eax,10 -$L009loop_schedule_128: - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - jmp $L009loop_schedule_128 -ALIGN 16 -$L007schedule_192: - movdqu xmm0,XMMWORD PTR 8[esi] - call __vpaes_schedule_transform - movdqa xmm6,xmm0 - pxor xmm4,xmm4 - movhlps xmm6,xmm4 - mov eax,4 -$L011loop_schedule_192: - call __vpaes_schedule_round -DB 102,15,58,15,198,8 - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - call __vpaes_schedule_mangle - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - call __vpaes_schedule_192_smear - jmp $L011loop_schedule_192 -ALIGN 16 -$L006schedule_256: - movdqu xmm0,XMMWORD PTR 16[esi] - call __vpaes_schedule_transform - mov eax,7 -$L012loop_schedule_256: - call __vpaes_schedule_mangle - movdqa xmm6,xmm0 - call __vpaes_schedule_round - dec eax - jz $L010schedule_mangle_last - call __vpaes_schedule_mangle - pshufd xmm0,xmm0,255 - movdqa XMMWORD PTR 20[esp],xmm7 - movdqa xmm7,xmm6 - call $L_vpaes_schedule_low_round - movdqa xmm7,XMMWORD PTR 20[esp] - jmp $L012loop_schedule_256 -ALIGN 16 -$L010schedule_mangle_last: - lea ebx,DWORD PTR 384[ebp] - test edi,edi - jnz $L013schedule_mangle_last_dec - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,193 - lea ebx,DWORD PTR 352[ebp] - add edx,32 -$L013schedule_mangle_last_dec: - add edx,-16 - pxor xmm0,XMMWORD PTR 336[ebp] - call __vpaes_schedule_transform - movdqu XMMWORD PTR [edx],xmm0 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 - ret -__vpaes_schedule_core ENDP -ALIGN 16 -__vpaes_schedule_192_smear PROC PRIVATE - pshufd xmm1,xmm6,128 - pshufd xmm0,xmm7,254 - pxor xmm6,xmm1 - pxor xmm1,xmm1 - pxor xmm6,xmm0 - movdqa xmm0,xmm6 - movhlps xmm6,xmm1 - ret -__vpaes_schedule_192_smear ENDP -ALIGN 16 -__vpaes_schedule_round PROC PRIVATE - movdqa xmm2,XMMWORD PTR 8[esp] - pxor xmm1,xmm1 -DB 102,15,58,15,202,15 -DB 102,15,58,15,210,15 - pxor xmm7,xmm1 - pshufd xmm0,xmm0,255 -DB 102,15,58,15,192,1 - movdqa XMMWORD PTR 8[esp],xmm2 -$L_vpaes_schedule_low_round:: - movdqa xmm1,xmm7 - pslldq xmm7,4 - pxor xmm7,xmm1 - movdqa xmm1,xmm7 - pslldq xmm7,8 - pxor xmm7,xmm1 - pxor xmm7,XMMWORD PTR 336[ebp] - movdqa xmm4,XMMWORD PTR [ebp-16] - movdqa xmm5,XMMWORD PTR [ebp-48] - movdqa xmm1,xmm4 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm4 - movdqa xmm2,XMMWORD PTR [ebp-32] -DB 102,15,56,0,208 - pxor xmm0,xmm1 - movdqa xmm3,xmm5 -DB 102,15,56,0,217 - pxor xmm3,xmm2 - movdqa xmm4,xmm5 -DB 102,15,56,0,224 - pxor xmm4,xmm2 - movdqa xmm2,xmm5 -DB 102,15,56,0,211 - pxor xmm2,xmm0 - movdqa xmm3,xmm5 -DB 102,15,56,0,220 - pxor xmm3,xmm1 - movdqa xmm4,XMMWORD PTR 32[ebp] -DB 102,15,56,0,226 - movdqa xmm0,XMMWORD PTR 48[ebp] -DB 102,15,56,0,195 - pxor xmm0,xmm4 - pxor xmm0,xmm7 - movdqa xmm7,xmm0 - ret -__vpaes_schedule_round ENDP -ALIGN 16 -__vpaes_schedule_transform PROC PRIVATE - movdqa xmm2,XMMWORD PTR [ebp-16] - movdqa xmm1,xmm2 - pandn xmm1,xmm0 - psrld xmm1,4 - pand xmm0,xmm2 - movdqa xmm2,XMMWORD PTR [ebx] -DB 102,15,56,0,208 - movdqa xmm0,XMMWORD PTR 16[ebx] -DB 102,15,56,0,193 - pxor xmm0,xmm2 - ret -__vpaes_schedule_transform ENDP -ALIGN 16 -__vpaes_schedule_mangle PROC PRIVATE - movdqa xmm4,xmm0 - movdqa xmm5,XMMWORD PTR 128[ebp] - test edi,edi - jnz $L014schedule_mangle_dec - add edx,16 - pxor xmm4,XMMWORD PTR 336[ebp] -DB 102,15,56,0,229 - movdqa xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 -DB 102,15,56,0,229 - pxor xmm3,xmm4 - jmp $L015schedule_mangle_both -ALIGN 16 -$L014schedule_mangle_dec: - movdqa xmm2,XMMWORD PTR [ebp-16] - lea esi,DWORD PTR 416[ebp] - movdqa xmm1,xmm2 - pandn xmm1,xmm4 - psrld xmm1,4 - pand xmm4,xmm2 - movdqa xmm2,XMMWORD PTR [esi] -DB 102,15,56,0,212 - movdqa xmm3,XMMWORD PTR 16[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 32[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 48[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 64[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 80[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 -DB 102,15,56,0,221 - movdqa xmm2,XMMWORD PTR 96[esi] -DB 102,15,56,0,212 - pxor xmm2,xmm3 - movdqa xmm3,XMMWORD PTR 112[esi] -DB 102,15,56,0,217 - pxor xmm3,xmm2 - add edx,-16 -$L015schedule_mangle_both: - movdqa xmm1,XMMWORD PTR 256[ecx*1+ebp] -DB 102,15,56,0,217 - add ecx,-16 - and ecx,48 - movdqu XMMWORD PTR [edx],xmm3 - ret -__vpaes_schedule_mangle ENDP -ALIGN 16 -_vpaes_set_encrypt_key PROC PUBLIC -$L_vpaes_set_encrypt_key_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov eax,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - mov ebx,eax - shr ebx,5 - add ebx,5 - mov DWORD PTR 240[edx],ebx - mov ecx,48 - mov edi,0 - mov ebp,OFFSET ($L_vpaes_consts+030h-$L016pic_point) - call __vpaes_schedule_core -$L016pic_point: - mov esp,DWORD PTR 48[esp] - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_set_encrypt_key ENDP -ALIGN 16 -_vpaes_set_decrypt_key PROC PUBLIC -$L_vpaes_set_decrypt_key_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov eax,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - mov ebx,eax - shr ebx,5 - add ebx,5 - mov DWORD PTR 240[edx],ebx - shl ebx,4 - lea edx,DWORD PTR 16[ebx*1+edx] - mov edi,1 - mov ecx,eax - shr ecx,1 - and ecx,32 - xor ecx,32 - mov ebp,OFFSET ($L_vpaes_consts+030h-$L017pic_point) - call __vpaes_schedule_core -$L017pic_point: - mov esp,DWORD PTR 48[esp] - xor eax,eax - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_set_decrypt_key ENDP -ALIGN 16 -_vpaes_encrypt PROC PUBLIC -$L_vpaes_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ebp,OFFSET ($L_vpaes_consts+030h-$L018pic_point) - call __vpaes_preheat -$L018pic_point: - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov edi,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - movdqu xmm0,XMMWORD PTR [esi] - call __vpaes_encrypt_core - movdqu XMMWORD PTR [edi],xmm0 - mov esp,DWORD PTR 48[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_encrypt ENDP -ALIGN 16 -_vpaes_decrypt PROC PUBLIC -$L_vpaes_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ebp,OFFSET ($L_vpaes_consts+030h-$L019pic_point) - call __vpaes_preheat -$L019pic_point: - mov esi,DWORD PTR 20[esp] - lea ebx,DWORD PTR [esp-56] - mov edi,DWORD PTR 24[esp] - and ebx,-16 - mov edx,DWORD PTR 28[esp] - xchg ebx,esp - mov DWORD PTR 48[esp],ebx - movdqu xmm0,XMMWORD PTR [esi] - call __vpaes_decrypt_core - movdqu XMMWORD PTR [edi],xmm0 - mov esp,DWORD PTR 48[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_decrypt ENDP -ALIGN 16 -_vpaes_cbc_encrypt PROC PUBLIC -$L_vpaes_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - sub eax,16 - jc $L020cbc_abort - lea ebx,DWORD PTR [esp-56] - mov ebp,DWORD PTR 36[esp] - and ebx,-16 - mov ecx,DWORD PTR 40[esp] - xchg ebx,esp - movdqu xmm1,XMMWORD PTR [ebp] - sub edi,esi - mov DWORD PTR 48[esp],ebx - mov DWORD PTR [esp],edi - mov DWORD PTR 4[esp],edx - mov DWORD PTR 8[esp],ebp - mov edi,eax - mov ebp,OFFSET ($L_vpaes_consts+030h-$L021pic_point) - call __vpaes_preheat -$L021pic_point: - cmp ecx,0 - je $L022cbc_dec_loop - jmp $L023cbc_enc_loop -ALIGN 16 -$L023cbc_enc_loop: - movdqu xmm0,XMMWORD PTR [esi] - pxor xmm0,xmm1 - call __vpaes_encrypt_core - mov ebx,DWORD PTR [esp] - mov edx,DWORD PTR 4[esp] - movdqa xmm1,xmm0 - movdqu XMMWORD PTR [esi*1+ebx],xmm0 - lea esi,DWORD PTR 16[esi] - sub edi,16 - jnc $L023cbc_enc_loop - jmp $L024cbc_done -ALIGN 16 -$L022cbc_dec_loop: - movdqu xmm0,XMMWORD PTR [esi] - movdqa XMMWORD PTR 16[esp],xmm1 - movdqa XMMWORD PTR 32[esp],xmm0 - call __vpaes_decrypt_core - mov ebx,DWORD PTR [esp] - mov edx,DWORD PTR 4[esp] - pxor xmm0,XMMWORD PTR 16[esp] - movdqa xmm1,XMMWORD PTR 32[esp] - movdqu XMMWORD PTR [esi*1+ebx],xmm0 - lea esi,DWORD PTR 16[esi] - sub edi,16 - jnc $L022cbc_dec_loop -$L024cbc_done: - mov ebx,DWORD PTR 8[esp] - mov esp,DWORD PTR 48[esp] - movdqu XMMWORD PTR [ebx],xmm1 -$L020cbc_abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_vpaes_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/bf/bf-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/bf/bf-586.asm deleted file mode 100644 index 218e8f5c7d445d..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/bf/bf-586.asm +++ /dev/null @@ -1,902 +0,0 @@ -TITLE bf-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_BF_encrypt PROC PUBLIC -$L_BF_encrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - xor eax,eax - mov ebx,DWORD PTR [ebp] - xor ecx,ecx - xor edi,ebx - ; - ; Round 0 - mov edx,DWORD PTR 4[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 1 - mov edx,DWORD PTR 8[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 2 - mov edx,DWORD PTR 12[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 3 - mov edx,DWORD PTR 16[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 4 - mov edx,DWORD PTR 20[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 5 - mov edx,DWORD PTR 24[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 6 - mov edx,DWORD PTR 28[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 7 - mov edx,DWORD PTR 32[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 8 - mov edx,DWORD PTR 36[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 9 - mov edx,DWORD PTR 40[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 10 - mov edx,DWORD PTR 44[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 11 - mov edx,DWORD PTR 48[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 12 - mov edx,DWORD PTR 52[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 13 - mov edx,DWORD PTR 56[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 14 - mov edx,DWORD PTR 60[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 15 - mov edx,DWORD PTR 64[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - ; Load parameter 0 (16) enc=1 - mov eax,DWORD PTR 20[esp] - xor edi,ebx - mov edx,DWORD PTR 68[ebp] - xor esi,edx - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_BF_encrypt ENDP -ALIGN 16 -_BF_decrypt PROC PUBLIC -$L_BF_decrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - xor eax,eax - mov ebx,DWORD PTR 68[ebp] - xor ecx,ecx - xor edi,ebx - ; - ; Round 16 - mov edx,DWORD PTR 64[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 15 - mov edx,DWORD PTR 60[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 14 - mov edx,DWORD PTR 56[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 13 - mov edx,DWORD PTR 52[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 12 - mov edx,DWORD PTR 48[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 11 - mov edx,DWORD PTR 44[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 10 - mov edx,DWORD PTR 40[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 9 - mov edx,DWORD PTR 36[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 8 - mov edx,DWORD PTR 32[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 7 - mov edx,DWORD PTR 28[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 6 - mov edx,DWORD PTR 24[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 5 - mov edx,DWORD PTR 20[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 4 - mov edx,DWORD PTR 16[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 3 - mov edx,DWORD PTR 12[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor edi,ebx - ; - ; Round 2 - mov edx,DWORD PTR 8[ebp] - mov ebx,edi - xor esi,edx - shr ebx,16 - mov edx,edi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - xor eax,eax - xor esi,ebx - ; - ; Round 1 - mov edx,DWORD PTR 4[ebp] - mov ebx,esi - xor edi,edx - shr ebx,16 - mov edx,esi - mov al,bh - and ebx,255 - mov cl,dh - and edx,255 - mov eax,DWORD PTR 72[eax*4+ebp] - mov ebx,DWORD PTR 1096[ebx*4+ebp] - add ebx,eax - mov eax,DWORD PTR 2120[ecx*4+ebp] - xor ebx,eax - mov edx,DWORD PTR 3144[edx*4+ebp] - add ebx,edx - ; Load parameter 0 (1) enc=0 - mov eax,DWORD PTR 20[esp] - xor edi,ebx - mov edx,DWORD PTR [ebp] - xor esi,edx - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_BF_decrypt ENDP -ALIGN 16 -_BF_cbc_encrypt PROC PUBLIC -$L_BF_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 3 - mov eax,DWORD PTR 48[esp] - push eax - push ebx - cmp ecx,0 - jz $L000decrypt - and ebp,4294967288 - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - jz $L001encrypt_finish -$L002encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L002encrypt_loop -$L001encrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L003finish - call $L004PIC_point -$L004PIC_point: - pop edx - lea ecx,DWORD PTR ($L005cbc_enc_jmp_table-$L004PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L006ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L007ej6: - mov dh,BYTE PTR 5[esi] -$L008ej5: - mov dl,BYTE PTR 4[esi] -$L009ej4: - mov ecx,DWORD PTR [esi] - jmp $L010ejend -$L011ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L012ej2: - mov ch,BYTE PTR 1[esi] -$L013ej1: - mov cl,BYTE PTR [esi] -$L010ejend: - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L003finish -$L000decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L014decrypt_finish -$L015decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L015decrypt_loop -$L014decrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L003finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_BF_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L016dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L017dj6: - mov BYTE PTR 5[edi],dh -$L018dj5: - mov BYTE PTR 4[edi],dl -$L019dj4: - mov DWORD PTR [edi],ecx - jmp $L020djend -$L021dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L022dj2: - mov BYTE PTR 1[esi],ch -$L023dj1: - mov BYTE PTR [esi],cl -$L020djend: - jmp $L003finish -$L003finish: - mov ecx,DWORD PTR 60[esp] - add esp,24 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L005cbc_enc_jmp_table: -DD 0 -DD $L013ej1-$L004PIC_point -DD $L012ej2-$L004PIC_point -DD $L011ej3-$L004PIC_point -DD $L009ej4-$L004PIC_point -DD $L008ej5-$L004PIC_point -DD $L007ej6-$L004PIC_point -DD $L006ej7-$L004PIC_point -ALIGN 64 -_BF_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/bn/bn-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/bn/bn-586.asm deleted file mode 100644 index 916ed888615f8b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/bn/bn-586.asm +++ /dev/null @@ -1,1529 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/bn-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_bn_mul_add_words PROC PUBLIC -$L_bn_mul_add_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L000maw_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - movd mm0,DWORD PTR 16[esp] - pxor mm1,mm1 - jmp $L001maw_sse2_entry -ALIGN 16 -$L002maw_sse2_unrolled: - movd mm3,DWORD PTR [eax] - paddq mm1,mm3 - movd mm2,DWORD PTR [edx] - pmuludq mm2,mm0 - movd mm4,DWORD PTR 4[edx] - pmuludq mm4,mm0 - movd mm6,DWORD PTR 8[edx] - pmuludq mm6,mm0 - movd mm7,DWORD PTR 12[edx] - pmuludq mm7,mm0 - paddq mm1,mm2 - movd mm3,DWORD PTR 4[eax] - paddq mm3,mm4 - movd mm5,DWORD PTR 8[eax] - paddq mm5,mm6 - movd mm4,DWORD PTR 12[eax] - paddq mm7,mm4 - movd DWORD PTR [eax],mm1 - movd mm2,DWORD PTR 16[edx] - pmuludq mm2,mm0 - psrlq mm1,32 - movd mm4,DWORD PTR 20[edx] - pmuludq mm4,mm0 - paddq mm1,mm3 - movd mm6,DWORD PTR 24[edx] - pmuludq mm6,mm0 - movd DWORD PTR 4[eax],mm1 - psrlq mm1,32 - movd mm3,DWORD PTR 28[edx] - add edx,32 - pmuludq mm3,mm0 - paddq mm1,mm5 - movd mm5,DWORD PTR 16[eax] - paddq mm2,mm5 - movd DWORD PTR 8[eax],mm1 - psrlq mm1,32 - paddq mm1,mm7 - movd mm5,DWORD PTR 20[eax] - paddq mm4,mm5 - movd DWORD PTR 12[eax],mm1 - psrlq mm1,32 - paddq mm1,mm2 - movd mm5,DWORD PTR 24[eax] - paddq mm6,mm5 - movd DWORD PTR 16[eax],mm1 - psrlq mm1,32 - paddq mm1,mm4 - movd mm5,DWORD PTR 28[eax] - paddq mm3,mm5 - movd DWORD PTR 20[eax],mm1 - psrlq mm1,32 - paddq mm1,mm6 - movd DWORD PTR 24[eax],mm1 - psrlq mm1,32 - paddq mm1,mm3 - movd DWORD PTR 28[eax],mm1 - lea eax,DWORD PTR 32[eax] - psrlq mm1,32 - sub ecx,8 - jz $L003maw_sse2_exit -$L001maw_sse2_entry: - test ecx,4294967288 - jnz $L002maw_sse2_unrolled -ALIGN 4 -$L004maw_sse2_loop: - movd mm2,DWORD PTR [edx] - movd mm3,DWORD PTR [eax] - pmuludq mm2,mm0 - lea edx,DWORD PTR 4[edx] - paddq mm1,mm3 - paddq mm1,mm2 - movd DWORD PTR [eax],mm1 - sub ecx,1 - psrlq mm1,32 - lea eax,DWORD PTR 4[eax] - jnz $L004maw_sse2_loop -$L003maw_sse2_exit: - movd eax,mm1 - emms - ret -ALIGN 16 -$L000maw_non_sse2: - push ebp - push ebx - push esi - push edi - ; - xor esi,esi - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 28[esp] - mov ebx,DWORD PTR 24[esp] - and ecx,4294967288 - mov ebp,DWORD PTR 32[esp] - push ecx - jz $L005maw_finish -ALIGN 16 -$L006maw_loop: - ; Round 0 - mov eax,DWORD PTR [ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR [edi] - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - ; Round 4 - mov eax,DWORD PTR 4[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 4[edi] - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - ; Round 8 - mov eax,DWORD PTR 8[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 8[edi] - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - ; Round 12 - mov eax,DWORD PTR 12[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 12[edi] - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - ; Round 16 - mov eax,DWORD PTR 16[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 16[edi] - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - ; Round 20 - mov eax,DWORD PTR 20[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 20[edi] - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - ; Round 24 - mov eax,DWORD PTR 24[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 24[edi] - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx - ; Round 28 - mov eax,DWORD PTR 28[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 28[edi] - adc edx,0 - mov DWORD PTR 28[edi],eax - mov esi,edx - ; - sub ecx,8 - lea ebx,DWORD PTR 32[ebx] - lea edi,DWORD PTR 32[edi] - jnz $L006maw_loop -$L005maw_finish: - mov ecx,DWORD PTR 32[esp] - and ecx,7 - jnz $L007maw_finish2 - jmp $L008maw_end -$L007maw_finish2: - ; Tail Round 0 - mov eax,DWORD PTR [ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR [edi] - adc edx,0 - dec ecx - mov DWORD PTR [edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 4[edi] - adc edx,0 - dec ecx - mov DWORD PTR 4[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 8[edi] - adc edx,0 - dec ecx - mov DWORD PTR 8[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 12[edi] - adc edx,0 - dec ecx - mov DWORD PTR 12[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 16[edi] - adc edx,0 - dec ecx - mov DWORD PTR 16[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 20[edi] - adc edx,0 - dec ecx - mov DWORD PTR 20[edi],eax - mov esi,edx - jz $L008maw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[ebx] - mul ebp - add eax,esi - adc edx,0 - add eax,DWORD PTR 24[edi] - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx -$L008maw_end: - mov eax,esi - pop ecx - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_add_words ENDP -ALIGN 16 -_bn_mul_words PROC PUBLIC -$L_bn_mul_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L009mw_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - movd mm0,DWORD PTR 16[esp] - pxor mm1,mm1 -ALIGN 16 -$L010mw_sse2_loop: - movd mm2,DWORD PTR [edx] - pmuludq mm2,mm0 - lea edx,DWORD PTR 4[edx] - paddq mm1,mm2 - movd DWORD PTR [eax],mm1 - sub ecx,1 - psrlq mm1,32 - lea eax,DWORD PTR 4[eax] - jnz $L010mw_sse2_loop - movd eax,mm1 - emms - ret -ALIGN 16 -$L009mw_non_sse2: - push ebp - push ebx - push esi - push edi - ; - xor esi,esi - mov edi,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ebp,DWORD PTR 28[esp] - mov ecx,DWORD PTR 32[esp] - and ebp,4294967288 - jz $L011mw_finish -$L012mw_loop: - ; Round 0 - mov eax,DWORD PTR [ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - ; Round 4 - mov eax,DWORD PTR 4[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - ; Round 8 - mov eax,DWORD PTR 8[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - ; Round 12 - mov eax,DWORD PTR 12[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - ; Round 16 - mov eax,DWORD PTR 16[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - ; Round 20 - mov eax,DWORD PTR 20[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - ; Round 24 - mov eax,DWORD PTR 24[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx - ; Round 28 - mov eax,DWORD PTR 28[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 28[edi],eax - mov esi,edx - ; - add ebx,32 - add edi,32 - sub ebp,8 - jz $L011mw_finish - jmp $L012mw_loop -$L011mw_finish: - mov ebp,DWORD PTR 28[esp] - and ebp,7 - jnz $L013mw_finish2 - jmp $L014mw_end -$L013mw_finish2: - ; Tail Round 0 - mov eax,DWORD PTR [ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR [edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 4[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 8[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 12[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 16[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 20[edi],eax - mov esi,edx - dec ebp - jz $L014mw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[ebx] - mul ecx - add eax,esi - adc edx,0 - mov DWORD PTR 24[edi],eax - mov esi,edx -$L014mw_end: - mov eax,esi - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_words ENDP -ALIGN 16 -_bn_sqr_words PROC PUBLIC -$L_bn_sqr_words_begin:: - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L015sqr_non_sse2 - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] -ALIGN 16 -$L016sqr_sse2_loop: - movd mm0,DWORD PTR [edx] - pmuludq mm0,mm0 - lea edx,DWORD PTR 4[edx] - movq QWORD PTR [eax],mm0 - sub ecx,1 - lea eax,DWORD PTR 8[eax] - jnz $L016sqr_sse2_loop - emms - ret -ALIGN 16 -$L015sqr_non_sse2: - push ebp - push ebx - push esi - push edi - ; - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - and ebx,4294967288 - jz $L017sw_finish -$L018sw_loop: - ; Round 0 - mov eax,DWORD PTR [edi] - mul eax - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],edx - ; Round 4 - mov eax,DWORD PTR 4[edi] - mul eax - mov DWORD PTR 8[esi],eax - mov DWORD PTR 12[esi],edx - ; Round 8 - mov eax,DWORD PTR 8[edi] - mul eax - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],edx - ; Round 12 - mov eax,DWORD PTR 12[edi] - mul eax - mov DWORD PTR 24[esi],eax - mov DWORD PTR 28[esi],edx - ; Round 16 - mov eax,DWORD PTR 16[edi] - mul eax - mov DWORD PTR 32[esi],eax - mov DWORD PTR 36[esi],edx - ; Round 20 - mov eax,DWORD PTR 20[edi] - mul eax - mov DWORD PTR 40[esi],eax - mov DWORD PTR 44[esi],edx - ; Round 24 - mov eax,DWORD PTR 24[edi] - mul eax - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],edx - ; Round 28 - mov eax,DWORD PTR 28[edi] - mul eax - mov DWORD PTR 56[esi],eax - mov DWORD PTR 60[esi],edx - ; - add edi,32 - add esi,64 - sub ebx,8 - jnz $L018sw_loop -$L017sw_finish: - mov ebx,DWORD PTR 28[esp] - and ebx,7 - jz $L019sw_end - ; Tail Round 0 - mov eax,DWORD PTR [edi] - mul eax - mov DWORD PTR [esi],eax - dec ebx - mov DWORD PTR 4[esi],edx - jz $L019sw_end - ; Tail Round 1 - mov eax,DWORD PTR 4[edi] - mul eax - mov DWORD PTR 8[esi],eax - dec ebx - mov DWORD PTR 12[esi],edx - jz $L019sw_end - ; Tail Round 2 - mov eax,DWORD PTR 8[edi] - mul eax - mov DWORD PTR 16[esi],eax - dec ebx - mov DWORD PTR 20[esi],edx - jz $L019sw_end - ; Tail Round 3 - mov eax,DWORD PTR 12[edi] - mul eax - mov DWORD PTR 24[esi],eax - dec ebx - mov DWORD PTR 28[esi],edx - jz $L019sw_end - ; Tail Round 4 - mov eax,DWORD PTR 16[edi] - mul eax - mov DWORD PTR 32[esi],eax - dec ebx - mov DWORD PTR 36[esi],edx - jz $L019sw_end - ; Tail Round 5 - mov eax,DWORD PTR 20[edi] - mul eax - mov DWORD PTR 40[esi],eax - dec ebx - mov DWORD PTR 44[esi],edx - jz $L019sw_end - ; Tail Round 6 - mov eax,DWORD PTR 24[edi] - mul eax - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],edx -$L019sw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sqr_words ENDP -ALIGN 16 -_bn_div_words PROC PUBLIC -$L_bn_div_words_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - mov ecx,DWORD PTR 12[esp] - div ecx - ret -_bn_div_words ENDP -ALIGN 16 -_bn_add_words PROC PUBLIC -$L_bn_add_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L020aw_finish -$L021aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L021aw_loop -$L020aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L022aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L022aw_end - ; Tail Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L022aw_end - ; Tail Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L022aw_end - ; Tail Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L022aw_end - ; Tail Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L022aw_end - ; Tail Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L022aw_end - ; Tail Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - add ecx,eax - mov eax,0 - adc eax,eax - add ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx -$L022aw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_add_words ENDP -ALIGN 16 -_bn_sub_words PROC PUBLIC -$L_bn_sub_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L023aw_finish -$L024aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L024aw_loop -$L023aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L025aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L025aw_end - ; Tail Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L025aw_end - ; Tail Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L025aw_end - ; Tail Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L025aw_end - ; Tail Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L025aw_end - ; Tail Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L025aw_end - ; Tail Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx -$L025aw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sub_words ENDP -ALIGN 16 -_bn_sub_part_words PROC PUBLIC -$L_bn_sub_part_words_begin:: - push ebp - push ebx - push esi - push edi - ; - mov ebx,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - and ebp,4294967288 - jz $L026aw_finish -$L027aw_loop: - ; Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; Round 1 - mov ecx,DWORD PTR 4[esi] - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; Round 2 - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; Round 3 - mov ecx,DWORD PTR 12[esi] - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; Round 4 - mov ecx,DWORD PTR 16[esi] - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; Round 5 - mov ecx,DWORD PTR 20[esi] - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; Round 6 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; Round 7 - mov ecx,DWORD PTR 28[esi] - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add esi,32 - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L027aw_loop -$L026aw_finish: - mov ebp,DWORD PTR 32[esp] - and ebp,7 - jz $L028aw_end - ; Tail Round 0 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 1 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 2 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 3 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 4 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 5 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 - dec ebp - jz $L028aw_end - ; Tail Round 6 - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - add esi,4 - add edi,4 - add ebx,4 -$L028aw_end: - cmp DWORD PTR 36[esp],0 - je $L029pw_end - mov ebp,DWORD PTR 36[esp] - cmp ebp,0 - je $L029pw_end - jge $L030pw_pos - ; pw_neg - mov edx,0 - sub edx,ebp - mov ebp,edx - and ebp,4294967288 - jz $L031pw_neg_finish -$L032pw_neg_loop: - ; dl<0 Round 0 - mov ecx,0 - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR [ebx],ecx - ; dl<0 Round 1 - mov ecx,0 - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 4[ebx],ecx - ; dl<0 Round 2 - mov ecx,0 - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 8[ebx],ecx - ; dl<0 Round 3 - mov ecx,0 - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 12[ebx],ecx - ; dl<0 Round 4 - mov ecx,0 - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 16[ebx],ecx - ; dl<0 Round 5 - mov ecx,0 - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 20[ebx],ecx - ; dl<0 Round 6 - mov ecx,0 - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - ; dl<0 Round 7 - mov ecx,0 - mov edx,DWORD PTR 28[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 28[ebx],ecx - ; - add edi,32 - add ebx,32 - sub ebp,8 - jnz $L032pw_neg_loop -$L031pw_neg_finish: - mov edx,DWORD PTR 36[esp] - mov ebp,0 - sub ebp,edx - and ebp,7 - jz $L029pw_end - ; dl<0 Tail Round 0 - mov ecx,0 - mov edx,DWORD PTR [edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR [ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 1 - mov ecx,0 - mov edx,DWORD PTR 4[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 4[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 2 - mov ecx,0 - mov edx,DWORD PTR 8[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 8[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 3 - mov ecx,0 - mov edx,DWORD PTR 12[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 12[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 4 - mov ecx,0 - mov edx,DWORD PTR 16[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 16[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 5 - mov ecx,0 - mov edx,DWORD PTR 20[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - dec ebp - mov DWORD PTR 20[ebx],ecx - jz $L029pw_end - ; dl<0 Tail Round 6 - mov ecx,0 - mov edx,DWORD PTR 24[edi] - sub ecx,eax - mov eax,0 - adc eax,eax - sub ecx,edx - adc eax,0 - mov DWORD PTR 24[ebx],ecx - jmp $L029pw_end -$L030pw_pos: - and ebp,4294967288 - jz $L033pw_pos_finish -$L034pw_pos_loop: - ; dl>0 Round 0 - mov ecx,DWORD PTR [esi] - sub ecx,eax - mov DWORD PTR [ebx],ecx - jnc $L035pw_nc0 - ; dl>0 Round 1 - mov ecx,DWORD PTR 4[esi] - sub ecx,eax - mov DWORD PTR 4[ebx],ecx - jnc $L036pw_nc1 - ; dl>0 Round 2 - mov ecx,DWORD PTR 8[esi] - sub ecx,eax - mov DWORD PTR 8[ebx],ecx - jnc $L037pw_nc2 - ; dl>0 Round 3 - mov ecx,DWORD PTR 12[esi] - sub ecx,eax - mov DWORD PTR 12[ebx],ecx - jnc $L038pw_nc3 - ; dl>0 Round 4 - mov ecx,DWORD PTR 16[esi] - sub ecx,eax - mov DWORD PTR 16[ebx],ecx - jnc $L039pw_nc4 - ; dl>0 Round 5 - mov ecx,DWORD PTR 20[esi] - sub ecx,eax - mov DWORD PTR 20[ebx],ecx - jnc $L040pw_nc5 - ; dl>0 Round 6 - mov ecx,DWORD PTR 24[esi] - sub ecx,eax - mov DWORD PTR 24[ebx],ecx - jnc $L041pw_nc6 - ; dl>0 Round 7 - mov ecx,DWORD PTR 28[esi] - sub ecx,eax - mov DWORD PTR 28[ebx],ecx - jnc $L042pw_nc7 - ; - add esi,32 - add ebx,32 - sub ebp,8 - jnz $L034pw_pos_loop -$L033pw_pos_finish: - mov ebp,DWORD PTR 36[esp] - and ebp,7 - jz $L029pw_end - ; dl>0 Tail Round 0 - mov ecx,DWORD PTR [esi] - sub ecx,eax - mov DWORD PTR [ebx],ecx - jnc $L043pw_tail_nc0 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 1 - mov ecx,DWORD PTR 4[esi] - sub ecx,eax - mov DWORD PTR 4[ebx],ecx - jnc $L044pw_tail_nc1 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 2 - mov ecx,DWORD PTR 8[esi] - sub ecx,eax - mov DWORD PTR 8[ebx],ecx - jnc $L045pw_tail_nc2 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 3 - mov ecx,DWORD PTR 12[esi] - sub ecx,eax - mov DWORD PTR 12[ebx],ecx - jnc $L046pw_tail_nc3 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 4 - mov ecx,DWORD PTR 16[esi] - sub ecx,eax - mov DWORD PTR 16[ebx],ecx - jnc $L047pw_tail_nc4 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 5 - mov ecx,DWORD PTR 20[esi] - sub ecx,eax - mov DWORD PTR 20[ebx],ecx - jnc $L048pw_tail_nc5 - dec ebp - jz $L029pw_end - ; dl>0 Tail Round 6 - mov ecx,DWORD PTR 24[esi] - sub ecx,eax - mov DWORD PTR 24[ebx],ecx - jnc $L049pw_tail_nc6 - mov eax,1 - jmp $L029pw_end -$L050pw_nc_loop: - mov ecx,DWORD PTR [esi] - mov DWORD PTR [ebx],ecx -$L035pw_nc0: - mov ecx,DWORD PTR 4[esi] - mov DWORD PTR 4[ebx],ecx -$L036pw_nc1: - mov ecx,DWORD PTR 8[esi] - mov DWORD PTR 8[ebx],ecx -$L037pw_nc2: - mov ecx,DWORD PTR 12[esi] - mov DWORD PTR 12[ebx],ecx -$L038pw_nc3: - mov ecx,DWORD PTR 16[esi] - mov DWORD PTR 16[ebx],ecx -$L039pw_nc4: - mov ecx,DWORD PTR 20[esi] - mov DWORD PTR 20[ebx],ecx -$L040pw_nc5: - mov ecx,DWORD PTR 24[esi] - mov DWORD PTR 24[ebx],ecx -$L041pw_nc6: - mov ecx,DWORD PTR 28[esi] - mov DWORD PTR 28[ebx],ecx -$L042pw_nc7: - ; - add esi,32 - add ebx,32 - sub ebp,8 - jnz $L050pw_nc_loop - mov ebp,DWORD PTR 36[esp] - and ebp,7 - jz $L051pw_nc_end - mov ecx,DWORD PTR [esi] - mov DWORD PTR [ebx],ecx -$L043pw_tail_nc0: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 4[esi] - mov DWORD PTR 4[ebx],ecx -$L044pw_tail_nc1: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 8[esi] - mov DWORD PTR 8[ebx],ecx -$L045pw_tail_nc2: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 12[esi] - mov DWORD PTR 12[ebx],ecx -$L046pw_tail_nc3: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 16[esi] - mov DWORD PTR 16[ebx],ecx -$L047pw_tail_nc4: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 20[esi] - mov DWORD PTR 20[ebx],ecx -$L048pw_tail_nc5: - dec ebp - jz $L051pw_nc_end - mov ecx,DWORD PTR 24[esi] - mov DWORD PTR 24[ebx],ecx -$L049pw_tail_nc6: -$L051pw_nc_end: - mov eax,0 -$L029pw_end: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_sub_part_words ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/bn/co-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/bn/co-586.asm deleted file mode 100644 index a44b2b1b957268..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/bn/co-586.asm +++ /dev/null @@ -1,1258 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/co-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_bn_mul_comba8 PROC PUBLIC -$L_bn_mul_comba8_begin:: - push esi - mov esi,DWORD PTR 12[esp] - push edi - mov edi,DWORD PTR 20[esp] - push ebp - push ebx - xor ebx,ebx - mov eax,DWORD PTR [esi] - xor ecx,ecx - mov edx,DWORD PTR [edi] - ; ################## Calculate word 0 - xor ebp,ebp - ; mul a[0]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR [eax],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ################## Calculate word 1 - xor ebx,ebx - ; mul a[1]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[0]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 4[eax],ecx - mov eax,DWORD PTR 8[esi] - ; saved r[1] - ; ################## Calculate word 2 - xor ecx,ecx - ; mul a[2]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[1]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[0]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 8[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ################## Calculate word 3 - xor ebp,ebp - ; mul a[3]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[2]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[1]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[0]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR 12[eax],ebx - mov eax,DWORD PTR 16[esi] - ; saved r[3] - ; ################## Calculate word 4 - xor ebx,ebx - ; mul a[4]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[3]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[2]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[1]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[0]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 16[eax],ecx - mov eax,DWORD PTR 20[esi] - ; saved r[4] - ; ################## Calculate word 5 - xor ecx,ecx - ; mul a[5]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[4]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR 12[esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[3]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[2]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 16[edi] - adc ecx,0 - ; mul a[1]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[0]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 20[eax],ebp - mov eax,DWORD PTR 24[esi] - ; saved r[5] - ; ################## Calculate word 6 - xor ebp,ebp - ; mul a[6]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[5]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 16[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[4]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR 12[esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[3]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 16[edi] - adc ebp,0 - ; mul a[2]*b[4] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 20[edi] - adc ebp,0 - ; mul a[1]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[0]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR 24[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[6] - ; ################## Calculate word 7 - xor ebx,ebx - ; mul a[7]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[6]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[5]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 16[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[4]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[3]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 20[edi] - adc ebx,0 - ; mul a[2]*b[5] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 24[edi] - adc ebx,0 - ; mul a[1]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[0]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - mov DWORD PTR 28[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[7] - ; ################## Calculate word 8 - xor ecx,ecx - ; mul a[7]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR 24[esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[6]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[5]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 16[edi] - adc ecx,0 - ; mul a[4]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR 12[esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[3]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 24[edi] - adc ecx,0 - ; mul a[2]*b[6] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 28[edi] - adc ecx,0 - ; mul a[1]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - mov DWORD PTR 32[eax],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[8] - ; ################## Calculate word 9 - xor ebp,ebp - ; mul a[7]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR 24[esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[6]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 16[edi] - adc ebp,0 - ; mul a[5]*b[4] - mul edx - add ebx,eax - mov eax,DWORD PTR 16[esi] - adc ecx,edx - mov edx,DWORD PTR 20[edi] - adc ebp,0 - ; mul a[4]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR 12[esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[3]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 28[edi] - adc ebp,0 - ; mul a[2]*b[7] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - mov DWORD PTR 36[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[9] - ; ################## Calculate word 10 - xor ebx,ebx - ; mul a[7]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - ; mul a[6]*b[4] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esi] - adc ebp,edx - mov edx,DWORD PTR 20[edi] - adc ebx,0 - ; mul a[5]*b[5] - mul edx - add ecx,eax - mov eax,DWORD PTR 16[esi] - adc ebp,edx - mov edx,DWORD PTR 24[edi] - adc ebx,0 - ; mul a[4]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR 12[esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[3]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 16[edi] - adc ebx,0 - mov DWORD PTR 40[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[10] - ; ################## Calculate word 11 - xor ecx,ecx - ; mul a[7]*b[4] - mul edx - add ebp,eax - mov eax,DWORD PTR 24[esi] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - ; mul a[6]*b[5] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esi] - adc ebx,edx - mov edx,DWORD PTR 24[edi] - adc ecx,0 - ; mul a[5]*b[6] - mul edx - add ebp,eax - mov eax,DWORD PTR 16[esi] - adc ebx,edx - mov edx,DWORD PTR 28[edi] - adc ecx,0 - ; mul a[4]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 20[edi] - adc ecx,0 - mov DWORD PTR 44[eax],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[11] - ; ################## Calculate word 12 - xor ebp,ebp - ; mul a[7]*b[5] - mul edx - add ebx,eax - mov eax,DWORD PTR 24[esi] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - ; mul a[6]*b[6] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esi] - adc ecx,edx - mov edx,DWORD PTR 28[edi] - adc ebp,0 - ; mul a[5]*b[7] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 24[edi] - adc ebp,0 - mov DWORD PTR 48[eax],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[12] - ; ################## Calculate word 13 - xor ebx,ebx - ; mul a[7]*b[6] - mul edx - add ecx,eax - mov eax,DWORD PTR 24[esi] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - ; mul a[6]*b[7] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 28[edi] - adc ebx,0 - mov DWORD PTR 52[eax],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[13] - ; ################## Calculate word 14 - xor ecx,ecx - ; mul a[7]*b[7] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - adc ecx,0 - mov DWORD PTR 56[eax],ebp - ; saved r[14] - ; save r[15] - mov DWORD PTR 60[eax],ebx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_mul_comba8 ENDP -ALIGN 16 -_bn_mul_comba4 PROC PUBLIC -$L_bn_mul_comba4_begin:: - push esi - mov esi,DWORD PTR 12[esp] - push edi - mov edi,DWORD PTR 20[esp] - push ebp - push ebx - xor ebx,ebx - mov eax,DWORD PTR [esi] - xor ecx,ecx - mov edx,DWORD PTR [edi] - ; ################## Calculate word 0 - xor ebp,ebp - ; mul a[0]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR [edi] - adc ebp,0 - mov DWORD PTR [eax],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ################## Calculate word 1 - xor ebx,ebx - ; mul a[1]*b[0] - mul edx - add ecx,eax - mov eax,DWORD PTR [esi] - adc ebp,edx - mov edx,DWORD PTR 4[edi] - adc ebx,0 - ; mul a[0]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR [edi] - adc ebx,0 - mov DWORD PTR 4[eax],ecx - mov eax,DWORD PTR 8[esi] - ; saved r[1] - ; ################## Calculate word 2 - xor ecx,ecx - ; mul a[2]*b[0] - mul edx - add ebp,eax - mov eax,DWORD PTR 4[esi] - adc ebx,edx - mov edx,DWORD PTR 4[edi] - adc ecx,0 - ; mul a[1]*b[1] - mul edx - add ebp,eax - mov eax,DWORD PTR [esi] - adc ebx,edx - mov edx,DWORD PTR 8[edi] - adc ecx,0 - ; mul a[0]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR [edi] - adc ecx,0 - mov DWORD PTR 8[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ################## Calculate word 3 - xor ebp,ebp - ; mul a[3]*b[0] - mul edx - add ebx,eax - mov eax,DWORD PTR 8[esi] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - ; mul a[2]*b[1] - mul edx - add ebx,eax - mov eax,DWORD PTR 4[esi] - adc ecx,edx - mov edx,DWORD PTR 8[edi] - adc ebp,0 - ; mul a[1]*b[2] - mul edx - add ebx,eax - mov eax,DWORD PTR [esi] - adc ecx,edx - mov edx,DWORD PTR 12[edi] - adc ebp,0 - ; mul a[0]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - mov edx,DWORD PTR 4[edi] - adc ebp,0 - mov DWORD PTR 12[eax],ebx - mov eax,DWORD PTR 12[esi] - ; saved r[3] - ; ################## Calculate word 4 - xor ebx,ebx - ; mul a[3]*b[1] - mul edx - add ecx,eax - mov eax,DWORD PTR 8[esi] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - ; mul a[2]*b[2] - mul edx - add ecx,eax - mov eax,DWORD PTR 4[esi] - adc ebp,edx - mov edx,DWORD PTR 12[edi] - adc ebx,0 - ; mul a[1]*b[3] - mul edx - add ecx,eax - mov eax,DWORD PTR 20[esp] - adc ebp,edx - mov edx,DWORD PTR 8[edi] - adc ebx,0 - mov DWORD PTR 16[eax],ecx - mov eax,DWORD PTR 12[esi] - ; saved r[4] - ; ################## Calculate word 5 - xor ecx,ecx - ; mul a[3]*b[2] - mul edx - add ebp,eax - mov eax,DWORD PTR 8[esi] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - ; mul a[2]*b[3] - mul edx - add ebp,eax - mov eax,DWORD PTR 20[esp] - adc ebx,edx - mov edx,DWORD PTR 12[edi] - adc ecx,0 - mov DWORD PTR 20[eax],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[5] - ; ################## Calculate word 6 - xor ebp,ebp - ; mul a[3]*b[3] - mul edx - add ebx,eax - mov eax,DWORD PTR 20[esp] - adc ecx,edx - adc ebp,0 - mov DWORD PTR 24[eax],ebx - ; saved r[6] - ; save r[7] - mov DWORD PTR 28[eax],ecx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_mul_comba4 ENDP -ALIGN 16 -_bn_sqr_comba8 PROC PUBLIC -$L_bn_sqr_comba8_begin:: - push esi - push edi - push ebp - push ebx - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - xor ebx,ebx - xor ecx,ecx - mov eax,DWORD PTR [esi] - ; ############### Calculate word 0 - xor ebp,ebp - ; sqr a[0]*a[0] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR [edi],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ############### Calculate word 1 - xor ebx,ebx - ; sqr a[1]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 4[edi],ecx - mov edx,DWORD PTR [esi] - ; saved r[1] - ; ############### Calculate word 2 - xor ecx,ecx - ; sqr a[2]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 4[esi] - adc ecx,0 - ; sqr a[1]*a[1] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR [esi] - adc ecx,0 - mov DWORD PTR 8[edi],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ############### Calculate word 3 - xor ebp,ebp - ; sqr a[3]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 8[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[2]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 16[esi] - adc ebp,0 - mov DWORD PTR 12[edi],ebx - mov edx,DWORD PTR [esi] - ; saved r[3] - ; ############### Calculate word 4 - xor ebx,ebx - ; sqr a[4]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 12[esi] - adc ebx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[3]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - ; sqr a[2]*a[2] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR [esi] - adc ebx,0 - mov DWORD PTR 16[edi],ecx - mov eax,DWORD PTR 20[esi] - ; saved r[4] - ; ############### Calculate word 5 - xor ecx,ecx - ; sqr a[5]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 16[esi] - adc ecx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[4]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 12[esi] - adc ecx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[3]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov DWORD PTR 20[edi],ebp - mov edx,DWORD PTR [esi] - ; saved r[5] - ; ############### Calculate word 6 - xor ebp,ebp - ; sqr a[6]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 20[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[5]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 16[esi] - adc ebp,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[4]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 12[esi] - adc ebp,0 - ; sqr a[3]*a[3] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR 24[edi],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[6] - ; ############### Calculate word 7 - xor ebx,ebx - ; sqr a[7]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 24[esi] - adc ebx,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[6]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 20[esi] - adc ebx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[5]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 16[esi] - adc ebx,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[4]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 28[esi] - adc ebx,0 - mov DWORD PTR 28[edi],ecx - mov edx,DWORD PTR 4[esi] - ; saved r[7] - ; ############### Calculate word 8 - xor ecx,ecx - ; sqr a[7]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov edx,DWORD PTR 8[esi] - ; sqr a[6]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 20[esi] - adc ecx,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[5]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 16[esi] - adc ecx,0 - ; sqr a[4]*a[4] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR 8[esi] - adc ecx,0 - mov DWORD PTR 32[edi],ebp - mov eax,DWORD PTR 28[esi] - ; saved r[8] - ; ############### Calculate word 9 - xor ebp,ebp - ; sqr a[7]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 24[esi] - adc ebp,0 - mov edx,DWORD PTR 12[esi] - ; sqr a[6]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 20[esi] - adc ebp,0 - mov edx,DWORD PTR 16[esi] - ; sqr a[5]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 28[esi] - adc ebp,0 - mov DWORD PTR 36[edi],ebx - mov edx,DWORD PTR 12[esi] - ; saved r[9] - ; ############### Calculate word 10 - xor ebx,ebx - ; sqr a[7]*a[3] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 24[esi] - adc ebx,0 - mov edx,DWORD PTR 16[esi] - ; sqr a[6]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 20[esi] - adc ebx,0 - ; sqr a[5]*a[5] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR 16[esi] - adc ebx,0 - mov DWORD PTR 40[edi],ecx - mov eax,DWORD PTR 28[esi] - ; saved r[10] - ; ############### Calculate word 11 - xor ecx,ecx - ; sqr a[7]*a[4] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 24[esi] - adc ecx,0 - mov edx,DWORD PTR 20[esi] - ; sqr a[6]*a[5] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 28[esi] - adc ecx,0 - mov DWORD PTR 44[edi],ebp - mov edx,DWORD PTR 20[esi] - ; saved r[11] - ; ############### Calculate word 12 - xor ebp,ebp - ; sqr a[7]*a[5] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 24[esi] - adc ebp,0 - ; sqr a[6]*a[6] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR 24[esi] - adc ebp,0 - mov DWORD PTR 48[edi],ebx - mov eax,DWORD PTR 28[esi] - ; saved r[12] - ; ############### Calculate word 13 - xor ebx,ebx - ; sqr a[7]*a[6] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 28[esi] - adc ebx,0 - mov DWORD PTR 52[edi],ecx - ; saved r[13] - ; ############### Calculate word 14 - xor ecx,ecx - ; sqr a[7]*a[7] - mul eax - add ebp,eax - adc ebx,edx - adc ecx,0 - mov DWORD PTR 56[edi],ebp - ; saved r[14] - mov DWORD PTR 60[edi],ebx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_sqr_comba8 ENDP -ALIGN 16 -_bn_sqr_comba4 PROC PUBLIC -$L_bn_sqr_comba4_begin:: - push esi - push edi - push ebp - push ebx - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - xor ebx,ebx - xor ecx,ecx - mov eax,DWORD PTR [esi] - ; ############### Calculate word 0 - xor ebp,ebp - ; sqr a[0]*a[0] - mul eax - add ebx,eax - adc ecx,edx - mov edx,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR [edi],ebx - mov eax,DWORD PTR 4[esi] - ; saved r[0] - ; ############### Calculate word 1 - xor ebx,ebx - ; sqr a[1]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 4[edi],ecx - mov edx,DWORD PTR [esi] - ; saved r[1] - ; ############### Calculate word 2 - xor ecx,ecx - ; sqr a[2]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 4[esi] - adc ecx,0 - ; sqr a[1]*a[1] - mul eax - add ebp,eax - adc ebx,edx - mov edx,DWORD PTR [esi] - adc ecx,0 - mov DWORD PTR 8[edi],ebp - mov eax,DWORD PTR 12[esi] - ; saved r[2] - ; ############### Calculate word 3 - xor ebp,ebp - ; sqr a[3]*a[0] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 8[esi] - adc ebp,0 - mov edx,DWORD PTR 4[esi] - ; sqr a[2]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebp,0 - add ebx,eax - adc ecx,edx - mov eax,DWORD PTR 12[esi] - adc ebp,0 - mov DWORD PTR 12[edi],ebx - mov edx,DWORD PTR 4[esi] - ; saved r[3] - ; ############### Calculate word 4 - xor ebx,ebx - ; sqr a[3]*a[1] - mul edx - add eax,eax - adc edx,edx - adc ebx,0 - add ecx,eax - adc ebp,edx - mov eax,DWORD PTR 8[esi] - adc ebx,0 - ; sqr a[2]*a[2] - mul eax - add ecx,eax - adc ebp,edx - mov edx,DWORD PTR 8[esi] - adc ebx,0 - mov DWORD PTR 16[edi],ecx - mov eax,DWORD PTR 12[esi] - ; saved r[4] - ; ############### Calculate word 5 - xor ecx,ecx - ; sqr a[3]*a[2] - mul edx - add eax,eax - adc edx,edx - adc ecx,0 - add ebp,eax - adc ebx,edx - mov eax,DWORD PTR 12[esi] - adc ecx,0 - mov DWORD PTR 20[edi],ebp - ; saved r[5] - ; ############### Calculate word 6 - xor ebp,ebp - ; sqr a[3]*a[3] - mul eax - add ebx,eax - adc ecx,edx - adc ebp,0 - mov DWORD PTR 24[edi],ebx - ; saved r[6] - mov DWORD PTR 28[edi],ecx - pop ebx - pop ebp - pop edi - pop esi - ret -_bn_sqr_comba4 ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-gf2m.asm b/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-gf2m.asm deleted file mode 100644 index 57adf3ace49e1f..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-gf2m.asm +++ /dev/null @@ -1,361 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/x86-gf2m.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -__mul_1x1_mmx PROC PRIVATE - sub esp,36 - mov ecx,eax - lea edx,DWORD PTR [eax*1+eax] - and ecx,1073741823 - lea ebp,DWORD PTR [edx*1+edx] - mov DWORD PTR [esp],0 - and edx,2147483647 - movd mm2,eax - movd mm3,ebx - mov DWORD PTR 4[esp],ecx - xor ecx,edx - pxor mm5,mm5 - pxor mm4,mm4 - mov DWORD PTR 8[esp],edx - xor edx,ebp - mov DWORD PTR 12[esp],ecx - pcmpgtd mm5,mm2 - paddd mm2,mm2 - xor ecx,edx - mov DWORD PTR 16[esp],ebp - xor ebp,edx - pand mm5,mm3 - pcmpgtd mm4,mm2 - mov DWORD PTR 20[esp],ecx - xor ebp,ecx - psllq mm5,31 - pand mm4,mm3 - mov DWORD PTR 24[esp],edx - mov esi,7 - mov DWORD PTR 28[esp],ebp - mov ebp,esi - and esi,ebx - shr ebx,3 - mov edi,ebp - psllq mm4,30 - and edi,ebx - shr ebx,3 - movd mm0,DWORD PTR [esi*4+esp] - mov esi,ebp - and esi,ebx - shr ebx,3 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,3 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,6 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,9 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,12 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,15 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,18 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - mov edi,ebp - psllq mm2,21 - and edi,ebx - shr ebx,3 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - mov esi,ebp - psllq mm1,24 - and esi,ebx - shr ebx,3 - pxor mm0,mm1 - movd mm2,DWORD PTR [edi*4+esp] - pxor mm0,mm4 - psllq mm2,27 - pxor mm0,mm2 - movd mm1,DWORD PTR [esi*4+esp] - pxor mm0,mm5 - psllq mm1,30 - add esp,36 - pxor mm0,mm1 - ret -__mul_1x1_mmx ENDP -ALIGN 16 -__mul_1x1_ialu PROC PRIVATE - sub esp,36 - mov ecx,eax - lea edx,DWORD PTR [eax*1+eax] - lea ebp,DWORD PTR [eax*4] - and ecx,1073741823 - lea edi,DWORD PTR [eax*1+eax] - sar eax,31 - mov DWORD PTR [esp],0 - and edx,2147483647 - mov DWORD PTR 4[esp],ecx - xor ecx,edx - mov DWORD PTR 8[esp],edx - xor edx,ebp - mov DWORD PTR 12[esp],ecx - xor ecx,edx - mov DWORD PTR 16[esp],ebp - xor ebp,edx - mov DWORD PTR 20[esp],ecx - xor ebp,ecx - sar edi,31 - and eax,ebx - mov DWORD PTR 24[esp],edx - and edi,ebx - mov DWORD PTR 28[esp],ebp - mov edx,eax - shl eax,31 - mov ecx,edi - shr edx,1 - mov esi,7 - shl edi,30 - and esi,ebx - shr ecx,2 - xor eax,edi - shr ebx,3 - mov edi,7 - and edi,ebx - shr ebx,3 - xor edx,ecx - xor eax,DWORD PTR [esi*4+esp] - mov esi,7 - and esi,ebx - shr ebx,3 - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,3 - and edi,ebx - shr ecx,29 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,6 - and esi,ebx - shr ebp,26 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,9 - and edi,ebx - shr ecx,23 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,12 - and esi,ebx - shr ebp,20 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,15 - and edi,ebx - shr ecx,17 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,18 - and esi,ebx - shr ebp,14 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov edi,7 - mov ecx,ebp - shl ebp,21 - and edi,ebx - shr ecx,11 - xor eax,ebp - shr ebx,3 - xor edx,ecx - mov ecx,DWORD PTR [esi*4+esp] - mov esi,7 - mov ebp,ecx - shl ecx,24 - and esi,ebx - shr ebp,8 - xor eax,ecx - shr ebx,3 - xor edx,ebp - mov ebp,DWORD PTR [edi*4+esp] - mov ecx,ebp - shl ebp,27 - mov edi,DWORD PTR [esi*4+esp] - shr ecx,5 - mov esi,edi - xor eax,ebp - shl edi,30 - xor edx,ecx - shr esi,2 - xor eax,edi - xor edx,esi - add esp,36 - ret -__mul_1x1_ialu ENDP -ALIGN 16 -_bn_GF2m_mul_2x2 PROC PUBLIC -$L_bn_GF2m_mul_2x2_begin:: - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov eax,DWORD PTR [edx] - mov edx,DWORD PTR 4[edx] - test eax,8388608 - jz $L000ialu - test eax,16777216 - jz $L001mmx - test edx,2 - jz $L001mmx - movups xmm0,XMMWORD PTR 8[esp] - shufps xmm0,xmm0,177 -DB 102,15,58,68,192,1 - mov eax,DWORD PTR 4[esp] - movups XMMWORD PTR [eax],xmm0 - ret -ALIGN 16 -$L001mmx: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 32[esp] - call __mul_1x1_mmx - movq mm7,mm0 - mov eax,DWORD PTR 28[esp] - mov ebx,DWORD PTR 36[esp] - call __mul_1x1_mmx - movq mm6,mm0 - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 32[esp] - xor eax,DWORD PTR 28[esp] - xor ebx,DWORD PTR 36[esp] - call __mul_1x1_mmx - pxor mm0,mm7 - mov eax,DWORD PTR 20[esp] - pxor mm0,mm6 - movq mm2,mm0 - psllq mm0,32 - pop edi - psrlq mm2,32 - pop esi - pxor mm0,mm6 - pop ebx - pxor mm2,mm7 - movq QWORD PTR [eax],mm0 - pop ebp - movq QWORD PTR 8[eax],mm2 - emms - ret -ALIGN 16 -$L000ialu: - push ebp - push ebx - push esi - push edi - sub esp,20 - mov eax,DWORD PTR 44[esp] - mov ebx,DWORD PTR 52[esp] - call __mul_1x1_ialu - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],edx - mov eax,DWORD PTR 48[esp] - mov ebx,DWORD PTR 56[esp] - call __mul_1x1_ialu - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],edx - mov eax,DWORD PTR 44[esp] - mov ebx,DWORD PTR 52[esp] - xor eax,DWORD PTR 48[esp] - xor ebx,DWORD PTR 56[esp] - call __mul_1x1_ialu - mov ebp,DWORD PTR 40[esp] - mov ebx,DWORD PTR [esp] - mov ecx,DWORD PTR 4[esp] - mov edi,DWORD PTR 8[esp] - mov esi,DWORD PTR 12[esp] - xor eax,edx - xor edx,ecx - xor eax,ebx - mov DWORD PTR [ebp],ebx - xor edx,edi - mov DWORD PTR 12[ebp],esi - xor eax,esi - add esp,20 - xor edx,esi - pop edi - xor eax,edx - pop esi - mov DWORD PTR 8[ebp],edx - pop ebx - mov DWORD PTR 4[ebp],eax - pop ebp - ret -_bn_GF2m_mul_2x2 ENDP -DB 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105 -DB 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-mont.asm b/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-mont.asm deleted file mode 100644 index f026dae738fb4b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-mont.asm +++ /dev/null @@ -1,491 +0,0 @@ -TITLE ../openssl/crypto/bn/asm/x86-mont.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_bn_mul_mont PROC PUBLIC -$L_bn_mul_mont_begin:: - push ebp - push ebx - push esi - push edi - xor eax,eax - mov edi,DWORD PTR 40[esp] - cmp edi,4 - jl $L000just_leave - lea esi,DWORD PTR 20[esp] - lea edx,DWORD PTR 24[esp] - add edi,2 - neg edi - lea ebp,DWORD PTR [edi*4+esp-32] - neg edi - mov eax,ebp - sub eax,edx - and eax,2047 - sub ebp,eax - xor edx,ebp - and edx,2048 - xor edx,2048 - sub ebp,edx - and ebp,-64 - mov eax,esp - sub eax,ebp - and eax,-4096 - mov edx,esp - lea esp,DWORD PTR [eax*1+ebp] - mov eax,DWORD PTR [esp] - cmp esp,ebp - ja $L001page_walk - jmp $L002page_walk_done -ALIGN 16 -$L001page_walk: - lea esp,DWORD PTR [esp-4096] - mov eax,DWORD PTR [esp] - cmp esp,ebp - ja $L001page_walk -$L002page_walk_done: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov ebp,DWORD PTR 12[esi] - mov esi,DWORD PTR 16[esi] - mov esi,DWORD PTR [esi] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],ebp - mov DWORD PTR 20[esp],esi - lea ebx,DWORD PTR [edi-3] - mov DWORD PTR 24[esp],edx - lea eax,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [eax],26 - jnc $L003non_sse2 - mov eax,-1 - movd mm7,eax - mov esi,DWORD PTR 8[esp] - mov edi,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - xor edx,edx - xor ecx,ecx - movd mm4,DWORD PTR [edi] - movd mm5,DWORD PTR [esi] - movd mm3,DWORD PTR [ebp] - pmuludq mm5,mm4 - movq mm2,mm5 - movq mm0,mm5 - pand mm0,mm7 - pmuludq mm5,QWORD PTR 20[esp] - pmuludq mm3,mm5 - paddq mm3,mm0 - movd mm1,DWORD PTR 4[ebp] - movd mm0,DWORD PTR 4[esi] - psrlq mm2,32 - psrlq mm3,32 - inc ecx -ALIGN 16 -$L0041st: - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - movd mm1,DWORD PTR 4[ecx*4+ebp] - paddq mm3,mm0 - movd mm0,DWORD PTR 4[ecx*4+esi] - psrlq mm2,32 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm3,32 - lea ecx,DWORD PTR 1[ecx] - cmp ecx,ebx - jl $L0041st - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - paddq mm3,mm0 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm2,32 - psrlq mm3,32 - paddq mm3,mm2 - movq QWORD PTR 32[ebx*4+esp],mm3 - inc edx -$L005outer: - xor ecx,ecx - movd mm4,DWORD PTR [edx*4+edi] - movd mm5,DWORD PTR [esi] - movd mm6,DWORD PTR 32[esp] - movd mm3,DWORD PTR [ebp] - pmuludq mm5,mm4 - paddq mm5,mm6 - movq mm0,mm5 - movq mm2,mm5 - pand mm0,mm7 - pmuludq mm5,QWORD PTR 20[esp] - pmuludq mm3,mm5 - paddq mm3,mm0 - movd mm6,DWORD PTR 36[esp] - movd mm1,DWORD PTR 4[ebp] - movd mm0,DWORD PTR 4[esi] - psrlq mm2,32 - psrlq mm3,32 - paddq mm2,mm6 - inc ecx - dec ebx -$L006inner: - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - movd mm6,DWORD PTR 36[ecx*4+esp] - pand mm0,mm7 - movd mm1,DWORD PTR 4[ecx*4+ebp] - paddq mm3,mm0 - movd mm0,DWORD PTR 4[ecx*4+esi] - psrlq mm2,32 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm3,32 - paddq mm2,mm6 - dec ebx - lea ecx,DWORD PTR 1[ecx] - jnz $L006inner - mov ebx,ecx - pmuludq mm0,mm4 - pmuludq mm1,mm5 - paddq mm2,mm0 - paddq mm3,mm1 - movq mm0,mm2 - pand mm0,mm7 - paddq mm3,mm0 - movd DWORD PTR 28[ecx*4+esp],mm3 - psrlq mm2,32 - psrlq mm3,32 - movd mm6,DWORD PTR 36[ebx*4+esp] - paddq mm3,mm2 - paddq mm3,mm6 - movq QWORD PTR 32[ebx*4+esp],mm3 - lea edx,DWORD PTR 1[edx] - cmp edx,ebx - jle $L005outer - emms - jmp $L007common_tail -ALIGN 16 -$L003non_sse2: - mov esi,DWORD PTR 8[esp] - lea ebp,DWORD PTR 1[ebx] - mov edi,DWORD PTR 12[esp] - xor ecx,ecx - mov edx,esi - and ebp,1 - sub edx,edi - lea eax,DWORD PTR 4[ebx*4+edi] - or ebp,edx - mov edi,DWORD PTR [edi] - jz $L008bn_sqr_mont - mov DWORD PTR 28[esp],eax - mov eax,DWORD PTR [esi] - xor edx,edx -ALIGN 16 -$L009mull: - mov ebp,edx - mul edi - add ebp,eax - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - mov eax,DWORD PTR [ecx*4+esi] - cmp ecx,ebx - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L009mull - mov ebp,edx - mul edi - mov edi,DWORD PTR 20[esp] - add eax,ebp - mov esi,DWORD PTR 16[esp] - adc edx,0 - imul edi,DWORD PTR 32[esp] - mov DWORD PTR 32[ebx*4+esp],eax - xor ecx,ecx - mov DWORD PTR 36[ebx*4+esp],edx - mov DWORD PTR 40[ebx*4+esp],ecx - mov eax,DWORD PTR [esi] - mul edi - add eax,DWORD PTR 32[esp] - mov eax,DWORD PTR 4[esi] - adc edx,0 - inc ecx - jmp $L0102ndmadd -ALIGN 16 -$L0111stmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L0111stmadd - mov ebp,edx - mul edi - add eax,DWORD PTR 32[ebx*4+esp] - mov edi,DWORD PTR 20[esp] - adc edx,0 - mov esi,DWORD PTR 16[esp] - add ebp,eax - adc edx,0 - imul edi,DWORD PTR 32[esp] - xor ecx,ecx - add edx,DWORD PTR 36[ebx*4+esp] - mov DWORD PTR 32[ebx*4+esp],ebp - adc ecx,0 - mov eax,DWORD PTR [esi] - mov DWORD PTR 36[ebx*4+esp],edx - mov DWORD PTR 40[ebx*4+esp],ecx - mul edi - add eax,DWORD PTR 32[esp] - mov eax,DWORD PTR 4[esi] - adc edx,0 - mov ecx,1 -ALIGN 16 -$L0102ndmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 24[ecx*4+esp],ebp - jl $L0102ndmadd - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ebx*4+esp] - adc edx,0 - add ebp,eax - adc edx,0 - mov DWORD PTR 28[ebx*4+esp],ebp - xor eax,eax - mov ecx,DWORD PTR 12[esp] - add edx,DWORD PTR 36[ebx*4+esp] - adc eax,DWORD PTR 40[ebx*4+esp] - lea ecx,DWORD PTR 4[ecx] - mov DWORD PTR 32[ebx*4+esp],edx - cmp ecx,DWORD PTR 28[esp] - mov DWORD PTR 36[ebx*4+esp],eax - je $L007common_tail - mov edi,DWORD PTR [ecx] - mov esi,DWORD PTR 8[esp] - mov DWORD PTR 12[esp],ecx - xor ecx,ecx - xor edx,edx - mov eax,DWORD PTR [esi] - jmp $L0111stmadd -ALIGN 16 -$L008bn_sqr_mont: - mov DWORD PTR [esp],ebx - mov DWORD PTR 12[esp],ecx - mov eax,edi - mul edi - mov DWORD PTR 32[esp],eax - mov ebx,edx - shr edx,1 - and ebx,1 - inc ecx -ALIGN 16 -$L012sqr: - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - lea ecx,DWORD PTR 1[ecx] - adc edx,0 - lea ebp,DWORD PTR [eax*2+ebx] - shr eax,31 - cmp ecx,DWORD PTR [esp] - mov ebx,eax - mov DWORD PTR 28[ecx*4+esp],ebp - jl $L012sqr - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - mov edi,DWORD PTR 20[esp] - adc edx,0 - mov esi,DWORD PTR 16[esp] - lea ebp,DWORD PTR [eax*2+ebx] - imul edi,DWORD PTR 32[esp] - shr eax,31 - mov DWORD PTR 32[ecx*4+esp],ebp - lea ebp,DWORD PTR [edx*2+eax] - mov eax,DWORD PTR [esi] - shr edx,31 - mov DWORD PTR 36[ecx*4+esp],ebp - mov DWORD PTR 40[ecx*4+esp],edx - mul edi - add eax,DWORD PTR 32[esp] - mov ebx,ecx - adc edx,0 - mov eax,DWORD PTR 4[esi] - mov ecx,1 -ALIGN 16 -$L0133rdmadd: - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ecx*4+esp] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR 4[ecx*4+esi] - adc edx,0 - mov DWORD PTR 28[ecx*4+esp],ebp - mov ebp,edx - mul edi - add ebp,DWORD PTR 36[ecx*4+esp] - lea ecx,DWORD PTR 2[ecx] - adc edx,0 - add ebp,eax - mov eax,DWORD PTR [ecx*4+esi] - adc edx,0 - cmp ecx,ebx - mov DWORD PTR 24[ecx*4+esp],ebp - jl $L0133rdmadd - mov ebp,edx - mul edi - add ebp,DWORD PTR 32[ebx*4+esp] - adc edx,0 - add ebp,eax - adc edx,0 - mov DWORD PTR 28[ebx*4+esp],ebp - mov ecx,DWORD PTR 12[esp] - xor eax,eax - mov esi,DWORD PTR 8[esp] - add edx,DWORD PTR 36[ebx*4+esp] - adc eax,DWORD PTR 40[ebx*4+esp] - mov DWORD PTR 32[ebx*4+esp],edx - cmp ecx,ebx - mov DWORD PTR 36[ebx*4+esp],eax - je $L007common_tail - mov edi,DWORD PTR 4[ecx*4+esi] - lea ecx,DWORD PTR 1[ecx] - mov eax,edi - mov DWORD PTR 12[esp],ecx - mul edi - add eax,DWORD PTR 32[ecx*4+esp] - adc edx,0 - mov DWORD PTR 32[ecx*4+esp],eax - xor ebp,ebp - cmp ecx,ebx - lea ecx,DWORD PTR 1[ecx] - je $L014sqrlast - mov ebx,edx - shr edx,1 - and ebx,1 -ALIGN 16 -$L015sqradd: - mov eax,DWORD PTR [ecx*4+esi] - mov ebp,edx - mul edi - add eax,ebp - lea ebp,DWORD PTR [eax*1+eax] - adc edx,0 - shr eax,31 - add ebp,DWORD PTR 32[ecx*4+esp] - lea ecx,DWORD PTR 1[ecx] - adc eax,0 - add ebp,ebx - adc eax,0 - cmp ecx,DWORD PTR [esp] - mov DWORD PTR 28[ecx*4+esp],ebp - mov ebx,eax - jle $L015sqradd - mov ebp,edx - add edx,edx - shr ebp,31 - add edx,ebx - adc ebp,0 -$L014sqrlast: - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 16[esp] - imul edi,DWORD PTR 32[esp] - add edx,DWORD PTR 32[ecx*4+esp] - mov eax,DWORD PTR [esi] - adc ebp,0 - mov DWORD PTR 32[ecx*4+esp],edx - mov DWORD PTR 36[ecx*4+esp],ebp - mul edi - add eax,DWORD PTR 32[esp] - lea ebx,DWORD PTR [ecx-1] - adc edx,0 - mov ecx,1 - mov eax,DWORD PTR 4[esi] - jmp $L0133rdmadd -ALIGN 16 -$L007common_tail: - mov ebp,DWORD PTR 16[esp] - mov edi,DWORD PTR 4[esp] - lea esi,DWORD PTR 32[esp] - mov eax,DWORD PTR [esi] - mov ecx,ebx - xor edx,edx -ALIGN 16 -$L016sub: - sbb eax,DWORD PTR [edx*4+ebp] - mov DWORD PTR [edx*4+edi],eax - dec ecx - mov eax,DWORD PTR 4[edx*4+esi] - lea edx,DWORD PTR 1[edx] - jge $L016sub - sbb eax,0 - and esi,eax - not eax - mov ebp,edi - and ebp,eax - or esi,ebp -ALIGN 16 -$L017copy: - mov eax,DWORD PTR [ebx*4+esi] - mov DWORD PTR [ebx*4+edi],eax - mov DWORD PTR 32[ebx*4+esp],ecx - dec ebx - jge $L017copy - mov esp,DWORD PTR 24[esp] - mov eax,1 -$L000just_leave: - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_mont ENDP -DB 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105 -DB 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56 -DB 54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 -DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46 -DB 111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/camellia/cmll-x86.asm b/deps/openssl/asm_obsolete/x86-win32-masm/camellia/cmll-x86.asm deleted file mode 100644 index 6aac94e4906752..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/camellia/cmll-x86.asm +++ /dev/null @@ -1,2370 +0,0 @@ -TITLE cmll-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_Camellia_EncryptBlock_Rounds PROC PUBLIC -$L_Camellia_EncryptBlock_Rounds_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - lea eax,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 16[esp],eax - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L000pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 32[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_EncryptBlock_Rounds ENDP -ALIGN 16 -_Camellia_EncryptBlock PROC PUBLIC -$L_Camellia_EncryptBlock_begin:: - mov eax,128 - sub eax,DWORD PTR 4[esp] - mov eax,3 - adc eax,0 - mov DWORD PTR 4[esp],eax - jmp $L_Camellia_EncryptBlock_Rounds_begin -_Camellia_EncryptBlock ENDP -ALIGN 16 -_Camellia_encrypt PROC PUBLIC -$L_Camellia_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - mov eax,DWORD PTR 272[edi] - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - lea eax,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 16[esp],eax - call $L001pic_point -$L001pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L001pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 24[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_encrypt ENDP -ALIGN 16 -__x86_Camellia_encrypt PROC PRIVATE - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR 16[edi] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edx -ALIGN 16 -$L002loop: - xor eax,esi - xor ebx,DWORD PTR 20[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 24[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 28[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 32[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR 36[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 40[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 44[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 48[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR 52[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 56[edi] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 60[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 64[edi] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - add edi,64 - cmp edi,DWORD PTR 20[esp] - je $L003done - and esi,eax - mov edx,DWORD PTR 16[esp] - rol esi,1 - mov ecx,edx - xor ebx,esi - or ecx,DWORD PTR 12[edi] - mov DWORD PTR 8[esp],ebx - xor ecx,DWORD PTR 12[esp] - mov esi,DWORD PTR 4[edi] - mov DWORD PTR 12[esp],ecx - or esi,ebx - and ecx,DWORD PTR 8[edi] - xor eax,esi - rol ecx,1 - mov DWORD PTR 4[esp],eax - xor edx,ecx - mov esi,DWORD PTR 16[edi] - mov DWORD PTR 16[esp],edx - jmp $L002loop -ALIGN 8 -$L003done: - mov ecx,eax - mov edx,ebx - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - xor eax,esi - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - ret -__x86_Camellia_encrypt ENDP -ALIGN 16 -_Camellia_DecryptBlock_Rounds PROC PUBLIC -$L_Camellia_DecryptBlock_Rounds_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - mov DWORD PTR 16[esp],edi - lea edi,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - call $L004pic_point -$L004pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L004pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 32[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_DecryptBlock_Rounds ENDP -ALIGN 16 -_Camellia_DecryptBlock PROC PUBLIC -$L_Camellia_DecryptBlock_begin:: - mov eax,128 - sub eax,DWORD PTR 4[esp] - mov eax,3 - adc eax,0 - mov DWORD PTR 4[esp],eax - jmp $L_Camellia_DecryptBlock_Rounds_begin -_Camellia_DecryptBlock ENDP -ALIGN 16 -_Camellia_decrypt PROC PUBLIC -$L_Camellia_decrypt_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 28[esp] - mov ebx,esp - sub esp,28 - and esp,-64 - mov eax,DWORD PTR 272[edi] - lea ecx,DWORD PTR [edi-127] - sub ecx,esp - neg ecx - and ecx,960 - sub esp,ecx - add esp,4 - shl eax,6 - mov DWORD PTR 16[esp],edi - lea edi,DWORD PTR [eax*1+edi] - mov DWORD PTR 20[esp],ebx - call $L005pic_point -$L005pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L005pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov esp,DWORD PTR 20[esp] - bswap eax - mov esi,DWORD PTR 24[esp] - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_decrypt ENDP -ALIGN 16 -__x86_Camellia_decrypt PROC PRIVATE - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov esi,DWORD PTR [edi-8] - mov DWORD PTR 4[esp],eax - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edx -ALIGN 16 -$L006loop: - xor eax,esi - xor ebx,DWORD PTR [edi-4] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-16] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-12] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-24] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR [edi-20] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-32] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-28] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-40] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - xor eax,esi - xor ebx,DWORD PTR [edi-36] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 16[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 12[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-48] - xor edx,ecx - mov DWORD PTR 16[esp],edx - xor ecx,ebx - mov DWORD PTR 12[esp],ecx - xor ecx,esi - xor edx,DWORD PTR [edi-44] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 8[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR 4[esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR [edi-56] - xor ebx,eax - mov DWORD PTR 8[esp],ebx - xor eax,edx - mov DWORD PTR 4[esp],eax - sub edi,64 - cmp edi,DWORD PTR 20[esp] - je $L007done - and esi,eax - mov edx,DWORD PTR 16[esp] - rol esi,1 - mov ecx,edx - xor ebx,esi - or ecx,DWORD PTR 4[edi] - mov DWORD PTR 8[esp],ebx - xor ecx,DWORD PTR 12[esp] - mov esi,DWORD PTR 12[edi] - mov DWORD PTR 12[esp],ecx - or esi,ebx - and ecx,DWORD PTR [edi] - xor eax,esi - rol ecx,1 - mov DWORD PTR 4[esp],eax - xor edx,ecx - mov esi,DWORD PTR [edi-8] - mov DWORD PTR 16[esp],edx - jmp $L006loop -ALIGN 8 -$L007done: - mov ecx,eax - mov edx,ebx - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - xor ecx,esi - xor edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - ret -__x86_Camellia_decrypt ENDP -ALIGN 16 -_Camellia_Ekeygen PROC PUBLIC -$L_Camellia_Ekeygen_begin:: - push ebp - push ebx - push esi - push edi - sub esp,16 - mov ebp,DWORD PTR 36[esp] - mov esi,DWORD PTR 40[esp] - mov edi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - cmp ebp,128 - je $L0081st128 - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - cmp ebp,192 - je $L0091st192 - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - jmp $L0101st256 -ALIGN 4 -$L0091st192: - mov ecx,eax - mov edx,ebx - not ecx - not edx -ALIGN 4 -$L0101st256: - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 32[edi],eax - mov DWORD PTR 36[edi],ebx - mov DWORD PTR 40[edi],ecx - mov DWORD PTR 44[edi],edx - xor eax,DWORD PTR [edi] - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] -ALIGN 4 -$L0081st128: - call $L011pic_point -$L011pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L011pic_point)[ebp] - lea edi,DWORD PTR ($LCamellia_SIGMA-$LCamellia_SBOX)[ebp] - mov esi,DWORD PTR [edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 4[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 8[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 12[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 16[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 44[esp] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - xor edx,DWORD PTR 12[esi] - mov esi,DWORD PTR 16[edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 20[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 24[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 28[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 32[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 36[esp] - cmp esi,128 - jne $L0122nd256 - mov edi,DWORD PTR 44[esp] - lea edi,DWORD PTR 128[edi] - mov DWORD PTR [edi-112],eax - mov DWORD PTR [edi-108],ebx - mov DWORD PTR [edi-104],ecx - mov DWORD PTR [edi-100],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-80],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-76],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-72],ecx - mov DWORD PTR [edi-68],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-64],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-60],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-56],ecx - mov DWORD PTR [edi-52],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-32],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-28],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi-16],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR [edi-12],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-8],ecx - mov DWORD PTR [edi-4],edx - mov ebp,ebx - shl ebx,2 - mov esi,ecx - shr esi,30 - shl ecx,2 - or ebx,esi - mov esi,edx - shl edx,2 - mov DWORD PTR 32[edi],ebx - shr esi,30 - or ecx,esi - shr ebp,30 - mov esi,eax - shr esi,30 - mov DWORD PTR 36[edi],ecx - shl eax,2 - or edx,esi - or eax,ebp - mov DWORD PTR 40[edi],edx - mov DWORD PTR 44[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 64[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 68[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 72[edi],edx - mov DWORD PTR 76[edi],eax - mov ebx,DWORD PTR [edi-128] - mov ecx,DWORD PTR [edi-124] - mov edx,DWORD PTR [edi-120] - mov eax,DWORD PTR [edi-116] - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-96],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-92],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-88],edx - mov DWORD PTR [edi-84],eax - mov ebp,ebx - shl ebx,30 - mov esi,ecx - shr esi,2 - shl ecx,30 - or ebx,esi - mov esi,edx - shl edx,30 - mov DWORD PTR [edi-48],ebx - shr esi,2 - or ecx,esi - shr ebp,2 - mov esi,eax - shr esi,2 - mov DWORD PTR [edi-44],ecx - shl eax,30 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-40],edx - mov DWORD PTR [edi-36],eax - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-24],edx - mov DWORD PTR [edi-20],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR [edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 4[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 8[edi],edx - mov DWORD PTR 12[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 16[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 20[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 24[edi],edx - mov DWORD PTR 28[edi],eax - mov ebp,ebx - shl ebx,17 - mov esi,ecx - shr esi,15 - shl ecx,17 - or ebx,esi - mov esi,edx - shl edx,17 - mov DWORD PTR 48[edi],ebx - shr esi,15 - or ecx,esi - shr ebp,15 - mov esi,eax - shr esi,15 - mov DWORD PTR 52[edi],ecx - shl eax,17 - or edx,esi - or eax,ebp - mov DWORD PTR 56[edi],edx - mov DWORD PTR 60[edi],eax - mov eax,3 - jmp $L013done -ALIGN 16 -$L0122nd256: - mov esi,DWORD PTR 44[esp] - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],ebx - mov DWORD PTR 56[esi],ecx - mov DWORD PTR 60[esi],edx - xor eax,DWORD PTR 32[esi] - xor ebx,DWORD PTR 36[esi] - xor ecx,DWORD PTR 40[esi] - xor edx,DWORD PTR 44[esi] - mov esi,DWORD PTR 32[edi] - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - xor eax,esi - xor ebx,DWORD PTR 36[edi] - movzx esi,ah - mov edx,DWORD PTR 2052[esi*8+ebp] - movzx esi,al - xor edx,DWORD PTR 4[esi*8+ebp] - shr eax,16 - movzx esi,bl - mov ecx,DWORD PTR [esi*8+ebp] - movzx esi,ah - xor edx,DWORD PTR [esi*8+ebp] - movzx esi,bh - xor ecx,DWORD PTR 4[esi*8+ebp] - shr ebx,16 - movzx eax,al - xor edx,DWORD PTR 2048[eax*8+ebp] - movzx esi,bh - mov eax,DWORD PTR 12[esp] - xor ecx,edx - ror edx,8 - xor ecx,DWORD PTR 2048[esi*8+ebp] - movzx esi,bl - mov ebx,DWORD PTR 8[esp] - xor edx,eax - xor ecx,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 40[edi] - xor edx,ecx - mov DWORD PTR 12[esp],edx - xor ecx,ebx - mov DWORD PTR 8[esp],ecx - xor ecx,esi - xor edx,DWORD PTR 44[edi] - movzx esi,ch - mov ebx,DWORD PTR 2052[esi*8+ebp] - movzx esi,cl - xor ebx,DWORD PTR 4[esi*8+ebp] - shr ecx,16 - movzx esi,dl - mov eax,DWORD PTR [esi*8+ebp] - movzx esi,ch - xor ebx,DWORD PTR [esi*8+ebp] - movzx esi,dh - xor eax,DWORD PTR 4[esi*8+ebp] - shr edx,16 - movzx ecx,cl - xor ebx,DWORD PTR 2048[ecx*8+ebp] - movzx esi,dh - mov ecx,DWORD PTR 4[esp] - xor eax,ebx - ror ebx,8 - xor eax,DWORD PTR 2048[esi*8+ebp] - movzx esi,dl - mov edx,DWORD PTR [esp] - xor ebx,ecx - xor eax,DWORD PTR 2052[esi*8+ebp] - mov esi,DWORD PTR 48[edi] - xor ebx,eax - mov DWORD PTR 4[esp],ebx - xor eax,edx - mov DWORD PTR [esp],eax - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov edi,DWORD PTR 44[esp] - lea edi,DWORD PTR 128[edi] - mov DWORD PTR [edi-112],eax - mov DWORD PTR [edi-108],ebx - mov DWORD PTR [edi-104],ecx - mov DWORD PTR [edi-100],edx - mov ebp,eax - shl eax,30 - mov esi,ebx - shr esi,2 - shl ebx,30 - or eax,esi - mov esi,ecx - shl ecx,30 - mov DWORD PTR [edi-48],eax - shr esi,2 - or ebx,esi - shr ebp,2 - mov esi,edx - shr esi,2 - mov DWORD PTR [edi-44],ebx - shl edx,30 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-40],ecx - mov DWORD PTR [edi-36],edx - mov ebp,eax - shl eax,30 - mov esi,ebx - shr esi,2 - shl ebx,30 - or eax,esi - mov esi,ecx - shl ecx,30 - mov DWORD PTR 32[edi],eax - shr esi,2 - or ebx,esi - shr ebp,2 - mov esi,edx - shr esi,2 - mov DWORD PTR 36[edi],ebx - shl edx,30 - or ecx,esi - or edx,ebp - mov DWORD PTR 40[edi],ecx - mov DWORD PTR 44[edi],edx - mov ebp,ebx - shl ebx,19 - mov esi,ecx - shr esi,13 - shl ecx,19 - or ebx,esi - mov esi,edx - shl edx,19 - mov DWORD PTR 128[edi],ebx - shr esi,13 - or ecx,esi - shr ebp,13 - mov esi,eax - shr esi,13 - mov DWORD PTR 132[edi],ecx - shl eax,19 - or edx,esi - or eax,ebp - mov DWORD PTR 136[edi],edx - mov DWORD PTR 140[edi],eax - mov ebx,DWORD PTR [edi-96] - mov ecx,DWORD PTR [edi-92] - mov edx,DWORD PTR [edi-88] - mov eax,DWORD PTR [edi-84] - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-96],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-92],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-88],edx - mov DWORD PTR [edi-84],eax - mov ebp,ebx - shl ebx,15 - mov esi,ecx - shr esi,17 - shl ecx,15 - or ebx,esi - mov esi,edx - shl edx,15 - mov DWORD PTR [edi-64],ebx - shr esi,17 - or ecx,esi - shr ebp,17 - mov esi,eax - shr esi,17 - mov DWORD PTR [edi-60],ecx - shl eax,15 - or edx,esi - or eax,ebp - mov DWORD PTR [edi-56],edx - mov DWORD PTR [edi-52],eax - mov ebp,ebx - shl ebx,30 - mov esi,ecx - shr esi,2 - shl ecx,30 - or ebx,esi - mov esi,edx - shl edx,30 - mov DWORD PTR 16[edi],ebx - shr esi,2 - or ecx,esi - shr ebp,2 - mov esi,eax - shr esi,2 - mov DWORD PTR 20[edi],ecx - shl eax,30 - or edx,esi - or eax,ebp - mov DWORD PTR 24[edi],edx - mov DWORD PTR 28[edi],eax - mov ebp,ecx - shl ecx,2 - mov esi,edx - shr esi,30 - shl edx,2 - or ecx,esi - mov esi,eax - shl eax,2 - mov DWORD PTR 80[edi],ecx - shr esi,30 - or edx,esi - shr ebp,30 - mov esi,ebx - shr esi,30 - mov DWORD PTR 84[edi],edx - shl ebx,2 - or eax,esi - or ebx,ebp - mov DWORD PTR 88[edi],eax - mov DWORD PTR 92[edi],ebx - mov ecx,DWORD PTR [edi-80] - mov edx,DWORD PTR [edi-76] - mov eax,DWORD PTR [edi-72] - mov ebx,DWORD PTR [edi-68] - mov ebp,ecx - shl ecx,15 - mov esi,edx - shr esi,17 - shl edx,15 - or ecx,esi - mov esi,eax - shl eax,15 - mov DWORD PTR [edi-80],ecx - shr esi,17 - or edx,esi - shr ebp,17 - mov esi,ebx - shr esi,17 - mov DWORD PTR [edi-76],edx - shl ebx,15 - or eax,esi - or ebx,ebp - mov DWORD PTR [edi-72],eax - mov DWORD PTR [edi-68],ebx - mov ebp,ecx - shl ecx,30 - mov esi,edx - shr esi,2 - shl edx,30 - or ecx,esi - mov esi,eax - shl eax,30 - mov DWORD PTR [edi-16],ecx - shr esi,2 - or edx,esi - shr ebp,2 - mov esi,ebx - shr esi,2 - mov DWORD PTR [edi-12],edx - shl ebx,30 - or eax,esi - or ebx,ebp - mov DWORD PTR [edi-8],eax - mov DWORD PTR [edi-4],ebx - mov DWORD PTR 64[edi],edx - mov DWORD PTR 68[edi],eax - mov DWORD PTR 72[edi],ebx - mov DWORD PTR 76[edi],ecx - mov ebp,edx - shl edx,17 - mov esi,eax - shr esi,15 - shl eax,17 - or edx,esi - mov esi,ebx - shl ebx,17 - mov DWORD PTR 96[edi],edx - shr esi,15 - or eax,esi - shr ebp,15 - mov esi,ecx - shr esi,15 - mov DWORD PTR 100[edi],eax - shl ecx,17 - or ebx,esi - or ecx,ebp - mov DWORD PTR 104[edi],ebx - mov DWORD PTR 108[edi],ecx - mov edx,DWORD PTR [edi-128] - mov eax,DWORD PTR [edi-124] - mov ebx,DWORD PTR [edi-120] - mov ecx,DWORD PTR [edi-116] - mov ebp,eax - shl eax,13 - mov esi,ebx - shr esi,19 - shl ebx,13 - or eax,esi - mov esi,ecx - shl ecx,13 - mov DWORD PTR [edi-32],eax - shr esi,19 - or ebx,esi - shr ebp,19 - mov esi,edx - shr esi,19 - mov DWORD PTR [edi-28],ebx - shl edx,13 - or ecx,esi - or edx,ebp - mov DWORD PTR [edi-24],ecx - mov DWORD PTR [edi-20],edx - mov ebp,eax - shl eax,15 - mov esi,ebx - shr esi,17 - shl ebx,15 - or eax,esi - mov esi,ecx - shl ecx,15 - mov DWORD PTR [edi],eax - shr esi,17 - or ebx,esi - shr ebp,17 - mov esi,edx - shr esi,17 - mov DWORD PTR 4[edi],ebx - shl edx,15 - or ecx,esi - or edx,ebp - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ebp,eax - shl eax,17 - mov esi,ebx - shr esi,15 - shl ebx,17 - or eax,esi - mov esi,ecx - shl ecx,17 - mov DWORD PTR 48[edi],eax - shr esi,15 - or ebx,esi - shr ebp,15 - mov esi,edx - shr esi,15 - mov DWORD PTR 52[edi],ebx - shl edx,17 - or ecx,esi - or edx,ebp - mov DWORD PTR 56[edi],ecx - mov DWORD PTR 60[edi],edx - mov ebp,ebx - shl ebx,2 - mov esi,ecx - shr esi,30 - shl ecx,2 - or ebx,esi - mov esi,edx - shl edx,2 - mov DWORD PTR 112[edi],ebx - shr esi,30 - or ecx,esi - shr ebp,30 - mov esi,eax - shr esi,30 - mov DWORD PTR 116[edi],ecx - shl eax,2 - or edx,esi - or eax,ebp - mov DWORD PTR 120[edi],edx - mov DWORD PTR 124[edi],eax - mov eax,4 -$L013done: - lea edx,DWORD PTR 144[edi] - add esp,16 - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_Ekeygen ENDP -ALIGN 16 -_private_Camellia_set_key PROC PUBLIC -$L_private_Camellia_set_key_begin:: - push ebx - mov ecx,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - mov edx,DWORD PTR 16[esp] - mov eax,-1 - test ecx,ecx - jz $L014done - test edx,edx - jz $L014done - mov eax,-2 - cmp ebx,256 - je $L015arg_ok - cmp ebx,192 - je $L015arg_ok - cmp ebx,128 - jne $L014done -ALIGN 4 -$L015arg_ok: - push edx - push ecx - push ebx - call $L_Camellia_Ekeygen_begin - add esp,12 - mov DWORD PTR [edx],eax - xor eax,eax -ALIGN 4 -$L014done: - pop ebx - ret -_private_Camellia_set_key ENDP -ALIGN 64 -$LCamellia_SIGMA:: -DD 2694735487,1003262091,3061508184,1286239154 -DD 3337565999,3914302142,1426019237,4057165596 -DD 283453434,3731369245,2958461122,3018244605 -DD 0,0,0,0 -ALIGN 64 -$LCamellia_SBOX:: -DD 1886416896,1886388336 -DD 2189591040,741081132 -DD 741092352,3014852787 -DD 3974949888,3233808576 -DD 3014898432,3840147684 -DD 656877312,1465319511 -DD 3233857536,3941204202 -DD 3857048832,2930639022 -DD 3840205824,589496355 -DD 2240120064,1802174571 -DD 1465341696,1162149957 -DD 892679424,2779054245 -DD 3941263872,3991732461 -DD 202116096,1330577487 -DD 2930683392,488439837 -DD 1094795520,2459041938 -DD 589505280,2256928902 -DD 4025478912,2947481775 -DD 1802201856,2088501372 -DD 2475922176,522125343 -DD 1162167552,1044250686 -DD 421075200,3705405660 -DD 2779096320,1583218782 -DD 555819264,185270283 -DD 3991792896,2795896998 -DD 235802112,960036921 -DD 1330597632,3587506389 -DD 1313754624,1566376029 -DD 488447232,3654877401 -DD 1701143808,1515847770 -DD 2459079168,1364262993 -DD 3183328512,1819017324 -DD 2256963072,2341142667 -DD 3099113472,2593783962 -DD 2947526400,4227531003 -DD 2408550144,2964324528 -DD 2088532992,1953759348 -DD 3958106880,724238379 -DD 522133248,4042260720 -DD 3469659648,2223243396 -DD 1044266496,3755933919 -DD 808464384,3419078859 -DD 3705461760,875823156 -DD 1600085760,1987444854 -DD 1583242752,1835860077 -DD 3318072576,2846425257 -DD 185273088,3520135377 -DD 437918208,67371012 -DD 2795939328,336855060 -DD 3789676800,976879674 -DD 960051456,3739091166 -DD 3402287616,286326801 -DD 3587560704,842137650 -DD 1195853568,2627469468 -DD 1566399744,1397948499 -DD 1027423488,4075946226 -DD 3654932736,4278059262 -DD 16843008,3486449871 -DD 1515870720,3284336835 -DD 3604403712,2054815866 -DD 1364283648,606339108 -DD 1448498688,3907518696 -DD 1819044864,1616904288 -DD 1296911616,1768489065 -DD 2341178112,2863268010 -DD 218959104,2694840480 -DD 2593823232,2711683233 -DD 1717986816,1650589794 -DD 4227595008,1414791252 -DD 3435973632,505282590 -DD 2964369408,3772776672 -DD 757935360,1684275300 -DD 1953788928,269484048 -DD 303174144,0 -DD 724249344,2745368739 -DD 538976256,1970602101 -DD 4042321920,2324299914 -DD 2981212416,3873833190 -DD 2223277056,151584777 -DD 2576980224,3722248413 -DD 3755990784,2273771655 -DD 1280068608,2206400643 -DD 3419130624,3452764365 -DD 3267543552,2425356432 -DD 875836416,1936916595 -DD 2122219008,4143317238 -DD 1987474944,2644312221 -DD 84215040,3216965823 -DD 1835887872,1381105746 -DD 3082270464,3638034648 -DD 2846468352,3368550600 -DD 825307392,3334865094 -DD 3520188672,2172715137 -DD 387389184,1869545583 -DD 67372032,320012307 -DD 3621246720,1667432547 -DD 336860160,3924361449 -DD 1482184704,2812739751 -DD 976894464,2677997727 -DD 1633771776,3166437564 -DD 3739147776,690552873 -DD 454761216,4193845497 -DD 286331136,791609391 -DD 471604224,3031695540 -DD 842150400,2021130360 -DD 252645120,101056518 -DD 2627509248,3890675943 -DD 370546176,1903231089 -DD 1397969664,3570663636 -DD 404232192,2880110763 -DD 4076007936,2290614408 -DD 572662272,2374828173 -DD 4278124032,1920073842 -DD 1145324544,3115909305 -DD 3486502656,4177002744 -DD 2998055424,2896953516 -DD 3284386560,909508662 -DD 3048584448,707395626 -DD 2054846976,1010565180 -DD 2442236160,4059103473 -DD 606348288,1077936192 -DD 134744064,3553820883 -DD 3907577856,3149594811 -DD 2829625344,1128464451 -DD 1616928768,353697813 -DD 4244438016,2913796269 -DD 1768515840,2004287607 -DD 1347440640,2155872384 -DD 2863311360,2189557890 -DD 3503345664,3974889708 -DD 2694881280,656867367 -DD 2105376000,3856990437 -DD 2711724288,2240086149 -DD 2307492096,892665909 -DD 1650614784,202113036 -DD 2543294208,1094778945 -DD 1414812672,4025417967 -DD 1532713728,2475884691 -DD 505290240,421068825 -DD 2509608192,555810849 -DD 3772833792,235798542 -DD 4294967040,1313734734 -DD 1684300800,1701118053 -DD 3537031680,3183280317 -DD 269488128,3099066552 -DD 3301229568,2408513679 -DD 0,3958046955 -DD 1212696576,3469607118 -DD 2745410304,808452144 -DD 4160222976,1600061535 -DD 1970631936,3318022341 -DD 3688618752,437911578 -DD 2324335104,3789619425 -DD 50529024,3402236106 -DD 3873891840,1195835463 -DD 3671775744,1027407933 -DD 151587072,16842753 -DD 1061109504,3604349142 -DD 3722304768,1448476758 -DD 2492765184,1296891981 -DD 2273806080,218955789 -DD 1549556736,1717960806 -DD 2206434048,3435921612 -DD 33686016,757923885 -DD 3452816640,303169554 -DD 1246382592,538968096 -DD 2425393152,2981167281 -DD 858993408,2576941209 -DD 1936945920,1280049228 -DD 1734829824,3267494082 -DD 4143379968,2122186878 -DD 4092850944,84213765 -DD 2644352256,3082223799 -DD 2139062016,825294897 -DD 3217014528,387383319 -DD 3806519808,3621191895 -DD 1381126656,1482162264 -DD 2610666240,1633747041 -DD 3638089728,454754331 -DD 640034304,471597084 -DD 3368601600,252641295 -DD 926365440,370540566 -DD 3334915584,404226072 -DD 993737472,572653602 -DD 2172748032,1145307204 -DD 2526451200,2998010034 -DD 1869573888,3048538293 -DD 1263225600,2442199185 -DD 320017152,134742024 -DD 3200171520,2829582504 -DD 1667457792,4244373756 -DD 774778368,1347420240 -DD 3924420864,3503292624 -DD 2038003968,2105344125 -DD 2812782336,2307457161 -DD 2358021120,2543255703 -DD 2678038272,1532690523 -DD 1852730880,2509570197 -DD 3166485504,4294902015 -DD 2391707136,3536978130 -DD 690563328,3301179588 -DD 4126536960,1212678216 -DD 4193908992,4160159991 -DD 3065427456,3688562907 -DD 791621376,50528259 -DD 4261281024,3671720154 -DD 3031741440,1061093439 -DD 1499027712,2492727444 -DD 2021160960,1549533276 -DD 2560137216,33685506 -DD 101058048,1246363722 -DD 1785358848,858980403 -DD 3890734848,1734803559 -DD 1179010560,4092788979 -DD 1903259904,2139029631 -DD 3132799488,3806462178 -DD 3570717696,2610626715 -DD 623191296,640024614 -DD 2880154368,926351415 -DD 1111638528,993722427 -DD 2290649088,2526412950 -DD 2728567296,1263206475 -DD 2374864128,3200123070 -DD 4210752000,774766638 -DD 1920102912,2037973113 -DD 117901056,2357985420 -DD 3115956480,1852702830 -DD 1431655680,2391670926 -DD 4177065984,4126474485 -DD 4008635904,3065381046 -DD 2896997376,4261216509 -DD 168430080,1499005017 -DD 909522432,2560098456 -DD 1229539584,1785331818 -DD 707406336,1178992710 -DD 1751672832,3132752058 -DD 1010580480,623181861 -DD 943208448,1111621698 -DD 4059164928,2728525986 -DD 2762253312,4210688250 -DD 1077952512,117899271 -DD 673720320,1431634005 -DD 3553874688,4008575214 -DD 2071689984,168427530 -DD 3149642496,1229520969 -DD 3385444608,1751646312 -DD 1128481536,943194168 -DD 3250700544,2762211492 -DD 353703168,673710120 -DD 3823362816,2071658619 -DD 2913840384,3385393353 -DD 4109693952,3250651329 -DD 2004317952,3823304931 -DD 3351758592,4109631732 -DD 2155905024,3351707847 -DD 2661195264,2661154974 -DD 14737632,939538488 -DD 328965,1090535745 -DD 5789784,369104406 -DD 14277081,1979741814 -DD 6776679,3640711641 -DD 5131854,2466288531 -DD 8487297,1610637408 -DD 13355979,4060148466 -DD 13224393,1912631922 -DD 723723,3254829762 -DD 11447982,2868947883 -DD 6974058,2583730842 -DD 14013909,1962964341 -DD 1579032,100664838 -DD 6118749,1459640151 -DD 8553090,2684395680 -DD 4605510,2432733585 -DD 14671839,4144035831 -DD 14079702,3036722613 -DD 2565927,3372272073 -DD 9079434,2717950626 -DD 3289650,2348846220 -DD 4934475,3523269330 -DD 4342338,2415956112 -DD 14408667,4127258358 -DD 1842204,117442311 -DD 10395294,2801837991 -DD 10263708,654321447 -DD 3815994,2382401166 -DD 13290186,2986390194 -DD 2434341,1224755529 -DD 8092539,3724599006 -DD 855309,1124090691 -DD 7434609,1543527516 -DD 6250335,3607156695 -DD 2039583,3338717127 -DD 16316664,1040203326 -DD 14145495,4110480885 -DD 4079166,2399178639 -DD 10329501,1728079719 -DD 8158332,520101663 -DD 6316128,402659352 -DD 12171705,1845522030 -DD 12500670,2936057775 -DD 12369084,788541231 -DD 9145227,3791708898 -DD 1447446,2231403909 -DD 3421236,218107149 -DD 5066061,1392530259 -DD 12829635,4026593520 -DD 7500402,2617285788 -DD 9803157,1694524773 -DD 11250603,3925928682 -DD 9342606,2734728099 -DD 12237498,2919280302 -DD 8026746,2650840734 -DD 11776947,3959483628 -DD 131586,2147516544 -DD 11842740,754986285 -DD 11382189,1795189611 -DD 10658466,2818615464 -DD 11316396,721431339 -DD 14211288,905983542 -DD 10132122,2785060518 -DD 1513239,3305162181 -DD 1710618,2248181382 -DD 3487029,1291865421 -DD 13421772,855651123 -DD 16250871,4244700669 -DD 10066329,1711302246 -DD 6381921,1476417624 -DD 5921370,2516620950 -DD 15263976,973093434 -DD 2368548,150997257 -DD 5658198,2499843477 -DD 4210752,268439568 -DD 14803425,2013296760 -DD 6513507,3623934168 -DD 592137,1107313218 -DD 3355443,3422604492 -DD 12566463,4009816047 -DD 10000536,637543974 -DD 9934743,3842041317 -DD 8750469,1627414881 -DD 6842472,436214298 -DD 16579836,1056980799 -DD 15527148,989870907 -DD 657930,2181071490 -DD 14342874,3053500086 -DD 7303023,3674266587 -DD 5460819,3556824276 -DD 6447714,2550175896 -DD 10724259,3892373736 -DD 3026478,2332068747 -DD 526344,33554946 -DD 11513775,3942706155 -DD 2631720,167774730 -DD 11579568,738208812 -DD 7631988,486546717 -DD 12763842,2952835248 -DD 12434877,1862299503 -DD 3552822,2365623693 -DD 2236962,2281736328 -DD 3684408,234884622 -DD 6579300,419436825 -DD 1973790,2264958855 -DD 3750201,1308642894 -DD 2894892,184552203 -DD 10921638,2835392937 -DD 3158064,201329676 -DD 15066597,2030074233 -DD 4473924,285217041 -DD 16645629,2130739071 -DD 8947848,570434082 -DD 10461087,3875596263 -DD 6645093,1493195097 -DD 8882055,3774931425 -DD 7039851,3657489114 -DD 16053492,1023425853 -DD 2302755,3355494600 -DD 4737096,301994514 -DD 1052688,67109892 -DD 13750737,1946186868 -DD 5329233,1409307732 -DD 12632256,805318704 -DD 16382457,2113961598 -DD 13816530,3019945140 -DD 10526880,671098920 -DD 5592405,1426085205 -DD 10592673,1744857192 -DD 4276545,1342197840 -DD 16448250,3187719870 -DD 4408131,3489714384 -DD 1250067,3288384708 -DD 12895428,822096177 -DD 3092271,3405827019 -DD 11053224,704653866 -DD 11974326,2902502829 -DD 3947580,251662095 -DD 2829099,3389049546 -DD 12698049,1879076976 -DD 16777215,4278255615 -DD 13158600,838873650 -DD 10855845,1761634665 -DD 2105376,134219784 -DD 9013641,1644192354 -DD 0,0 -DD 9474192,603989028 -DD 4671303,3506491857 -DD 15724527,4211145723 -DD 15395562,3120609978 -DD 12040119,3976261101 -DD 1381653,1157645637 -DD 394758,2164294017 -DD 13487565,1929409395 -DD 11908533,1828744557 -DD 1184274,2214626436 -DD 8289918,2667618207 -DD 12303291,3993038574 -DD 2697513,1241533002 -DD 986895,3271607235 -DD 12105912,771763758 -DD 460551,3238052289 -DD 263172,16777473 -DD 10197915,3858818790 -DD 9737364,620766501 -DD 2171169,1207978056 -DD 6710886,2566953369 -DD 15132390,3103832505 -DD 13553358,3003167667 -DD 15592941,2063629179 -DD 15198183,4177590777 -DD 3881787,3456159438 -DD 16711422,3204497343 -DD 8355711,3741376479 -DD 12961221,1895854449 -DD 10790052,687876393 -DD 3618615,3439381965 -DD 11645361,1811967084 -DD 5000268,318771987 -DD 9539985,1677747300 -DD 7237230,2600508315 -DD 9276813,1660969827 -DD 7763574,2634063261 -DD 197379,3221274816 -DD 2960685,1258310475 -DD 14606046,3070277559 -DD 9868950,2768283045 -DD 2500134,2298513801 -DD 8224125,1593859935 -DD 13027014,2969612721 -DD 6052956,385881879 -DD 13882323,4093703412 -DD 15921906,3154164924 -DD 5197647,3540046803 -DD 1644825,1174423110 -DD 4144959,3472936911 -DD 14474460,922761015 -DD 7960953,1577082462 -DD 1907997,1191200583 -DD 5395026,2483066004 -DD 15461355,4194368250 -DD 15987699,4227923196 -DD 7171437,1526750043 -DD 6184542,2533398423 -DD 16514043,4261478142 -DD 6908265,1509972570 -DD 11711154,2885725356 -DD 15790320,1006648380 -DD 3223857,1275087948 -DD 789516,50332419 -DD 13948116,889206069 -DD 13619151,4076925939 -DD 9211020,587211555 -DD 14869218,3087055032 -DD 7697781,1560304989 -DD 11119017,1778412138 -DD 4868682,2449511058 -DD 5723991,3573601749 -DD 8684676,553656609 -DD 1118481,1140868164 -DD 4539717,1358975313 -DD 1776411,3321939654 -DD 16119285,2097184125 -DD 15000804,956315961 -DD 921102,2197848963 -DD 7566195,3691044060 -DD 11184810,2852170410 -DD 15856113,2080406652 -DD 14540253,1996519287 -DD 5855577,1442862678 -DD 1315860,83887365 -DD 7105644,452991771 -DD 9605778,2751505572 -DD 5526612,352326933 -DD 13684944,872428596 -DD 7895160,503324190 -DD 7368816,469769244 -DD 14935011,4160813304 -DD 4802889,1375752786 -DD 8421504,536879136 -DD 5263440,335549460 -DD 10987431,3909151209 -DD 16185078,3170942397 -DD 7829367,3707821533 -DD 9671571,3825263844 -DD 8816262,2701173153 -DD 8618883,3758153952 -DD 2763306,2315291274 -DD 13092807,4043370993 -DD 5987163,3590379222 -DD 15329769,2046851706 -DD 15658734,3137387451 -DD 9408399,3808486371 -DD 65793,1073758272 -DD 4013373,1325420367 -ALIGN 16 -_Camellia_cbc_encrypt PROC PUBLIC -$L_Camellia_cbc_encrypt_begin:: - push ebp - push ebx - push esi - push edi - mov ecx,DWORD PTR 28[esp] - cmp ecx,0 - je $L016enc_out - pushfd - cld - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - mov edx,DWORD PTR 36[esp] - mov ebp,DWORD PTR 40[esp] - lea esi,DWORD PTR [esp-64] - and esi,-64 - lea edi,DWORD PTR [edx-127] - sub edi,esi - neg edi - and edi,960 - sub esi,edi - mov edi,DWORD PTR 44[esp] - xchg esp,esi - add esp,4 - mov DWORD PTR 20[esp],esi - mov DWORD PTR 24[esp],eax - mov DWORD PTR 28[esp],ebx - mov DWORD PTR 32[esp],ecx - mov DWORD PTR 36[esp],edx - mov DWORD PTR 40[esp],ebp - call $L017pic_point -$L017pic_point: - pop ebp - lea ebp,DWORD PTR ($LCamellia_SBOX-$L017pic_point)[ebp] - mov esi,32 -ALIGN 4 -$L018prefetch_sbox: - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 64[ebp] - mov edx,DWORD PTR 96[ebp] - lea ebp,DWORD PTR 128[ebp] - dec esi - jnz $L018prefetch_sbox - mov eax,DWORD PTR 36[esp] - sub ebp,4096 - mov esi,DWORD PTR 24[esp] - mov edx,DWORD PTR 272[eax] - cmp edi,0 - je $L019DECRYPT - mov ecx,DWORD PTR 32[esp] - mov edi,DWORD PTR 40[esp] - shl edx,6 - lea edx,DWORD PTR [edx*1+eax] - mov DWORD PTR 16[esp],edx - test ecx,4294967280 - jz $L020enc_tail - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] -ALIGN 4 -$L021enc_loop: - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - xor eax,DWORD PTR [esi] - xor ebx,DWORD PTR 4[esi] - xor ecx,DWORD PTR 8[esi] - bswap eax - xor edx,DWORD PTR 12[esi] - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_encrypt - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - bswap eax - bswap ebx - bswap ecx - mov DWORD PTR [edi],eax - bswap edx - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov ecx,DWORD PTR 32[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - lea edx,DWORD PTR 16[edi] - mov DWORD PTR 28[esp],edx - sub ecx,16 - test ecx,4294967280 - mov DWORD PTR 32[esp],ecx - jnz $L021enc_loop - test ecx,15 - jnz $L020enc_tail - mov esi,DWORD PTR 40[esp] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov esp,DWORD PTR 20[esp] - popfd -$L016enc_out: - pop edi - pop esi - pop ebx - pop ebp - ret - pushfd -ALIGN 4 -$L020enc_tail: - mov eax,edi - mov edi,DWORD PTR 28[esp] - push eax - mov ebx,16 - sub ebx,ecx - cmp edi,esi - je $L022enc_in_place -ALIGN 4 -DD 2767451785 - jmp $L023enc_skip_in_place -$L022enc_in_place: - lea edi,DWORD PTR [ecx*1+edi] -$L023enc_skip_in_place: - mov ecx,ebx - xor eax,eax -ALIGN 4 -DD 2868115081 - pop edi - mov esi,DWORD PTR 28[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov DWORD PTR 32[esp],16 - jmp $L021enc_loop -ALIGN 16 -$L019DECRYPT: - shl edx,6 - lea edx,DWORD PTR [edx*1+eax] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 36[esp],edx - cmp esi,DWORD PTR 28[esp] - je $L024dec_in_place - mov edi,DWORD PTR 40[esp] - mov DWORD PTR 44[esp],edi -ALIGN 4 -$L025dec_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - bswap eax - mov edx,DWORD PTR 12[esi] - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov edi,DWORD PTR 44[esp] - mov esi,DWORD PTR 32[esp] - bswap eax - bswap ebx - bswap ecx - xor eax,DWORD PTR [edi] - bswap edx - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - sub esi,16 - jc $L026dec_partial - mov DWORD PTR 32[esp],esi - mov esi,DWORD PTR 24[esp] - mov edi,DWORD PTR 28[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov DWORD PTR 44[esp],esi - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - lea edi,DWORD PTR 16[edi] - mov DWORD PTR 28[esp],edi - jnz $L025dec_loop - mov edi,DWORD PTR 44[esp] -$L027dec_end: - mov esi,DWORD PTR 40[esp] - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - jmp $L028dec_out -ALIGN 4 -$L026dec_partial: - lea edi,DWORD PTR 44[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - lea ecx,DWORD PTR 16[esi] - mov esi,edi - mov edi,DWORD PTR 28[esp] -DD 2767451785 - mov edi,DWORD PTR 24[esp] - jmp $L027dec_end -ALIGN 4 -$L024dec_in_place: -$L029dec_in_place_loop: - lea edi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - bswap eax - mov DWORD PTR 12[edi],edx - bswap ebx - mov edi,DWORD PTR 36[esp] - bswap ecx - bswap edx - call __x86_Camellia_decrypt - mov edi,DWORD PTR 40[esp] - mov esi,DWORD PTR 28[esp] - bswap eax - bswap ebx - bswap ecx - xor eax,DWORD PTR [edi] - bswap edx - xor ebx,DWORD PTR 4[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 12[edi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 28[esp],esi - lea esi,DWORD PTR 44[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 12[edi],edx - mov esi,DWORD PTR 24[esp] - lea esi,DWORD PTR 16[esi] - mov DWORD PTR 24[esp],esi - mov ecx,DWORD PTR 32[esp] - sub ecx,16 - jc $L030dec_in_place_partial - mov DWORD PTR 32[esp],ecx - jnz $L029dec_in_place_loop - jmp $L028dec_out -ALIGN 4 -$L030dec_in_place_partial: - mov edi,DWORD PTR 28[esp] - lea esi,DWORD PTR 44[esp] - lea edi,DWORD PTR [ecx*1+edi] - lea esi,DWORD PTR 16[ecx*1+esi] - neg ecx -DD 2767451785 -ALIGN 4 -$L028dec_out: - mov esp,DWORD PTR 20[esp] - popfd - pop edi - pop esi - pop ebx - pop ebp - ret -_Camellia_cbc_encrypt ENDP -DB 67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54 -DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 -DB 115,108,46,111,114,103,62,0 -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/cast/cast-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/cast/cast-586.asm deleted file mode 100644 index 0801d204e20353..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/cast/cast-586.asm +++ /dev/null @@ -1,947 +0,0 @@ -TITLE cast-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -EXTERN _CAST_S_table0:NEAR -EXTERN _CAST_S_table1:NEAR -EXTERN _CAST_S_table2:NEAR -EXTERN _CAST_S_table3:NEAR -ALIGN 16 -_CAST_encrypt PROC PUBLIC -$L_CAST_encrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; Get short key flag - mov eax,DWORD PTR 128[ebp] - push eax - xor eax,eax - ; round 0 - mov edx,DWORD PTR [ebp] - mov ecx,DWORD PTR 4[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 1 - mov edx,DWORD PTR 8[ebp] - mov ecx,DWORD PTR 12[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 2 - mov edx,DWORD PTR 16[ebp] - mov ecx,DWORD PTR 20[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 3 - mov edx,DWORD PTR 24[ebp] - mov ecx,DWORD PTR 28[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 4 - mov edx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 36[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 5 - mov edx,DWORD PTR 40[ebp] - mov ecx,DWORD PTR 44[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 6 - mov edx,DWORD PTR 48[ebp] - mov ecx,DWORD PTR 52[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 7 - mov edx,DWORD PTR 56[ebp] - mov ecx,DWORD PTR 60[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 8 - mov edx,DWORD PTR 64[ebp] - mov ecx,DWORD PTR 68[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 9 - mov edx,DWORD PTR 72[ebp] - mov ecx,DWORD PTR 76[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 10 - mov edx,DWORD PTR 80[ebp] - mov ecx,DWORD PTR 84[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 11 - mov edx,DWORD PTR 88[ebp] - mov ecx,DWORD PTR 92[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; test short key flag - pop edx - or edx,edx - jnz $L000cast_enc_done - ; round 12 - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 100[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 13 - mov edx,DWORD PTR 104[ebp] - mov ecx,DWORD PTR 108[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 14 - mov edx,DWORD PTR 112[ebp] - mov ecx,DWORD PTR 116[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 15 - mov edx,DWORD PTR 120[ebp] - mov ecx,DWORD PTR 124[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx -$L000cast_enc_done: - nop - mov eax,DWORD PTR 20[esp] - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_CAST_encrypt ENDP -EXTERN _CAST_S_table0:NEAR -EXTERN _CAST_S_table1:NEAR -EXTERN _CAST_S_table2:NEAR -EXTERN _CAST_S_table3:NEAR -ALIGN 16 -_CAST_decrypt PROC PUBLIC -$L_CAST_decrypt_begin:: - ; - push ebp - push ebx - mov ebx,DWORD PTR 12[esp] - mov ebp,DWORD PTR 16[esp] - push esi - push edi - ; Load the 2 words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; Get short key flag - mov eax,DWORD PTR 128[ebp] - or eax,eax - jnz $L001cast_dec_skip - xor eax,eax - ; round 15 - mov edx,DWORD PTR 120[ebp] - mov ecx,DWORD PTR 124[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 14 - mov edx,DWORD PTR 112[ebp] - mov ecx,DWORD PTR 116[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 13 - mov edx,DWORD PTR 104[ebp] - mov ecx,DWORD PTR 108[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 12 - mov edx,DWORD PTR 96[ebp] - mov ecx,DWORD PTR 100[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx -$L001cast_dec_skip: - ; round 11 - mov edx,DWORD PTR 88[ebp] - mov ecx,DWORD PTR 92[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 10 - mov edx,DWORD PTR 80[ebp] - mov ecx,DWORD PTR 84[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 9 - mov edx,DWORD PTR 72[ebp] - mov ecx,DWORD PTR 76[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 8 - mov edx,DWORD PTR 64[ebp] - mov ecx,DWORD PTR 68[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 7 - mov edx,DWORD PTR 56[ebp] - mov ecx,DWORD PTR 60[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 6 - mov edx,DWORD PTR 48[ebp] - mov ecx,DWORD PTR 52[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - ; round 5 - mov edx,DWORD PTR 40[ebp] - mov ecx,DWORD PTR 44[ebp] - sub edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor edi,ecx - ; round 4 - mov edx,DWORD PTR 32[ebp] - mov ecx,DWORD PTR 36[ebp] - xor edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor esi,ecx - ; round 3 - mov edx,DWORD PTR 24[ebp] - mov ecx,DWORD PTR 28[ebp] - add edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor edi,ecx - ; round 2 - mov edx,DWORD PTR 16[ebp] - mov ecx,DWORD PTR 20[ebp] - sub edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - sub ecx,ebx - xor esi,ecx - ; round 1 - mov edx,DWORD PTR 8[ebp] - mov ecx,DWORD PTR 12[ebp] - xor edx,esi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - add ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - xor ecx,ebx - xor edi,ecx - ; round 0 - mov edx,DWORD PTR [ebp] - mov ecx,DWORD PTR 4[ebp] - add edx,edi - rol edx,cl - mov ebx,edx - xor ecx,ecx - mov cl,dh - and ebx,255 - shr edx,16 - xor eax,eax - mov al,dh - and edx,255 - mov ecx,DWORD PTR _CAST_S_table0[ecx*4] - mov ebx,DWORD PTR _CAST_S_table1[ebx*4] - xor ecx,ebx - mov ebx,DWORD PTR _CAST_S_table2[eax*4] - sub ecx,ebx - mov ebx,DWORD PTR _CAST_S_table3[edx*4] - add ecx,ebx - xor esi,ecx - nop - mov eax,DWORD PTR 20[esp] - mov DWORD PTR 4[eax],edi - mov DWORD PTR [eax],esi - pop edi - pop esi - pop ebx - pop ebp - ret -_CAST_decrypt ENDP -ALIGN 16 -_CAST_cbc_encrypt PROC PUBLIC -$L_CAST_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 3 - mov eax,DWORD PTR 48[esp] - push eax - push ebx - cmp ecx,0 - jz $L002decrypt - and ebp,4294967288 - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - jz $L003encrypt_finish -$L004encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L004encrypt_loop -$L003encrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L005finish - call $L006PIC_point -$L006PIC_point: - pop edx - lea ecx,DWORD PTR ($L007cbc_enc_jmp_table-$L006PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L008ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L009ej6: - mov dh,BYTE PTR 5[esi] -$L010ej5: - mov dl,BYTE PTR 4[esi] -$L011ej4: - mov ecx,DWORD PTR [esi] - jmp $L012ejend -$L013ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L014ej2: - mov ch,BYTE PTR 1[esi] -$L015ej1: - mov cl,BYTE PTR [esi] -$L012ejend: - xor eax,ecx - xor ebx,edx - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_encrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L005finish -$L002decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L016decrypt_finish -$L017decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L017decrypt_loop -$L016decrypt_finish: - mov ebp,DWORD PTR 52[esp] - and ebp,7 - jz $L005finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - bswap eax - bswap ebx - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - call $L_CAST_decrypt_begin - mov eax,DWORD PTR 8[esp] - mov ebx,DWORD PTR 12[esp] - bswap eax - bswap ebx - mov ecx,DWORD PTR 16[esp] - mov edx,DWORD PTR 20[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L018dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L019dj6: - mov BYTE PTR 5[edi],dh -$L020dj5: - mov BYTE PTR 4[edi],dl -$L021dj4: - mov DWORD PTR [edi],ecx - jmp $L022djend -$L023dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L024dj2: - mov BYTE PTR 1[esi],ch -$L025dj1: - mov BYTE PTR [esi],cl -$L022djend: - jmp $L005finish -$L005finish: - mov ecx,DWORD PTR 60[esp] - add esp,24 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L007cbc_enc_jmp_table: -DD 0 -DD $L015ej1-$L006PIC_point -DD $L014ej2-$L006PIC_point -DD $L013ej3-$L006PIC_point -DD $L011ej4-$L006PIC_point -DD $L010ej5-$L006PIC_point -DD $L009ej6-$L006PIC_point -DD $L008ej7-$L006PIC_point -ALIGN 64 -_CAST_cbc_encrypt ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/des/crypt586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/des/crypt586.asm deleted file mode 100644 index 6ca04c3afbdb1b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/des/crypt586.asm +++ /dev/null @@ -1,886 +0,0 @@ -TITLE crypt586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -EXTERN _DES_SPtrans:NEAR -ALIGN 16 -_fcrypt_body PROC PUBLIC -$L_fcrypt_body_begin:: - push ebp - push ebx - push esi - push edi - ; - ; Load the 2 words - xor edi,edi - xor esi,esi - lea edx,DWORD PTR _DES_SPtrans - push edx - mov ebp,DWORD PTR 28[esp] - push 25 -$L000start: - ; - ; Round 0 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR [ebp] - xor eax,ebx - mov ecx,DWORD PTR 4[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 1 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 8[ebp] - xor eax,ebx - mov ecx,DWORD PTR 12[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 2 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 16[ebp] - xor eax,ebx - mov ecx,DWORD PTR 20[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 3 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 24[ebp] - xor eax,ebx - mov ecx,DWORD PTR 28[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 4 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 32[ebp] - xor eax,ebx - mov ecx,DWORD PTR 36[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 5 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 40[ebp] - xor eax,ebx - mov ecx,DWORD PTR 44[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 6 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 48[ebp] - xor eax,ebx - mov ecx,DWORD PTR 52[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 7 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 56[ebp] - xor eax,ebx - mov ecx,DWORD PTR 60[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 8 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 64[ebp] - xor eax,ebx - mov ecx,DWORD PTR 68[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 9 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 72[ebp] - xor eax,ebx - mov ecx,DWORD PTR 76[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 10 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 80[ebp] - xor eax,ebx - mov ecx,DWORD PTR 84[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 11 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 88[ebp] - xor eax,ebx - mov ecx,DWORD PTR 92[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 12 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 96[ebp] - xor eax,ebx - mov ecx,DWORD PTR 100[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 13 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 104[ebp] - xor eax,ebx - mov ecx,DWORD PTR 108[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 14 - mov eax,DWORD PTR 36[esp] - mov edx,esi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,esi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 112[ebp] - xor eax,ebx - mov ecx,DWORD PTR 116[ebp] - xor eax,esi - xor edx,esi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor edi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor edi,ebx - mov ebp,DWORD PTR 32[esp] - ; - ; Round 15 - mov eax,DWORD PTR 36[esp] - mov edx,edi - shr edx,16 - mov ecx,DWORD PTR 40[esp] - xor edx,edi - and eax,edx - and edx,ecx - mov ebx,eax - shl ebx,16 - mov ecx,edx - shl ecx,16 - xor eax,ebx - xor edx,ecx - mov ebx,DWORD PTR 120[ebp] - xor eax,ebx - mov ecx,DWORD PTR 124[ebp] - xor eax,edi - xor edx,edi - xor edx,ecx - and eax,0fcfcfcfch - xor ebx,ebx - and edx,0cfcfcfcfh - xor ecx,ecx - mov bl,al - mov cl,ah - ror edx,4 - mov ebp,DWORD PTR 4[esp] - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - mov ebx,DWORD PTR 0600h[ebx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0700h[ecx*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0400h[eax*1+ebp] - xor esi,ebx - mov ebx,DWORD PTR 0500h[edx*1+ebp] - xor esi,ebx - mov ebp,DWORD PTR 32[esp] - mov ebx,DWORD PTR [esp] - mov eax,edi - dec ebx - mov edi,esi - mov esi,eax - mov DWORD PTR [esp],ebx - jnz $L000start - ; - ; FP - mov edx,DWORD PTR 28[esp] - ror edi,1 - mov eax,esi - xor esi,edi - and esi,0aaaaaaaah - xor eax,esi - xor edi,esi - ; - rol eax,23 - mov esi,eax - xor eax,edi - and eax,003fc03fch - xor esi,eax - xor edi,eax - ; - rol esi,10 - mov eax,esi - xor esi,edi - and esi,033333333h - xor eax,esi - xor edi,esi - ; - rol edi,18 - mov esi,edi - xor edi,eax - and edi,0fff0000fh - xor esi,edi - xor eax,edi - ; - rol esi,12 - mov edi,esi - xor esi,eax - and esi,0f0f0f0f0h - xor edi,esi - xor eax,esi - ; - ror eax,4 - mov DWORD PTR [edx],eax - mov DWORD PTR 4[edx],edi - add esp,8 - pop edi - pop esi - pop ebx - pop ebp - ret -_fcrypt_body ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/des/des-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/des/des-586.asm deleted file mode 100644 index ecae90ec7cbe5b..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/des/des-586.asm +++ /dev/null @@ -1,1836 +0,0 @@ -TITLE des-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -PUBLIC _DES_SPtrans -ALIGN 16 -__x86_DES_encrypt PROC PRIVATE - push ecx - ; Round 0 - mov eax,DWORD PTR [ecx] - xor ebx,ebx - mov edx,DWORD PTR 4[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 1 - mov eax,DWORD PTR 8[ecx] - xor ebx,ebx - mov edx,DWORD PTR 12[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 2 - mov eax,DWORD PTR 16[ecx] - xor ebx,ebx - mov edx,DWORD PTR 20[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 3 - mov eax,DWORD PTR 24[ecx] - xor ebx,ebx - mov edx,DWORD PTR 28[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 4 - mov eax,DWORD PTR 32[ecx] - xor ebx,ebx - mov edx,DWORD PTR 36[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 5 - mov eax,DWORD PTR 40[ecx] - xor ebx,ebx - mov edx,DWORD PTR 44[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 6 - mov eax,DWORD PTR 48[ecx] - xor ebx,ebx - mov edx,DWORD PTR 52[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 7 - mov eax,DWORD PTR 56[ecx] - xor ebx,ebx - mov edx,DWORD PTR 60[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 8 - mov eax,DWORD PTR 64[ecx] - xor ebx,ebx - mov edx,DWORD PTR 68[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 9 - mov eax,DWORD PTR 72[ecx] - xor ebx,ebx - mov edx,DWORD PTR 76[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 10 - mov eax,DWORD PTR 80[ecx] - xor ebx,ebx - mov edx,DWORD PTR 84[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 11 - mov eax,DWORD PTR 88[ecx] - xor ebx,ebx - mov edx,DWORD PTR 92[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 12 - mov eax,DWORD PTR 96[ecx] - xor ebx,ebx - mov edx,DWORD PTR 100[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 13 - mov eax,DWORD PTR 104[ecx] - xor ebx,ebx - mov edx,DWORD PTR 108[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 14 - mov eax,DWORD PTR 112[ecx] - xor ebx,ebx - mov edx,DWORD PTR 116[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 15 - mov eax,DWORD PTR 120[ecx] - xor ebx,ebx - mov edx,DWORD PTR 124[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - add esp,4 - ret -__x86_DES_encrypt ENDP -ALIGN 16 -__x86_DES_decrypt PROC PRIVATE - push ecx - ; Round 15 - mov eax,DWORD PTR 120[ecx] - xor ebx,ebx - mov edx,DWORD PTR 124[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 14 - mov eax,DWORD PTR 112[ecx] - xor ebx,ebx - mov edx,DWORD PTR 116[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 13 - mov eax,DWORD PTR 104[ecx] - xor ebx,ebx - mov edx,DWORD PTR 108[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 12 - mov eax,DWORD PTR 96[ecx] - xor ebx,ebx - mov edx,DWORD PTR 100[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 11 - mov eax,DWORD PTR 88[ecx] - xor ebx,ebx - mov edx,DWORD PTR 92[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 10 - mov eax,DWORD PTR 80[ecx] - xor ebx,ebx - mov edx,DWORD PTR 84[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 9 - mov eax,DWORD PTR 72[ecx] - xor ebx,ebx - mov edx,DWORD PTR 76[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 8 - mov eax,DWORD PTR 64[ecx] - xor ebx,ebx - mov edx,DWORD PTR 68[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 7 - mov eax,DWORD PTR 56[ecx] - xor ebx,ebx - mov edx,DWORD PTR 60[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 6 - mov eax,DWORD PTR 48[ecx] - xor ebx,ebx - mov edx,DWORD PTR 52[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 5 - mov eax,DWORD PTR 40[ecx] - xor ebx,ebx - mov edx,DWORD PTR 44[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 4 - mov eax,DWORD PTR 32[ecx] - xor ebx,ebx - mov edx,DWORD PTR 36[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 3 - mov eax,DWORD PTR 24[ecx] - xor ebx,ebx - mov edx,DWORD PTR 28[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 2 - mov eax,DWORD PTR 16[ecx] - xor ebx,ebx - mov edx,DWORD PTR 20[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - ; Round 1 - mov eax,DWORD PTR 8[ecx] - xor ebx,ebx - mov edx,DWORD PTR 12[ecx] - xor eax,esi - xor ecx,ecx - xor edx,esi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor edi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor edi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor edi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor edi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor edi,DWORD PTR 0600h[ebx*1+ebp] - xor edi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor edi,DWORD PTR 0400h[eax*1+ebp] - xor edi,DWORD PTR 0500h[edx*1+ebp] - ; Round 0 - mov eax,DWORD PTR [ecx] - xor ebx,ebx - mov edx,DWORD PTR 4[ecx] - xor eax,edi - xor ecx,ecx - xor edx,edi - and eax,0fcfcfcfch - and edx,0cfcfcfcfh - mov bl,al - mov cl,ah - ror edx,4 - xor esi,DWORD PTR [ebx*1+ebp] - mov bl,dl - xor esi,DWORD PTR 0200h[ecx*1+ebp] - mov cl,dh - shr eax,16 - xor esi,DWORD PTR 0100h[ebx*1+ebp] - mov bl,ah - shr edx,16 - xor esi,DWORD PTR 0300h[ecx*1+ebp] - mov cl,dh - and eax,0ffh - and edx,0ffh - xor esi,DWORD PTR 0600h[ebx*1+ebp] - xor esi,DWORD PTR 0700h[ecx*1+ebp] - mov ecx,DWORD PTR [esp] - xor esi,DWORD PTR 0400h[eax*1+ebp] - xor esi,DWORD PTR 0500h[edx*1+ebp] - add esp,4 - ret -__x86_DES_decrypt ENDP -ALIGN 16 -_DES_encrypt1 PROC PUBLIC -$L_DES_encrypt1_begin:: - push esi - push edi - ; - ; Load the 2 words - mov esi,DWORD PTR 12[esp] - xor ecx,ecx - push ebx - push ebp - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 28[esp] - mov edi,DWORD PTR 4[esi] - ; - ; IP - rol eax,4 - mov esi,eax - xor eax,edi - and eax,0f0f0f0f0h - xor esi,eax - xor edi,eax - ; - rol edi,20 - mov eax,edi - xor edi,esi - and edi,0fff0000fh - xor eax,edi - xor esi,edi - ; - rol eax,14 - mov edi,eax - xor eax,esi - and eax,033333333h - xor edi,eax - xor esi,eax - ; - rol esi,22 - mov eax,esi - xor esi,edi - and esi,003fc03fch - xor eax,esi - xor edi,esi - ; - rol eax,9 - mov esi,eax - xor eax,edi - and eax,0aaaaaaaah - xor esi,eax - xor edi,eax - ; - rol edi,1 - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($Ldes_sptrans-$L000pic_point)[ebp] - mov ecx,DWORD PTR 24[esp] - cmp ebx,0 - je $L001decrypt - call __x86_DES_encrypt - jmp $L002done -$L001decrypt: - call __x86_DES_decrypt -$L002done: - ; - ; FP - mov edx,DWORD PTR 20[esp] - ror esi,1 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [edx],eax - mov DWORD PTR 4[edx],esi - pop ebp - pop ebx - pop edi - pop esi - ret -_DES_encrypt1 ENDP -ALIGN 16 -_DES_encrypt2 PROC PUBLIC -$L_DES_encrypt2_begin:: - push esi - push edi - ; - ; Load the 2 words - mov eax,DWORD PTR 12[esp] - xor ecx,ecx - push ebx - push ebp - mov esi,DWORD PTR [eax] - mov ebx,DWORD PTR 28[esp] - rol esi,3 - mov edi,DWORD PTR 4[eax] - rol edi,3 - call $L003pic_point -$L003pic_point: - pop ebp - lea ebp,DWORD PTR ($Ldes_sptrans-$L003pic_point)[ebp] - mov ecx,DWORD PTR 24[esp] - cmp ebx,0 - je $L004decrypt - call __x86_DES_encrypt - jmp $L005done -$L004decrypt: - call __x86_DES_decrypt -$L005done: - ; - ; Fixup - ror edi,3 - mov eax,DWORD PTR 20[esp] - ror esi,3 - mov DWORD PTR [eax],edi - mov DWORD PTR 4[eax],esi - pop ebp - pop ebx - pop edi - pop esi - ret -_DES_encrypt2 ENDP -ALIGN 16 -_DES_encrypt3 PROC PUBLIC -$L_DES_encrypt3_begin:: - push ebx - mov ebx,DWORD PTR 8[esp] - push ebp - push esi - push edi - ; - ; Load the data words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - sub esp,12 - ; - ; IP - rol edi,4 - mov edx,edi - xor edi,esi - and edi,0f0f0f0f0h - xor edx,edi - xor esi,edi - ; - rol esi,20 - mov edi,esi - xor esi,edx - and esi,0fff0000fh - xor edi,esi - xor edx,esi - ; - rol edi,14 - mov esi,edi - xor edi,edx - and edi,033333333h - xor esi,edi - xor edx,edi - ; - rol edx,22 - mov edi,edx - xor edx,esi - and edx,003fc03fch - xor edi,edx - xor esi,edx - ; - rol edi,9 - mov edx,edi - xor edi,esi - and edi,0aaaaaaaah - xor edx,edi - xor esi,edi - ; - ror edx,3 - ror esi,2 - mov DWORD PTR 4[ebx],esi - mov eax,DWORD PTR 36[esp] - mov DWORD PTR [ebx],edx - mov edi,DWORD PTR 40[esp] - mov esi,DWORD PTR 44[esp] - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],eax - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],edi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],esi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - add esp,12 - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; - ; FP - rol esi,2 - rol edi,3 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [ebx],eax - mov DWORD PTR 4[ebx],esi - pop edi - pop esi - pop ebp - pop ebx - ret -_DES_encrypt3 ENDP -ALIGN 16 -_DES_decrypt3 PROC PUBLIC -$L_DES_decrypt3_begin:: - push ebx - mov ebx,DWORD PTR 8[esp] - push ebp - push esi - push edi - ; - ; Load the data words - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - sub esp,12 - ; - ; IP - rol edi,4 - mov edx,edi - xor edi,esi - and edi,0f0f0f0f0h - xor edx,edi - xor esi,edi - ; - rol esi,20 - mov edi,esi - xor esi,edx - and esi,0fff0000fh - xor edi,esi - xor edx,esi - ; - rol edi,14 - mov esi,edi - xor edi,edx - and edi,033333333h - xor esi,edi - xor edx,edi - ; - rol edx,22 - mov edi,edx - xor edx,esi - and edx,003fc03fch - xor edi,edx - xor esi,edx - ; - rol edi,9 - mov edx,edi - xor edi,esi - and edi,0aaaaaaaah - xor edx,edi - xor esi,edi - ; - ror edx,3 - ror esi,2 - mov DWORD PTR 4[ebx],esi - mov esi,DWORD PTR 36[esp] - mov DWORD PTR [ebx],edx - mov edi,DWORD PTR 40[esp] - mov eax,DWORD PTR 44[esp] - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],eax - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],1 - mov DWORD PTR 4[esp],edi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - mov DWORD PTR 8[esp],0 - mov DWORD PTR 4[esp],esi - mov DWORD PTR [esp],ebx - call $L_DES_encrypt2_begin - add esp,12 - mov edi,DWORD PTR [ebx] - mov esi,DWORD PTR 4[ebx] - ; - ; FP - rol esi,2 - rol edi,3 - mov eax,edi - xor edi,esi - and edi,0aaaaaaaah - xor eax,edi - xor esi,edi - ; - rol eax,23 - mov edi,eax - xor eax,esi - and eax,003fc03fch - xor edi,eax - xor esi,eax - ; - rol edi,10 - mov eax,edi - xor edi,esi - and edi,033333333h - xor eax,edi - xor esi,edi - ; - rol esi,18 - mov edi,esi - xor esi,eax - and esi,0fff0000fh - xor edi,esi - xor eax,esi - ; - rol edi,12 - mov esi,edi - xor edi,eax - and edi,0f0f0f0f0h - xor esi,edi - xor eax,edi - ; - ror eax,4 - mov DWORD PTR [ebx],eax - mov DWORD PTR 4[ebx],esi - pop edi - pop esi - pop ebp - pop ebx - ret -_DES_decrypt3 ENDP -ALIGN 16 -_DES_ncbc_encrypt PROC PUBLIC -$L_DES_ncbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 4 - mov ebx,DWORD PTR 36[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 5 - mov ecx,DWORD PTR 56[esp] - ; get and push parameter 5 - push ecx - ; get and push parameter 3 - mov eax,DWORD PTR 52[esp] - push eax - push ebx - cmp ecx,0 - jz $L006decrypt - and ebp,4294967288 - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - jz $L007encrypt_finish -$L008encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L008encrypt_loop -$L007encrypt_finish: - mov ebp,DWORD PTR 56[esp] - and ebp,7 - jz $L009finish - call $L010PIC_point -$L010PIC_point: - pop edx - lea ecx,DWORD PTR ($L011cbc_enc_jmp_table-$L010PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L012ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L013ej6: - mov dh,BYTE PTR 5[esi] -$L014ej5: - mov dl,BYTE PTR 4[esi] -$L015ej4: - mov ecx,DWORD PTR [esi] - jmp $L016ejend -$L017ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L018ej2: - mov ch,BYTE PTR 1[esi] -$L019ej1: - mov cl,BYTE PTR [esi] -$L016ejend: - xor eax,ecx - xor ebx,edx - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L009finish -$L006decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - jz $L020decrypt_finish -$L021decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 20[esp],eax - mov DWORD PTR 24[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L021decrypt_loop -$L020decrypt_finish: - mov ebp,DWORD PTR 56[esp] - and ebp,7 - jz $L009finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 12[esp],eax - mov DWORD PTR 16[esp],ebx - call $L_DES_encrypt1_begin - mov eax,DWORD PTR 12[esp] - mov ebx,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L022dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L023dj6: - mov BYTE PTR 5[edi],dh -$L024dj5: - mov BYTE PTR 4[edi],dl -$L025dj4: - mov DWORD PTR [edi],ecx - jmp $L026djend -$L027dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L028dj2: - mov BYTE PTR 1[esi],ch -$L029dj1: - mov BYTE PTR [esi],cl -$L026djend: - jmp $L009finish -$L009finish: - mov ecx,DWORD PTR 64[esp] - add esp,28 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L011cbc_enc_jmp_table: -DD 0 -DD $L019ej1-$L010PIC_point -DD $L018ej2-$L010PIC_point -DD $L017ej3-$L010PIC_point -DD $L015ej4-$L010PIC_point -DD $L014ej5-$L010PIC_point -DD $L013ej6-$L010PIC_point -DD $L012ej7-$L010PIC_point -ALIGN 64 -_DES_ncbc_encrypt ENDP -ALIGN 16 -_DES_ede3_cbc_encrypt PROC PUBLIC -$L_DES_ede3_cbc_encrypt_begin:: - ; - push ebp - push ebx - push esi - push edi - mov ebp,DWORD PTR 28[esp] - ; getting iv ptr from parameter 6 - mov ebx,DWORD PTR 44[esp] - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - push edi - push esi - push edi - push esi - mov ebx,esp - mov esi,DWORD PTR 36[esp] - mov edi,DWORD PTR 40[esp] - ; getting encrypt flag from parameter 7 - mov ecx,DWORD PTR 64[esp] - ; get and push parameter 5 - mov eax,DWORD PTR 56[esp] - push eax - ; get and push parameter 4 - mov eax,DWORD PTR 56[esp] - push eax - ; get and push parameter 3 - mov eax,DWORD PTR 56[esp] - push eax - push ebx - cmp ecx,0 - jz $L030decrypt - and ebp,4294967288 - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - jz $L031encrypt_finish -$L032encrypt_loop: - mov ecx,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - xor eax,ecx - xor ebx,edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_encrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L032encrypt_loop -$L031encrypt_finish: - mov ebp,DWORD PTR 60[esp] - and ebp,7 - jz $L033finish - call $L034PIC_point -$L034PIC_point: - pop edx - lea ecx,DWORD PTR ($L035cbc_enc_jmp_table-$L034PIC_point)[edx] - mov ebp,DWORD PTR [ebp*4+ecx] - add ebp,edx - xor ecx,ecx - xor edx,edx - jmp ebp -$L036ej7: - mov dh,BYTE PTR 6[esi] - shl edx,8 -$L037ej6: - mov dh,BYTE PTR 5[esi] -$L038ej5: - mov dl,BYTE PTR 4[esi] -$L039ej4: - mov ecx,DWORD PTR [esi] - jmp $L040ejend -$L041ej3: - mov ch,BYTE PTR 2[esi] - shl ecx,8 -$L042ej2: - mov ch,BYTE PTR 1[esi] -$L043ej1: - mov cl,BYTE PTR [esi] -$L040ejend: - xor eax,ecx - xor ebx,edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_encrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov DWORD PTR [edi],eax - mov DWORD PTR 4[edi],ebx - jmp $L033finish -$L030decrypt: - and ebp,4294967288 - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - jz $L044decrypt_finish -$L045decrypt_loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_decrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR [edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 24[esp],eax - mov DWORD PTR 28[esp],ebx - add esi,8 - add edi,8 - sub ebp,8 - jnz $L045decrypt_loop -$L044decrypt_finish: - mov ebp,DWORD PTR 60[esp] - and ebp,7 - jz $L033finish - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - call $L_DES_decrypt3_begin - mov eax,DWORD PTR 16[esp] - mov ebx,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - xor ecx,eax - xor edx,ebx - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] -$L046dj7: - ror edx,16 - mov BYTE PTR 6[edi],dl - shr edx,16 -$L047dj6: - mov BYTE PTR 5[edi],dh -$L048dj5: - mov BYTE PTR 4[edi],dl -$L049dj4: - mov DWORD PTR [edi],ecx - jmp $L050djend -$L051dj3: - ror ecx,16 - mov BYTE PTR 2[edi],cl - shl ecx,16 -$L052dj2: - mov BYTE PTR 1[esi],ch -$L053dj1: - mov BYTE PTR [esi],cl -$L050djend: - jmp $L033finish -$L033finish: - mov ecx,DWORD PTR 76[esp] - add esp,32 - mov DWORD PTR [ecx],eax - mov DWORD PTR 4[ecx],ebx - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L035cbc_enc_jmp_table: -DD 0 -DD $L043ej1-$L034PIC_point -DD $L042ej2-$L034PIC_point -DD $L041ej3-$L034PIC_point -DD $L039ej4-$L034PIC_point -DD $L038ej5-$L034PIC_point -DD $L037ej6-$L034PIC_point -DD $L036ej7-$L034PIC_point -ALIGN 64 -_DES_ede3_cbc_encrypt ENDP -ALIGN 64 -_DES_SPtrans:: -$Ldes_sptrans:: -DD 34080768,524288,33554434,34080770 -DD 33554432,526338,524290,33554434 -DD 526338,34080768,34078720,2050 -DD 33556482,33554432,0,524290 -DD 524288,2,33556480,526336 -DD 34080770,34078720,2050,33556480 -DD 2,2048,526336,34078722 -DD 2048,33556482,34078722,0 -DD 0,34080770,33556480,524290 -DD 34080768,524288,2050,33556480 -DD 34078722,2048,526336,33554434 -DD 526338,2,33554434,34078720 -DD 34080770,526336,34078720,33556482 -DD 33554432,2050,524290,0 -DD 524288,33554432,33556482,34080768 -DD 2,34078722,2048,526338 -DD 1074823184,0,1081344,1074790400 -DD 1073741840,32784,1073774592,1081344 -DD 32768,1074790416,16,1073774592 -DD 1048592,1074823168,1074790400,16 -DD 1048576,1073774608,1074790416,32768 -DD 1081360,1073741824,0,1048592 -DD 1073774608,1081360,1074823168,1073741840 -DD 1073741824,1048576,32784,1074823184 -DD 1048592,1074823168,1073774592,1081360 -DD 1074823184,1048592,1073741840,0 -DD 1073741824,32784,1048576,1074790416 -DD 32768,1073741824,1081360,1073774608 -DD 1074823168,32768,0,1073741840 -DD 16,1074823184,1081344,1074790400 -DD 1074790416,1048576,32784,1073774592 -DD 1073774608,16,1074790400,1081344 -DD 67108865,67371264,256,67109121 -DD 262145,67108864,67109121,262400 -DD 67109120,262144,67371008,1 -DD 67371265,257,1,67371009 -DD 0,262145,67371264,256 -DD 257,67371265,262144,67108865 -DD 67371009,67109120,262401,67371008 -DD 262400,0,67108864,262401 -DD 67371264,256,1,262144 -DD 257,262145,67371008,67109121 -DD 0,67371264,262400,67371009 -DD 262145,67108864,67371265,1 -DD 262401,67108865,67108864,67371265 -DD 262144,67109120,67109121,262400 -DD 67109120,0,67371009,257 -DD 67108865,262401,256,67371008 -DD 4198408,268439552,8,272633864 -DD 0,272629760,268439560,4194312 -DD 272633856,268435464,268435456,4104 -DD 268435464,4198408,4194304,268435456 -DD 272629768,4198400,4096,8 -DD 4198400,268439560,272629760,4096 -DD 4104,0,4194312,272633856 -DD 268439552,272629768,272633864,4194304 -DD 272629768,4104,4194304,268435464 -DD 4198400,268439552,8,272629760 -DD 268439560,0,4096,4194312 -DD 0,272629768,272633856,4096 -DD 268435456,272633864,4198408,4194304 -DD 272633864,8,268439552,4198408 -DD 4194312,4198400,272629760,268439560 -DD 4104,268435456,268435464,272633856 -DD 134217728,65536,1024,134284320 -DD 134283296,134218752,66592,134283264 -DD 65536,32,134217760,66560 -DD 134218784,134283296,134284288,0 -DD 66560,134217728,65568,1056 -DD 134218752,66592,0,134217760 -DD 32,134218784,134284320,65568 -DD 134283264,1024,1056,134284288 -DD 134284288,134218784,65568,134283264 -DD 65536,32,134217760,134218752 -DD 134217728,66560,134284320,0 -DD 66592,134217728,1024,65568 -DD 134218784,1024,0,134284320 -DD 134283296,134284288,1056,65536 -DD 66560,134283296,134218752,1056 -DD 32,66592,134283264,134217760 -DD 2147483712,2097216,0,2149588992 -DD 2097216,8192,2147491904,2097152 -DD 8256,2149589056,2105344,2147483648 -DD 2147491840,2147483712,2149580800,2105408 -DD 2097152,2147491904,2149580864,0 -DD 8192,64,2149588992,2149580864 -DD 2149589056,2149580800,2147483648,8256 -DD 64,2105344,2105408,2147491840 -DD 8256,2147483648,2147491840,2105408 -DD 2149588992,2097216,0,2147491840 -DD 2147483648,8192,2149580864,2097152 -DD 2097216,2149589056,2105344,64 -DD 2149589056,2105344,2097152,2147491904 -DD 2147483712,2149580800,2105408,0 -DD 8192,2147483712,2147491904,2149588992 -DD 2149580800,8256,64,2149580864 -DD 16384,512,16777728,16777220 -DD 16794116,16388,16896,0 -DD 16777216,16777732,516,16793600 -DD 4,16794112,16793600,516 -DD 16777732,16384,16388,16794116 -DD 0,16777728,16777220,16896 -DD 16793604,16900,16794112,4 -DD 16900,16793604,512,16777216 -DD 16900,16793600,16793604,516 -DD 16384,512,16777216,16793604 -DD 16777732,16900,16896,0 -DD 512,16777220,4,16777728 -DD 0,16777732,16777728,16896 -DD 516,16384,16794116,16777216 -DD 16794112,4,16388,16794116 -DD 16777220,16794112,16793600,16388 -DD 545259648,545390592,131200,0 -DD 537001984,8388736,545259520,545390720 -DD 128,536870912,8519680,131200 -DD 8519808,537002112,536871040,545259520 -DD 131072,8519808,8388736,537001984 -DD 545390720,536871040,0,8519680 -DD 536870912,8388608,537002112,545259648 -DD 8388608,131072,545390592,128 -DD 8388608,131072,536871040,545390720 -DD 131200,536870912,0,8519680 -DD 545259648,537002112,537001984,8388736 -DD 545390592,128,8388736,537001984 -DD 545390720,8388608,545259520,536871040 -DD 8519680,131200,537002112,545259520 -DD 128,545390592,8519808,0 -DD 536870912,545259648,131072,8519808 -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/md5/md5-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/md5/md5-586.asm deleted file mode 100644 index ae47efcb7a9af4..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/md5/md5-586.asm +++ /dev/null @@ -1,689 +0,0 @@ -TITLE ../openssl/crypto/md5/asm/md5-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_md5_block_asm_data_order PROC PUBLIC -$L_md5_block_asm_data_order_begin:: - push esi - push edi - mov edi,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov ecx,DWORD PTR 20[esp] - push ebp - shl ecx,6 - push ebx - add ecx,esi - sub ecx,64 - mov eax,DWORD PTR [edi] - push ecx - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] -$L000start: - ; - ; R0 section - mov edi,ecx - mov ebp,DWORD PTR [esi] - ; R0 0 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 3614090360[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 4[esi] - add eax,ebx - ; R0 1 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 3905402710[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 8[esi] - add edx,eax - ; R0 2 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 606105819[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 12[esi] - add ecx,edx - ; R0 3 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 3250441966[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 16[esi] - add ebx,ecx - ; R0 4 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 4118548399[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 20[esi] - add eax,ebx - ; R0 5 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 1200080426[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 24[esi] - add edx,eax - ; R0 6 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 2821735955[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 28[esi] - add ecx,edx - ; R0 7 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 4249261313[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 32[esi] - add ebx,ecx - ; R0 8 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 1770035416[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 36[esi] - add eax,ebx - ; R0 9 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 2336552879[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 40[esi] - add edx,eax - ; R0 10 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 4294925233[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 44[esi] - add ecx,edx - ; R0 11 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 2304563134[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 48[esi] - add ebx,ecx - ; R0 12 - xor edi,edx - and edi,ebx - lea eax,DWORD PTR 1804603682[ebp*1+eax] - xor edi,edx - add eax,edi - mov edi,ebx - rol eax,7 - mov ebp,DWORD PTR 52[esi] - add eax,ebx - ; R0 13 - xor edi,ecx - and edi,eax - lea edx,DWORD PTR 4254626195[ebp*1+edx] - xor edi,ecx - add edx,edi - mov edi,eax - rol edx,12 - mov ebp,DWORD PTR 56[esi] - add edx,eax - ; R0 14 - xor edi,ebx - and edi,edx - lea ecx,DWORD PTR 2792965006[ebp*1+ecx] - xor edi,ebx - add ecx,edi - mov edi,edx - rol ecx,17 - mov ebp,DWORD PTR 60[esi] - add ecx,edx - ; R0 15 - xor edi,eax - and edi,ecx - lea ebx,DWORD PTR 1236535329[ebp*1+ebx] - xor edi,eax - add ebx,edi - mov edi,ecx - rol ebx,22 - mov ebp,DWORD PTR 4[esi] - add ebx,ecx - ; - ; R1 section - ; R1 16 - lea eax,DWORD PTR 4129170786[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 24[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 17 - lea edx,DWORD PTR 3225465664[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 44[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 18 - lea ecx,DWORD PTR 643717713[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR [esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 19 - lea ebx,DWORD PTR 3921069994[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 20[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 20 - lea eax,DWORD PTR 3593408605[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 40[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 21 - lea edx,DWORD PTR 38016083[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 60[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 22 - lea ecx,DWORD PTR 3634488961[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 16[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 23 - lea ebx,DWORD PTR 3889429448[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 36[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 24 - lea eax,DWORD PTR 568446438[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 56[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 25 - lea edx,DWORD PTR 3275163606[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 12[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 26 - lea ecx,DWORD PTR 4107603335[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 32[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 27 - lea ebx,DWORD PTR 1163531501[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 52[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; R1 28 - lea eax,DWORD PTR 2850285829[ebp*1+eax] - xor edi,ebx - and edi,edx - mov ebp,DWORD PTR 8[esi] - xor edi,ecx - add eax,edi - mov edi,ebx - rol eax,5 - add eax,ebx - ; R1 29 - lea edx,DWORD PTR 4243563512[ebp*1+edx] - xor edi,eax - and edi,ecx - mov ebp,DWORD PTR 28[esi] - xor edi,ebx - add edx,edi - mov edi,eax - rol edx,9 - add edx,eax - ; R1 30 - lea ecx,DWORD PTR 1735328473[ebp*1+ecx] - xor edi,edx - and edi,ebx - mov ebp,DWORD PTR 48[esi] - xor edi,eax - add ecx,edi - mov edi,edx - rol ecx,14 - add ecx,edx - ; R1 31 - lea ebx,DWORD PTR 2368359562[ebp*1+ebx] - xor edi,ecx - and edi,eax - mov ebp,DWORD PTR 20[esi] - xor edi,edx - add ebx,edi - mov edi,ecx - rol ebx,20 - add ebx,ecx - ; - ; R2 section - ; R2 32 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 4294588738[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 32[esi] - mov edi,ebx - ; R2 33 - lea edx,DWORD PTR 2272392833[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 44[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 34 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 1839030562[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 56[esi] - mov edi,edx - ; R2 35 - lea ebx,DWORD PTR 4259657740[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 4[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 36 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 2763975236[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 16[esi] - mov edi,ebx - ; R2 37 - lea edx,DWORD PTR 1272893353[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 28[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 38 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 4139469664[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 40[esi] - mov edi,edx - ; R2 39 - lea ebx,DWORD PTR 3200236656[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 52[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 40 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 681279174[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR [esi] - mov edi,ebx - ; R2 41 - lea edx,DWORD PTR 3936430074[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 12[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 42 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 3572445317[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 24[esi] - mov edi,edx - ; R2 43 - lea ebx,DWORD PTR 76029189[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR 36[esi] - add ebx,edi - mov edi,ecx - rol ebx,23 - add ebx,ecx - ; R2 44 - xor edi,edx - xor edi,ebx - lea eax,DWORD PTR 3654602809[ebp*1+eax] - add eax,edi - rol eax,4 - mov ebp,DWORD PTR 48[esi] - mov edi,ebx - ; R2 45 - lea edx,DWORD PTR 3873151461[ebp*1+edx] - add eax,ebx - xor edi,ecx - xor edi,eax - mov ebp,DWORD PTR 60[esi] - add edx,edi - mov edi,eax - rol edx,11 - add edx,eax - ; R2 46 - xor edi,ebx - xor edi,edx - lea ecx,DWORD PTR 530742520[ebp*1+ecx] - add ecx,edi - rol ecx,16 - mov ebp,DWORD PTR 8[esi] - mov edi,edx - ; R2 47 - lea ebx,DWORD PTR 3299628645[ebp*1+ebx] - add ecx,edx - xor edi,eax - xor edi,ecx - mov ebp,DWORD PTR [esi] - add ebx,edi - mov edi,-1 - rol ebx,23 - add ebx,ecx - ; - ; R3 section - ; R3 48 - xor edi,edx - or edi,ebx - lea eax,DWORD PTR 4096336452[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 28[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 49 - or edi,eax - lea edx,DWORD PTR 1126891415[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 56[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 50 - or edi,edx - lea ecx,DWORD PTR 2878612391[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 20[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 51 - or edi,ecx - lea ebx,DWORD PTR 4237533241[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 48[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 52 - or edi,ebx - lea eax,DWORD PTR 1700485571[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 12[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 53 - or edi,eax - lea edx,DWORD PTR 2399980690[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 40[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 54 - or edi,edx - lea ecx,DWORD PTR 4293915773[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 4[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 55 - or edi,ecx - lea ebx,DWORD PTR 2240044497[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 32[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 56 - or edi,ebx - lea eax,DWORD PTR 1873313359[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 60[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 57 - or edi,eax - lea edx,DWORD PTR 4264355552[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 24[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 58 - or edi,edx - lea ecx,DWORD PTR 2734768916[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 52[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 59 - or edi,ecx - lea ebx,DWORD PTR 1309151649[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 16[esi] - add ebx,edi - mov edi,-1 - rol ebx,21 - xor edi,edx - add ebx,ecx - ; R3 60 - or edi,ebx - lea eax,DWORD PTR 4149444226[ebp*1+eax] - xor edi,ecx - mov ebp,DWORD PTR 44[esi] - add eax,edi - mov edi,-1 - rol eax,6 - xor edi,ecx - add eax,ebx - ; R3 61 - or edi,eax - lea edx,DWORD PTR 3174756917[ebp*1+edx] - xor edi,ebx - mov ebp,DWORD PTR 8[esi] - add edx,edi - mov edi,-1 - rol edx,10 - xor edi,ebx - add edx,eax - ; R3 62 - or edi,edx - lea ecx,DWORD PTR 718787259[ebp*1+ecx] - xor edi,eax - mov ebp,DWORD PTR 36[esi] - add ecx,edi - mov edi,-1 - rol ecx,15 - xor edi,eax - add ecx,edx - ; R3 63 - or edi,ecx - lea ebx,DWORD PTR 3951481745[ebp*1+ebx] - xor edi,edx - mov ebp,DWORD PTR 24[esp] - add ebx,edi - add esi,64 - rol ebx,21 - mov edi,DWORD PTR [ebp] - add ebx,ecx - add eax,edi - mov edi,DWORD PTR 4[ebp] - add ebx,edi - mov edi,DWORD PTR 8[ebp] - add ecx,edi - mov edi,DWORD PTR 12[ebp] - add edx,edi - mov DWORD PTR [ebp],eax - mov DWORD PTR 4[ebp],ebx - mov edi,DWORD PTR [esp] - mov DWORD PTR 8[ebp],ecx - mov DWORD PTR 12[ebp],edx - cmp edi,esi - jae $L000start - pop eax - pop ebx - pop ebp - pop edi - pop esi - ret -_md5_block_asm_data_order ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/modes/ghash-x86.asm b/deps/openssl/asm_obsolete/x86-win32-masm/modes/ghash-x86.asm deleted file mode 100644 index d18bb128c591d7..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/modes/ghash-x86.asm +++ /dev/null @@ -1,1274 +0,0 @@ -TITLE ghash-x86.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_gcm_gmult_4bit_x86 PROC PUBLIC -$L_gcm_gmult_4bit_x86_begin:: - push ebp - push ebx - push esi - push edi - sub esp,84 - mov edi,DWORD PTR 104[esp] - mov esi,DWORD PTR 108[esp] - mov ebp,DWORD PTR [edi] - mov edx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov ebx,DWORD PTR 12[edi] - mov DWORD PTR 16[esp],0 - mov DWORD PTR 20[esp],471859200 - mov DWORD PTR 24[esp],943718400 - mov DWORD PTR 28[esp],610271232 - mov DWORD PTR 32[esp],1887436800 - mov DWORD PTR 36[esp],1822425088 - mov DWORD PTR 40[esp],1220542464 - mov DWORD PTR 44[esp],1423966208 - mov DWORD PTR 48[esp],3774873600 - mov DWORD PTR 52[esp],4246732800 - mov DWORD PTR 56[esp],3644850176 - mov DWORD PTR 60[esp],3311403008 - mov DWORD PTR 64[esp],2441084928 - mov DWORD PTR 68[esp],2376073216 - mov DWORD PTR 72[esp],2847932416 - mov DWORD PTR 76[esp],3051356160 - mov DWORD PTR [esp],ebp - mov DWORD PTR 4[esp],edx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],ebx - shr ebx,20 - and ebx,240 - mov ebp,DWORD PTR 4[ebx*1+esi] - mov edx,DWORD PTR [ebx*1+esi] - mov ecx,DWORD PTR 12[ebx*1+esi] - mov ebx,DWORD PTR 8[ebx*1+esi] - xor eax,eax - mov edi,15 - jmp $L000x86_loop -ALIGN 16 -$L000x86_loop: - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - and al,240 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - dec edi - js $L001x86_break - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - shl al,4 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - jmp $L000x86_loop -ALIGN 16 -$L001x86_break: - bswap ebx - bswap ecx - bswap edx - bswap ebp - mov edi,DWORD PTR 104[esp] - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR [edi],ebp - add esp,84 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_gmult_4bit_x86 ENDP -ALIGN 16 -_gcm_ghash_4bit_x86 PROC PUBLIC -$L_gcm_ghash_4bit_x86_begin:: - push ebp - push ebx - push esi - push edi - sub esp,84 - mov ebx,DWORD PTR 104[esp] - mov esi,DWORD PTR 108[esp] - mov edi,DWORD PTR 112[esp] - mov ecx,DWORD PTR 116[esp] - add ecx,edi - mov DWORD PTR 116[esp],ecx - mov ebp,DWORD PTR [ebx] - mov edx,DWORD PTR 4[ebx] - mov ecx,DWORD PTR 8[ebx] - mov ebx,DWORD PTR 12[ebx] - mov DWORD PTR 16[esp],0 - mov DWORD PTR 20[esp],471859200 - mov DWORD PTR 24[esp],943718400 - mov DWORD PTR 28[esp],610271232 - mov DWORD PTR 32[esp],1887436800 - mov DWORD PTR 36[esp],1822425088 - mov DWORD PTR 40[esp],1220542464 - mov DWORD PTR 44[esp],1423966208 - mov DWORD PTR 48[esp],3774873600 - mov DWORD PTR 52[esp],4246732800 - mov DWORD PTR 56[esp],3644850176 - mov DWORD PTR 60[esp],3311403008 - mov DWORD PTR 64[esp],2441084928 - mov DWORD PTR 68[esp],2376073216 - mov DWORD PTR 72[esp],2847932416 - mov DWORD PTR 76[esp],3051356160 -ALIGN 16 -$L002x86_outer_loop: - xor ebx,DWORD PTR 12[edi] - xor ecx,DWORD PTR 8[edi] - xor edx,DWORD PTR 4[edi] - xor ebp,DWORD PTR [edi] - mov DWORD PTR 12[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 4[esp],edx - mov DWORD PTR [esp],ebp - shr ebx,20 - and ebx,240 - mov ebp,DWORD PTR 4[ebx*1+esi] - mov edx,DWORD PTR [ebx*1+esi] - mov ecx,DWORD PTR 12[ebx*1+esi] - mov ebx,DWORD PTR 8[ebx*1+esi] - xor eax,eax - mov edi,15 - jmp $L003x86_loop -ALIGN 16 -$L003x86_loop: - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - and al,240 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - dec edi - js $L004x86_break - mov al,bl - shrd ebx,ecx,4 - and al,15 - shrd ecx,edx,4 - shrd edx,ebp,4 - shr ebp,4 - xor ebp,DWORD PTR 16[eax*4+esp] - mov al,BYTE PTR [edi*1+esp] - shl al,4 - xor ebx,DWORD PTR 8[eax*1+esi] - xor ecx,DWORD PTR 12[eax*1+esi] - xor edx,DWORD PTR [eax*1+esi] - xor ebp,DWORD PTR 4[eax*1+esi] - jmp $L003x86_loop -ALIGN 16 -$L004x86_break: - bswap ebx - bswap ecx - bswap edx - bswap ebp - mov edi,DWORD PTR 112[esp] - lea edi,DWORD PTR 16[edi] - cmp edi,DWORD PTR 116[esp] - mov DWORD PTR 112[esp],edi - jb $L002x86_outer_loop - mov edi,DWORD PTR 104[esp] - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR 4[edi],edx - mov DWORD PTR [edi],ebp - add esp,84 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_4bit_x86 ENDP -ALIGN 16 -_gcm_gmult_4bit_mmx PROC PUBLIC -$L_gcm_gmult_4bit_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - call $L005pic_point -$L005pic_point: - pop eax - lea eax,DWORD PTR ($Lrem_4bit-$L005pic_point)[eax] - movzx ebx,BYTE PTR 15[edi] - xor ecx,ecx - mov edx,ebx - mov cl,dl - mov ebp,14 - shl cl,4 - and edx,240 - movq mm0,QWORD PTR 8[ecx*1+esi] - movq mm1,QWORD PTR [ecx*1+esi] - movd ebx,mm0 - jmp $L006mmx_loop -ALIGN 16 -$L006mmx_loop: - psrlq mm0,4 - and ebx,15 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[edx*1+esi] - mov cl,BYTE PTR [ebp*1+edi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - dec ebp - movd ebx,mm0 - pxor mm1,QWORD PTR [edx*1+esi] - mov edx,ecx - pxor mm0,mm2 - js $L007mmx_break - shl cl,4 - and ebx,15 - psrlq mm0,4 - and edx,240 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[ecx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [ecx*1+esi] - pxor mm0,mm2 - jmp $L006mmx_loop -ALIGN 16 -$L007mmx_break: - shl cl,4 - and ebx,15 - psrlq mm0,4 - and edx,240 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[ecx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [ecx*1+esi] - pxor mm0,mm2 - psrlq mm0,4 - and ebx,15 - movq mm2,mm1 - psrlq mm1,4 - pxor mm0,QWORD PTR 8[edx*1+esi] - psllq mm2,60 - pxor mm1,QWORD PTR [ebx*8+eax] - movd ebx,mm0 - pxor mm1,QWORD PTR [edx*1+esi] - pxor mm0,mm2 - psrlq mm0,32 - movd edx,mm1 - psrlq mm1,32 - movd ecx,mm0 - movd ebp,mm1 - bswap ebx - bswap edx - bswap ecx - bswap ebp - emms - mov DWORD PTR 12[edi],ebx - mov DWORD PTR 4[edi],edx - mov DWORD PTR 8[edi],ecx - mov DWORD PTR [edi],ebp - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_gmult_4bit_mmx ENDP -ALIGN 16 -_gcm_ghash_4bit_mmx PROC PUBLIC -$L_gcm_ghash_4bit_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - mov edx,DWORD PTR 32[esp] - mov ebp,esp - call $L008pic_point -$L008pic_point: - pop esi - lea esi,DWORD PTR ($Lrem_8bit-$L008pic_point)[esi] - sub esp,544 - and esp,-64 - sub esp,16 - add edx,ecx - mov DWORD PTR 544[esp],eax - mov DWORD PTR 552[esp],edx - mov DWORD PTR 556[esp],ebp - add ebx,128 - lea edi,DWORD PTR 144[esp] - lea ebp,DWORD PTR 400[esp] - mov edx,DWORD PTR [ebx-120] - movq mm0,QWORD PTR [ebx-120] - movq mm3,QWORD PTR [ebx-128] - shl edx,4 - mov BYTE PTR [esp],dl - mov edx,DWORD PTR [ebx-104] - movq mm2,QWORD PTR [ebx-104] - movq mm5,QWORD PTR [ebx-112] - movq QWORD PTR [edi-128],mm0 - psrlq mm0,4 - movq QWORD PTR [edi],mm3 - movq mm7,mm3 - psrlq mm3,4 - shl edx,4 - mov BYTE PTR 1[esp],dl - mov edx,DWORD PTR [ebx-88] - movq mm1,QWORD PTR [ebx-88] - psllq mm7,60 - movq mm4,QWORD PTR [ebx-96] - por mm0,mm7 - movq QWORD PTR [edi-120],mm2 - psrlq mm2,4 - movq QWORD PTR 8[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-128],mm0 - psrlq mm5,4 - movq QWORD PTR [ebp],mm3 - shl edx,4 - mov BYTE PTR 2[esp],dl - mov edx,DWORD PTR [ebx-72] - movq mm0,QWORD PTR [ebx-72] - psllq mm6,60 - movq mm3,QWORD PTR [ebx-80] - por mm2,mm6 - movq QWORD PTR [edi-112],mm1 - psrlq mm1,4 - movq QWORD PTR 16[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-120],mm2 - psrlq mm4,4 - movq QWORD PTR 8[ebp],mm5 - shl edx,4 - mov BYTE PTR 3[esp],dl - mov edx,DWORD PTR [ebx-56] - movq mm2,QWORD PTR [ebx-56] - psllq mm7,60 - movq mm5,QWORD PTR [ebx-64] - por mm1,mm7 - movq QWORD PTR [edi-104],mm0 - psrlq mm0,4 - movq QWORD PTR 24[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-112],mm1 - psrlq mm3,4 - movq QWORD PTR 16[ebp],mm4 - shl edx,4 - mov BYTE PTR 4[esp],dl - mov edx,DWORD PTR [ebx-40] - movq mm1,QWORD PTR [ebx-40] - psllq mm6,60 - movq mm4,QWORD PTR [ebx-48] - por mm0,mm6 - movq QWORD PTR [edi-96],mm2 - psrlq mm2,4 - movq QWORD PTR 32[edi],mm5 - movq mm7,mm5 - movq QWORD PTR [ebp-104],mm0 - psrlq mm5,4 - movq QWORD PTR 24[ebp],mm3 - shl edx,4 - mov BYTE PTR 5[esp],dl - mov edx,DWORD PTR [ebx-24] - movq mm0,QWORD PTR [ebx-24] - psllq mm7,60 - movq mm3,QWORD PTR [ebx-32] - por mm2,mm7 - movq QWORD PTR [edi-88],mm1 - psrlq mm1,4 - movq QWORD PTR 40[edi],mm4 - movq mm6,mm4 - movq QWORD PTR [ebp-96],mm2 - psrlq mm4,4 - movq QWORD PTR 32[ebp],mm5 - shl edx,4 - mov BYTE PTR 6[esp],dl - mov edx,DWORD PTR [ebx-8] - movq mm2,QWORD PTR [ebx-8] - psllq mm6,60 - movq mm5,QWORD PTR [ebx-16] - por mm1,mm6 - movq QWORD PTR [edi-80],mm0 - psrlq mm0,4 - movq QWORD PTR 48[edi],mm3 - movq mm7,mm3 - movq QWORD PTR [ebp-88],mm1 - psrlq mm3,4 - movq QWORD PTR 40[ebp],mm4 - shl edx,4 - mov BYTE PTR 7[esp],dl - mov edx,DWORD PTR 8[ebx] - movq mm1,QWORD PTR 8[ebx] - psllq mm7,60 - movq mm4,QWORD PTR [ebx] - por mm0,mm7 - movq QWORD PTR [edi-72],mm2 - psrlq mm2,4 - movq QWORD PTR 56[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-80],mm0 - psrlq mm5,4 - movq QWORD PTR 48[ebp],mm3 - shl edx,4 - mov BYTE PTR 8[esp],dl - mov edx,DWORD PTR 24[ebx] - movq mm0,QWORD PTR 24[ebx] - psllq mm6,60 - movq mm3,QWORD PTR 16[ebx] - por mm2,mm6 - movq QWORD PTR [edi-64],mm1 - psrlq mm1,4 - movq QWORD PTR 64[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-72],mm2 - psrlq mm4,4 - movq QWORD PTR 56[ebp],mm5 - shl edx,4 - mov BYTE PTR 9[esp],dl - mov edx,DWORD PTR 40[ebx] - movq mm2,QWORD PTR 40[ebx] - psllq mm7,60 - movq mm5,QWORD PTR 32[ebx] - por mm1,mm7 - movq QWORD PTR [edi-56],mm0 - psrlq mm0,4 - movq QWORD PTR 72[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-64],mm1 - psrlq mm3,4 - movq QWORD PTR 64[ebp],mm4 - shl edx,4 - mov BYTE PTR 10[esp],dl - mov edx,DWORD PTR 56[ebx] - movq mm1,QWORD PTR 56[ebx] - psllq mm6,60 - movq mm4,QWORD PTR 48[ebx] - por mm0,mm6 - movq QWORD PTR [edi-48],mm2 - psrlq mm2,4 - movq QWORD PTR 80[edi],mm5 - movq mm7,mm5 - movq QWORD PTR [ebp-56],mm0 - psrlq mm5,4 - movq QWORD PTR 72[ebp],mm3 - shl edx,4 - mov BYTE PTR 11[esp],dl - mov edx,DWORD PTR 72[ebx] - movq mm0,QWORD PTR 72[ebx] - psllq mm7,60 - movq mm3,QWORD PTR 64[ebx] - por mm2,mm7 - movq QWORD PTR [edi-40],mm1 - psrlq mm1,4 - movq QWORD PTR 88[edi],mm4 - movq mm6,mm4 - movq QWORD PTR [ebp-48],mm2 - psrlq mm4,4 - movq QWORD PTR 80[ebp],mm5 - shl edx,4 - mov BYTE PTR 12[esp],dl - mov edx,DWORD PTR 88[ebx] - movq mm2,QWORD PTR 88[ebx] - psllq mm6,60 - movq mm5,QWORD PTR 80[ebx] - por mm1,mm6 - movq QWORD PTR [edi-32],mm0 - psrlq mm0,4 - movq QWORD PTR 96[edi],mm3 - movq mm7,mm3 - movq QWORD PTR [ebp-40],mm1 - psrlq mm3,4 - movq QWORD PTR 88[ebp],mm4 - shl edx,4 - mov BYTE PTR 13[esp],dl - mov edx,DWORD PTR 104[ebx] - movq mm1,QWORD PTR 104[ebx] - psllq mm7,60 - movq mm4,QWORD PTR 96[ebx] - por mm0,mm7 - movq QWORD PTR [edi-24],mm2 - psrlq mm2,4 - movq QWORD PTR 104[edi],mm5 - movq mm6,mm5 - movq QWORD PTR [ebp-32],mm0 - psrlq mm5,4 - movq QWORD PTR 96[ebp],mm3 - shl edx,4 - mov BYTE PTR 14[esp],dl - mov edx,DWORD PTR 120[ebx] - movq mm0,QWORD PTR 120[ebx] - psllq mm6,60 - movq mm3,QWORD PTR 112[ebx] - por mm2,mm6 - movq QWORD PTR [edi-16],mm1 - psrlq mm1,4 - movq QWORD PTR 112[edi],mm4 - movq mm7,mm4 - movq QWORD PTR [ebp-24],mm2 - psrlq mm4,4 - movq QWORD PTR 104[ebp],mm5 - shl edx,4 - mov BYTE PTR 15[esp],dl - psllq mm7,60 - por mm1,mm7 - movq QWORD PTR [edi-8],mm0 - psrlq mm0,4 - movq QWORD PTR 120[edi],mm3 - movq mm6,mm3 - movq QWORD PTR [ebp-16],mm1 - psrlq mm3,4 - movq QWORD PTR 112[ebp],mm4 - psllq mm6,60 - por mm0,mm6 - movq QWORD PTR [ebp-8],mm0 - movq QWORD PTR 120[ebp],mm3 - movq mm6,QWORD PTR [eax] - mov ebx,DWORD PTR 8[eax] - mov edx,DWORD PTR 12[eax] -ALIGN 16 -$L009outer: - xor edx,DWORD PTR 12[ecx] - xor ebx,DWORD PTR 8[ecx] - pxor mm6,QWORD PTR [ecx] - lea ecx,DWORD PTR 16[ecx] - mov DWORD PTR 536[esp],ebx - movq QWORD PTR 528[esp],mm6 - mov DWORD PTR 548[esp],ecx - xor eax,eax - rol edx,8 - mov al,dl - mov ebp,eax - and al,15 - shr ebp,4 - pxor mm0,mm0 - rol edx,8 - pxor mm1,mm1 - pxor mm2,mm2 - movq mm7,QWORD PTR 16[eax*8+esp] - movq mm6,QWORD PTR 144[eax*8+esp] - mov al,dl - movd ebx,mm7 - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - shr edi,4 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 536[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr ebp,4 - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr edi,4 - pinsrw mm2,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr ebp,4 - pinsrw mm1,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 532[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr edi,4 - pinsrw mm0,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr ebp,4 - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 528[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr edi,4 - pinsrw mm2,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr ebp,4 - pinsrw mm1,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm1 - shr edi,4 - pinsrw mm0,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - mov al,dl - movd ecx,mm7 - movzx ebx,bl - psrlq mm7,8 - movq mm3,mm6 - mov ebp,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[edi*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm0 - shr ebp,4 - pinsrw mm2,WORD PTR [ebx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - rol edx,8 - pxor mm6,QWORD PTR 144[eax*8+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[edi*8+esp] - xor cl,BYTE PTR [edi*1+esp] - mov al,dl - mov edx,DWORD PTR 524[esp] - movd ebx,mm7 - movzx ecx,cl - psrlq mm7,8 - movq mm3,mm6 - mov edi,eax - psrlq mm6,8 - pxor mm7,QWORD PTR 272[ebp*8+esp] - and al,15 - psllq mm3,56 - pxor mm6,mm2 - shr edi,4 - pinsrw mm1,WORD PTR [ecx*2+esi],2 - pxor mm7,QWORD PTR 16[eax*8+esp] - pxor mm6,QWORD PTR 144[eax*8+esp] - xor bl,BYTE PTR [ebp*1+esp] - pxor mm7,mm3 - pxor mm6,QWORD PTR 400[ebp*8+esp] - movzx ebx,bl - pxor mm2,mm2 - psllq mm1,4 - movd ecx,mm7 - psrlq mm7,4 - movq mm3,mm6 - psrlq mm6,4 - shl ecx,4 - pxor mm7,QWORD PTR 16[edi*8+esp] - psllq mm3,60 - movzx ecx,cl - pxor mm7,mm3 - pxor mm6,QWORD PTR 144[edi*8+esp] - pinsrw mm0,WORD PTR [ebx*2+esi],2 - pxor mm6,mm1 - movd edx,mm7 - pinsrw mm2,WORD PTR [ecx*2+esi],3 - psllq mm0,12 - pxor mm6,mm0 - psrlq mm7,32 - pxor mm6,mm2 - mov ecx,DWORD PTR 548[esp] - movd ebx,mm7 - movq mm3,mm6 - psllw mm6,8 - psrlw mm3,8 - por mm6,mm3 - bswap edx - pshufw mm6,mm6,27 - bswap ebx - cmp ecx,DWORD PTR 552[esp] - jne $L009outer - mov eax,DWORD PTR 544[esp] - mov DWORD PTR 12[eax],edx - mov DWORD PTR 8[eax],ebx - movq QWORD PTR [eax],mm6 - mov esp,DWORD PTR 556[esp] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_4bit_mmx ENDP -ALIGN 16 -_gcm_init_clmul PROC PUBLIC -$L_gcm_init_clmul_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - call $L010pic -$L010pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L010pic)[ecx] - movdqu xmm2,XMMWORD PTR [eax] - pshufd xmm2,xmm2,78 - pshufd xmm4,xmm2,255 - movdqa xmm3,xmm2 - psllq xmm2,1 - pxor xmm5,xmm5 - psrlq xmm3,63 - pcmpgtd xmm5,xmm4 - pslldq xmm3,8 - por xmm2,xmm3 - pand xmm5,XMMWORD PTR 16[ecx] - pxor xmm2,xmm5 - movdqa xmm0,xmm2 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pshufd xmm4,xmm2,78 - pxor xmm3,xmm0 - pxor xmm4,xmm2 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - pshufd xmm3,xmm2,78 - pshufd xmm4,xmm0,78 - pxor xmm3,xmm2 - movdqu XMMWORD PTR [edx],xmm2 - pxor xmm4,xmm0 - movdqu XMMWORD PTR 16[edx],xmm0 -DB 102,15,58,15,227,8 - movdqu XMMWORD PTR 32[edx],xmm4 - ret -_gcm_init_clmul ENDP -ALIGN 16 -_gcm_gmult_clmul PROC PUBLIC -$L_gcm_gmult_clmul_begin:: - mov eax,DWORD PTR 4[esp] - mov edx,DWORD PTR 8[esp] - call $L011pic -$L011pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L011pic)[ecx] - movdqu xmm0,XMMWORD PTR [eax] - movdqa xmm5,XMMWORD PTR [ecx] - movups xmm2,XMMWORD PTR [edx] -DB 102,15,56,0,197 - movups xmm4,XMMWORD PTR 32[edx] - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pxor xmm3,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,56,0,197 - movdqu XMMWORD PTR [eax],xmm0 - ret -_gcm_gmult_clmul ENDP -ALIGN 16 -_gcm_ghash_clmul PROC PUBLIC -$L_gcm_ghash_clmul_begin:: - push ebp - push ebx - push esi - push edi - mov eax,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - mov ebx,DWORD PTR 32[esp] - call $L012pic -$L012pic: - pop ecx - lea ecx,DWORD PTR ($Lbswap-$L012pic)[ecx] - movdqu xmm0,XMMWORD PTR [eax] - movdqa xmm5,XMMWORD PTR [ecx] - movdqu xmm2,XMMWORD PTR [edx] -DB 102,15,56,0,197 - sub ebx,16 - jz $L013odd_tail - movdqu xmm3,XMMWORD PTR [esi] - movdqu xmm6,XMMWORD PTR 16[esi] -DB 102,15,56,0,221 -DB 102,15,56,0,245 - movdqu xmm5,XMMWORD PTR 32[edx] - pxor xmm0,xmm3 - pshufd xmm3,xmm6,78 - movdqa xmm7,xmm6 - pxor xmm3,xmm6 - lea esi,DWORD PTR 32[esi] -DB 102,15,58,68,242,0 -DB 102,15,58,68,250,17 -DB 102,15,58,68,221,0 - movups xmm2,XMMWORD PTR 16[edx] - nop - sub ebx,32 - jbe $L014even_tail - jmp $L015mod_loop -ALIGN 32 -$L015mod_loop: - pshufd xmm4,xmm0,78 - movdqa xmm1,xmm0 - pxor xmm4,xmm0 - nop -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,229,16 - movups xmm2,XMMWORD PTR [edx] - xorps xmm0,xmm6 - movdqa xmm5,XMMWORD PTR [ecx] - xorps xmm1,xmm7 - movdqu xmm7,XMMWORD PTR [esi] - pxor xmm3,xmm0 - movdqu xmm6,XMMWORD PTR 16[esi] - pxor xmm3,xmm1 -DB 102,15,56,0,253 - pxor xmm4,xmm3 - movdqa xmm3,xmm4 - psrldq xmm4,8 - pslldq xmm3,8 - pxor xmm1,xmm4 - pxor xmm0,xmm3 -DB 102,15,56,0,245 - pxor xmm1,xmm7 - movdqa xmm7,xmm6 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 -DB 102,15,58,68,242,0 - movups xmm5,XMMWORD PTR 32[edx] - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - pshufd xmm3,xmm7,78 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm3,xmm7 - pxor xmm1,xmm4 -DB 102,15,58,68,250,17 - movups xmm2,XMMWORD PTR 16[edx] - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -DB 102,15,58,68,221,0 - lea esi,DWORD PTR 32[esi] - sub ebx,32 - ja $L015mod_loop -$L014even_tail: - pshufd xmm4,xmm0,78 - movdqa xmm1,xmm0 - pxor xmm4,xmm0 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,229,16 - movdqa xmm5,XMMWORD PTR [ecx] - xorps xmm0,xmm6 - xorps xmm1,xmm7 - pxor xmm3,xmm0 - pxor xmm3,xmm1 - pxor xmm4,xmm3 - movdqa xmm3,xmm4 - psrldq xmm4,8 - pslldq xmm3,8 - pxor xmm1,xmm4 - pxor xmm0,xmm3 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 - test ebx,ebx - jnz $L016done - movups xmm2,XMMWORD PTR [edx] -$L013odd_tail: - movdqu xmm3,XMMWORD PTR [esi] -DB 102,15,56,0,221 - pxor xmm0,xmm3 - movdqa xmm1,xmm0 - pshufd xmm3,xmm0,78 - pshufd xmm4,xmm2,78 - pxor xmm3,xmm0 - pxor xmm4,xmm2 -DB 102,15,58,68,194,0 -DB 102,15,58,68,202,17 -DB 102,15,58,68,220,0 - xorps xmm3,xmm0 - xorps xmm3,xmm1 - movdqa xmm4,xmm3 - psrldq xmm3,8 - pslldq xmm4,8 - pxor xmm1,xmm3 - pxor xmm0,xmm4 - movdqa xmm4,xmm0 - movdqa xmm3,xmm0 - psllq xmm0,5 - pxor xmm3,xmm0 - psllq xmm0,1 - pxor xmm0,xmm3 - psllq xmm0,57 - movdqa xmm3,xmm0 - pslldq xmm0,8 - psrldq xmm3,8 - pxor xmm0,xmm4 - pxor xmm1,xmm3 - movdqa xmm4,xmm0 - psrlq xmm0,1 - pxor xmm1,xmm4 - pxor xmm4,xmm0 - psrlq xmm0,5 - pxor xmm0,xmm4 - psrlq xmm0,1 - pxor xmm0,xmm1 -$L016done: -DB 102,15,56,0,197 - movdqu XMMWORD PTR [eax],xmm0 - pop edi - pop esi - pop ebx - pop ebp - ret -_gcm_ghash_clmul ENDP -ALIGN 64 -$Lbswap:: -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194 -ALIGN 64 -$Lrem_8bit:: -DW 0,450,900,582,1800,1738,1164,1358 -DW 3600,4050,3476,3158,2328,2266,2716,2910 -DW 7200,7650,8100,7782,6952,6890,6316,6510 -DW 4656,5106,4532,4214,5432,5370,5820,6014 -DW 14400,14722,15300,14854,16200,16010,15564,15630 -DW 13904,14226,13780,13334,12632,12442,13020,13086 -DW 9312,9634,10212,9766,9064,8874,8428,8494 -DW 10864,11186,10740,10294,11640,11450,12028,12094 -DW 28800,28994,29444,29382,30600,30282,29708,30158 -DW 32400,32594,32020,31958,31128,30810,31260,31710 -DW 27808,28002,28452,28390,27560,27242,26668,27118 -DW 25264,25458,24884,24822,26040,25722,26172,26622 -DW 18624,18690,19268,19078,20424,19978,19532,19854 -DW 18128,18194,17748,17558,16856,16410,16988,17310 -DW 21728,21794,22372,22182,21480,21034,20588,20910 -DW 23280,23346,22900,22710,24056,23610,24188,24510 -DW 57600,57538,57988,58182,58888,59338,58764,58446 -DW 61200,61138,60564,60758,59416,59866,60316,59998 -DW 64800,64738,65188,65382,64040,64490,63916,63598 -DW 62256,62194,61620,61814,62520,62970,63420,63102 -DW 55616,55426,56004,56070,56904,57226,56780,56334 -DW 55120,54930,54484,54550,53336,53658,54236,53790 -DW 50528,50338,50916,50982,49768,50090,49644,49198 -DW 52080,51890,51444,51510,52344,52666,53244,52798 -DW 37248,36930,37380,37830,38536,38730,38156,38094 -DW 40848,40530,39956,40406,39064,39258,39708,39646 -DW 36256,35938,36388,36838,35496,35690,35116,35054 -DW 33712,33394,32820,33270,33976,34170,34620,34558 -DW 43456,43010,43588,43910,44744,44810,44364,44174 -DW 42960,42514,42068,42390,41176,41242,41820,41630 -DW 46560,46114,46692,47014,45800,45866,45420,45230 -DW 48112,47666,47220,47542,48376,48442,49020,48830 -ALIGN 64 -$Lrem_4bit:: -DD 0,0,0,471859200 -DD 0,943718400,0,610271232 -DD 0,1887436800,0,1822425088 -DD 0,1220542464,0,1423966208 -DD 0,3774873600,0,4246732800 -DD 0,3644850176,0,3311403008 -DD 0,2441084928,0,2376073216 -DD 0,2847932416,0,3051356160 -DB 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 -DB 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 -DB 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 -DB 0 -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/rc4/rc4-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/rc4/rc4-586.asm deleted file mode 100644 index 90ab38ab8a1f0a..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/rc4/rc4-586.asm +++ /dev/null @@ -1,388 +0,0 @@ -TITLE rc4-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_RC4 PROC PUBLIC -$L_RC4_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov edx,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - mov ebp,DWORD PTR 32[esp] - xor eax,eax - xor ebx,ebx - cmp edx,0 - je $L000abort - mov al,BYTE PTR [edi] - mov bl,BYTE PTR 4[edi] - add edi,8 - lea ecx,DWORD PTR [edx*1+esi] - sub ebp,esi - mov DWORD PTR 24[esp],ecx - inc al - cmp DWORD PTR 256[edi],-1 - je $L001RC4_CHAR - mov ecx,DWORD PTR [eax*4+edi] - and edx,-4 - jz $L002loop1 - mov DWORD PTR 32[esp],ebp - test edx,-8 - jz $L003go4loop4 - lea ebp,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ebp],26 - jnc $L003go4loop4 - mov ebp,DWORD PTR 32[esp] - and edx,-8 - lea edx,DWORD PTR [edx*1+esi-8] - mov DWORD PTR [edi-4],edx - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - movq mm0,QWORD PTR [esi] - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] - jmp $L004loop_mmx_enter -ALIGN 16 -$L005loop_mmx: - add bl,cl - psllq mm1,56 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - movq mm0,QWORD PTR [esi] - movq QWORD PTR [esi*1+ebp-8],mm2 - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] -$L004loop_mmx_enter: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm0 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,8 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,16 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,24 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,32 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,40 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,48 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - mov edx,ebx - xor ebx,ebx - mov bl,dl - cmp esi,DWORD PTR [edi-4] - lea esi,DWORD PTR 8[esi] - jb $L005loop_mmx - psllq mm1,56 - pxor mm2,mm1 - movq QWORD PTR [esi*1+ebp-8],mm2 - emms - cmp esi,DWORD PTR 24[esp] - je $L006done - jmp $L002loop1 -ALIGN 16 -$L003go4loop4: - lea edx,DWORD PTR [edx*1+esi-4] - mov DWORD PTR 28[esp],edx -$L007loop4: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - mov ecx,DWORD PTR [eax*4+edi] - mov ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR [eax*4+edi] - or ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR [eax*4+edi] - or ebp,DWORD PTR [edx*4+edi] - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - ror ebp,8 - mov ecx,DWORD PTR 32[esp] - or ebp,DWORD PTR [edx*4+edi] - ror ebp,8 - xor ebp,DWORD PTR [esi] - cmp esi,DWORD PTR 28[esp] - mov DWORD PTR [esi*1+ecx],ebp - lea esi,DWORD PTR 4[esi] - mov ecx,DWORD PTR [eax*4+edi] - jb $L007loop4 - cmp esi,DWORD PTR 24[esp] - je $L006done - mov ebp,DWORD PTR 32[esp] -ALIGN 16 -$L002loop1: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - add edx,ecx - inc al - and edx,255 - mov edx,DWORD PTR [edx*4+edi] - xor dl,BYTE PTR [esi] - lea esi,DWORD PTR 1[esi] - mov ecx,DWORD PTR [eax*4+edi] - cmp esi,DWORD PTR 24[esp] - mov BYTE PTR [esi*1+ebp-1],dl - jb $L002loop1 - jmp $L006done -ALIGN 16 -$L001RC4_CHAR: - movzx ecx,BYTE PTR [eax*1+edi] -$L008cloop1: - add bl,cl - movzx edx,BYTE PTR [ebx*1+edi] - mov BYTE PTR [ebx*1+edi],cl - mov BYTE PTR [eax*1+edi],dl - add dl,cl - movzx edx,BYTE PTR [edx*1+edi] - add al,1 - xor dl,BYTE PTR [esi] - lea esi,DWORD PTR 1[esi] - movzx ecx,BYTE PTR [eax*1+edi] - cmp esi,DWORD PTR 24[esp] - mov BYTE PTR [esi*1+ebp-1],dl - jb $L008cloop1 -$L006done: - dec al - mov DWORD PTR [edi-4],ebx - mov BYTE PTR [edi-8],al -$L000abort: - pop edi - pop esi - pop ebx - pop ebp - ret -_RC4 ENDP -ALIGN 16 -_private_RC4_set_key PROC PUBLIC -$L_private_RC4_set_key_begin:: - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 24[esp] - mov esi,DWORD PTR 28[esp] - lea edx,DWORD PTR _OPENSSL_ia32cap_P - lea edi,DWORD PTR 8[edi] - lea esi,DWORD PTR [ebp*1+esi] - neg ebp - xor eax,eax - mov DWORD PTR [edi-4],ebp - bt DWORD PTR [edx],20 - jc $L009c1stloop -ALIGN 16 -$L010w1stloop: - mov DWORD PTR [eax*4+edi],eax - add al,1 - jnc $L010w1stloop - xor ecx,ecx - xor edx,edx -ALIGN 16 -$L011w2ndloop: - mov eax,DWORD PTR [ecx*4+edi] - add dl,BYTE PTR [ebp*1+esi] - add dl,al - add ebp,1 - mov ebx,DWORD PTR [edx*4+edi] - jnz $L012wnowrap - mov ebp,DWORD PTR [edi-4] -$L012wnowrap: - mov DWORD PTR [edx*4+edi],eax - mov DWORD PTR [ecx*4+edi],ebx - add cl,1 - jnc $L011w2ndloop - jmp $L013exit -ALIGN 16 -$L009c1stloop: - mov BYTE PTR [eax*1+edi],al - add al,1 - jnc $L009c1stloop - xor ecx,ecx - xor edx,edx - xor ebx,ebx -ALIGN 16 -$L014c2ndloop: - mov al,BYTE PTR [ecx*1+edi] - add dl,BYTE PTR [ebp*1+esi] - add dl,al - add ebp,1 - mov bl,BYTE PTR [edx*1+edi] - jnz $L015cnowrap - mov ebp,DWORD PTR [edi-4] -$L015cnowrap: - mov BYTE PTR [edx*1+edi],al - mov BYTE PTR [ecx*1+edi],bl - add cl,1 - jnc $L014c2ndloop - mov DWORD PTR 256[edi],-1 -$L013exit: - xor eax,eax - mov DWORD PTR [edi-8],eax - mov DWORD PTR [edi-4],eax - pop edi - pop esi - pop ebx - pop ebp - ret -_private_RC4_set_key ENDP -ALIGN 16 -_RC4_options PROC PUBLIC -$L_RC4_options_begin:: - call $L016pic_point -$L016pic_point: - pop eax - lea eax,DWORD PTR ($L017opts-$L016pic_point)[eax] - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov edx,DWORD PTR [edx] - bt edx,20 - jc $L0181xchar - bt edx,26 - jnc $L019ret - add eax,25 - ret -$L0181xchar: - add eax,12 -$L019ret: - ret -ALIGN 64 -$L017opts: -DB 114,99,52,40,52,120,44,105,110,116,41,0 -DB 114,99,52,40,49,120,44,99,104,97,114,41,0 -DB 114,99,52,40,56,120,44,109,109,120,41,0 -DB 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 -DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 -DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -ALIGN 64 -_RC4_options ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/ripemd/rmd-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/ripemd/rmd-586.asm deleted file mode 100644 index 9bcd60a0b9120c..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/ripemd/rmd-586.asm +++ /dev/null @@ -1,1975 +0,0 @@ -TITLE ../openssl/crypto/ripemd/asm/rmd-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_ripemd160_block_asm_data_order PROC PUBLIC -$L_ripemd160_block_asm_data_order_begin:: - mov edx,DWORD PTR 4[esp] - mov eax,DWORD PTR 8[esp] - push esi - mov ecx,DWORD PTR [edx] - push edi - mov esi,DWORD PTR 4[edx] - push ebp - mov edi,DWORD PTR 8[edx] - push ebx - sub esp,108 -$L000start: - ; - mov ebx,DWORD PTR [eax] - mov ebp,DWORD PTR 4[eax] - mov DWORD PTR [esp],ebx - mov DWORD PTR 4[esp],ebp - mov ebx,DWORD PTR 8[eax] - mov ebp,DWORD PTR 12[eax] - mov DWORD PTR 8[esp],ebx - mov DWORD PTR 12[esp],ebp - mov ebx,DWORD PTR 16[eax] - mov ebp,DWORD PTR 20[eax] - mov DWORD PTR 16[esp],ebx - mov DWORD PTR 20[esp],ebp - mov ebx,DWORD PTR 24[eax] - mov ebp,DWORD PTR 28[eax] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ebp - mov ebx,DWORD PTR 32[eax] - mov ebp,DWORD PTR 36[eax] - mov DWORD PTR 32[esp],ebx - mov DWORD PTR 36[esp],ebp - mov ebx,DWORD PTR 40[eax] - mov ebp,DWORD PTR 44[eax] - mov DWORD PTR 40[esp],ebx - mov DWORD PTR 44[esp],ebp - mov ebx,DWORD PTR 48[eax] - mov ebp,DWORD PTR 52[eax] - mov DWORD PTR 48[esp],ebx - mov DWORD PTR 52[esp],ebp - mov ebx,DWORD PTR 56[eax] - mov ebp,DWORD PTR 60[eax] - mov DWORD PTR 56[esp],ebx - mov DWORD PTR 60[esp],ebp - mov eax,edi - mov ebx,DWORD PTR 12[edx] - mov ebp,DWORD PTR 16[edx] - ; 0 - xor eax,ebx - mov edx,DWORD PTR [esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,11 - add ecx,ebp - ; 1 - xor eax,edi - mov edx,DWORD PTR 4[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,14 - add ebp,ebx - ; 2 - mov edx,DWORD PTR 8[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,15 - add ebx,edi - ; 3 - xor eax,ecx - mov edx,DWORD PTR 12[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,12 - add edi,esi - ; 4 - mov edx,DWORD PTR 16[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,5 - add esi,ecx - ; 5 - xor eax,ebx - mov edx,DWORD PTR 20[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,8 - add ecx,ebp - ; 6 - mov edx,DWORD PTR 24[esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,7 - add ebp,ebx - ; 7 - xor eax,esi - mov edx,DWORD PTR 28[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,9 - add ebx,edi - ; 8 - mov edx,DWORD PTR 32[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,11 - add edi,esi - ; 9 - xor eax,ebp - mov edx,DWORD PTR 36[esp] - xor eax,edi - add esi,eax - mov eax,edi - rol ebx,10 - add esi,edx - xor eax,ebx - rol esi,13 - add esi,ecx - ; 10 - mov edx,DWORD PTR 40[esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,14 - add ecx,ebp - ; 11 - xor eax,edi - mov edx,DWORD PTR 44[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,15 - add ebp,ebx - ; 12 - mov edx,DWORD PTR 48[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,6 - add ebx,edi - ; 13 - xor eax,ecx - mov edx,DWORD PTR 52[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,7 - add edi,esi - ; 14 - mov edx,DWORD PTR 56[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,9 - add esi,ecx - ; 15 - xor eax,ebx - mov edx,DWORD PTR 60[esp] - xor eax,esi - add ecx,eax - mov eax,-1 - rol edi,10 - add ecx,edx - mov edx,DWORD PTR 28[esp] - rol ecx,8 - add ecx,ebp - ; 16 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 16[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - mov edx,-1 - rol ebp,7 - add ebp,ebx - ; 17 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 52[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,-1 - rol ebx,6 - add ebx,edi - ; 18 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 4[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,-1 - rol edi,8 - add edi,esi - ; 19 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 40[esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[eax*1+esi] - mov eax,-1 - rol esi,13 - add esi,ecx - ; 20 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[edx*1+ecx] - mov edx,-1 - rol ecx,11 - add ecx,ebp - ; 21 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 60[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - mov eax,-1 - rol ebp,9 - add ebp,ebx - ; 22 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[edx*1+ebx] - mov edx,-1 - rol ebx,7 - add ebx,edi - ; 23 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or eax,edx - mov edx,DWORD PTR 48[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[eax*1+edi] - mov eax,-1 - rol edi,15 - add edi,esi - ; 24 - add esi,edx - mov edx,ebx - sub eax,edi - and edx,edi - and eax,ebp - or edx,eax - mov eax,DWORD PTR [esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[edx*1+esi] - mov edx,-1 - rol esi,7 - add esi,ecx - ; 25 - add ecx,eax - mov eax,edi - sub edx,esi - and eax,esi - and edx,ebx - or eax,edx - mov edx,DWORD PTR 36[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[eax*1+ecx] - mov eax,-1 - rol ecx,12 - add ecx,ebp - ; 26 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 20[esp] - rol esi,10 - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - mov edx,-1 - rol ebp,15 - add ebp,ebx - ; 27 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 8[esp] - rol ecx,10 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,-1 - rol ebx,9 - add ebx,edi - ; 28 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ebp,10 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,-1 - rol edi,11 - add edi,esi - ; 29 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 44[esp] - rol ebx,10 - lea esi,DWORD PTR 1518500249[eax*1+esi] - mov eax,-1 - rol esi,7 - add esi,ecx - ; 30 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 32[esp] - rol edi,10 - lea ecx,DWORD PTR 1518500249[edx*1+ecx] - mov edx,-1 - rol ecx,13 - add ecx,ebp - ; 31 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - sub edx,ecx - rol ebp,12 - add ebp,ebx - ; 32 - mov eax,DWORD PTR 12[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[edx*1+ebx] - sub eax,ebp - rol ebx,11 - add ebx,edi - ; 33 - mov edx,DWORD PTR 40[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[eax*1+edi] - sub edx,ebx - rol edi,13 - add edi,esi - ; 34 - mov eax,DWORD PTR 56[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[edx*1+esi] - sub eax,edi - rol esi,6 - add esi,ecx - ; 35 - mov edx,DWORD PTR 16[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[eax*1+ecx] - sub edx,esi - rol ecx,7 - add ecx,ebp - ; 36 - mov eax,DWORD PTR 36[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[edx*1+ebp] - sub eax,ecx - rol ebp,14 - add ebp,ebx - ; 37 - mov edx,DWORD PTR 60[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - sub edx,ebp - rol ebx,9 - add ebx,edi - ; 38 - mov eax,DWORD PTR 32[esp] - or edx,ebx - add edi,eax - xor edx,ecx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[edx*1+edi] - sub eax,ebx - rol edi,13 - add edi,esi - ; 39 - mov edx,DWORD PTR 4[esp] - or eax,edi - add esi,edx - xor eax,ebp - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[eax*1+esi] - sub edx,edi - rol esi,15 - add esi,ecx - ; 40 - mov eax,DWORD PTR 8[esp] - or edx,esi - add ecx,eax - xor edx,ebx - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[edx*1+ecx] - sub eax,esi - rol ecx,14 - add ecx,ebp - ; 41 - mov edx,DWORD PTR 28[esp] - or eax,ecx - add ebp,edx - xor eax,edi - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[eax*1+ebp] - sub edx,ecx - rol ebp,8 - add ebp,ebx - ; 42 - mov eax,DWORD PTR [esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[edx*1+ebx] - sub eax,ebp - rol ebx,13 - add ebx,edi - ; 43 - mov edx,DWORD PTR 24[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1859775393[eax*1+edi] - sub edx,ebx - rol edi,6 - add edi,esi - ; 44 - mov eax,DWORD PTR 52[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1859775393[edx*1+esi] - sub eax,edi - rol esi,5 - add esi,ecx - ; 45 - mov edx,DWORD PTR 44[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1859775393[eax*1+ecx] - sub edx,esi - rol ecx,12 - add ecx,ebp - ; 46 - mov eax,DWORD PTR 20[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1859775393[edx*1+ebp] - sub eax,ecx - rol ebp,7 - add ebp,ebx - ; 47 - mov edx,DWORD PTR 48[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,ecx - rol ebx,5 - add ebx,edi - ; 48 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 4[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,11 - add edi,esi - ; 49 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,12 - add esi,ecx - ; 50 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 44[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,14 - add ecx,ebp - ; 51 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 40[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,15 - add ebp,ebx - ; 52 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR [esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,14 - add ebx,edi - ; 53 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 32[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,15 - add edi,esi - ; 54 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 48[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,9 - add esi,ecx - ; 55 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 16[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,8 - add ecx,ebp - ; 56 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 52[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,9 - add ebp,ebx - ; 57 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,14 - add ebx,edi - ; 58 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 28[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,5 - add edi,esi - ; 59 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 60[esp] - rol ebx,10 - lea esi,DWORD PTR 2400959708[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,6 - add esi,ecx - ; 60 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 56[esp] - rol edi,10 - lea ecx,DWORD PTR 2400959708[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,8 - add ecx,ebp - ; 61 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 20[esp] - rol esi,10 - lea ebp,DWORD PTR 2400959708[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,6 - add ebp,ebx - ; 62 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol ecx,10 - lea ebx,DWORD PTR 2400959708[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,5 - add ebx,edi - ; 63 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 8[esp] - rol ebp,10 - lea edi,DWORD PTR 2400959708[edx*1+edi] - mov edx,-1 - add edi,eax - sub edx,ebp - rol edi,12 - add edi,esi - ; 64 - mov eax,DWORD PTR 16[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[edx*1+esi] - sub eax,ebx - rol esi,9 - add esi,ecx - ; 65 - mov edx,DWORD PTR [esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[eax*1+ecx] - sub edx,edi - rol ecx,15 - add ecx,ebp - ; 66 - mov eax,DWORD PTR 20[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[edx*1+ebp] - sub eax,esi - rol ebp,5 - add ebp,ebx - ; 67 - mov edx,DWORD PTR 36[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[eax*1+ebx] - sub edx,ecx - rol ebx,11 - add ebx,edi - ; 68 - mov eax,DWORD PTR 28[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[edx*1+edi] - sub eax,ebp - rol edi,6 - add edi,esi - ; 69 - mov edx,DWORD PTR 48[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[eax*1+esi] - sub edx,ebx - rol esi,8 - add esi,ecx - ; 70 - mov eax,DWORD PTR 8[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[edx*1+ecx] - sub eax,edi - rol ecx,13 - add ecx,ebp - ; 71 - mov edx,DWORD PTR 40[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[eax*1+ebp] - sub edx,esi - rol ebp,12 - add ebp,ebx - ; 72 - mov eax,DWORD PTR 56[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[edx*1+ebx] - sub eax,ecx - rol ebx,5 - add ebx,edi - ; 73 - mov edx,DWORD PTR 4[esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[eax*1+edi] - sub edx,ebp - rol edi,12 - add edi,esi - ; 74 - mov eax,DWORD PTR 12[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 2840853838[edx*1+esi] - sub eax,ebx - rol esi,13 - add esi,ecx - ; 75 - mov edx,DWORD PTR 32[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 2840853838[eax*1+ecx] - sub edx,edi - rol ecx,14 - add ecx,ebp - ; 76 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 2840853838[edx*1+ebp] - sub eax,esi - rol ebp,11 - add ebp,ebx - ; 77 - mov edx,DWORD PTR 24[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 2840853838[eax*1+ebx] - sub edx,ecx - rol ebx,8 - add ebx,edi - ; 78 - mov eax,DWORD PTR 60[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 2840853838[edx*1+edi] - sub eax,ebp - rol edi,5 - add edi,esi - ; 79 - mov edx,DWORD PTR 52[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,DWORD PTR 128[esp] - rol ebx,10 - lea esi,DWORD PTR 2840853838[eax*1+esi] - mov DWORD PTR 64[esp],ecx - rol esi,6 - add esi,ecx - mov ecx,DWORD PTR [edx] - mov DWORD PTR 68[esp],esi - mov DWORD PTR 72[esp],edi - mov esi,DWORD PTR 4[edx] - mov DWORD PTR 76[esp],ebx - mov edi,DWORD PTR 8[edx] - mov DWORD PTR 80[esp],ebp - mov ebx,DWORD PTR 12[edx] - mov ebp,DWORD PTR 16[edx] - ; 80 - mov edx,-1 - sub edx,ebx - mov eax,DWORD PTR 20[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[edx*1+ecx] - sub eax,edi - rol ecx,8 - add ecx,ebp - ; 81 - mov edx,DWORD PTR 56[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[eax*1+ebp] - sub edx,esi - rol ebp,9 - add ebp,ebx - ; 82 - mov eax,DWORD PTR 28[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[edx*1+ebx] - sub eax,ecx - rol ebx,9 - add ebx,edi - ; 83 - mov edx,DWORD PTR [esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[eax*1+edi] - sub edx,ebp - rol edi,11 - add edi,esi - ; 84 - mov eax,DWORD PTR 36[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[edx*1+esi] - sub eax,ebx - rol esi,13 - add esi,ecx - ; 85 - mov edx,DWORD PTR 8[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[eax*1+ecx] - sub edx,edi - rol ecx,15 - add ecx,ebp - ; 86 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ebp,eax - xor edx,ecx - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[edx*1+ebp] - sub eax,esi - rol ebp,15 - add ebp,ebx - ; 87 - mov edx,DWORD PTR 16[esp] - or eax,ecx - add ebx,edx - xor eax,ebp - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[eax*1+ebx] - sub edx,ecx - rol ebx,5 - add ebx,edi - ; 88 - mov eax,DWORD PTR 52[esp] - or edx,ebp - add edi,eax - xor edx,ebx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[edx*1+edi] - sub eax,ebp - rol edi,7 - add edi,esi - ; 89 - mov edx,DWORD PTR 24[esp] - or eax,ebx - add esi,edx - xor eax,edi - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[eax*1+esi] - sub edx,ebx - rol esi,7 - add esi,ecx - ; 90 - mov eax,DWORD PTR 60[esp] - or edx,edi - add ecx,eax - xor edx,esi - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[edx*1+ecx] - sub eax,edi - rol ecx,8 - add ecx,ebp - ; 91 - mov edx,DWORD PTR 32[esp] - or eax,esi - add ebp,edx - xor eax,ecx - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1352829926[eax*1+ebp] - sub edx,esi - rol ebp,11 - add ebp,ebx - ; 92 - mov eax,DWORD PTR 4[esp] - or edx,ecx - add ebx,eax - xor edx,ebp - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1352829926[edx*1+ebx] - sub eax,ecx - rol ebx,14 - add ebx,edi - ; 93 - mov edx,DWORD PTR 40[esp] - or eax,ebp - add edi,edx - xor eax,ebx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1352829926[eax*1+edi] - sub edx,ebp - rol edi,14 - add edi,esi - ; 94 - mov eax,DWORD PTR 12[esp] - or edx,ebx - add esi,eax - xor edx,edi - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1352829926[edx*1+esi] - sub eax,ebx - rol esi,12 - add esi,ecx - ; 95 - mov edx,DWORD PTR 48[esp] - or eax,edi - add ecx,edx - xor eax,esi - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1352829926[eax*1+ecx] - mov eax,edi - rol ecx,6 - add ecx,ebp - ; 96 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 24[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,9 - add ebp,ebx - ; 97 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 44[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,13 - add ebx,edi - ; 98 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 12[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,15 - add edi,esi - ; 99 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 28[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,7 - add esi,ecx - ; 100 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR [esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,12 - add ecx,ebp - ; 101 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 52[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,8 - add ebp,ebx - ; 102 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 20[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,9 - add ebx,edi - ; 103 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 40[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,11 - add edi,esi - ; 104 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,7 - add esi,ecx - ; 105 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 60[esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,7 - add ecx,ebp - ; 106 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 32[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - mov eax,esi - rol ebp,12 - add ebp,ebx - ; 107 - sub edx,esi - and eax,ebp - and edx,ecx - or edx,eax - mov eax,DWORD PTR 48[esp] - rol ecx,10 - lea ebx,DWORD PTR 1548603684[edx*1+ebx] - mov edx,-1 - add ebx,eax - mov eax,ecx - rol ebx,7 - add ebx,edi - ; 108 - sub edx,ecx - and eax,ebx - and edx,ebp - or edx,eax - mov eax,DWORD PTR 16[esp] - rol ebp,10 - lea edi,DWORD PTR 1548603684[edx*1+edi] - mov edx,-1 - add edi,eax - mov eax,ebp - rol edi,6 - add edi,esi - ; 109 - sub edx,ebp - and eax,edi - and edx,ebx - or edx,eax - mov eax,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 1548603684[edx*1+esi] - mov edx,-1 - add esi,eax - mov eax,ebx - rol esi,15 - add esi,ecx - ; 110 - sub edx,ebx - and eax,esi - and edx,edi - or edx,eax - mov eax,DWORD PTR 4[esp] - rol edi,10 - lea ecx,DWORD PTR 1548603684[edx*1+ecx] - mov edx,-1 - add ecx,eax - mov eax,edi - rol ecx,13 - add ecx,ebp - ; 111 - sub edx,edi - and eax,ecx - and edx,esi - or edx,eax - mov eax,DWORD PTR 8[esp] - rol esi,10 - lea ebp,DWORD PTR 1548603684[edx*1+ebp] - mov edx,-1 - add ebp,eax - sub edx,ecx - rol ebp,11 - add ebp,ebx - ; 112 - mov eax,DWORD PTR 60[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[edx*1+ebx] - sub eax,ebp - rol ebx,9 - add ebx,edi - ; 113 - mov edx,DWORD PTR 20[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[eax*1+edi] - sub edx,ebx - rol edi,7 - add edi,esi - ; 114 - mov eax,DWORD PTR 4[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[edx*1+esi] - sub eax,edi - rol esi,15 - add esi,ecx - ; 115 - mov edx,DWORD PTR 12[esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[eax*1+ecx] - sub edx,esi - rol ecx,11 - add ecx,ebp - ; 116 - mov eax,DWORD PTR 28[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[edx*1+ebp] - sub eax,ecx - rol ebp,8 - add ebp,ebx - ; 117 - mov edx,DWORD PTR 56[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[eax*1+ebx] - sub edx,ebp - rol ebx,6 - add ebx,edi - ; 118 - mov eax,DWORD PTR 24[esp] - or edx,ebx - add edi,eax - xor edx,ecx - mov eax,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[edx*1+edi] - sub eax,ebx - rol edi,6 - add edi,esi - ; 119 - mov edx,DWORD PTR 36[esp] - or eax,edi - add esi,edx - xor eax,ebp - mov edx,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[eax*1+esi] - sub edx,edi - rol esi,14 - add esi,ecx - ; 120 - mov eax,DWORD PTR 44[esp] - or edx,esi - add ecx,eax - xor edx,ebx - mov eax,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[edx*1+ecx] - sub eax,esi - rol ecx,12 - add ecx,ebp - ; 121 - mov edx,DWORD PTR 32[esp] - or eax,ecx - add ebp,edx - xor eax,edi - mov edx,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[eax*1+ebp] - sub edx,ecx - rol ebp,13 - add ebp,ebx - ; 122 - mov eax,DWORD PTR 48[esp] - or edx,ebp - add ebx,eax - xor edx,esi - mov eax,-1 - rol ecx,10 - lea ebx,DWORD PTR 1836072691[edx*1+ebx] - sub eax,ebp - rol ebx,5 - add ebx,edi - ; 123 - mov edx,DWORD PTR 8[esp] - or eax,ebx - add edi,edx - xor eax,ecx - mov edx,-1 - rol ebp,10 - lea edi,DWORD PTR 1836072691[eax*1+edi] - sub edx,ebx - rol edi,14 - add edi,esi - ; 124 - mov eax,DWORD PTR 40[esp] - or edx,edi - add esi,eax - xor edx,ebp - mov eax,-1 - rol ebx,10 - lea esi,DWORD PTR 1836072691[edx*1+esi] - sub eax,edi - rol esi,13 - add esi,ecx - ; 125 - mov edx,DWORD PTR [esp] - or eax,esi - add ecx,edx - xor eax,ebx - mov edx,-1 - rol edi,10 - lea ecx,DWORD PTR 1836072691[eax*1+ecx] - sub edx,esi - rol ecx,13 - add ecx,ebp - ; 126 - mov eax,DWORD PTR 16[esp] - or edx,ecx - add ebp,eax - xor edx,edi - mov eax,-1 - rol esi,10 - lea ebp,DWORD PTR 1836072691[edx*1+ebp] - sub eax,ecx - rol ebp,7 - add ebp,ebx - ; 127 - mov edx,DWORD PTR 52[esp] - or eax,ebp - add ebx,edx - xor eax,esi - mov edx,DWORD PTR 32[esp] - rol ecx,10 - lea ebx,DWORD PTR 1836072691[eax*1+ebx] - mov eax,-1 - rol ebx,5 - add ebx,edi - ; 128 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 24[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - mov edx,-1 - rol edi,15 - add edi,esi - ; 129 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 16[esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[eax*1+esi] - mov eax,-1 - rol esi,5 - add esi,ecx - ; 130 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 4[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[edx*1+ecx] - mov edx,-1 - rol ecx,8 - add ecx,ebp - ; 131 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 12[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[eax*1+ebp] - mov eax,-1 - rol ebp,11 - add ebp,ebx - ; 132 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 44[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[edx*1+ebx] - mov edx,-1 - rol ebx,14 - add ebx,edi - ; 133 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or eax,edx - mov edx,DWORD PTR 60[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[eax*1+edi] - mov eax,-1 - rol edi,14 - add edi,esi - ; 134 - add esi,edx - mov edx,ebx - sub eax,edi - and edx,edi - and eax,ebp - or edx,eax - mov eax,DWORD PTR [esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[edx*1+esi] - mov edx,-1 - rol esi,6 - add esi,ecx - ; 135 - add ecx,eax - mov eax,edi - sub edx,esi - and eax,esi - and edx,ebx - or eax,edx - mov edx,DWORD PTR 20[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[eax*1+ecx] - mov eax,-1 - rol ecx,14 - add ecx,ebp - ; 136 - add ebp,edx - mov edx,esi - sub eax,ecx - and edx,ecx - and eax,edi - or edx,eax - mov eax,DWORD PTR 48[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[edx*1+ebp] - mov edx,-1 - rol ebp,6 - add ebp,ebx - ; 137 - add ebx,eax - mov eax,ecx - sub edx,ebp - and eax,ebp - and edx,esi - or eax,edx - mov edx,DWORD PTR 8[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[eax*1+ebx] - mov eax,-1 - rol ebx,9 - add ebx,edi - ; 138 - add edi,edx - mov edx,ebp - sub eax,ebx - and edx,ebx - and eax,ecx - or edx,eax - mov eax,DWORD PTR 52[esp] - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - mov edx,-1 - rol edi,12 - add edi,esi - ; 139 - add esi,eax - mov eax,ebx - sub edx,edi - and eax,edi - and edx,ebp - or eax,edx - mov edx,DWORD PTR 36[esp] - rol ebx,10 - lea esi,DWORD PTR 2053994217[eax*1+esi] - mov eax,-1 - rol esi,9 - add esi,ecx - ; 140 - add ecx,edx - mov edx,edi - sub eax,esi - and edx,esi - and eax,ebx - or edx,eax - mov eax,DWORD PTR 28[esp] - rol edi,10 - lea ecx,DWORD PTR 2053994217[edx*1+ecx] - mov edx,-1 - rol ecx,12 - add ecx,ebp - ; 141 - add ebp,eax - mov eax,esi - sub edx,ecx - and eax,ecx - and edx,edi - or eax,edx - mov edx,DWORD PTR 40[esp] - rol esi,10 - lea ebp,DWORD PTR 2053994217[eax*1+ebp] - mov eax,-1 - rol ebp,5 - add ebp,ebx - ; 142 - add ebx,edx - mov edx,ecx - sub eax,ebp - and edx,ebp - and eax,esi - or edx,eax - mov eax,DWORD PTR 56[esp] - rol ecx,10 - lea ebx,DWORD PTR 2053994217[edx*1+ebx] - mov edx,-1 - rol ebx,15 - add ebx,edi - ; 143 - add edi,eax - mov eax,ebp - sub edx,ebx - and eax,ebx - and edx,ecx - or edx,eax - mov eax,ebx - rol ebp,10 - lea edi,DWORD PTR 2053994217[edx*1+edi] - xor eax,ebp - rol edi,8 - add edi,esi - ; 144 - mov edx,DWORD PTR 48[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,8 - add esi,ecx - ; 145 - xor eax,ebx - mov edx,DWORD PTR 60[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,5 - add ecx,ebp - ; 146 - mov edx,DWORD PTR 40[esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,12 - add ebp,ebx - ; 147 - xor eax,esi - mov edx,DWORD PTR 16[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,9 - add ebx,edi - ; 148 - mov edx,DWORD PTR 4[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,12 - add edi,esi - ; 149 - xor eax,ebp - mov edx,DWORD PTR 20[esp] - xor eax,edi - add esi,eax - mov eax,edi - rol ebx,10 - add esi,edx - xor eax,ebx - rol esi,5 - add esi,ecx - ; 150 - mov edx,DWORD PTR 32[esp] - xor eax,esi - add ecx,edx - rol edi,10 - add ecx,eax - mov eax,esi - rol ecx,14 - add ecx,ebp - ; 151 - xor eax,edi - mov edx,DWORD PTR 28[esp] - xor eax,ecx - add ebp,eax - mov eax,ecx - rol esi,10 - add ebp,edx - xor eax,esi - rol ebp,6 - add ebp,ebx - ; 152 - mov edx,DWORD PTR 24[esp] - xor eax,ebp - add ebx,edx - rol ecx,10 - add ebx,eax - mov eax,ebp - rol ebx,8 - add ebx,edi - ; 153 - xor eax,ecx - mov edx,DWORD PTR 8[esp] - xor eax,ebx - add edi,eax - mov eax,ebx - rol ebp,10 - add edi,edx - xor eax,ebp - rol edi,13 - add edi,esi - ; 154 - mov edx,DWORD PTR 52[esp] - xor eax,edi - add esi,edx - rol ebx,10 - add esi,eax - mov eax,edi - rol esi,6 - add esi,ecx - ; 155 - xor eax,ebx - mov edx,DWORD PTR 56[esp] - xor eax,esi - add ecx,eax - mov eax,esi - rol edi,10 - add ecx,edx - xor eax,edi - rol ecx,5 - add ecx,ebp - ; 156 - mov edx,DWORD PTR [esp] - xor eax,ecx - add ebp,edx - rol esi,10 - add ebp,eax - mov eax,ecx - rol ebp,15 - add ebp,ebx - ; 157 - xor eax,esi - mov edx,DWORD PTR 12[esp] - xor eax,ebp - add ebx,eax - mov eax,ebp - rol ecx,10 - add ebx,edx - xor eax,ecx - rol ebx,13 - add ebx,edi - ; 158 - mov edx,DWORD PTR 36[esp] - xor eax,ebx - add edi,edx - rol ebp,10 - add edi,eax - mov eax,ebx - rol edi,11 - add edi,esi - ; 159 - xor eax,ebp - mov edx,DWORD PTR 44[esp] - xor eax,edi - add esi,eax - rol ebx,10 - add esi,edx - mov edx,DWORD PTR 128[esp] - rol esi,11 - add esi,ecx - mov eax,DWORD PTR 4[edx] - add ebx,eax - mov eax,DWORD PTR 72[esp] - add ebx,eax - mov eax,DWORD PTR 8[edx] - add ebp,eax - mov eax,DWORD PTR 76[esp] - add ebp,eax - mov eax,DWORD PTR 12[edx] - add ecx,eax - mov eax,DWORD PTR 80[esp] - add ecx,eax - mov eax,DWORD PTR 16[edx] - add esi,eax - mov eax,DWORD PTR 64[esp] - add esi,eax - mov eax,DWORD PTR [edx] - add edi,eax - mov eax,DWORD PTR 68[esp] - add edi,eax - mov eax,DWORD PTR 136[esp] - mov DWORD PTR [edx],ebx - mov DWORD PTR 4[edx],ebp - mov DWORD PTR 8[edx],ecx - sub eax,1 - mov DWORD PTR 12[edx],esi - mov DWORD PTR 16[edx],edi - jle $L001get_out - mov DWORD PTR 136[esp],eax - mov edi,ecx - mov eax,DWORD PTR 132[esp] - mov ecx,ebx - add eax,64 - mov esi,ebp - mov DWORD PTR 132[esp],eax - jmp $L000start -$L001get_out: - add esp,108 - pop ebx - pop ebp - pop edi - pop esi - ret -_ripemd160_block_asm_data_order ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha1-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha1-586.asm deleted file mode 100644 index 38aaf17445b4b8..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha1-586.asm +++ /dev/null @@ -1,2813 +0,0 @@ -TITLE sha1-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha1_block_data_order PROC PUBLIC -$L_sha1_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - call $L000pic_point -$L000pic_point: - pop ebp - lea esi,DWORD PTR _OPENSSL_ia32cap_P - lea ebp,DWORD PTR ($LK_XX_XX-$L000pic_point)[ebp] - mov eax,DWORD PTR [esi] - mov edx,DWORD PTR 4[esi] - test edx,512 - jz $L001x86 - mov ecx,DWORD PTR 8[esi] - test eax,16777216 - jz $L001x86 - test ecx,536870912 - jnz $Lshaext_shortcut - jmp $Lssse3_shortcut -ALIGN 16 -$L001x86: - mov ebp,DWORD PTR 20[esp] - mov esi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - sub esp,76 - shl eax,6 - add eax,esi - mov DWORD PTR 104[esp],eax - mov edi,DWORD PTR 16[ebp] - jmp $L002loop -ALIGN 16 -$L002loop: - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 16[esp],eax - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],edx - mov eax,DWORD PTR 32[esi] - mov ebx,DWORD PTR 36[esi] - mov ecx,DWORD PTR 40[esi] - mov edx,DWORD PTR 44[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov DWORD PTR 40[esp],ecx - mov DWORD PTR 44[esp],edx - mov eax,DWORD PTR 48[esi] - mov ebx,DWORD PTR 52[esi] - mov ecx,DWORD PTR 56[esi] - mov edx,DWORD PTR 60[esi] - bswap eax - bswap ebx - bswap ecx - bswap edx - mov DWORD PTR 48[esp],eax - mov DWORD PTR 52[esp],ebx - mov DWORD PTR 56[esp],ecx - mov DWORD PTR 60[esp],edx - mov DWORD PTR 100[esp],esi - mov eax,DWORD PTR [ebp] - mov ebx,DWORD PTR 4[ebp] - mov ecx,DWORD PTR 8[ebp] - mov edx,DWORD PTR 12[ebp] - ; 00_15 0 - mov esi,ecx - mov ebp,eax - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR [esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 1 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 4[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 2 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 8[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 3 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 12[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - add ebp,ecx - ; 00_15 4 - mov ebx,edi - mov ecx,ebp - rol ebp,5 - xor ebx,esi - add ebp,eax - mov eax,DWORD PTR 16[esp] - and ebx,edx - ror edx,2 - xor ebx,esi - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - add ebp,ebx - ; 00_15 5 - mov eax,edx - mov ebx,ebp - rol ebp,5 - xor eax,edi - add ebp,esi - mov esi,DWORD PTR 20[esp] - and eax,ecx - ror ecx,2 - xor eax,edi - lea ebp,DWORD PTR 1518500249[esi*1+ebp] - add ebp,eax - ; 00_15 6 - mov esi,ecx - mov eax,ebp - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR 24[esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 7 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 28[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 8 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 32[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 9 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 36[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - add ebp,ecx - ; 00_15 10 - mov ebx,edi - mov ecx,ebp - rol ebp,5 - xor ebx,esi - add ebp,eax - mov eax,DWORD PTR 40[esp] - and ebx,edx - ror edx,2 - xor ebx,esi - lea ebp,DWORD PTR 1518500249[eax*1+ebp] - add ebp,ebx - ; 00_15 11 - mov eax,edx - mov ebx,ebp - rol ebp,5 - xor eax,edi - add ebp,esi - mov esi,DWORD PTR 44[esp] - and eax,ecx - ror ecx,2 - xor eax,edi - lea ebp,DWORD PTR 1518500249[esi*1+ebp] - add ebp,eax - ; 00_15 12 - mov esi,ecx - mov eax,ebp - rol ebp,5 - xor esi,edx - add ebp,edi - mov edi,DWORD PTR 48[esp] - and esi,ebx - ror ebx,2 - xor esi,edx - lea ebp,DWORD PTR 1518500249[edi*1+ebp] - add ebp,esi - ; 00_15 13 - mov edi,ebx - mov esi,ebp - rol ebp,5 - xor edi,ecx - add ebp,edx - mov edx,DWORD PTR 52[esp] - and edi,eax - ror eax,2 - xor edi,ecx - lea ebp,DWORD PTR 1518500249[edx*1+ebp] - add ebp,edi - ; 00_15 14 - mov edx,eax - mov edi,ebp - rol ebp,5 - xor edx,ebx - add ebp,ecx - mov ecx,DWORD PTR 56[esp] - and edx,esi - ror esi,2 - xor edx,ebx - lea ebp,DWORD PTR 1518500249[ecx*1+ebp] - add ebp,edx - ; 00_15 15 - mov ecx,esi - mov edx,ebp - rol ebp,5 - xor ecx,eax - add ebp,ebx - mov ebx,DWORD PTR 60[esp] - and ecx,edi - ror edi,2 - xor ecx,eax - lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - mov ebx,DWORD PTR [esp] - add ecx,ebp - ; 16_19 16 - mov ebp,edi - xor ebx,DWORD PTR 8[esp] - xor ebp,esi - xor ebx,DWORD PTR 32[esp] - and ebp,edx - xor ebx,DWORD PTR 52[esp] - rol ebx,1 - xor ebp,esi - add eax,ebp - mov ebp,ecx - ror edx,2 - mov DWORD PTR [esp],ebx - rol ebp,5 - lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,DWORD PTR 4[esp] - add ebx,ebp - ; 16_19 17 - mov ebp,edx - xor eax,DWORD PTR 12[esp] - xor ebp,edi - xor eax,DWORD PTR 36[esp] - and ebp,ecx - xor eax,DWORD PTR 56[esp] - rol eax,1 - xor ebp,edi - add esi,ebp - mov ebp,ebx - ror ecx,2 - mov DWORD PTR 4[esp],eax - rol ebp,5 - lea eax,DWORD PTR 1518500249[esi*1+eax] - mov esi,DWORD PTR 8[esp] - add eax,ebp - ; 16_19 18 - mov ebp,ecx - xor esi,DWORD PTR 16[esp] - xor ebp,edx - xor esi,DWORD PTR 40[esp] - and ebp,ebx - xor esi,DWORD PTR 60[esp] - rol esi,1 - xor ebp,edx - add edi,ebp - mov ebp,eax - ror ebx,2 - mov DWORD PTR 8[esp],esi - rol ebp,5 - lea esi,DWORD PTR 1518500249[edi*1+esi] - mov edi,DWORD PTR 12[esp] - add esi,ebp - ; 16_19 19 - mov ebp,ebx - xor edi,DWORD PTR 20[esp] - xor ebp,ecx - xor edi,DWORD PTR 44[esp] - and ebp,eax - xor edi,DWORD PTR [esp] - rol edi,1 - xor ebp,ecx - add edx,ebp - mov ebp,esi - ror eax,2 - mov DWORD PTR 12[esp],edi - rol ebp,5 - lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,DWORD PTR 16[esp] - add edi,ebp - ; 20_39 20 - mov ebp,esi - xor edx,DWORD PTR 24[esp] - xor ebp,eax - xor edx,DWORD PTR 48[esp] - xor ebp,ebx - xor edx,DWORD PTR 4[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp - ; 20_39 21 - mov ebp,edi - xor ecx,DWORD PTR 28[esp] - xor ebp,esi - xor ecx,DWORD PTR 52[esp] - xor ebp,eax - xor ecx,DWORD PTR 8[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp - ; 20_39 22 - mov ebp,edx - xor ebx,DWORD PTR 32[esp] - xor ebp,edi - xor ebx,DWORD PTR 56[esp] - xor ebp,esi - xor ebx,DWORD PTR 12[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp - ; 20_39 23 - mov ebp,ecx - xor eax,DWORD PTR 36[esp] - xor ebp,edx - xor eax,DWORD PTR 60[esp] - xor ebp,edi - xor eax,DWORD PTR 16[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp - ; 20_39 24 - mov ebp,ebx - xor esi,DWORD PTR 40[esp] - xor ebp,ecx - xor esi,DWORD PTR [esp] - xor ebp,edx - xor esi,DWORD PTR 20[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp - ; 20_39 25 - mov ebp,eax - xor edi,DWORD PTR 44[esp] - xor ebp,ebx - xor edi,DWORD PTR 4[esp] - xor ebp,ecx - xor edi,DWORD PTR 24[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp - ; 20_39 26 - mov ebp,esi - xor edx,DWORD PTR 48[esp] - xor ebp,eax - xor edx,DWORD PTR 8[esp] - xor ebp,ebx - xor edx,DWORD PTR 28[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp - ; 20_39 27 - mov ebp,edi - xor ecx,DWORD PTR 52[esp] - xor ebp,esi - xor ecx,DWORD PTR 12[esp] - xor ebp,eax - xor ecx,DWORD PTR 32[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp - ; 20_39 28 - mov ebp,edx - xor ebx,DWORD PTR 56[esp] - xor ebp,edi - xor ebx,DWORD PTR 16[esp] - xor ebp,esi - xor ebx,DWORD PTR 36[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp - ; 20_39 29 - mov ebp,ecx - xor eax,DWORD PTR 60[esp] - xor ebp,edx - xor eax,DWORD PTR 20[esp] - xor ebp,edi - xor eax,DWORD PTR 40[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 52[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp - ; 20_39 30 - mov ebp,ebx - xor esi,DWORD PTR [esp] - xor ebp,ecx - xor esi,DWORD PTR 24[esp] - xor ebp,edx - xor esi,DWORD PTR 44[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 56[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp - ; 20_39 31 - mov ebp,eax - xor edi,DWORD PTR 4[esp] - xor ebp,ebx - xor edi,DWORD PTR 28[esp] - xor ebp,ecx - xor edi,DWORD PTR 48[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 60[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR [esp] - add edi,ebp - ; 20_39 32 - mov ebp,esi - xor edx,DWORD PTR 8[esp] - xor ebp,eax - xor edx,DWORD PTR 32[esp] - xor ebp,ebx - xor edx,DWORD PTR 52[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR [esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 4[esp] - add edx,ebp - ; 20_39 33 - mov ebp,edi - xor ecx,DWORD PTR 12[esp] - xor ebp,esi - xor ecx,DWORD PTR 36[esp] - xor ebp,eax - xor ecx,DWORD PTR 56[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 4[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 8[esp] - add ecx,ebp - ; 20_39 34 - mov ebp,edx - xor ebx,DWORD PTR 16[esp] - xor ebp,edi - xor ebx,DWORD PTR 40[esp] - xor ebp,esi - xor ebx,DWORD PTR 60[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 8[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 12[esp] - add ebx,ebp - ; 20_39 35 - mov ebp,ecx - xor eax,DWORD PTR 20[esp] - xor ebp,edx - xor eax,DWORD PTR 44[esp] - xor ebp,edi - xor eax,DWORD PTR [esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 12[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 16[esp] - add eax,ebp - ; 20_39 36 - mov ebp,ebx - xor esi,DWORD PTR 24[esp] - xor ebp,ecx - xor esi,DWORD PTR 48[esp] - xor ebp,edx - xor esi,DWORD PTR 4[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 16[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 20[esp] - add esi,ebp - ; 20_39 37 - mov ebp,eax - xor edi,DWORD PTR 28[esp] - xor ebp,ebx - xor edi,DWORD PTR 52[esp] - xor ebp,ecx - xor edi,DWORD PTR 8[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 20[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 24[esp] - add edi,ebp - ; 20_39 38 - mov ebp,esi - xor edx,DWORD PTR 32[esp] - xor ebp,eax - xor edx,DWORD PTR 56[esp] - xor ebp,ebx - xor edx,DWORD PTR 12[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 24[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 28[esp] - add edx,ebp - ; 20_39 39 - mov ebp,edi - xor ecx,DWORD PTR 36[esp] - xor ebp,esi - xor ecx,DWORD PTR 60[esp] - xor ebp,eax - xor ecx,DWORD PTR 16[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 28[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 32[esp] - add ecx,ebp - ; 40_59 40 - mov ebp,edi - xor ebx,DWORD PTR 40[esp] - xor ebp,esi - xor ebx,DWORD PTR [esp] - and ebp,edx - xor ebx,DWORD PTR 20[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 32[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 36[esp] - add ebx,ebp - ; 40_59 41 - mov ebp,edx - xor eax,DWORD PTR 44[esp] - xor ebp,edi - xor eax,DWORD PTR 4[esp] - and ebp,ecx - xor eax,DWORD PTR 24[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 36[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 40[esp] - add eax,ebp - ; 40_59 42 - mov ebp,ecx - xor esi,DWORD PTR 48[esp] - xor ebp,edx - xor esi,DWORD PTR 8[esp] - and ebp,ebx - xor esi,DWORD PTR 28[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR 40[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 44[esp] - add esi,ebp - ; 40_59 43 - mov ebp,ebx - xor edi,DWORD PTR 52[esp] - xor ebp,ecx - xor edi,DWORD PTR 12[esp] - and ebp,eax - xor edi,DWORD PTR 32[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 44[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 48[esp] - add edi,ebp - ; 40_59 44 - mov ebp,eax - xor edx,DWORD PTR 56[esp] - xor ebp,ebx - xor edx,DWORD PTR 16[esp] - and ebp,esi - xor edx,DWORD PTR 36[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 48[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 52[esp] - add edx,ebp - ; 40_59 45 - mov ebp,esi - xor ecx,DWORD PTR 60[esp] - xor ebp,eax - xor ecx,DWORD PTR 20[esp] - and ebp,edi - xor ecx,DWORD PTR 40[esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 52[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 56[esp] - add ecx,ebp - ; 40_59 46 - mov ebp,edi - xor ebx,DWORD PTR [esp] - xor ebp,esi - xor ebx,DWORD PTR 24[esp] - and ebp,edx - xor ebx,DWORD PTR 44[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 56[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 60[esp] - add ebx,ebp - ; 40_59 47 - mov ebp,edx - xor eax,DWORD PTR 4[esp] - xor ebp,edi - xor eax,DWORD PTR 28[esp] - and ebp,ecx - xor eax,DWORD PTR 48[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 60[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR [esp] - add eax,ebp - ; 40_59 48 - mov ebp,ecx - xor esi,DWORD PTR 8[esp] - xor ebp,edx - xor esi,DWORD PTR 32[esp] - and ebp,ebx - xor esi,DWORD PTR 52[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR [esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 4[esp] - add esi,ebp - ; 40_59 49 - mov ebp,ebx - xor edi,DWORD PTR 12[esp] - xor ebp,ecx - xor edi,DWORD PTR 36[esp] - and ebp,eax - xor edi,DWORD PTR 56[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 4[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 8[esp] - add edi,ebp - ; 40_59 50 - mov ebp,eax - xor edx,DWORD PTR 16[esp] - xor ebp,ebx - xor edx,DWORD PTR 40[esp] - and ebp,esi - xor edx,DWORD PTR 60[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 8[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 12[esp] - add edx,ebp - ; 40_59 51 - mov ebp,esi - xor ecx,DWORD PTR 20[esp] - xor ebp,eax - xor ecx,DWORD PTR 44[esp] - and ebp,edi - xor ecx,DWORD PTR [esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 12[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 16[esp] - add ecx,ebp - ; 40_59 52 - mov ebp,edi - xor ebx,DWORD PTR 24[esp] - xor ebp,esi - xor ebx,DWORD PTR 48[esp] - and ebp,edx - xor ebx,DWORD PTR 4[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 16[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 20[esp] - add ebx,ebp - ; 40_59 53 - mov ebp,edx - xor eax,DWORD PTR 28[esp] - xor ebp,edi - xor eax,DWORD PTR 52[esp] - and ebp,ecx - xor eax,DWORD PTR 8[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 20[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 24[esp] - add eax,ebp - ; 40_59 54 - mov ebp,ecx - xor esi,DWORD PTR 32[esp] - xor ebp,edx - xor esi,DWORD PTR 56[esp] - and ebp,ebx - xor esi,DWORD PTR 12[esp] - rol esi,1 - add ebp,edi - ror ebx,2 - mov edi,eax - rol edi,5 - mov DWORD PTR 24[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 28[esp] - add esi,ebp - ; 40_59 55 - mov ebp,ebx - xor edi,DWORD PTR 36[esp] - xor ebp,ecx - xor edi,DWORD PTR 60[esp] - and ebp,eax - xor edi,DWORD PTR 16[esp] - rol edi,1 - add ebp,edx - ror eax,2 - mov edx,esi - rol edx,5 - mov DWORD PTR 28[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 32[esp] - add edi,ebp - ; 40_59 56 - mov ebp,eax - xor edx,DWORD PTR 40[esp] - xor ebp,ebx - xor edx,DWORD PTR [esp] - and ebp,esi - xor edx,DWORD PTR 20[esp] - rol edx,1 - add ebp,ecx - ror esi,2 - mov ecx,edi - rol ecx,5 - mov DWORD PTR 32[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 36[esp] - add edx,ebp - ; 40_59 57 - mov ebp,esi - xor ecx,DWORD PTR 44[esp] - xor ebp,eax - xor ecx,DWORD PTR 4[esp] - and ebp,edi - xor ecx,DWORD PTR 24[esp] - rol ecx,1 - add ebp,ebx - ror edi,2 - mov ebx,edx - rol ebx,5 - mov DWORD PTR 36[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 40[esp] - add ecx,ebp - ; 40_59 58 - mov ebp,edi - xor ebx,DWORD PTR 48[esp] - xor ebp,esi - xor ebx,DWORD PTR 8[esp] - and ebp,edx - xor ebx,DWORD PTR 28[esp] - rol ebx,1 - add ebp,eax - ror edx,2 - mov eax,ecx - rol eax,5 - mov DWORD PTR 40[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 44[esp] - add ebx,ebp - ; 40_59 59 - mov ebp,edx - xor eax,DWORD PTR 52[esp] - xor ebp,edi - xor eax,DWORD PTR 12[esp] - and ebp,ecx - xor eax,DWORD PTR 32[esp] - rol eax,1 - add ebp,esi - ror ecx,2 - mov esi,ebx - rol esi,5 - mov DWORD PTR 44[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 48[esp] - add eax,ebp - ; 20_39 60 - mov ebp,ebx - xor esi,DWORD PTR 56[esp] - xor ebp,ecx - xor esi,DWORD PTR 16[esp] - xor ebp,edx - xor esi,DWORD PTR 36[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 48[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 52[esp] - add esi,ebp - ; 20_39 61 - mov ebp,eax - xor edi,DWORD PTR 60[esp] - xor ebp,ebx - xor edi,DWORD PTR 20[esp] - xor ebp,ecx - xor edi,DWORD PTR 40[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 52[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 56[esp] - add edi,ebp - ; 20_39 62 - mov ebp,esi - xor edx,DWORD PTR [esp] - xor ebp,eax - xor edx,DWORD PTR 24[esp] - xor ebp,ebx - xor edx,DWORD PTR 44[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 56[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 60[esp] - add edx,ebp - ; 20_39 63 - mov ebp,edi - xor ecx,DWORD PTR 4[esp] - xor ebp,esi - xor ecx,DWORD PTR 28[esp] - xor ebp,eax - xor ecx,DWORD PTR 48[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 60[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR [esp] - add ecx,ebp - ; 20_39 64 - mov ebp,edx - xor ebx,DWORD PTR 8[esp] - xor ebp,edi - xor ebx,DWORD PTR 32[esp] - xor ebp,esi - xor ebx,DWORD PTR 52[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR [esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 4[esp] - add ebx,ebp - ; 20_39 65 - mov ebp,ecx - xor eax,DWORD PTR 12[esp] - xor ebp,edx - xor eax,DWORD PTR 36[esp] - xor ebp,edi - xor eax,DWORD PTR 56[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 4[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 8[esp] - add eax,ebp - ; 20_39 66 - mov ebp,ebx - xor esi,DWORD PTR 16[esp] - xor ebp,ecx - xor esi,DWORD PTR 40[esp] - xor ebp,edx - xor esi,DWORD PTR 60[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 8[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 12[esp] - add esi,ebp - ; 20_39 67 - mov ebp,eax - xor edi,DWORD PTR 20[esp] - xor ebp,ebx - xor edi,DWORD PTR 44[esp] - xor ebp,ecx - xor edi,DWORD PTR [esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 12[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 16[esp] - add edi,ebp - ; 20_39 68 - mov ebp,esi - xor edx,DWORD PTR 24[esp] - xor ebp,eax - xor edx,DWORD PTR 48[esp] - xor ebp,ebx - xor edx,DWORD PTR 4[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp - ; 20_39 69 - mov ebp,edi - xor ecx,DWORD PTR 28[esp] - xor ebp,esi - xor ecx,DWORD PTR 52[esp] - xor ebp,eax - xor ecx,DWORD PTR 8[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp - ; 20_39 70 - mov ebp,edx - xor ebx,DWORD PTR 32[esp] - xor ebp,edi - xor ebx,DWORD PTR 56[esp] - xor ebp,esi - xor ebx,DWORD PTR 12[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp - ; 20_39 71 - mov ebp,ecx - xor eax,DWORD PTR 36[esp] - xor ebp,edx - xor eax,DWORD PTR 60[esp] - xor ebp,edi - xor eax,DWORD PTR 16[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp - ; 20_39 72 - mov ebp,ebx - xor esi,DWORD PTR 40[esp] - xor ebp,ecx - xor esi,DWORD PTR [esp] - xor ebp,edx - xor esi,DWORD PTR 20[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp - ; 20_39 73 - mov ebp,eax - xor edi,DWORD PTR 44[esp] - xor ebp,ebx - xor edi,DWORD PTR 4[esp] - xor ebp,ecx - xor edi,DWORD PTR 24[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp - ; 20_39 74 - mov ebp,esi - xor edx,DWORD PTR 48[esp] - xor ebp,eax - xor edx,DWORD PTR 8[esp] - xor ebp,ebx - xor edx,DWORD PTR 28[esp] - rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 - mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp - ; 20_39 75 - mov ebp,edi - xor ecx,DWORD PTR 52[esp] - xor ebp,esi - xor ecx,DWORD PTR 12[esp] - xor ebp,eax - xor ecx,DWORD PTR 32[esp] - rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 - mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp - ; 20_39 76 - mov ebp,edx - xor ebx,DWORD PTR 56[esp] - xor ebp,edi - xor ebx,DWORD PTR 16[esp] - xor ebp,esi - xor ebx,DWORD PTR 36[esp] - rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 - mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp - ; 20_39 77 - mov ebp,ecx - xor eax,DWORD PTR 60[esp] - xor ebp,edx - xor eax,DWORD PTR 20[esp] - xor ebp,edi - xor eax,DWORD PTR 40[esp] - rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp - ; 20_39 78 - mov ebp,ebx - xor esi,DWORD PTR [esp] - xor ebp,ecx - xor esi,DWORD PTR 24[esp] - xor ebp,edx - xor esi,DWORD PTR 44[esp] - rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp - ; 20_39 79 - mov ebp,eax - xor edi,DWORD PTR 4[esp] - xor ebp,ebx - xor edi,DWORD PTR 28[esp] - xor ebp,ecx - xor edi,DWORD PTR 48[esp] - rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - lea edi,DWORD PTR 3395469782[edx*1+edi] - add edi,ebp - mov ebp,DWORD PTR 96[esp] - mov edx,DWORD PTR 100[esp] - add edi,DWORD PTR [ebp] - add esi,DWORD PTR 4[ebp] - add eax,DWORD PTR 8[ebp] - add ebx,DWORD PTR 12[ebp] - add ecx,DWORD PTR 16[ebp] - mov DWORD PTR [ebp],edi - add edx,64 - mov DWORD PTR 4[ebp],esi - cmp edx,DWORD PTR 104[esp] - mov DWORD PTR 8[ebp],eax - mov edi,ecx - mov DWORD PTR 12[ebp],ebx - mov esi,edx - mov DWORD PTR 16[ebp],ecx - jb $L002loop - add esp,76 - pop edi - pop esi - pop ebx - pop ebp - ret -_sha1_block_data_order ENDP -ALIGN 16 -__sha1_block_data_order_shaext PROC PRIVATE - push ebp - push ebx - push esi - push edi - call $L003pic_point -$L003pic_point: - pop ebp - lea ebp,DWORD PTR ($LK_XX_XX-$L003pic_point)[ebp] -$Lshaext_shortcut:: - mov edi,DWORD PTR 20[esp] - mov ebx,esp - mov esi,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - sub esp,32 - movdqu xmm0,XMMWORD PTR [edi] - movd xmm1,DWORD PTR 16[edi] - and esp,-32 - movdqa xmm3,XMMWORD PTR 80[ebp] - movdqu xmm4,XMMWORD PTR [esi] - pshufd xmm0,xmm0,27 - movdqu xmm5,XMMWORD PTR 16[esi] - pshufd xmm1,xmm1,27 - movdqu xmm6,XMMWORD PTR 32[esi] -DB 102,15,56,0,227 - movdqu xmm7,XMMWORD PTR 48[esi] -DB 102,15,56,0,235 -DB 102,15,56,0,243 -DB 102,15,56,0,251 - jmp $L004loop_shaext -ALIGN 16 -$L004loop_shaext: - dec ecx - lea eax,DWORD PTR 64[esi] - movdqa XMMWORD PTR [esp],xmm1 - paddd xmm1,xmm4 - cmovne esi,eax - movdqa XMMWORD PTR 16[esp],xmm0 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,0 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,0 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,1 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,1 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 -DB 15,56,201,229 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,213 - pxor xmm4,xmm6 -DB 15,56,201,238 -DB 15,56,202,231 - movdqa xmm1,xmm0 -DB 15,58,204,194,2 -DB 15,56,200,206 - pxor xmm5,xmm7 -DB 15,56,202,236 -DB 15,56,201,247 - movdqa xmm2,xmm0 -DB 15,58,204,193,2 -DB 15,56,200,215 - pxor xmm6,xmm4 -DB 15,56,201,252 -DB 15,56,202,245 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,204 - pxor xmm7,xmm5 -DB 15,56,202,254 - movdqu xmm4,XMMWORD PTR [esi] - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,213 - movdqu xmm5,XMMWORD PTR 16[esi] -DB 102,15,56,0,227 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 -DB 15,56,200,206 - movdqu xmm6,XMMWORD PTR 32[esi] -DB 102,15,56,0,235 - movdqa xmm2,xmm0 -DB 15,58,204,193,3 -DB 15,56,200,215 - movdqu xmm7,XMMWORD PTR 48[esi] -DB 102,15,56,0,243 - movdqa xmm1,xmm0 -DB 15,58,204,194,3 - movdqa xmm2,XMMWORD PTR [esp] -DB 102,15,56,0,251 -DB 15,56,200,202 - paddd xmm0,XMMWORD PTR 16[esp] - jnz $L004loop_shaext - pshufd xmm0,xmm0,27 - pshufd xmm1,xmm1,27 - movdqu XMMWORD PTR [edi],xmm0 - movd DWORD PTR 16[edi],xmm1 - mov esp,ebx - pop edi - pop esi - pop ebx - pop ebp - ret -__sha1_block_data_order_shaext ENDP -ALIGN 16 -__sha1_block_data_order_ssse3 PROC PRIVATE - push ebp - push ebx - push esi - push edi - call $L005pic_point -$L005pic_point: - pop ebp - lea ebp,DWORD PTR ($LK_XX_XX-$L005pic_point)[ebp] -$Lssse3_shortcut:: - movdqa xmm7,XMMWORD PTR [ebp] - movdqa xmm0,XMMWORD PTR 16[ebp] - movdqa xmm1,XMMWORD PTR 32[ebp] - movdqa xmm2,XMMWORD PTR 48[ebp] - movdqa xmm6,XMMWORD PTR 64[ebp] - mov edi,DWORD PTR 20[esp] - mov ebp,DWORD PTR 24[esp] - mov edx,DWORD PTR 28[esp] - mov esi,esp - sub esp,208 - and esp,-64 - movdqa XMMWORD PTR 112[esp],xmm0 - movdqa XMMWORD PTR 128[esp],xmm1 - movdqa XMMWORD PTR 144[esp],xmm2 - shl edx,6 - movdqa XMMWORD PTR 160[esp],xmm7 - add edx,ebp - movdqa XMMWORD PTR 176[esp],xmm6 - add ebp,64 - mov DWORD PTR 192[esp],edi - mov DWORD PTR 196[esp],ebp - mov DWORD PTR 200[esp],edx - mov DWORD PTR 204[esp],esi - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - mov edi,DWORD PTR 16[edi] - mov esi,ebx - movdqu xmm0,XMMWORD PTR [ebp-64] - movdqu xmm1,XMMWORD PTR [ebp-48] - movdqu xmm2,XMMWORD PTR [ebp-32] - movdqu xmm3,XMMWORD PTR [ebp-16] -DB 102,15,56,0,198 -DB 102,15,56,0,206 -DB 102,15,56,0,214 - movdqa XMMWORD PTR 96[esp],xmm7 -DB 102,15,56,0,222 - paddd xmm0,xmm7 - paddd xmm1,xmm7 - paddd xmm2,xmm7 - movdqa XMMWORD PTR [esp],xmm0 - psubd xmm0,xmm7 - movdqa XMMWORD PTR 16[esp],xmm1 - psubd xmm1,xmm7 - movdqa XMMWORD PTR 32[esp],xmm2 - mov ebp,ecx - psubd xmm2,xmm7 - xor ebp,edx - pshufd xmm4,xmm0,238 - and esi,ebp - jmp $L006loop -ALIGN 16 -$L006loop: - ror ebx,2 - xor esi,edx - mov ebp,eax - punpcklqdq xmm4,xmm1 - movdqa xmm6,xmm3 - add edi,DWORD PTR [esp] - xor ebx,ecx - paddd xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm0 - rol eax,5 - add edi,esi - psrldq xmm6,4 - and ebp,ebx - xor ebx,ecx - pxor xmm4,xmm0 - add edi,eax - ror eax,7 - pxor xmm6,xmm2 - xor ebp,ecx - mov esi,edi - add edx,DWORD PTR 4[esp] - pxor xmm4,xmm6 - xor eax,ebx - rol edi,5 - movdqa XMMWORD PTR 48[esp],xmm7 - add edx,ebp - and esi,eax - movdqa xmm0,xmm4 - xor eax,ebx - add edx,edi - ror edi,7 - movdqa xmm6,xmm4 - xor esi,ebx - pslldq xmm0,12 - paddd xmm4,xmm4 - mov ebp,edx - add ecx,DWORD PTR 8[esp] - psrld xmm6,31 - xor edi,eax - rol edx,5 - movdqa xmm7,xmm0 - add ecx,esi - and ebp,edi - xor edi,eax - psrld xmm0,30 - add ecx,edx - ror edx,7 - por xmm4,xmm6 - xor ebp,eax - mov esi,ecx - add ebx,DWORD PTR 12[esp] - pslld xmm7,2 - xor edx,edi - rol ecx,5 - pxor xmm4,xmm0 - movdqa xmm0,XMMWORD PTR 96[esp] - add ebx,ebp - and esi,edx - pxor xmm4,xmm7 - pshufd xmm5,xmm1,238 - xor edx,edi - add ebx,ecx - ror ecx,7 - xor esi,edi - mov ebp,ebx - punpcklqdq xmm5,xmm2 - movdqa xmm7,xmm4 - add eax,DWORD PTR 16[esp] - xor ecx,edx - paddd xmm0,xmm4 - movdqa XMMWORD PTR 80[esp],xmm1 - rol ebx,5 - add eax,esi - psrldq xmm7,4 - and ebp,ecx - xor ecx,edx - pxor xmm5,xmm1 - add eax,ebx - ror ebx,7 - pxor xmm7,xmm3 - xor ebp,edx - mov esi,eax - add edi,DWORD PTR 20[esp] - pxor xmm5,xmm7 - xor ebx,ecx - rol eax,5 - movdqa XMMWORD PTR [esp],xmm0 - add edi,ebp - and esi,ebx - movdqa xmm1,xmm5 - xor ebx,ecx - add edi,eax - ror eax,7 - movdqa xmm7,xmm5 - xor esi,ecx - pslldq xmm1,12 - paddd xmm5,xmm5 - mov ebp,edi - add edx,DWORD PTR 24[esp] - psrld xmm7,31 - xor eax,ebx - rol edi,5 - movdqa xmm0,xmm1 - add edx,esi - and ebp,eax - xor eax,ebx - psrld xmm1,30 - add edx,edi - ror edi,7 - por xmm5,xmm7 - xor ebp,ebx - mov esi,edx - add ecx,DWORD PTR 28[esp] - pslld xmm0,2 - xor edi,eax - rol edx,5 - pxor xmm5,xmm1 - movdqa xmm1,XMMWORD PTR 112[esp] - add ecx,ebp - and esi,edi - pxor xmm5,xmm0 - pshufd xmm6,xmm2,238 - xor edi,eax - add ecx,edx - ror edx,7 - xor esi,eax - mov ebp,ecx - punpcklqdq xmm6,xmm3 - movdqa xmm0,xmm5 - add ebx,DWORD PTR 32[esp] - xor edx,edi - paddd xmm1,xmm5 - movdqa XMMWORD PTR 96[esp],xmm2 - rol ecx,5 - add ebx,esi - psrldq xmm0,4 - and ebp,edx - xor edx,edi - pxor xmm6,xmm2 - add ebx,ecx - ror ecx,7 - pxor xmm0,xmm4 - xor ebp,edi - mov esi,ebx - add eax,DWORD PTR 36[esp] - pxor xmm6,xmm0 - xor ecx,edx - rol ebx,5 - movdqa XMMWORD PTR 16[esp],xmm1 - add eax,ebp - and esi,ecx - movdqa xmm2,xmm6 - xor ecx,edx - add eax,ebx - ror ebx,7 - movdqa xmm0,xmm6 - xor esi,edx - pslldq xmm2,12 - paddd xmm6,xmm6 - mov ebp,eax - add edi,DWORD PTR 40[esp] - psrld xmm0,31 - xor ebx,ecx - rol eax,5 - movdqa xmm1,xmm2 - add edi,esi - and ebp,ebx - xor ebx,ecx - psrld xmm2,30 - add edi,eax - ror eax,7 - por xmm6,xmm0 - xor ebp,ecx - movdqa xmm0,XMMWORD PTR 64[esp] - mov esi,edi - add edx,DWORD PTR 44[esp] - pslld xmm1,2 - xor eax,ebx - rol edi,5 - pxor xmm6,xmm2 - movdqa xmm2,XMMWORD PTR 112[esp] - add edx,ebp - and esi,eax - pxor xmm6,xmm1 - pshufd xmm7,xmm3,238 - xor eax,ebx - add edx,edi - ror edi,7 - xor esi,ebx - mov ebp,edx - punpcklqdq xmm7,xmm4 - movdqa xmm1,xmm6 - add ecx,DWORD PTR 48[esp] - xor edi,eax - paddd xmm2,xmm6 - movdqa XMMWORD PTR 64[esp],xmm3 - rol edx,5 - add ecx,esi - psrldq xmm1,4 - and ebp,edi - xor edi,eax - pxor xmm7,xmm3 - add ecx,edx - ror edx,7 - pxor xmm1,xmm5 - xor ebp,eax - mov esi,ecx - add ebx,DWORD PTR 52[esp] - pxor xmm7,xmm1 - xor edx,edi - rol ecx,5 - movdqa XMMWORD PTR 32[esp],xmm2 - add ebx,ebp - and esi,edx - movdqa xmm3,xmm7 - xor edx,edi - add ebx,ecx - ror ecx,7 - movdqa xmm1,xmm7 - xor esi,edi - pslldq xmm3,12 - paddd xmm7,xmm7 - mov ebp,ebx - add eax,DWORD PTR 56[esp] - psrld xmm1,31 - xor ecx,edx - rol ebx,5 - movdqa xmm2,xmm3 - add eax,esi - and ebp,ecx - xor ecx,edx - psrld xmm3,30 - add eax,ebx - ror ebx,7 - por xmm7,xmm1 - xor ebp,edx - movdqa xmm1,XMMWORD PTR 80[esp] - mov esi,eax - add edi,DWORD PTR 60[esp] - pslld xmm2,2 - xor ebx,ecx - rol eax,5 - pxor xmm7,xmm3 - movdqa xmm3,XMMWORD PTR 112[esp] - add edi,ebp - and esi,ebx - pxor xmm7,xmm2 - pshufd xmm2,xmm6,238 - xor ebx,ecx - add edi,eax - ror eax,7 - pxor xmm0,xmm4 - punpcklqdq xmm2,xmm7 - xor esi,ecx - mov ebp,edi - add edx,DWORD PTR [esp] - pxor xmm0,xmm1 - movdqa XMMWORD PTR 80[esp],xmm4 - xor eax,ebx - rol edi,5 - movdqa xmm4,xmm3 - add edx,esi - paddd xmm3,xmm7 - and ebp,eax - pxor xmm0,xmm2 - xor eax,ebx - add edx,edi - ror edi,7 - xor ebp,ebx - movdqa xmm2,xmm0 - movdqa XMMWORD PTR 48[esp],xmm3 - mov esi,edx - add ecx,DWORD PTR 4[esp] - xor edi,eax - rol edx,5 - pslld xmm0,2 - add ecx,ebp - and esi,edi - psrld xmm2,30 - xor edi,eax - add ecx,edx - ror edx,7 - xor esi,eax - mov ebp,ecx - add ebx,DWORD PTR 8[esp] - xor edx,edi - rol ecx,5 - por xmm0,xmm2 - add ebx,esi - and ebp,edx - movdqa xmm2,XMMWORD PTR 96[esp] - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 12[esp] - xor ebp,edi - mov esi,ebx - pshufd xmm3,xmm7,238 - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 16[esp] - pxor xmm1,xmm5 - punpcklqdq xmm3,xmm0 - xor esi,ecx - mov ebp,eax - rol eax,5 - pxor xmm1,xmm2 - movdqa XMMWORD PTR 96[esp],xmm5 - add edi,esi - xor ebp,ecx - movdqa xmm5,xmm4 - ror ebx,7 - paddd xmm4,xmm0 - add edi,eax - pxor xmm1,xmm3 - add edx,DWORD PTR 20[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - movdqa xmm3,xmm1 - movdqa XMMWORD PTR [esp],xmm4 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - pslld xmm1,2 - add ecx,DWORD PTR 24[esp] - xor esi,eax - psrld xmm3,30 - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - por xmm1,xmm3 - add ebx,DWORD PTR 28[esp] - xor ebp,edi - movdqa xmm3,XMMWORD PTR 64[esp] - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - pshufd xmm4,xmm0,238 - add ebx,ecx - add eax,DWORD PTR 32[esp] - pxor xmm2,xmm6 - punpcklqdq xmm4,xmm1 - xor esi,edx - mov ebp,ebx - rol ebx,5 - pxor xmm2,xmm3 - movdqa XMMWORD PTR 64[esp],xmm6 - add eax,esi - xor ebp,edx - movdqa xmm6,XMMWORD PTR 128[esp] - ror ecx,7 - paddd xmm5,xmm1 - add eax,ebx - pxor xmm2,xmm4 - add edi,DWORD PTR 36[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - movdqa xmm4,xmm2 - movdqa XMMWORD PTR 16[esp],xmm5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - pslld xmm2,2 - add edx,DWORD PTR 40[esp] - xor esi,ebx - psrld xmm4,30 - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - por xmm2,xmm4 - add ecx,DWORD PTR 44[esp] - xor ebp,eax - movdqa xmm4,XMMWORD PTR 80[esp] - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - pshufd xmm5,xmm1,238 - add ecx,edx - add ebx,DWORD PTR 48[esp] - pxor xmm3,xmm7 - punpcklqdq xmm5,xmm2 - xor esi,edi - mov ebp,ecx - rol ecx,5 - pxor xmm3,xmm4 - movdqa XMMWORD PTR 80[esp],xmm7 - add ebx,esi - xor ebp,edi - movdqa xmm7,xmm6 - ror edx,7 - paddd xmm6,xmm2 - add ebx,ecx - pxor xmm3,xmm5 - add eax,DWORD PTR 52[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - movdqa xmm5,xmm3 - movdqa XMMWORD PTR 32[esp],xmm6 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - pslld xmm3,2 - add edi,DWORD PTR 56[esp] - xor esi,ecx - psrld xmm5,30 - mov ebp,eax - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - por xmm3,xmm5 - add edx,DWORD PTR 60[esp] - xor ebp,ebx - movdqa xmm5,XMMWORD PTR 96[esp] - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - pshufd xmm6,xmm2,238 - add edx,edi - add ecx,DWORD PTR [esp] - pxor xmm4,xmm0 - punpcklqdq xmm6,xmm3 - xor esi,eax - mov ebp,edx - rol edx,5 - pxor xmm4,xmm5 - movdqa XMMWORD PTR 96[esp],xmm0 - add ecx,esi - xor ebp,eax - movdqa xmm0,xmm7 - ror edi,7 - paddd xmm7,xmm3 - add ecx,edx - pxor xmm4,xmm6 - add ebx,DWORD PTR 4[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - movdqa xmm6,xmm4 - movdqa XMMWORD PTR 48[esp],xmm7 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - pslld xmm4,2 - add eax,DWORD PTR 8[esp] - xor esi,edx - psrld xmm6,30 - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - por xmm4,xmm6 - add edi,DWORD PTR 12[esp] - xor ebp,ecx - movdqa xmm6,XMMWORD PTR 64[esp] - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - pshufd xmm7,xmm3,238 - add edi,eax - add edx,DWORD PTR 16[esp] - pxor xmm5,xmm1 - punpcklqdq xmm7,xmm4 - xor esi,ebx - mov ebp,edi - rol edi,5 - pxor xmm5,xmm6 - movdqa XMMWORD PTR 64[esp],xmm1 - add edx,esi - xor ebp,ebx - movdqa xmm1,xmm0 - ror eax,7 - paddd xmm0,xmm4 - add edx,edi - pxor xmm5,xmm7 - add ecx,DWORD PTR 20[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - movdqa xmm7,xmm5 - movdqa XMMWORD PTR [esp],xmm0 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - pslld xmm5,2 - add ebx,DWORD PTR 24[esp] - xor esi,edi - psrld xmm7,30 - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - por xmm5,xmm7 - add eax,DWORD PTR 28[esp] - movdqa xmm7,XMMWORD PTR 80[esp] - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - pshufd xmm0,xmm4,238 - add eax,ebp - xor esi,ecx - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 32[esp] - pxor xmm6,xmm2 - punpcklqdq xmm0,xmm5 - and esi,ecx - xor ecx,edx - ror ebx,7 - pxor xmm6,xmm7 - movdqa XMMWORD PTR 80[esp],xmm2 - mov ebp,eax - xor esi,ecx - rol eax,5 - movdqa xmm2,xmm1 - add edi,esi - paddd xmm1,xmm5 - xor ebp,ebx - pxor xmm6,xmm0 - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 36[esp] - and ebp,ebx - movdqa xmm0,xmm6 - movdqa XMMWORD PTR 16[esp],xmm1 - xor ebx,ecx - ror eax,7 - mov esi,edi - xor ebp,ebx - rol edi,5 - pslld xmm6,2 - add edx,ebp - xor esi,eax - psrld xmm0,30 - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 40[esp] - and esi,eax - xor eax,ebx - ror edi,7 - por xmm6,xmm0 - mov ebp,edx - xor esi,eax - movdqa xmm0,XMMWORD PTR 96[esp] - rol edx,5 - add ecx,esi - xor ebp,edi - xor edi,eax - add ecx,edx - pshufd xmm1,xmm5,238 - add ebx,DWORD PTR 44[esp] - and ebp,edi - xor edi,eax - ror edx,7 - mov esi,ecx - xor ebp,edi - rol ecx,5 - add ebx,ebp - xor esi,edx - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 48[esp] - pxor xmm7,xmm3 - punpcklqdq xmm1,xmm6 - and esi,edx - xor edx,edi - ror ecx,7 - pxor xmm7,xmm0 - movdqa XMMWORD PTR 96[esp],xmm3 - mov ebp,ebx - xor esi,edx - rol ebx,5 - movdqa xmm3,XMMWORD PTR 144[esp] - add eax,esi - paddd xmm2,xmm6 - xor ebp,ecx - pxor xmm7,xmm1 - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 52[esp] - and ebp,ecx - movdqa xmm1,xmm7 - movdqa XMMWORD PTR 32[esp],xmm2 - xor ecx,edx - ror ebx,7 - mov esi,eax - xor ebp,ecx - rol eax,5 - pslld xmm7,2 - add edi,ebp - xor esi,ebx - psrld xmm1,30 - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 56[esp] - and esi,ebx - xor ebx,ecx - ror eax,7 - por xmm7,xmm1 - mov ebp,edi - xor esi,ebx - movdqa xmm1,XMMWORD PTR 64[esp] - rol edi,5 - add edx,esi - xor ebp,eax - xor eax,ebx - add edx,edi - pshufd xmm2,xmm6,238 - add ecx,DWORD PTR 60[esp] - and ebp,eax - xor eax,ebx - ror edi,7 - mov esi,edx - xor ebp,eax - rol edx,5 - add ecx,ebp - xor esi,edi - xor edi,eax - add ecx,edx - add ebx,DWORD PTR [esp] - pxor xmm0,xmm4 - punpcklqdq xmm2,xmm7 - and esi,edi - xor edi,eax - ror edx,7 - pxor xmm0,xmm1 - movdqa XMMWORD PTR 64[esp],xmm4 - mov ebp,ecx - xor esi,edi - rol ecx,5 - movdqa xmm4,xmm3 - add ebx,esi - paddd xmm3,xmm7 - xor ebp,edx - pxor xmm0,xmm2 - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 4[esp] - and ebp,edx - movdqa xmm2,xmm0 - movdqa XMMWORD PTR 48[esp],xmm3 - xor edx,edi - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - pslld xmm0,2 - add eax,ebp - xor esi,ecx - psrld xmm2,30 - xor ecx,edx - add eax,ebx - add edi,DWORD PTR 8[esp] - and esi,ecx - xor ecx,edx - ror ebx,7 - por xmm0,xmm2 - mov ebp,eax - xor esi,ecx - movdqa xmm2,XMMWORD PTR 80[esp] - rol eax,5 - add edi,esi - xor ebp,ebx - xor ebx,ecx - add edi,eax - pshufd xmm3,xmm7,238 - add edx,DWORD PTR 12[esp] - and ebp,ebx - xor ebx,ecx - ror eax,7 - mov esi,edi - xor ebp,ebx - rol edi,5 - add edx,ebp - xor esi,eax - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 16[esp] - pxor xmm1,xmm5 - punpcklqdq xmm3,xmm0 - and esi,eax - xor eax,ebx - ror edi,7 - pxor xmm1,xmm2 - movdqa XMMWORD PTR 80[esp],xmm5 - mov ebp,edx - xor esi,eax - rol edx,5 - movdqa xmm5,xmm4 - add ecx,esi - paddd xmm4,xmm0 - xor ebp,edi - pxor xmm1,xmm3 - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 20[esp] - and ebp,edi - movdqa xmm3,xmm1 - movdqa XMMWORD PTR [esp],xmm4 - xor edi,eax - ror edx,7 - mov esi,ecx - xor ebp,edi - rol ecx,5 - pslld xmm1,2 - add ebx,ebp - xor esi,edx - psrld xmm3,30 - xor edx,edi - add ebx,ecx - add eax,DWORD PTR 24[esp] - and esi,edx - xor edx,edi - ror ecx,7 - por xmm1,xmm3 - mov ebp,ebx - xor esi,edx - movdqa xmm3,XMMWORD PTR 96[esp] - rol ebx,5 - add eax,esi - xor ebp,ecx - xor ecx,edx - add eax,ebx - pshufd xmm4,xmm0,238 - add edi,DWORD PTR 28[esp] - and ebp,ecx - xor ecx,edx - ror ebx,7 - mov esi,eax - xor ebp,ecx - rol eax,5 - add edi,ebp - xor esi,ebx - xor ebx,ecx - add edi,eax - add edx,DWORD PTR 32[esp] - pxor xmm2,xmm6 - punpcklqdq xmm4,xmm1 - and esi,ebx - xor ebx,ecx - ror eax,7 - pxor xmm2,xmm3 - movdqa XMMWORD PTR 96[esp],xmm6 - mov ebp,edi - xor esi,ebx - rol edi,5 - movdqa xmm6,xmm5 - add edx,esi - paddd xmm5,xmm1 - xor ebp,eax - pxor xmm2,xmm4 - xor eax,ebx - add edx,edi - add ecx,DWORD PTR 36[esp] - and ebp,eax - movdqa xmm4,xmm2 - movdqa XMMWORD PTR 16[esp],xmm5 - xor eax,ebx - ror edi,7 - mov esi,edx - xor ebp,eax - rol edx,5 - pslld xmm2,2 - add ecx,ebp - xor esi,edi - psrld xmm4,30 - xor edi,eax - add ecx,edx - add ebx,DWORD PTR 40[esp] - and esi,edi - xor edi,eax - ror edx,7 - por xmm2,xmm4 - mov ebp,ecx - xor esi,edi - movdqa xmm4,XMMWORD PTR 64[esp] - rol ecx,5 - add ebx,esi - xor ebp,edx - xor edx,edi - add ebx,ecx - pshufd xmm5,xmm1,238 - add eax,DWORD PTR 44[esp] - and ebp,edx - xor edx,edi - ror ecx,7 - mov esi,ebx - xor ebp,edx - rol ebx,5 - add eax,ebp - xor esi,edx - add eax,ebx - add edi,DWORD PTR 48[esp] - pxor xmm3,xmm7 - punpcklqdq xmm5,xmm2 - xor esi,ecx - mov ebp,eax - rol eax,5 - pxor xmm3,xmm4 - movdqa XMMWORD PTR 64[esp],xmm7 - add edi,esi - xor ebp,ecx - movdqa xmm7,xmm6 - ror ebx,7 - paddd xmm6,xmm2 - add edi,eax - pxor xmm3,xmm5 - add edx,DWORD PTR 52[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - movdqa xmm5,xmm3 - movdqa XMMWORD PTR 32[esp],xmm6 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - pslld xmm3,2 - add ecx,DWORD PTR 56[esp] - xor esi,eax - psrld xmm5,30 - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - por xmm3,xmm5 - add ebx,DWORD PTR 60[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR [esp] - xor esi,edx - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - paddd xmm7,xmm3 - add eax,ebx - add edi,DWORD PTR 4[esp] - xor ebp,ecx - mov esi,eax - movdqa XMMWORD PTR 48[esp],xmm7 - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 8[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 12[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - mov ebp,DWORD PTR 196[esp] - cmp ebp,DWORD PTR 200[esp] - je $L007done - movdqa xmm7,XMMWORD PTR 160[esp] - movdqa xmm6,XMMWORD PTR 176[esp] - movdqu xmm0,XMMWORD PTR [ebp] - movdqu xmm1,XMMWORD PTR 16[ebp] - movdqu xmm2,XMMWORD PTR 32[ebp] - movdqu xmm3,XMMWORD PTR 48[ebp] - add ebp,64 -DB 102,15,56,0,198 - mov DWORD PTR 196[esp],ebp - movdqa XMMWORD PTR 96[esp],xmm7 - add ebx,DWORD PTR 16[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 -DB 102,15,56,0,206 - add ebx,ecx - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - paddd xmm0,xmm7 - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - movdqa XMMWORD PTR [esp],xmm0 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - psubd xmm0,xmm7 - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 -DB 102,15,56,0,214 - add ecx,edx - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - paddd xmm1,xmm7 - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - movdqa XMMWORD PTR 16[esp],xmm1 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - psubd xmm1,xmm7 - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 -DB 102,15,56,0,222 - add edx,edi - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - paddd xmm2,xmm7 - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - movdqa XMMWORD PTR 32[esp],xmm2 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - psubd xmm2,xmm7 - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - ror ecx,7 - add eax,ebx - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov DWORD PTR 8[ebp],ecx - mov ebx,ecx - mov DWORD PTR 12[ebp],edx - xor ebx,edx - mov DWORD PTR 16[ebp],edi - mov ebp,esi - pshufd xmm4,xmm0,238 - and esi,ebx - mov ebx,ebp - jmp $L006loop -ALIGN 16 -$L007done: - add ebx,DWORD PTR 16[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 20[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - xor esi,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 24[esp] - xor esi,ecx - mov ebp,eax - rol eax,5 - add edi,esi - xor ebp,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 28[esp] - xor ebp,ebx - mov esi,edi - rol edi,5 - add edx,ebp - xor esi,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 32[esp] - xor esi,eax - mov ebp,edx - rol edx,5 - add ecx,esi - xor ebp,eax - ror edi,7 - add ecx,edx - add ebx,DWORD PTR 36[esp] - xor ebp,edi - mov esi,ecx - rol ecx,5 - add ebx,ebp - xor esi,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 40[esp] - xor esi,edx - mov ebp,ebx - rol ebx,5 - add eax,esi - xor ebp,edx - ror ecx,7 - add eax,ebx - add edi,DWORD PTR 44[esp] - xor ebp,ecx - mov esi,eax - rol eax,5 - add edi,ebp - xor esi,ecx - ror ebx,7 - add edi,eax - add edx,DWORD PTR 48[esp] - xor esi,ebx - mov ebp,edi - rol edi,5 - add edx,esi - xor ebp,ebx - ror eax,7 - add edx,edi - add ecx,DWORD PTR 52[esp] - xor ebp,eax - mov esi,edx - rol edx,5 - add ecx,ebp - xor esi,eax - ror edi,7 - add ecx,edx - add ebx,DWORD PTR 56[esp] - xor esi,edi - mov ebp,ecx - rol ecx,5 - add ebx,esi - xor ebp,edi - ror edx,7 - add ebx,ecx - add eax,DWORD PTR 60[esp] - xor ebp,edx - mov esi,ebx - rol ebx,5 - add eax,ebp - ror ecx,7 - add eax,ebx - mov ebp,DWORD PTR 192[esp] - add eax,DWORD PTR [ebp] - mov esp,DWORD PTR 204[esp] - add esi,DWORD PTR 4[ebp] - add ecx,DWORD PTR 8[ebp] - mov DWORD PTR [ebp],eax - add edx,DWORD PTR 12[ebp] - mov DWORD PTR 4[ebp],esi - add edi,DWORD PTR 16[ebp] - mov DWORD PTR 8[ebp],ecx - mov DWORD PTR 12[ebp],edx - mov DWORD PTR 16[ebp],edi - pop edi - pop esi - pop ebx - pop ebp - ret -__sha1_block_data_order_ssse3 ENDP -ALIGN 64 -$LK_XX_XX:: -DD 1518500249,1518500249,1518500249,1518500249 -DD 1859775393,1859775393,1859775393,1859775393 -DD 2400959708,2400959708,2400959708,2400959708 -DD 3395469782,3395469782,3395469782,3395469782 -DD 66051,67438087,134810123,202182159 -DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 -DB 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 -DB 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 -DB 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha256-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha256-586.asm deleted file mode 100644 index b6af4ab0640332..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha256-586.asm +++ /dev/null @@ -1,4612 +0,0 @@ -TITLE sha512-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha256_block_data_order PROC PUBLIC -$L_sha256_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov ebx,esp - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001K256-$L000pic_point)[ebp] - sub esp,16 - and esp,-64 - shl eax,6 - add eax,edi - mov DWORD PTR [esp],esi - mov DWORD PTR 4[esp],edi - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [edx] - mov ebx,DWORD PTR 4[edx] - test ecx,1048576 - jnz $L002loop - mov edx,DWORD PTR 8[edx] - test ecx,16777216 - jz $L003no_xmm - and ecx,1073741824 - and ebx,268435968 - test edx,536870912 - jnz $L004shaext - or ecx,ebx - and ecx,1342177280 - cmp ecx,1342177280 - test ebx,512 - jnz $L005SSSE3 -$L003no_xmm: - sub eax,edi - cmp eax,256 - jae $L006unrolled - jmp $L002loop -ALIGN 16 -$L002loop: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - bswap eax - mov edx,DWORD PTR 12[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 16[edi] - mov ebx,DWORD PTR 20[edi] - mov ecx,DWORD PTR 24[edi] - bswap eax - mov edx,DWORD PTR 28[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 32[edi] - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - bswap eax - mov edx,DWORD PTR 44[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - mov eax,DWORD PTR 48[edi] - mov ebx,DWORD PTR 52[edi] - mov ecx,DWORD PTR 56[edi] - bswap eax - mov edx,DWORD PTR 60[edi] - bswap ebx - push eax - bswap ecx - push ebx - bswap edx - push ecx - push edx - add edi,64 - lea esp,DWORD PTR [esp-36] - mov DWORD PTR 104[esp],edi - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 8[esp],ebx - xor ebx,ecx - mov DWORD PTR 12[esp],ecx - mov DWORD PTR 16[esp],edi - mov DWORD PTR [esp],ebx - mov edx,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ecx - mov DWORD PTR 32[esp],edi -ALIGN 16 -$L00700_15: - mov ecx,edx - mov esi,DWORD PTR 24[esp] - ror ecx,14 - mov edi,DWORD PTR 28[esp] - xor ecx,edx - xor esi,edi - mov ebx,DWORD PTR 96[esp] - ror ecx,5 - and esi,edx - mov DWORD PTR 20[esp],edx - xor edx,ecx - add ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,6 - mov ecx,eax - add ebx,esi - ror ecx,9 - add ebx,edx - mov edi,DWORD PTR 8[esp] - xor ecx,eax - mov DWORD PTR 4[esp],eax - lea esp,DWORD PTR [esp-4] - ror ecx,11 - mov esi,DWORD PTR [ebp] - xor ecx,eax - mov edx,DWORD PTR 20[esp] - xor eax,edi - ror ecx,2 - add ebx,esi - mov DWORD PTR [esp],eax - add edx,ebx - and eax,DWORD PTR 4[esp] - add ebx,ecx - xor eax,edi - add ebp,4 - add eax,ebx - cmp esi,3248222580 - jne $L00700_15 - mov ecx,DWORD PTR 156[esp] - jmp $L00816_63 -ALIGN 16 -$L00816_63: - mov ebx,ecx - mov esi,DWORD PTR 104[esp] - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 160[esp] - shr edi,10 - add ebx,DWORD PTR 124[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 24[esp] - ror ecx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor ecx,edx - xor esi,edi - mov DWORD PTR 96[esp],ebx - ror ecx,5 - and esi,edx - mov DWORD PTR 20[esp],edx - xor edx,ecx - add ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,6 - mov ecx,eax - add ebx,esi - ror ecx,9 - add ebx,edx - mov edi,DWORD PTR 8[esp] - xor ecx,eax - mov DWORD PTR 4[esp],eax - lea esp,DWORD PTR [esp-4] - ror ecx,11 - mov esi,DWORD PTR [ebp] - xor ecx,eax - mov edx,DWORD PTR 20[esp] - xor eax,edi - ror ecx,2 - add ebx,esi - mov DWORD PTR [esp],eax - add edx,ebx - and eax,DWORD PTR 4[esp] - add ebx,ecx - xor eax,edi - mov ecx,DWORD PTR 156[esp] - add ebp,4 - add eax,ebx - cmp esi,3329325298 - jne $L00816_63 - mov esi,DWORD PTR 356[esp] - mov ebx,DWORD PTR 8[esp] - mov ecx,DWORD PTR 16[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov eax,DWORD PTR 24[esp] - mov ebx,DWORD PTR 28[esp] - mov ecx,DWORD PTR 32[esp] - mov edi,DWORD PTR 360[esp] - add edx,DWORD PTR 16[esi] - add eax,DWORD PTR 20[esi] - add ebx,DWORD PTR 24[esi] - add ecx,DWORD PTR 28[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],eax - mov DWORD PTR 24[esi],ebx - mov DWORD PTR 28[esi],ecx - lea esp,DWORD PTR 356[esp] - sub ebp,256 - cmp edi,DWORD PTR 8[esp] - jb $L002loop - mov esp,DWORD PTR 12[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001K256: -DD 1116352408,1899447441,3049323471,3921009573 -DD 961987163,1508970993,2453635748,2870763221 -DD 3624381080,310598401,607225278,1426881987 -DD 1925078388,2162078206,2614888103,3248222580 -DD 3835390401,4022224774,264347078,604807628 -DD 770255983,1249150122,1555081692,1996064986 -DD 2554220882,2821834349,2952996808,3210313671 -DD 3336571891,3584528711,113926993,338241895 -DD 666307205,773529912,1294757372,1396182291 -DD 1695183700,1986661051,2177026350,2456956037 -DD 2730485921,2820302411,3259730800,3345764771 -DD 3516065817,3600352804,4094571909,275423344 -DD 430227734,506948616,659060556,883997877 -DD 958139571,1322822218,1537002063,1747873779 -DD 1955562222,2024104815,2227730452,2361852424 -DD 2428436474,2756734187,3204031479,3329325298 -DD 66051,67438087,134810123,202182159 -DB 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -ALIGN 16 -$L006unrolled: - lea esp,DWORD PTR [esp-96] - mov eax,DWORD PTR [esi] - mov ebp,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov ebx,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebp - xor ebp,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],ebx - mov edx,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],ebx - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - jmp $L009grand_loop -ALIGN 16 -$L009grand_loop: - mov ebx,DWORD PTR [edi] - mov ecx,DWORD PTR 4[edi] - bswap ebx - mov esi,DWORD PTR 8[edi] - bswap ecx - mov DWORD PTR 32[esp],ebx - bswap esi - mov DWORD PTR 36[esp],ecx - mov DWORD PTR 40[esp],esi - mov ebx,DWORD PTR 12[edi] - mov ecx,DWORD PTR 16[edi] - bswap ebx - mov esi,DWORD PTR 20[edi] - bswap ecx - mov DWORD PTR 44[esp],ebx - bswap esi - mov DWORD PTR 48[esp],ecx - mov DWORD PTR 52[esp],esi - mov ebx,DWORD PTR 24[edi] - mov ecx,DWORD PTR 28[edi] - bswap ebx - mov esi,DWORD PTR 32[edi] - bswap ecx - mov DWORD PTR 56[esp],ebx - bswap esi - mov DWORD PTR 60[esp],ecx - mov DWORD PTR 64[esp],esi - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - bswap ebx - mov esi,DWORD PTR 44[edi] - bswap ecx - mov DWORD PTR 68[esp],ebx - bswap esi - mov DWORD PTR 72[esp],ecx - mov DWORD PTR 76[esp],esi - mov ebx,DWORD PTR 48[edi] - mov ecx,DWORD PTR 52[edi] - bswap ebx - mov esi,DWORD PTR 56[edi] - bswap ecx - mov DWORD PTR 80[esp],ebx - bswap esi - mov DWORD PTR 84[esp],ecx - mov DWORD PTR 88[esp],esi - mov ebx,DWORD PTR 60[edi] - add edi,64 - bswap ebx - mov DWORD PTR 100[esp],edi - mov DWORD PTR 92[esp],ebx - mov ecx,edx - mov esi,DWORD PTR 20[esp] - ror edx,14 - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov ebx,DWORD PTR 32[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1116352408[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov ebx,DWORD PTR 36[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1899447441[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 12[esp] - ror edx,14 - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov ebx,DWORD PTR 40[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3049323471[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov ebx,DWORD PTR 44[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3921009573[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 4[esp] - ror edx,14 - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov ebx,DWORD PTR 48[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 961987163[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR [esp] - ror edx,14 - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov ebx,DWORD PTR 52[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1508970993[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 28[esp] - ror edx,14 - mov edi,DWORD PTR [esp] - xor edx,ecx - mov ebx,DWORD PTR 56[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2453635748[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov ebx,DWORD PTR 60[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2870763221[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 20[esp] - ror edx,14 - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov ebx,DWORD PTR 64[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3624381080[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov ebx,DWORD PTR 68[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 310598401[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 12[esp] - ror edx,14 - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov ebx,DWORD PTR 72[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 607225278[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov ebx,DWORD PTR 76[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1426881987[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 4[esp] - ror edx,14 - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov ebx,DWORD PTR 80[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1925078388[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR [esp] - ror edx,14 - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov ebx,DWORD PTR 84[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2162078206[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov ecx,edx - mov esi,DWORD PTR 28[esp] - ror edx,14 - mov edi,DWORD PTR [esp] - xor edx,ecx - mov ebx,DWORD PTR 88[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2614888103[edx*1+ebx] - xor ecx,esi - xor ebp,edi - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov esi,edx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov ebx,DWORD PTR 92[esp] - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3248222580[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3835390401[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 4022224774[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 264347078[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 604807628[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 770255983[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1249150122[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1555081692[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1996064986[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2554220882[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2821834349[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2952996808[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3210313671[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3336571891[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3584528711[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 88[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 113926993[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 92[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 338241895[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 666307205[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 773529912[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1294757372[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1396182291[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1695183700[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1986661051[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2177026350[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2456956037[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2730485921[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2820302411[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3259730800[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3345764771[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3516065817[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3600352804[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 88[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 4094571909[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 92[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 275423344[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 36[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 88[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 32[esp] - shr edi,10 - add ebx,DWORD PTR 68[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 32[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 430227734[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 40[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 92[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 36[esp] - shr edi,10 - add ebx,DWORD PTR 72[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 36[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 506948616[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 44[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 32[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 40[esp] - shr edi,10 - add ebx,DWORD PTR 76[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 40[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 659060556[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 48[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 36[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 44[esp] - shr edi,10 - add ebx,DWORD PTR 80[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 44[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 883997877[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 52[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 40[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 48[esp] - shr edi,10 - add ebx,DWORD PTR 84[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 48[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 958139571[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 56[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 44[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 52[esp] - shr edi,10 - add ebx,DWORD PTR 88[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 52[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1322822218[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 60[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 48[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 56[esp] - shr edi,10 - add ebx,DWORD PTR 92[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - mov DWORD PTR 56[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1537002063[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 64[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 52[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 60[esp] - shr edi,10 - add ebx,DWORD PTR 32[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - mov DWORD PTR 60[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 1747873779[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 68[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 56[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 64[esp] - shr edi,10 - add ebx,DWORD PTR 36[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 20[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 24[esp] - xor edx,ecx - mov DWORD PTR 64[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 28[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 4[esp] - xor ecx,eax - mov DWORD PTR [esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 1955562222[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 72[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 12[esp] - add ebp,ecx - mov ecx,DWORD PTR 60[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 68[esp] - shr edi,10 - add ebx,DWORD PTR 40[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 16[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 20[esp] - xor edx,esi - mov DWORD PTR 68[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 12[esp],esi - xor edx,esi - add ebx,DWORD PTR 24[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR [esp] - xor esi,ebp - mov DWORD PTR 28[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2024104815[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 76[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,esi - mov esi,DWORD PTR 64[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 72[esp] - shr edi,10 - add ebx,DWORD PTR 44[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 12[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 16[esp] - xor edx,ecx - mov DWORD PTR 72[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 20[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 28[esp] - xor ecx,eax - mov DWORD PTR 24[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2227730452[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 80[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 4[esp] - add ebp,ecx - mov ecx,DWORD PTR 68[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 76[esp] - shr edi,10 - add ebx,DWORD PTR 48[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 8[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 12[esp] - xor edx,esi - mov DWORD PTR 76[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 4[esp],esi - xor edx,esi - add ebx,DWORD PTR 16[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 24[esp] - xor esi,ebp - mov DWORD PTR 20[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2361852424[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 84[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,esi - mov esi,DWORD PTR 72[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 80[esp] - shr edi,10 - add ebx,DWORD PTR 52[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 4[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 8[esp] - xor edx,ecx - mov DWORD PTR 80[esp],ebx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - add ebx,DWORD PTR 12[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 20[esp] - xor ecx,eax - mov DWORD PTR 16[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 2428436474[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 88[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 28[esp] - add ebp,ecx - mov ecx,DWORD PTR 76[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 84[esp] - shr edi,10 - add ebx,DWORD PTR 56[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR [esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 4[esp] - xor edx,esi - mov DWORD PTR 84[esp],ebx - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 28[esp],esi - xor edx,esi - add ebx,DWORD PTR 8[esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 16[esp] - xor esi,ebp - mov DWORD PTR 12[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 2756734187[edx*1+ebx] - xor esi,ecx - xor eax,edi - mov ecx,DWORD PTR 92[esp] - ror esi,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,esi - mov esi,DWORD PTR 80[esp] - mov ebx,ecx - ror ecx,11 - mov edi,esi - ror esi,2 - xor ecx,ebx - shr ebx,3 - ror ecx,7 - xor esi,edi - xor ebx,ecx - ror esi,17 - add ebx,DWORD PTR 88[esp] - shr edi,10 - add ebx,DWORD PTR 60[esp] - mov ecx,edx - xor edi,esi - mov esi,DWORD PTR 28[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR [esp] - xor edx,ecx - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - add ebx,DWORD PTR 4[esp] - xor edi,esi - ror edx,6 - mov ecx,eax - add ebx,edi - ror ecx,9 - mov esi,eax - mov edi,DWORD PTR 12[esp] - xor ecx,eax - mov DWORD PTR 8[esp],eax - xor eax,edi - ror ecx,11 - and ebp,eax - lea edx,DWORD PTR 3204031479[edx*1+ebx] - xor ecx,esi - xor ebp,edi - mov esi,DWORD PTR 32[esp] - ror ecx,2 - add ebp,edx - add edx,DWORD PTR 20[esp] - add ebp,ecx - mov ecx,DWORD PTR 84[esp] - mov ebx,esi - ror esi,11 - mov edi,ecx - ror ecx,2 - xor esi,ebx - shr ebx,3 - ror esi,7 - xor ecx,edi - xor ebx,esi - ror ecx,17 - add ebx,DWORD PTR 92[esp] - shr edi,10 - add ebx,DWORD PTR 64[esp] - mov esi,edx - xor edi,ecx - mov ecx,DWORD PTR 24[esp] - ror edx,14 - add ebx,edi - mov edi,DWORD PTR 28[esp] - xor edx,esi - xor ecx,edi - ror edx,5 - and ecx,esi - mov DWORD PTR 20[esp],esi - xor edx,esi - add ebx,DWORD PTR [esp] - xor edi,ecx - ror edx,6 - mov esi,ebp - add ebx,edi - ror esi,9 - mov ecx,ebp - mov edi,DWORD PTR 8[esp] - xor esi,ebp - mov DWORD PTR 4[esp],ebp - xor ebp,edi - ror esi,11 - and eax,ebp - lea edx,DWORD PTR 3329325298[edx*1+ebx] - xor esi,ecx - xor eax,edi - ror esi,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,esi - mov esi,DWORD PTR 96[esp] - xor ebp,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebp,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebp - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebp - xor ebp,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ebx,DWORD PTR 24[esp] - mov ecx,DWORD PTR 28[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ebx,DWORD PTR 24[esi] - add ecx,DWORD PTR 28[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 24[esi],ebx - mov DWORD PTR 28[esi],ecx - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ebx - mov DWORD PTR 28[esp],ecx - cmp edi,DWORD PTR 104[esp] - jb $L009grand_loop - mov esp,DWORD PTR 108[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L004shaext: - sub esp,32 - movdqu xmm1,XMMWORD PTR [esi] - lea ebp,DWORD PTR 128[ebp] - movdqu xmm2,XMMWORD PTR 16[esi] - movdqa xmm7,XMMWORD PTR 128[ebp] - pshufd xmm0,xmm1,27 - pshufd xmm1,xmm1,177 - pshufd xmm2,xmm2,27 -DB 102,15,58,15,202,8 - punpcklqdq xmm2,xmm0 - jmp $L010loop_shaext -ALIGN 16 -$L010loop_shaext: - movdqu xmm3,XMMWORD PTR [edi] - movdqu xmm4,XMMWORD PTR 16[edi] - movdqu xmm5,XMMWORD PTR 32[edi] -DB 102,15,56,0,223 - movdqu xmm6,XMMWORD PTR 48[edi] - movdqa XMMWORD PTR 16[esp],xmm2 - movdqa xmm0,XMMWORD PTR [ebp-128] - paddd xmm0,xmm3 -DB 102,15,56,0,231 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - nop - movdqa XMMWORD PTR [esp],xmm1 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-112] - paddd xmm0,xmm4 -DB 102,15,56,0,239 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - lea edi,DWORD PTR 64[edi] -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-96] - paddd xmm0,xmm5 -DB 102,15,56,0,247 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-80] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-64] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-48] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-32] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp-16] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR [ebp] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 16[ebp] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 - nop - paddd xmm6,xmm7 -DB 15,56,204,220 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 32[ebp] - paddd xmm0,xmm5 -DB 15,56,205,245 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm6 -DB 102,15,58,15,253,4 - nop - paddd xmm3,xmm7 -DB 15,56,204,229 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 48[ebp] - paddd xmm0,xmm6 -DB 15,56,205,222 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm3 -DB 102,15,58,15,254,4 - nop - paddd xmm4,xmm7 -DB 15,56,204,238 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 64[ebp] - paddd xmm0,xmm3 -DB 15,56,205,227 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm4 -DB 102,15,58,15,251,4 - nop - paddd xmm5,xmm7 -DB 15,56,204,243 -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 80[ebp] - paddd xmm0,xmm4 -DB 15,56,205,236 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - movdqa xmm7,xmm5 -DB 102,15,58,15,252,4 -DB 15,56,203,202 - paddd xmm6,xmm7 - movdqa xmm0,XMMWORD PTR 96[ebp] - paddd xmm0,xmm5 -DB 15,56,203,209 - pshufd xmm0,xmm0,14 -DB 15,56,205,245 - movdqa xmm7,XMMWORD PTR 128[ebp] -DB 15,56,203,202 - movdqa xmm0,XMMWORD PTR 112[ebp] - paddd xmm0,xmm6 - nop -DB 15,56,203,209 - pshufd xmm0,xmm0,14 - cmp eax,edi - nop -DB 15,56,203,202 - paddd xmm2,XMMWORD PTR 16[esp] - paddd xmm1,XMMWORD PTR [esp] - jnz $L010loop_shaext - pshufd xmm2,xmm2,177 - pshufd xmm7,xmm1,27 - pshufd xmm1,xmm1,177 - punpckhqdq xmm1,xmm2 -DB 102,15,58,15,215,8 - mov esp,DWORD PTR 44[esp] - movdqu XMMWORD PTR [esi],xmm1 - movdqu XMMWORD PTR 16[esi],xmm2 - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L005SSSE3: - lea esp,DWORD PTR [esp-96] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edi,DWORD PTR 12[esi] - mov DWORD PTR 4[esp],ebx - xor ebx,ecx - mov DWORD PTR 8[esp],ecx - mov DWORD PTR 12[esp],edi - mov edx,DWORD PTR 16[esi] - mov edi,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov esi,DWORD PTR 28[esi] - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 100[esp] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esp],esi - movdqa xmm7,XMMWORD PTR 256[ebp] - jmp $L011grand_ssse3 -ALIGN 16 -$L011grand_ssse3: - movdqu xmm0,XMMWORD PTR [edi] - movdqu xmm1,XMMWORD PTR 16[edi] - movdqu xmm2,XMMWORD PTR 32[edi] - movdqu xmm3,XMMWORD PTR 48[edi] - add edi,64 -DB 102,15,56,0,199 - mov DWORD PTR 100[esp],edi -DB 102,15,56,0,207 - movdqa xmm4,XMMWORD PTR [ebp] -DB 102,15,56,0,215 - movdqa xmm5,XMMWORD PTR 16[ebp] - paddd xmm4,xmm0 -DB 102,15,56,0,223 - movdqa xmm6,XMMWORD PTR 32[ebp] - paddd xmm5,xmm1 - movdqa xmm7,XMMWORD PTR 48[ebp] - movdqa XMMWORD PTR 32[esp],xmm4 - paddd xmm6,xmm2 - movdqa XMMWORD PTR 48[esp],xmm5 - paddd xmm7,xmm3 - movdqa XMMWORD PTR 64[esp],xmm6 - movdqa XMMWORD PTR 80[esp],xmm7 - jmp $L012ssse3_00_47 -ALIGN 16 -$L012ssse3_00_47: - add ebp,64 - mov ecx,edx - movdqa xmm4,xmm1 - ror edx,14 - mov esi,DWORD PTR 20[esp] - movdqa xmm7,xmm3 - xor edx,ecx - mov edi,DWORD PTR 24[esp] -DB 102,15,58,15,224,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,250,4 - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 4[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm0,xmm7 - mov DWORD PTR [esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm3,250 - xor ecx,esi - add edx,DWORD PTR 32[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 12[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 12[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - paddd xmm0,xmm4 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 36[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 8[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm0,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - pshufd xmm7,xmm0,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 40[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 4[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR [ebp] - and esi,ecx - mov DWORD PTR 4[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - paddd xmm0,xmm7 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - paddd xmm6,xmm0 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - movdqa XMMWORD PTR 32[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm2 - ror edx,14 - mov esi,DWORD PTR 4[esp] - movdqa xmm7,xmm0 - xor edx,ecx - mov edi,DWORD PTR 8[esp] -DB 102,15,58,15,225,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,251,4 - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 20[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm1,xmm7 - mov DWORD PTR 16[esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm0,250 - xor ecx,esi - add edx,DWORD PTR 48[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 28[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR [esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 28[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - paddd xmm1,xmm4 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 52[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 24[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm1,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - pshufd xmm7,xmm1,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 56[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 20[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 16[ebp] - and esi,ecx - mov DWORD PTR 20[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - paddd xmm1,xmm7 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - paddd xmm6,xmm1 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - movdqa XMMWORD PTR 48[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm3 - ror edx,14 - mov esi,DWORD PTR 20[esp] - movdqa xmm7,xmm1 - xor edx,ecx - mov edi,DWORD PTR 24[esp] -DB 102,15,58,15,226,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,248,4 - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 4[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm2,xmm7 - mov DWORD PTR [esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm1,250 - xor ecx,esi - add edx,DWORD PTR 64[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 12[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 12[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - paddd xmm2,xmm4 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 68[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 8[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm2,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - pshufd xmm7,xmm2,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 72[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 4[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 32[ebp] - and esi,ecx - mov DWORD PTR 4[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - paddd xmm2,xmm7 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - paddd xmm6,xmm2 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - movdqa XMMWORD PTR 64[esp],xmm6 - mov ecx,edx - movdqa xmm4,xmm0 - ror edx,14 - mov esi,DWORD PTR 4[esp] - movdqa xmm7,xmm2 - xor edx,ecx - mov edi,DWORD PTR 8[esp] -DB 102,15,58,15,227,4 - xor esi,edi - ror edx,5 - and esi,ecx -DB 102,15,58,15,249,4 - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - movdqa xmm5,xmm4 - ror edx,6 - mov ecx,eax - movdqa xmm6,xmm4 - add edx,edi - mov edi,DWORD PTR 20[esp] - psrld xmm4,3 - mov esi,eax - ror ecx,9 - paddd xmm3,xmm7 - mov DWORD PTR 16[esp],eax - xor ecx,eax - psrld xmm6,7 - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - pshufd xmm7,xmm2,250 - xor ecx,esi - add edx,DWORD PTR 80[esp] - pslld xmm5,14 - xor ebx,edi - ror ecx,2 - pxor xmm4,xmm6 - add ebx,edx - add edx,DWORD PTR 28[esp] - psrld xmm6,11 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm4,xmm5 - mov esi,DWORD PTR [esp] - xor edx,ecx - pslld xmm5,11 - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - pxor xmm4,xmm6 - and esi,ecx - mov DWORD PTR 28[esp],ecx - movdqa xmm6,xmm7 - xor edx,ecx - xor edi,esi - ror edx,6 - pxor xmm4,xmm5 - mov ecx,ebx - add edx,edi - psrld xmm7,10 - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - paddd xmm3,xmm4 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - psrlq xmm6,17 - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - pxor xmm7,xmm6 - and eax,ebx - xor ecx,esi - psrlq xmm6,2 - add edx,DWORD PTR 84[esp] - xor eax,edi - ror ecx,2 - pxor xmm7,xmm6 - add eax,edx - add edx,DWORD PTR 24[esp] - pshufd xmm7,xmm7,128 - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - psrldq xmm7,8 - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - paddd xmm3,xmm7 - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - pshufd xmm7,xmm3,80 - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - movdqa xmm6,xmm7 - ror ecx,11 - psrld xmm7,10 - and ebx,eax - psrlq xmm6,17 - xor ecx,esi - add edx,DWORD PTR 88[esp] - xor ebx,edi - ror ecx,2 - pxor xmm7,xmm6 - add ebx,edx - add edx,DWORD PTR 20[esp] - psrlq xmm6,2 - add ebx,ecx - mov ecx,edx - ror edx,14 - pxor xmm7,xmm6 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - pshufd xmm7,xmm7,8 - xor esi,edi - ror edx,5 - movdqa xmm6,XMMWORD PTR 48[ebp] - and esi,ecx - mov DWORD PTR 20[esp],ecx - pslldq xmm7,8 - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - paddd xmm3,xmm7 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - paddd xmm6,xmm3 - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - movdqa XMMWORD PTR 80[esp],xmm6 - cmp DWORD PTR 64[ebp],66051 - jne $L012ssse3_00_47 - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 32[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 36[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 40[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 44[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 48[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 52[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 56[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 60[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 20[esp] - xor edx,ecx - mov edi,DWORD PTR 24[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 16[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 4[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR [esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 28[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 64[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 12[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 16[esp] - xor edx,ecx - mov edi,DWORD PTR 20[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 12[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR [esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 28[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 24[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 68[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 8[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 12[esp] - xor edx,ecx - mov edi,DWORD PTR 16[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 8[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 28[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 24[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 20[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 72[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 4[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 8[esp] - xor edx,ecx - mov edi,DWORD PTR 12[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 4[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 24[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 20[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 16[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 76[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR [esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 4[esp] - xor edx,ecx - mov edi,DWORD PTR 8[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR [esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 20[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 16[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 12[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 80[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 28[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR [esp] - xor edx,ecx - mov edi,DWORD PTR 4[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 28[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 16[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 12[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR 8[esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 84[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 24[esp] - add eax,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 28[esp] - xor edx,ecx - mov edi,DWORD PTR [esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 24[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,eax - add edx,edi - mov edi,DWORD PTR 12[esp] - mov esi,eax - ror ecx,9 - mov DWORD PTR 8[esp],eax - xor ecx,eax - xor eax,edi - add edx,DWORD PTR 4[esp] - ror ecx,11 - and ebx,eax - xor ecx,esi - add edx,DWORD PTR 88[esp] - xor ebx,edi - ror ecx,2 - add ebx,edx - add edx,DWORD PTR 20[esp] - add ebx,ecx - mov ecx,edx - ror edx,14 - mov esi,DWORD PTR 24[esp] - xor edx,ecx - mov edi,DWORD PTR 28[esp] - xor esi,edi - ror edx,5 - and esi,ecx - mov DWORD PTR 20[esp],ecx - xor edx,ecx - xor edi,esi - ror edx,6 - mov ecx,ebx - add edx,edi - mov edi,DWORD PTR 8[esp] - mov esi,ebx - ror ecx,9 - mov DWORD PTR 4[esp],ebx - xor ecx,ebx - xor ebx,edi - add edx,DWORD PTR [esp] - ror ecx,11 - and eax,ebx - xor ecx,esi - add edx,DWORD PTR 92[esp] - xor eax,edi - ror ecx,2 - add eax,edx - add edx,DWORD PTR 16[esp] - add eax,ecx - mov esi,DWORD PTR 96[esp] - xor ebx,edi - mov ecx,DWORD PTR 12[esp] - add eax,DWORD PTR [esi] - add ebx,DWORD PTR 4[esi] - add edi,DWORD PTR 8[esi] - add ecx,DWORD PTR 12[esi] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - mov DWORD PTR 8[esi],edi - mov DWORD PTR 12[esi],ecx - mov DWORD PTR 4[esp],ebx - xor ebx,edi - mov DWORD PTR 8[esp],edi - mov DWORD PTR 12[esp],ecx - mov edi,DWORD PTR 20[esp] - mov ecx,DWORD PTR 24[esp] - add edx,DWORD PTR 16[esi] - add edi,DWORD PTR 20[esi] - add ecx,DWORD PTR 24[esi] - mov DWORD PTR 16[esi],edx - mov DWORD PTR 20[esi],edi - mov DWORD PTR 20[esp],edi - mov edi,DWORD PTR 28[esp] - mov DWORD PTR 24[esi],ecx - add edi,DWORD PTR 28[esi] - mov DWORD PTR 24[esp],ecx - mov DWORD PTR 28[esi],edi - mov DWORD PTR 28[esp],edi - mov edi,DWORD PTR 100[esp] - movdqa xmm7,XMMWORD PTR 64[ebp] - sub ebp,192 - cmp edi,DWORD PTR 104[esp] - jb $L011grand_ssse3 - mov esp,DWORD PTR 108[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -_sha256_block_data_order ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha512-586.asm b/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha512-586.asm deleted file mode 100644 index 9a57e5af84be78..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/sha/sha512-586.asm +++ /dev/null @@ -1,2849 +0,0 @@ -TITLE sha512-586.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_sha512_block_data_order PROC PUBLIC -$L_sha512_block_data_order_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov eax,DWORD PTR 28[esp] - mov ebx,esp - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001K512-$L000pic_point)[ebp] - sub esp,16 - and esp,-64 - shl eax,7 - add eax,edi - mov DWORD PTR [esp],esi - mov DWORD PTR 4[esp],edi - mov DWORD PTR 8[esp],eax - mov DWORD PTR 12[esp],ebx - lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [edx] - test ecx,67108864 - jz $L002loop_x86 - mov edx,DWORD PTR 4[edx] - movq mm0,QWORD PTR [esi] - and ecx,16777216 - movq mm1,QWORD PTR 8[esi] - and edx,512 - movq mm2,QWORD PTR 16[esi] - or ecx,edx - movq mm3,QWORD PTR 24[esi] - movq mm4,QWORD PTR 32[esi] - movq mm5,QWORD PTR 40[esi] - movq mm6,QWORD PTR 48[esi] - movq mm7,QWORD PTR 56[esi] - cmp ecx,16777728 - je $L003SSSE3 - sub esp,80 - jmp $L004loop_sse2 -ALIGN 16 -$L004loop_sse2: - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - pxor mm2,mm1 - movq QWORD PTR 56[esp],mm7 - movq mm3,mm0 - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - add edi,8 - mov edx,15 - bswap eax - bswap ebx - jmp $L00500_14_sse2 -ALIGN 16 -$L00500_14_sse2: - movd mm1,eax - mov eax,DWORD PTR [edi] - movd mm7,ebx - mov ebx,DWORD PTR 4[edi] - add edi,8 - bswap eax - bswap ebx - punpckldq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq mm0,mm3 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm3,mm2 - movq mm2,mm0 - add ebp,8 - paddq mm3,mm6 - movq mm6,QWORD PTR 48[esp] - dec edx - jnz $L00500_14_sse2 - movd mm1,eax - movd mm7,ebx - punpckldq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq mm0,mm3 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm3,mm2 - movq mm2,mm0 - add ebp,8 - paddq mm3,mm6 - pxor mm0,mm0 - mov edx,32 - jmp $L00616_79_sse2 -ALIGN 16 -$L00616_79_sse2: - movq mm5,QWORD PTR 88[esp] - movq mm1,mm7 - psrlq mm7,1 - movq mm6,mm5 - psrlq mm5,6 - psllq mm1,56 - paddq mm0,mm3 - movq mm3,mm7 - psrlq mm7,6 - pxor mm3,mm1 - psllq mm1,7 - pxor mm3,mm7 - psrlq mm7,1 - pxor mm3,mm1 - movq mm1,mm5 - psrlq mm5,13 - pxor mm7,mm3 - psllq mm6,3 - pxor mm1,mm5 - paddq mm7,QWORD PTR 200[esp] - pxor mm1,mm6 - psrlq mm5,42 - paddq mm7,QWORD PTR 128[esp] - pxor mm1,mm5 - psllq mm6,42 - movq mm5,QWORD PTR 40[esp] - pxor mm1,mm6 - movq mm6,QWORD PTR 48[esp] - paddq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm2,mm6 - add ebp,8 - movq mm5,QWORD PTR 88[esp] - movq mm1,mm7 - psrlq mm7,1 - movq mm6,mm5 - psrlq mm5,6 - psllq mm1,56 - paddq mm2,mm3 - movq mm3,mm7 - psrlq mm7,6 - pxor mm3,mm1 - psllq mm1,7 - pxor mm3,mm7 - psrlq mm7,1 - pxor mm3,mm1 - movq mm1,mm5 - psrlq mm5,13 - pxor mm7,mm3 - psllq mm6,3 - pxor mm1,mm5 - paddq mm7,QWORD PTR 200[esp] - pxor mm1,mm6 - psrlq mm5,42 - paddq mm7,QWORD PTR 128[esp] - pxor mm1,mm5 - psllq mm6,42 - movq mm5,QWORD PTR 40[esp] - pxor mm1,mm6 - movq mm6,QWORD PTR 48[esp] - paddq mm7,mm1 - movq mm1,mm4 - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - movq QWORD PTR 72[esp],mm7 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - paddq mm7,QWORD PTR [ebp] - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - sub esp,8 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm7,QWORD PTR 192[esp] - paddq mm0,mm6 - add ebp,8 - dec edx - jnz $L00616_79_sse2 - paddq mm0,mm3 - movq mm1,QWORD PTR 8[esp] - movq mm3,QWORD PTR 24[esp] - movq mm5,QWORD PTR 40[esp] - movq mm6,QWORD PTR 48[esp] - movq mm7,QWORD PTR 56[esp] - pxor mm2,mm1 - paddq mm0,QWORD PTR [esi] - paddq mm1,QWORD PTR 8[esi] - paddq mm2,QWORD PTR 16[esi] - paddq mm3,QWORD PTR 24[esi] - paddq mm4,QWORD PTR 32[esi] - paddq mm5,QWORD PTR 40[esi] - paddq mm6,QWORD PTR 48[esi] - paddq mm7,QWORD PTR 56[esi] - mov eax,640 - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - lea esp,DWORD PTR [eax*1+esp] - sub ebp,eax - cmp edi,DWORD PTR 88[esp] - jb $L004loop_sse2 - mov esp,DWORD PTR 92[esp] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 32 -$L003SSSE3: - lea edx,DWORD PTR [esp-64] - sub esp,256 - movdqa xmm1,XMMWORD PTR 640[ebp] - movdqu xmm0,XMMWORD PTR [edi] -DB 102,15,56,0,193 - movdqa xmm3,XMMWORD PTR [ebp] - movdqa xmm2,xmm1 - movdqu xmm1,XMMWORD PTR 16[edi] - paddq xmm3,xmm0 -DB 102,15,56,0,202 - movdqa XMMWORD PTR [edx-128],xmm3 - movdqa xmm4,XMMWORD PTR 16[ebp] - movdqa xmm3,xmm2 - movdqu xmm2,XMMWORD PTR 32[edi] - paddq xmm4,xmm1 -DB 102,15,56,0,211 - movdqa XMMWORD PTR [edx-112],xmm4 - movdqa xmm5,XMMWORD PTR 32[ebp] - movdqa xmm4,xmm3 - movdqu xmm3,XMMWORD PTR 48[edi] - paddq xmm5,xmm2 -DB 102,15,56,0,220 - movdqa XMMWORD PTR [edx-96],xmm5 - movdqa xmm6,XMMWORD PTR 48[ebp] - movdqa xmm5,xmm4 - movdqu xmm4,XMMWORD PTR 64[edi] - paddq xmm6,xmm3 -DB 102,15,56,0,229 - movdqa XMMWORD PTR [edx-80],xmm6 - movdqa xmm7,XMMWORD PTR 64[ebp] - movdqa xmm6,xmm5 - movdqu xmm5,XMMWORD PTR 80[edi] - paddq xmm7,xmm4 -DB 102,15,56,0,238 - movdqa XMMWORD PTR [edx-64],xmm7 - movdqa XMMWORD PTR [edx],xmm0 - movdqa xmm0,XMMWORD PTR 80[ebp] - movdqa xmm7,xmm6 - movdqu xmm6,XMMWORD PTR 96[edi] - paddq xmm0,xmm5 -DB 102,15,56,0,247 - movdqa XMMWORD PTR [edx-48],xmm0 - movdqa XMMWORD PTR 16[edx],xmm1 - movdqa xmm1,XMMWORD PTR 96[ebp] - movdqa xmm0,xmm7 - movdqu xmm7,XMMWORD PTR 112[edi] - paddq xmm1,xmm6 -DB 102,15,56,0,248 - movdqa XMMWORD PTR [edx-32],xmm1 - movdqa XMMWORD PTR 32[edx],xmm2 - movdqa xmm2,XMMWORD PTR 112[ebp] - movdqa xmm0,XMMWORD PTR [edx] - paddq xmm2,xmm7 - movdqa XMMWORD PTR [edx-16],xmm2 - nop -ALIGN 32 -$L007loop_ssse3: - movdqa xmm2,XMMWORD PTR 16[edx] - movdqa XMMWORD PTR 48[edx],xmm3 - lea ebp,DWORD PTR 128[ebp] - movq QWORD PTR 8[esp],mm1 - mov ebx,edi - movq QWORD PTR 16[esp],mm2 - lea edi,DWORD PTR 128[edi] - movq QWORD PTR 24[esp],mm3 - cmp edi,eax - movq QWORD PTR 40[esp],mm5 - cmovb ebx,edi - movq QWORD PTR 48[esp],mm6 - mov ecx,4 - pxor mm2,mm1 - movq QWORD PTR 56[esp],mm7 - pxor mm3,mm3 - jmp $L00800_47_ssse3 -ALIGN 32 -$L00800_47_ssse3: - movdqa xmm3,xmm5 - movdqa xmm1,xmm2 -DB 102,15,58,15,208,8 - movdqa XMMWORD PTR [edx],xmm4 -DB 102,15,58,15,220,8 - movdqa xmm4,xmm2 - psrlq xmm2,7 - paddq xmm0,xmm3 - movdqa xmm3,xmm4 - psrlq xmm4,1 - psllq xmm3,56 - pxor xmm2,xmm4 - psrlq xmm4,7 - pxor xmm2,xmm3 - psllq xmm3,7 - pxor xmm2,xmm4 - movdqa xmm4,xmm7 - pxor xmm2,xmm3 - movdqa xmm3,xmm7 - psrlq xmm4,6 - paddq xmm0,xmm2 - movdqa xmm2,xmm7 - psrlq xmm3,19 - psllq xmm2,3 - pxor xmm4,xmm3 - psrlq xmm3,42 - pxor xmm4,xmm2 - psllq xmm2,42 - pxor xmm4,xmm3 - movdqa xmm3,XMMWORD PTR 32[edx] - pxor xmm4,xmm2 - movdqa xmm2,XMMWORD PTR [ebp] - movq mm1,mm4 - paddq xmm0,xmm4 - movq mm7,QWORD PTR [edx-128] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - paddq xmm2,xmm0 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-120] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-128],xmm2 - movdqa xmm4,xmm6 - movdqa xmm2,xmm3 -DB 102,15,58,15,217,8 - movdqa XMMWORD PTR 16[edx],xmm5 -DB 102,15,58,15,229,8 - movdqa xmm5,xmm3 - psrlq xmm3,7 - paddq xmm1,xmm4 - movdqa xmm4,xmm5 - psrlq xmm5,1 - psllq xmm4,56 - pxor xmm3,xmm5 - psrlq xmm5,7 - pxor xmm3,xmm4 - psllq xmm4,7 - pxor xmm3,xmm5 - movdqa xmm5,xmm0 - pxor xmm3,xmm4 - movdqa xmm4,xmm0 - psrlq xmm5,6 - paddq xmm1,xmm3 - movdqa xmm3,xmm0 - psrlq xmm4,19 - psllq xmm3,3 - pxor xmm5,xmm4 - psrlq xmm4,42 - pxor xmm5,xmm3 - psllq xmm3,42 - pxor xmm5,xmm4 - movdqa xmm4,XMMWORD PTR 48[edx] - pxor xmm5,xmm3 - movdqa xmm3,XMMWORD PTR 16[ebp] - movq mm1,mm4 - paddq xmm1,xmm5 - movq mm7,QWORD PTR [edx-112] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - paddq xmm3,xmm1 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-104] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-112],xmm3 - movdqa xmm5,xmm7 - movdqa xmm3,xmm4 -DB 102,15,58,15,226,8 - movdqa XMMWORD PTR 32[edx],xmm6 -DB 102,15,58,15,238,8 - movdqa xmm6,xmm4 - psrlq xmm4,7 - paddq xmm2,xmm5 - movdqa xmm5,xmm6 - psrlq xmm6,1 - psllq xmm5,56 - pxor xmm4,xmm6 - psrlq xmm6,7 - pxor xmm4,xmm5 - psllq xmm5,7 - pxor xmm4,xmm6 - movdqa xmm6,xmm1 - pxor xmm4,xmm5 - movdqa xmm5,xmm1 - psrlq xmm6,6 - paddq xmm2,xmm4 - movdqa xmm4,xmm1 - psrlq xmm5,19 - psllq xmm4,3 - pxor xmm6,xmm5 - psrlq xmm5,42 - pxor xmm6,xmm4 - psllq xmm4,42 - pxor xmm6,xmm5 - movdqa xmm5,XMMWORD PTR [edx] - pxor xmm6,xmm4 - movdqa xmm4,XMMWORD PTR 32[ebp] - movq mm1,mm4 - paddq xmm2,xmm6 - movq mm7,QWORD PTR [edx-96] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - paddq xmm4,xmm2 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-88] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-96],xmm4 - movdqa xmm6,xmm0 - movdqa xmm4,xmm5 -DB 102,15,58,15,235,8 - movdqa XMMWORD PTR 48[edx],xmm7 -DB 102,15,58,15,247,8 - movdqa xmm7,xmm5 - psrlq xmm5,7 - paddq xmm3,xmm6 - movdqa xmm6,xmm7 - psrlq xmm7,1 - psllq xmm6,56 - pxor xmm5,xmm7 - psrlq xmm7,7 - pxor xmm5,xmm6 - psllq xmm6,7 - pxor xmm5,xmm7 - movdqa xmm7,xmm2 - pxor xmm5,xmm6 - movdqa xmm6,xmm2 - psrlq xmm7,6 - paddq xmm3,xmm5 - movdqa xmm5,xmm2 - psrlq xmm6,19 - psllq xmm5,3 - pxor xmm7,xmm6 - psrlq xmm6,42 - pxor xmm7,xmm5 - psllq xmm5,42 - pxor xmm7,xmm6 - movdqa xmm6,XMMWORD PTR 16[edx] - pxor xmm7,xmm5 - movdqa xmm5,XMMWORD PTR 48[ebp] - movq mm1,mm4 - paddq xmm3,xmm7 - movq mm7,QWORD PTR [edx-80] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - paddq xmm5,xmm3 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-72] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-80],xmm5 - movdqa xmm7,xmm1 - movdqa xmm5,xmm6 -DB 102,15,58,15,244,8 - movdqa XMMWORD PTR [edx],xmm0 -DB 102,15,58,15,248,8 - movdqa xmm0,xmm6 - psrlq xmm6,7 - paddq xmm4,xmm7 - movdqa xmm7,xmm0 - psrlq xmm0,1 - psllq xmm7,56 - pxor xmm6,xmm0 - psrlq xmm0,7 - pxor xmm6,xmm7 - psllq xmm7,7 - pxor xmm6,xmm0 - movdqa xmm0,xmm3 - pxor xmm6,xmm7 - movdqa xmm7,xmm3 - psrlq xmm0,6 - paddq xmm4,xmm6 - movdqa xmm6,xmm3 - psrlq xmm7,19 - psllq xmm6,3 - pxor xmm0,xmm7 - psrlq xmm7,42 - pxor xmm0,xmm6 - psllq xmm6,42 - pxor xmm0,xmm7 - movdqa xmm7,XMMWORD PTR 32[edx] - pxor xmm0,xmm6 - movdqa xmm6,XMMWORD PTR 64[ebp] - movq mm1,mm4 - paddq xmm4,xmm0 - movq mm7,QWORD PTR [edx-64] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - paddq xmm6,xmm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-56] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-64],xmm6 - movdqa xmm0,xmm2 - movdqa xmm6,xmm7 -DB 102,15,58,15,253,8 - movdqa XMMWORD PTR 16[edx],xmm1 -DB 102,15,58,15,193,8 - movdqa xmm1,xmm7 - psrlq xmm7,7 - paddq xmm5,xmm0 - movdqa xmm0,xmm1 - psrlq xmm1,1 - psllq xmm0,56 - pxor xmm7,xmm1 - psrlq xmm1,7 - pxor xmm7,xmm0 - psllq xmm0,7 - pxor xmm7,xmm1 - movdqa xmm1,xmm4 - pxor xmm7,xmm0 - movdqa xmm0,xmm4 - psrlq xmm1,6 - paddq xmm5,xmm7 - movdqa xmm7,xmm4 - psrlq xmm0,19 - psllq xmm7,3 - pxor xmm1,xmm0 - psrlq xmm0,42 - pxor xmm1,xmm7 - psllq xmm7,42 - pxor xmm1,xmm0 - movdqa xmm0,XMMWORD PTR 48[edx] - pxor xmm1,xmm7 - movdqa xmm7,XMMWORD PTR 80[ebp] - movq mm1,mm4 - paddq xmm5,xmm1 - movq mm7,QWORD PTR [edx-48] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - paddq xmm7,xmm5 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-40] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-48],xmm7 - movdqa xmm1,xmm3 - movdqa xmm7,xmm0 -DB 102,15,58,15,198,8 - movdqa XMMWORD PTR 32[edx],xmm2 -DB 102,15,58,15,202,8 - movdqa xmm2,xmm0 - psrlq xmm0,7 - paddq xmm6,xmm1 - movdqa xmm1,xmm2 - psrlq xmm2,1 - psllq xmm1,56 - pxor xmm0,xmm2 - psrlq xmm2,7 - pxor xmm0,xmm1 - psllq xmm1,7 - pxor xmm0,xmm2 - movdqa xmm2,xmm5 - pxor xmm0,xmm1 - movdqa xmm1,xmm5 - psrlq xmm2,6 - paddq xmm6,xmm0 - movdqa xmm0,xmm5 - psrlq xmm1,19 - psllq xmm0,3 - pxor xmm2,xmm1 - psrlq xmm1,42 - pxor xmm2,xmm0 - psllq xmm0,42 - pxor xmm2,xmm1 - movdqa xmm1,XMMWORD PTR [edx] - pxor xmm2,xmm0 - movdqa xmm0,XMMWORD PTR 96[ebp] - movq mm1,mm4 - paddq xmm6,xmm2 - movq mm7,QWORD PTR [edx-32] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - paddq xmm0,xmm6 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-24] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-32],xmm0 - movdqa xmm2,xmm4 - movdqa xmm0,xmm1 -DB 102,15,58,15,207,8 - movdqa XMMWORD PTR 48[edx],xmm3 -DB 102,15,58,15,211,8 - movdqa xmm3,xmm1 - psrlq xmm1,7 - paddq xmm7,xmm2 - movdqa xmm2,xmm3 - psrlq xmm3,1 - psllq xmm2,56 - pxor xmm1,xmm3 - psrlq xmm3,7 - pxor xmm1,xmm2 - psllq xmm2,7 - pxor xmm1,xmm3 - movdqa xmm3,xmm6 - pxor xmm1,xmm2 - movdqa xmm2,xmm6 - psrlq xmm3,6 - paddq xmm7,xmm1 - movdqa xmm1,xmm6 - psrlq xmm2,19 - psllq xmm1,3 - pxor xmm3,xmm2 - psrlq xmm2,42 - pxor xmm3,xmm1 - psllq xmm1,42 - pxor xmm3,xmm2 - movdqa xmm2,XMMWORD PTR 16[edx] - pxor xmm3,xmm1 - movdqa xmm1,XMMWORD PTR 112[ebp] - movq mm1,mm4 - paddq xmm7,xmm3 - movq mm7,QWORD PTR [edx-16] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - paddq xmm1,xmm7 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-8] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-16],xmm1 - lea ebp,DWORD PTR 128[ebp] - dec ecx - jnz $L00800_47_ssse3 - movdqa xmm1,XMMWORD PTR [ebp] - lea ebp,DWORD PTR [ebp-640] - movdqu xmm0,XMMWORD PTR [ebx] -DB 102,15,56,0,193 - movdqa xmm3,XMMWORD PTR [ebp] - movdqa xmm2,xmm1 - movdqu xmm1,XMMWORD PTR 16[ebx] - paddq xmm3,xmm0 -DB 102,15,56,0,202 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-128] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-120] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-128],xmm3 - movdqa xmm4,XMMWORD PTR 16[ebp] - movdqa xmm3,xmm2 - movdqu xmm2,XMMWORD PTR 32[ebx] - paddq xmm4,xmm1 -DB 102,15,56,0,211 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-112] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-104] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-112],xmm4 - movdqa xmm5,XMMWORD PTR 32[ebp] - movdqa xmm4,xmm3 - movdqu xmm3,XMMWORD PTR 48[ebx] - paddq xmm5,xmm2 -DB 102,15,56,0,220 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-96] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-88] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-96],xmm5 - movdqa xmm6,XMMWORD PTR 48[ebp] - movdqa xmm5,xmm4 - movdqu xmm4,XMMWORD PTR 64[ebx] - paddq xmm6,xmm3 -DB 102,15,56,0,229 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-80] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-72] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-80],xmm6 - movdqa xmm7,XMMWORD PTR 64[ebp] - movdqa xmm6,xmm5 - movdqu xmm5,XMMWORD PTR 80[ebx] - paddq xmm7,xmm4 -DB 102,15,56,0,238 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-64] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 32[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR [esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 56[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 24[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 8[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 32[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 40[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-56] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 24[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 56[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 48[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 16[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR [esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 24[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 32[esp] - movdqa XMMWORD PTR [edx-64],xmm7 - movdqa XMMWORD PTR [edx],xmm0 - movdqa xmm0,XMMWORD PTR 80[ebp] - movdqa xmm7,xmm6 - movdqu xmm6,XMMWORD PTR 96[ebx] - paddq xmm0,xmm5 -DB 102,15,56,0,247 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-48] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 16[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 48[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 40[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 8[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 56[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 16[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 24[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-40] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 8[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 40[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 32[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR [esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 48[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 8[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 16[esp] - movdqa XMMWORD PTR [edx-48],xmm0 - movdqa XMMWORD PTR 16[edx],xmm1 - movdqa xmm1,XMMWORD PTR 96[ebp] - movdqa xmm0,xmm7 - movdqu xmm7,XMMWORD PTR 112[ebx] - paddq xmm1,xmm6 -DB 102,15,56,0,248 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-32] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR [esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 32[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 24[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 56[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 40[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR [esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 8[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-24] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 56[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 24[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 16[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 48[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 32[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 56[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR [esp] - movdqa XMMWORD PTR [edx-32],xmm1 - movdqa XMMWORD PTR 32[edx],xmm2 - movdqa xmm2,XMMWORD PTR 112[ebp] - movdqa xmm0,XMMWORD PTR [edx] - paddq xmm2,xmm7 - movq mm1,mm4 - movq mm7,QWORD PTR [edx-16] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 48[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm0,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 16[esp],mm0 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR 8[esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 40[esp] - paddq mm3,mm7 - movq mm5,mm0 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm0 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 24[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm0,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm2,mm0 - psllq mm6,6 - pxor mm7,mm5 - pxor mm2,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 48[esp] - paddq mm2,mm6 - movq mm6,QWORD PTR 56[esp] - movq mm1,mm4 - movq mm7,QWORD PTR [edx-8] - pxor mm5,mm6 - psrlq mm1,14 - movq QWORD PTR 40[esp],mm4 - pand mm5,mm4 - psllq mm4,23 - paddq mm2,mm3 - movq mm3,mm1 - psrlq mm1,4 - pxor mm5,mm6 - pxor mm3,mm4 - psllq mm4,23 - pxor mm3,mm1 - movq QWORD PTR 8[esp],mm2 - paddq mm7,mm5 - pxor mm3,mm4 - psrlq mm1,23 - paddq mm7,QWORD PTR [esp] - pxor mm3,mm1 - psllq mm4,4 - pxor mm3,mm4 - movq mm4,QWORD PTR 32[esp] - paddq mm3,mm7 - movq mm5,mm2 - psrlq mm5,28 - paddq mm4,mm3 - movq mm6,mm2 - movq mm7,mm5 - psllq mm6,25 - movq mm1,QWORD PTR 16[esp] - psrlq mm5,6 - pxor mm7,mm6 - psllq mm6,5 - pxor mm7,mm5 - pxor mm2,mm1 - psrlq mm5,5 - pxor mm7,mm6 - pand mm0,mm2 - psllq mm6,6 - pxor mm7,mm5 - pxor mm0,mm1 - pxor mm6,mm7 - movq mm5,QWORD PTR 40[esp] - paddq mm0,mm6 - movq mm6,QWORD PTR 48[esp] - movdqa XMMWORD PTR [edx-16],xmm2 - movq mm1,QWORD PTR 8[esp] - paddq mm0,mm3 - movq mm3,QWORD PTR 24[esp] - movq mm7,QWORD PTR 56[esp] - pxor mm2,mm1 - paddq mm0,QWORD PTR [esi] - paddq mm1,QWORD PTR 8[esi] - paddq mm2,QWORD PTR 16[esi] - paddq mm3,QWORD PTR 24[esi] - paddq mm4,QWORD PTR 32[esi] - paddq mm5,QWORD PTR 40[esi] - paddq mm6,QWORD PTR 48[esi] - paddq mm7,QWORD PTR 56[esi] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - cmp edi,eax - jb $L007loop_ssse3 - mov esp,DWORD PTR 76[edx] - emms - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 16 -$L002loop_x86: - mov eax,DWORD PTR [edi] - mov ebx,DWORD PTR 4[edi] - mov ecx,DWORD PTR 8[edi] - mov edx,DWORD PTR 12[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 16[edi] - mov ebx,DWORD PTR 20[edi] - mov ecx,DWORD PTR 24[edi] - mov edx,DWORD PTR 28[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 32[edi] - mov ebx,DWORD PTR 36[edi] - mov ecx,DWORD PTR 40[edi] - mov edx,DWORD PTR 44[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 48[edi] - mov ebx,DWORD PTR 52[edi] - mov ecx,DWORD PTR 56[edi] - mov edx,DWORD PTR 60[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 64[edi] - mov ebx,DWORD PTR 68[edi] - mov ecx,DWORD PTR 72[edi] - mov edx,DWORD PTR 76[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 80[edi] - mov ebx,DWORD PTR 84[edi] - mov ecx,DWORD PTR 88[edi] - mov edx,DWORD PTR 92[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 96[edi] - mov ebx,DWORD PTR 100[edi] - mov ecx,DWORD PTR 104[edi] - mov edx,DWORD PTR 108[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - mov eax,DWORD PTR 112[edi] - mov ebx,DWORD PTR 116[edi] - mov ecx,DWORD PTR 120[edi] - mov edx,DWORD PTR 124[edi] - bswap eax - bswap ebx - bswap ecx - bswap edx - push eax - push ebx - push ecx - push edx - add edi,128 - sub esp,72 - mov DWORD PTR 204[esp],edi - lea edi,DWORD PTR 8[esp] - mov ecx,16 -DD 2784229001 -ALIGN 16 -$L00900_15_x86: - mov ecx,DWORD PTR 40[esp] - mov edx,DWORD PTR 44[esp] - mov esi,ecx - shr ecx,9 - mov edi,edx - shr edx,9 - mov ebx,ecx - shl esi,14 - mov eax,edx - shl edi,14 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor eax,ecx - shl esi,4 - xor ebx,edx - shl edi,4 - xor ebx,esi - shr ecx,4 - xor eax,edi - shr edx,4 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 48[esp] - mov edx,DWORD PTR 52[esp] - mov esi,DWORD PTR 56[esp] - mov edi,DWORD PTR 60[esp] - add eax,DWORD PTR 64[esp] - adc ebx,DWORD PTR 68[esp] - xor ecx,esi - xor edx,edi - and ecx,DWORD PTR 40[esp] - and edx,DWORD PTR 44[esp] - add eax,DWORD PTR 192[esp] - adc ebx,DWORD PTR 196[esp] - xor ecx,esi - xor edx,edi - mov esi,DWORD PTR [ebp] - mov edi,DWORD PTR 4[ebp] - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 32[esp] - mov edx,DWORD PTR 36[esp] - add eax,esi - adc ebx,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov esi,ecx - shr ecx,2 - mov edi,edx - shr edx,2 - mov ebx,ecx - shl esi,4 - mov eax,edx - shl edi,4 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor ebx,ecx - shl esi,21 - xor eax,edx - shl edi,21 - xor eax,esi - shr ecx,21 - xor ebx,edi - shr edx,21 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - or ecx,esi - or edx,edi - and ecx,DWORD PTR 24[esp] - and edx,DWORD PTR 28[esp] - and esi,DWORD PTR 8[esp] - and edi,DWORD PTR 12[esp] - or ecx,esi - or edx,edi - add eax,ecx - adc ebx,edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov dl,BYTE PTR [ebp] - sub esp,8 - lea ebp,DWORD PTR 8[ebp] - cmp dl,148 - jne $L00900_15_x86 -ALIGN 16 -$L01016_79_x86: - mov ecx,DWORD PTR 312[esp] - mov edx,DWORD PTR 316[esp] - mov esi,ecx - shr ecx,1 - mov edi,edx - shr edx,1 - mov eax,ecx - shl esi,24 - mov ebx,edx - shl edi,24 - xor ebx,esi - shr ecx,6 - xor eax,edi - shr edx,6 - xor eax,ecx - shl esi,7 - xor ebx,edx - shl edi,1 - xor ebx,esi - shr ecx,1 - xor eax,edi - shr edx,1 - xor eax,ecx - shl edi,6 - xor ebx,edx - xor eax,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov ecx,DWORD PTR 208[esp] - mov edx,DWORD PTR 212[esp] - mov esi,ecx - shr ecx,6 - mov edi,edx - shr edx,6 - mov eax,ecx - shl esi,3 - mov ebx,edx - shl edi,3 - xor eax,esi - shr ecx,13 - xor ebx,edi - shr edx,13 - xor eax,ecx - shl esi,10 - xor ebx,edx - shl edi,10 - xor ebx,esi - shr ecx,10 - xor eax,edi - shr edx,10 - xor ebx,ecx - shl edi,13 - xor eax,edx - xor eax,edi - mov ecx,DWORD PTR 320[esp] - mov edx,DWORD PTR 324[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - mov esi,DWORD PTR 248[esp] - mov edi,DWORD PTR 252[esp] - add eax,ecx - adc ebx,edx - add eax,esi - adc ebx,edi - mov DWORD PTR 192[esp],eax - mov DWORD PTR 196[esp],ebx - mov ecx,DWORD PTR 40[esp] - mov edx,DWORD PTR 44[esp] - mov esi,ecx - shr ecx,9 - mov edi,edx - shr edx,9 - mov ebx,ecx - shl esi,14 - mov eax,edx - shl edi,14 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor eax,ecx - shl esi,4 - xor ebx,edx - shl edi,4 - xor ebx,esi - shr ecx,4 - xor eax,edi - shr edx,4 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 48[esp] - mov edx,DWORD PTR 52[esp] - mov esi,DWORD PTR 56[esp] - mov edi,DWORD PTR 60[esp] - add eax,DWORD PTR 64[esp] - adc ebx,DWORD PTR 68[esp] - xor ecx,esi - xor edx,edi - and ecx,DWORD PTR 40[esp] - and edx,DWORD PTR 44[esp] - add eax,DWORD PTR 192[esp] - adc ebx,DWORD PTR 196[esp] - xor ecx,esi - xor edx,edi - mov esi,DWORD PTR [ebp] - mov edi,DWORD PTR 4[ebp] - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 32[esp] - mov edx,DWORD PTR 36[esp] - add eax,esi - adc ebx,edi - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - add eax,ecx - adc ebx,edx - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov DWORD PTR 32[esp],eax - mov DWORD PTR 36[esp],ebx - mov esi,ecx - shr ecx,2 - mov edi,edx - shr edx,2 - mov ebx,ecx - shl esi,4 - mov eax,edx - shl edi,4 - xor ebx,esi - shr ecx,5 - xor eax,edi - shr edx,5 - xor ebx,ecx - shl esi,21 - xor eax,edx - shl edi,21 - xor eax,esi - shr ecx,21 - xor ebx,edi - shr edx,21 - xor eax,ecx - shl esi,5 - xor ebx,edx - shl edi,5 - xor eax,esi - xor ebx,edi - mov ecx,DWORD PTR 8[esp] - mov edx,DWORD PTR 12[esp] - mov esi,DWORD PTR 16[esp] - mov edi,DWORD PTR 20[esp] - add eax,DWORD PTR [esp] - adc ebx,DWORD PTR 4[esp] - or ecx,esi - or edx,edi - and ecx,DWORD PTR 24[esp] - and edx,DWORD PTR 28[esp] - and esi,DWORD PTR 8[esp] - and edi,DWORD PTR 12[esp] - or ecx,esi - or edx,edi - add eax,ecx - adc ebx,edx - mov DWORD PTR [esp],eax - mov DWORD PTR 4[esp],ebx - mov dl,BYTE PTR [ebp] - sub esp,8 - lea ebp,DWORD PTR 8[ebp] - cmp dl,23 - jne $L01016_79_x86 - mov esi,DWORD PTR 840[esp] - mov edi,DWORD PTR 844[esp] - mov eax,DWORD PTR [esi] - mov ebx,DWORD PTR 4[esi] - mov ecx,DWORD PTR 8[esi] - mov edx,DWORD PTR 12[esi] - add eax,DWORD PTR 8[esp] - adc ebx,DWORD PTR 12[esp] - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],ebx - add ecx,DWORD PTR 16[esp] - adc edx,DWORD PTR 20[esp] - mov DWORD PTR 8[esi],ecx - mov DWORD PTR 12[esi],edx - mov eax,DWORD PTR 16[esi] - mov ebx,DWORD PTR 20[esi] - mov ecx,DWORD PTR 24[esi] - mov edx,DWORD PTR 28[esi] - add eax,DWORD PTR 24[esp] - adc ebx,DWORD PTR 28[esp] - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],ebx - add ecx,DWORD PTR 32[esp] - adc edx,DWORD PTR 36[esp] - mov DWORD PTR 24[esi],ecx - mov DWORD PTR 28[esi],edx - mov eax,DWORD PTR 32[esi] - mov ebx,DWORD PTR 36[esi] - mov ecx,DWORD PTR 40[esi] - mov edx,DWORD PTR 44[esi] - add eax,DWORD PTR 40[esp] - adc ebx,DWORD PTR 44[esp] - mov DWORD PTR 32[esi],eax - mov DWORD PTR 36[esi],ebx - add ecx,DWORD PTR 48[esp] - adc edx,DWORD PTR 52[esp] - mov DWORD PTR 40[esi],ecx - mov DWORD PTR 44[esi],edx - mov eax,DWORD PTR 48[esi] - mov ebx,DWORD PTR 52[esi] - mov ecx,DWORD PTR 56[esi] - mov edx,DWORD PTR 60[esi] - add eax,DWORD PTR 56[esp] - adc ebx,DWORD PTR 60[esp] - mov DWORD PTR 48[esi],eax - mov DWORD PTR 52[esi],ebx - add ecx,DWORD PTR 64[esp] - adc edx,DWORD PTR 68[esp] - mov DWORD PTR 56[esi],ecx - mov DWORD PTR 60[esi],edx - add esp,840 - sub ebp,640 - cmp edi,DWORD PTR 8[esp] - jb $L002loop_x86 - mov esp,DWORD PTR 12[esp] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001K512: -DD 3609767458,1116352408 -DD 602891725,1899447441 -DD 3964484399,3049323471 -DD 2173295548,3921009573 -DD 4081628472,961987163 -DD 3053834265,1508970993 -DD 2937671579,2453635748 -DD 3664609560,2870763221 -DD 2734883394,3624381080 -DD 1164996542,310598401 -DD 1323610764,607225278 -DD 3590304994,1426881987 -DD 4068182383,1925078388 -DD 991336113,2162078206 -DD 633803317,2614888103 -DD 3479774868,3248222580 -DD 2666613458,3835390401 -DD 944711139,4022224774 -DD 2341262773,264347078 -DD 2007800933,604807628 -DD 1495990901,770255983 -DD 1856431235,1249150122 -DD 3175218132,1555081692 -DD 2198950837,1996064986 -DD 3999719339,2554220882 -DD 766784016,2821834349 -DD 2566594879,2952996808 -DD 3203337956,3210313671 -DD 1034457026,3336571891 -DD 2466948901,3584528711 -DD 3758326383,113926993 -DD 168717936,338241895 -DD 1188179964,666307205 -DD 1546045734,773529912 -DD 1522805485,1294757372 -DD 2643833823,1396182291 -DD 2343527390,1695183700 -DD 1014477480,1986661051 -DD 1206759142,2177026350 -DD 344077627,2456956037 -DD 1290863460,2730485921 -DD 3158454273,2820302411 -DD 3505952657,3259730800 -DD 106217008,3345764771 -DD 3606008344,3516065817 -DD 1432725776,3600352804 -DD 1467031594,4094571909 -DD 851169720,275423344 -DD 3100823752,430227734 -DD 1363258195,506948616 -DD 3750685593,659060556 -DD 3785050280,883997877 -DD 3318307427,958139571 -DD 3812723403,1322822218 -DD 2003034995,1537002063 -DD 3602036899,1747873779 -DD 1575990012,1955562222 -DD 1125592928,2024104815 -DD 2716904306,2227730452 -DD 442776044,2361852424 -DD 593698344,2428436474 -DD 3733110249,2756734187 -DD 2999351573,3204031479 -DD 3815920427,3329325298 -DD 3928383900,3391569614 -DD 566280711,3515267271 -DD 3454069534,3940187606 -DD 4000239992,4118630271 -DD 1914138554,116418474 -DD 2731055270,174292421 -DD 3203993006,289380356 -DD 320620315,460393269 -DD 587496836,685471733 -DD 1086792851,852142971 -DD 365543100,1017036298 -DD 2618297676,1126000580 -DD 3409855158,1288033470 -DD 4234509866,1501505948 -DD 987167468,1607167915 -DD 1246189591,1816402316 -DD 67438087,66051 -DD 202182159,134810123 -_sha512_block_data_order ENDP -DB 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 -DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 -DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 -DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 -DB 62,0 -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/whrlpool/wp-mmx.asm b/deps/openssl/asm_obsolete/x86-win32-masm/whrlpool/wp-mmx.asm deleted file mode 100644 index 22a17d3510940c..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/whrlpool/wp-mmx.asm +++ /dev/null @@ -1,1124 +0,0 @@ -TITLE wp-mmx.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_whirlpool_block_mmx PROC PUBLIC -$L_whirlpool_block_mmx_begin:: - push ebp - push ebx - push esi - push edi - mov esi,DWORD PTR 20[esp] - mov edi,DWORD PTR 24[esp] - mov ebp,DWORD PTR 28[esp] - mov eax,esp - sub esp,148 - and esp,-64 - lea ebx,DWORD PTR 128[esp] - mov DWORD PTR [ebx],esi - mov DWORD PTR 4[ebx],edi - mov DWORD PTR 8[ebx],ebp - mov DWORD PTR 16[ebx],eax - call $L000pic_point -$L000pic_point: - pop ebp - lea ebp,DWORD PTR ($L001table-$L000pic_point)[ebp] - xor ecx,ecx - xor edx,edx - movq mm0,QWORD PTR [esi] - movq mm1,QWORD PTR 8[esi] - movq mm2,QWORD PTR 16[esi] - movq mm3,QWORD PTR 24[esi] - movq mm4,QWORD PTR 32[esi] - movq mm5,QWORD PTR 40[esi] - movq mm6,QWORD PTR 48[esi] - movq mm7,QWORD PTR 56[esi] -$L002outerloop: - movq QWORD PTR [esp],mm0 - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 32[esp],mm4 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - movq QWORD PTR 56[esp],mm7 - pxor mm0,QWORD PTR [edi] - pxor mm1,QWORD PTR 8[edi] - pxor mm2,QWORD PTR 16[edi] - pxor mm3,QWORD PTR 24[edi] - pxor mm4,QWORD PTR 32[edi] - pxor mm5,QWORD PTR 40[edi] - pxor mm6,QWORD PTR 48[edi] - pxor mm7,QWORD PTR 56[edi] - movq QWORD PTR 64[esp],mm0 - movq QWORD PTR 72[esp],mm1 - movq QWORD PTR 80[esp],mm2 - movq QWORD PTR 88[esp],mm3 - movq QWORD PTR 96[esp],mm4 - movq QWORD PTR 104[esp],mm5 - movq QWORD PTR 112[esp],mm6 - movq QWORD PTR 120[esp],mm7 - xor esi,esi - mov DWORD PTR 12[ebx],esi -ALIGN 16 -$L003round: - movq mm0,QWORD PTR 4096[esi*8+ebp] - mov eax,DWORD PTR [esp] - mov ebx,DWORD PTR 4[esp] - movzx ecx,al - movzx edx,ah - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR [esi*8+ebp] - movq mm1,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 8[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - movq mm2,QWORD PTR 6[esi*8+ebp] - movq mm3,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - movq mm4,QWORD PTR 4[esi*8+ebp] - movq mm5,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 12[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - movq mm6,QWORD PTR 2[esi*8+ebp] - movq mm7,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR [esi*8+ebp] - pxor mm2,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 16[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 6[esi*8+ebp] - pxor mm4,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 4[esi*8+ebp] - pxor mm6,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 20[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR 2[esi*8+ebp] - pxor mm0,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR [esi*8+ebp] - pxor mm3,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 24[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 6[esi*8+ebp] - pxor mm5,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 4[esi*8+ebp] - pxor mm7,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 28[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR 2[esi*8+ebp] - pxor mm1,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR [esi*8+ebp] - pxor mm4,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 32[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 6[esi*8+ebp] - pxor mm6,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 4[esi*8+ebp] - pxor mm0,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 36[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR 2[esi*8+ebp] - pxor mm2,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR [esi*8+ebp] - pxor mm5,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 40[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 6[esi*8+ebp] - pxor mm7,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 4[esi*8+ebp] - pxor mm1,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 44[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR 2[esi*8+ebp] - pxor mm3,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR [esi*8+ebp] - pxor mm6,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 48[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 6[esi*8+ebp] - pxor mm0,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 4[esi*8+ebp] - pxor mm2,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 52[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR 2[esi*8+ebp] - pxor mm4,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR [esi*8+ebp] - pxor mm7,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 56[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 6[esi*8+ebp] - pxor mm1,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 4[esi*8+ebp] - pxor mm3,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 60[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR 2[esi*8+ebp] - pxor mm5,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR [esi*8+ebp] - pxor mm0,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 64[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 6[esi*8+ebp] - pxor mm2,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 4[esi*8+ebp] - pxor mm4,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 68[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR 2[esi*8+ebp] - pxor mm6,QWORD PTR 1[edi*8+ebp] - movq QWORD PTR [esp],mm0 - movq QWORD PTR 8[esp],mm1 - movq QWORD PTR 16[esp],mm2 - movq QWORD PTR 24[esp],mm3 - movq QWORD PTR 32[esp],mm4 - movq QWORD PTR 40[esp],mm5 - movq QWORD PTR 48[esp],mm6 - movq QWORD PTR 56[esp],mm7 - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR [esi*8+ebp] - pxor mm1,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 72[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 6[esi*8+ebp] - pxor mm3,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 4[esi*8+ebp] - pxor mm5,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 76[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR 2[esi*8+ebp] - pxor mm7,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR [esi*8+ebp] - pxor mm2,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 80[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 6[esi*8+ebp] - pxor mm4,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 4[esi*8+ebp] - pxor mm6,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 84[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR 2[esi*8+ebp] - pxor mm0,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR [esi*8+ebp] - pxor mm3,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 88[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm4,QWORD PTR 6[esi*8+ebp] - pxor mm5,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 4[esi*8+ebp] - pxor mm7,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 92[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm0,QWORD PTR 2[esi*8+ebp] - pxor mm1,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR [esi*8+ebp] - pxor mm4,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 96[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm5,QWORD PTR 6[esi*8+ebp] - pxor mm6,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 4[esi*8+ebp] - pxor mm0,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 100[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm1,QWORD PTR 2[esi*8+ebp] - pxor mm2,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR [esi*8+ebp] - pxor mm5,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 104[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm6,QWORD PTR 6[esi*8+ebp] - pxor mm7,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 4[esi*8+ebp] - pxor mm1,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 108[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm2,QWORD PTR 2[esi*8+ebp] - pxor mm3,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR [esi*8+ebp] - pxor mm6,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 112[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm7,QWORD PTR 6[esi*8+ebp] - pxor mm0,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 4[esi*8+ebp] - pxor mm2,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 116[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm3,QWORD PTR 2[esi*8+ebp] - pxor mm4,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm6,QWORD PTR [esi*8+ebp] - pxor mm7,QWORD PTR 7[edi*8+ebp] - mov eax,DWORD PTR 120[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm0,QWORD PTR 6[esi*8+ebp] - pxor mm1,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm2,QWORD PTR 4[esi*8+ebp] - pxor mm3,QWORD PTR 3[edi*8+ebp] - mov ebx,DWORD PTR 124[esp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm4,QWORD PTR 2[esi*8+ebp] - pxor mm5,QWORD PTR 1[edi*8+ebp] - shr eax,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm7,QWORD PTR [esi*8+ebp] - pxor mm0,QWORD PTR 7[edi*8+ebp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm1,QWORD PTR 6[esi*8+ebp] - pxor mm2,QWORD PTR 5[edi*8+ebp] - shr ebx,16 - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,bl - lea edi,DWORD PTR [edx*1+edx] - movzx edx,bh - pxor mm3,QWORD PTR 4[esi*8+ebp] - pxor mm4,QWORD PTR 3[edi*8+ebp] - lea esi,DWORD PTR [ecx*1+ecx] - movzx ecx,al - lea edi,DWORD PTR [edx*1+edx] - movzx edx,ah - pxor mm5,QWORD PTR 2[esi*8+ebp] - pxor mm6,QWORD PTR 1[edi*8+ebp] - lea ebx,DWORD PTR 128[esp] - mov esi,DWORD PTR 12[ebx] - add esi,1 - cmp esi,10 - je $L004roundsdone - mov DWORD PTR 12[ebx],esi - movq QWORD PTR 64[esp],mm0 - movq QWORD PTR 72[esp],mm1 - movq QWORD PTR 80[esp],mm2 - movq QWORD PTR 88[esp],mm3 - movq QWORD PTR 96[esp],mm4 - movq QWORD PTR 104[esp],mm5 - movq QWORD PTR 112[esp],mm6 - movq QWORD PTR 120[esp],mm7 - jmp $L003round -ALIGN 16 -$L004roundsdone: - mov esi,DWORD PTR [ebx] - mov edi,DWORD PTR 4[ebx] - mov eax,DWORD PTR 8[ebx] - pxor mm0,QWORD PTR [edi] - pxor mm1,QWORD PTR 8[edi] - pxor mm2,QWORD PTR 16[edi] - pxor mm3,QWORD PTR 24[edi] - pxor mm4,QWORD PTR 32[edi] - pxor mm5,QWORD PTR 40[edi] - pxor mm6,QWORD PTR 48[edi] - pxor mm7,QWORD PTR 56[edi] - pxor mm0,QWORD PTR [esi] - pxor mm1,QWORD PTR 8[esi] - pxor mm2,QWORD PTR 16[esi] - pxor mm3,QWORD PTR 24[esi] - pxor mm4,QWORD PTR 32[esi] - pxor mm5,QWORD PTR 40[esi] - pxor mm6,QWORD PTR 48[esi] - pxor mm7,QWORD PTR 56[esi] - movq QWORD PTR [esi],mm0 - movq QWORD PTR 8[esi],mm1 - movq QWORD PTR 16[esi],mm2 - movq QWORD PTR 24[esi],mm3 - movq QWORD PTR 32[esi],mm4 - movq QWORD PTR 40[esi],mm5 - movq QWORD PTR 48[esi],mm6 - movq QWORD PTR 56[esi],mm7 - lea edi,DWORD PTR 64[edi] - sub eax,1 - jz $L005alldone - mov DWORD PTR 4[ebx],edi - mov DWORD PTR 8[ebx],eax - jmp $L002outerloop -$L005alldone: - emms - mov esp,DWORD PTR 16[ebx] - pop edi - pop esi - pop ebx - pop ebp - ret -ALIGN 64 -$L001table: -DB 24,24,96,24,192,120,48,216 -DB 24,24,96,24,192,120,48,216 -DB 35,35,140,35,5,175,70,38 -DB 35,35,140,35,5,175,70,38 -DB 198,198,63,198,126,249,145,184 -DB 198,198,63,198,126,249,145,184 -DB 232,232,135,232,19,111,205,251 -DB 232,232,135,232,19,111,205,251 -DB 135,135,38,135,76,161,19,203 -DB 135,135,38,135,76,161,19,203 -DB 184,184,218,184,169,98,109,17 -DB 184,184,218,184,169,98,109,17 -DB 1,1,4,1,8,5,2,9 -DB 1,1,4,1,8,5,2,9 -DB 79,79,33,79,66,110,158,13 -DB 79,79,33,79,66,110,158,13 -DB 54,54,216,54,173,238,108,155 -DB 54,54,216,54,173,238,108,155 -DB 166,166,162,166,89,4,81,255 -DB 166,166,162,166,89,4,81,255 -DB 210,210,111,210,222,189,185,12 -DB 210,210,111,210,222,189,185,12 -DB 245,245,243,245,251,6,247,14 -DB 245,245,243,245,251,6,247,14 -DB 121,121,249,121,239,128,242,150 -DB 121,121,249,121,239,128,242,150 -DB 111,111,161,111,95,206,222,48 -DB 111,111,161,111,95,206,222,48 -DB 145,145,126,145,252,239,63,109 -DB 145,145,126,145,252,239,63,109 -DB 82,82,85,82,170,7,164,248 -DB 82,82,85,82,170,7,164,248 -DB 96,96,157,96,39,253,192,71 -DB 96,96,157,96,39,253,192,71 -DB 188,188,202,188,137,118,101,53 -DB 188,188,202,188,137,118,101,53 -DB 155,155,86,155,172,205,43,55 -DB 155,155,86,155,172,205,43,55 -DB 142,142,2,142,4,140,1,138 -DB 142,142,2,142,4,140,1,138 -DB 163,163,182,163,113,21,91,210 -DB 163,163,182,163,113,21,91,210 -DB 12,12,48,12,96,60,24,108 -DB 12,12,48,12,96,60,24,108 -DB 123,123,241,123,255,138,246,132 -DB 123,123,241,123,255,138,246,132 -DB 53,53,212,53,181,225,106,128 -DB 53,53,212,53,181,225,106,128 -DB 29,29,116,29,232,105,58,245 -DB 29,29,116,29,232,105,58,245 -DB 224,224,167,224,83,71,221,179 -DB 224,224,167,224,83,71,221,179 -DB 215,215,123,215,246,172,179,33 -DB 215,215,123,215,246,172,179,33 -DB 194,194,47,194,94,237,153,156 -DB 194,194,47,194,94,237,153,156 -DB 46,46,184,46,109,150,92,67 -DB 46,46,184,46,109,150,92,67 -DB 75,75,49,75,98,122,150,41 -DB 75,75,49,75,98,122,150,41 -DB 254,254,223,254,163,33,225,93 -DB 254,254,223,254,163,33,225,93 -DB 87,87,65,87,130,22,174,213 -DB 87,87,65,87,130,22,174,213 -DB 21,21,84,21,168,65,42,189 -DB 21,21,84,21,168,65,42,189 -DB 119,119,193,119,159,182,238,232 -DB 119,119,193,119,159,182,238,232 -DB 55,55,220,55,165,235,110,146 -DB 55,55,220,55,165,235,110,146 -DB 229,229,179,229,123,86,215,158 -DB 229,229,179,229,123,86,215,158 -DB 159,159,70,159,140,217,35,19 -DB 159,159,70,159,140,217,35,19 -DB 240,240,231,240,211,23,253,35 -DB 240,240,231,240,211,23,253,35 -DB 74,74,53,74,106,127,148,32 -DB 74,74,53,74,106,127,148,32 -DB 218,218,79,218,158,149,169,68 -DB 218,218,79,218,158,149,169,68 -DB 88,88,125,88,250,37,176,162 -DB 88,88,125,88,250,37,176,162 -DB 201,201,3,201,6,202,143,207 -DB 201,201,3,201,6,202,143,207 -DB 41,41,164,41,85,141,82,124 -DB 41,41,164,41,85,141,82,124 -DB 10,10,40,10,80,34,20,90 -DB 10,10,40,10,80,34,20,90 -DB 177,177,254,177,225,79,127,80 -DB 177,177,254,177,225,79,127,80 -DB 160,160,186,160,105,26,93,201 -DB 160,160,186,160,105,26,93,201 -DB 107,107,177,107,127,218,214,20 -DB 107,107,177,107,127,218,214,20 -DB 133,133,46,133,92,171,23,217 -DB 133,133,46,133,92,171,23,217 -DB 189,189,206,189,129,115,103,60 -DB 189,189,206,189,129,115,103,60 -DB 93,93,105,93,210,52,186,143 -DB 93,93,105,93,210,52,186,143 -DB 16,16,64,16,128,80,32,144 -DB 16,16,64,16,128,80,32,144 -DB 244,244,247,244,243,3,245,7 -DB 244,244,247,244,243,3,245,7 -DB 203,203,11,203,22,192,139,221 -DB 203,203,11,203,22,192,139,221 -DB 62,62,248,62,237,198,124,211 -DB 62,62,248,62,237,198,124,211 -DB 5,5,20,5,40,17,10,45 -DB 5,5,20,5,40,17,10,45 -DB 103,103,129,103,31,230,206,120 -DB 103,103,129,103,31,230,206,120 -DB 228,228,183,228,115,83,213,151 -DB 228,228,183,228,115,83,213,151 -DB 39,39,156,39,37,187,78,2 -DB 39,39,156,39,37,187,78,2 -DB 65,65,25,65,50,88,130,115 -DB 65,65,25,65,50,88,130,115 -DB 139,139,22,139,44,157,11,167 -DB 139,139,22,139,44,157,11,167 -DB 167,167,166,167,81,1,83,246 -DB 167,167,166,167,81,1,83,246 -DB 125,125,233,125,207,148,250,178 -DB 125,125,233,125,207,148,250,178 -DB 149,149,110,149,220,251,55,73 -DB 149,149,110,149,220,251,55,73 -DB 216,216,71,216,142,159,173,86 -DB 216,216,71,216,142,159,173,86 -DB 251,251,203,251,139,48,235,112 -DB 251,251,203,251,139,48,235,112 -DB 238,238,159,238,35,113,193,205 -DB 238,238,159,238,35,113,193,205 -DB 124,124,237,124,199,145,248,187 -DB 124,124,237,124,199,145,248,187 -DB 102,102,133,102,23,227,204,113 -DB 102,102,133,102,23,227,204,113 -DB 221,221,83,221,166,142,167,123 -DB 221,221,83,221,166,142,167,123 -DB 23,23,92,23,184,75,46,175 -DB 23,23,92,23,184,75,46,175 -DB 71,71,1,71,2,70,142,69 -DB 71,71,1,71,2,70,142,69 -DB 158,158,66,158,132,220,33,26 -DB 158,158,66,158,132,220,33,26 -DB 202,202,15,202,30,197,137,212 -DB 202,202,15,202,30,197,137,212 -DB 45,45,180,45,117,153,90,88 -DB 45,45,180,45,117,153,90,88 -DB 191,191,198,191,145,121,99,46 -DB 191,191,198,191,145,121,99,46 -DB 7,7,28,7,56,27,14,63 -DB 7,7,28,7,56,27,14,63 -DB 173,173,142,173,1,35,71,172 -DB 173,173,142,173,1,35,71,172 -DB 90,90,117,90,234,47,180,176 -DB 90,90,117,90,234,47,180,176 -DB 131,131,54,131,108,181,27,239 -DB 131,131,54,131,108,181,27,239 -DB 51,51,204,51,133,255,102,182 -DB 51,51,204,51,133,255,102,182 -DB 99,99,145,99,63,242,198,92 -DB 99,99,145,99,63,242,198,92 -DB 2,2,8,2,16,10,4,18 -DB 2,2,8,2,16,10,4,18 -DB 170,170,146,170,57,56,73,147 -DB 170,170,146,170,57,56,73,147 -DB 113,113,217,113,175,168,226,222 -DB 113,113,217,113,175,168,226,222 -DB 200,200,7,200,14,207,141,198 -DB 200,200,7,200,14,207,141,198 -DB 25,25,100,25,200,125,50,209 -DB 25,25,100,25,200,125,50,209 -DB 73,73,57,73,114,112,146,59 -DB 73,73,57,73,114,112,146,59 -DB 217,217,67,217,134,154,175,95 -DB 217,217,67,217,134,154,175,95 -DB 242,242,239,242,195,29,249,49 -DB 242,242,239,242,195,29,249,49 -DB 227,227,171,227,75,72,219,168 -DB 227,227,171,227,75,72,219,168 -DB 91,91,113,91,226,42,182,185 -DB 91,91,113,91,226,42,182,185 -DB 136,136,26,136,52,146,13,188 -DB 136,136,26,136,52,146,13,188 -DB 154,154,82,154,164,200,41,62 -DB 154,154,82,154,164,200,41,62 -DB 38,38,152,38,45,190,76,11 -DB 38,38,152,38,45,190,76,11 -DB 50,50,200,50,141,250,100,191 -DB 50,50,200,50,141,250,100,191 -DB 176,176,250,176,233,74,125,89 -DB 176,176,250,176,233,74,125,89 -DB 233,233,131,233,27,106,207,242 -DB 233,233,131,233,27,106,207,242 -DB 15,15,60,15,120,51,30,119 -DB 15,15,60,15,120,51,30,119 -DB 213,213,115,213,230,166,183,51 -DB 213,213,115,213,230,166,183,51 -DB 128,128,58,128,116,186,29,244 -DB 128,128,58,128,116,186,29,244 -DB 190,190,194,190,153,124,97,39 -DB 190,190,194,190,153,124,97,39 -DB 205,205,19,205,38,222,135,235 -DB 205,205,19,205,38,222,135,235 -DB 52,52,208,52,189,228,104,137 -DB 52,52,208,52,189,228,104,137 -DB 72,72,61,72,122,117,144,50 -DB 72,72,61,72,122,117,144,50 -DB 255,255,219,255,171,36,227,84 -DB 255,255,219,255,171,36,227,84 -DB 122,122,245,122,247,143,244,141 -DB 122,122,245,122,247,143,244,141 -DB 144,144,122,144,244,234,61,100 -DB 144,144,122,144,244,234,61,100 -DB 95,95,97,95,194,62,190,157 -DB 95,95,97,95,194,62,190,157 -DB 32,32,128,32,29,160,64,61 -DB 32,32,128,32,29,160,64,61 -DB 104,104,189,104,103,213,208,15 -DB 104,104,189,104,103,213,208,15 -DB 26,26,104,26,208,114,52,202 -DB 26,26,104,26,208,114,52,202 -DB 174,174,130,174,25,44,65,183 -DB 174,174,130,174,25,44,65,183 -DB 180,180,234,180,201,94,117,125 -DB 180,180,234,180,201,94,117,125 -DB 84,84,77,84,154,25,168,206 -DB 84,84,77,84,154,25,168,206 -DB 147,147,118,147,236,229,59,127 -DB 147,147,118,147,236,229,59,127 -DB 34,34,136,34,13,170,68,47 -DB 34,34,136,34,13,170,68,47 -DB 100,100,141,100,7,233,200,99 -DB 100,100,141,100,7,233,200,99 -DB 241,241,227,241,219,18,255,42 -DB 241,241,227,241,219,18,255,42 -DB 115,115,209,115,191,162,230,204 -DB 115,115,209,115,191,162,230,204 -DB 18,18,72,18,144,90,36,130 -DB 18,18,72,18,144,90,36,130 -DB 64,64,29,64,58,93,128,122 -DB 64,64,29,64,58,93,128,122 -DB 8,8,32,8,64,40,16,72 -DB 8,8,32,8,64,40,16,72 -DB 195,195,43,195,86,232,155,149 -DB 195,195,43,195,86,232,155,149 -DB 236,236,151,236,51,123,197,223 -DB 236,236,151,236,51,123,197,223 -DB 219,219,75,219,150,144,171,77 -DB 219,219,75,219,150,144,171,77 -DB 161,161,190,161,97,31,95,192 -DB 161,161,190,161,97,31,95,192 -DB 141,141,14,141,28,131,7,145 -DB 141,141,14,141,28,131,7,145 -DB 61,61,244,61,245,201,122,200 -DB 61,61,244,61,245,201,122,200 -DB 151,151,102,151,204,241,51,91 -DB 151,151,102,151,204,241,51,91 -DB 0,0,0,0,0,0,0,0 -DB 0,0,0,0,0,0,0,0 -DB 207,207,27,207,54,212,131,249 -DB 207,207,27,207,54,212,131,249 -DB 43,43,172,43,69,135,86,110 -DB 43,43,172,43,69,135,86,110 -DB 118,118,197,118,151,179,236,225 -DB 118,118,197,118,151,179,236,225 -DB 130,130,50,130,100,176,25,230 -DB 130,130,50,130,100,176,25,230 -DB 214,214,127,214,254,169,177,40 -DB 214,214,127,214,254,169,177,40 -DB 27,27,108,27,216,119,54,195 -DB 27,27,108,27,216,119,54,195 -DB 181,181,238,181,193,91,119,116 -DB 181,181,238,181,193,91,119,116 -DB 175,175,134,175,17,41,67,190 -DB 175,175,134,175,17,41,67,190 -DB 106,106,181,106,119,223,212,29 -DB 106,106,181,106,119,223,212,29 -DB 80,80,93,80,186,13,160,234 -DB 80,80,93,80,186,13,160,234 -DB 69,69,9,69,18,76,138,87 -DB 69,69,9,69,18,76,138,87 -DB 243,243,235,243,203,24,251,56 -DB 243,243,235,243,203,24,251,56 -DB 48,48,192,48,157,240,96,173 -DB 48,48,192,48,157,240,96,173 -DB 239,239,155,239,43,116,195,196 -DB 239,239,155,239,43,116,195,196 -DB 63,63,252,63,229,195,126,218 -DB 63,63,252,63,229,195,126,218 -DB 85,85,73,85,146,28,170,199 -DB 85,85,73,85,146,28,170,199 -DB 162,162,178,162,121,16,89,219 -DB 162,162,178,162,121,16,89,219 -DB 234,234,143,234,3,101,201,233 -DB 234,234,143,234,3,101,201,233 -DB 101,101,137,101,15,236,202,106 -DB 101,101,137,101,15,236,202,106 -DB 186,186,210,186,185,104,105,3 -DB 186,186,210,186,185,104,105,3 -DB 47,47,188,47,101,147,94,74 -DB 47,47,188,47,101,147,94,74 -DB 192,192,39,192,78,231,157,142 -DB 192,192,39,192,78,231,157,142 -DB 222,222,95,222,190,129,161,96 -DB 222,222,95,222,190,129,161,96 -DB 28,28,112,28,224,108,56,252 -DB 28,28,112,28,224,108,56,252 -DB 253,253,211,253,187,46,231,70 -DB 253,253,211,253,187,46,231,70 -DB 77,77,41,77,82,100,154,31 -DB 77,77,41,77,82,100,154,31 -DB 146,146,114,146,228,224,57,118 -DB 146,146,114,146,228,224,57,118 -DB 117,117,201,117,143,188,234,250 -DB 117,117,201,117,143,188,234,250 -DB 6,6,24,6,48,30,12,54 -DB 6,6,24,6,48,30,12,54 -DB 138,138,18,138,36,152,9,174 -DB 138,138,18,138,36,152,9,174 -DB 178,178,242,178,249,64,121,75 -DB 178,178,242,178,249,64,121,75 -DB 230,230,191,230,99,89,209,133 -DB 230,230,191,230,99,89,209,133 -DB 14,14,56,14,112,54,28,126 -DB 14,14,56,14,112,54,28,126 -DB 31,31,124,31,248,99,62,231 -DB 31,31,124,31,248,99,62,231 -DB 98,98,149,98,55,247,196,85 -DB 98,98,149,98,55,247,196,85 -DB 212,212,119,212,238,163,181,58 -DB 212,212,119,212,238,163,181,58 -DB 168,168,154,168,41,50,77,129 -DB 168,168,154,168,41,50,77,129 -DB 150,150,98,150,196,244,49,82 -DB 150,150,98,150,196,244,49,82 -DB 249,249,195,249,155,58,239,98 -DB 249,249,195,249,155,58,239,98 -DB 197,197,51,197,102,246,151,163 -DB 197,197,51,197,102,246,151,163 -DB 37,37,148,37,53,177,74,16 -DB 37,37,148,37,53,177,74,16 -DB 89,89,121,89,242,32,178,171 -DB 89,89,121,89,242,32,178,171 -DB 132,132,42,132,84,174,21,208 -DB 132,132,42,132,84,174,21,208 -DB 114,114,213,114,183,167,228,197 -DB 114,114,213,114,183,167,228,197 -DB 57,57,228,57,213,221,114,236 -DB 57,57,228,57,213,221,114,236 -DB 76,76,45,76,90,97,152,22 -DB 76,76,45,76,90,97,152,22 -DB 94,94,101,94,202,59,188,148 -DB 94,94,101,94,202,59,188,148 -DB 120,120,253,120,231,133,240,159 -DB 120,120,253,120,231,133,240,159 -DB 56,56,224,56,221,216,112,229 -DB 56,56,224,56,221,216,112,229 -DB 140,140,10,140,20,134,5,152 -DB 140,140,10,140,20,134,5,152 -DB 209,209,99,209,198,178,191,23 -DB 209,209,99,209,198,178,191,23 -DB 165,165,174,165,65,11,87,228 -DB 165,165,174,165,65,11,87,228 -DB 226,226,175,226,67,77,217,161 -DB 226,226,175,226,67,77,217,161 -DB 97,97,153,97,47,248,194,78 -DB 97,97,153,97,47,248,194,78 -DB 179,179,246,179,241,69,123,66 -DB 179,179,246,179,241,69,123,66 -DB 33,33,132,33,21,165,66,52 -DB 33,33,132,33,21,165,66,52 -DB 156,156,74,156,148,214,37,8 -DB 156,156,74,156,148,214,37,8 -DB 30,30,120,30,240,102,60,238 -DB 30,30,120,30,240,102,60,238 -DB 67,67,17,67,34,82,134,97 -DB 67,67,17,67,34,82,134,97 -DB 199,199,59,199,118,252,147,177 -DB 199,199,59,199,118,252,147,177 -DB 252,252,215,252,179,43,229,79 -DB 252,252,215,252,179,43,229,79 -DB 4,4,16,4,32,20,8,36 -DB 4,4,16,4,32,20,8,36 -DB 81,81,89,81,178,8,162,227 -DB 81,81,89,81,178,8,162,227 -DB 153,153,94,153,188,199,47,37 -DB 153,153,94,153,188,199,47,37 -DB 109,109,169,109,79,196,218,34 -DB 109,109,169,109,79,196,218,34 -DB 13,13,52,13,104,57,26,101 -DB 13,13,52,13,104,57,26,101 -DB 250,250,207,250,131,53,233,121 -DB 250,250,207,250,131,53,233,121 -DB 223,223,91,223,182,132,163,105 -DB 223,223,91,223,182,132,163,105 -DB 126,126,229,126,215,155,252,169 -DB 126,126,229,126,215,155,252,169 -DB 36,36,144,36,61,180,72,25 -DB 36,36,144,36,61,180,72,25 -DB 59,59,236,59,197,215,118,254 -DB 59,59,236,59,197,215,118,254 -DB 171,171,150,171,49,61,75,154 -DB 171,171,150,171,49,61,75,154 -DB 206,206,31,206,62,209,129,240 -DB 206,206,31,206,62,209,129,240 -DB 17,17,68,17,136,85,34,153 -DB 17,17,68,17,136,85,34,153 -DB 143,143,6,143,12,137,3,131 -DB 143,143,6,143,12,137,3,131 -DB 78,78,37,78,74,107,156,4 -DB 78,78,37,78,74,107,156,4 -DB 183,183,230,183,209,81,115,102 -DB 183,183,230,183,209,81,115,102 -DB 235,235,139,235,11,96,203,224 -DB 235,235,139,235,11,96,203,224 -DB 60,60,240,60,253,204,120,193 -DB 60,60,240,60,253,204,120,193 -DB 129,129,62,129,124,191,31,253 -DB 129,129,62,129,124,191,31,253 -DB 148,148,106,148,212,254,53,64 -DB 148,148,106,148,212,254,53,64 -DB 247,247,251,247,235,12,243,28 -DB 247,247,251,247,235,12,243,28 -DB 185,185,222,185,161,103,111,24 -DB 185,185,222,185,161,103,111,24 -DB 19,19,76,19,152,95,38,139 -DB 19,19,76,19,152,95,38,139 -DB 44,44,176,44,125,156,88,81 -DB 44,44,176,44,125,156,88,81 -DB 211,211,107,211,214,184,187,5 -DB 211,211,107,211,214,184,187,5 -DB 231,231,187,231,107,92,211,140 -DB 231,231,187,231,107,92,211,140 -DB 110,110,165,110,87,203,220,57 -DB 110,110,165,110,87,203,220,57 -DB 196,196,55,196,110,243,149,170 -DB 196,196,55,196,110,243,149,170 -DB 3,3,12,3,24,15,6,27 -DB 3,3,12,3,24,15,6,27 -DB 86,86,69,86,138,19,172,220 -DB 86,86,69,86,138,19,172,220 -DB 68,68,13,68,26,73,136,94 -DB 68,68,13,68,26,73,136,94 -DB 127,127,225,127,223,158,254,160 -DB 127,127,225,127,223,158,254,160 -DB 169,169,158,169,33,55,79,136 -DB 169,169,158,169,33,55,79,136 -DB 42,42,168,42,77,130,84,103 -DB 42,42,168,42,77,130,84,103 -DB 187,187,214,187,177,109,107,10 -DB 187,187,214,187,177,109,107,10 -DB 193,193,35,193,70,226,159,135 -DB 193,193,35,193,70,226,159,135 -DB 83,83,81,83,162,2,166,241 -DB 83,83,81,83,162,2,166,241 -DB 220,220,87,220,174,139,165,114 -DB 220,220,87,220,174,139,165,114 -DB 11,11,44,11,88,39,22,83 -DB 11,11,44,11,88,39,22,83 -DB 157,157,78,157,156,211,39,1 -DB 157,157,78,157,156,211,39,1 -DB 108,108,173,108,71,193,216,43 -DB 108,108,173,108,71,193,216,43 -DB 49,49,196,49,149,245,98,164 -DB 49,49,196,49,149,245,98,164 -DB 116,116,205,116,135,185,232,243 -DB 116,116,205,116,135,185,232,243 -DB 246,246,255,246,227,9,241,21 -DB 246,246,255,246,227,9,241,21 -DB 70,70,5,70,10,67,140,76 -DB 70,70,5,70,10,67,140,76 -DB 172,172,138,172,9,38,69,165 -DB 172,172,138,172,9,38,69,165 -DB 137,137,30,137,60,151,15,181 -DB 137,137,30,137,60,151,15,181 -DB 20,20,80,20,160,68,40,180 -DB 20,20,80,20,160,68,40,180 -DB 225,225,163,225,91,66,223,186 -DB 225,225,163,225,91,66,223,186 -DB 22,22,88,22,176,78,44,166 -DB 22,22,88,22,176,78,44,166 -DB 58,58,232,58,205,210,116,247 -DB 58,58,232,58,205,210,116,247 -DB 105,105,185,105,111,208,210,6 -DB 105,105,185,105,111,208,210,6 -DB 9,9,36,9,72,45,18,65 -DB 9,9,36,9,72,45,18,65 -DB 112,112,221,112,167,173,224,215 -DB 112,112,221,112,167,173,224,215 -DB 182,182,226,182,217,84,113,111 -DB 182,182,226,182,217,84,113,111 -DB 208,208,103,208,206,183,189,30 -DB 208,208,103,208,206,183,189,30 -DB 237,237,147,237,59,126,199,214 -DB 237,237,147,237,59,126,199,214 -DB 204,204,23,204,46,219,133,226 -DB 204,204,23,204,46,219,133,226 -DB 66,66,21,66,42,87,132,104 -DB 66,66,21,66,42,87,132,104 -DB 152,152,90,152,180,194,45,44 -DB 152,152,90,152,180,194,45,44 -DB 164,164,170,164,73,14,85,237 -DB 164,164,170,164,73,14,85,237 -DB 40,40,160,40,93,136,80,117 -DB 40,40,160,40,93,136,80,117 -DB 92,92,109,92,218,49,184,134 -DB 92,92,109,92,218,49,184,134 -DB 248,248,199,248,147,63,237,107 -DB 248,248,199,248,147,63,237,107 -DB 134,134,34,134,68,164,17,194 -DB 134,134,34,134,68,164,17,194 -DB 24,35,198,232,135,184,1,79 -DB 54,166,210,245,121,111,145,82 -DB 96,188,155,142,163,12,123,53 -DB 29,224,215,194,46,75,254,87 -DB 21,119,55,229,159,240,74,218 -DB 88,201,41,10,177,160,107,133 -DB 189,93,16,244,203,62,5,103 -DB 228,39,65,139,167,125,149,216 -DB 251,238,124,102,221,23,71,158 -DB 202,45,191,7,173,90,131,51 -_whirlpool_block_mmx ENDP -.text$ ENDS -END diff --git a/deps/openssl/asm_obsolete/x86-win32-masm/x86cpuid.asm b/deps/openssl/asm_obsolete/x86-win32-masm/x86cpuid.asm deleted file mode 100644 index d53b6a44d895a3..00000000000000 --- a/deps/openssl/asm_obsolete/x86-win32-masm/x86cpuid.asm +++ /dev/null @@ -1,365 +0,0 @@ -TITLE x86cpuid.asm -IF @Version LT 800 -ECHO MASM version 8.00 or later is strongly recommended. -ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - -.MODEL FLAT -OPTION DOTNAME -IF @Version LT 800 -.text$ SEGMENT PAGE 'CODE' -ELSE -.text$ SEGMENT ALIGN(64) 'CODE' -ENDIF -ALIGN 16 -_OPENSSL_ia32_cpuid PROC PUBLIC -$L_OPENSSL_ia32_cpuid_begin:: - push ebp - push ebx - push esi - push edi - xor edx,edx - pushfd - pop eax - mov ecx,eax - xor eax,2097152 - push eax - popfd - pushfd - pop eax - xor ecx,eax - xor eax,eax - mov esi,DWORD PTR 20[esp] - mov DWORD PTR 8[esi],eax - bt ecx,21 - jnc $L000nocpuid - cpuid - mov edi,eax - xor eax,eax - cmp ebx,1970169159 - setne al - mov ebp,eax - cmp edx,1231384169 - setne al - or ebp,eax - cmp ecx,1818588270 - setne al - or ebp,eax - jz $L001intel - cmp ebx,1752462657 - setne al - mov esi,eax - cmp edx,1769238117 - setne al - or esi,eax - cmp ecx,1145913699 - setne al - or esi,eax - jnz $L001intel - mov eax,2147483648 - cpuid - cmp eax,2147483649 - jb $L001intel - mov esi,eax - mov eax,2147483649 - cpuid - or ebp,ecx - and ebp,2049 - cmp esi,2147483656 - jb $L001intel - mov eax,2147483656 - cpuid - movzx esi,cl - inc esi - mov eax,1 - xor ecx,ecx - cpuid - bt edx,28 - jnc $L002generic - shr ebx,16 - and ebx,255 - cmp ebx,esi - ja $L002generic - and edx,4026531839 - jmp $L002generic -$L001intel: - cmp edi,4 - mov esi,-1 - jb $L003nocacheinfo - mov eax,4 - mov ecx,0 - cpuid - mov esi,eax - shr esi,14 - and esi,4095 -$L003nocacheinfo: - mov eax,1 - xor ecx,ecx - cpuid - and edx,3220176895 - cmp ebp,0 - jne $L004notintel - or edx,1073741824 - and ah,15 - cmp ah,15 - jne $L004notintel - or edx,1048576 -$L004notintel: - bt edx,28 - jnc $L002generic - and edx,4026531839 - cmp esi,0 - je $L002generic - or edx,268435456 - shr ebx,16 - cmp bl,1 - ja $L002generic - and edx,4026531839 -$L002generic: - and ebp,2048 - and ecx,4294965247 - mov esi,edx - or ebp,ecx - cmp edi,7 - mov edi,DWORD PTR 20[esp] - jb $L005no_extended_info - mov eax,7 - xor ecx,ecx - cpuid - mov DWORD PTR 8[edi],ebx -$L005no_extended_info: - bt ebp,27 - jnc $L006clear_avx - xor ecx,ecx -DB 15,1,208 - and eax,6 - cmp eax,6 - je $L007done - cmp eax,2 - je $L006clear_avx -$L008clear_xmm: - and ebp,4261412861 - and esi,4278190079 -$L006clear_avx: - and ebp,4026525695 - and DWORD PTR 8[edi],4294967263 -$L007done: - mov eax,esi - mov edx,ebp -$L000nocpuid: - pop edi - pop esi - pop ebx - pop ebp - ret -_OPENSSL_ia32_cpuid ENDP -;EXTERN _OPENSSL_ia32cap_P:NEAR -ALIGN 16 -_OPENSSL_rdtsc PROC PUBLIC -$L_OPENSSL_rdtsc_begin:: - xor eax,eax - xor edx,edx - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ecx],4 - jnc $L009notsc - rdtsc -$L009notsc: - ret -_OPENSSL_rdtsc ENDP -ALIGN 16 -_OPENSSL_instrument_halt PROC PUBLIC -$L_OPENSSL_instrument_halt_begin:: - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ecx],4 - jnc $L010nohalt -DD 2421723150 - and eax,3 - jnz $L010nohalt - pushfd - pop eax - bt eax,9 - jnc $L010nohalt - rdtsc - push edx - push eax - hlt - rdtsc - sub eax,DWORD PTR [esp] - sbb edx,DWORD PTR 4[esp] - add esp,8 - ret -$L010nohalt: - xor eax,eax - xor edx,edx - ret -_OPENSSL_instrument_halt ENDP -ALIGN 16 -_OPENSSL_far_spin PROC PUBLIC -$L_OPENSSL_far_spin_begin:: - pushfd - pop eax - bt eax,9 - jnc $L011nospin - mov eax,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] -DD 2430111262 - xor eax,eax - mov edx,DWORD PTR [ecx] - jmp $L012spin -ALIGN 16 -$L012spin: - inc eax - cmp edx,DWORD PTR [ecx] - je $L012spin -DD 529567888 - ret -$L011nospin: - xor eax,eax - xor edx,edx - ret -_OPENSSL_far_spin ENDP -ALIGN 16 -_OPENSSL_wipe_cpu PROC PUBLIC -$L_OPENSSL_wipe_cpu_begin:: - xor eax,eax - xor edx,edx - lea ecx,DWORD PTR _OPENSSL_ia32cap_P - mov ecx,DWORD PTR [ecx] - bt DWORD PTR [ecx],1 - jnc $L013no_x87 - and ecx,83886080 - cmp ecx,83886080 - jne $L014no_sse2 - pxor xmm0,xmm0 - pxor xmm1,xmm1 - pxor xmm2,xmm2 - pxor xmm3,xmm3 - pxor xmm4,xmm4 - pxor xmm5,xmm5 - pxor xmm6,xmm6 - pxor xmm7,xmm7 -$L014no_sse2: -DD 4007259865,4007259865,4007259865,4007259865 -DD 2430851995 -$L013no_x87: - lea eax,DWORD PTR 4[esp] - ret -_OPENSSL_wipe_cpu ENDP -ALIGN 16 -_OPENSSL_atomic_add PROC PUBLIC -$L_OPENSSL_atomic_add_begin:: - mov edx,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - push ebx - nop - mov eax,DWORD PTR [edx] -$L015spin: - lea ebx,DWORD PTR [ecx*1+eax] - nop -DD 447811568 - jne $L015spin - mov eax,ebx - pop ebx - ret -_OPENSSL_atomic_add ENDP -ALIGN 16 -_OPENSSL_indirect_call PROC PUBLIC -$L_OPENSSL_indirect_call_begin:: - push ebp - mov ebp,esp - sub esp,28 - mov ecx,DWORD PTR 12[ebp] - mov DWORD PTR [esp],ecx - mov edx,DWORD PTR 16[ebp] - mov DWORD PTR 4[esp],edx - mov eax,DWORD PTR 20[ebp] - mov DWORD PTR 8[esp],eax - mov eax,DWORD PTR 24[ebp] - mov DWORD PTR 12[esp],eax - mov eax,DWORD PTR 28[ebp] - mov DWORD PTR 16[esp],eax - mov eax,DWORD PTR 32[ebp] - mov DWORD PTR 20[esp],eax - mov eax,DWORD PTR 36[ebp] - mov DWORD PTR 24[esp],eax - call DWORD PTR 8[ebp] - mov esp,ebp - pop ebp - ret -_OPENSSL_indirect_call ENDP -ALIGN 16 -_OPENSSL_cleanse PROC PUBLIC -$L_OPENSSL_cleanse_begin:: - mov edx,DWORD PTR 4[esp] - mov ecx,DWORD PTR 8[esp] - xor eax,eax - cmp ecx,7 - jae $L016lot - cmp ecx,0 - je $L017ret -$L018little: - mov BYTE PTR [edx],al - sub ecx,1 - lea edx,DWORD PTR 1[edx] - jnz $L018little -$L017ret: - ret -ALIGN 16 -$L016lot: - test edx,3 - jz $L019aligned - mov BYTE PTR [edx],al - lea ecx,DWORD PTR [ecx-1] - lea edx,DWORD PTR 1[edx] - jmp $L016lot -$L019aligned: - mov DWORD PTR [edx],eax - lea ecx,DWORD PTR [ecx-4] - test ecx,-4 - lea edx,DWORD PTR 4[edx] - jnz $L019aligned - cmp ecx,0 - jne $L018little - ret -_OPENSSL_cleanse ENDP -ALIGN 16 -_OPENSSL_ia32_rdrand PROC PUBLIC -$L_OPENSSL_ia32_rdrand_begin:: - mov ecx,8 -$L020loop: -DB 15,199,240 - jc $L021break - loop $L020loop -$L021break: - cmp eax,0 - cmove eax,ecx - ret -_OPENSSL_ia32_rdrand ENDP -ALIGN 16 -_OPENSSL_ia32_rdseed PROC PUBLIC -$L_OPENSSL_ia32_rdseed_begin:: - mov ecx,8 -$L022loop: -DB 15,199,248 - jc $L023break - loop $L022loop -$L023break: - cmp eax,0 - cmove eax,ecx - ret -_OPENSSL_ia32_rdseed ENDP -.text$ ENDS -.bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:DWORD:4 -.bss ENDS -.CRT$XCU SEGMENT DWORD PUBLIC 'DATA' -EXTERN _OPENSSL_cpuid_setup:NEAR -DD _OPENSSL_cpuid_setup -.CRT$XCU ENDS -END diff --git a/deps/openssl/buildinf.h b/deps/openssl/buildinf.h deleted file mode 100644 index 1a8e483c1b30ab..00000000000000 --- a/deps/openssl/buildinf.h +++ /dev/null @@ -1,7 +0,0 @@ -/* crypto/Makefile usually creates the file at build time. Since we don't care - * about the build timestamp we fill in placeholder values. */ -#ifndef MK1MF_BUILD -#define CFLAGS "-C flags not included-" -#define PLATFORM "google" -#define DATE "Sun Jan 1 00:00:00 GMT 1970" -#endif diff --git a/deps/openssl/config/Makefile b/deps/openssl/config/Makefile deleted file mode 100644 index c8155b16d8dcfb..00000000000000 --- a/deps/openssl/config/Makefile +++ /dev/null @@ -1,61 +0,0 @@ -PERL = perl -CONFIGURE = ./Configure -COPT = no-shared no-symlinks - -ARCHS = aix-gcc aix64-gcc BSD-x86 BSD-x86_64 VC-WIN32 \ -VC-WIN64A darwin64-x86_64-cc darwin-i386-cc linux-aarch64 \ -linux-armv4 linux-elf linux-x32 linux-x86_64 linux-ppc \ -linux-ppc64 linux32-s390x linux64-s390x solaris-x86-gcc \ -solaris64-x86_64-gcc - -CFG = opensslconf.h -SRC_CFG = ../openssl/crypto/$(CFG) -BACKUP_FILES = ../openssl/Makefile ../openssl/Makefile.bak $(SRC_CFG) -BACKUP_EXT = nodebackup - -# OPENSSL_CPUID_OBJ is defined in openssl.gypi for use --openssl-no-asm -CPUIDFIX = 's/\#define OPENSSL_CPUID_OBJ$$//;' - -MACFIX ='s/define RC4_INT unsigned char$$/define RC4_INT unsigned int/;' - -PHONY = all clean backup restore -.PHONY: $(PHONY) - -all: backup $(ARCHS) cleanconf fixdarwin64 restore - -$(ARCHS): - cd ../openssl; $(PERL) $(CONFIGURE) $(COPT) $@ > /dev/null - $(PERL) -p -e $(CPUIDFIX) $(SRC_CFG) > ./archs/$@/$(CFG) - -# The current openssl release does not use RC4 asm since it explicitly -# specified as `$asm=~s/rc4\-[^:]+//;` in -# https://github.com/openssl/openssl/blob/OpenSSL_1_0_1-stable/Configure#L584 -# But node has used RC4 asm on MacOS for long time. Fix type of RC4_INT -# into `unsigned int` in opensslconf.h of darwin64-x86_64-cc to work on -# the RC4 asm. -fixdarwin64: - $(PERL) -pi -e $(MACFIX) ./archs/darwin64-x86_64-cc/$(CFG) - -# backup files to avoid to be overwritten -backup: - @for f in $(BACKUP_FILES); do \ - mv $$f $$f.$(BACKUP_EXT); \ - done - -restore: - @for f in $(BACKUP_FILES); do \ - mv $$f.$(BACKUP_EXT) $$f ; \ - done - -# remove unnecessary files create by Configure -cleanconf: - @rm ../openssl/crypto/$(CFG) - @rm ../openssl/Makefile - @rm ../openssl/apps/CA.pl.bak - @rm ../openssl/crypto/buildinf.h - @rm ../openssl/crypto/$(CFG).bak - @rm ../openssl/ms/version32.rc - @rm ../openssl/tools/c_rehash.bak - -clean: - find archs -name $(CFG) -exec rm "{}" \; diff --git a/deps/openssl/config/archs/BSD-x86/opensslconf.h b/deps/openssl/config/archs/BSD-x86/opensslconf.h deleted file mode 100644 index 769c15e052f9ff..00000000000000 --- a/deps/openssl/config/archs/BSD-x86/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#define RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#define DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#define DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/BSD-x86_64/opensslconf.h b/deps/openssl/config/archs/BSD-x86_64/opensslconf.h deleted file mode 100644 index 231c8f3628079d..00000000000000 --- a/deps/openssl/config/archs/BSD-x86_64/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/VC-WIN32/opensslconf.h b/deps/openssl/config/archs/VC-WIN32/opensslconf.h deleted file mode 100644 index 963b384b2221b9..00000000000000 --- a/deps/openssl/config/archs/VC-WIN32/opensslconf.h +++ /dev/null @@ -1,271 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_WIN32 -# define OPENSSL_SYSNAME_WIN32 -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION -#define OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#define RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#undef DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/VC-WIN64A/opensslconf.h b/deps/openssl/config/archs/VC-WIN64A/opensslconf.h deleted file mode 100644 index 2993295bd4de3d..00000000000000 --- a/deps/openssl/config/archs/VC-WIN64A/opensslconf.h +++ /dev/null @@ -1,271 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_WIN64A -# define OPENSSL_SYSNAME_WIN64A -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION -#define OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#define SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#undef DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/aix-gcc/opensslconf.h b/deps/openssl/config/archs/aix-gcc/opensslconf.h deleted file mode 100644 index c647b9485aa624..00000000000000 --- a/deps/openssl/config/archs/aix-gcc/opensslconf.h +++ /dev/null @@ -1,273 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_AIX -# define OPENSSL_SYSNAME_AIX -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#undef DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/aix64-gcc/opensslconf.h b/deps/openssl/config/archs/aix64-gcc/opensslconf.h deleted file mode 100644 index b7632639d750eb..00000000000000 --- a/deps/openssl/config/archs/aix64-gcc/opensslconf.h +++ /dev/null @@ -1,273 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_AIX -# define OPENSSL_SYSNAME_AIX -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#undef DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/darwin-i386-cc/opensslconf.h b/deps/openssl/config/archs/darwin-i386-cc/opensslconf.h deleted file mode 100644 index 584537094dc49b..00000000000000 --- a/deps/openssl/config/archs/darwin-i386-cc/opensslconf.h +++ /dev/null @@ -1,273 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_MACOSX -# define OPENSSL_SYSNAME_MACOSX -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#define BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/opensslconf.h b/deps/openssl/config/archs/darwin64-x86_64-cc/opensslconf.h deleted file mode 100644 index 1d7932d04b8c0e..00000000000000 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/opensslconf.h +++ /dev/null @@ -1,273 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_SYSNAME_MACOSX -# define OPENSSL_SYSNAME_MACOSX -#endif -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-aarch64/opensslconf.h b/deps/openssl/config/archs/linux-aarch64/opensslconf.h deleted file mode 100644 index bd4869d4c51d87..00000000000000 --- a/deps/openssl/config/archs/linux-aarch64/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#define BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-armv4/opensslconf.h b/deps/openssl/config/archs/linux-armv4/opensslconf.h deleted file mode 100644 index 4f6aa1c69b9355..00000000000000 --- a/deps/openssl/config/archs/linux-armv4/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#define BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-elf/opensslconf.h b/deps/openssl/config/archs/linux-elf/opensslconf.h deleted file mode 100644 index 769c15e052f9ff..00000000000000 --- a/deps/openssl/config/archs/linux-elf/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#define RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#define DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#define DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-ppc/opensslconf.h b/deps/openssl/config/archs/linux-ppc/opensslconf.h deleted file mode 100644 index 8d7bda716a4b97..00000000000000 --- a/deps/openssl/config/archs/linux-ppc/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#define DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-ppc64/opensslconf.h b/deps/openssl/config/archs/linux-ppc64/opensslconf.h deleted file mode 100644 index bec911036c26ae..00000000000000 --- a/deps/openssl/config/archs/linux-ppc64/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#define DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-x32/opensslconf.h b/deps/openssl/config/archs/linux-x32/opensslconf.h deleted file mode 100644 index 8e184bc815f9cf..00000000000000 --- a/deps/openssl/config/archs/linux-x32/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#define SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux-x86_64/opensslconf.h b/deps/openssl/config/archs/linux-x86_64/opensslconf.h deleted file mode 100644 index 231c8f3628079d..00000000000000 --- a/deps/openssl/config/archs/linux-x86_64/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux32-s390x/opensslconf.h b/deps/openssl/config/archs/linux32-s390x/opensslconf.h deleted file mode 100644 index 32759db4742fa1..00000000000000 --- a/deps/openssl/config/archs/linux32-s390x/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/linux64-s390x/opensslconf.h b/deps/openssl/config/archs/linux64-s390x/opensslconf.h deleted file mode 100644 index c4865e0b623caa..00000000000000 --- a/deps/openssl/config/archs/linux64-s390x/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned char -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/solaris-x86-gcc/opensslconf.h b/deps/openssl/config/archs/solaris-x86-gcc/opensslconf.h deleted file mode 100644 index 769c15e052f9ff..00000000000000 --- a/deps/openssl/config/archs/solaris-x86-gcc/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#undef RC4_CHUNK -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned long -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#define BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#undef SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#define THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#define RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#define DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#define DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/opensslconf.h b/deps/openssl/config/archs/solaris64-x86_64-gcc/opensslconf.h deleted file mode 100644 index 231c8f3628079d..00000000000000 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/opensslconf.h +++ /dev/null @@ -1,270 +0,0 @@ -/* opensslconf.h */ -/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ - -#ifdef __cplusplus -extern "C" { -#endif -/* OpenSSL was configured with the following options: */ -#ifndef OPENSSL_DOING_MAKEDEPEND - - -#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 -# define OPENSSL_NO_EC_NISTP_64_GCC_128 -#endif -#ifndef OPENSSL_NO_GMP -# define OPENSSL_NO_GMP -#endif -#ifndef OPENSSL_NO_JPAKE -# define OPENSSL_NO_JPAKE -#endif -#ifndef OPENSSL_NO_KRB5 -# define OPENSSL_NO_KRB5 -#endif -#ifndef OPENSSL_NO_LIBUNBOUND -# define OPENSSL_NO_LIBUNBOUND -#endif -#ifndef OPENSSL_NO_MD2 -# define OPENSSL_NO_MD2 -#endif -#ifndef OPENSSL_NO_RC5 -# define OPENSSL_NO_RC5 -#endif -#ifndef OPENSSL_NO_RFC3779 -# define OPENSSL_NO_RFC3779 -#endif -#ifndef OPENSSL_NO_SCTP -# define OPENSSL_NO_SCTP -#endif -#ifndef OPENSSL_NO_SSL_TRACE -# define OPENSSL_NO_SSL_TRACE -#endif -#ifndef OPENSSL_NO_SSL2 -# define OPENSSL_NO_SSL2 -#endif -#ifndef OPENSSL_NO_STORE -# define OPENSSL_NO_STORE -#endif -#ifndef OPENSSL_NO_UNIT_TEST -# define OPENSSL_NO_UNIT_TEST -#endif -#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS -# define OPENSSL_NO_WEAK_SSL_CIPHERS -#endif - -#endif /* OPENSSL_DOING_MAKEDEPEND */ - -#ifndef OPENSSL_THREADS -# define OPENSSL_THREADS -#endif -#ifndef OPENSSL_NO_DYNAMIC_ENGINE -# define OPENSSL_NO_DYNAMIC_ENGINE -#endif - -/* The OPENSSL_NO_* macros are also defined as NO_* if the application - asks for it. This is a transient feature that is provided for those - who haven't had the time to do the appropriate changes in their - applications. */ -#ifdef OPENSSL_ALGORITHM_DEFINES -# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128) -# define NO_EC_NISTP_64_GCC_128 -# endif -# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) -# define NO_GMP -# endif -# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE) -# define NO_JPAKE -# endif -# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) -# define NO_KRB5 -# endif -# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND) -# define NO_LIBUNBOUND -# endif -# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2) -# define NO_MD2 -# endif -# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5) -# define NO_RC5 -# endif -# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779) -# define NO_RFC3779 -# endif -# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP) -# define NO_SCTP -# endif -# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE) -# define NO_SSL_TRACE -# endif -# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2) -# define NO_SSL2 -# endif -# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE) -# define NO_STORE -# endif -# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST) -# define NO_UNIT_TEST -# endif -# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS) -# define NO_WEAK_SSL_CIPHERS -# endif -#endif - - - -/* crypto/opensslconf.h.in */ - -/* Generate 80386 code? */ -#undef I386_ONLY - -#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ -#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/usr/local/ssl/lib/engines" -#define OPENSSLDIR "/usr/local/ssl" -#endif -#endif - -#undef OPENSSL_UNISTD -#define OPENSSL_UNISTD - -#undef OPENSSL_EXPORT_VAR_AS_FUNCTION - -#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) -#define IDEA_INT unsigned int -#endif - -#if defined(HEADER_MD2_H) && !defined(MD2_INT) -#define MD2_INT unsigned int -#endif - -#if defined(HEADER_RC2_H) && !defined(RC2_INT) -/* I need to put in a mod for the alpha - eay */ -#define RC2_INT unsigned int -#endif - -#if defined(HEADER_RC4_H) -#if !defined(RC4_INT) -/* using int types make the structure larger but make the code faster - * on most boxes I have tested - up to %20 faster. */ -/* - * I don't know what does "most" mean, but declaring "int" is a must on: - * - Intel P6 because partial register stalls are very expensive; - * - elder Alpha because it lacks byte load/store instructions; - */ -#define RC4_INT unsigned int -#endif -#if !defined(RC4_CHUNK) -/* - * This enables code handling data aligned at natural CPU word - * boundary. See crypto/rc4/rc4_enc.c for further details. - */ -#define RC4_CHUNK unsigned long -#endif -#endif - -#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) -/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a - * %20 speed up (longs are 8 bytes, int's are 4). */ -#ifndef DES_LONG -#define DES_LONG unsigned int -#endif -#endif - -#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) -#define CONFIG_HEADER_BN_H -#undef BN_LLONG - -/* Should we define BN_DIV2W here? */ - -/* Only one for the following should be defined */ -#define SIXTY_FOUR_BIT_LONG -#undef SIXTY_FOUR_BIT -#undef THIRTY_TWO_BIT -#endif - -#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) -#define CONFIG_HEADER_RC4_LOCL_H -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#undef RC4_INDEX -#endif - -#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) -#define CONFIG_HEADER_BF_LOCL_H -#undef BF_PTR -#endif /* HEADER_BF_LOCL_H */ - -#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) -#define CONFIG_HEADER_DES_LOCL_H -#ifndef DES_DEFAULT_OPTIONS -/* the following is tweaked from a config script, that is why it is a - * protected undef/define */ -#ifndef DES_PTR -#undef DES_PTR -#endif - -/* This helps C compiler generate the correct code for multiple functional - * units. It reduces register dependancies at the expense of 2 more - * registers */ -#ifndef DES_RISC1 -#undef DES_RISC1 -#endif - -#ifndef DES_RISC2 -#undef DES_RISC2 -#endif - -#if defined(DES_RISC1) && defined(DES_RISC2) -#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! -#endif - -/* Unroll the inner loop, this sometimes helps, sometimes hinders. - * Very mucy CPU dependant */ -#ifndef DES_UNROLL -#define DES_UNROLL -#endif - -/* These default values were supplied by - * Peter Gutman - * They are only used if nothing else has been defined */ -#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) -/* Special defines which change the way the code is built depending on the - CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find - even newer MIPS CPU's, but at the moment one size fits all for - optimization options. Older Sparc's work better with only UNROLL, but - there's no way to tell at compile time what it is you're running on */ - -#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#elif defined( __ultrix ) /* Older MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined( __osf1__ ) /* Alpha */ -# define DES_PTR -# define DES_RISC2 -#elif defined ( _AIX ) /* RS6000 */ - /* Unknown */ -#elif defined( __hpux ) /* HP-PA */ - /* Unknown */ -#elif defined( __aux ) /* 68K */ - /* Unknown */ -#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ -# define DES_UNROLL -#elif defined( __sgi ) /* Newer MIPS */ -# define DES_PTR -# define DES_RISC2 -# define DES_UNROLL -#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ -# define DES_PTR -# define DES_RISC1 -# define DES_UNROLL -#endif /* Systems-specific speed defines */ -#endif - -#endif /* DES_DEFAULT_OPTIONS */ -#endif /* HEADER_DES_LOCL_H */ -#ifdef __cplusplus -} -#endif diff --git a/deps/openssl/config/opensslconf.h b/deps/openssl/config/opensslconf.h deleted file mode 100644 index 1c89babcf6c864..00000000000000 --- a/deps/openssl/config/opensslconf.h +++ /dev/null @@ -1,154 +0,0 @@ -/* - In OpenSSL, opensslconf.h was generated by Configure script with - specifying a target argument, where it includes several defines that - depend on OS and architecture platform. - - In node, we statically mapped --dest-os and --dest-cpu options in - configure to the target of Configure in OpenSSL and make - `deps/openssl/conf/openssconf.h` so as to include each file - according to its target by checking pre-defined compiler macros. - - Included opnesslconf.h files for supported target architectures can - be generated by `Makefile` and stored under - `archs/{target}/opensslconf.h`. The Makefile also fixes several - defines to meet node build requirements. - - Here is a map table of configure options in node, target arch of - Configure in OpenSSL and CI support. - - | --dest-os | --dest-cpu | OpenSSL target arch | CI | - | --------- | ---------- | -------------------- | --- | - | aix | ppc | aix-gcc | o | - | aix | ppc64 | aix64-gcc | o | - | linux | ia32 | linux-elf | o | - | linux | x32 | linux-x32 | - | - | linux | x64 | linux-x86_64 | o | - | linux | arm | linux-armv4 | o | - | linux | arm64 | linux-aarch64 | o | - | linux | ppc | linux-ppc | o | - | linux | ppc64 | linux-ppc64 | o | - | linux | s390 | linux32-s390x | o | - | linux | s390x | linux64-s390x | o | - | mac | ia32 | darwin-i386-cc | o | - | mac | x64 | darwin64-x86-cc | o | - | win | ia32 | VC-WIN32 | - | - | win | x64 | VC-WIN64A | o | - | solaris | ia32 | solaris-x86-gcc | o | - | solaris | x64 | solaris64-x86_64-gcc | o | - | freebsd | ia32 | BSD-x86 | o | - | freebsd | x64 | BSD-x86_64 | o | - | netbsd | ia32 | BSD-x86 | o | - | netbsd | x64 | BSD-x86_64 | o | - | openbsd | ia32 | BSD-x86 | - | - | openbsd | x64 | BSD-x86_64 | - | - | others | others | linux-elf | - | - - --dest-os and --dest-cpu are mapped to pre-defined macros. - - | --dest-os | pre-defined macro | - | ------------------ | ------------------------- | - | aix | _AIX | - | win | _WIN32 | - | win(64bit) | _WIN64 | - | mac | __APPLE__ && __MACH__ | - | solaris | __sun | - | freebsd | __FreeBSD__ | - | netbsd | __NetBSD__ | - | openbsd | __OpenBSD__ | - | linux (not andorid)| __linux__ && !__ANDROID__ | - | android | __ANDROID__ | - - | --dest-cpu | pre-defined macro | - | ---------- | ----------------- | - | arm | __arm__ | - | arm64 | __aarch64__ | - | ia32 | __i386__ | - | ia32(win) | _M_IX86 | - | mips | __mips__ | - | mipsel | __MIPSEL__ | - | x32 | __ILP32__ | - | x64 | __x86_64__ | - | x64(win) | _M_X64 | - | ppc | __PPC__ | - | | _ARCH_PPC | - | ppc64 | __PPC64__ | - | | _ARCH_PPC64 | - | s390 | __s390__ | - | s390x | __s390x__ | - - These are the list which is not implemented yet. - - | --dest-os | --dest-cpu | OpenSSL target arch | CI | - | --------- | ---------- | -------------------- | --- | - | linux | mips | linux-mips32,linux-mips64,linux64-mips64? | --- | - | linux | mipsel | ? | --- | - | android | ia32 | android-x86 | --- | - | android | arm | android-armv7 | --- | - | android | mips | android-mips | --- | - | android | mipsel | ? | --- | - - Supported target arch list in OpenSSL can be obtained by typing - `deps/openssl/openssl/Configure LIST`. - -*/ - -#undef OPENSSL_LINUX -#if defined(__linux) && !defined(__ANDROID__) -# define OPENSSL_LINUX 1 -#endif - -#undef OPENSSL_BSD -#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) -# define OPENSSL_BSD 1 -#endif - -#if defined(OPENSSL_LINUX) && defined(__i386__) -# include "./archs/linux-elf/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__ILP32__) -# include "./archs/linux-x32/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__x86_64__) -# include "./archs/linux-x86_64/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__arm__) -# include "./archs/linux-armv4/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__aarch64__) -# include "./archs/linux-aarch64/opensslconf.h" -#elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__) -# include "./archs/darwin-i386-cc/opensslconf.h" -#elif defined(__APPLE__) && defined(__MACH__) && defined(__x86_64__) -# include "./archs/darwin64-x86_64-cc/opensslconf.h" -#elif defined(_WIN32) && defined(_M_IX86) -# include "./archs/VC-WIN32/opensslconf.h" -#elif defined(_WIN32) && defined(_M_X64) -# include "./archs/VC-WIN64A/opensslconf.h" -#elif defined(OPENSSL_BSD) && defined(__i386__) -# include "./archs/BSD-x86/opensslconf.h" -#elif defined(OPENSSL_BSD) && defined(__x86_64__) -# include "./archs/BSD-x86_64/opensslconf.h" -#elif defined(__sun) && defined(__i386__) -# include "./archs/solaris-x86-gcc/opensslconf.h" -#elif defined(__sun) && defined(__x86_64__) -# include "./archs/solaris64-x86_64-gcc/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__PPC64__) -# include "./archs/linux-ppc64/opensslconf.h" -#elif defined(OPENSSL_LINUX) && !defined(__PPC64__) && defined(__ppc__) -# include "./archs/linux-ppc/opensslconf.h" -#elif defined(_AIX) && defined(_ARCH_PPC64) -# include "./archs/aix64-gcc/opensslconf.h" -#elif defined(_AIX) && !defined(_ARCH_PPC64) && defined(_ARCH_PPC) -# include "./archs/aix-gcc/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__s390x__) -# include "./archs/linux64-s390x/opensslconf.h" -#elif defined(OPENSSL_LINUX) && defined(__s390__) -# include "./archs/linux32-s390x/opensslconf.h" -#else -# include "./archs/linux-elf/opensslconf.h" -#endif - -/* GOST is not included in all platform */ -#ifndef OPENSSL_NO_GOST -# define OPENSSL_NO_GOST -#endif -/* HW_PADLOCK is not included in all platform */ -#ifndef OPENSSL_NO_HW_PADLOCK -# define OPENSSL_NO_HW_PADLOCK -#endif diff --git a/deps/openssl/doc/UPGRADING.md b/deps/openssl/doc/UPGRADING.md deleted file mode 100644 index 8b25962a952d2d..00000000000000 --- a/deps/openssl/doc/UPGRADING.md +++ /dev/null @@ -1,361 +0,0 @@ -## How to upgrade openssl library in Node.js - -This document describes the procedure to upgrade openssl from 1.0.2e -to 1.0.2f in Node.js. This procedure might be applied to upgrading -any versions in 1.0.2. - -### Build System and Upgrading Overview -The openssl build system is based on the `Configure` perl script in -`deps/openssl/openssl`. For example, running `Configure linux_x86-64` -in the openssl repository generates `Makefile` and `opensslconf.h` for -the linux_x86_64 target architecture. - -The `Makefile` contains the list of asm files which are generated by -perl scripts during build so that we can get the most of use of the -hardware performance according to the type of cpus. - -`Configure TABLE` shows various build parameters that depend on each -os and arch. - -In Node.js, build target is defined as `--dest-os` and `--dest-cpu` in -configure options which are different from the one that is defined in -openssl and it's build system is gyp that is based on python, -therefore we cannot use the openssl build system directly. - -In order to build openssl with gyp in node, files of opensslconf.h and -asm are generated in advance for several supported platforms. - -Here is a map table to show conf(opensslconf.h) and asm between -the openssl target and configuration parameters of os and cpu in node. -The tested platform in CI are also listed. - -| --dest-os | --dest-cpu | conf | asm | openssl target | CI | -|---------- |----------- |----- |----- |------------------- |--- | -| aix | ppc | o | x(*2)| aix-gcc | o | -| aix | ppc64 | o | x(*2)| aix64-gcc | o | -| linux | ia32 | o | o |linux-elf | o | -| linux | x32 | o | x(*2)|linux-x32 | x | -| linux | x64 | o | o |linux-x86_64 | o | -| linux | arm | o | o |linux-arm | o | -| linux | arm64 | o | o |linux-aarch64 | o | -| mac | ia32 | o | o |darwin-i386-cc | - | -| mac | x64 | o | o |darwin64-x86_64-cc | o | -| win | ia32 | o | o(*3)|VC-WIN32 | x | -| win | x64 | o | o |VC-WIN64A | o | -| solaris | ia32 | o | o |solaris-x86-gcc | o | -| solaris | x64 | o | o |solaris64-x86_64-gcc| o | -| freebsd | ia32 | o | o |BSD-x86 | o | -| freebsd | x64 | o | o |BSD-x86_64 | o | -| openbsd | ia32 | o | o |BSD-x86 | x | -| openbsd | x64 | o | o |BSD-x86_64 | x | -| others | ia32 | x(*1)| o | - | x | -| others | x64 | x(*1)| o | - | x | -| others | arm | x(*1)| o | - | x | -| others | arm64 | x(*1)| o | - | x | -| others | others | x(*1)| x(*2)| - | x | - -- (*1) use linux-elf as a fallback configuration -- (*2) no-asm used -- (*3) currently masm (Microsoft Macro Assembler) is used but it's no -longer supported in openssl. We need to move to use nasm or yasm. - -All parameters such as sources, defines, cflags and others generated -in openssl Makefile are written down into `deps/openssl/openssl.gypi`. - -The header file of `deps/openssl/openssl/crypto/opensslconf.h` are -generated by `Configure` and varies on each os and arch so that we -made a new `deps/openssl/config/opensslconf.h`, where it includes each -conf file from `deps/openssl/config/archs/*/opensslconf.h` by using -pre-defined compiler macros. This procedure can be processed -automatically with `deps/openssl/config/Makefile` - -Assembler support is one of the key features in openssl, but asm files -are dynamically generated with -`deps/openssl/openssl/crypto/*/asm/*.pl` by perl during -build. Furthermore, these perl scripts check the version of assembler -and generate asm files according to the supported instructions in each -compiler. - -Since perl is not a build requirement in node, they all should be -generated in advance and statically stored in the repository. We -provide two sets of asm files, one is asm_latest(avx2 and addx -supported) in `deps/openssl/asm` and the other asm_obsolete(without -avx1/2 and addx) in `deps/openssl/asm_obsolete`, which depends on -supported features in assemblers. Each directory has a `Makefile` -to generate asm files with perl scripts in openssl sources. - -`configure` and gyp check the version of assemblers such as gnu -as(gas), llvm and Visual Studio. `deps/openssl/openssl.gypi` -determines what asm files should be used, in which the asm_latest -needs the version of gas >= 2.23, llvm >= 3.3 or MSVS_VERSION>='2012' -(ml64 >= 12) as defined in -https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha512-x86_64.pl#L112-L129, -otherwise asm_obsolete are used. - -The following is the detail instruction steps how to upgrade openssl -version from 1.0.2e to 1.0.2f in node. - -*This needs to run Linux -enviroment.* - -### 1. Replace openssl source in `deps/openssl/openssl` -Remove old openssl sources in `deps/openssl/openssl` . -Get original openssl sources from -https://www.openssl.org/source/openssl-1.0.2f.tar.gz and extract all -files into `deps/openssl/openssl` . - -```sh -ohtsu@ubuntu:~/github/node$ cd deps/openssl/ -ohtsu@ubuntu:~/github/node/deps/openssl$ rm -rf openssl -ohtsu@ubuntu:~/github/node/deps/openssl$ tar zxf ~/tmp/openssl-1.0.2f.tar.gz -ohtsu@ubuntu:~/github/node/deps/openssl$ mv openssl-1.0.2f openssl -ohtsu@ubuntu:~/github/node/deps/openssl$ git add --all openssl -ohtsu@ubuntu:~/github/node/deps/openssl$ git commit openssl -```` -The commit message can be - ->deps: upgrade openssl sources to 1.0.2f -> ->This replaces all sources of openssl-1.0.2f.tar.gz into ->deps/openssl/openssl - -### 2. Replace openssl header files in `deps/openssl/openssl/include/openssl` -all header files in `deps/openssl/openssl/include/openssl/*.h` are -symbolic links in the distributed release tar.gz. They cause issues in -Windows. They are copied from the real files of symlink origin into -the include directory. During installation, they also copied into -`PREFIX/node/include` by tools/install.py. -`deps/openssl/openssl/include/openssl/opensslconf.h` and -`deps/openssl/openssl/crypto/opensslconf.h` needs to be changed so as -to refer the platform independent file of `deps/openssl/config/opensslconf.h` - -The following shell script (copy_symlink.sh) is my tool for working -this procedures to invoke it in the `deps/openssl/openssl/include/openssl/`. - -```sh -#!/bin/bash -for var in "$@" -do - if [ -L $var ]; then - origin=`readlink $var` - rm $var - cp $origin $var - fi -done -rm opensslconf.h -echo '#include "../../crypto/opensslconf.h"' > opensslconf.h -rm ../../crypto/opensslconf.h -echo '#include "../../config/opensslconf.h"' > ../../crypto/opensslconf.h -```` - -This step somehow gets troublesome since openssl-1.0.2f because -symlink headers are removed in tar.gz file and we have to execute -./config script to generate them. The config script also generate -unnecessary platform dependent files in the repository so that we have -to clean up them after committing header files. - -```sh -ohtsu@ubuntu:~/github/node/deps/openssl$ cd openssl/ -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ ./config - -make[1]: Leaving directory `/home/ohtsu/github/node/deps/openssl/openssl/test' - -Configured for linux-x86_64. -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ cd include/openssl/ -ohtsu@ubuntu:~/github/node/deps/openssl/openssl/include/openssl$ ~/copy_symlink.sh *.h -ohtsu@ubuntu:~/github/node/deps/openssl/openssl/include/openssl$ cd ../.. -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ git add include -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ git commit include/ crypto/opensslconf.h -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ git clean -f -ohtsu@ubuntu:~/github/node/deps/openssl/openssl$ git checkout Makefile Makefile.bak -```` -The commit message can be - ->deps: copy all openssl header files to include dir -> ->All symlink files in `deps/openssl/openssl/include/openssl/` ->are removed and replaced with real header files to avoid ->issues on Windows. Two files of opensslconf.h in crypto and ->include dir are replaced to refer config/opensslconf.h. - -### 3. Apply floating patches -At the time of writing, there are four floating patches to be applied -to openssl. - -- Two fixes for assembly errors on ia32 win32. - -- One fix for openssl-cli built on win. Key press requirement of - openssl-cli in win causes timeout failures of several tests. - -- Adding a new `-no_rand_screen` option to openssl s_client. This - makes test time of test-tls-server-verify be much faster. - -These fixes can be applied via cherry-pick. The first three will merge without conflict. -The last commit can be landed using a recursive strategy that prefers newer changes. - -```sh -git cherry-pick c66c3d9fa3f5bab0bdfe363dd947136cf8a3907f -git cherry-pick 42a8de2ac66b6953cbc731fdb0b128b8019643b2 -git cherry-pick 2eb170874aa5e84e71b62caab7ac9792fd59c10f -git cherry-pick --strategy=recursive -X theirs 664a659 -``` - -If you attempted to cherry-pick the last commit you would have the following conflict - -``` -# do not do this -git cherry-pick 664a6596960655e214fef25e74d3285097703e95 -error: could not apply 664a659... deps: add -no_rand_screen to openssl s_client -hint: after resolving the conflicts, mark the corrected paths -hint: with 'git add ' or 'git rm ' -hint: and commit the result with 'git commit' -git cherry-pi -``` - -the conflict is in `deps/openssl/openssl/apps/app_rand.c` as below. - -```sh -ohtsu@omb:openssl$ git diff -diff --cc deps/openssl/openssl/apps/app_rand.c -index 7f40bba,b6fe294..0000000 ---- a/deps/openssl/openssl/apps/app_rand.c -+++ b/deps/openssl/openssl/apps/app_rand.c -@@@ -124,7 -124,16 +124,20 @@@ int app_RAND_load_file(const char *file - char buffer[200]; - - #ifdef OPENSSL_SYS_WINDOWS - ++<<<<<<< HEAD - + RAND_screen(); - ++======= - + /* - + * allocate 2 to dont_warn not to use RAND_screen() via - + * -no_rand_screen option in s_client - + */ - + if (dont_warn != 2) { - + BIO_printf(bio_e, "Loading 'screen' into random state -"); - + BIO_flush(bio_e); - + RAND_screen(); - + BIO_printf(bio_e, " done\n"); - + } - ++>>>>>>> 664a659... deps: add -no_rand_screen to openssl s_client - #endif - - if (file == NULL) -```` - -We want to opt for the changes from 664a659 instead of the changes present on HEAD. -`git cherry-pick --strategy=recursive -X theirs` will do just that! - -### 4. Change `opensslconf.h` so as to fit each platform. -opensslconf.h includes defines and macros which are platform -dependent. Each files can be generated via `deps/openssl/config/Makefile` -We can regenerate them and commit them if any diffs exist. - -```sh -ohtsu@ubuntu:~/github/node/deps/openssl$ cd config -ohtsu@ubuntu:~/github/node/deps/openssl/config$ make clean -find archs -name opensslconf.h -exec rm "{}" \; -ohtsu@ubuntu:~/github/node/deps/openssl/config$ make -cd ../openssl; perl ./Configure no-shared no-symlinks aix-gcc > /dev/null -ohtsu@ubuntu:~/github/node/deps/openssl/config$ git diff -ohtsu@ubuntu:~/github/node/deps/openssl/config$ git commit . -```` -The commit message can be - ->deps: update openssl config files -> ->Regenerate config files for supported platforms with Makefile. - -### 5. Update openssl.gyp and openssl.gypi -This process is needed when source files are removed, renamed and added. -It seldom happen in the minor bug fix release. Build errors would be -thrown if it happens. In case of build errors, we need to check source -files in Makefiles of its platform and change openssl.gyp or -openssl.gypi according to the changes of source files. Please contact -@shigeki if it is needed. - -### 6. ASM files for openssl -We provide two sets of asm files. One is for the latest assembler -and the other is the older one. sections 6.1 and 6.2 describe the two -types of files. Section 6.3 explains the steps to update the files. -In the case of upgrading 1.0.2f there were no changes to the asm files. - -Files changed between two tags can be manually inspected using: -``` -https://github.com/openssl/openssl/compare/OpenSSL_1_0_2e...OpenSSL_1_0_2f#files_bucket -``` -If any source files in `asm` directory were changed then please follow the rest of the -steps in this section otherwise these steps can be skipped. - -### 6.1. asm files for the latest compiler -This was made in `deps/openssl/asm/Makefile` -- Updated asm files for each platforms which are required in - openssl-1.0.2f. -- Some perl files need CC and ASM envs. Added a check if these envs - exist. Followed asm files are to be generated with CC=gcc and - ASM=nasm on Linux. See - `deps/openssl/openssl/crypto/sha/asm/sha512-x86_64.pl` -- Added new 32bit targets/rules with a sse2 flag (OPENSSL_IA32_SSE2) - to generate asm for use SSE2. -- Generating sha512 asm files in x86_64 need output filename which - has 512. Added new rules so as not to use stdout for outputs. -- PERLASM_SCHEME of linux-armv4 is `void` as defined in openssl - Configure. Changed its target/rule and all directories are moved - from arm-elf-gas to arm-void-gas. -- add a new rule for armv8 asm generation - -With export environments of CC=gcc and ASM=nasm, then type make -command and check if new asm files are generated. -If you don't have nasm please install it such as `apt-get install nasm`. - -### 6.2. asm files for the older compiler -For older assembler, the version check of CC and ASM should be -skipped in generating asm file with perl scripts. -Copy files from `deps/openssl/asm` into -`deps/openssl/asm/asm_obsolete` and change rules to generate asm files -into this directories and remove the check of CC and ASM envs. - -Without environments of CC and ASM, then type make command and check -if new asm files for older compilers are generated. - -The following steps includes version check of gcc and nasm. - -### 6.3 steps - -```sh -ohtsu@ubuntu:~/github/node/deps/openssl/config$ cd ../asm -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ gcc --version -gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 -Copyright (C) 2013 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ nasm -v -NASM version 2.10.09 compiled on Dec 29 2013 -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ export CC=gcc -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ export ASM=nasm -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ make clean -find . -iname '*.asm' -exec rm "{}" \; -find . -iname '*.s' -exec rm "{}" \; -find . -iname '*.S' -exec rm "{}" \; -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ make -ohtsu@ubuntu:~/github/node/deps/openssl/asm$ cd ../asm_obsolete/ -ohtsu@ubuntu:~/github/node/deps/openssl/asm_obsolete$ unset CC -ohtsu@ubuntu:~/github/node/deps/openssl/asm_obsolete$ unset ASM -ohtsu@ubuntu:~/github/node/deps/openssl/asm_obsolete$ make clean -find . -iname '*.asm' -exec rm "{}" \; -find . -iname '*.s' -exec rm "{}" \; -find . -iname '*.S' -exec rm "{}" \; -ohtsu@ubuntu:~/github/node/deps/openssl/asm_obsolete$ make -ohtsu@ubuntu:~/github/node/deps/openssl$ git status -ohtsu@ubuntu:~/github/node/deps/openssl$ git commit asm asm_obsolete -```` -The commit message can be - ->deps: update openssl asm and asm_obsolete files -> ->Regenerate asm files with Makefile and CC=gcc and ASM=nasm where gcc ->version was 5.4.0 and nasm version was 2.11.08. -> ->Also asm files in asm_obsolete dir to support old compiler and ->assembler are regenerated without CC and ASM envs. diff --git a/deps/openssl/doc/openssl_define_list.pdf b/deps/openssl/doc/openssl_define_list.pdf deleted file mode 100644 index efbc85ff01e1b24d68e0f97b880b70b51f7c74de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85632 zcmdqJWmufc(l$y6!6CQ>86XhcB?JNt1b2rZ!3K8=?(V?}K@udmL(t&v?iSqL?R$o` z*M8SN@B5waob&T=U155uC;VVQWV#zz(yNsiD0l zhy!X)8}v^-_J8Ps9UV-p?P#n`9PAxI_9mvr5OY%il&~E{&%xB%>VuvGgyzFLHWpS+ z7Is!{R!(*{PHuV@o;NHkZvZhFYs3G8guI=#p`!uBj^^PJMh3&vSiiIM?-rCX5 z0Add?EoyD$0R3PEaY0#Q7G(pmvOrt>{LCWG4q{3U03CpUn9^I&+b0PzB_0sZza#)x z4U`}bn#@2>Fe^ix9hfC7fuIZh^&$M%hXgbf%rX!|Q#~PTXH7tr1;on1&cVda1(&?LmJfgP5JQqYW_cQ$js`VOC;Rw$rn+w}HB1;KD4d#QXu`WNH9W6cYmM zE9>do10sK=)?e=0gINB_4Ak)7%!ry=I6&-}MJ)jDK0pkt4I#|Z5G!K`695qxHy2dR z-T_DmOEhHXZv)zv*7ID|52T<+J^n$4V%#s|^zt|+7QY4-Cwn@#;oZW*K)Y}A@Iw|} zanCt<-LJ2tbbsL(-`W~()&FTA>Ul@3$Tvjp;!x>wqJKJ}Cg;iL;Z)s|es^?n(Pnhp z)w92_e}1rA!Ywx>%l&wHrO?4X87iY~?4o2ru<9~7o|0pv(ZQ8oLMGsPpE$6;Dkk^o zz317QX0@LC>CXMCm_=;gBWn$RL9Yz`*Kphvwe&TSC2g*hmzPmw>nSgHeoo$fO5C{tiL`YWTD0FcF1KPTAH?n6#RTM5lqa>8=TR`cAnA+2Pu2}P zgMhor^%?pKL~hDo8_rB>R7ihPbzs=dfpL{OgUEE1=dG7iwlR1u{*M2>by_^@8H!=C zg;-66a7ai=K(d_>NzoTZVgAzT&we^9^Y0{hv?HY^_FlQcn8z6HnvkU+h8#}D#85Tf z7{y1T>s7<=as1^6BXepU^|u6lNz>9sJQ=|vvAA}Mr)&m)hO-`=?Qhqk2u6|?LBV)G z`fJofO{DEGK1eZ@e?!B*ce&l(R|(gYHo=(BZy4A?ZegTmCa|)M4RH#eJG85tpYPo2 zaCiYOv3gxHQk){noI{7`Dl-we=-4F}l~fH1u7>cqqL9kOb$x&b$E_Fkwr>T~yFOMG z=uLXh&hN{H?prSpdDX%{i{f$oopgq}of%EQxns00Rb(?;Sk%Y$ZO5_Gj`p2P^13St zZP48*^^mjDhW@FW_@%?=Rysn5Z>3o8Y8E8#*DP+qoPAct7_2SE46j$h7=tdxbwnM? zE9|R4Cxw_Vtn)q07YR|+8$FtM^L}yf>=xaO4_wyA8r^>I@F=i=+a3R-QGNG=pZm5c zkLUpAW(xhW+E0m$%;3IaT&QqxHfFzr&`zOmBDk;TFzRiIM*Wf)**XlqZu(uE=#km2 zh{pptn*JR2pxihtrL&DiFxn509``!gv#@e9y|0)T?}Co4r2)#6B?cL zwC4L9eUhq%@n_Pb>*Cpw8W*w))z%AejM=L*za}E_+|&FM7(3P3%%J8H z(cfu*sIPOBZ7lXE`k0n?h;K%7_i8sK2~w7Us;8m7JJ7JsFvg7$wJ+EChudF9W+wN& z@A`bHfCqoiko&Fm1QzxyOq6pB)#?`l`fE9w+jIG;3(P)kk?O=Kq?mXWT9q2CF1l68 z7}Q)oK9{{~)BG6(XoMPzs>7$9Shersz*h=RER%*Wa!sFU3+~A#==BrA?TuUMlNaM6 z8c^Ei$J{WH^R+}L;)zt5W?cm5|BB;n@<2!l;kN$F@|}_apSOize$RsFOVxeH2GY0d z)O(n8>(@P}VHL*pii@cyn_&bi5OnsdBZ-Xe&@Vdo`82!MO_4U58;AzcnhI++Lf)WX z{l^`kTE)SF1cPoydmC2qVttB&PU=1!yAHOWcz$a;d_%~A(+QjgdvJqDcD&?i}c%Lg* zX-1?f;%eXUdX1o>xbM#xz*nIb+2I_$@aTh+2Ijua5YFltcqSp82I|cZ#0c?@)SY;% z);ekFpBh~Arj|?eO{31jY(!Q%9RGOJQhoXI=UiJnhY8Rz0(NEm*x_@gs@L8OBz&rUZ%e*!;eBr?$mae0ijdWVa<1gkR;D ze9#BTCgFs}zqqMWnJLnY+&GRi zyPr@PxPNeG((8GCYv-;h^xW^I6}Iez=fZkanLhGaE2RvLF_K$~pxZ{Q6i5J|Up`}I zO+8I80Amk}2Gds?mQ$!yDnp#4J_whJmKaId)R}=A5xdVcKF^A3_radKej?hNJJG+;Kk|W4+ zD7m9Y;?kJeCJ}G4XnH=Cbfx(oeF!0;6&X2^bEeHt3BSa19XmLH`{=KmC>Rbv${lfc z8ljUz>4rjk4?qKnBRV1Bn+11$BYWTIY(R#a zIP35uc6S^<{tN>+sYgDFJ2&P_<}&l`F3M%70XEK%TbO)w28{8G%qqNf$fv1>>EY_( zTmy8)^3+t)CJfec-W~PG zjN(gDMibUK`Qae!nSL%i2ij4AqfjsVaPSS?H~Kdkt9 zd(9|RrvXkFcK-EiYr-ID9tS~26Q`{k!I!km)8>3MLht?x-fS`b)9;y(yixF{K3K%W zQ{OST4hEJzEO7*Y#qFe_$nvy+cyz$sQ6GTkcNlwH*-%SM-+lx?4_)`b?D@>J{(LxeZI~+h^5@?zVBlda^OWD2|2oE)Y zxZN;m0VhcO;}|#$$yW=R6+E1Yi|x#XEf6 zk-%&@Elf<@Ec<1~dc%gSqJ+j5&1;E1Voc?{M|x$*26lw+myh10Dl~qLHSR7L4rjW6 zkeXcjScHEdl4YxCW-z7(u` z^grS#iPpso1h|@mQr~J+v5I6SpgRrhT|nYQN9j3XYk}Sr-Dj*n2Qvk@gSIgH#Ab~2 z8AP-ue%34J+x9b&{$w74sZ7zqTByv65fluZks&$&yxFRUgJo+v#ELT!Jk$0iLQDFc zDHm}u{eDkBEEdmW*wvpP1jp4sL#$9tg!8DB>EO#WTaMZpCvkJ3nJOK%oP3*}|3cOr zxsML{4K$e#>)|+wF+3780-xs`Vlg-afqelFAZi8>p@d^Rm)j-s;Sun7_R;QHh)rV2 zL(rjYzQ&84x2Ewg?mrr`WU04h8u5WA;D@F&58vEy6PB3JU?DEvea~Qk)m!9mNc%1> zuLR4EgLH=75~(AAxu&@F2AX!|)sI?5UxpG(7ZvGC*x`+3B{@$ivtuh={fE1LpKy1u zQW3^B?#ISX{$%+$tKqfx)w}Y?2OUGpvYj#sQ1NM3V0o{N30|HIiL|GT-ef;?;h&QP*IC128swh zdzrPUBhCD*M?$J3=}H*OYSQu3SP*Epf(MLK&Yy`5M^V83wY)GQLS)j|!PmynLv-v= z-&vHb!0$}NnPp884g*M0)(`gl{;#!3Vl#yW9=BG5&u6}Y zBGuDJkp2Wu5XxvQba!IzvcCfpmjM&BW2TODnUQ-iQlr-5*uwde+7c_^&8!p!kEOb# z?F6g)R&K>1H1tqAbj>J)AS};7B!Gc<37$Nj1Bpp@D zYK@k{lmgPL3ri&JTuw`x#TK40L<|?3yhs${8|*tnL1Uimeg|1P&l*&2X3DY z$BT>qZGi!`2KR&y1F)8bfqYYENMJ|niwO7r56E{)V?m0T6Wspt2x%r+Zi%mPnxuk? zTwE$P*~FK-+JE4q5xECP8Gj1)2W%)HjN zD2qQrq3-8zh4ZTtZc8EQcV`FFVVnhLhJJ%|OjBm%<6-S7G$cJ>1Z6P3%3Vd2aFyYa z@~w2uK&MnSw)3UYcjS75NHJ-|ZrLbIB3wAQ0Y~1x1MmQTn-YZ!zWEr6Xhr)c=z7nj zE$D~oS}HFVe}gKsJU@j)24hOD5CX^|RG|p+=SvqlePuGgv-@f5|7O5T@*S+W>m;nDm^*1I z>(};4<#6c=kPlOglx{&Pgd?BZCDk~d2Ly#rH}ZH~BjY(FZvGV5Z@*Z-PCtmG1olatk##1pa3^+*FwwEJq)thgj zstoMn!N~fC+afQ3-7yzP->^^`g#6*F&B#)RIt!CvhPVWG4I74GAs5@Jp0C+A5=$VraS7}m>&tY0{nl5`M zq~X)E6>PY~Y|C2o3403>P#{SjCqyj!l;u2>UORqOF(`OMfCEQ3fP+ZT z*2qrqIBf{q4@!a7$Z0P>BbFxi!^J7Tf}WAud2!RR|v@pZT}qup5S%Aqt7 zD)aA>$doY?`MK&bOtI94J0@apZ=HX|(5YsBn}TIX#44ogGiMS?u%t~ER#*(b zJbja{b+EIaep!zv>4h`5E5~vpxAuP6!rJ>mU}baYXmxHVn)q}R+p*#<-|9f~3Ubv{ z_aM>V8(>C@`cZ?6IN{j5l+8yAebF}7kQRIlhgzRxf; z6mU&E2YXI)2`>FA%HWAwS;!%XajLoooV2YJjXkO z`!@l1nA6?3V=%D&`)Rg+0Zzf|Y$QmC0Lr(kmQJ5gz1z z_2Ez~YuuJq6^VA`kl)jAHith8q<2+ZRa#3k)u@0h>7WLdjS5m*q)z<58+=Z{`w?xZ znr-YwWufCX=Ctg-T2CichQSIKW-@^w<7-Y_`}Q`k&a5N zWQ+yr{E9lvF=={@XDH zXoTDD75{ZzMM@gZ_Av*};NzS)ciEb*$(Tc!{F0>_g8)nX*)mlM7t3((nur>kYg6c@ z3kQWzX#y6-x$U2M;Ks^Dw({qO)gUuu=&HF-~XKSAIKH%nY zlfGsd-z0yT(n^j)KgIfGp9o5F5q6hMRD5`(I(GPIBhfE81t~m~19&`VM{2|AUMX}W z`&-J)!PW`Fig%Pv*AAy-j_*hy4eEiDN7WK}Ol0#s3fa^8DHl`_a-s@Cw&_eI-|Lui z^oRx2WZ-QN`Ux)0bY~g02m}Ec8oqKsVNfltY+89%SbPTXm1g)(PX;6yIsbfjNN8OTeRl|Y145?L zYT&(kVvn+PAgfE_aEZykly`W^TN`?NO1angsSS4re^I+lK-;t^hD@@KzbT-kDX(F* zelE#h0WX;qi<9l*mzqdA( zgvzL_y%CKnQMcb9av~%GLGJ}lB@|pg9vWfbQBH~oIFVOM2Vb^C%D)Xi6^^DHN87x^ zIKwMY<=VS5OAGN-iGITb*^Nr-(#$pMA&+{)b3umvZQR9w$XhdrJDvEuvbxt_AD_8_ z;A&&-?r+3W;vlc?ZP-)BA#Lt%RA?3oZj=_#&sk&)C%P3G?BPaIK{T*dw_kUdsXC6t zl!pg90yh}`6nY*cz9iqJ)s2I6#d5JH=g6lqkppZ$pY|vuAlp8mgRKek2ppZ|`E0VP zBYVX|a#ocRP*_Rj>=-tBUO=iac8@Xk5Ib63`QUhks!B?&2Q}w-_F_A5Q8)Sk;z~sy0ncEYl=2*(O9YX z81OJ@V+7osEce5bL_-{uSAWm=afv1m1CX6$aA*PSpidWq$0d_75QDWCgzb~9) z43q}ntrgRxk8+c~Y>Rw2g8k>OyCYa|nJ(nk zvVTR!CCwAI={b6d0#a4Qjg{}m{&k}}65n~a>?End8eX_sBuUo9Z^urEcG&*Dk0hM1SG$vfVcq$Fl<b#Kvl)(X2*1I{r#mGWG*kKhYv4ZdlUG1`f8Q|Of_u>-LtX8$Ic)RN-UA{%`E^}x zHsMR7!Odn36 zS@5thSyP?vE-kj4N|FgIwjACcU~oMWZ#J(?qjvhfL~Rul2Jyo?jx@hUwC?W)p@yCN zfOFRc@h5)xfevw^hN;GX@)R%bWWX3&k^wzniXMnrd87 z9L4zCrV2ix6MY;fK43P;rIFI*Fxs+lw%@X%SNSp|S!XulC4Q9BNA}VV+w$3=C&zr& zh>T8@-K$6|blX_crWlfDkx4K5Zgav=em~9iKOkX3!#3>M1xtz~0?1q9Kg9Y;#t^i$ zjP9G%%bmobdVM#vUnli`#L02h<<-QyjcO)=I6==-{cyNZ4?6jqm@iqc^Zo012;dgx z=R34tjBB2H4qtvw7rT#a$OEnWK^j<_1Z?NSqc}Y%D0dqO(ihvFsb(piApZbfl1FK3 zs<#}w&n>S8XMKt-k~A;w3*X5;WKWGUCXxC`7Tq0%7i5X)VIOX;EFZ`>bqi34h;=WL z(Mau~rQYR+`h8eAf0=zcq)0#Ge8#0HNO6!Ju;=~Y(*F7q6~(!Q?$)HzVd&GrikfHr zT;98p^NS6EdLqO947U|F3Yr|WE^+eE8hfh`u_2x`Hq_Q>Qp5L~K?p*~kT#D{{c*9V zxTv={Y}IC7aVY#BFkzn`d10_DEzWxqkbk8=PMAC)rhwBCteI>cT21Xi<5stCvwpOC z*b20MsQc3XQ03B|gzWZF0X*X&A=6y{0(tJ}_&8Ha7{9n5d>~b0?7}3-Zl}J3Q&+P1 zxPDCOqJlnj^{bp-1I4)-+|;7J3QoCGo9HBlPoz_Jk{A4N@wGO%hv1o+anKYWom~R% zLwW_;L%NdX%BO-Gak~gg1FDxj9B|?h`F{v~=yqX$d_nK!x{}Y22$KJSprWE%g8+Hu zPGjO1Ay1aSq=J!@*zZ@4#;;tIBN(nisq8%qo`EMro>g}K9Ib*Pyl3-~cNs5hU3&iq zDg2kdad@4YrH9Ym}?$Ewm~XEtb5P$-|e8}^yjZvHPK&6ZA$(%R7};{If~ZhYdk|{2UZ1(7PPp8FD1GCE3z423@obERRdftru;_H$mwgBzeKX>PMm4j zIx`FkD+&aCGjz_AoOb(`&;MqdCp6=ygK#&}BAiOpMO;A4BSX^5>{miG+c<`Y5y{3G zJ2@{#N#aZqGt9Q}3=c)rC)jW-UXcOw$X9*kVa=5kX(NrZLi}#1Ny=Sn(&FJPUq|jg zsu{?tDl~uyg(E-8+3kg#G0Pt}ZlQ1k9gQ)EtwoI}8=c(%ZwF$~S$}t3*2~H-0*AbN zJ%#~N8D%`8F#0r+`^(tnN!rroOec4T_+bX>OPtn9GaVhQN3^?t#palPhYXgpXlH=Sm!QIWof&LnW#2_;Cd%5~KsTqzr8P#Bn0StWP&J7#W-@qD^R4uHQG#+8^= zuJVZN34%~lDpPCdVXgichR`u>agCu{@id3OeBoi}Ej-?S8a)@G?~8}3P;p0%zzZ4S zX31uS+TaCMq0W}t63!fQL#pQni|tnM3i(xW2tce=%Oga7X3$(Tl$j!a52amHZ@%eB z=LS6eQ+IYC{z-$T*7f*M{@xz3((ChuLd~Momaeq0ciVd7NcbRO#f#>3#MAr6FrR|) zg4ni#_6L=+2>c3|T_&Pg1qJ*UUL{_?qzxceeD)LF5t~ek3oQJ`{i0zkDa1KG-1AMm z@d*CaIW`F@t}GXMees^POKSI4Q-=cK=#iHQa}Q)3?{~D7Bg#S-P~m&)^OrO(=+bY8 zRg@SiGc!ww2uVI;@~&OX8^w?ajbWgEU(|j#ueM+n0}WctqE4t_?fz>N2oWqzMH7x- z2x;7$T)8|DZMIj^L5E3J!aYLCfiS&$EF$W)BvgONb>Qe_e~xEBzr*oPdY^+R{wsUU zsN59kXZfOGsE@{*4AQ8R24B>lE{&VGbmw@cySVD>gHe7n%i7}?%xu_w^|`Z6-DYfw zQjfYpz{dBrf1TjqkmdZRv~jxS(LTG<1`92>Fma42Vsw8T59+#6Z~(C1#ig?G$8CL% zPbJ5L?v75q#Kd2%0@Z2emW5|%?UUkD{@rhs{U)SCLEst$$iQz?2iFf+O4+2R&|*Jh zKSm*Tz9~yKMO?*KxZq;EEhC)T{6MPge3kdT<{erjxF_!`g1soP99>ZK>|V@(wSzLi8DQ80>4L=P5y`cHjM!$jh{57 zz-u5&3-SYkc{_W-8mjzpknHdJg_7ckXX1J3!m^O~2!y+Yn2xe=K4K~H6*zbJ&SIM8 z0T+K@i^;{v*Y)y`@hku4P9r5L+ySgpdfljaD@2VDVy@5ng~V}?bzu!vBD3)LRJKBR z>$S2`w3WComKGdX4*wpcn^bdoRy=5s{i^kMZ@@?W4+r)L5RGg3g!sVF`AtT?rPU$+ zF^p2Pb?XYQ&U`<%LRgx%Ucrdcd_%u8f~s#A*;1sYXOoJ|>iJ0_QqsZ;xmqb8^%%<^ z+jv3C*;k&0I9g*D#R}gQZDguG%is^Fi{_B)X0@dtMxz-KM_VEKI5^l7^mMS{L60@+ z8l>oU{umSp12m%27WSp|_2QirKvMPia|Q9#3jWpp0JOK|J6oIOo&_RVpc^M~?~*|={R1WKCqw;Oz63U&-? z8(@Rh-{7e;q^e`Au4ADPC!}lWmN^)KQTvSW-qJ8vHB)Sl`z8f2RW*aJYhU0=ZQ`|; zYFYWToy4LrB*-!at4~wms~3Xmn{|`-d=X2S>YMehw*k4I_<)=%Aa@GL4KfGMY@I-j z>*|*6u}cKG)WSUvS~n&D=GDW{J#TAdY6J9W;Q>8@cIR3gU~m%{j5omW*|9@qP>wd# z&7k9LMUdHxK?STp0Eh|T@Wehg8+FgGJ{_Z`@T?4pM$4sle9yzOPf_)`>i7T?Z-@Z< zCQ!f703}mEDF^Bo5#ZNEGew@VA3?Mfr;WI0u}{EgEj(r+(^RwmiynCRzSpllyj!Gt z1<1_-{#*DF&?j0hXWTge#>dd~)tMFmu-5?C%~$OV4%hJLeR6M0)!(gvI>Qd#HbJY+ z`p2}3wS8}G)C&(&WqQHwolNV1WgZ0hzBS_Z(ytze#IH%z3v&)rZ&CW0wwv`PJPs|& z(e>3Qet$+EMQ2c*IURg1-vN9%L1$2A?cn|Ff`Be{)>t9I7p!*-Xd9BMGfZ9%K38Wt z1(4(+0JM>QD6JcR9)`O{O2827hS6qMivYml2Vh-;*dn!0fJjul1R}v7tXI1SaPyN4 z;Kmc9qHOx}F!;fzgD&Uo7SkhO4G9rX>J6yfq7n%ay|+)WRQ&drDOnECcne1Mea1$M zNVzc+cJ}POR@}?f^OP_D_D%KK=E_s^dxZ1kQy?qxS>5W%ba8o+(#u6Z-yaN~ zYc<^>xFsa=PlwH`F3^UzokZy|B=84@=+zn!1g)pHsWW(>W4GCDvY__~1edAbfT(>Z zNZQp4mtS`t)a}G3u@;Itp{y<*hqRpx$t}}4YYh{3D4V%eaCOT)j^ zH!MKD>rN{q2~B9$W&M#4E0Kp6gN&-BE>@*`{C6w~Gbj})9&K)V)dT~N&x_Z3fLdgr zVEFF>PN4Zz_6aR;{k#72sjL)Q`^v23sP6zRT2=;Xjh}jD^(-MkJuI`3o;~DA0xTr_ zK}3Z9u%YO%p@Nc)<*=c2)wgoh_t&bQ->Pp3vxpT?KWb`a%&cZ=1-7y`{r7jM_6LZ) zft{(1gS8!q8<-y`ur;-_cMvwwvjefS0aeleYO}Jj0qTYhCiWm!cJ8M_+kcj>LRJ48 z^#3ybRK@#*`~QR$D0nrtht4bklxUk8fUS%zARrcIus!fZ-~f8d$ph5X{?%q=A0#|DpAtX#(U5%m0VmkT3)YHg#}e6#o~)hI)X% zfX_g{p#}7c%*xg(R;JKOWGDeoMbQ8BSfcVJ;sM>#J zB~ax3)C*{^1Mz;UDgOuLf0pFS*%?CYfF(rp_dGx`yduQd6j;J8G+M;jXp zh$S>p|D&$^X_~*C|M$ZFFC0&)_5bVD!S>J6_9q79^v#qUESY6NoItFewj2-#H#@ZX zzpH!aTz?Wnl>@$2rlavhI`{PB;aY1DEB_onNn z=6pr(8&&T5#y-2vI*WF_ykSS@uTGn}9NSod>=FIoy zl5Q}}<_X5jH=0Ma5dv?D{dUQ;a0Fs1F4|b}QEg!JEy7{hDQdjtZQ}h_IQp?gxman7 z!i~}ILc*l`{!>Fp{LS56B^lv04}v zfiFQ^jRUV_;4mq%-19FxqLzuCPb(4_&wq~#X;p5v#sA7|#R+x$D_uyl4Eh+F&j~Q%8?7jXe~X-;p(No?8acsb|3( zR$nHv3gTxZ3R>PS=fl>f3YGXQqTh>i?IVxG(i3$HvvB?#EwMQlMnk6YFoB2t@eLih zRo|vrBLJrbQ&7;vSk`l6_{xO0X7J-3W+@lokUQ4{wfrhigK=aN&X#DgIPxJ8mVb5g zVc%)%Om3E3-kFUk;jA|r?oI(G(cHx1_bLUsRHq^H1fM3gKur8VFs{Dz4Zm@%JW@O> zts3%c%kOwh*2q*E0X0E62rq=nxviB+EnP1r%znm?PV)S|p)$k>xqeai!nN_EMWu4> zk4`UoKbQnqKl>LOtO}UV|FmJUZh@+>4D|ftPXsG{6s%7$K60^g$<*sKu8y4(A-r$W z>A~+Vj>*9lZgnp4&Im=;Zbje{m@+{l7OUURJ^JYoGH6?Aj!ocbc^1-QtCg9dYhEwg zVjF!GA0yJbjM>#fFg5UcB;?rvYs677Qt)eY5$E?rqI%^uk>H=T8 zw{6C4vyU%*Z*ya1&r~F|>h*=F_IW8k((dW>6u4MXblod_ZnRC?CL-Zky=Kd5$yFTp zfT>{8muA`CNaeSdTt9cJ?K#JT<4c_4H9V#`fV_$4W8$TKyN3Gh7-D-*ZAeNo$;-hr zsFeN5$05k{tC;f4Zyj|P_=w`whTeJaH6M0#R&~E|8PrK|yeF%wp52>HedUrbR;6{M z`WB*&$4ltWs(Gew>7%wh`ac%Bt>t`?+?Ok_QW%RB59iv$Ra3t+07I|09}7s={LY`iCah zjyr3n%FV=&FPvsKMhT+(C4sq>yED1?>f=Yj5JXP2>pu^<9$AS_1+v64swo_o0l8de zM1=5{V*AXmk%+YqjckSYmtK#}Iv%#po*$W%I%IoQSeWd8<@+It-a2NhQ_m&G1V$O`e%Qm(TrUH@Z(?yqnD2ixcj47Oh54?2FFtR=r#Du0WB_jeccZW?p1? z?&D{)5mdzYjV$^1)bNv|;}73cxXo_lLn3AczFmqk635vwTqc1DRCeypG-26-P({!2 z8nCrYxr3xd<2@ZQnBx2!7O8`BJzkT4ladjhuMsG(E=9Ir2$D+vm1L-+r@UPppmF@p z`Ma1-6^>m-84DA!OeQ+Y>E}#fxwjB91oeS}@L1JZ?HRfyf+aIs`wW$PJf@fGUV^%1 z!|6zfJIGMf^@&9tkCq1YS^EmxLMvGDk^5pqCs0mh>t{lk#<(ib34Koz#lm+6Y*UG6 z`(;xVvNeSlYXsimzV7XMr7vx_g<-&&A4CvFtpEFkqZRo8rQMcMb6aj&%1lPP=u!)d z3q1R)zA+~&ctho>0VnrAdRDpLE+69eGjay+BI3O5zLKgZQ}ME!K@#=?W~`jjT6P%| zHqL(Z{w$aMi7=z!Gqz5b9{R3=KpLf^24ht>?aJYK*RvoibRUIf)H-tm?djxHqTPU$ zs#lF^p96VCm9L4tDfy?so8sRiqOiGt>8HIrMK}7ccTrF!_g2>KuZ4NoK_+ zN%<15Z~13f=Fk$FJm$r^db{2j>1=R$v(K$~S`Tn_w+?>ecMj0>2ye+~~QWtqp?tRbK3Z=2w zbJ%oeg%?K(5nt1kxs1`X43zUsv%vfV_^R;Xbes_g@bhF<0&g;1cYPemo`sYVsF)Fj zAOWjjXdqV+4-r!-v0{aK zc*Xw;{brZkFO~6#Ts8l7mh2K0kaK$u+nYNOP$q8^1@Ue zsY=AOmH-N)-{5_+8{$S{T=cgbRsq5e#X-x6g)5CyJ-tB){dN`T-dAEOkF(!~UICOWlO7?i<7~1gj?&i(zx84^; z=>yot{#5C@jQHka>gU*nt9s%4*MTNiyjt zrr-Qo$-7T04c|PsFW6SlMtQvsyZc$wZG2^Z?eP+y(2!0?WAuMpLM^P*WrSnDXM4WO zG>zCI-PYecpA>=Xn;eRbA2EY2m1#z#4qLr2YtjYBipKEV9;qBa z0iOV%m;q1#idw#V(VzjSI8}E@dV%zFspd$jXl$%@CRTQqM9`bp;|YSsD8(d41lYe_ly4e}cDdVt`-gixR{^ zhjN@j#;BSfq%Fxh39Yq0tMFfd&I+LOOU-j~U-o;30Q=QBoYY4neA_(aU9VkGJB&sc2H z-PV?-mK(p^CRYR{+fPq^{d1kit}{SdU1j9_;9A{|GTT-?i8B=SsUhdRg*jkZh+bzh zt-315ng7$D_%+TU9O3R=GnWv7-XN}EKM>$Prs z#kY$pmEM^oIovp?Uj(l%t<0cbde|<$DobZDPGb1EZ$q1w&Ya z?+1J%J{r@8Em_KYnJ18Ir6SjBzn*>~w3>aIyIK)MO5F$1+>P`ad($PC@J2eJ59-2y zwU~=#)wLMsJ}U7Ecpi^ll^1b#oQ4%RJG#$FN*ql;tkF@e^;H9%_ScH5=f{=+C-^vO zzYzJXF`XCnj~hDv)XQIw%5G=qjc$+WC4UATGre=8 z|8p7dVchDo3ZvR9Mp}>V__mlr@o_magv_R@OL++;MzA5pgGavU}ReF)9 z!`?`(&ftwPHz|=RddV;3r^Rjd3akfoN^L518NYllozPW1c}Rb|*nMv}(`xAQlmY+I z`m+P%%!;Fc=X-|YNT|P`w9cLFjmjE1Uz{OfGe=034FD}d>=K~00JLahEzX&$Zw- znbOLMu6iWf+jEduZ!k`uR~vcj%>W^_3~luU#Ct4i1+{>Iwt6bt8{G6!n&@XA)r&I; zZ04A-h4U}ZZ?ZzvdO8m7x}SNBw)d^+fA-4qet72+F$HwO^gI)|&pt8#u=A2mQzbS= ztM+Hyu=qCIPR$;97vb1}aNZLBRU`Q=p?wGNO{C}9eRyrm2F=_qTl2ngKZ&t){TnKT zGlQB{w!Q-?V3f_gE33>+$xbkxgO@sDAw32zv$!c1sRxi0)HJ#6U3jA6cYNQW6{2ParM&6r;D!KQboqV>Pm2;|g z%^9_PgGo-ilJL`^OL{tg!cBjbta*E;xPF9S?`Zumt6xL-wu;J|KFAi-R>?Z}fs)<%@5;p7I)m7r17 znN@ZvvgXZiY9>uo-vOPqR5MJ%fV&pj_lL^9Y)%Wx)A85Z=?Eqs-J@3SOdhehJTu) zaB7o4-%8YY4@AHgN;V;@>0UxC&hV#BD@vfx9@-}{Ik2A-OFaBWrrgTvbLyIR`oXGO z1h7>?3d|H^=r7~2h-gyVbhEt+Kflv#A^M~>GvR>47snkv7J`1JwP75-raD*7l(#K zgZtNhUGB0Db@?A+;BtD5?p&tH;d&9N3rHE*lVy<=+UvU-lEC@?vf&2a!3g70n(M4mqa8s)n{g0fef zPYFk_-+nL--3_2oD0o5#M8S;{&{*I*t^0-h=YL)Wm(pjX*69Zicvoo_KEG0^pRz!6 zdA~S>cz7tO2hX|QlH$eLujWfbl!gUv03Ss4E-=aLQsyb))!LQottkL!v70D!W<9W> zR5&j*04>^#Cac9&$I~at^b47W{~-}b?UGmv7Pv=@8$9Z6HJ9BQUi^Ntk7g%5!=p-Dt zn~TD4m84v*1#Ay;8)td{Zy|hRZ9F{O>WPMCpHIo+XJ6!5NgJkrJBfpvJ?r=NeBN=m4E)F{Ym+HiQ@4Fl}NC1H60SorRe1$!8=1}mK> zxQ{|V{^EouL+We)?xJV#6q#~$J~dUXogD4=FQZ7~wll(!z*^^Km2B{Ez0zD3`#wvo-?eyUWOK$%)V?QO=u1#R(N7aebEVamGX>k0}rkT>)Wy0 z_For-VV};~rTN`1hUO7I%^5p7q@PwquIvhuou%AX;O^J*8<(fMN3Ix~^yv%SnkczX zM3J6p-Wz1Dn%^d6kd?Zo5Vr{mkJ#J3Mj1BuxG~wIHzD>eIo+I4l+A2~*PTRYO5q4=eFt*?clX|BcR#;e=PGKd z%g*mq9fs-YZWK{YDyh2aY=JxNIXj(Gli&5mq>F!OrOWEhv%@i+_;9wA7gUWYUdguc zvLUg=8@4YN;05TcSK{Gn6Cxv->X9l_!JUAL@k`tLO9kG)vXV~e!$dxNwa{)oybX9~ z77cHhDRN6VXn}UpdbQswRj@kz;~2%#2Z)cnpxWm5dWoL*AdDN|+2+sfz@Jxv_7*F% z*_`-8olFjYR(PaT*u*t#69(9smV{jCM)pRC>JH9D@;ioe-y~Uc(S>jFtCK-tpdizJ zE9t2vqi+<}9=D+>i%Q0M-2Bu_U@T?OpGN-41k6dsvwk~2}E8C8B}P8jDrsTBB73Pw^-UE)~)hP&L(XE?r(>Z7mgqsRytj&j10 zwW*s9S0Ztez2Sr4%YGVKORU7dL$&WdYn#JCwJb_E{K0D<1&@;_lLAjv5G&=a(q2ES zIzoc65-*v@^$m?e7L-jeDs>`&B^MwG1rjm}L*Mt)X@yfVp=5-O%TynYWMzgz)M-Bd zB;qUO{dy*=WQC5c7m}7VBrVHOsa832h&9K&KJ=EMec|iK%AT7O$#twhSTHeCujr(V zDgR8zNwqEx8B^Y5&1SC&?yKdbGjdijzMa7-k@*7eHFf#`rJ7Zf`+Djf-D18np zrG1sj{pj|w=e^X2ET_P!A86K6ReyBHGJ9ce5pI8qoX=vAv8ndo$uGiewMw@-;WiN) zeN3+t{DHD0%Y?Frr}pP3(h}%|fjP)bu!0yiU82USCQjv*o;`Y|jSrYo3T?wMtEJM7h~e<)7;CnD3l1ICy-BP3ltYn#x!&=6Ngsy-b=kV7|7#E$+{TAlIecr=FpUiB#!hMX4%>nNB*5QQ2e>dg^T z`R7oA_FFP+C?OJS^JpP!mrhePB^UnNsE;=Fx?uz)Oq{u$a%%B>;U7a!ahbxD^JK~J zbltlF1*1h5Z~Pd-B7u?Ooiu(WLI!VOClXa~zT=dQfS53Q$sY(RkUerTi4E009Q3>@ zzStF_l>alz+|P6@wy1o|=U2cFCRD?eyXDIdpxGH0Jj@3`x7iVGp-Giv*Qa#8NJnr84gvW2k>RI?6Uk0Zl(}Fs<{B_bc-+>^A#9J*a20=4I0OW{-g`RTXdRnFyHmL_*CZ`PpHG^D^fv z^CxKZ#Px5Xs#R*d%|bajJm%ihi7&I~_eo~5ZDC0+*HZl$D+urZb>Wdi{Ly2M11|5F z41W`=lTq!2Mh{lyLLwQLIG)o^&s%>u@;zPe?|LTTPvcwNI1*R^Gr9r&o%KwTpIElL z8H4>rLTzFmz4hJ8^UQq)`VZm}7}Lf|h9g5OUiz)xNT&!oh??#C zZY16(AylAasn>Ckvhn2mm}AUZW32R>{|D4TuQ>ulW)==ZKvOJ<)cqwF#hi&(URQ24 z9`q{xQ%?6CE@Z)3w|KO1e;{(|ySE!leGZGnNhkP`_*0~~eNGR__AM~-eMtzvJ7wDq zBh5Y8Z_^W#s$SCH(>U%EdZHok&m%-3Zp}Kio2o>S_V~vLs&*O)$kYN=-ua%6;W6Pb z;BM=TgExeX1%yVR>B-@y9r>`ssU)C}I$7W$%`_M#4=pPlsLdBSfD4) z{UDE`GjxuNXPOfCDX=TZgUC$Ov9yt@hPGG+U{0cZ7y*}M&qw%9tivoJp329%PZ%23U zYzKl+MftsmOn(I!uc8ouoQcfBJUw?n3(`0s-|$foDOwubEpH^7XlBCW##k#BpB}D< z+D(+fg~zJm`<#P!e1@lJ=yYK*b5I3YZy=o&XqqF7n3)#_WEiXo2a*iN;izbnmO`58 zmx+52@!4+($MGR2^Q9r`@I^)Vr;Vg{x8K_0V7>H)CMl-Q*9((PJM38&dwx#tbT#mf zKP5ZXje01hRbSwHK62|o9X>+majN<(S5%Lm2;(H;=dm-2uP1<(u#Cn%;~T?rZkD2n zfsy<}-CK4nT+K{%IpFH>Q~MRsZXQ_-W0J>lftiT{cz~WC`==xuP!TJcRo&e7wU!t7a=xtPaoOwXa9Zo}k^kxL z*z0Ng>3-hp;Wp7L5B6bxd)n&h)W!7y40^gj)l#W`(7c@XI-{QlJ6eqZ5|)R zfBSaN4cwcaURo+!e`r`Lvub&~!nbNUy}CI0 z&?~)X!N7C_IwQGsp2PZNDcE${z1j?j$F3EgYSnUi_5GPZ!txso6daf>j=A?Y`g=ES zdjqH9y~$wHIJ3$eD6|Rqu7;sJN@$?;@GT+#0Yey8*g=U(kCNh7vQjCrko&QzsX%w< za&nr~Jgff?BJmW-eW2gYUWdc{zI5V7qFW;Rw1N}VannNE7b2$GGKZcs>MsOL6p=~u z&&ft4#fS|anrXn}h)MO4ZCzED!bq7X6{x-(l&J(z4V_k(LQf^Bfe+u>RBY1|;RrV!Y(ehP|Hge@v_Dx%p09~RD z4QeW{yK`|lO(vc#D5cA-N=v6EAxMOH*f~5;=6VRR#LfSIScQ9PNJNj4yQSmEd;+n- zWHG7Bm&tDplI7n%@CW9~NL&{F?FZz&} z=a4mm#FQy=CJ^}%(RtF%3QYj7Z{+Oxk)`mBH9&g;Hpqa%9;I!{p~$OEXN5162Oaf|J_B5ONqM zOu|lKZ1BY-mU5Xr6XFJeafzKD3pfNdQRrgTJyfkMr5*E_$vBDyt00l~<6FZ^c*eJRnuMJAb?g`7ZCKEN5iW;xyMl zBqmYlb0Jnf_gMg1Y`hjVq%YrORWa&H4v-l_{KFtwe58}DYQY!Fviz_Y9n;pC05aLifMN$$NCthq z5-b{!3f3D7O9PBgLY8r#)~w`qHhc-wRiMz+3q3A0Ed z_Q~{I6h{7AoLcPikcOD$G`W8^fn<;#+g+CW3zF5w-PZWOb6#rfrwF5yf%`Snsq}pe z*Yp&nc}LJoE?~uBvV1LeQf_`ex>GdgzJEfI8G6Ea-a25gY7;P>lb!tahQB4YQt%Sh zWU5bMeOfxs8$DLkcI@U^PYUlvH1W3~pJyE=p?Hvb2RXJPyHBY}+Hh;Vc;z}y0p487 z>#Uy8Xys;bI{7=xppBjaivM}e|Cxwx2hY&iKBXz75G&FE5E$T%nM`P@!vDfh{vtxg ziOrv3zkb$&>>0rN=VJl6tEq7ct;E#f-FI8@b-*_`Wh5Hubw_T^dod5TCkpFo2lN~1 znf#YLwzroUb7$wgbM3u_V0j4qvJ>7q8x!{*?=SYLOj{XkO+7I^AvzS=?wFcx8J6Hn z$h?y*O+XMVAgW9zt}=Kno_{BvdG~x!Dn<8cp)B(w)cS)R-4*Cz&;NPn0(yDgr}yDO z{%Da_l$~h^G;rB0Ub{|G+-aS+j%(*fkf;YkzKOY znOGy#!@k8j=VfVf?hKxnhTp~Wf7vsmA$~^Uy>yS}U^qEE2;TSN_kUyPZi%fWYSls74~+!^{flrW09>q}@FFx(e*BcYiEa7S z+g-x-mGM9FfZTHTC-;{u#PJ5MK`$QuCH%kASfJj138zE%#M8S*cA7vOtn~u0sMJ7Y zC&TjsK=vsJ?5fYwq!~upzw?)>r2U(mWb2I*a{^?A{)GUfL1Ct%uiQVIM-RX8 zcj!lm(f?kZ8y7U9=3AL?s_uZLvz*g`GMqxF_1@$b1w$|v8LKu9C!JT`;2Di5Bz8O` z_P@l>)e)!a*(DBXRLZ{!&z%Z>1VdE+;rJ8jp8Mqmp)&c`j~DUG|J(L$dy7S;+@#vR zmIFa0TTp*}lZCzbHNT>S73_SDzIj+i1>R-lu_d|e3*TGa|d-EMmzs|qPnkJVyQj9bk4Jgw4o($L6`GF-@%?ZmaNQRkWiY@MWwHaPqm-p!7?^yUbTka7O z_tLYb4JK{w*}^6uhHOC!-uMgL=$pqs{-(>GDH`0aLXLEBh1U3pb^St&d3p(WzGo356ktrjKxSd zJ#c!M!0&odg0GmEB(r6E+FCx^cf{caZbzfSe!3{9W&V0w6ZFoXp8CU^Wnc&nl7>ix zWUc83@w|Db=-jcMhM@LZyboXUz688g+|^UeHMuy%wAn+Fuyn;#ki+y*L!k~9ri;E3 z{;6z2jy`&*h!(6?5G_8TCay$oYTrVMKH60nEKDxA_d%X2j2_*g9p{-Lg)m7U z+Hso4#mV>RHa?D@kaG7A^Jj5UqUJhLS%;NHjstA7Q2#qpt};55L(G zf`}z8Xwhb!erb?P`i-joOnR#qBn-&r68;gVWYHnm6gmOrMcw zZzG5q+jb+NpbiVHA6-AfpvH@nc;Bp)jL2zc7HreEzAJF9K9kPfNDamd*QehYvG`*q ze0IxbK)-=#;n+>$@1PSaZn-oIV~i;jd9Ze`MRmO@pO4n4M9zQA$pi~_0i`n;$29AA zlkguKgf!V}7)*!f2FZ}{a2b=^Wouoa;U*H<5;J4F%6S-eQ!F1VZV6(eW`~Ib`F{@j zySsLF*KOR9^{Mw_i{ga|#1g1(33|#<4&!WW=k%)gg2ckZ1SAQn;j__22f_r{33F+Q z&_uB%$$ZIN(OhchgG*Ys=`SL6e_p=fka980XYFpwWY_@v3Zj4xJ<(1LeX zhd!W3A7jii&uPzL1@~SXVFdS%JQI)+HiT@y3pQS}3liSgwhIx~pMa3qMO4}$PhydL z>aSi16w#tb017n#@Bz~jyWY=J(#V@yiatg{1H3h|?N|oB>n^$^DqV4U%i}e;c&_B-AMd-RC4L(fOVUlp2~u-3NE$ zbu}3$JlN?Z^&ww9USzN{lkW7M5LHCVQ3ip}{d$l?sWa|4H7FSzq0y-iEs@?8_e%h! zttA#5Nnde#9jnT05Ip4T)n5~zGZ>cSGZT;*Bz%&lZ`g_4$^3z|60sh8Ii30g#`HPk zxtw9Q9ha~Cn(#`PC_4GDbsRZXlyls-K%>u+X-H{k5`yQrG3a(XxUuN#X#x^B&5Y%v ze@?9XhjxG>o>3gKS=Qw2>*Qok^|&5cm@Y`d*Z=}|7RqV`)!&^7a(MVAx`YaHYlXF+ zO#0vXpGRqMGsPy318$NN+hpQr?)pveXw7(M>@n_4c%^gf@-amA34HfVP&)}bgMK;y zU3d?D3aj6ba_u)}T(yFtos}%7Tt2E9-IhsL4JUk;b<=Jv)~MnmFGnw_1n$2pK^5gb z^obWpM$Tc<0!Wmj)09dKQy)xrnxlhSC`P$*6cPH^^#V*ps)k!kA>>gMV?DL}y6Tgf zQ9yQ5zoOBUF*-4Mn+ZAzdZlRWTT;(4a$$YLa7re@v3^Pc!LtZ@`48t74Sw)_0gau( zgX&`jQ^{VFl`}MU5)6S0VP$l`FCjv+m{e(^iYXR52`k9!r6v4<^jQ_^tn%gxBY8oR zj80?U>WpNaTm2HF_x?Zda+o^8)-TF@&%Y&5uyi1y{E(;Bd3&e-NZZ8%#I@^-njop< zqW*b0l=LNl94@)uPq4X;(Zf;PH7fawF`F&RaQxkFyZo4;jd_M|?%U*geW{Ehax$S9 zzd?0o)KRV{b_(ez9PS+B^h;*{e3mb)T@?CbiVAPQR)%angX)6y(eGfNszQDyeKA}w z?61rQ$oBdl&-;tsv~UW`4^m+6+yDnD>_UDPZQLKA3k%0xoZq2708ZuXMb!nr(g_QP zj!qC!GO9+ER3upJJum)P1>IQ%qf~gFa*} z5vhN}AIb$q2(zmUH%{?<=!Vx9-8h4*#aM3VP%xSYQ{=QbfLt?LOKJ?)gwsx%s+g%T zZyc7T1@btR&B0@QDNh~=VA&sA$^cTg5FTnGM%qO_c#-j;*gC~cpC+f#tdp`GSYdq_ z31TYxkE^I&&bL?Yq`d8o1=q66d>%L347CNyHodN52vRNle(k_XH2`fq+C&K7QP^fB_lmbViw+zWWvEU zy)7}OV&7T!!LyHsPK@kqUx~W_79R`WcsM&f<;e4WDy&7RKq*3jg)QKvCsUQREVS!$ z)`~*+0H>ao>ydd$pcq~;-Q^^8wOxP061(ScX>g(x+uOFwMmzMn2N20 zI#xP)^Yw%#YqNE%*NDc;v-jpl7@zfK6*p)`r(Va&iSpL`Iitb z8H=FV{I=llgGU?Yi?!J%f8!p_kG$kJBX@0KjQ2P09UA~yW3E{Uyb zvojx8YdoyXq}-@#fSK;<_ts_&m*WSQ*t9<2p%Zm`ww}D6lQqO{ym#-%RN8@9anHEq)O_+Y{oa zlp;?;W=2TKAgq?8&S1;*>@4LulWg4OkuWRcZgv1~S_+X&v-4h;B11+U4l~|a<7o}i zHD`2jGd}pxdBEQi`<#zTv$blS4tq>v@Gi|6YCNJ={g)HdvE3RG3m1r`f%AL#HRmaG zetM-1@_1JhC>WcO5I+Qn-1VYdp1m_K_b;L3i?FUoDgrq#9C>lO6EW$998?W4o6$Eax+1XV{P5T_!9K{h#Pa3rg<`lPw~+dbxgajf7Te{@yQ>pVrDL zZ4sQgLs#O5rt*zaLF-TucKBd@NoLLb)+KURcx6v)MgQFy(RkllQD&EcZ`5_t()mSY zojK0cvn<6*XqIGy&d|=hx9rt~`Lkj=1P+&dq3{InVN$?BQ(*7=9l)R#)}seKVc<_B$c z9b2pWT%v9no@a({?&$I>@rVPhgu4DVj^~@K_s?YnfdtE24e6y?H&kAkGQIRrlor%4 zh$3CSBGiog4JpxK3WehkdZS^mhGKsy_2x*Z!w}nEip2!${4cW_8?H82MdgpM*~5#> zRf@_%sTG1uZyh3caklb*%OMFa>Tw0sQ`3C)m2*m3K-SgCmsZWj^K0m->Z2nBA}jgI zT_@Eb=XKO(o4(s48n4N=zhV1|46&MHi;DIaeIs>e@WG-V;qs-7wZzBse~%nNYImHP zCKr;(OBG%rn#{#v&3VW)c|*33GmBsUs!gy3O!a@VL*JTa^|&lx`mD%|yVr)^JTDmA z55uMdtyV}{@l|ti|7E}se+#JpZNS@}H%;+7`z`-T&7A<_=1`2aZ9jsEqOx(oS#6Sx zDk&tfp|?D4QdBPUaabv6&R0pp=L>OIVV(tuNit_!iC9IW$M#UqMUt6?_aNgYRgg&n zet?O}&MDi2&d2z|{{L{-JP+SYFO&|M(j^7vz9NKa=0EQM&*lu{&u~85 zChkJ#n+Sb39GN`HEnbyS>4+^2pwd8=ZNSU0XC*+#9kX;ESy@t=W6X2V-M!E&92KeV zu}`=fe_O9k)A)+bnEs8+1E0C!7rpizTc?p^T@vi;BgV?g zFZ{&#_{=!gktTB^3Ah1%FI`4^#iJpd0=kTHI_*=(l6LQU1jD7zw%__jrCl1ZVXz9k zE5usYv|4GbKYzgaDuKJ-y2;VSz?IAr3cq<_z;`SSRBobDuDVnjY{+ozD=t5)Ud=1l z(L_EsO;YJ-;@X;IDvNM&7&J@!BBQhNs^7+tP$vzD4ST_u9SGk9-xS;tu*Ibi6PU{%jJL_&}uA{mMf@B>w`i?y56; zz|-C15xff`_PW2kgjH<;Uv9TN#RFo1&T$uh6YQ%gCsG`g_vn@`o<4T%RI4E;t*;~A z^84XuXvyHiJ^4JedT8^V5Yb}#e~1f~BUixY8I>mzEQUeCvq0yVfyEDBoojG+|CPBb zpe^zsvnbOnlP=?dqBRLO{mAaXa>?wjv9EN~pul@c9)zT8ys?ZDkIZ8TA6hr7IX;yaxn?-{PqgPs0grRqE z8_!-l_QM@4q4a;BQ6>B{V(+giF3HDQ{4oV%3@IC}+m5g6_Rm3j%yHuA>Y6miD* z{U0!mwvciwWuf<>5Y%^9=$cs=a}W5L2=qT99DzxNhD1+oIn!<*tqWxbDVMWEi8iGRn*Sx#tv&@Ja zF0yHe8&0zKi5d>Fi-{U`d<+t^7{qTqbIZhT9djAPZY^`mM4ed>@FD@BW8{){AEmPa zzGE;5V8zckh`6_)5wC!BqZt&$rDnr0@Nzef;K16GEC4T50~0 zTLuXhk`da2=GG;|gJyjLJ#{!w>XpQwxh21m8yWuGLH~=aBtvIVL&!s7J}&Nw_VpV_ ztrybD@`gtdFpi&MX=(_^Gvnd2i2XuNq@k84UPHaTEekXZ>P6DI#&XnpA#Lnf?urm{ zTPDFGeNW_CHsa>LM025;eT~qpGUGAn4BuFW$H8iAx-&7O%9_*VFydx`r)xua02DmN z`tREQi__V-fRikU?R234p**3h)rgz#BKwR-Xi6~IdB76>#ZuNaY%}{#v%oR3<8szh z0&5N&(M`V3G5!q@OPbvp;H(?G_9KpTBC0FILw@oW!NRkK6~qj-waSXc&>g_2ZcP1}OAIczgWk4yExw$g{sv zt02Wnc@HvSK7>Z%KX*_s1W3Gc2L&V^dGdY~8)KKst@?8v&3Y`dh6u!6Nrh@g-SPN* zoU@bq$y)pP^%Y+$`)hX=2yrDIx$|BU8)w&CX{<(&CdnUl-mDGR8$dlA9B`U!T7zQMDGWZX9HmKYS zd1bA=jlsi`N?)hVw~`E>kvwuY;h$VegV+kyB6TtV^GqhN5O&-ImoaWL6jeT6B*`6i z@z~?8jjY{gcY%dM&ja6YqiO_jRB?D2+dPgO{S+E74NRCs(OBWQINTkXE)ZJIMDg(9 zx$~JJd zkB$%atSDe;nZ;HiXmcEEQ$pXH02kRSOs$rl@{boqCL^-qkzo{5DUfeCnw* zp_1%2nV}-!tYo6HYd^`NQfM`~tSoP?RHO_xp0roaHc;Yk=kf>aF2n*IbkPK3F)1!4 zF|JaL@nl%tO`rrG?ECWehg+T&pP(u9p345`Ga!F&DrEJq2lf8%Cpnlo0snrELn9hw z=|}Re`-Zyo1p;iI&+?vivUKkZda z^^fih$^3*8bIZ%~cWF?As`3>uY3GQStP8)V?w*QzJ2b@1jbpYbOFm$H5z#g~>wlE7 zG12xqShEDC_~Nrurikx?dN?=$ttyA9&+b!pPhiIP^RbA}WLERj=TqANW`PqTsoI|W=ZA`Jf$w{$X z3zV=XSI+uIllE6+DpzN0BPNy`QpH$-_V#C`tk8luw>2KQHEQ^;`Qkl_YNV%%Hji3! zw`~q6wMW6l)iWIYw9DnyDv})*8HUWoW{do6*~!BH8|44>I*R`T^5^Fa|LXy?OeDz*8NQ;Apa7XVb3kC(Lb$MnS`!eJs!E z;&or__0xl5qvPRRwb|sHTiKk$83j3-d(a!sYz^m4gYO+T|!e}YqQ@w~eY1!(~v67|HF zI_TQlD3rsr=`QcDnBjSa()Dk7pB)`cJ5ZnVM@IANszEeswE+ zqKIBSf9l?*!0W!h4vm?lMv%a5`ay@eNUMdjiPa#-B@REfYx;h4_Vkg$);NN`PdNs_ znLV&aLw;>_x0h;lLYCL*Pa~V$7-onT4i=q-1^%>2kh%umdkkO8S=kdOTXCek`v2>X z_w`%!QNWV&8Cz^^?E3nyZYW6BtJVVMSRmod5xU-<)e3S2{DzGN-4c}xi*xbTP%t~$ zQsR7L%0bJ_)dYs?Y;6V}YN2f8MYB<6`Pe7xe+DSZ}1B(X;u_sHsxfMXHxx_L)W zeZ&f1|ColmJKQ|w@S^Oe>DU}Qr<2F`mh0a@^mRW#hoR;*aMx=KdAW8=IWjfdeviar z4kC|*JF~nE0l$9%wdv+PskNL8F9wNf3r{M4sV8hSNj1(sK1F_Rg8nyfTc420e;zbi zy#6=oKQFxSl?%uvTx-Ms5&Yl3PgKa_v!B?XhMYHB3=#uyDwOe{kdJ;=0?r2I+Pu1o zp4zJ+4wiCOHviMl$x+rx!iojvHu(oIO%r>)GgH0$1ukDsgKx{CeZy-n0g_`I3eMrB zBT31$=EPVcwI$39(E+Wu*yAD8tLSQ{+I4Zt4`y{gWS&IoV%n)!cQJ?IL0Q%|I0`rB zbtzN!er7udSgUGWZW_*%>E}Hsv|QI$C+1w&n zDC{HM>8ql1H|}-8Y#L}8vZ=T2h{ofx?L+o$Z&u&WHGNu;{Lbz-Z@iDZ>R)wPbMj&C zcIZTR&d`6}Wd6b$PNNRc^M@b=RR$^$@yhxi=h;DDPz9%;~`H@Ak`0 z+WC#cF>+b%mxKV7Q3@6R^kUarnmhh86>La+GIm!$8W za6H5KZd{#FHJn6mY;NUnmcFo0_+5`8Q~76R;nxISk0X1b5NEx%ydfbphUb@HKZ55M zVSnVh2Q1#_ov_%Sv#bi)pWChSj|^$S6X&Ns@!r!C4h9D9YBL?=`6929*`I9ui9{Jj zA_(BtD)Zb` znGXBmNB_jJ2>ue8F^U2|H;MZg=We0ZqK}n(+18we_PoRsF(9(U9$L5fgDPkjcgr#4xkjfb4`uROqST6BY)`BQ5*)1Fw5RnBTs&aF;8 z>8y;u9MqtqC-F)-dGomJ%1x_Y(t5GJ(mUw5e#HevdJC*o67IlbcZ8) z47>egT#1F}mAou`llR8xcd|0CtA&{s z&|maDmf9Zn+r*2>vTe4|&77gloT7wVV7njC6)47P6pE2?;N^dwqqb*~0w}32%Qvt$ z)3O-I8T$o3CyF=YkT>O&-{+8+u!|uW3Z7~W)?Di}-smLg2%hW==1ssbBA_~QmT5AS zxra}Kp-anEYLN+y#^rjbgfl1gTfQYDd6{V1hMF2yO5WLw0z z3DD`+)#*pq=~vL{XV&Sr)#*oI^WUkWGMNftO@pPG;-S7gKF&c^5p&z^Fe|<@ewrK4 z*idcGm)(oCRJ;4u^EKsUCay0{Dy3Iq07j-eay{1si7F3PW^bRP5LW~P*o&4GAUeb_ zq{V(53P{=hrjcfqi_Y2!E}szATXSa#FR-xz#&56saV(3*8tbN66;MO&2j-*zCmntk zNvGBAq*0L+t0=pwzX~n0HMFUJMJr<{wY`yx!O5BZ1&1x1%0XqJx6d9u9cSBU3@L?Z zd;7#M6Ki{WoF@f;8+%kx?cKI)j^b_{M@wA7$Qnn>kJnulAD_JLYiUjTty8jT3po4j zQmD{)-4QsDKVo&UQ-zoj72xfr;pyhRE5M@bw3$LjD^Dwv;)ISk;+HHNN#xKp`#P<{ zEs$c+4^NSOmYrgpuS!`Mk`f1yh)-#(I3(1Yugr_!Ci2`$1}(T4-6q@OkKd?11rr&V z?R_Mj%Nlm4PaTcP3n-T+RBYs$k5yw%?c1I!uy=5jBAox)z^?Q$*VHTrVDZK$p1vS5 zA0bu^vG8lQg92%n$k00U077>pDlJ;QN=3YrB5~?gP$LihdHHWvMeNkCd%X^e>6v3| z7lcd4U%Ebyfi}(=tRHS|JzN(?q@q?b!0t1GPeUQvUMAU7w7s6F(R zU|?k`*)0syk(jK=EGoXVLN5AIWtMNJ+Vf?SyR>jOAinrg(Gz@V%Ul2&)#Fhf$k^#e z=B=5s33C&P7_${Z!N-@(PX{Fh=){TQH=H?k8oF)u)5bC(nW=8MI}XQ6Vnys zW)<|IKzaxJYNJ`9gPe#M$AJ`s%gaj_7g00UyDR&1drewNK>BwNpLsK!ld|?4zlZrQ zm4vFcz)+&1=62Nko67JEyV$}Mc^~3jv1u613Q5*5`{4>{8s2_Y2jx;;teZEE4lA3y z9e)l;7)!h}b-0$V{f&Q16X2MUbt@aqwt#i6BSlGxx4$IL)a>ey*O+|Y9fj`zarnfQ z6kmDp|0I^S(jn;t1*n{ix8jj+gvo==HmOv@rYzRN){w{jfIb)RDu4y1`j&DdsA z?uj&RnXA8_a@EuCS84=kCFm>yZ-oT7$BtuY@S0g$Nx z92RL4#_cfU;RL!bdDz$I1B!MWTi2)U6sU_sdz!NG(^68(Cno5=un(BH95vh{4J`!r zxBmXw6I+xYqG>)YsT)$469bGHxYQg=3f)^C(!yE}+3O)oqj5CJqp#&Csw#^6w8Sey zvh`#72{GbSL{fn*rHnusT^GnlZzr|Nz43*of38ww9B}Txr!J$OGx}*x2*3VeCdD|$ zZD=%VuHG((VQ%xoXeoN_mzWRn^H>h?ze*E9*mmmdvrk-Q^}_Bn-&2qK&H601*uVpQ z458cX&W&L`img`pH!iSTrhnkN-r^r*{R#{VOC4%Rww){DF11W*Sl`*|P6*pKRAa{I zv}|WyG#N}(*Eql<)Zo!#EsIV(e;Ax`RFdh9K7@~eu9#e)4%;^FzD}W;1*>&T@*5B? zS?#-*bjXf&=vi0;^X{t{&ehY^&?F*oXDWP-b8REm>oZEtg2(Bjntu}SNC?TQHSW3h z*o?i&u!e<;ve(WpQY;KBp^8-|4KYEnS_7uX1)I}<#VYn25<9E^5r^-2*B=e?_|Ew| zClD{h%V#^+j;9TX=v!DoAYyXvn7UtmPG-WvtI6hZRbM7#i8q$4;>Z zf_9;}*+(2eqp<`9Igej=Y-=XB7Ag432_C=M+=BZXkMi?AXs>`7gL(wz9Vc9=qNFdfXaPM7X zh%2$k7Go6ftPM9*PfT@mZpq-G#)uF$1{)y1D`G1tWwp5NDGj%OKJ^$1pt1+sDkPa$y&K zXvAWg`aR*aA>?Wmr0aUa83~y#@zu(jx0b_)rH35#ty_KM`#j1szC64Z>8Pv&Ws~-x z$?DuAmxh|8z|fwYft9bJx>@ZF>}o1Wubb1f`GYi%OhJj=2^_#`nserJgjvqn;iAI+ z)egmiB@TYqNAKG2F7CO`UEC3B{g9ndG8D`-fV`*RV8W-Eikm1QIaEozj3}x!9cF=7 zu;KDHJPkmhse@ei8NVNPfF;5r7)sC0QAZURyNwi?i806P=)HP*wsAs7M3Iu-?{bxm zBJD)WTW{Q88Pxh!Gcl;#PIf}JQ(ZTaBO?@DTO2f$($YfD4`(w$xG>irk&$+$(`yY?X5GYw2X`P&B~p=Zsz7-L`hr$et}aD?=XzjBI3e2NHJb1iQuN)b~apo!duJoM+RGOyfV z`VMSvVKJA85Yt7YM-}gQ)`XH^mJi#PRm7**#Fi<2_p?`ml{KGmpyJ^og`^iVmF&BM z`KefdJ9FrrW|M2RU&f!@Tt-QlR@--G$3aW%vkISDm_c5y*mSPW;IlK9;BRxPtKWr~ z#BLKn6!8Kr_Ek=CVafw*{LS?q^$S2-Zb~b+x^(;dM-pnn=Ca7#A63p?Rj9B*S3dG} zq{m#7lQL244xs6lkWG5M2NiuuOZKpfX zX?M&eRb|@<`FOu`<(5=llV6x&-RD}65=6Ek#|4}=ss~CJI!~I11lCHkHt6uV8kpsk zyZ1B%W9*+{JOqQ69`1-AUn$NKcduNge1pPObN84ycek-|$#}ZZbXx3~)}Y#o?wO}@ zky3J3dGJ3u!g5~GN8G%CVR+kQ&n3w(*K3G4G$hXjLd3&=U6vMdcT?`c=4H}-9^XQ< z2Hs04?btkZA2K-a*fy)N?Y?n}F}Xs&rD;CTbms^d!3(qrerBAc$5ZJrINv zt!@|n9NoO*%uobo5_0%}Hr-pux&-6D;!=uyBywyy*u7_V02rB<+nDls#T448R}tBy zxi5`wP!wdi?vP8bx0Z>Si3VHhYB>@f5A|8n?jQO_7bE>5J8WQe0H#id+bd5`_{Elu zvJPD0i58?aS#DM~*-L!O&s@vWTi9vmuV2G;#u`>FHoL$QxVnWM#x zT?HlZh~lSP5C}Jbkhf}`MxWNBZfGOd-+|N)g~rduUB?4a7WyM7`vSLoO=EHViCu?%=xTN*RpXg+p_DsJkg29!F2}(#&ioxXO0#e zPesT^*M_CiMy27NZ;qZg>2{wMgN~7kRR`}Wz7RCtTab)WRHfn-`kqCL=vARe%lu(U z?G8(yTOvh;wLkTcGu^{c+j@&!3U$6|0G6xTj+`}*zH7;H1p~ZxQ>o{z(VJErV~f(h zCrQBs46lnYz5WtAm7HL}#Zr=M>U{rbj~vk+^7G_2Ek{l!;j5}Lh6G*qw-odt1}ZhG ztFtB|UK~OXiJ2jkLL`#eu|Kl-I%Tn|(@pDlC|*W}-6;XiI%ejDvyHt@_j7nM3zw8$ z@fFl5@#{D0M{uX1cb1y)!1GK0L$~@L7JZx&U(P-a*Er`D>~r?n+$fSb1RT#MFie>{ zvgw`HdUxy#uq(0NgZBbO8*UEU5<9JwWyvRUw{JJ2HTQnqKN8mu^RUO3kEwD~03!}g z8%#{{OTOP1TFNkMV4TaxLmgh z%D9?gn6)LY1_1OC-gF=lBpP`M9-dB@oQs`$f6)gx7S%;AJ&}2yEl$YT?S|=iEY2=v zSd762OqE0LjWCe*+(6^p)mXh6KyaV82k-mBY0p)m+kV(A7=-D$VRCqnpG#xfUbzPz z;4H+~g~bWUp)N`p{AzaZ$qHI`(aXmu(kY;2$u0^>iz3f}lSj2vvBUTzOSlN2Wk}Qx zq>K&D?dsa@Wo93e9W3Uv3|dCh$eKp^o1_b88)uLNVBHsu8El=Z+ zQVCR5@=}RJIy`l?;4cG&Bl1@kA>UW!jyVrja{CVtZD)R0C2XK1=ze#FThj&C#?QQE z%er2j!47mm0?2!~cu))0-q8KbZ>Zs-HY8~=c18)p{g_a_Db6^?8b7N*xejB3vM95} zJ{XoVp&pam#pQ89mLCTHpRv7V;J}UQeSXW!ZpLt7r-P6?%}yJaQ+8(ioiKe>7s@Mnxf!jyN*eQ3iXs2@ zno`D!|9{NAWl$YK*De|Y!QI`R;O_1&8+UhiHWJ+3H8^bC-5r9vC%9X1*l_Z`^_{wP zs?Lx5=T_aCo;BU8pO)#Gn(pdn)~u_e-}dW^ozkZhJV)})ahoT&9c8wBAKCQWu8PZl z@H}gcv+!hPUoF`RD|8}^0y=GQVz@Fu*#wk;{9(FynNhx>Bh)fF)3Uo?3O9Z#ho|-% zt*3Y(+#&rmoK?9&mi;wa7yE8ITCV7XgxJ)K$p+QxXLeUj>;@O-$w*oCM;ERSvKW8W zaSo1pET%wr3&bXscDrg}{w$Ri_hgtO{enHtBdR6#n`MUHuHo0I!@9?6%A=9*F}tw6 zI5+nyQnf?Sh8n~uenYH13gLZUk&2Hwa>{=kEARiY!98>`q{7b-q*yhPt8HLiO+VG? z^0ewm0PI{H`;O^HRIUTbw8pIn765?L{Kc$1t2{t2(}dT_(RsDWWsDO@EhDL}c7{7{ zc6H@w>?xLDm9wV9N4MGYJTQytu+7wVjdLQpe~}8|t<1T))gW!3b8N@JZq@LL%7b&- zM3dlIQ{zOe_lb4I&2Yqb#(@1g_2IAO1Ju;JF`i@~PEzslbCv1b5!0=_lOaJ>+-3G@ zYn$KYrK4Z@rb`OWVb7ydAH^&7X<%G{~8a!c#V zvgB#=z=EmEl(CJ0!Hd%aJ}GSQ|7YPfhqmPM9`9ATQd5^=n`WB^<6f(RR9PS#d%|jR z`)>Iz44yZl3FK36-Vo$JnWn=Ck(r-qIh!F0a>1g}WiZh6CRU-wRKe72(L?$n8izeFoIHqQk8-t0P@g>{+wz z5I7ky{}E@#7dJz0wb)fsMfSh%_@gLZ1Qkm3{~G4}3@C9K{XXBt0RJok2W{@+EweIQaR0v#Fc&DZyX#FJV~?-#Q7M}zWT0}oC8-qN znsUYF{Oi7arIIvv_~}xM=1BSD1>|fQ#^%gfhdq74>n9cNJY^i`?YM57hgH{0ULZiw z>7P9T;{iDPeSdd*5wVK^u|7TShC) zX28;;`6h*f(N7n>Y#U&pT_FGRQ(Fs>jbG8F57TZ#8x8O;k0C0!DP?mT?ZtUDXvAT2 zgtMx5XJye-Y4fpk*KU)zcfA$7z~GeUIvVUS()!erx7tcE>ENihN$teo*az0`#j}A+ zD2e>|{K-K?kOfcq@D#&4B+aZ!A({0tDM3Wx6?&2;s-~!BI!#ZKz%*xQa|JEO+UuPE zBKZmGy_XS{XMU%`y(^w-6}`|F|4 zlr}t!<7;-sD3mnuw1>F%-doL763yL43IB(Q$=4&jR*fC$mx_<;{nu8;GnxPuon7Cl zq{%m0lI2eW{aqIc@WFZ7!)2R(Wp~1zDtLGF!9Z(i6=CSCkM2zVpK9pLFTcVm_g^vp zsf_;?3uLUlekrfG$%15hJhS6Dv%oXSe>geIjQ0x?#VOC|jMGCzBY zD=Yl3t^ajNI1l?F&*TGT=a;6AO7mBxrD!0=4VK8Rt5O?e=#{&4?X|EM4tDd z9Y!qA9#Yzj4&&tkwT1U{*mJ!5tdGL82-Xyy3nUfB*B`zPUqr~D49C1f;Y%*%3SrIibWHd*eq?n&-p?tRE6s82U?i%s*5z@zhobCOFsAuY)`j$7QbA{}@5 z8jEXvbf05X|72n_!M|K!c5q^VqBNB{z07_IlTB^27+->alNKN8HlyJ1Yw$hiDa^v` zItg}_t|PGqzg=0kgyEFoY0}dK_oUYZ%49-)FKHm)1Lwu!alGn|1WVE-jlNVi3-n7Z zoz`yhQ4bI8>mD%bZtG(!4~fc;wQQJT^VD09c4y=vkmxXj<^nu9K;opnP-nKS<~h zkb`!|wrlFv>y;A1jZ2%IVjka3H!=q+eB_Bm4;fafjnby1olaKDRoJU_rd6e)q+LFF zHh@og0`pGJ|8?sc16X^~Y2Fn`{`CBDJMwwTnoX@T#>x?bz2LebBG{bZSmx(LEGWKf z+4If?R+5wPvFUa%a>q}|kzeEHmVJ^*ZPQfSAS`Xt}aPco%Gi1V$;$o%q_RKGAPuq18Vq)_$c@&y~N)|-<>ytvz*6; z@ovAj1m*=&ZoaACe~uE431^*u^n%qZaD~IpcRB*$3ot!^1^S;JcL~=8MHMubtM_Ks z5MxK20$mapFStaO*T9H?U$5ITvf&)jR{yA#)Yf_@WVxrCZeOL>+I!Fvv(-UEH3sjX z{cj!jAhW3uLY-dLitEOJL3UZq1v&A9l*Kf+Gz6WlH1K52BzUs8x;)K^o|(Q+<)h-v z){v;mGxf60$7NiYvk%)Jy!s;T8nQ~q(;H~J-RJbl@r&qAS^Rkhyy%QqKu{o;l<`VY z8h>4|zz%d|limv(n{(w$;aV{43=^7hs;OH@Si``#TiRTjxW21d;9SUiNB-=*SC1co z%U344WAll54+tRH9=SfQn-Wg{tTtbRynO#y=ctI$@k`T7Ri-V_`bhG>0m*?Xv9*zG zBlwgB4SIrFl zH*SfIGO`0hY`YG2474`vB^t+sWAOq6IbC>c38>+3tHEz~J8n2G2$Ag!S9`i%E;W%V zav8f>9UZdK&oAJe2T4Rx`X!x!1pBnF`&-ErD`IA@6ga_CQLb0Y~f4 z@_qHr{lKSZ!aH?K;P9*#7-h_ANu`27PdoB!SeMG5f`r)<=|V?=i+#>FA0m`uH!fST z>7ZY;#R;J#NWrT~f!?Y%weD28u3U1PB?hiS7km5W^aV&e?it;9GwzJ85ew3IRT?3y z-$PcngBoYfvAq4OFH{W9AkJt#ihR3YwI0Y@;0&vl{Fac;?9PsFY&~Rafvc#iXtieg zG+jp>*z1oZLiq(gYCbV$BY|8(YCo-UauYt?fyjN&|GFJ}Jrg@S@BjJtHVM+-Gb&L1 zFU`K2`{C!+Eu7O#tn#y2!|Khft!5OYA6TW&8*OdtJ*sDLGaJ_wI~>u}^MKh9X}IE$hD=OGsjO=9&3=R zv5xTkSPq+o6pHrM>&q1mw$O^#J&uAmdh% z#!c+j8xW+Gkh|?h_|)5Mho?SIaV67~P<;>xFfDsU>zf+2Wc%N8CFzI%197){ zDcKpKQI!`NErbq$QHgO*n-jrI&eK!T1+(NuvDJl&$>rQkuAr9xlANpW1>B@|sKhb7 zz%URc!)7EcKwnBT;CjDDX-XrPhc48F5{{SC{TzhsnUxG|cmK0&&_M(zDM_4pzm+xp z*xJdU)m|UI;ikTMR=Wk|3`@R`y(Qd2um*9vp~+i`JQ26K$@!8Gu) z(?yBX>-cxI<~9`s%)N6x^PbbWs+>8uLrsrE_aY{+i~%+p)6cmzquSO5KiH0un0=Lw zvCAr}1vJ6h3RkPS&3MX(*={E6dnS(*|7!~7SBKkZMx1`BV-;e$i=BG1=L|6=Vq?~m zH@tKmA>ofvnI%KQ`vim)gK>htrdqU!0nuQcN2a6YwJRlmN_09pIyh+26qS``pOr}d zYCr2{Twd}oupoOh&yJy8Tw6pBnR*3{X7)C$bl&!%ovn^?sDiIc*kC)t_w97n(`+9P z?;iCK3J1MW{mfdOFPto%^h<;sPFOH>q6MGLPHJov7Z;3X+3vFF;y^oc=~kGo=xOK3 zZMbPh8@^`XeS?kNXgJYJ!Zfm@(s?$KeuDZ-UQ@_rz>R-@W={tJbuowXG~Ri`m!O%g z%CovN1=#LPBZv&!WX@z3aNBZ8DlMpWS_R z9LyV^5G7{z*30LTf={EbSfPk8v)B)nr-n?976-6BMii?pxb)qK+?<6*i+%B=%_T4M zw$P|5s_){I1n7!A&`YBw&i!mIp|Y-!Qj}O$v0$SRwRw=IrO_D+v-B>-4iqeRB_LOm zZ`CIRC9=D^6*kcKe%;O+J9OWwN&a$FZ}Lv6yiwUYtlU zChFoyYk5`qyH_?d)JsjvPi6vHH3vXo+9*uF$wO{>hEcAIPlHbob)FNWK}S^jiVr)= zsW`H&T=B}_h}I(k|9MCF_shq}#bU2QXY#IhYUwnM7d1v0)r1mX*D9GM#q>F-IMhg@@*O_t3%+ zE}pA*|3T+POZ^?LpriJCIIMBEAX_5yX|y?oqAxi$5#AU>3G70Df&E3a1z(!XOD_Q) zE>8TzU*el;Q#Nfn3o@W}Jcxy?yht8;fJQzpccpj)*pF>^3sV&uKM;>p87%t7y z+YiDAe#D1^oYz9AM9;rI9bUgOp|p0iD{n>~+_-bVGS@ks+_X~}pWk~-fl#)(KTx2U z2KOPvBr7@)tFWRqJnVFFGUgd6Z+C`PP9UB6=F!MB6LInFG4SzoG&!6cZ0#$&wAHE* zm(G&slEW*ObJ%scY7M$vCz2%*&WV^D<>#t?FovMwjC6d-3{IQg`fWeR7pd{A;bM_t zYuJ{$wl;T!N>~kV@iZ1LY!!+z&G2h);3IoMjA!F$jbdKAwf#Omd2_XewWBkJibVS_F=*&F!2MwMgNlJFb=n z4+YJ+kfNOq&Z3Y@ofl{%B+u}s4#;{cyH{1($-*TzD$DQrML2JQ$xv=fr*Gd+!z%YW zlHVt&7?C^pPgkfSB{%%JGDo6`^mwwr4dHDIpf9m|WRQIM(LfIo-TL-rUX5hmdGrT9 zOLSuI5X?_(MmNg4l%ph*H^@>?qoL$?Q)0!lcgH7Aht{$!*6rPcaUG6f{xXh>`x(p8 zmPZ<)OCdCauY*2!Dq4ovgNH|haPY?cajnL=v`N21)v3e&s$vjB7OFDy-4}`fM+|+; z5A<%y5)P6DzV1>=Y}`$5fFV&0+^6fX+gHD@`v@82%o zX-#OGJn%*e_4i>~B6?PLS1{luA3TS3kHADa92^j2xhFL*K8Ozzk&X3)QKRjkNF4W| zVE+F0MS8-QKmM>jD@0TZo`xV>*A-J%g-3fHWuOpnciTxK5Xow5iz@Ot4<<&pn z$9)UelK=$}vxFnWR$pc-2R)farKDJmE3xUG51vm?TyHR%k7albe^QRVl+>`hft2!E z%}+Bkg&jJ-%%{m?LqzjgBH=a_jY`e4W)xo(2ARn8FT1(p6X1(DMGuRwZ9uR|%Q3~J zbP`y=Q9*r7R7le}NO)M1s;U=Fg}7iTgajuWH?icHiIIJe1aNwJ+pbg=)>CjHXj&Y^ zBK@YfA1b6Tjf1R0Xn}^RH(kQ6|G_EUw2I3D7mL2jb$bRE1BgwKoQZ}2_8RAgNOcEn zsTt{kc19v9AlhzG_4=y_&WOA(E5CeUlTJ3q=l|-|d{AcDB$2Q0nj(JX_~-fT8{GQy zBxl(TXU#6bcZ2wQh0-tD8Bkz5gssV>op95W%D8%RXh#&p+Q?^ukoY;o;k#tW2I7FW zZ|T!aK%3}g%-b&YJUM@s!+TbwMmkBNK~@igiQ8hOKXVhL_SzXL6n8gYu8%pc(EpD^uGN_QuudNzqi6) z_UYfu8|y@Aan%3~{~V5bzx)tC{Ixw{KPq>CVlo2@(~fHU4chOA+?~*8TtRRNi|&si z+8}4`hbej-Oy~yCb2)LAohZ3v7gkz$H@TJk(&Onb($J1LWV1WNC=l-DOFhB|f4`DZM{+8Hs*I>t%9)f9Q8qR+9irQb=6u~Zc1jn}uEAX1@3m=J zIOEAhRV@fP%Kpvg39KW9G>iDR4pdhxg-8iPqj-gJ0Hx>wZZEvC5vK9w>quKVsE%q8 z)N7awGmakd{2tb+I2K zN^WkbTY29=sozH)K1>C)YwQ`vLFkVm596MXdxBr`pVQg5g07Z(BBH8WD4!~gf&Fn|`2A+Sa1p06!HKYs2Hdt(n z2bH(;valNI$emIQx7%hndY<1|5HXKsG9UZ)B{cZRmR3iPuVjSG>KZ%ol=pk(FqIa$ zl_y3iOX*0v91{1p66ea;!499+8U#)!ll5rDd8!wxqvYg;?3N@+pz<${VWbcGz(PvP z^;v>oIMW&9!XY`7sF5qX6#a^+umC3OA;(aUB~9nb>_tt@CyoMy-jnC}@eCUMocyo% z=mJ=PTwTDQY6VukLk!-()ycS3$5uE!2|rg5LW5XKM1fvENwe%vkx z0w=EF35Kcc*QE%hq6>Grr2gzslMK3c3%n;&A;hglc}}W%-8aNtG|uKW(j^r#pulM) z&Mv$EE!2S|>wGskJ{;%lgBf#hSBVpzfU#`JPVwfULb1#E z{FHEsDj31tV0uED=tXBUewOC&u=on-)mY7?ikPE_1PZGVEF{I5lpe7zq;7c>vt%~^ zA93_a$d)%1fyta}`{yS6#*B^ut+|oXb{mKPPp00~Y#&+vW?^7%C_+E4?Sz9UhU3b%@6uUg86l4cl$mT*;l z<1rQy-i|~zO+;eoqrIi z;9%F@U?Q3F$p)b{nauJ3tIPYH!X9H@(LRk&Zx|^Sr7iO~oR5X)ctV3!Y4>;}_mjg5`$or2KCn=iZPzl zDr3-kx1os!j_S>uVWBC9Hg%v`MdFZwqCxC+>5xW$7i}fug_BnIz%2JJJ(^9SRr5F}=c=!|uzdoMI zWSY@Vy|Hl`a`^X=kGjBVZ?NqLRCP`pMwiu@X!o{c#xl*((T{zjqvdDzFPD;)NX-M6 zw2dv__1%+-WiG-)z?}Oc5=?zwIGo;K&NzAbGMts_E?|)G1uV`R?XFB-VFUL97H6rm zCrJ=ttK*k?(y_W+Le4f+56ru$u_(*$G}&T`#F@T*7t9jdVOQzKEG6NG^|^^`%!bI7 z13$Y;afbawyZ`UvGcc(AnR+$Ec22D%SJmr^P{UhuyTgOl-E+I!ZQlD$`mnQ0U4J1J zbcXsFhcB9>7I^rb>09OTQl1y~8S{c^QatLZw)rP=>3w-1R%jB*w-Fc>^!GzGs#E&` zGP<0X)%gnH?!SvQB5kZ&zx(!`y+>N39bf_R)r3)$xBNJ+%QK)nnWzdhtjZMh6!dW{ zKlVqo1=E6IA<-XeRt>W%0T+MQjw?tXEiU9WaNqbIIq9SQ3Er?Dq8t(&r2Wl=hXX_g z)|49xRQlGK8;n#w*XkOK<{=t(P5I}8)@s+7I9OJ&?ZiV&FB=>&+04bIh7dFUhz%jx z8*A7e;PRf3Qq1B8OW}&gnb6wDa!3_Lx)3Jr-IJ z`B==XKq)|aLA?F9rc6VUQ&}(S2H7Vnrz?j&W!>Z>TqFDzG;$2Ot8~TaP8aWxHDuf+ z<(~2q`v`a;lUbdb6#-kmSol=E6FV1t5Bweoaq08XmCB(6*16fCyAJK6nYx5ezSiK# z*Xow*1yZlEs4RWyQyY9qLzByL4c+@jV5mt=i#7taZAHHf53r2(l%{Q&Je^$MLO&Fc z*;QxKV1o3e&~|TZ)R5uV;Z>eb#Ul4&>~{Lfd!E{r76>;<(Q|(Ox%QfDVo@n`MZ7A= zBnWzBr`#&&8Qk^Bj(DCe8$^RrOZe$6$tR-n8o2=xyeIt*qrw?47li9MX(tUkBbJ1W ziP=|y1TPnu^eX9FFB79$*w3Pu0WPk2R37pTdj}TIuY60rA_ zPO1xCzdl@(>pcVMHk8k>{S;tVCbTo7B73?@JozS8q5Qx042>cqY;q21!A5i3N%&>p zckGlU0Es59-qPA?5NcwoV`}89Usg(2ELOfUm@Mldt%z04>zXsRGPPw_Q?00-!`o$f zl(uYjPU@P}G;8W;=~dO(Rom5^SD)8#t{|<%tthTcuQ0CEXg0O1=vr-CZaZ$9Y};&G zY&&e5ZQE^IZ99P%Uo#$@&LPf4&&keB&e6_Q&soo1?0OzTTLyd=d?$T3d`Ep(NJeE&izgMHqUMT`Yr}b z6+1lPVh+ul|BI3)5o1F3z}ywSlFGvzJ4;cCsyu0N!e|`N9GN#IS8|5>IMHpwXhQ#v z+m-l*KTCRs1}8Bv5n)2|z|<8kOPPr(Bk3EZ=$R~}jtu?;d1I!&Qua7{W2(MrdJ@Bg zt1Fg{sAe+Yz_u}4U%ZxTHR*f;-xabWX-mS9x-C&pmR(1FC24c~@&MVDrXyxc@rvvz z`E4A0P;g*$uzLV;N9q$Ppg>HPkUTcNZ!YK)Y)`73Tt2>dfOq#@HaX55!zbRJdNzge z;M*O!PgJ*pAz5AW>iGEqQe#@T><+n8ir0A8f#99cOOQPUNpiyY*a5~J-Ain9;_L*@ zf&3lTOEyrvmuffZ^1$y7@+IkAB7nLtQS**rT{M7#f8yF4XI*h)oOnU$F&TM5wo`^% zQlp3sP$6faQS2C9sU*k|;cLS*T`Y7~4w0>lU`@tYHu`N{U|; zV#7)#CV!&B7mHk8dQZw19A5&nD1JiAmz_S(>i%6Yl~@X;TzZb;l*bp7NI9Vl!m3636i7H>zsPPorsX1SmQt9FeYjZZSyxobrt*RKE1&2~XG5g7_JGJ1Cd>Q2; znniVM#+u@$6MJ8J!MJ>-PqEpbZYNpy-+j3RBl6`x<&GEn=Kr4To(lL1^#px{7|Jjg z;VjCZ0Db9tVwrxz=_(VPh;7K=%#Yl=Zb)RzmEOa5#v00IELNSscP7^sX)P|__}gif0ld}eU_oj!JLZU zo4msMrwU1tl%JnsxI_9U3rQA~&CXfbBs-SmoVdBO`{z3rGSA_h%HLbO!uzN7N*R?q z&DGp1zGD05^osA6Ue7~EUfIE6tqVq{$gc$3vVrAYCypCZPjjA~8J=@W8cCn ze@(gS5dUQrMyLmB_QUI-oe#Y>lAe#fHbJg^@gyY}hi*V6_!Yg5syP_mXkyR9U;)#B zW>3kVNi-0h`zWGi zbp_9_{7HGkN|xpIx|(B_4eJ*gp7{KE z;IO=bqk8sroeO(UWd00r+O$QW*>OW(lg|av6XFe~E74$>$ugt<b{=mPDL)-P6YW~GT{4f>JN zFIsRq-((3rU~V{PgJ>yh3su4iV)SZ_V&g7J~dFQR8^$LzWZ zWsU2R>@Cv&myk(8uv6RX=*lg{pScz=iQDe!rdgY1nOV$Jn{mbM#ZxQyk1bcn`b}GYm6~68rCnj@S#?AGsyFO@5wxu7AGqwt4^g9Qi!{Ja8+% zSG-reZ*j|d+i)wsA2EWGK!PUBCd3q=0R+CEJcoMwbdww6p^R1SB|Q&&a|qE9hYW%6 z3J43n-tKQsdY7WlJYl4nrQvf*KY%)H^L@jPR=?`@YW_r;gSH`ah}0}XT9s=_+8Ed% z)6Md%@XYjV=ThR=&G`wiHE}4yUPhc=DzjZ|Hsh4%hwyVoM*a=d4?=K3y9#;RBfW}v z+lP1-5kN&5Bon~J*(YmY0y6Zkvkh6=Tdc|iV_9?01X zZ4|Nko8Y$i+2CDhCtUBQ?V10bedkBu5dZD9H_lGn<_+;y{L>!tR#caBTfDn$ph%!f zpiH24phTcXphBR&QJrw1(_Fz)!9u}G!F<7T%Bz%r%13UmPN3m#QQyzLioTM*>b{~r zP+wVJZC~NPzr!r;F6^%C&hIYoF7B=h&$XSBoROT8oEMxFoE4lhz8=5gyk@*=y{^7; zzqY-4y?TQEz%XEGFb&uWjMD@71nd@mmR&Ceu6mtzJ#hIa?9^T_^WQ7=$X`E_CLAOQ zMoT}m3uKQO1lakwy=>fh9JZzH8U{$e={mqa`*nirIG zex!Y*0G^NSp6a|+(X3R;eB69Sah;@5LNA^_!>i+c&q?b^#C$?gfs}AU02-L>Rngt= z{_RA0zM!~I%1a_J;VSwns#Thwrcl=R;&$zI4Wq%zbaphkA+ABO;n+0CY<8@5*f6pO z(~tL2?qYe(4)t#jmLLD4(#7_gU&E6b$#Cn4P^>@Z8*Wj*G8we}57--o$j{#3lWT%V zaBs-?wO{1hKavs=&4^*xkKel)=Z&bSXB+kW@`sF*Q#Hj3-g&eK!FVF+kvbxlsnE2u z_^)yT;>ee7DW+kd(2x^UEU>trmLob=NXm%9`kwuj00tKZA2QC=3^oBaE+iHW6@%D5 zHrTrU7p_@snD-6KzVklpzKmI}ODZcd`4Ai`j;4qPZg?ikS2PpMy#ZXPkTTZw%&)h< zIU=E}$gr#bB>fa6MK?!Z<`B!``aj%os?K$ zkq2RKz%AA-t`Gm;iFb?_$bE!&On`&?$->0J#Ky$M#Ck-KfsYUys_MjXQ!%e?`kk|u zB^_@nt|}I5RL(5TrKMq`eYAb0eWra!+ic5t%X-Uv%if+VpSu;88J8KK8IPHu4z~`! z4zG^D30E(UJFYFZEp9fBIhHxDF19YtDb^|OI`(q(X%uBNVN`i^R;qm70#r6NTsC%} z-C>!3$_}>d|HX~)ORQ=9!t9arEej?aa$3}KoX{RSNBkGMTLtegLdW!Mm@JB4Nk;=m zWJk1a%{rFxtYg^`*%4V0IntTZ+0t42)5X(pmK{1Kn%O2zld+i?(-piEv033Z*(uX> zM;dO~KCwCu#C9v0i;7c})SOv(+zISfnPWNZ(-^-nruAsfQ(~x}@?Q6rR?8goUXPZ% z%6j=9LMk`Q0@xlFZL}2iSRD?V0b|b~EiEH;e}@N;<>}=%z^H3 zBB>52dA&V*_*~w}l9F_B@B?~rb3~NUV5v}lldwiZg+fz7qrq3%Y^pjVj8ero_936I zP_1Jf^^Q~hXLBCw((jXxM3@)k@A-YR0+j3KNKOE+6g^UbMXRSsz9~CJZKt#M$p2nF^F}BB zuMGYo3@75R1pX2vi@T>J_jF&+R1yqN;-v0HgL|#TggJ`8)mV%3YYv@hLxNeqKsHdX z43Z*_q9Ts4RL6O+5K^$9pPOQ?3|YsD!mNyG+XuPeCcv$sVz9yyn6Q-@n<> zdb<-NC}Y0q@yKrvPGHP8uwQrBeejNXkBxSkp!Ng z%nBzAF+VXqF~haYw9d59wxnevWX)yMXA`&sU11%kT|R(TztpYvjQUOA(%_}bf?lkO7cN^@y>KOMha!CcmcG!RfB^+5H<}%0Xb)b^Tcr z8{Lr8P|(oNv%<5^v&ggBKHNT|Z7yKiZQQ*NDYWb_=3nH$0K5ZsJ|o^{{bpabN}mN5 zAPG?kz4`avcU-tF9;29g2t#s^JHXP^B|{u|u;nYb?4BMcd6c9AC2KpcFB5Gr;Ai!l=w(Mb$DW^>kUb2evp4MOJ_7 zY%5($dbYHz_$;NI+MKI5pOV#`c=}_xh>Ky5DX-|GH|GxS?p_;m?ucdX_#KGLba=P_M4@P@Tw_FcLS4*c&+e;5c zr?1hl-mqz>NvOeR{p&v#I=rT*Ca0#Lrk`u#vB4p%X4vzW=Z5FH=i+0;wsqTP$fe7p zhF^S7lYgRrw|`mBT<>V_w4trAsqo=TkMZA@pQ}V@eLig5M#uBht6j6w1u2Tb_A7~u z!S>6ENWu1)!)_y&jvm?-4vrrE#p9TBDNn;sXqq=PI{5|J%+3Yn6N~~@oC|Ui*wHeY zX)*+8I+Wy$RT7PoB`OlSfT)AWaZ@xKM)G{aI|*juWkUcHKouYhQqvd#JS2k*H33?M z!_|p~#EQN#pjjCs(N~-CFQU-4~iRv>QyAt zqh&Vflf=+;sL9s>2n zZ5=njLmtou@TgPcG*ahX@xi&*!6-0T^_eZs>uaBN5~e|cs+>!V2!1akd;0bQK%K=R z=~~tk6LhU|5tH=kMe|NC@D~O0-}Jm)cq=i%xk`#NA>4(8>!Tfj!u7EZq(!$l8|$L* zi9HMe|C-VRcxiYj1D*hYLeQ?p!?Wa*5-Pxh`PCU8>UIIOm{bUVk0DZ4{8z9xeV5lL zK+{cWNn;9CXO&|=8}2S8+#KH3K)eyEqmZlys-sfVu2^$Q6A)kKm_OcEdeo-Xqz@{} z2I?H_YW~flUXdLRSaDxeOw{5i=^_>6D9Ir0;Vh{m1#_4OkwPwmt}A*JHJ7_U*+n25 zP^UUC_BI16^XIz9?N4d5j<@#(H&=e;BUXdfzNr@$z_tl?J-KU#iOC<<`dCHJz@7M8`PI>Dz-uN06-S#vFhw6 z2)XjC0@SOr?4tNoE|?uqb-G_oddzVUOp3#Kz%R;VH;yG5P;o*0khaY7DaqL!Gu!@m zgr}NmoC)a`$Gj~Z3cgWV+!js^q=}$e6$S#emN~YM?^Yd2gLG6u(JKe5|GrDN4S-bq zZaDmC(xoBlSjl=xj#7X&cU^gAyC)q>8-K*XR8BVJ9%x*a?Y zzt--V;Y{DaY;b8zmE0In8rODd@HG^ffxr577aa@3a4q(f~g|i!uNP z;2{H$=GZQ{w|-$zBq@h_krMC4I*1L=#W?5=*T+0a-T)6x+RE+3*haUL&{7!1s&{|$ z5f=wS;gyo@As5E3pbCqQYG|r|x8=+Mfo#rJP+y!tFA%nxihyr6cjA&C+MIo@)Ywd> z`yAWDuzPcf+M@W@GTo$b_{p>~$>Ed;$#=?+7lDoH3>tua25IXj73@Fr7e_HI{b%s5 z^5SQ3u6p98P%k>-!<`mh^jZ*hDjjUv-5`7ry)0k?WLpiQ22H8}*Z~%{olXoOOS{)` zG)gV;4Y&nEas6QTB~(lawJwq(&CT-4$FlLxDm-qbL_hpHZqb1G#5SmoIx;7OyDHsF zqLz&=&}&!Ol^^-%kL=IhY))|iiS?aT)H^)qr*WZ#VB=@(!~uLldD5%8?&p!ea#tl z5a!JVbx>H%Db`_;8?)@gU(E^Dp&LpfF-0NO#N>LNO^5-v0bHwBXkRw-%nn48P$pmR*&9|y!(=Rc&s z)sVBlxj))iC;1D#37Er?Xv+T?vZVrQ*My-|#od^+UyPD=7?D0uZp^i z1-8YX`gczZJ8`Jz{M|{qB~j)eS(4HhUA=RN3#Enq0@X(lp4Jswv`*xFaUe)7~LaWc=bt9nG3JrQjtgJh-w_;vq&IiH$tY|V-D!-sm^ z9a^VQ&O1vV_Ug2@Nj;Oie~T>S^Fz}PT&{8c1ETu*{gEI=*GheOy#uxm#MVie1IT(s zri>|*E}*s$qU0Ui3l!#*(Ug&R6i`4c#a{i@4xhi|9JUo>g8u)`+aulU#z#4M~UT3+} z3inW_G$0kpOg$?0S1TPJgb26q$&!OU*ds;1zs6Y3J16mGLNYaIV$B{s-)DqONd`#lxpI&K87{hj`evkWlHQSoq7#nHo^ycTNyf(h_T9q0 zGYTd3P1D?ZJ)3_p6%2mPl;1r)b9@LD%vjxIy+eMGeMZjiHNA|zV+chAP9ERQJ_~&C z7R=(@gaOf*4`N=>dsCVBr(WQDlk4`XUhsR<>-NuIpnH>?_HtgZd()iuH+|5UkEnn! zyAxiw+dvfNLq8w9-LY*aBbE)|7Lc$%*-;iI&mwvRjA-9s-2n@&m(GaLZU1Yuf0JvJ z3p)0Z$B*!N?Rf3@OG80Z0i@BJ$D0Ss`t`vA!Vg_m9Q*@*m5At)KSw z-w+XSp&x@VAZUK-{$x^tS%zGNsg1zr46%a_37pR2v=S4k*=g|=H%@#D$`*YHJ`=6^ z=_tBQN^9*k=Ln13iR+Fg794=`N+c!@6bF)hH4~Bh$ zE)g+bYp-`v;kH*@Baejl!+eB2TUM&eL!NKBUh0Kp^_W@Wg^a)9`s463pdFJ*)c!g4 z25*j(oP!*5kDQ!>oJ@$Ej~pMJTvwtwC>*U87Kc&_Qwmc|ZMZSgVvg2SYnVwU-kl^7 zy@S=2f}_^2`AStLZZc*vg!-XuIS1NiUc4wm#MfQa9l~6~DS8J=vA8ep13P=9WTZs& zZ)Sq2Q1GwJCRVFL$zLg%G>M0E{P%MUCNA1P(|MyNy`w^G~b5^)MJ3!pCdcH;tZHpXUS3Sfx#V)kPC(~MD7!5zXKl5%oza0KP9eQ&^{jmkmihL9IX^@jD{%NypOqnq#-2~aC25xP-Z zs3=jL<2_YcAoA`|J(sE}l)rmCxSZqcpzMI^q`H>dL8_xHP!NLKP9dQZ4kn&ZPA(9c z#q^IR_AP}fffBh+)un6ssVp~?8a~HO#Y=_vT3W5Fg928cRGTyw*^eH@VqpO&rJ1PM zy4bQJDj_H$gppmzM*k?Z;a+g;uW$CVx%$VtMmNLL$~YzNd@+Gt)f<;+5EDQZ#^ofVA4o{a#Ki}yDt(eAr=HlpnMzIK#mcO%u+(<~T0 z6zZq^YA61IzsTo8{2Xt00@fLLwq`3z2ehz=ChlGIRR&f9S88gin|ve ztBNy$<0=Le9EZ093~-6-gC#h(yHB6)E(nw&kO;v9)Qkaf27-#3fkA^~MC3gNK`JYe zNhF%B_}Em4VK!Nvs!$P`SIiQV)!m3266dkeq(XFN-Nf05u-_RT8*cy6Y^72wWewAO zeeV6v={~>P=ic+(*T+rUzkb&KX~nAe!sf}dhjsqjZTC;T`e@mKsb_q2%E7-sU4iS9 z->N!4m!F?g`F#F{Tu!C(m1^^ICU1}Z;{E)b&YPUg=TH93{(hSOdppUd=4S!Ne+lz* zsWI}u%cW_OOB0{7X_~WEyaW0nxc`V7`#7_yxC8;`=p_1pK!m-{~ zOX||#OmaM3pLII^kFsBkWRmqXR-RC{McI0mUDnq7NLHTt4Y}U^-&?$08Rv8PT<_m| zpPBqZfBp|UT>57ZUHIoO+~Kml)9mT&@s91{laHD0z+=gu*rg|a!mgD_*r(F^XYI^W zc4d%WCu-tfbNBKkW#x01+*CGi=@*vdWJiaxPs^arB{>-!WpkG;yHkG2=jN7uyy~W9 zIdkl~6Yt^qTf}&-%NUJ~rTEcRl;DyK1*@e>{0<+%IzDUb^&aFa2WT*Iv4G;?~Fe|HJkj z?;d<__fK|y?Y+ldEuQrDqp$5;yY~54?t0DkOnGzf-ggewj@tC=L*r&NEV=)B_4BG} z`+qR$vgX^S?XT}QXXK(6f3u{`jqNBqqVL_zRS2=-ao5YwWW4!-269n zr4Lp1KU^}e@~YWeAFKGx?DfA7%XT08e zMft#~&HH*r41a!6`OsMv)gRe-QT=%jx2z~1{>Y-~yViWUe(-h8e_KBKTa};Kwf3>a z6L+our}{BJYcAV8C2i_ka^#V!4L2?ta%kg^>qk7(G`wfnGyBp5BY$2w|InJ>)el+O z^kR=)*?if7(ciDU`q0|N^~HZ^`9V+7A6i%Yf&JPlN;gcaKIi<_N0^?sd|2T!@wPFixzC2 z+P-4JrU}&_db;J>hT*TYePKcEsOmmdEuZKaP}TVDhCa`BUUu+{_bhiuw%k)a_07ih zHD?rej+?xBW|tq+_)yJR%Q}}%-gtBOd5^ZBJ+{-V+I(O8V?CuuTXyuEb+q}uO}8|J8#^bgdSKbA zB@H#NT|a)|zt?p-YYv?7dk>=kB>?lAV3@rRREo`wM@} z{mP%Qm1{0uGNBS@$n$0ukDh${x4VDI=gnM>homl?7BhUt+?qUYh{YP-c(vQ>W<2V z``7=s8auq{tn!ipm4glseW2s!^3n$?NB{2>n^1B0t_{QL`(M{`Yx%I-Dn7q!qpeR@ zKlr=dC#Tqfl2Pq)N_eDl-tB9DTtDoYrk}|qYfk;ZNfq}T+AzA_tloM<{eYFNRR@OL zQ?cyO#@8yw9;&^!`iwuczTivxwSTg7U1N30gH40{$eHaWhljVemmfaAweuZ+<|XY{ zF4#P;y8oQkr9FLK-20WD3tw!x-e2%W+p3+l1LQ51mgzl1E_?olhSDAFS1nlkt?FS< zH`|6Wue8rNxaN`SAyv&28%96dKIh=to2!f8YZ$10|MW>wrC+F5_5BZ7d zS1>E$dB-E>uipJf1*Zvoo;Bm|IQ;}ap33-zKic_$8{51?KP6|N_up8@6Z^9>&?zS{ zH~Ak6c7;5r%`VxyHR05;$)usbSN?%xMj^iv3l3Kjr9YEKYw-orK>kJ*OxrpG`M`^ ztjg;@vi?`~rPnp}FCQ_Xa=@-l*VgyFuJtqJLvHJQqx^#3R@}R*wy0~s?Hh{PZ>_my z&8Vh}{&UT3ooDX&VV|eB*Y^F!<n|=V)KXm*b6$+1?wKD9)D!RKUa@hOqnI#wU7?bm(An3icZL$|e6 zPu_G%_t}r`yRqxyN1IK}n4h#y-?Qeq_V3h;C~LoV&$?H-M;>|5buHVo_1Uh=e);^n zHN}lz`r{d6+o!Esx2=1`l;-Dh*B8C>>jA4CJlZzvaPiURS9L zJ%4(r(vg$b|L*RWfBLE0-}*{z&B`s~9-XwjqU~tWythkmK~=M2$xTK5^YYTu=jG?| z|CB6OtTi^5{o9E)S$Jjt<*H7$DOuJ;ZC+lm7Q`j8y~4IM6mCzcB#{@#r}R}SHS&!{ z1#LdaE8&8+AZxLxEkxVX%F3eS)V^BDdakg|*tl;Z%eGVFet}JKcHpoN9 zOB@Gz7|27`@KN6c@{qNE90z&GwShPe@<<>L8P9QF$U|1{aUA3!<35VBkcV6qh~pp+ z3wc<`!$KYw^01JH%)#inq>zVPxrpN+j}-FAuI&_#wG{G@Yd>)uskjj{tedb-lPR%u@eX8d4uE2ApArJ6ef#(W5SKzq<&lPyC2Y4>mNg)pM0M8Y8E*IJ3 z?Pb^U3->8_E-zXk4)OrcRRVc{=Sp4|N6!U3SKzq<&y|I71)eMLT!H5bJXhek0?*~0 zn>aV{T%~Y4z;gwjEAU)_=PHHc0iG-HT!H8E9jkF};JE_N6?m?|a|NC&@LYlC%E7n- z&lPyCJRA@3T!H5bJXhek0?!qAuE28zo-6QNf#(W5R{`cZc&@;6C2QSi{(|R9)~kha z8a&tFxdzX(H{{~&#d&D(T<2p4HF&PUa}Azr@H~474W4W8T!ZHt*5?{L z*WkGZ&oy|i!E+6sYgnIW@BK$(7d+SCxx7ak_XW>2c&@>74W4W8T!ZHtJlEj42G2Ek zuEBE+o@?-2gXbDN*WkGZ&oy|i!E+6sYw%oy=knd@@v#KYHF&PUa}Azr@LYrE8a&tF zxdzWQc&@>7`KI_dU+`Rm=NdfM;JF6RHF&PUa}Azr@LYrE8a&tFxdzWQc&@>71D+f3 z+<@l>JU99Hcw`@7DLgkB@Z5ms20S<5xqR*JU8IE0nZJ1ZoqQ`o*VGofaeB0H{iJe&kcBPz;gqh8}QtK=LS4C;JE?M z4R~(Aa|50m@Z5ms20YI`@DJU8IE0nZJ1ZoqQ`o*VGofaeB0H{iJe&kcBPz;pTRWV}zoa|50y;CTX` zC*XMko+sdW0-h(}c>=LvY8faeK#o`B~Gc%Fdg33#4>=h^2JqWuh>C*XMko+sdW0-no=LvY8faeK#o`B~Gc%Fdg z33#4;@;}NKJWs&$1Uyf`^8`Fk!1Dw=Pr&m8JWs&$1Uyf`^8`Fk!1Dw=@4bVf;Ju;* zJWs&$1Uyf`^8`Fk!1Dw=Pr&m8JWs&$1Uyf`^8`Fk!1Dw=Pr&m8JWs&$?52%q?1JYB zc%Fdg*=;F>+q2-g1+=Ay8Jh$Mv1<$ijY(`@jJh$Mv1<$j4 z+M?}&=N3G-;CXhhT)e&5a|`Qp3!Yo>+=Ay8Jh$L^@4bBm=Wz?3OGumtcy7US3!Yo> z+=Ay8Jh$Mv1+=Ay8Jh$Mv1%WJVu;H3ZAFnc?zDV;CTw3r{H-Co~Pis z+}j-I0iLJec?zDV;CTw3r{H-Cp7-7aTrhT1@H_?2Q}8?m&r|SRZpMxG3wYjpn{(mw z1J6_NJi8wv8mHiS3ZAFnc?zCq_qIom0iLJec?#?E6g*GC^AtSK?o5xLOZ>Vd1c%FjiDR`cO=P7ueg6AoC-dnq%aIAsnDR`cO=P7ueg6AoC zo`UBoc%FjiDR`cO=P7ueg6AoCo`UDSwH^xhA9$XE=P7ueg6AoCo`UBoc%FjiDR`d3 z`aA{CQ}8?m&r|R`1I8 zf#(i9ci_1L&mDN~z;g$lJMi3r=MFq~;JE|O9eD1*a|fO~@Z7=r+=1r~Ja^!^1J50J z?!a>go;z5dXXRH4$G8K}9eD1*a|fO~@Z5pt4m|IzRZ}>2!E*?-4c%t@Z5pt4%X)mJa^!^1J50J?!a>g zo;&c|f#(i9ci_1L&mDN~z;g$lJMi4W`rLu%4m@|@xdYD~c<#V+2cA3d+=1r~Ja^!^ z1J50J?!a>go;&c|f#(i9ci_1P&pmkV!E+Cud+^+Y=N>%wus-+Txd+cZc<#Y-51xDQ z+=J&HJon(a2hTlt?!j{po_p}zgXbPR_u#n)&pmkV!E+Cud+^+Y=N>%w;JF9SJ$UZH za}S<-@Z5vv9z6Hpxd+cZtj|4o?!j{po_p}zgXbPR_u#n)&pmkV!E+Cud+^+Y=N>%w z;JF9SJ$UZHa}S<-@Z5vv9z6Hpxd+cZc<#Y-51xDQ+=J&HJon(a2hTlt?!j{po_p}z zgXbPR_u#n)&pmkV!E+Cud+^+Y=N>%w;JF9SJ$UZH^Q<09;abCk=N>%w;JF9SJ$UZH z^8lU)@H~L$0Xz@jc>vD?cpkv>0Go`JP+V`0M7$>9>DVeo(J$efad``58!zK z&jWZK!1Dl}2k<vD?cpkv>0Go` zJP+V`0ME1fNQLK!0Go`JP+V`0M7$>9>DVeo(J$efad``58!zK&jWZK!1Dl} z2k<$7fad``58%1fp@r?m*LMSW9>DVeo(J$efad`` z58!zK&jWZK!1Dl}2k<)*mEiO1$o4tOC018doFR1N9?)8K_0Q^5(jz2o=b@`$RqY# z;vkRM^Q>xr>}u?}#6cdh=Mo2bfaii^^tgf#w8eSINfF}WJY-@*T%3mtB8ZFgkmTYx z@LYlC3OrZfxm2Hp$ACP*a|NC&@LYlC3OtAUaFPZb5Aa-p=UJWJg0-J)4~_?T4)x)r zFB}i>9O}c#u7^CpbEpp|eIXC<9O}bKUl>>5In;-fp#k#)JXhd3)Q6MpK_1{a)Q6M4 zkOz34)j5uiId~5B;S|(|lQx(i;5pQXlfE#|!E>k&C*>F+5AYo7!)3*z<9z_0Lwz{u z3-bd!SKv9+hm%tTcdG~ zd^|L)&!Ik?^o@@P)Q6L}I1i`~C*;NB3hKj2TzovBKAgnG^8@O`NgU(>ovO0NCw*a_!}=WR!^ulgIA6i~9O}bKUzq2xK8N~n(ii3jcnp+21Sg>eO*Lwz{u3*!nrhx%}`Oo4F) zocdG~oCnm0lelePza|513eK@(i0eOJu20VxQaI!r(9^g6Dhm*c=Jiv1U>vO0Nr=UKZ zw88uU&!Ik?^o98Wo9)E%fhzoJ?oQgcdn>hdi#J&ST##CO6mz zUDW@gi>6;aqp1Ih?;DdZ8~cBGa%G=fv1Dbg_c`@`@$S4kKPO+|EIX~>S